Senior Member
Volunteer Data File Contributor
Join Date: Aug 2009
Posts: 1,550
|
OK, I think I can see two area of confusion in our communication:
There's a difference between the player interface and the editor. When I talk about limits on menus and such, I am talking about the player interface. Where it's set up so the player would make choices about the Race on the character record itself, affecting only that character. I think you are mostly referring to the editor interface, where the Race record itself is modified, affecting all uses of that Race. Am I right? If so, that's confusion #1. We are jumping back and forth between interfaces and they are different. I think confusion #2 lies in that Races are constructed differently in Savage Worlds, code-wise. In the other systems, Races have a number of set attributes. Most of the various drop-downs and field entries are attributes of the Race record. In Savage Worlds, everything is bootstrapped onto the Race record. That being said, let me look into adding some more user-friendly ways to add bootstraps to Race. I can see that Pathfinder has a few that deal directly with adding bootstraps. I might be able to add buttons to add Edges, Hindrances, Properties, and Abilities. _ Currently In Development: Savage Pathfinder, SWADE Fantasy Companion Future Development: SWADE Super Powers Companion, SWADE Sci-Fi Companion _ Currently Running: Savage Unity Inc. (homebrew multiverse theme) Setting Files Supported: Deadlands: Reloaded, Flash Gordon, Gaslight, Hellfrost, Interface Zero 2.0, Seven Worlds, Slipstream, Solomon Kane Future Setting Files: Savage Judge Dredd |
#151 |
Senior Member
Join Date: Feb 2010
Posts: 874
|
That would be a nice timesaver if nothing else.
|
#152 |
Senior Member
Join Date: Aug 2013
Posts: 123
|
Quote:
Quote:
For example, I opened 4e and then the editor. I then opened the Race tab in the editor and copy Dragonborn(since this is functionally the example I am trying to handle in many respects). This is in ddi_races.dat. Checking out the bootstraps, I find. the following(I cut the description to minimize space more): Code:
<thing id="rDragonbor" name="Dragonborn" description=" " compset="Race" uniqueness="unique"> <fieldval field="racFlavor" value="Proud, honorable warriors, born from the blood of an ancient dragon god."/> <fieldval field="racCha" value="2"/> <fieldval field="racHtMin" value="74"/> <fieldval field="racHtMax" value="80"/> <fieldval field="racWtMin" value="220"/> <fieldval field="racWtMax" value="320"/> <fieldval field="racSpeed" value="6"/> <tag group="User" tag="StdRace"/> <tag group="Size" tag="Medium"/> <tag group="SkillBonus" tag="skHistory"/> <tag group="SkillBonus" tag="skIntimida"/> <bootstrap thing="lanDraconi"></bootstrap> <bootstrap thing="fRPlusAb"> <autotag group="RaceBonus" tag="attrCon"/> <autotag group="RaceBonus" tag="attrStr"/> </bootstrap> <bootstrap thing="lanCommon"></bootstrap> <bootstrap thing="pRacDraBre"></bootstrap> <bootstrap thing="pRacDragon"></bootstrap> <bootstrap thing="fRDrDraHer"></bootstrap> <bootstrap thing="fRDrDraFur"></bootstrap> <bootstrap thing="fRDrDraRac"></bootstrap> <bootstrap thing="drgBrthTyp"></bootstrap> </thing> Others are simple bootstraps such as the fRDrDraRac(RacialFeat is or should be analogous to our RacialProp). Code:
<thing id="fRDrDraRac" name="Dragonborn Racial Power" description="When you select dragonborn as your character's race, choose one of the following powers. Your dragonborn character gains that power." compset="RaceFeat"> <fieldval field="usrCandid1" value="thingid.pRacDraBre | thingid.pRacDragon"/> <tag group="Hide" tag="Special"/> </thing> Code:
<thing id="drgBrthTyp" name="Breath Type" compset="RaceFeat" description="Choose the type of damage your breath weapon causes."> <fieldval field="usrSelect" value="Fire"/> <arrayval field="usrArray" index="0" value="Acid"/> <arrayval field="usrArray" index="1" value="Cold"/> <arrayval field="usrArray" index="2" value="Fire"/> <arrayval field="usrArray" index="3" value="Lightning"/> <arrayval field="usrArray" index="4" value="Poison"/> <tag group="Hide" tag="Special"/> <eval index="1" phase="Setup" priority="10000"><![CDATA[ ~set our dragon breath power as the focus, for convenience perform hero.childfound[pRacDraBre].setfocus doneif (state.isfocus = 0) ~delete all keywords in our list var i as number for i = 0 to 4 perform focus.deletestr["DamageType." & field[usrArray].arraytext[i]] next ~assign the new keyword perform focus.assignstr["DamageType." & field[usrSelect].text] ]]></eval> </thing> So I am a bit confused when you say Savage Worlds does things differently from other settings files, or perhaps am not seeing the forest for the trees(which might be why i was under the impression some of your previous statements might have "implied" a maximum number of dropdowns per game system for example). Quote:
Yes, this is a BIT slower than opening the bootstrap popup and picking the thing you want, but for NEW GM's trying to build out their races, this would be visual and MUCH easier to deal with. Of course, I realize that this would just be the editor part, so a new Race tab(or popup or whatever honestly) would also have to be created. As well, outputs could need to be updated in some way to account for these various optional things. Yes, some games in SW won't use these things and if so, they would remain hidden, but when needed, they show up based upon the GM. More importantly, I realize this is not a 2 week change(assuming it is all technically possible) and would be a fairly large project(in which case, others might be able to assist in the coding with the right knowledge! and this would be a win/win for multiple people). To start with, the easy test case might be a popup box showing all skills loaded in a radio button(or perhaps a list of check boxes) and bootstrap the selected values for free at d6. btw, if anything I said was talking out of my ass because I don't understand how it all works, please let me know. |
|||
#153 |
Senior Member
Volunteer Data File Contributor
Join Date: Aug 2009
Posts: 1,550
|
The use of UsrCandid1 is part of the RaceFeat component in Pathfinder. It has the rest of the back-end structure to handle the menu. Savage World's Race component does not have that. UsrSelect for the breath weapon array is the same, it's supported in RaceFeat (PF) but not Race (SW). It's part of those differences I was talking about.
Part of the problem with the Skill bonus thing - SW doesn't have just one Skill list to deal with like the others. Every Setting has it's own additions. And in the Editor you can see them all, there are no Setting filters, it's the other way around. It assumes you want to be able to designate something as available in more than one source, so the relationship works the other way. It can be a real problem. I have over 2 dozen different Setting files loaded. There are 3-4 versions of some Skills. Sometimes it takes a couple of tries to get the right Skill. It's part of the price we pay for flexibility. I'll see what I can get away with. I've asked the head engineer what's available. _ Currently In Development: Savage Pathfinder, SWADE Fantasy Companion Future Development: SWADE Super Powers Companion, SWADE Sci-Fi Companion _ Currently Running: Savage Unity Inc. (homebrew multiverse theme) Setting Files Supported: Deadlands: Reloaded, Flash Gordon, Gaslight, Hellfrost, Interface Zero 2.0, Seven Worlds, Slipstream, Solomon Kane Future Setting Files: Savage Judge Dredd |
#154 |
Senior Member
Join Date: Aug 2013
Posts: 123
|
Quote:
Then, each component which wishes to utilize said field has to then define that field as belonging to the parent thing(race, edge, skill or whatever wants to use usrSelect via an inheritance mechanism of some sort. I know(well, suspect) this as the <Field id="usrSelect"/> is then reused in multiple locations to display a dropdown(classes, feats, races, etc) in 4E. Savage Worlds appears to only use usrSelect in edges, but I can't see why it cannot be defined as a child object of Race, Skills, or any other top level thing you as the core data file developer determine it needs to belong to. It's not supported because the core data files have not made it be supported as a child field for Race, or Skill or whatever, not because it's not technically infeasible. Or perhaps I am totally misunderstanding just how extensible HeroLab actually is. Quote:
I know it's frustrating for me to see 5 copies of a skill in the editor, but that's something i could live with, but as an end user simply building a character, it would be unacceptable. How much control do you have in those popup dialog windows? Since there may not be a way to filter, can said dialogs contain more than the two columns(I assume it's possible)? ie, what if there was column for source? I know it would not be a perfect solution by a longshot, but it might be workable. Is there a sort feature available? If both extra column AND sort were available, that would be even that much closer as all for a setting would be grouped. Again, not a prefect solution of course, but perhaps others would like to pipe in on this limitation to see if it would be worth pursuing(assuming it works that is with those features). Another question along those same lines, is there the ability to make a dropdown and dynamically load the values to the list of possible values? I have no idea if this is possible or not in the hero lab script code, but if it were, we could loop over the selected sources, and then the skills in said sources, and build the dropdown dynamically. of course, I would guess that this feature does not exist, but again, it never hurts to ask. Thank you for putting up with my questions and extremely long examples. |
||
#155 |
Senior Member
Volunteer Data File Contributor
Join Date: Aug 2009
Posts: 1,550
|
Ah, I see. No, that's not usually the way it works. Each field definition is specific to that component. The fields aren't re-used, although sometimes field names are re-used. Now, the usrCandid1 field is part of the UserSelect component, as is the usrSelect field. That's currently only used in the Edges and Racial Properties component sets. It'd have to be added to Race.
And, no, I can't see the Pathfinder code objects, just Savage Worlds. If I asked, they'd probably let me have a set, I've never asked. And if memory serves, you can clone a game system and it creates an un-compiled set of files for you to modify. I'm not saying it can't be done. I'm saying that, at present, those objects don't exist on Race because it's never been asked for. Setting up a Race is something that's done once at the beginning of a campaign and then never really touched again, for the most part. We've never really spent a bunch of effort on it because it's not something people have asked for. I create them all the time for Setting files and it's never really been an issue. The Races usually get created with the Setting. I'm used to going through the bootstrap button on Race and adding things that way. There's a sub-menu on that form to filter by object type (Racial Properties, Racial Abilities, etc) and it gives you places to add tags and field values for those that need it. One of the Setting files I am working on (it's way down on the list, but it's there) is Star Wars. With a TON of alien races. Having a simplified interface to build Races has merit. It's just going to take a bit more than simply adding the edit objects. I've not done a bootstrap editing object in the editor yet, and I'm not sure how to code it. I've asked the fine folks at LW for some info. _ Currently In Development: Savage Pathfinder, SWADE Fantasy Companion Future Development: SWADE Super Powers Companion, SWADE Sci-Fi Companion _ Currently Running: Savage Unity Inc. (homebrew multiverse theme) Setting Files Supported: Deadlands: Reloaded, Flash Gordon, Gaslight, Hellfrost, Interface Zero 2.0, Seven Worlds, Slipstream, Solomon Kane Future Setting Files: Savage Judge Dredd |
#156 |
Senior Member
Volunteer Data File Contributor
Join Date: Aug 2009
Posts: 1,550
|
I was able to add some new buttons to the Editor... You'll still have to add tags and such for Skilldie on Skills and any additional info on each bootstrap, but this'll make it easier to add multiple Racial Properties, Racial Abilities, Edges, Hindrances and Skills to Race, plus some other goodies. I added some of these same buttons to a few other places. (Creatures, Factions, and Groups)
_ Currently In Development: Savage Pathfinder, SWADE Fantasy Companion Future Development: SWADE Super Powers Companion, SWADE Sci-Fi Companion _ Currently Running: Savage Unity Inc. (homebrew multiverse theme) Setting Files Supported: Deadlands: Reloaded, Flash Gordon, Gaslight, Hellfrost, Interface Zero 2.0, Seven Worlds, Slipstream, Solomon Kane Future Setting Files: Savage Judge Dredd |
#157 |
Senior Member
Join Date: Nov 2010
Location: Metairie, LA, USA
Posts: 1,819
|
Quote:
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) |
|
#158 |
Senior Member
Volunteer Data File Contributor
Join Date: Jan 2007
Posts: 591
|
I would love to see support for Iconic frameworks and heroic paths from Rifts because I have a feeling that we are going to see more of these soon.
|
#159 |
Senior Member
Join Date: Aug 2013
Posts: 123
|
Quote:
Thanks, I look forward to seeing just what your work has produced and what the specifics are. For some context, I have no issue dealing with manually bootstrapping things, but where possible, the things which are normal and logical should be easy and adding an attribute for free at d6 to a race is so common that every core rulebook race has one(IIRC), so making that one case easier for non technical people should be as easy as possible. Did you happen to add one or more text and drop down fields to the race component? I know I had originrally suggested a Race tab, but the more I play with HeroLab, I realized that all of the OTHER race specific stuff(example, All Thumbs, Agile, Low Light Vision, etc for elves) all show up on the Special tab. In the short term, this would be an acceptable solution for the presentation of any setting specific text fields and/or dropdowns required for a given race rather than a new specific tab for the race related stuff(though, it would be nice as a long term option to be developed as time permits). One thing i would like to also suggest on the Special tab is to break things down into some separate groupings at some time in the future. All of the special traits are listed one after another and it would be nice to have these categorized. Since you have mentioned Pathfinder a few times, I refer to their Background Tab(for others, this contains Race, Alignment, Diety drop downs as well as sub group headers for Faction, Alternate Racial Traits(not sure what this is since I don't play PF), etc. http://i65.tinypic.com/o0pic0.png I don't know what else comes up there, but IMHO, i would be nice if the Racial stuff were separated from the Bennies(the only thing I know shows up there at this point) in some way. Again, this is a long term request and not critical for the current feature(ie, get to it when you can). ----------------------------------------------------- Did you happen to have any luck with the whole player choose their free skill at d6 type thing? I know you mentioned having to check with some developers on that since there are so many overridden skills and currently, it will just show them all including ones not selected for that setting. I really hope this is something that can be figured out as it's a semi common race feature. For the record, exactly how would you do this TODAY with the current code? I assume you would have to create an edge, bootstrap it with the proper dropdown list of skills for said setting entered by each author, and then script each drop down list to assign the to the actual skill manually, finally crediting back the edge so it does not count against the points available during creation? Is that about the gist of it in rough terms? |
|
#160 |
|
|