Monday 19 May 2014

GURPS over Roll20 experiments: Final stretch, setting up the game.

After much delay, I'm almost done setting up my GURPS over roll20 and getting ready to run my first scenario. The plot and whatnot for the one-shot are not a problem and irrelevant to roll20 in itself, so I won't go into that, and instead focus only on the mechanics I've decided to go with.

The goal I had was to streamline play as much as possible, especially for new players and for combat situation. Non combat is not a problem and I know how to handle all that already.

Warning...wall of text and horrible Blogger formatting :)

The PC Sheets
GURPS is very simple at it's core, but the details matter a LOT and I realized that trying to keep an actual GURPS PC sheet on roll20 was simply not viable, so players will have to use something else. 
To make sure everyone's on the same page and the PC sheets are properly up to date, I made my own, available via G+DRIVE. 


Yes it's an external tool, and yes it's a problem, but I simply couldn't find a way around it: player will have to keep this sheet open during play, somewhere, and check it as we go for skills and whatnot.
If you're interested, I keep a full access copy here that I update when I make changes on my own copy of it: 
GURPS Mut's PC Sheet




On roll20, I ended up with only what I thought would be the most important during play to help keep a fast paced session.
  • ST/DX/IQ/HT, Will, Fear: Mainly because they are quick access macros for these, but to be honest, I don't even think they're needed in there since players can simply look up the Base Level for these on their G+DRIVE sheets at any time. I'll keep them in for now, but might just remove them later on.
  • HP/FP/ER: Useful in game for tracking. This will be done only via roll20, not on the G+DRIVE sheets since they'll be changing all the time. What will be tracked on the G+DRIVE sheets will be the actual injuries and crippling/major wounds.
  • Basic Speed: Used for INITIATIVE macro.
  • Encumbrance: This is probably gonna change as we go. The idea here is to just keep track of the current encumbrance level as you pick up and drop stuff. Used as reference for Dodge checks and DX checks.
  • Defensive Bonus: Like encumbrance, just there as a reference automatically included as a note in some macros.
  • Dodge, Parry, Block: The most common level for these, in normal circumstances. Just used for quick access macros.
  • Attack_xx: These are for the most usual attack. First column is the Base Skill, second column is the name of the weapon or attack.
  • Damage_xx: That's for the damage, Damage_01 being for Attack_01, etc. First column is the actual damage (ie: d6+1) for calculation and second column is for the type (cut, cr, pie+, cor, etc)
And that's it. 
To be honest, Attributes can probably go as well but for now, I'll leave them in for quick macros during play. The idea is for players who, for example, want to do something that might involve DX, they just push the DX macro (which will roll 3D6 and list the Base DX value), then we'll sort things out if needed. If the rolls are low or high enough, we won't even need to look things up anyway, so rolling first saves time in the end.

Non-combat Macros

These will be on the PC sheets in roll20 and after some thought, I just went with VERY simple ones after all.
The Check(DX) macro for example is just:

/ooc CHECK (DX) /ooc > [[3d6]] vs Base of [[@{DX}]]
/ooc > Encumbrance: @{Encumbrance}


Instead of skill specific macros, I also put a generic custom macro that offers how I want the game to go: Emote your PC intents, then roll the dice!

/em ?{emote|tries to do something!}
/ooc CHECK (Custom)
/ooc > [[3d6]] vs Base of [[?{Base?|10}]]

Why put the emote in there and force it for this macro? Remember I play 100% chat based roll20 sessions, emotes are key to state your PC's intents. Also, with such macro, you do not need to type any command: press the button, type the emote, put in Base Skill value, done.
It also keeps things formatted properly across all players (and myself), which is also important in 100% chat based stuff, especially if you need to scroll up and whatnot.

Combat Macros:

This is were things gets...meaty. Combat is THE time killer in GURPS from everything I've seen so far and since I'd like ~10-20 seconds turn per player/actor, had to find ways to try and streamline stuff.

A "turn" for an actor (that includes PC and NPC) should go like this:
  1. Actor declares his chosen Maneuver.
  2. Actor declares his intents.
  3. Actor resolves his non conflicting intents (move, change posture, etc).
  4. Actor and GM/Player resolve the conflicts (attack, defense, grapple, skill checks, etc).
  5. GM describes the outcome.
  6. Player and GM keeps tracks of what needs to be tracked (HP lost, shock, ammunition, etc).
