====== SpARCy: Complete Command List ====== A list of commands in alphabetical order follows. Some commands do not make sense unless used with other commands. Other commands do not work properly or have been deprecated. You have been warned. Commands in italics are optional. ===== !sleep ===== Core Function Limited to SpARCy Ops Usage: !sleep Effects: When triggered, puts the bot to 'sleep', shutting down its core functions. ===== !wakeup ===== Core Function Limited to SpARCy Ops Usage: !wakeup Effects: When triggered, revives the bot to full functionality. ===== !buggeron ===== Core Function Usage: !buggeron #channelname Effects: Obliges SpARCy to join a room, as long as it is not already in too many rooms. ===== !buggerpause ===== Core Function Limited to SpARCy Ops Usage: !buggerpause Effects: Stops SpARCy's internal timer that reloads him into all standard rooms every sixty seconds. Typically useful for debugging. ===== !buggertimer ===== Core Function Limited to SpARCy Ops Usage: !buggertimer Effects: Restarts SpARCy's internal self-join timer, reloading him into all standard rooms every sixty seconds. ===== !buggerall ===== Core Function Usage: !buggerall Effects: Immediately reload SpARCy into all standard rooms. ===== !buggeroff ===== Core Function Usage: !buggeroff //#channelname// Effects: If used without a channel name, removes SpARCy from the room the command was issued in; otherwise, removes SpARCy from the designated room. ===== !buggeradd ===== Core Function Limited to SpARCy Ops Usage: !buggeradd #channelname Effects: Adds a room to the standard rooms list SpARCy automatically joins. ===== !buggerdel ===== Core Function Limited to SpARCy Ops Usage: !buggerdel #channelname Effects: Remove a room from the standard rooms list SpARCy automatically joins. ===== !buggerlist ===== Core Function Usage: !buggerlist Effects: Lists all rooms in which SpARCy is intended to join. ===== !summon ===== Core Function Usage: !summon nickname Effects: Invites a user to the room; typically used for invite-only rooms. ===== !version ===== Core Function Usage: !version Effects: Displays the current version and related information. Not always accurate. ===== !timer ===== Core Function Usage: !timer //command// Effects: **ARC Rules**: Increments a timer token by 1 to 30 seconds and displays the results, thus generating a random short passage of time. **Uni Rules**:\\ //start// or //reset// - Sets timer to zero.\\ //next// - Increments timer by five seconds (one combat Turn).\\ //turn// - Increments timer by five seconds (one combat Turn).\\ //###// - Increments timer by ### seconds. ===== !next ===== Core Function Usage: !next Effects: This command is used in conjunction with !timer, and acts as the //!timer next// command. ===== !reset ===== Core Function Usage: !reset Effects: This command is used in conjunction with !timer, and acts as the //!timer reset// command. ===== !birthday ===== Core Function Usage: !birthday //#// Effects: Chooses a random date (useful for birthdays and other random occasions.) Generates leap years one in four times. If //#// is set, will generate # random birthdays instead of just one. ===== !draw ===== Function of SpARCyCards Usage: !draw //#// //name// Effects: Draws //#// cards into your hand, and messages you with your current hand. If //name// is used, player name is tracked as //name//; otherwise, player name is tracked using the player's current nickname. If //#// is not set, it defaults to 1. ===== !quickdraw ===== Function of SpARCyCards Usage: !quickdraw //#// //name// Effects: Quickly draws //#// cards into your hand, tells you what they are, and discards them; useful for getting a quick spread of cards. //name// is used as for !draw; //#// defaults to 5 (a standard card hand.) ===== !shuffle ===== Function of SpARCyCards Usage: !shuffle //game// Effects: Shuffles the deck of cards and prepares them for a new game. //game// defaults to Poker if no game has previously been played in that room, or to the game previously played; available games are Poker or Blackjack. This changes the output of certain commands related to cards (Poker outputs what hand you have; Blackjack counts your hand and whether you've busted.) ===== !discard ===== Function of SpARCyCards Usage: !discard # //name// Effects: Throws card # out of your hand. If //name// is used, discards them from player //name//'s hand. Now deprecated, due to !toss serving the same purpose. Cards discarded return to the draw pile by default. ===== !showhand ===== Function of SpARCyCards Usage: !showhand //name// Effects: Displays your hand to the entire room (and displays score, as relevant. Will not display score for Poker unless you have five cards. If you have five cards and it says 'Too Many Cards' or 'Too Few Cards', there's been a bug that requires reshuffling the deck to fix. ===== !show ===== Function of SpARCyCards Usage: !show //name// Effects: Displays your hand to you (and you only) via notification. If //name// is used, displays player //name//'s hand to the person who made the request. Very easy to see people who try to cheat using this, though. ===== !fold ===== Function of SpARCyCards Usage: !fold //name// Effects: Discards your hand. Note that once you do this, those cards return to the draw pile. If //name// is used, discards //name//'s hand. ===== !hit ===== Function of SpARCyCards Usage: !hit //name// Effects: Gives you (or //name//) a hit - in short, gives you one card, as if you used !draw 1. ===== !checkgame ===== Function of SpARCyCards Usage: !checkgame Effects: Tells you what game is being played in the channel. ===== !deal ===== Function of SpARCyCards Usage: !deal //name// Effects: Deals a number of cards appropriate to the game being played. //name// defaults to your current nickname. ===== !showtable ===== Function of SpARCyCards Usage: !showtable Effects: Shows the hands of all players. Commonly used as the last action of a game (to determine who won) before shuffling for a new deal. ===== !toss ===== Function of SpARCyCards Usage: !toss X//,Y,Z...// //name// Effects: Allows you to toss one or multiple cards from your hand, using a comma to separate card numbers. //name// defaults to your nickname. ===== !showlast ===== Function of SpARCyCards Usage: !showlast //name// Effects: Shows your hand to the entire room. //name// defaults to your nickname. ===== !roll or !dice ===== Core Function Usage: !roll//:target-E XdY*A/B+C-D description// Effects: !roll (or !dice - both typically function in the same way)) is the core die roller of SpARCy. At the moment, it is replicated in all rulesystems due to the peculiar handling that some have, but it has a wide range of functionality in any setting. Many of the functions used here are replicated in other die-based routines. As such, it's important to understand how the bot handles this input. First off is //:target//. If this is added after a compatible die-based command, it converts the function to 'target' that user, which may or may not be visually comprehensible. However, it provides a useful shorthand for reminding people who you're targeting. Just remember that 'target' has to be a single word. Second off is //-E//. If used with a compatible command, it converts the function into a multiple-roll function. For example, //-5// would make the listed roll five times, showing the five separate results. If used with //:target//, it must be written with no spaces between the two subfunctions, as listed above. The core of die rolling is XdY - X being the number of dice, and Y being the number of sides. If X is not included, X typically defaults to 1; if dY is not included, dY's default is system-specific (d20 for d20Rules, d10 for UniRules, d6 for GURPS, etc). As such, dY is not strictly necessary, but if you want to use //description//, or add modifiers to the default roll, you will have to include at least //dY//. //*A/B+C-D// is handled in standard mathematical order. All modifiers are totalled before being applied -- //*2/2-4+12-8*4/3// would be handled as //*8/6+12-12//, and would be handled in roughly that order. As such, the bot's per-line post limit is the only practical limitation to the extent of a die roll modification. //description// is unnecessary, but can be as many words as the user wants, and will be used in the final output. Bear in mind that IRC allows a limited output, so 80 characters or less is recommended. Limitations: The bot is limited primarily by IRC's internal limitations; however, it is unlikely to fail unless deliberately provoked. It has no real limitations on the extent of modifiers, although for purposes of iteration overload prevention you cannot roll more than 100 dice or sets of dice at a time. Attempting to do so converts the excess into a die multiplier (for instance, 6000d20 becomes 100d20 * 60.) ===== !gmroll OR !gmdice ===== Core Function May not be in all systems. Usage: !gmroll//:target-E XdY*A/B+C-D description// Effects: The effects of !gmroll or !gmdice are as listed above, but instead of being broadcast to the room, they are sent via message to the user; everyone else just hears the rattling of dice. ===== !d10 ===== Unisystem Function Usage: !d10 //X+Y-...// Effects: This rolls a d10, adds the modifiers formed by X, Y, etc, and compares the result to the Success Levels table of the Unisystem, providing this feedback as well as the final die roll. ===== !dart ===== Unisystem Function Usage: !dart //X+Y-...// Effects: This rolls a d10, adds the modifiers formed by X, Y, etc, and compares the result to the Success Levels table of the Unisystem, then uses the success levels to provide a result (miss, outer ring, center ring, inner ring, or bullseye). ===== !attack ===== Unisystem Function Usage: !attack Z //X+Y-...// Effects: This rolls a d10, adds the modifiers formed by X, Y, etc, and compares the result to Z - if the result is higher than Z, it tells you such and displays the success levels thus incurred (typically added to damage before modifiers).