Search:

Content

Links

Wiki Users

Contact

Macros / Registering

Sprite Registration Macros

Hello, Spook here!

I made some macros to assist with the Registering process which can be a bit annoying. They exploit the fact that Roll20's initiative system can act as a sort of variable space.

Directions:

  1. GM must create a token and name it 'Sprite' (double-click on it to open the menu), also allow the player to control it
  2. Player selects the Sprite token by clicking on it, then uses the macros.

If you're compiling a new sprite, you want to start with COMPILE.INI to set your Initiative score to something meaningful. Then, use COMPILE.BAT to get your sprite compiled and set up for registering. If it fails, go back to COMPILE.INI first, then COMPILE.BAT again. Once you have a sprite compiled with a decent number of tasks, use REGISTER.BAT to register it; you can use the macro repeatedly if you want to try re-registering the same sprite.

If you've already got a sprite registered or compiled and you want to re-register it, use REGISTER.INI to set up your initiative score with the correct number of prior tasks etc. Then just use REGISTER.BAT until you're satisfied or you run out of tasks.

COMPILE.INI

This will roll your Compiling dice pool and the sprite's Level, and sets the init tracker accordingly, setting up for the Compiling breakdown.


&{template:default} {{name=COMPILE.INI STARTUP SEQUENCE ACTIVATE}} {{Compiling Init Code=[[?{Compiling Dice Pool|14}d6>5k?{Level|6} + 100*?{Level|6}d6>5 &{tracker}]]

COMPILE.BAT

This will use the values from COMPILE.INI to calculate all the details of the compiling task, and set the initiative tracker accordingly for your Registering rolls. It also rolls your fading pool against the proper fading value. If this fails (i.e. you end up with 0 tasks), use COMPILE.INI to reset before using it again.


&{template:default} {{name=COMPILE.BAT EXECUTING...}} {{ Compiling Hits=[[@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*100)]] }} {{ Sprite Hits=[[floor(@{tracker|Sprite}/100)]] }} {{ Tasks=[[{@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*101,0}kh1]] }} {{ Fading=[[{floor(@{tracker|Sprite}/100)*2 - ?{Fading Resistance|15}d6>5,0d6>5}kh1]] }} {{ Registering Init Code=[[?{Registering Dice Pool|14}d6>5k?{Level|6} + 100*((?{Level|6}*2)d6>5) + 10000*[[{@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*101,0}kh1]] &{tracker}]]

REGISTER.BAT

This will use the values from the Compiling breakdown, the previous Registering step, or the Registering Init macro to put out all the values you need for your Registering roll. It will also initialize the values for the next Registering roll, so you can just keep pressing it over and over again...


&{template:default} {{name=REGISTER.BAT EXECUTING...}} {{ Prior Tasks=[[floor(@{tracker|Sprite}/10000)]]}} {{ Registering Hits=[[@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*100)]]}} {{ Sprite Hits=[[floor(@{tracker|Sprite}/100) - floor(@{tracker|Sprite}/10000)*100)]]}} {{ Tasks Gained=[[{[[@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*100)]]-[[floor(@{tracker|Sprite}/100) - floor(@{tracker|Sprite}/10000)*100)]]-1,-1}kh1]] (including -1 cost of registering)}} {{ Total Tasks=[[ [[floor(@{tracker|Sprite}/10000)]] +[[{[[@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*100)]]-[[floor(@{tracker|Sprite}/100) - floor(@{tracker|Sprite}/10000)*100)]]-1,-1}kh1]] ]]}} {{ Fading=[[{[[floor(@{tracker|Sprite}/100) - floor(@{tracker|Sprite}/10000)*100)]]*2 - ?{Fading Resistance|15}d6>5,0d6>5}kh1]]}} {{ Registering Init Code=[[?{Registering Dice Pool|14}d6>5k?{Level|6} + 100*((?{Level|6}*2)d6>5) + 10000*[[ [[floor(@{tracker|Sprite}/10000)]] +[[{[[@{tracker|Sprite} - floor(@{tracker|Sprite}/100)*100)]]-[[floor(@{tracker|Sprite}/100) - floor(@{tracker|Sprite}/10000)*100)]]-1,-1}kh1]] ]] &{tracker}]]

REGISTER.INI

ONLY use this to initialize if you are re-registering a sprite with prior tasks remaining.


&{template:default} {{name=REGISTER.INI STARTUP SEQUENCE ACTIVATE}} {{Registration Init Code=[[?{Registering Dice Pool|14}d6>5k?{Level|6} + 100*((?{Level|6}*2)d6>5) + 10000*?{Prior Tasks|0} &{tracker}]]

Optimization

To preset your values so you don't need to be prompted, find and replace:

  • ?{Compiling Dice Pool|14} with your Compiling dice pool (just the number)
  • ?{Level|6} with the Level of sprite you wish to use (just the number)
  • ?{Registering Dice Pool|14} with your Registering dice pool (just the number)
  • ?{Fading Resistance|15} with your Fading Resistance dice pool (just the number)

Page last modified on October 03, 2017, at 09:43 AM