Right now, the primary stats (Physical, Mental, Offense, Defense) are hard-coded into the engine. They are fine for the game we're making, but may not be a good fit for other games. Changing these stats to be more flexible will need some sweeping changes to the mod API, so it should be done before 1.0.
Here is a list of the areas of the code-base/mod API this will affect:
in stats.txt definitions look like:
I suggest something like this, where it's [primary stat], [number], [bonus stat]
Anything more complex than simple ratios like that and I'd suggest going to scripts.
That's what I had in mind. Since we already use the "stat_per_..." language for "stat_per_level", I was thinking of:
Order could change, but you obviously get the idea.
Finally, one more wild idea:
Primary stats may not be needed at all. Powers could replace them entirely. There could be passive HP, MP, and Avoidance bonuses in the skill trees. Weapon proficiencies could also be unlocked via skill tree. Not to mention getting to spend level up points all in one place.
But, people love their primary stats. Being able to arbitrarily define them is going to be very useful. Most of the time when I read someone's RPG idea, novel primary stats are one of the first things created.
@clintbellanger in my opinion, that idea sounds really good.
Even wilder idea is to make presence of primary stats optional.
I mean, it's possible to let modders to create any number of stats, and let weapon proficiencies/skills/whatever depend on them. They're able to create powers, which increases any amount of any stats.
So, what will we get? If modder wanna provide primary stats, he can:
But there is still much work to provide that. And there is much less to do for intorducing your idea. However, there is not more work than to just make custom primary stats, and gain is much more (I already have ideas, which nice features can be introduced by that, and can't be realised now).
Sneak peak: There's still a bit of work to do + some cleanup, but things are functional now. Here's a screenshot showing the potential for adding a "Luck" stat. (Note: I don't think our game in particular needs a luck stat, it's just an example):
For modders: here is a Bash script that will update your mod to the new syntax. Simply run it from the root of your mod.
This is rad, definitely one of those dream-features I was hoping would squeeze into 1.0.