Published using Google Docs
Spoiler Tournament 2020 Format and Rules
Updated automatically every 5 minutes

Spoiler Tournament 2020 Format and Rules

Premise

Spoiler Race: Players are given a spoiler log prior to go time and may refer to the spoiler document throughout the race.

Expectations

What is expected from you, the player

  1. You have SpeedRunsLive, Twitch, and Discord accounts that are in good standing.
  1. Optionally, also have an active RaceTime.gg account.
  1. You will be in the ALTTPR Spoiler Tournament Discord server (https://discord.gg/Jg34MuE) for the duration of the tournament, and have DMs enabled for the server (this is the default).
  1. This is so admins and our bot can send you direct messages.
  1. Over a five to seven week period, up to seven 1v1 races shall be played and streamed on Twitch.tv, with there being 1 race per week.
  2. If you make the top 8, you will be expected to play 3 games per week for 3 weeks.
  3. You'll conduct yourself in an ethical and sportsmanlike manner.

What you should expect from the tournament admins

  1. If you ping @admins, an admin will respond to you in a reasonable amount of time (assuming it isn't 1AM).
  2. The tournament admins will do everything in their power to maintain the fairness and competitiveness of this tournament.
  3. The tournament admins will handle potential cheating in a fair way that protects both the accuser and the accused from harassment.
  4. Changes to the tournament rules and format that occur will be clearly communicated to all players as much in advance as possible before the rule change takes effect.
  1. The tournament admins will strive to avoid rule changes mid-tournament, though reserve the right to do so to correct a major issue.

Format

General

There is NO qualifier stage for this tournament!  Anyone is allowed to participate, up to a maximum cap of 64 players.

Match Workflow

This will be the workflow of a typical race (regardless of it being restreamed).  At the surface it may seem a bit complex, but it is to help facilitate automation.

  1. The player or restreamer will create a new race room in SRL using the ".startrace alttphacks" command.
  1. Alternatively, a room can be created on RaceTime.gg.
  1. The player or restreamer, in SRL, will use the command "$spoiler open" in the SRL room.
  1. This command is "!spoiler open" on RaceTime.gg.
  1. The bot posts in the SRL or RaceTime.gg channel a permalink to the game.  This permalink will not have the spoiler log (it is supplied later).
  2. Once both players are ready, they may use ".ready" to get the race started.
  3. Once the race has begun, the bot will post a link to the spoiler log to the SRL room.
  4. A fifteen minute countdown will occur by the bot in the channel.
  5. Once fifteen minutes have passed, the bot will post the message "Log study has finished.  Begin racing!" to the channel.  Both players may then start running.
  6. The winner should post in the #report-results channel in Discord.

Race Platform Usage

SpeedRunsLive or RaceTime.gg may be used for your race.  Both players must agree to use RaceTime.gg, else SRL will be used instead.  SahasrahBot works on both services.

Streaming Matches to Twitch

Bracket matches will be streamed to Twitch.tv, without a stream delay.  Maintaining local recordings are highly recommended.  Ensure you're recording in ".flv" format in OBS so your recording isn't lost due to an OBS crash.

Failure to show proof of completion time (either by streaming, or providing a local recording in the event of an internet failure) may result in a forced forfeiture of the race.

Swiss Stage

Five to Seven weeks of the Swiss stage will be played, with the player racing once per week.  The number of weeks of the swiss stage will depend upon the number of participants (this is at admin discretion).

Swiss tournaments operate by randomly selecting your opponent for the first round.  During the second round, you will be paired randomly with another player with the same record as you.  This will repeat for 5 to 7 weeks, with one match per week.

Swiss stage matches are due by 11:59pm EDT on the Tuesday of the week.  Extensions will ONLY be granted in extenuating circumstances.  If the match is not completed by the deadline, it will be a forfeit for both players, unless one player can demonstrate they attempted to schedule their match and the other player was unresponsive, at an admin's discretion.

Brackets Stage

Brackets will be single-elimination, best of three matches with a bracket of the top 8 players during the Swiss Stage.  The bracket will be hosted on Challonge.

The top 8 players will be seeded in the bracket using Challonge's single-elimination bracket format.

Qualification

The top players will be initially determined by the overall record during the swiss stage.  Any ties will be broken by using the Median-Buchholz system.

The Median-Buchholz system is used to break ties in Swiss tournaments. The value it shows is the sum of a player's opponents' scores, with the best and worst scores discarded. For example, if a player's opponents scores are 1, 1, 1, 1, 0, 0, 1; a 1 and 0 get dropped from the calculation, so the player's tie break value is 4 (1+1+1+1+0).

Seeding

Seeding in the bracket stage will be calculated by scoring each player based off of the sum of the wins of each of their opponents during the Swiss stage, multiplied by the player's own number of wins during Swiss.

Schedule

Rules

Game Settings

All games played this tournament will have the following settings:

Item Placement

Goal:

Gameplay:

Difficulty:

Winning Condition and Ties

The race winner will be the first person to enter the Triforce Room, which is the mosaic effect that occurs before fading to black.  This is based on the time the runner enters ".done" in the SpeedRunsLive chat channel, or presses Done in RaceTime.gg.

If both runners finish within 2 seconds of each other, the race for each player will be re-timed using VoDs.  If it is too close to call, as determined by an admin, the race will be declared a tie and each runner awarded half a point during the swiss stage, and the race will be re-ran during the bracket stage.

Permitted Glitches

Glitches allowed are based on the ALTTPR Racing Council recommendations, as listed in the "Competitive" column of this page: http://alttp.mymm1.com/wiki/ALTTPR_Racing_Ruleset

We will be using the ruleset as set out by the ALTTPR Racing Council. Any ruling made by the council will go into effect for the tournament 24 hours after it is posted, to allow players in the tournament time to adjust.

Randomizer Version

This tournament will be using the latest-stable version of the ALTTP Randomizer, as deployed to https://alttpr.com.  The tournament will use any newer versions of the randomizer, if one is released while the tournament is in progress.

As of the writing of this document, the latest version is v31.0.4.

Timezone

For the purposes of this tournament, all scheduling and deadlines will be in the U.S. Eastern Daylight Time zone.

Exceptions to Normal Tournament Rules

Normally in a randomizer tournament, the race is played blind (players cannot see what other players are doing).  For this tournament the following normally prohibited actions are allowed:

  1. Players are allowed to view their opponent's stream during the course of the race.
  2. Players are allowed to view the restream.
  3. Players are allowed to chat in their stream's Twitch chat.
  4. Players are allowed to chat in the restream's Twitch chat.

Outside Assistance

The player may not receive outside assistance from another person.  For example, the player may not have another person provide advice on routing.

Prohibition of use of automated tools to parse spoiler log

The use of automated tools to parse a spoiler log are prohibited. Copy/Paste, and other standard text editor functions are OK. "Find" or "Find and Replace" are OK only when using plain text. Automated tools may include but are not limited to:

  1. Any program that automatically parses the spoiler log for any reason other than for you to read it in its unaltered format (e.g., a text editor technically parses the spoiler log but it does not alter it in any way or present this information to you in any way other than as text)
  2. Excel Macros/Formulas
  3. Settings that color-code characters/symbols/words/etc automatically in your text editor. E.g., a person cannot setup Sublime or some other code editor to highlight words with progression items in Orange - or even to color code text with different levels of indentation. All text and symbols must appear monochrome when loaded initially. A player may manually color-code text if they wish, but may not do this with an automated tool. This falls under the category of “no automatic parsing”
  4. Map tools which parse a spoiler log to show you visually where each item is on the map. This falls under the category of “no automatic parsing”
  5. Text editor features which allow you to manipulate text using "Find" or "Find and Replace", beyond simple text. For example, text editor features which automatically color, bookmark, or format found or replaced text are not allowed. Regular expressions used with "Find" or "Find and Replace" are not allowed. The only applications of "Find" or "Find and Replace" which are allowed are applications using plain text only.

Manually copy-pasting information from one source to another document is okay, as long as the destination does not perform any type of logic as defined above.

If the player needs to be able to view the spoiler log in a different format for accessibility purposes, the player should ask a tournament admin for assistance.

Administrative rulings

The tournament admin team reserves the right to make judgement calls on situations that may not be fully outlined within this document.

Reporting suspected rule violations

Any reports of tournament rule violations may be sent via Discord DM to a tournament admin.

Changing Discord Name or Discriminator

Changes to a player's discord name or discriminator must be declared to a tournament administrator.  This is to keep our bot from breaking horribly.

Streaming Rules

  1. You must stream your race on Twitch and enable VOD saving.
  2. Race VODs must be highlighted and left on Twitch for the duration of the tournament
  3. Players are expected to respond promptly to admin requests made in the race channel
  4. Players who drop will be considered to have lost all subsequent matches.
  1. Records of previous matches will remain unchanged
  1. All forms of cheating are strictly prohibited. This includes but is not limited to:
  1. ROM/RAM inspection
  2. Using external tools to modify game memory
  3. Using automated tools to parse the spoiler log (see Prohibition of use of automated tools to parse spoiler log)
  4. Receiving outside assistance with routing (see Outside Assistance)
  1. Harassment and bullying will not be tolerated in any way
  1. You should not take matters into your own hands. Send a direct message to an admin instead.

Hardware/Software Rules

  1. Allowed emulators include SNES9X 1.51+, SNESGX (Wii), BSNES/HIGAN and BizHawk
  1. ZSNES & older versions of SNES9X are banned
  1. Allowed flash cartridges include the SD2SNES and Super Everdrive
  2. The following console brands are allowed for play with flash cartridges or SD-cards:
  1. Nintendo
  2. RetroBit
  3. Analogue (including SuperNT jailbreak firmware)
  1. The following console brands are not allowed for play with flash cartridges or SD-cards:
  1. Hyperkin
  2. MiSTer
  1. Turbo functionality is banned
  2. Emulator specific functionality is banned (e.g. save states, fast forward, hiding layers, etc)
  1. Pressing Up+Down or Left+Right simultaneously is banned
  1. Only one action can be mapped to any given button
  1. For example you cannot bind Up and A to the same button
  1. Only one button can be mapped to any given action
  1. For example you cannot bind Up to two different buttons
  1. If your preferred emulator isn’t listed please contact a tournament admin. You may be asked to display your input settings/hotkeys and emulator version before or after a race.

Usage of MSU-1 and Palette Shuffle during Restreams

If you will be using MSU-1 music while being restreamed, please let the SpeedGaming setup helper know, so they know to not use your audio.  SpeedGaming cannot use your audio due to copyright concerns.  Usage of MSU-1 packs while being restreamed is discouraged for this reason.

Palette Shuffle may be used even if being restreamed, however it is discouraged.  We find palette shuffle may make it more difficult to follow your run by commentators and viewers, however if you absolutely want to use palette shuffle, it is your option.

Change Log

3/21/2020 - Initial rules by Synack

4/6/2020 - Grammar edits; true ties are now ½ point after review; temporary council rulings are treated as all other rulings; turbo controllers are allowed, just functionality that is banned; clarified when .done occurs