• NOW LIVE! Into the Woods--new character species, eerie monsters, and haunting villains to populate the woodlands of your D&D games.

Why's it so hard to create a character generator that rocks?

Silveras said:
Uhm... No. How many "enforcement" options are there ? 2 ? or 20 ? Which things do *you* want to enforce ? Those kinds of things make the tools incredibly more difficult to write. You *do* want something this decade, right ?

Actually I was addressing the prereq restrictions specifically (for feats and prestige classes). Depending on how the software is designed I suppose prereqs could also apply to weapons/equipment or whatever. The solution perhaps is to allow prereq overrides on the feats/classes, not as a global setting.

Silveras said:
Let's say you only have 2 modes. The program has to check its settings to see if it is supposed to enforce requirements. How often do you check ? Can the user change his/her mind after starting a character ? If so, you have to check pretty much every time s/he changes something.

Continuing with feat-level prereq overrides, couldn't you have a flag or something that indicates whether the feat prereq was overridden? This should be visible to the user upon load. And when the character changes, then yes, it would force another check throughout the entire character to see if prereqs are valid.

Silveras said:
Let's say you have more than 2 settings.. 3.. maybe Feats get checked but PrCs don't. That pretty much doubles the workload of writing the code, and certainly doubles any testing that gets done. 4 settings ? Double again. 5 ? You get the picture.

As I said at the top of the post, you could have 1 setting as long as it was on the feat/class itself.

I know its easy enough to talk about, and the actual software design and implementation is incredibly difficult. But it can't be insurmountable.
 

log in or register to remove this ad

I'm with you, barsoomcore. I just want to be able to add skills and feats and have the math come out correct. PCGen can't even do that consistently. (No, really: it can't.)

A challenge for you programmers: build a character generator (or tracker) using only the subset of the SRD 3.5 that appears in the PH; i.e., not including any PrC's or monsters-as-characters or whatnot. Now, can your generator make mathematically perfect, complex PCs with a dozen different weapon feats, and have the BAB come out correct? When you can do that, you can sell me your product. :)
 

Silveras said:
They are related; often, the extensions contain NEW exceptions.

Example: In the Core rules, may Prestige Classes add to the spellcasting ability of a "Previous Spellcasting Class". Others have their own progressions, which are separate no matter what you had before.

Someone coding a tool would look at that and say, "Ok, I need to make the tool able to recognize spellcasting classes and be able to allow you to specify which one gets advanced when there's a choice."

Then, along comes the 3.5 revisions, and the Mystic Theurge. Wait a minute ! TWO classes get improved ? It is an EXCEPTION to the normal "set" of rules.

Ok, I see what you're saying. Another example is in the fairly excellent Unearthed Arcana:
Human Paragon gives you +1 casterlevel to any previous spellcasting class. When I saw that the first time I thought it was pretty cool, and it was different because other classes before it always specified "+1 arcane" or "+1 divine" spellcasting class.

A character generator built on the assumption that classes will always provide +1 arcane, +1 divine, or +1 to the current class wouldn't have been able to handle this rule extension.

Yeah, I can see how this could end up being a problem. :\ On the other hand, if the software allowed custom addition of classes, you could create a divine and arcane version of the Human Paragon and at least have a work around.
 

Joshua Randall said:
A challenge for you programmers: build a character generator (or tracker) using only the subset of the SRD 3.5 that appears in the PH; i.e., not including any PrC's or monsters-as-characters or whatnot. Now, can your generator make mathematically perfect, complex PCs with a dozen different weapon feats, and have the BAB come out correct? When you can do that, you can sell me your product. :)

Hmmm....a challenge. :) Too bad I have to finish up the other gaming systems I'm working on first.........otherwise I'll never get my stupid program done. :D
 

WingOver said:
Yeah, I can see how this could end up being a problem. :\ On the other hand, if the software allowed custom addition of classes, you could create a divine and arcane version of the Human Paragon and at least have a work around.

Wait a second.....most/all D20 software won't allow addition of custom classes? What about spells, weapons, armour, profs, etc........if you can't add new ones.....doens't that kinda defeat the purpose of having the software?
 

Spoot said:
Wait a second.....most/all D20 software won't allow addition of custom classes? What about spells, weapons, armour, profs, etc........if you can't add new ones.....doens't that kinda defeat the purpose of having the software?

