PDA

View Full Version : Is there a simple way of changing a derived stat value of all players at once?



Dr0W
December 8th, 2015, 18:41
Say I want to create a slashhandler that changes the value of a certain derived stat of all connected players, similar to the /xp command but with derived stats. Can it be done in a simple way?

Moon Wizard
December 8th, 2015, 18:47
It would require someone familiar with how the Savage Worlds ruleset works (unfortunately not me). Assuming that derived stats can be adjusted directly in the UI, it should be pretty straightforward for someone who has built extensions before, especially ones that use slash handlers. Then, you just need to decide which PCs to apply the modifier to. (All logged in PCs, all PCs in party sheet, all PCs in campaign), then iterate through those PCs and adjust the field for each one.

Regards,
JPG

Dr0W
December 8th, 2015, 18:59
Yea, I'm hoping the guys might have a simple idea to do that. I'm planning to create a 4~6 derived stats that won't show on charsheet and a single slashcommand to update all of them at once. They're going to be used to add a fixed bonus or penalties to some spells.

Moon Wizard
December 8th, 2015, 19:01
You might think about adding a party sheet tab to keep track of these new derived stats. Managing numbers without a UI can be a pain during a live game.

JPG

Dr0W
December 8th, 2015, 19:13
Yea, I've been thinking about this. Either way they're gonna be a fixed amount so I could just use the slash command again (they *probably* won't get changed by other sources), and the players will always see the bonus/penalties directly attached to their spells.

I was thinking on creating another slashcommand to report them when a player asks "Hey, why am I getting this amount of bonus/penalties again?".

They're for Hellfrost, to add bonus to hrimwisardry while giving a penalty to fire spells and possibly being used to a new temperature roll I want to create that will be modified by another derived stat which includes the characters protection against cold.

I'm trying to create a slashhandler that I can simply type "/temperature 50" and I'll code it to update all the derived stats to their correct bonuses instead of having my players asking "Huh... Ok, so what's the temperature again? Now let me check the table and add the right bonus. Oh wait, but it's night so I get another -1". whenever they want to cast a spell.

This kind of automatization is what I love in Fantasy Grounds :P

Ikael
December 9th, 2015, 17:57
Yea, I've been thinking about this. Either way they're gonna be a fixed amount so I could just use the slash command again (they *probably* won't get changed by other sources), and the players will always see the bonus/penalties directly attached to their spells.

I was thinking on creating another slashcommand to report them when a player asks "Hey, why am I getting this amount of bonus/penalties again?".

They're for Hellfrost, to add bonus to hrimwisardry while giving a penalty to fire spells and possibly being used to a new temperature roll I want to create that will be modified by another derived stat which includes the characters protection against cold.

I'm trying to create a slashhandler that I can simply type "/temperature 50" and I'll code it to update all the derived stats to their correct bonuses instead of having my players asking "Huh... Ok, so what's the temperature again? Now let me check the table and add the right bonus. Oh wait, but it's night so I get another -1". whenever they want to cast a spell.

This kind of automatization is what I love in Fantasy Grounds :P

First of all few questions, how are you going to apply these derived stats into specific power trait rolls? Are these derived stats character specific, for instance is some edges/hindrances changing modifier on characters who has them? Or are they all static values for all?

Without knowing enough my initial thought was to apply to modifer on fly to rolls without setting them up beforehand. For instance if temperature and day/night cicle affect the bonus, instead of calculating derived stat values on slashcommand beforehand on each character, why not save temperature and day/night states into global database node (less work here) and whenever power trait roll is made the modifier is calculated on the fly from those values.

If you can open the math behind these modifiers and how they are going to be applied to powers I could evaluate more

Dr0W
December 9th, 2015, 21:22
I'm planning to apply these derived stat into the specific spells that are affected by it. So I'd manually add a bonus into every spell and write the name of the derivedstat so whenever it gets updated so does the spell.
So at first fire/heat spells and coldspells are affected. The fire/heat spells gets weaker the colder it is and I have to choose which of them to apply the bonus from the derived stat or not since wizards and clerics might have spells that have fire trappings or not. The cold spells is an arcane background by itself so ice wizards (hrimwisards) have all spells cold based, so I could apply the bonus directly to the spellcasting skill but I'd rather apply it individually to each spell so the player gets to see the penalties/bonuses applied to the spell before rolling. So the cold spells can have the penalty applied directly to the spellcasting skill but the fire ones no.

The temperature varies depending on the region the players are, the season and if it's day or night.

The problem to be solved is that whenever a player would cast a fire or cold spell they'd have to check a table, find the current temperature there, apply the correct bonus to the spell and then roll dice. Sure it can be done (that's how we'd do it live anyway) but it's something I think I can improve for my players.

And yes, the problem could be solved using a global variable or something like that. My toughts on creating these "hidden derived stats" were to emulate a global variable whith the ease that the spell bonuses get automatically updated when I update a derived stat. If this can be done actually using a global variable it would be probably better.

So to make clear what I'm trying to do: As de DM I type something like "/temperature 8". That means the current temperature is 8F. The fire table says fire spells get -2 penalties so everyplayer would get their "firebonus" derived stat changed to -2 so all spells with "firebonus" as a modifier get a -2 automatically. It also means that cold spells get +0 bonus. So the "coldbonus" derived stat changes to 0 and every player who can cast those spells get their bonus modified to 0. The day/night cycle makes the temperature drop 1 tier on the temperature table but let's not enter that matter, I could simply type "/temperature -10" when it's night.

I hope I could give a big picture of what I'm trying to do. The fire/cold spells aren't the only thing affected by the temperature. There are also vigor rolls to resist cold but these I'll create a custom roll handler that will roll Vigor + penaltyfromtemperature + insulationbonus that is another derived stat based on the characters protections from cold (racial, armor, etc). But once I solve the first this one will be solved too.

Thanks for the help!