Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account
This post has been closed. You can still view previous posts, but you can't post any new replies.

CombatMaster Alpha

Still no One-click update?
I do believe he said it 2.15 was coming but no date was given. So the One-Click should be uptodate.
1593805059
Victor B.
Pro
Sheet Author
API Scripter
I tried updating one click.  According to Roll20 the code is up to date however, when I tried the one click, the help button/files weren't there.  So 2.15 should update the one click.  
Not sure if it's me or not but I'm using CombatMaster is a couple of games (migrating from Tracker to Master) and neither the Marker or the Next Marker are appearing around the tokens. I'm using the default graphics (the orange and green swirl) that comes with CM. They show in the Config and in the turn order tracker thingy but not around the tokens. I don't see any errors anywhere either.
Anthony said: Not sure if it's me or not but I'm using CombatMaster is a couple of games (migrating from Tracker to Master) and neither the Marker or the Next Marker are appearing around the tokens. I'm using the default graphics (the orange and green swirl) that comes with CM. They show in the Config and in the turn order tracker thingy but not around the tokens. I don't see any errors anywhere either. They show up on whatever map the player ribbon is set to. Is the player ribbon on the correct map? (literally everyone has made this mistake)
The Devilish DM said: Anthony said: Not sure if it's me or not but I'm using CombatMaster is a couple of games (migrating from Tracker to Master) and neither the Marker or the Next Marker are appearing around the tokens. I'm using the default graphics (the orange and green swirl) that comes with CM. They show in the Config and in the turn order tracker thingy but not around the tokens. I don't see any errors anywhere either. They show up on whatever map the player ribbon is set to. Is the player ribbon on the correct map? (literally everyone has made this mistake) Well damn. Never would have thought of that as I tend to test on a separate map. Good to know!
Something I've noticed, not sure if it has been stated before, but it seems the descriptions for conditions don't like commas. It doesn't include the comma or anything after it.
1593827040
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
It has been stated. Wrap the whole thing in double brackets: <<some text, and some more text>>
1593875223
Victor B.
Pro
Sheet Author
API Scripter
@Wolfspirit, I'm going beyond what Robin did in concentration.  I'm intercepting new spells, determining if those spells are in CM yet or in an ignore list and add them to CM once someone casts a spell.  In order for me to support shaped, I'll need more info because it goes beyond concentration.  Concentration might not even be used, but someone may still want to auto-add new spells.   So for me to support shaped, you'll need to log the incoming spell and give me more information on what is a spell vs a ranged/melee/skill roll.   For OGL, it looks like this         if (state[combatState].config.status.autoAddSpells) {             if (msg_orig && msg_orig.rolltemplate && msg_orig.rolltemplate === 'spell') {                 handleSpellCast(msg_orig)             }         }
Anthony said: The Devilish DM said: Anthony said: Not sure if it's me or not but I'm using CombatMaster is a couple of games (migrating from Tracker to Master) and neither the Marker or the Next Marker are appearing around the tokens. I'm using the default graphics (the orange and green swirl) that comes with CM. They show in the Config and in the turn order tracker thingy but not around the tokens. I don't see any errors anywhere either. They show up on whatever map the player ribbon is set to. Is the player ribbon on the correct map? (literally everyone has made this mistake) Well damn. Never would have thought of that as I tend to test on a separate map. Good to know! If you only knew how many times I've done just that. :D
1593939907
Sr. K
Pro
Sheet Author
The Devilish DM said: Anthony said: Not sure if it's me or not but I'm using CombatMaster is a couple of games (migrating from Tracker to Master) and neither the Marker or the Next Marker are appearing around the tokens. I'm using the default graphics (the orange and green swirl) that comes with CM. They show in the Config and in the turn order tracker thingy but not around the tokens. I don't see any errors anywhere either. They show up on whatever map the player ribbon is set to. Is the player ribbon on the correct map? (literally everyone has made this mistake)
1593962095

