alopezlago / QuizBowlDiscordScoreTracker

MIT License
6 stars 4 forks source link

Allow for a default enable/disable bonuses state #60

Closed Sam-per closed 3 years ago

Sam-per commented 3 years ago

Currently we have !enableBonusesAlways and !disableBonusesAlways as ways to ensure that all games on a server have bonuses enabled/disabled. However, this means that if an individual game wants to enable bonuses with enableAlways active, it must be disabled for the whole server (or bonuses skipped by writing 0)

This issue should investigate whether it is worthwhile to have enable/disable bonuses behavior include a "default" serverwide state, which can be overridden for a single game.

Current Behavior

  1. Play on a server with bonuses always enabled
  2. Want to play a game without bonuses, and attempt to write !disableBonuses for the game
  3. bot returns "Bonuses are always tracked in this server. Run !disableBonusesAlways and restart the game to stop tracking bonuses."

Suggested Behavior

  1. Play on a server with bonuses enabled by default, though overridable
  2. same as current behavior
  3. bot disables bonuses for the current game, as suggested by !disableBonuses
alopezlago commented 3 years ago

Changing alwaysEnable/alwaysDisable to instead set a default is a good idea. I don't know if we want to enable bonuses by default, since this started out as a scoretracking bot for tossup shootouts, and it's still used that way in the servers I see. But if most people are using them for practice or (eventually) tournaments, then it'd make sense to default to enabling bonuses. It would be possible to default to "bonuses disabled" for existing servers, and to enable them when the bot joins a new server.