Programming feats, skills and the like....

Codejoy

First Post
I was curious (and yes i understand this is a broad question), but in 3rd edition, is the only thing that really augments a character from the start a feat? By Augment I mean changing Init, AC, STR, CON, DEX, WIS, CHA, INT, base attack, Fort, will, ref etc...
I understand that spells do but thats usually at game time. I suspect some items might do this as well, so then is it only items and feats? Spells and Skills seem to augment at game time... and then usually only spells augment the character (skills just change DC's really).

I understand this is a broad question but I want sorta a broad response. Thanks for any help.

-Shane
 

log in or register to remove this ad

Luke

Explorer
Hi Shane,

Other things that augment a character/creature:
- Racial traits
- SubRace traits
- Racial templates
- Class features

In RPM, I have a generic "modifiers" capability. You can define modifiers for races, racial templates, subraces, items, class features, feats, conditions, spells etc

I realize that you seem to be more interested in "pre-game" modifiers (as per character sheet geenration), so perhaps spells and conditions don't interest you.

Skills don't tend to augment the character. They are more like "actions" that you perform. Augmentations are generally created as feats.

The other thing to consider is how the various modifiers inter-relate. You must consider stacking rules, or get possibly bloated results.

You also need to consider order, or things will get seriously out of wack. As an example, you can't work out the dex effect on AC, then later apply the item effect from "gauntlets of dexterity".

If you check out RPM, you can see not only how this all works, but also how in-game dynamic changes are handled.
For example, a "stunned" creature's AC drops, whilst stunned. Similarly, a creature with "Cat's Grace" cast on them gets a dex/AC boost. Any dex-related skills attempted will see the benefit of the spell effect. Finally (and the bit I really like), there's only a 25% chance that dex will actually be affected, if "gauntlets of dexterity" are worn (due to stacking rules).
I'm doing a feature-rich, stable beta release of RPM soon, but tthe currently available version will paint the picture for you.

Lastly: If you're intending to write legal software for distribution, read the licenses very carefully. You can't use the "D20" label, and you need to be pretty clever with how you implement your solution to comply with the "OGL". Standard software development implementations won't comply. There's months of discussion concerning "license problems for software" on the open gaming foundation mail archive. Most people just give up. :(

Good Luck,
 


Luke

Explorer
Re: Re: Re: Programming feats, skills and the like....

CRGreathouse said:


Some are content to write in JavaScript to avoid these problems. :p

That's what I do. But I find that to do a decent RPG utility you've got to turbocharge JScript. Put some rocket fuel in it... :D
 

CRGreathouse

Community Supporter
Re: Re: Re: Re: Programming feats, skills and the like....

Luke said:
That's what I do. But I find that to do a decent RPG utility you've got to turbocharge JScript. Put some rocket fuel in it... :D

You know, I used to think that I'd never have trouble with speed, since my generators required so little power. I figured that Moore's law would cover any slight additions to the programs. Now, with nearly triple the dragon selection, more depth (skills, feats, spells), and the addition of templates to my dragon generator, there's a noticible delay when creating the more complex dragons. And Moore's law has only given me 50% more speed in the 14 months since I introduced the generators... :(
 

Luke

Explorer
JScript performance

CRGreathouse said:
You know, I used to think that I'd never have trouble with speed, since my generators required so little power. I figured that Moore's law would cover any slight additions to the programs.

Basic JScript is basic JScript. Moore's Law can't keep up with higher order time complexity. When I said "turbocharge with rocket fuel", I was referring to functionality integrated to JScript, based on fast and powerful C++ programming packages (databases, GUI screens, reporting, generic algorithms etc).
For ultimate flexibility (house rules and D20 expansions), as well as licensing requirements, I keep all rules related stuff in openly modifiable and extendable scripts. It still lets you go much faster and further than in a pure JScript world.

JScript is particularly good at bringing in adhoc bits of script as needed. For example, my database can store thousands and thousands of scripts for all the different spells, skills, feats, items, races, conditions, class features etc. - but my integrated JScript environment will only need up to a few hundred max for any given encounter. In a pure JScript world, you'll blow your computer resource limitations without that sort of technology.

I used to be a C++ realtime engineer bigot. I never dreamed that you could distribute a complex simulation application with such open configurability and expandability.
Creating RPM has really opened my eyes to all sorts of funky technology.
 

CRGreathouse

Community Supporter
Re: JScript performance

Luke said:
JScript is particularly good at bringing in adhoc bits of script as needed. For example, my database can store thousands and thousands of scripts for all the different spells, skills, feats, items, races, conditions, class features etc. - but my integrated JScript environment will only need up to a few hundred max for any given encounter. In a pure JScript world, you'll blow your computer resource limitations without that sort of technology.

The real problem is that the dragon generator is mostly linear - it needs to excecute nearly every step in order to make the dragon. There isn't much that can be done to make them more efficient (without using a compiled language).
 

Remove ads

Top