Edited 1593962412
Victor B. said: @Wolfspirit, I'm going beyond what Robin did in concentration.  I'm intercepting new spells, determining if those spells are in CM yet or in an ignore list and add them to CM once someone casts a spell.  In order for me to support shaped, I'll need more info because it goes beyond concentration.  Concentration might not even be used, but someone may still want to auto-add new spells.   So for me to support shaped, you'll need to log the incoming spell and give me more information on what is a spell vs a ranged/melee/skill roll.   For OGL, it looks like this         if (state[combatState].config.status.autoAddSpells) {             if (msg_orig && msg_orig.rolltemplate && msg_orig.rolltemplate === 'spell') {                 handleSpellCast(msg_orig)             }         } I'm still getting my wings on newer versions of Javascript, my last was in it's early stages when the Netscape Navigator browser was still a thing, and it and Internet Explorer were all you coded for.  So, sadly, I'm badly out of date with unravelling that code in my head.  I hope it's ok, but I'm going to give you a few spells' code and see if you can understand what you need, as I am lost in how to give direction here.  One thing about Shaped is that it's much simpler - it doesn't have an individual template for everything - there is only one: &{template:5e-shaped} . So - everyone's favorite, but it's an instant duration spell; just for reference, FIREBALL . @{Graol Edun|output_option} &{template:5e-shaped} {{character_name=@{Graol Edun|character_name}}} @{Graol Edun|show_character_name} {{title=Fireball}} {{spell=1}} {{spell_first_line=1}} @{Graol Edun|attacher_spell} @{Graol Edun|attacher_spell_level_3} {{spell_level=^{3RD_LEVEL}}} {{school=^{EVOCATION}}} {{casting_time=^{1_ACTION}}} {{range=150 feet}} {{components=^{COMPONENTS_V_S_M}}} {{materials=A tiny ball of bat guano and sulfur}} {{duration=^{INSTANTANEOUS}}} @{Graol Edun|hide_gm_info} {{@{Graol Edun|shaped_d20}=1}} {{content=A bright streak flashes from your pointing finger to a point you choose within range and then blossoms with a low roar into an explosion of flame. Each creature in a 20-foot-radius sphere centered on that point must make a Dexterity saving throw. A target takes 8d6 fire damage on a failed save, or half as much damage on a successful one. The fire spreads around corners. It ignites flammable objects in the area that aren’t being worn or carried.}} {{saving_throw_vs_ability=DEXTERITY}} {{saving_throw_dc=19}} {{has_saving_throw_damage=1}} {{saving_throw_damage=[[8d6[damage] + ([[(@{Graol Edun|higher_level_query_3} - 3) * 1]])d6[higher level]]]}} {{saving_throw_damage_type=fire}} {{has_saving_throw_damage=1}} {{saving_throw_damage_macro=[Saving throw failure:](~-MBUSrGd8_eKPZHKcH5V|repeating_spell3_-MBUT6unTNLG5uNZtN1U_saving_throw_damage)}} {{higher_level=At Higher Levels. When you cast this spell using a spell slot of 4th level or higher, the damage increases by 1d6 for each slot level above 3rd.}} {{cast_as_level=@{Graol Edun|higher_level_query_3}}} Here's one with concentration, WEB : @{Graol Edun|output_option} &{template:5e-shaped} {{character_name=@{Graol Edun|character_name}}} @{Graol Edun|show_character_name} {{title=Web}} {{spell=1}} {{spell_first_line=1}} @{Graol Edun|attacher_spell} @{Graol Edun|attacher_spell_level_2} {{spell_level=^{2ND_LEVEL}}} {{school=^{CONJURATION}}} {{casting_time=^{1_ACTION}}} {{range=60 feet}} {{components=^{COMPONENTS_V_S_M}}} {{materials=A bit of spiderweb}} {{duration=^{CONCENTRATION_UP_TO_1_HOUR}}} @{Graol Edun|hide_gm_info} {{@{Graol Edun|shaped_d20}=1}} {{content=You conjure a mass of thick, sticky webbing at a point of your choice within range. The webs fill a 20-foot cube from that point for the duration. The webs are difficult terrain and lightly obscure their area. If the webs aren’t anchored between two solid masses (such as walls or trees) or layered across a floor, wall, or ceiling, the conjured web collapses on itself, and the spell ends at the start of your next turn. Webs layered over a flat surface have a depth of 5 feet. Each creature that starts its turn in the webs or that enters them during its turn must make a Dexterity saving throw. On a failed save, the creature is restrained as long as it remains in the webs or until it breaks free. A creature restrained by the webs can use its action to make a Strength check against your spell save DC. If it succeeds, it is no longer restrained. The webs are flammable. Any 5-foot cube of webs exposed to fire burns away in 1 round, dealing 2d4 fire damage to any creature that starts its turn in the fire.}} {{cast_as_level=@{Graol Edun|cast_as_level_2}}} And for References/ Comparisons, here is a Melee Attack using a QUARTERSTAFF : @{Graol Edun|output_option} &{template:5e-shaped} {{character_name=@{Graol Edun|character_name}}} @{Graol Edun|show_character_name} {{title=Quarterstaff (Versatile)}} {{offense=1}} @{Graol Edun|attacher_offense} @{Graol Edun|hide_gm_info} {{@{Graol Edun|shaped_d20}=1}} {{attack_type_macro=[Melee Weapon Attack:](~-MBUSrGd8_eKPZHKcH5V|repeating_offense_-MBUTbjnJVu8PMf49rij_attack)}} {{has_attack_damage=1}} {{attack_damage_crit=[[1d8]]}} {{attack_damage=[[1d8[damage] + 1[str]]]}} {{attack_damage_type=bludgeoning}} {{has_attack_damage=1}} {{attack_damage_macro=[Hit:](~-MBUSrGd8_eKPZHKcH5V|repeating_offense_-MBUTbjnJVu8PMf49rij_attack_damage)}} {{attack_damage_crit_macro=[Crit:](~-MBUSrGd8_eKPZHKcH5V|repeating_offense_-MBUTbjnJVu8PMf49rij_attack_damage_crit)}} {{attack1=[[@{Graol Edun|shaped_d20}@{Graol Edun|d20_mod}cs>20 + 6[proficient] + 1[str]]]}} {{attack2=[[@{Graol Edun|shaped_d20}@{Graol Edun|d20_mod}cs>20 + 6[proficient] + 1[str]]]}} {{targetAC=@{target|AC}}} {{reach=5 ft.}} A ranged attack with a DART (THROWN) : @{Graol Edun|output_option} &{template:5e-shaped} {{character_name=@{Graol Edun|character_name}}} @{Graol Edun|show_character_name} {{title=Dart (Thrown)}} {{offense=1}}  @{Graol Edun|attacher_offense} @{Graol Edun|hide_gm_info} {{@{Graol Edun|shaped_d20}=1}} {{attack_type_macro=[Ranged Weapon Attack:](~-MBUSrGd8_eKPZHKcH5V|repeating_offense_-MBUUsV-QdzZgxoMtcBx_attack)}} {{has_attack_damage=1}} {{attack_damage_crit=[[1d4]]}} {{attack_damage=[[1d4[damage] + 1[fin]]]}} {{attack_damage_type=piercing}} {{has_attack_damage=1}} {{attack_damage_macro=[Hit:](~-MBUSrGd8_eKPZHKcH5V|repeating_offense_-MBUUsV-QdzZgxoMtcBx_attack_damage)}} {{attack_damage_crit_macro=[Crit:](~-MBUSrGd8_eKPZHKcH5V|repeating_offense_-MBUUsV-QdzZgxoMtcBx_attack_damage_crit)}} {{attack1=[[@{Graol Edun|shaped_d20}@{Graol Edun|d20_mod}cs>20 + 6[proficient] + 1[fin]]]}} {{attack2=[[@{Graol Edun|shaped_d20}@{Graol Edun|d20_mod}cs>20 + 6[proficient] + 1[fin]]]}} {{targetAC=@{target|AC}}} {{range=20/60 ft.}} {{ammo=[[@{Graol Edun|repeating_ammo_-mbuusei8ozeg15bebre_uses}-1]]}} {{ammo_name=Darts}} A skill (PERSUASION) check: @{Graol Edun|output_option} &{template:5e-shaped} {{ability=1}} {{character_name=@{Graol Edun|character_name}}} @{Graol Edun|show_character_name} {{title=Persuasion (^{CHA})}} {{@{Graol Edun|repeating_skill_-mbussnk3fh1onog97m2_skill_d20}=1}} {{roll1=[[@{Graol Edun|repeating_skill_-mbussnk3fh1onog97m2_skill_d20_wrap} + 6[proficient] + 5[cha]]]}} {{roll2=[[@{Graol Edun|repeating_skill_-mbussnk3fh1onog97m2_skill_d20_wrap} + 6[proficient] + 5[cha]]]}} @{Graol Edun|hide_gm_info} @{Graol Edun|attacher_skill} A saving throw ( CONSTITUTION ): @{Graol Edun|output_option} &{template:5e-shaped} {{saving_throw=1}} {{character_name=@{Graol Edun|character_name}}} @{Graol Edun|show_character_name} {{title=^{CONSTITUTION_SAVING_THROW}}} {{@{Graol Edun|shaped_d20}=1}} @{Graol Edun|constitution_saving_throw_formula} @{Graol Edun|hide_gm_info} @{Graol Edun|attacher_constitution_saving_throw} For Concentration check bonuses, you want this attribute also: constitution_check_mod_with_sign, which differs from OGL's standard attribute of - i believe - constitution_save_bonus . As I look through, the main if's you want are against the template (5e-shaped) and a line inside of it {{spell=1}}, which differs from {{offense=1}}, {{ability=1}}, and {{saving_throw=1}}, among other things.
For me...I`ve tried updating, but when I use !cmaster --main I still get 1.8 alpha.  I tried removing the script, reinstalling the script, etc.  Am I missing something?  I`m content to keep using 1.8 because it works fine for my needs, but it would be cool to see the new features.  This is all using the One click.  Out of curiosity, how does one install from the Github?
Shane B.: Go to the Github page, click on CombatMaster.js, click the "Raw" button. Select everything there and copy it. Go to your API Scripts page of your game, click "New Script" and paste everything you copied into the body section. Name the script anything you want (suggest CombatMaster) and save. 
Sr. K said: The Devilish DM said: They show up on whatever map the player ribbon is set to. Is the player ribbon on the correct map? (literally everyone has made this mistake) Omg. This is the most niche meme ever.
How do you pause the turn timer? I see it in the script, but don't know how to use it :(
1593996957

