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

Old December 9th, 2018, 05:21 PM
As per this topic, the Wiki is missing some information. Now I missed most of this my first time through, on account of that I was developing my own system instead of the Savage system, but I started another go-around and decided to document it.

Savage Worlds Walk-Through
First off, the link to the Savage Worlds game system no longer resolves. Fortunately, the mirror link works fine.

The First Steps
Nothing actually being done in this step, but they are important tips on how to set things up.

Develop Your Plan
Again, just informational, still important, although I don't think most people will understand the building blocks until they've implemented a system.

Initial Changes
Ah, finally changing code. This is all simple cutting and pasting. Nothing much to say here.

Traits
Getting into the meat of things. First off, the file you will be editing is "traits.str". I don't think that actually gets called out. Also, just cutting and pasting the code won't do you much good. You need to remove the Initialize code from Attributes, and the index number provided not only doesn't match what's in Attribute, but will clash with the index numbers of the existing eval scripts for Trait. I personally set it as index 1, and then renumbered the others accordingly. Adding trtDisplay is simple. "Calc trtDisplay" just requires you to again fix the eval index numbers. As has been noted by others, this does not, as it states, cause the Basic tab to display the correct value. In fact, since we aren't using trtDisplay anywhere, this change does nothing just yet, but by the end, of section, we'll have it displaying in most places, at least. The "Bonuses and Penalties" section has one minor pitfall for people who are just copying and pasting code. The text instructs you to create trtRoll and trtNoStack without giving code for it, although that should be fairly trivial, as with the following:
Code:
<field
  id="trtRoll"
  name="Roll Adjustment"
  type="derived">
  </field>

<field
  id="trtNoStack"
  name="Non-stacking Adjustment"
  type="derived">
  </field>
Then, adding the macros is simple (just note that it does have you back in definition.def), and you just have to replace the various incidents of trtFinal with trtDisplay. The list in the walkthrough does not mention out_custom.dat, but it's the same usage as with out_statblock, so it's harmless to change. Procedures.dat has six references, not four, with the first two in "dshrolls" and needing to be changed. The other instructions are correct. Although, in the end, tab_basic still does not show the correct values.

Last edited by Duggan; December 9th, 2018 at 07:52 PM.
Duggan is offline   #1 Reply With Quote