A bot written with Discord.Net for Ironsworn and its derived games, with a focus on play-by-post games.
TheOracle includes oracles tables for Ironsworn, and can easily be extended to include additional tables. It even supports rolling multiple tables at once, and oracles that roll other oracle tables.
You don't have to lookup rules in the quick reference PDF any more, just ask the bot and it will post the rules text for you.
TheOracle can track the progress for just about anything you want. Track short term game goals like journeys, or long term goals like epic character vows.
Quickly and easily add things like settlements, and NPCs to your game. TheOracle uses interactive posts to help you create a rich world quickly.
Easily keep track of who has initiative, and who is in trouble.
TheOracle is written in a way that makes it easier to localize into your native language. Just fork the project, edit the resource files, and add a pull request and you localization will be added.
Most commands and oracle tables names have shorter hand versions of them, but command clarity is one of the goals of this bot so overly cryptic and short commands are avoided.
Shows all the commands. Use !Help ModuleName
to get more specific details about a command.
- Command Aliases: None
- Sample usage:
!Help ActionCommand
Allows players to set the default game for a discord channel.
- Command Aliases: None
- Sample usage:
!SetDefaultGame Ironsworn
Rolls the action die, adds a modifier (if one is provided), compares it to the challenge die, and reports the strength of your hit/miss/match. Anything after modifier is just fluff.
- Command Aliases: Act
- Parameters: Modifier (optional, can be negative), Fluff (optional, useful for role playing)
- Sample usage:
!Action +1 Swing at the darkness
Rolls the provided oracle table. Use !OracleTable [table1/table2]
to roll multiple tables at once. If multiple games use the same table (like action in Starforged and Ironsworn) you will have to provide the game you want to roll a table for, or use a distinct alias.
- Command Aliases: Table, Oracle
- Parameters: TableName (required)
- Sample usage:
!OracleTable Pay The Price
Lists the available oracle tables, and their aliases
- Command Aliases: List
- Sample usage:
!OracleList
Lists the detailed rules about how to make, resolve a move.
- Command Aliases: Reference, Library, Ref
- Parameters: RuleName (optional)
- Sample usage:
!QuickReference Swear an Iron Vow
Builds an interactive post to keep track any progress trackers in game (Iron vows, Combats, Journeys). If no difficulty is provided a helper post will let you select one.
- Command Aliases: Track, Tracker, Progress
- Parameters: Difficulty (optional), Description (optional)
- Reactions:
- Left Arrow - Decreases the progress track by the difficulty amount.
- Right Arrow - Increases the progress track by the difficulty amount.
- Check Mark - Increases the progress track by a single full box (four ticks).
- Game Die - Rolls the action and challenge die for the progress tracker.
- Sample usage:
!ProgressTracker Epic Find the source of the evil
Builds an interactive post to keep track of players who do and don't have advantage.
- Command Aliases: Initiative, IniTracker
- Parameters: Description (optional)
- Reactions:
- Left Arrow - Assigns/moves you to the Advantage track.
- Right Arrow - Assigns/moves you to the Disadvantage track.
Creates a NPC with a name (given or random), a goal, a description, and a role/job.
- Command Aliases: NewNPC, NPC
- Parameters: NPC Name (optional)
- Sample usage:
!CreateNPC Tom Bombadil
This is not really a command but more of a feature. Simply react to any bot post with the ⏬ :arrow_double_down:
reaction to move it to the bottom of your chat. This is useful for moving things like progress trackers and NPCs, as an alternative to needing separate channels, or multiple pinned messages.
Creates a planet with a name (given or a random P-number), and the planet features that detectable from space. It also adds reaction buttons for revealing more features as you explore the planet
- Command Aliases: Planet
- Parameters: SpaceRegion (optional), Name (optional [generates a name like P-123456 if none is provided])
- Reactions: 🔍 - Closer look 🦖 - Reveals the planet's life (if any) 🌍 - Reveals the planet's biomes (only displayed if the planet type can have biomes)
- Sample usage:
!Planet Expanse Hoth
Creates a Starforged settlement with a name (given, or random from the settlement name list), and the features in the settlement oracles.
- Command Aliases: Settlement
- Parameters: SpaceRegion (optional), Name (optional)
- Reactions: :tools: - Adds/reveals a settlement project
- Sample usage:
!Settlement Outlands Deep Space Nine
Creates a starforged starship, Note: this command is still a work in progress
- Command Aliases: Starship, Spaceship, Ship
- Parameters: SpaceRegion (optional), Name (optional [Adds a name from a small random list until official starship names are added])
- Reactions: :exclamation: - Adds/reveals the starship's mission
- Sample usage:
!Starship Terminus Serenity
Same as the Ironsworn command, but with the character traits in the starforged oracles