Edited 1593997055
Victor B.
Pro
Sheet Author
API Scripter
I'm fixing the timer pause in this next release.  It hasn't been working for a bit now
1594001592

Edited 1594001681
Victor B.
Pro
Sheet Author
API Scripter
@Shane, just go to here&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> , open CombatMaster.js, click RAW, then copy.&nbsp; In your game, add a new script, call it what you want and paste.&nbsp; Disable the one click.&nbsp; Once CM 2.15 is done and tested a bit by folks here, I'll update Roll20 and one-click issues will get sorted out.&nbsp;&nbsp;
@Vic - just checking in that you saw my posted reply above.&nbsp; I wish I could help more ... hopefully that's enough?
1594056113
Victor B.
Pro
Sheet Author
API Scripter
{{spell=1}} is the key to look for
Is there a way to include a combat master command in with an attack? To be more specific, I'm adding an "attack" (or macro for one) for my barbarian that will keep track of his rages using the ammo tracking from the OGL companion. What I would like to do is include within the macro the command !cmaster --add,condition=rage,duration=10,direction=-1. This is the current macro for the rage action: @{Knave Faulty|wtype}&amp;{template:dmg} {{rname=RAGE!!}} 0 {{range=}} {{damage=1}} {{dmg1flag=1}} {{dmg1=Knave Enters}} {{dmg1type=}} 0 {{dmg2=[[0]]}} {{dmg2type=}} 0 {{desc=}}&nbsp; {{spelllevel=}} {{innate=}} {{globaldamage=[[0]]}} {{globaldamagetype=@{Knave Faulty|global_damage_mod_type}}} ammo=Rage|-MAPhe1e2fy0C-IyofUk @{Knave Faulty|charname_output} That works perfectly for keeping track of the rages and displaying fun text saying they enter a rage but I can't figure out how to also add the aforementioned !cmaster command. Help please!
1594130345