All of this should be done in 10 to 20 seconds. Yea...So let's see how we can do this...

Maneuver Macros

After much testing, I've finally come up with something that is suitable to what I'm trying to do: Fast to use, clear and to the precise, formatted properly for 100% chat based sessions.
Basically, I set up 13 GM token action macros, one per Maneuver possible, then made them automatically available for ALL TOKENS on selection, even Player ones. This means every single token in the game now has 13 token actions to declare maneuvers properly.

Macro name: M(Move)

/ooc @{selected|token_name} chooses 
/ooc > MANEUVER: Move/ooc > Move allowed: Full

Simple, just declares that your Maneuver is a move, period.

Macro name: M(Aim)

/ooc @{selected|token_name} chooses 
/ooc > MANEUVER: Aim (@{target|token_name})
/ooc > Move allowed: Step

Press this, click on the target token and there you go, everyone instantly knows what you're maneuver is for the turn and you're aiming at, which can be double checked later on by just scrolling. Time to use? 1 second.

Macro name: M(Ready)

/ooc @{selected|token_name} chooses
/ooc > MANEUVER: Ready (?{Ready what?|})
/ooc > Move allowed: Step

Clear, everyone knows what it means, takes 1 second to use and because it follows a proper formatting, can be checked very easily if needed later on. Press this, type in what you're readying (shield, long-sword in right hand, potion from belt, etc) and you're good to go.

Macro name: M(AllOut-Attack)

/ooc @{selected|token_name} chooses 
/ooc > MANEUVER: All-Out Attack (?{DT, DB, FT, ST|DT})
/ooc > Move allowed: 1/2 Move forward

Simple, but what are DT, DB, etc?
Basically, I assigned tags to all Combat Options (there's a handout available but they're pretty self explanatory anyway). DT for AllOut Attack is just Determined, DB is Double, FT is Feint, ST and Strong. 
Simple but keeps things clear and DT is faster to type than Determined.

Macro name: M(AllOut-Defense)

/ooc @{selected|token_name} chooses 
/ooc > MANEUVER: All-Out Defend (?{DB or dodge/parry/block|dodge})

Same as above, DB is double, or you can just type the type of Active Defense you want to boost.


some macros and token actions for maneuvers as well as the token cheat sheet at the bottom.


Attack Macros

These will be on the PC sheets directly and by default, there's a setup for 3 of them, using the Attack and Damage fields _01, _02 and _03. I keep them on the PC sheets because players can just add more should they have dozens of attacks (add attack/damage fields and copy/paste, etc)

Here is the Attack_01 macro

/em ?{emote|attacks!}
/ooc ATTACK (?{option: DA, TA, RS, FT, normal|normal}) (on @{target|token_name})
/ooc > [[3d6]] vs Base of [[@{selected|Attack_01}]] 
/ooc > @{selected|Attack_01|max} at the ?{option: hit location / wild? |torso} 
/ooc > for [[@{selected|Damage_01}]] @{selected|Damage_01|max}


  1. The emote is the intent and in my chat based games where role-play and IC actions are critical, it matters a lot. If in a hurry, the default can be used but you can go crazy and heroic if needed.
  2. 2nd line is for the Attack description. The options are tags again, DA being deceptive, TA being telegraphic, etc. In my game, for now, These default to -4/-2 and +4/+2 but nothing's preventing anyone from just typing DA2 or TA2 and whatnot.
  3. The @target allows the player to click on his target and this will print the name automatically. No more "what you're attacking btw?", just click and be done.
  4. 3rd line is simply a 3D6 check against the Base Skill related to the attack. This is Base, which means no modifiers are involved! I do NOT want players to start listing every single modifier before rolling, I want them to state their intents and roll, period. As a GM, I'll do the math if needed and simply use /desc to give the result.
  5. 4th line is the weapon used (or whatever is listed in the 2nd column of the Attack) and the chosen hit location. By default it's torso of course, but you can type in head, or wild (I got random location tables ready for that).
  6. 5th line is for damage and damage type. Simple enough. Why roll now? Because it saves time. If the attacks hits, then we already got the damage and saved time. If it doesn't, who cares.

