Giter Club home page Giter Club logo

avalon's Introduction

The Resistance: Avalon - Discord Edition

Discord bot built using discord.py library. Original game by Don Eskridge.

#Technical Requirements Only if you wish to download the source code and host your own copy of Avalon

Rules

Information in this section drawn from a combination of the game's manual, Wikipedia and theresistanceonline.com

The Resistance: Avalon is a variant of The Resistance. It is similar in structure to party games such as Mafia and Werewolf, where a small, secret group of informed players attempt to disrupt a larger uninformed group, while the larger group attempts to identify the traitors and eliminate them. The Resistance uses slightly different mechanics from similar games, and was designed to avoid player elimination and increase available information for player decisions.

Avalon is a game of hidden loyalty. Players are either Loyal Servants of Arthur fighting for Goodness and honor or aligned with the Evil ways of Mordred. Good wins the game by successfully completing three Quests. Evil wins if three Quests end in failure. Evil can also win by assassinating Merlin at game's end or if a Quest cannot be undertaken.

  • The game requires between five and ten players.
  • Approximately one third of the players are randomly chosen as Evil; the rest are Good. This depends on the player count.
  • Evil players have knowledge of who their fellow evil players are. The Good players do not have any additional information.
  • The game consists of up to five rounds called Quests.
  • Each quest has a leader. The leader proposes a quest party of a certain size as determined by the game, which the group approves by public vote.
  • The leader for the first quest is randomly determined, it will then pass in a sequential fashion as determined by the player list.
  • If the group does not approve the quest by a simple majority, leadership passes to the next player.
  • If the group cannot approve a quest party after five attempts, Evil wins.
  • Once a mission team is chosen, it votes by secret ballot whether the mission succeeds or fails.
  • Good will always vote for success and are unable to fail, but Evil has the option of voting for success or failure.
  • It usually only takes one traitor to sabotage a quest, but in games of 7 or more the fourth quest will require two fails.
  • If three quests succeed, Good wins. If three fail, Evil wins.
  • In the event of a Good victory, a character known as the assassin will choose one person to assassinate. If Merlin is correctly identified and assassinated, Evil wins.

Special Roles

Good

  • Merlin - Merlin has knowledge of all the Evil players in the game (except Mordred). He must lead the forces of good, but do so with subtlety lest he be identified by the Assassin.
  • Percival - Has knowledge of who Merlin is. If Morgana is in the game, Morgana will also appear as Merlin. Percival must carefully determine which is the true Merlin and condemn the imposter Morgana.

Evil

  • The Assassin - If Good wins, if the Assassin is able to correctly identify Merlin- Evil will win instead.
  • Morgana - Appears to Percival as Merlin. Must attempt to turn Percival against the true Merlin.
  • Mordred - The Big Bad. Fully hidden. Merlin does not know who the Mordred player is.

Commands

  • !avalon - Starts the game.
  • !help - Direct messages the user a link to this page.
  • !stop - End the currently running game.
  • !join - Used to join the game during the login phase.
  • !party - Used by the leader to propose a party during the team building phase.
  • !approve/!reject - Used to approve or reject a party during the team building phase.
  • !success/!fail - Used to succeed or fail a quest during the secret vote phase.
  • !assassinate - Used by the Assassin in the event of a Good victory to assassinate a member of the game. This command does not have any input verification and only allows you one try. Ensure that you @tag the correct person!

Coming Soon

  • Oberon.
  • Custom discord version of Lancelot.
  • Ability to select exactly which roles come into play.

Known Issues/Limitations

  • When two or more players message the bot at the same time, the bot is only able to process one of the messages.

Original Rulebook

The original game rules can be found at http://upload.snakesandlattes.com/rules/r/ResistanceAvalon.pdf

avalon's People

Contributors

cameronleong avatar dwfig avatar

Watchers

 avatar

Forkers

ldeluigi

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.