Edited 1594130731
Thomas H. said: Is there a way to include a combat master command in with an attack? To be more specific, I'm adding an "attack" (or macro for one) for my barbarian that will keep track of his rages using the ammo tracking from the OGL companion. What I would like to do is include within the macro the command !cmaster --add,condition=rage,duration=10,direction=-1. This is the current macro for the rage action: @{Knave Faulty|wtype}&amp;{template:dmg} {{rname=RAGE!!}} 0 {{range=}} {{damage=1}} {{dmg1flag=1}} {{dmg1=Knave Enters}} {{dmg1type=}} 0 {{dmg2=[[0]]}} {{dmg2type=}} 0 {{desc=}}&nbsp; {{spelllevel=}} {{innate=}} {{globaldamage=[[0]]}} {{globaldamagetype=@{Knave Faulty|global_damage_mod_type}}} ammo=Rage|-MAPhe1e2fy0C-IyofUk @{Knave Faulty|charname_output} That works perfectly for keeping track of the rages and displaying fun text saying they enter a rage but I can't figure out how to also add the aforementioned !cmaster command. Help please! I've seen Jakob do it with CSA (as in-macro/ in-chat load), but on average, most commands are simply in a macro on a new line and will execute with chat output from inside the macro.&nbsp; To do what you want is actually simple - you can make the macro on his ability tab: @{Knave Faulty|wtype}&amp;{template:dmg} {{rname=RAGE!!}} 0 {{range=}} {{damage=1}} {{dmg1flag=1}} {{dmg1=Knave Enters}} {{dmg1type=}} 0 {{dmg2=[[0]]}} {{dmg2type=}} 0 {{desc=}}&nbsp; {{spelllevel=}} {{innate=}} {{globaldamage=[[0]]}} {{globaldamagetype=@{Knave Faulty|global_damage_mod_type}}} ammo=Rage|-MAPhe1e2fy0C-IyofUk @{Knave Faulty|charname_output} !cmaster --add,condition=rage,duration=10,direction=-1 I know it never seems that easy, but it actually is!&nbsp; Just make sure you break a new line in between your chat output and API commands.&nbsp; You can do this for many different APIs, though some get fussy if you try to do too much at once.&nbsp; One thing I have noticed is they execute simultaneously, rather than in sequence.&nbsp; So you get all your chat output happening at the same time as your API command runs.&nbsp; CSA and TokenMod are the only API's that I know of that allow you a post process report that can tell you what changed, from and to what, max values, etc. I like to spice up my rage, so I give them 2 token buttons "Rage-On" and "Rage-Off".&nbsp; Realize I use the Shaped Sheet, but I think this works ok with some modifications on the OGL Sheet as well.&nbsp; So far I haven't updated this macro with the Rage condition yet, so I italicized how in the macros below:&nbsp; Nice thing about the Shaped Sheet - your traits and counts aren't separate, any trait can have a count (max and current, recharge short/ long rest, etc.), so making it 'click'/ send to chat deducts a use automatically while describing the class trait of how rage works, which is what you see in %{Logan|repeating_classfeature_-m1jbl7lf6wnnxqta4ch_action} .&nbsp; It will also show the token tinted red when raged, and turn on the rage damage modifier for melee attacks, as well as show his resistances.&nbsp; All those return to normal when the rage ends.&nbsp; The Shaped Sheet is well worth a look for anyone if they get the opportunity to use it.&nbsp; I don't recommend switching to it however - best to load at the start of a campaign than try to convert in the middle.&nbsp; If you do, switch the sheet in a COPY of your game, not the original. My Rage Macros ( With Modifications ) 80.Rage-On (Show as Token Action; checked) !token-mod --set tint_color|FC0400 --ids @{selected|token_id} !setattr --silent --name Logan --repeating_modifier_-M1PFHin8ng9NBEdkBKI_active|1 --damage_resistances|Rage: bludgeoning, piercing, slashing. Bear Totem: All Except Psychic. /w gm **Logan Rages!** %{Logan|repeating_classfeature_-m1jbl7lf6wnnxqta4ch_action} /em gets a wild look in his eyes and becomes a maelstrom of wanton destruction; flying into a rage of fury! !cmaster --add,condition=rage,duration=10,direction=-1 81.Rage-Off (Show as Token Action; checked) !token-mod --set tint_color|transparent --ids @{selected|token_id} !setattr --silent --name Logan --repeating_modifier_-M1PFHin8ng9NBEdkBKI_active|0 --damage_resistances| /w gm **Logan's Rage Ends** !me "Rage Ended" /em 's Rage has ended. !cmaster --remove,condition=rage For the !me API; reference here: <a href="https://app.roll20.net/forum/post/6608347/slug%7D" rel="nofollow">https://app.roll20.net/forum/post/6608347/slug%7D</a> Chat Set Attribute (CSA) and Tokenmod can be found in One-Click's Drop Down Menu
Getting the following error when trying to resume Held combat:
1594181449

