hey Brad,
I am still using your 5th edition Hero marcos every other Saturday. First off let me say I am not asking for help
.
I have palyed around with a couple of the marcos and thought I would share what I have learned.
First off I managed to make the Initiative start with phase 1 instaed of phase 12. The phases are now displayed from 1 to 12 instead of 12 to 1. Here is what I did to the macro
Code: Select all
[h: initiative_list=macro.args]
[h: speed_num=listGet(initiative_list, 0)]
[h: init_mod=listGet(initiative_list, 1)]
[h, if(speed_num==0): addToInitiative(1, "f PHASE 7" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h, if(speed_num==1), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==2), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "i PHASE 4" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==3), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "d PHASE 9" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==4), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "c PHASE 10" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "h PHASE 5" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==5), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "c PHASE 10" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "i PHASE 4" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==6), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "b PHASE 11" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "d PHASE 9" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "f PHASE 7" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "i PHASE 4" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==7), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "b PHASE 11" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "d PHASE 9" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "h PHASE 5" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==8), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "b PHASE 11" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "c PHASE 10" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "f PHASE 7" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "i PHASE 4" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==9), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "b PHASE 11" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "c PHASE 10" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "d PHASE 9" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "h PHASE 5" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "i PHASE 4" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==10), code:{
[h: addToInitiative(1, "a PHASE 12" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "b PHASE 11" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "c PHASE 10" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "d PHASE 9" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "f PHASE 7" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "f PHASE 6" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "e PHASE 5" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "d PHASE 4" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+500+init_mod) + (eval(int)+500))]
}]
[h, if(speed_num==11), code:{
[h: addToInitiative(1, "a PHASE 12"+ "0" + (eval(dex)+ 500+init_mod) )]
[h: addToInitiative(1, "b PHASE 11" + "0" + (eval(dex)+ 500+init_mod) )]
[h: addToInitiative(1, "c PHASE 10" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "d PHASE 9" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "e PHASE 8" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "f PHASE 7" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "g PHASE 6" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "h PHASE 5" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "i PHASE 4" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "j PHASE 3" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "k PHASE 2" + "0" + (eval(dex)+ 500+init_mod))]
[h: addToInitiative(1, "l PHASE 1" + "0" + (eval(dex)+ 500+init_mod))]
}]
[h: sortInitiative()]
By placing a letter infront of the phase and assigning the letter a number value, I am now able to have the phases count the way they are suppose to be. I just ingore the letter infront of the phase. I think I like this method better, at least for my application.
Second I changed the Start phase marco to this.
Code: Select all
[h: man_dcv_melee_mod=0]
[h: man_dcv_melee_half=0]
[h: man_dcv_melee_0=0]
[h: man_dcv_range_mod=0]
[h: man_dcv_range_half=0]
[h: man_dcv_range_0=0]
[h: man_ocv_mod=0]
[h: dcv_m=0]
[r: getName() + " starts phase.<br />"]
[r: if(state.stunned==1, "You have recovered from being Con'd. Your phase is over.", "")]
[h, if(state.stunned==1): nextInitiative()]
[h: dcv_levels_on=if(state.stunned==1, 0, 1)]
[h: state.stunned=if(state.stunned==1, 0, 0)]
[r, c(4), code: {
[r, if(eval("timer" + roll.count)>0), code: {
[h: eval("timer" + roll.count + "= timer" + roll.count + "-" + time_passed_since_last_action)]
[h, if(eval("timer" + roll.count)<=0): eval("timer" + roll.count + "=0")]
[r, if(eval("timer" + roll.count)<=0 && roll.count==0): getName() + " is no longer Flashed!"]
[h, if(eval("timer" + roll.count)<=0 && roll.count==0): state.flashed=0]
[h, if(eval("timer" + roll.count)<=0 && roll.count==0): targeting_senses=0]
[r, if(eval("timer" + roll.count)<=0 && roll.count==1): "Timer" + roll.count + " has run out!"]
[r, if(eval("timer" + roll.count)<=0 && roll.count==2): "Timer" + roll.count + " has run out!"]
[r, if(eval("timer" + roll.count)<=0 && roll.count==3): "Timer" + roll.count + " has run out!"]
}]
}]
[h, macro("track_dcv_ocv@lib:gm"): ""]
[h, macro("combat_sheet@lib:gm"): ""]
I am not sure what I erased, but now it asks when a token has a counter on it how many phases has past. I like this method better because we never seemed to pick up using the start phase every time we had a character start his phase. I believe this way we can either use the start phase or only use it when a character has a counter on that token.
I also fixed the Endurance marco from asking twice for the input value. I cannot remember what the old line said, but now it is
That was a small fix, but while I was playing around in the marcos I thought I would change it.
And finally, I fixed the flash counter. It use to display how many phases a token was flashed in the chat window. My party never abused this information, but I decided to fix it. Under the power_effect_flash marco line
I changed the "r" to a "h" and now it hides the phases. I may not be a true code writer, but I am starting to able to stumble my way through and make changes as I need them. I will be testing these changes out tonight.