And there's 3 of these (more can be made as said before), handling all attacks possible that a PC (or NPCs since I have the same available for all my NPC sheets) could ever do. 
All attacks will be formatted properly and consistently, require no command typing from players or myself (therefore no errors, etc), be usable instantly (since no modifier calculation is required) and easily readable.

The output would be something like this:
"Joe Smith brings his long-sword down on the bear!"
ATTACK (DA) (on a bear_03)
> 7 vs Base of 14
> long-sword at the right arm
> for 4 cut

Seeing this, everyone instantly knows that Joe is attacking the bear_03, with a DA attack (-4) to the right arm (-2) and Base Skill of 14, rolling 7, which hits.

Active Defense Macros

Pretty much same stuff. Got 3 pre-made for each AD.

Dodge:

/em ?{dodge emote| tries to dodge!}
/ooc CHECK (Dodge, ?{RT, DD|normal}) 
/ooc > [[3d6]] vs Base of [[@{Dodge}]] (+DB: @{DB})
/ooc > Encumbrance: [[@{Encumbrance}]]

Emote, because IC intents matter. Type of AD and Combat Options (RT being Retreat, DD being Drop and Dodge). The roll against Base Dodge and DB value just as a note if relevant. Encumbrance, just because it's Dodge and therefore is relevant.

Parry:

/em ?{parry emote| tries to parry!}
/ooc CHECK (Parry, ?{RT|normal}) 
/ooc > [[3d6]] vs Base of [[@{Parry}]] (+DB: @{DB})

Self explanatory really. Players can just copy/paste in additional macros if needed for multiple available parries (if dual wielding, etc).

Other Macros

- Damage Calculation: 
This one is for GM only and allows me to quickly calculate the actual damage done with some quick notes for the most used wounding multipliers required.

/w gm Damage taken [[(?{damage|0}-?{DR|0}) * ?{cut(1.5), imp(2), pie-(0.5), pie+(1.5), pie++(2)|1} * ?{vital(3), neck(1.5), |1}]]

Press this, type the damage done (from an attack, fall, whatever), type in DR for location, first wounding multiplier based on weapon type, then wounding multiplier for location and whatnot. Huge time saver in my man to man tests.

- Quick token say and emote: 
Bear roars, Orc yells, something happens and you need to fluff it up? In chat based games, who says what matters a lot I feel and constantly doing /as or /emas then typing the full NPC name can be a massive pain, especially for long names or the ones with spaces.
To solve this, two simple macros. One for quick token say

/as "@{selected|token_name}" ?{say what?|}

And one for quick token emote

/emas "@{selected|token_name}" ?{action emote|}


Other goodies

- Rollable table for whatever you can, such as hit location (humanoid and some non humanoid), critical hits and misses so you don't have to type everything.

- A Cheat Sheet token! 
First you make a cheat sheet image for usual maneuvers, modifiers and whatnot. 
Then you set it up it as a normal token (just like for your PCs, etc), set up it's proper size so it's readable and link it to a Character Sheet that you make controllable by everyone, making sure you checked "All player see Light" and "Has sight" if you're using Dynamic Lighting.
The result? A cheat sheet token you can just drop somewhere on the board that EVERYONE sees without revealing anything around it and can move around if needed. Sounds silly? It's awesome! Way better than handouts that clutter your screen.

- Special tokens: Prone!
Make a PRONE token with some simple graphics, put it into a sheet  and grant access to all and voila! a quick to drag'n drop token for prone position that everyone can use freely.

- Special tokens: Light!
Token with default lights set up similar to a torch or lantern, link it to a sheet and grant access to all. Once again, very easy to use, already set up, light sources that players can move if they want to (and can of course).

- Special tokens: Effects!
Set up a token with visible auras, link it to a sheet, once again available to all. Your player wants to line up a big Cloud Gas spell somewhere? Just drag'n drop this sheet to make a new instant of it and let the player sort the placement and whatnot.




And that's it.
I've tested many solo man to man using this setup and overall, I'm pleased with the result. Combat is fast paced, everything is formatted clearly and ease to use.
I'm pretty sure after just a couple rounds, any player can feel comfortable with it and never mess up commands or play with macros afterwards, allowing the game to flow properly.



No comments:

Post a Comment

Related Posts Plugin for WordPress, Blogger...