Edited 1594181743
Victor B.
Pro
Sheet Author
API Scripter
I'll check it out
I've seen Jakob do it with CSA (as in-macro/ in-chat load), but on average, most commands are simply in a macro on a new line and will execute with chat output from inside the macro.&nbsp; To do what you want is actually simple - you can make the macro on his ability tab: @{Knave Faulty|wtype}&amp;{template:dmg} {{rname=RAGE!!}} 0 {{range=}} {{damage=1}} {{dmg1flag=1}} {{dmg1=Knave Enters}} {{dmg1type=}} 0 {{dmg2=[[0]]}} {{dmg2type=}} 0 {{desc=}}&nbsp; {{spelllevel=}} {{innate=}} {{globaldamage=[[0]]}} {{globaldamagetype=@{Knave Faulty|global_damage_mod_type}}} ammo=Rage|-MAPhe1e2fy0C-IyofUk @{Knave Faulty|charname_output} !cmaster --add,condition=rage,duration=10,direction=-1 I know it never seems that easy, but it actually is!&nbsp; Just make sure you break a new line in between your chat output and API commands.&nbsp; You can do this for many different APIs, though some get fussy if you try to do too much at once.&nbsp; One thing I have noticed is they execute simultaneously, rather than in sequence.&nbsp; So you get all your chat output happening at the same time as your API command runs.&nbsp; CSA and TokenMod are the only API's that I know of that allow you a post process report that can tell you what changed, from and to what, max values, etc. For some reason it didn't work when I added it to the end of the macro but it does work when I add it to the beginning. Thanks!
Hey Victor,&nbsp; Any idea on this error? I was running combat with a -lot- of tokens (7 PC tokens and like 15 enemies), and after every 4-5 turns maybe, the API would stop and give an error something like this: For reference, the error message generated was:&nbsp; TypeError: Cannot read property 'get' of undefined TypeError: Cannot read property 'get' of undefined at announcePlayer (apiscript.js:1969:41) at doTurnorderChange (apiscript.js:1677:13) at nextTurn (apiscript.js:1797:9) at nextRound (apiscript.js:1834:13) at doTurnorderChange (apiscript.js:1664:17) at handleTurnorderChange (apiscript.js:1715:13) at eval (eval at &lt;anonymous&gt; (/home/node/d20-api-server/api.js:154:1), &lt;anonymous&gt;:65:16) at Object.publish (eval at &lt;anonymous&gt; (/home/node/d20-api-server/api.js:154:1), &lt;anonymous&gt;:70:8) at TrackedObj.set (/home/node/d20-api-server/api.js:1034:14) at updateLocalCache (/home/node/d20-api-server/api.js:1332:18) I could still click ahead and do all the basic functions of Roll20, but the API would stop running. I didn't save every error, but I could restart the API sandbox and it would work again for a little while. It happened on different tokens as far as I can recall. Any ideas on if I'm missing a variable or something that's causing this? This combat was the biggest number of tokens I've tried with CombatMaster thus far. Thanks.
1594311968
Victor B.
Pro
Sheet Author
API Scripter
No, I've run with 30-40 tokens on map without issue.&nbsp; There's something going on.&nbsp; PM me with an invite to your game and promote me to GM once I'm in and I can take a look.&nbsp;&nbsp;
1594312556
Victor B.
Pro
Sheet Author
API Scripter
Version 2.15 can be found here.&nbsp;&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> New functionality - Auto add spells (Shaped and OGL only).&nbsp; Detects if a spell has been cast, allows GM to add spell to CM with description and concentration already set or add spell to an ignore list - Concentration.&nbsp; Assigns the concentration condition to the casting player.&nbsp; Concentration is removed when the cast spell is removed.&nbsp; I'm not going to auto roll if caster takes damage.&nbsp; There's too much logic required and it only removes a single roll - Condition menu was becoming too vertical so I moved Add API and Remove API to their own pages To do - Ability to view conditions by spell/condition/favorite all - Pathfinder/3.5 support - Help file update
1594324835