I can't speak for all the software out there... I know e-tools and pcgen have the capability of adding new stuff. But I believe there are some limitations inherent in the software (e-tools has some hardcoded values that affects various calculations.) To me, the point is moot anyway because I want all calculations to be rock-solid before having the capability of adding new items.
 

Hmm, I'm going to go out on a limb here...

The people here seem to be quite passionate as much about what's in a character "generator" (note the quotes, I don't want to discuss semantics :) ), as to what approach should be used.

I, too, find some of the limitations of PCGen frustrating. Don't get me wrong, a great deal of effort has gone into it, and I do appreciate it. The greatest wealth of PCGen is the sheer quantity of available data and the community to support it.

So I too decided to code my own program.

I lurk in d20-XML and PCGen-XML, since I believe that XML will be the way to go instead of proprietary languages like LST. One approach that has been discussed is using XML to describe "objects" that are added to a character. So a "level" is essentially a container for several "objects": bonuses to class level, bonus to BAB, bonus to caster level, adding special abilities, bonuses to saves, etc. are all objects.

I've coded a little demo from my "unfinished" program that demonstrates this. It's not usable or pretty, but it does show what I mean. You can get it at:

http://www.andargor.com/files/panther-demo.zip

I make no promises on when this will be available :) I'm going to release that engine under GNU GPL, so no "customer" pressure, please. :D

I'd like to have your comments!

Andargor
 

WingOver said:
Actually I was addressing the prereq restrictions specifically (for feats and prestige classes). Depending on how the software is designed I suppose prereqs could also apply to weapons/equipment or whatever. The solution perhaps is to allow prereq overrides on the feats/classes, not as a global setting.

Continuing with feat-level prereq overrides, couldn't you have a flag or something that indicates whether the feat prereq was overridden? This should be visible to the user upon load. And when the character changes, then yes, it would force another check throughout the entire character to see if prereqs are valid.

As I said at the top of the post, you could have 1 setting as long as it was on the feat/class itself.

I know its easy enough to talk about, and the actual software design and implementation is incredibly difficult. But it can't be insurmountable.

By virtue of having the switch in the first place, you have to write additional code to check how it is set every time you make a change. Either way, the program still has to check "Do I need to validate the requirements for this ?"

Putting a flag on each Feat or Class makes the problem worse. Now, you risk having some contradictory situations. A CE PC that is advancing as both Blackguard and Paladin, because the Paladin is set to "not validate" but the Blackguard is set to "validate", or a character with Weapon Specialization but not Weapon Focus who still cannot take a certain PrC because the PrC tries to validate the requirements.
 

Joshua Randall said:
I'm with you, barsoomcore. I just want to be able to add skills and feats and have the math come out correct. PCGen can't even do that consistently. (No, really: it can't.)

A challenge for you programmers: build a character generator (or tracker) using only the subset of the SRD 3.5 that appears in the PH; i.e., not including any PrC's or monsters-as-characters or whatnot. Now, can your generator make mathematically perfect, complex PCs with a dozen different weapon feats, and have the BAB come out correct? When you can do that, you can sell me your product. :)

The problem is, you might be the only customer. There is no business model in that challenge.

[Edit: That's why the most successful tools are:
  • simple
  • tightly focused
  • hobby projects instead of business projects
]
 
Last edited:

WingOver said:
Yeah, I can see how this could end up being a problem. :\ On the other hand, if the software allowed custom addition of classes, you could create a divine and arcane version of the Human Paragon and at least have a work around.

Well, except that computers are terribly literate. As far as the computer is concerned, the class called "Human Paragon with Divine progression" is not the same as "Human Paragon with Arcane progression". So, if you were building a Human Paragon Mystic Theurge, you could not take 3 levels of Human Paragon to get 1 each Divine and Arcane; you would need to take 2 levels of "Human Paragon with Divine" and 2 levels of "Human Paragon with Arcane" to get the same spellcasting -- and that would be soooo wrong on so many other levels (BAB, Save bonuses, etc.)

Custom addition of new material is exactly where the issue comes from. If you limit the software to "Only the PHB Core" as Joshua Randall suggested, and remove the possibility of ever adding anything else, you can now write perfectly operating code, and work on making it quicker and more efficient.

However, most games want to add something, even if only a free Eschew Materials feat for the Sorcerer.
 

Into the Woods

Remove ads

Top