Alright, new build out today for testers/alphas.
This is TDRPG engine version 0.1.1, DQ1 dataset version 0.0.6.
The party screen is a lot more functional now. It should even scale appropriately depending on the resolution. Obviously, since DQ1’s art was sprite-based, this is probably going to look really terrible at most resolutions that aren’t 800x600. Still, it’s a good proof of concept for now, and we will be using the higher res DQ2 art soon enough which will use the same techniques.
A LOT of the work I’ve been doing is to get the game and user interface to properly load, scale, and organize assets at almost any resolution. A lot harder than just assuming everything is always 800x600 pixels, forever.
Although the equipment/skills panels aren’t ready yet, you should be able to click on characters and see their stats, as well as any bonuses derived from equipment.
This might seem like a minor feature, but there’s a LOT going on under the hood. For instance, rather than just straight port the legacy DQ1 code for stats and items, I overhauled them both completely.
In the original DQ1, characters always had exactly 1 weapon slot and exactly 1 armor slot, and the game made all sorts of assumptions about this that made things obnoxiously inflexible. For instance, it took an ugly bit of hacking after the fact to let Azra have two weapon slots that both used the same item type (books).
Now, you can specify in data what each character’s item slots should be, so any character can have an arbitrary number of item slots that can have anything in them. Of course, the DQ1 UI assumes just two, but we can use a different UI in DQ2 if we need more items. Also, DQ1 items could only affect one stat at a time, in the next system one item can affect multiple stats if we like (without having to rely on item “specials”).
Stats have gotten a bit of a similar boost. For instance, we’re almost certainly going to ditch the “speed” stat in DQ2 since it was confusing and made you do math in your head, and we might change how armor and defense affect damage. However, the engine has to maintain backwards-compatibility with DQ1.
So what I’m doing is adding variants of certain stats. Instead of just “defense” now there’s “defense_abs” and “defense_mult” as well as “defense_cap.”
“Defense_abs” is absolute, linear defense. A straight damage tax on incoming damage, DQ1 style.
“Defense_mult” is a multiplier, basically a “absorb 20% of damage” thing. We’ll probably use this in DQ2.
“Defense_cap” is a % cap on all incoming damage. If your defense_cap stat is 0.8, then no matter what crazy combination of defense_abs, defense_mult, and armor you’ve got, you can’t even avoid more than 80% of incoming damage. Of course, set this to 0 and you can avoid as much damage as you like.
Data files in each game’s data set will specify what the canonical stats are for that game, and the user-facing names of the stats will be similarly data-driven.
So in DQ2, character’s defense stats might use “defense_mult” and in DQ1 they use “defense_abs”, but in both cases the user will see that simply as “Defense.” Of course, the tooltip explanation will reflect what is actually happening under the hood.