Edited 1594336666
Victor B. said: Version 2.15 can be found here.&nbsp;&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> New functionality &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Omg I'm crying I can't wait to test this. Okay I hit some snags, I sent you a message Vic.
I just tried out the new update, when I go into Statue Setup and change the sheet from OGL to Shaped I get this error.
Thanks Vic as always for working on CombatMaster by far the best API on Roll20.&nbsp; I had a similar issue as above but I had it when I clicked the I on this dialogue: &nbsp; &nbsp; Error below:&nbsp;
1594394802
Victor B.
Pro
Sheet Author
API Scripter
I'll fix those.&nbsp; I'm working with Devilish right now.&nbsp; Conflict of some type between CM and other APIs that I'm going to have to account for.&nbsp;&nbsp;
Thanks Vic! Not sure if it helps but I only use Combat Master (manual install from GitHub) and&nbsp;Aura/Tint HealthColors 1.6.0 (One click install).&nbsp;&nbsp; Cheers,
1594487238
Victor B.
Pro
Sheet Author
API Scripter
v2.16 found here&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> Fixed, issue related to Shaped Sheet
1594491249

Edited 1594492716
Victor B.
Pro
Sheet Author
API Scripter
v2.17 found here&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> Fixed - A bug where the wrong token object from another page was being brought in when assigning concentration.&nbsp;&nbsp; To Do - Ability to view conditions by spell/condition/favorite all - Pathfinder/3.5 support - Help file update - Either add the auto roll for damage during concentration OR add a message to chat reminding GM to roll
Victor B. said: v2.17 found here&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> Fixed - A bug where the wrong token object from another page was being brought in when assigning concentration.&nbsp;&nbsp; To Do - Ability to view conditions by spell/condition/favorite all - Pathfinder/3.5 support - Help file update - Either add the auto roll for damage during concentration OR add a message to chat reminding GM to roll Favor a button in the concentrating character's notice of concentration that rolls for it manually.&nbsp; Output public if PC controlled.&nbsp; Output GM if GM controlled/ not designated control.&nbsp; Reminder to GM when damage taken by any token (PC or GM), but remember, this isn't the only time a concentration roll may be needed (crashing waves on a ship may cause concentration checks also, for example), so having a button ready to fire may be ideal for any circumstance.
1594499703
Victor B.
Pro
Sheet Author
API Scripter
A button?&nbsp; Where?&nbsp; And what exactly would it do?&nbsp;&nbsp;
Earlier - someone mentioned they put a chat button in the description area.&nbsp; So essentially that, coded in the API script where concentration is concerned, autosetup to roll a concentration check when clicked.&nbsp; I'll see if I can travel through the pages to give the example.&nbsp; brb.
1594499999

