forked from bxrru/TAS-Comp-Bot
-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed
Description
A multi-speed task is a window of time (usually 1 or 2 weeks) where you can run multiple distinct speed tasks simultaneously, allowing competitors to choose which ones they participate in, when, and in which order. Below is a list of all the changes that would need to be made to the existing speed module to achieve this functionality.
-
$/start-taskis updated such that any integer from 0 to 256 in thespeed-taskargument is accepted.- 0 means not a speed task. Default value
- 1 means regular speed task.
- 2 to 256 means multi-speed task. 256 is a reasonable upper bound as the maximum number of ghosts you can store in an rksys.dat save file.
-
$/speed-task-length,$/speed-task-desc, and$/speed-task-remindersall have an optional first argument added specifying which task is being edited (note that$/speed-task-desccan't be used as a slash command, since it requires a multi-line argument)- If the
speed-taskparameter was set to 1, this first argument is omitted and these commands are called as usual (this prevents having to specify that you're editing the only task for normal speed tasks) (if you have a better idea, please discuss) (note that - Acceptable values are from 1 to the value of
speed-task. Values outside this result in a warning response.
- If the
- There is one submission array for each task
- The submission list is a combination of all tasks, displaying who has submitted to at least one of the tasks
-
$/delete-submission,$/edit-submissions,$/get-results,$/get-submissions,$/submitalso all have the optional argument as described above
-
$/requesttaskis also given the same optional argument as described above- As usual, if the value of
speed-taskis 1, then this is truly optional, and omitting it will still result in the task being sent - If the value of
speed-taskis 2 or greater, then omitting the argument is not allowed, and results in a warning response. - The command can only be used once per task rather than once overall
- The command can only be used if a timer for another task is not already running (i.e. you can't participate in multiple tasks at the same time)
- As usual, if the value of
- For now, the public release of the task and public reminders are disabled entirely whenever
speed-taskis 2 or greater (i.e. for multi-speed tasks).- If
$/requesttaskis used once the requested task is in its final duration (e.g. task 3 has a length of 2 hours and they request it with 1 hour left until the deadline), then their custom deadline is simply set to the final deadline and the speed task continues as usual.
- If
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthelp wantedExtra attention is neededExtra attention is needed