PDA

View Full Version : Another Edge question


CapedCrusader
May 6th, 2011, 04:50 PM
Since there's no way to modify the Rank requirements on Edges on the fly, and the Knight Hrafn Professional Edge in Hellfrost allows rank requirements for Leadership Edges to be ignored, I wanted to create a duplicate set of Leadership Edges for those that have the Knight Hrafn Edge. I wanted to set them up so they wouldn't show up unless you have the required edge, but I couldn't get it to work.
I set up a containerreq with hero#Edge.edgKnightH set for Initialization 2000, like the Arcane skills use.
They show up fine and are highlighted like they are valid choices, but when they are selected they still show up red in the Edge list with no discernible errors. If selected as an Advancement it won't let me take it with the message "A specific trait/ability must be selected via the chooser".
I've attached a file with just a .USER file with only the affected Edge contained it it. I have a full test .POR file with the example, but you'd need the entire Hellfrost.user file to open it. Any ideas?

rob
May 15th, 2011, 03:10 PM
I don't have enough context to be able to figure this one out with just the lone edge. At a minimum, I need the original edge that this one is a modified version of, but I'm not sure that will be enough. Since I can't compile this lone edge with the base SW data files, I'm not able to actually test anything and do any real investigations. :-(

I tried doing something similar with the Natural Leader edge from the core SW data files, and everything seemed to work smoothly for me. So the issue definitely appears to be somewhere within the additional logic you've added. Unfortunately, I don't have enough information to figure out the problem for you.

CapedCrusader
May 15th, 2011, 03:18 PM
Send me an email address in a PM and I'll forward you everything.

rob
May 15th, 2011, 03:27 PM
I don't use the PMs, since I never remember to check them. Please send everything to me at rob <at> wolflair <dot> com.

rob
June 1st, 2011, 01:39 PM
I was finally able to spend the couple hours needed to figure out what's going on here. I just sent you a couple of emails with analysis, explanations, and solutions. Please looks for those in your inbox.

rob
June 1st, 2011, 01:43 PM
I just realized that my second email could prove helpful to other users who run into situations trying to do something similar. So I have revised that email and posted it below towards that end.

There is an alternate way of implementing the solution for the Knight Hrafn. It has one drawback, but the net result will probably be significantly better for the user.

In the approach taken here, there is a second version of the various leadership edges that is only applicable when the Knight Hrafn edge is selected. However, the original version of the edge is still present and selectable. What if you could ensure that only one edge ever appeared to the user and it behaved properly at all times?

The trick is to use Hero Lab's replacement mechanism. Using this mechanism, you can define your own new version of an edge that completely replaces the built-in version of the edge. Assuming you're already familiar with the "New (Copy)" option for things, this approach simply takes it one step further.

You start by creating a copy of the edge and giving it a new unique id, just like you've already done in your files above. The next step is to enter the unique id of the built-in edge in the "Replaces Id" field. Once you do this, Hero Lab treats your new edge as completely replacing the original edge. The original edge disappears entirely and any references to it will automatically reference your new edge instant.

Once you've setup your replacement edge for "Hold the Line", the only thing you need to worry about changing is the pre-requisite test. Since the pre-requisite for rank is not applicable when the Knight Hrafn edge is selected, you can modify that one pre-requisite to be valid whenever the rank is sufficient OR the Knight Hrafn edge is present. Since this is tied to the pre-req, you safely rely on the auto-defined edge tag. The net result is clean and simple to implement, plus it behaves better for the end-user.

As I mentioned above, there is one drawback to this method. The issue is that a particular thing may only ever be replaced ONCE. This means that your Hellfrost data files will work great until someone uses a similar technique to modify the same edges for a different Savage Setting. If that happens, the two sets of data files for the different settings will NOT be able to be present at the same time. Fortunately, the likelihood of this is low and there is a simple work-around. The work-around is to have the user go to the Tools menu and create a duplicate of the Savage Worlds game system. Then the user can place one set of the conflicting data files into the folder for one instance of the game system and the other set of data files with the other instance.

Hope this helps....