Edited 1594500036
@ Vic - Devilish DM - <a href="https://app.roll20.net/forum/post/8126152/combatmaster-alpha/?pageforid=8528658#post-8528658" rel="nofollow">https://app.roll20.net/forum/post/8126152/combatmaster-alpha/?pageforid=8528658#post-8528658</a>
1594500549
Victor B.
Pro
Sheet Author
API Scripter
Ahhh, hmm, I can do that.&nbsp;&nbsp;
Wolf Thunderspirit said: @ Vic - Devilish DM - <a href="https://app.roll20.net/forum/post/8126152/combatmaster-alpha/?pageforid=8528658#post-8528658" rel="nofollow">https://app.roll20.net/forum/post/8126152/combatmaster-alpha/?pageforid=8528658#post-8528658</a> Oh, ya an api command button in the concentration message.&nbsp; I'd be fine with just a basic text reminder to make the roll. Concentration is the thing I always forget about when people are taking damage.
Persephone said: Getting the following error when trying to resume Held combat: @Victor, figured out the cause: If a token has marker on it from a condition with the targeted function, and then combat is Held, trying to resume the combat causes this crash. Had to reset the combat unfortunately.
Hi was setting up a game and testing functionality of my selected api's but with combat master when i end combat this error occurs Your scripts are currently disabled due to an error that was detected. Please make appropriate changes to your scripts and click the "Save Script" button and we'll attempt to start running them again.&nbsp; More info... For reference, the error message generated was:&nbsp; TypeError: Cannot read property 'get' of undefined TypeError: Cannot read property 'get' of undefined at removeConditionFromToken (apiscript.js:20721:38) at apiscript.js:20877:21 at Array.forEach (&lt;anonymous&gt;) at stopCombat (apiscript.js:20875:43) at commandHandler (apiscript.js:19876:17) at apiscript.js:19733:21 at Function.each (/home/node/d20-api-server/node_modules/underscore/underscore.js:188:9) at inputHandler (apiscript.js:19728:19) at eval (eval at &lt;anonymous&gt; (/home/node/d20-api-server/api.js:154:1), &lt;anonymous&gt;:65:16) at Object.publish (eval at &lt;anonymous&gt; (/home/node/d20-api-server/api.js:154:1), &lt;anonymous&gt;:70:8) Not sure how to resolve i'm using combat master from api library.
1594944563
Victor B.
Pro
Sheet Author
API Scripter
Crimson, go here and pull down the script.&nbsp; Click the raw button first.&nbsp;&nbsp;
1594945315
Victor B.
Pro
Sheet Author
API Scripter
v2.19 can be found here&nbsp; <a href="https://github.com/vicberg/CombatMaster" rel="nofollow">https://github.com/vicberg/CombatMaster</a> Fixed - Numerous issues with concentration - Add/Ignore spell fixed - If a spell exists in CM and is cast, a window comes up asking for targets and concentration is assigned to caster - If a spell is cast from CM onto target tokens, a window comes up asking for caster token and concentration is assigned to caster - A message comes up if caster takes damage and caster is concentrating To do - Possibly adding a con save roll for concentration - Fixing the held combat issues surrounding target tokens
1594946915
Victor B.
Pro
Sheet Author
API Scripter
For Shaped, I'm going to need to work with someone to make sure we are picking up the right things from the sheet.&nbsp; OGL proved to be a challenge to identify spell vs melee.&nbsp; I'm expecting the same with Shaped
Victor B. said: For Shaped, I'm going to need to work with someone to make sure we are picking up the right things from the sheet.&nbsp; OGL proved to be a challenge to identify spell vs melee.&nbsp; I'm expecting the same with Shaped I will work with you, time permitting.&nbsp; DM'g you my discord ID.&nbsp; Will make a completely new game to experiment in.
Tried searching but don't know if this has been addressed.&nbsp; I have animated pixel gifs for my player's characters, and in the combat tracker in chat they show up as a broken image. Is there a way they can pull from a normal static .png so it doesn't show up like that? It's sort of a QoL thing for me.
1595044952
Victor B.
Pro
Sheet Author
API Scripter
Hmmm, first time I've heard of that issue.&nbsp; I'll have to reach out to TheAaron for that.&nbsp;&nbsp;
Wolf Thunderspirit said: Victor B. said: For Shaped, I'm going to need to work with someone to make sure we are picking up the right things from the sheet.&nbsp; OGL proved to be a challenge to identify spell vs melee.&nbsp; I'm expecting the same with Shaped I will work with you, time permitting.&nbsp; DM'g you my discord ID.&nbsp; Will make a completely new game to experiment in. Game is set up with the most basic elements for you - invite sent to your direct message @Victor ... will GM you when you get there.&nbsp; There is a level 1 cleric set up for you called "Example".&nbsp; I didn't set up CM too far as far as conditions go - tried to set up concentration but its a bit beyond my headspace right now and I have a game tonight, so can't dedicate much effort immediately.&nbsp; I did set it up with Group Init, and am trying to get the advantage/ disadvantage Shaped API call correct, but it's not happening.&nbsp; Keeps looking for a selected token for the call (!shaped-at{{ --disadvantage}}), and you cannot pass to it a ID as some other APIs let you do.&nbsp; CSA, Token Mod, Welcome Package are also on the API list.