Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - Savage Worlds

Notices

Reply
 
Thread Tools Display Modes
jfrazierjr
Senior Member
 
Join Date: Aug 2013
Posts: 122

Old April 24th, 2017, 12:16 PM
Quote:
Originally Posted by zarlor View Post
CC could answer better how that works behind the scenes, but my understanding is that if the system sees the original UniqueID being loaded up into memory on anything is simply replaces it with the new UniqueID on the fly. It know how to do that because it loads and compares ALL of your .user files on startup and checks them for errors and such, as far as I can tell, so presumably it just loads up all Replace ID's at that time.

I agree that I wouldn't have expect that to be the behavior that it was a global change even if I have a sourceID listed on that thing, but that's just they way they did it, I guess. It catches everybody at first, though (it certainly caught me!)
Ok.. so the way I understand you, the order of operations is:
  1. Load all .users files, perform all replace one at a time(what if multiple files replace the same thing!?!?!?!? If this is the case, then the order of operations may be important.)
  2. Process Source information AFTER the character load/new screen kicks into the main program

So, by the time the sources are even presented to the end user, the replace has already been done. As I mentioned, if you don't then load that source AND someone has that pick selected, I assume that would then error out badly on an existing portfolio. To me, this seem like a bug.

Now, this really should not be any issue at all in a normal end user scenario in pretty much all cases, but for us since the community builds and trades data files much more frequently vs LW built sources, it could cause loads of issues<sigh>.
jfrazierjr is offline   #11 Reply With Quote
zarlor
Senior Member
 
Join Date: Nov 2010
Location: Metairie, LA, USA
Posts: 1,814

Old April 24th, 2017, 12:34 PM
I honestly couldn't tell you the order of those things or even if my assumptions above are really correct! I'm absolutely no guru or have any REAL insight into how HL works beyond makeing a bunch of data files do what I wanted them to do (well, mostly) without messing things up for anyone else. I can make some assumptions but those assumptions could be totally wrong here. Really someone from Lone Wolf or maybe a thorough reading of the Wiki (out of date as it is) could be more insightful than I could be on the subject.

Lenny Zimmermann
Metairie, LA, USA

Data files authored (please let me know if you see any issues with any of these if you have/use them):
Official (In the downloader)
50 Fathoms, Deadlands: Hell On Earth, Deadlands: Noir, East Texas University, Necessary Evil (requires Super Powers Companion), Pirates of the Spanish Main, Space 1889 (original file by Erich), Tour of Darkness, Weird War II, Weird Wars: Rome
Coming Eventually
Evernight (LWD has completed their review but I have some fixes to make first... although Pinnacle mentioned this might get an overhaul to SWADE so I may just wait for that first. If you just HAVE to have this now, though, just PM me)
zarlor is offline   #12 Reply With Quote
Paragon
Senior Member
 
Join Date: Feb 2010
Posts: 875

Old April 24th, 2017, 12:47 PM
In fact, since I did replace those weapons, that, I think putting the code in them is the the easiest way to go here. It means anyone adding a new axe to the .user file will need to copy the eval script off one of the extent ones to work right with the Edge, but so be it.

Thanks for everyone's responses.
Paragon is offline   #13 Reply With Quote
jfrazierjr
Senior Member
 
Join Date: Aug 2013
Posts: 122

Old April 24th, 2017, 12:56 PM
Quote:
Originally Posted by Paragon View Post
In fact, since I did replace those weapons, that, I think putting the code in them is the the easiest way to go here. It means anyone adding a new axe to the .user file will need to copy the eval script off one of the extent ones to work right with the Edge, but so be it.

Thanks for everyone's responses.
Question, why would you not use a new tag on your axes and your code to check for that tag? It seems end users who add a new type of axe would be much less intimidated by adding a tag vs messing with eval scripts. IMHO, adding new tags seems to be the more extensible solution. Granted, I am just wetting my feet with this stuff, so could be wrong on my assumptions.
jfrazierjr is offline   #14 Reply With Quote
Paragon
Senior Member
 
Join Date: Feb 2010
Posts: 875

Old April 24th, 2017, 01:03 PM
I probably could have, but I'm not as experienced with messing with tags (and manipulating them in eval scrips) as I am with eval scripts themselves, and in this case, all they really need to do is the eval script over and change one thing (the id of the weapon).
Paragon is offline   #15 Reply With Quote
Paragon
Senior Member
 
Join Date: Feb 2010
Posts: 875

Old April 24th, 2017, 01:05 PM
Just for reference as to how I did this, in case anyone is interested:

Code:
<thing id="wpBEAxe" name="Axe" description="Rarity C" compset="Melee" summary="Rarity C">
    <fieldval field="grCost" value="200"/>
    <fieldval field="gearWeight" value="2"/>
    <usesource source="BrEarth"/>
    <tag group="WeaponType" tag="MedAxes"/>
    <tag group="WeaponDie" tag="3" name="d6" abbrev="d6"/>
    <eval phase="PreTraits" priority="5000" index="2"><![CDATA[if (hero.tagis[Edge.edgAxeFig] <> 0) then
perform hero.child[wpBEAxe].setfocus 
focus.field[wpParry].value += 1
endif]]></eval>
    </thing>
Paragon is offline   #16 Reply With Quote
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 24th, 2017, 08:00 PM
You could have it look at the names of weapons, too. So, if it has "axe" in the name it is valid. So, have it do an eachpick and then look at the name, maybe the shortname, and then if it has ?axe? (be sure to make what it finds be lower case so that you don't have to worry about it) and then if it is an axe, apply the benefit. Making all of those stupid eval scripts suck. Make one in a mechanic and be done with it. Duplicating crap -- and having to remember to add it elsewhere -- is a waste of time and memory.

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #17 Reply With Quote
Paragon
Senior Member
 
Join Date: Feb 2010
Posts: 875

Old April 24th, 2017, 09:20 PM
That's what I was thinking about, but I'm really not terribly clear on the syntax there (I've seen eachpicks but not ever done one of my own) and wasn't sure if it'd only apply it if the axe was equiped, nor what the timing should be. What I ended up doing at least I was pretty sure would work.
Paragon is offline   #18 Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 11:51 PM.


Powered by vBulletin® - Copyright ©2000 - 2021, vBulletin Solutions, Inc.
wolflair.com copyright ©1998-2016 Lone Wolf Development, Inc. View our Privacy Policy here.