View Single Post
Senior Member
Volunteer Data File Contributor
Join Date: Nov 2009
Posts: 1,444

Old December 31st, 2019, 04:08 PM
I'd think about what your game system needs to do with these specialties - list out every way that a character could get a speciality, and then from that list, figure out what's the best way to set up how the specialties will be defined.
Ah. Well, there are basically four ways.
  1. One way is to gain them by by your Background, Command Package, or Sophont Type, all of which fall under background info that are chosen when first creating the character, and are basically treated as the same, a Thing with bootstrapped adjustments.
    • One method gives a fixed value. That's working right now.
    • Slightly lower priority, since it's only come up in user datasets, is allowing the player to choose from a list that are constrained by Skill or SkillType tags on that bootstrap.
  2. By selecting them off of a list associated with a skill (currently done by clicking on a button by the skill name in the relevant tab). This works.
  3. Through an Advancement (basically, gaining a level). This works, although I see now that I need to tweak the list for Specialities the character already has (since they're unique)
  4. Through in-game adjustments (there are cards that add or remove Specialties). I haven't gotten that working yet.

Only Number 2 costs character build points, which so far I have working. Honestly, if I can get Number 4, in-game adjustments, working, I'll be satisfied for it being close enough.

I'm still figuring out how to code things properly here, but I feel like Backgrounds, Advancements, and Adjustments should carry their individual Specialties so that they can be removed if the corresponding item is (although honestly, it doesn't seem like that would happen all that often). Currently, the method of choosing them corresponding to skill (Number 2 above) adds the specialty to the skill and then I think then then get Forwarded to the Hero. I know that deleting the corresponding Advancement removes the Specialty again. Removing a Background removes the fixed value Specialties (the ones bootstrapped to it), but not the ones I have being chosen right now.

And honestly, I have no idea how to properly handle removing Specialties. Based on the Savage Worlds coding, it looks like the best method allows some value to be edited as to the number of Specialties allowable, and then simply allow them to be editable outside of creation. So they'd add an Adjustment to reduce the number of skills (raising a validation error) and would then go in and remove those specialties. Which... hmmm... could interact oddly with items bootstrapped from the background or from Advancement.

The problem with needtag, if you're not using gizmos is - what if you have more than one thing that provides a selection of specialties, but each one allows a choice from different lists? If all the tables are on the hero container, then all the tags are in the same place.
So far, when I've had choices, I've had the Background Thing (which could be a Background, Command Package, or Sophont Type), which has bootstrapped items to provide things like skill bonuses, so each of those are the ones that have the tags that need to be compared against. So I should be able to test each one separately for which values are valid, although that might bump up against what Specialties the player already has through other Backgrounds or if they buy them up on the skill screen before changing their Background.

Incidentally, thank you for responding today. I know some people are off work for New Years Eve.
Duggan is offline   #5 Reply With Quote