The
Elector
Update
New Roles
- Elector: transfer one player’s vote to another
- If the person who gained the vote power dies, the person who lost their VP immediately regains it
- If two electors try to steal from someone, the first elector gets priority
- If two electors try to steal from someone, and then that someone gains vp from ANOTHER elector, they will transfer their dented VP to the person that owns it
- “Owing vp” only lasts through the night, and no longer
- If you lose vote power, you will be notified
- If you gain vote power, you will be notified
- If you gain AND lose vote power, you will not be notified
- Drug dealers cannot hide the fact that you gained or lost VP
- Disguisers disguising into someone with no VPs will also have that effect of no vps
- Same if they’re disguising into someone with more VPs
- Disguiser will regain the vote power of their target if the person who stole their target’s vote power dies
- Thief: pick a role amongst the remaining roles that haven’t been assigned
- Is unique
- Cannot be put on a team with enemies
- Silencer: stops one from chatting during the day, but can still vote
- Disfranchiser: stops one from voting during the day, but can still talk
Narrator Feature & Fixes
- Fixed issue with “secret voting” publicizing votes
- Added liar’s club setup
- Changed mayor’s ‘new vote count’ to ‘vote count increase’
- Various “Diminishing Pool” vote system fixes
Setup Creation Enhancements
- Custom setups are truly now a thing, and persist
- Modernized setup manipulation
- Restored role settings and visualizations on the UI
Visual Fixes
- Clicking on any colored role, team, or setup hidden should properly show the right info
- Lack of puppets will no longer cause browser to crash
- Toggling between custom and auto setup should work again
- Will show a helpful error when auth token is inactive
- Day chat is disabled if sc2mafia is an integration for this game
Lobby Enhancements
- Fixed timer not counting down
- Player exits redone, accounting for all(?) scenarios
Sc2Mafia Integration Fixes + Features
- Will detect new games every 10 minutes
- Will post signup and setup threads on new games
- Will update the setup when (some) setups changes happen
- Will detect player signs and update the player signups
- Will pm role info upon game start
- Will publicize who won the game
- Default phase lengths are 48 hours and 24 hours
- Will gracefully close out empty lobbies
- Votes will be announced as they happen
- Votes will be detected
Discord Fixes + Features
- Vote count will be announced before trials
- Vote count will be announced at end of day
- Vote count will be announced on vote resets
- Moderators will be informed of live voting during ‘secret voting’
- Moderators can ask for roles of players from the bot in pm
- The name of the moderator will be announced on game start, if one exists
- Added vote help text
- Fixed “spots available” text on !info command during game setup
- Fixed !living command
- Fixed !graveyard command
- Fixed !setups command
- Limited !votecount to only show who’s allowed to be voted
- Fixed client crash error when players joined night chats
- Allow moderators to ask for vote count via bot pm
- Added full-blown test suite for discord
- Will correctly pull the nickname if it exists
- Will properly show error text when game fails to start, so host can action on them
Database Fixes
- Fixed incorrect role_ability_bool_modifier name length
Tech upgrades
- Modernized code architecture for Discord interface
- Added full blown test suite for Discord, shortening tests from 10 minutes to 30 seconds.
- Removed a lot of the old web socket/ server interactions in favor of HTTP requests. This is good because the browser can now process failures much easier
- Added cypress testing to stop front end features from breaking
- Prettied up all my javascript code
- Moved the timer logic out of Java and into Javascript