Wasn't able to get as much work done as I wanted this last week or so of the month, sadly. Have this quick refresh of Lilya's design plus an obligatory fat version. I should be in good shape to cover more ground art-wise next month though, such as the poll winner this month and some things I want to color (primarily the QoH + Melting Love sequence), then that month's poll.
For LyLaD, I was able to get started on my goal for this month, that being combat. I'm not able to say I've done everything I wanted to do, but considering how much time it took up this month (almost 20 straight days of working on it) I sort of have to be happy with it. Admittedly a bunch of extra time was spent not on combat but some finishing touches on potions/curses, some new stats, a new kind of message log (shown above), and incorporating some existing mechanics into that new message format.
The point of the new message log is to be able to show textual information in a non-intrusive way. Now, for instance, if Lilya's belly gurgles during the time she moves from one dot to another, instead of the game pausing and bringing up a textbox to tell you that—it'll simply appear in this text log at the top of the screen and fade away shortly after. So a variety of non-integral messages can get fed into this message log, queued up, and displayed while you do various other things. It can also seamlessly be used in combat as well so parity can be maintained (as I want to minimize use of textboxes in combat, it keeps it consistent with attacks and other moves using the same system now).
Combat in LyLaD is ultimately still rpgmaker turn-based combat with a few added touches, and interactions with Lilya's parameters an skills, so the base UI works well enough for selecting attacks or items. However there is a lot of extra information that comes with the added stuff that needed to be conveyed, such as action type, ADV cost, and Skill requirements. To explain:
Lilya's turn in combat is broken up into full actions and free actions. When full actions are reduced to 0, her turn ends. When free actions are reduced to 0, free actions become full actions. At the start of the game you will only have 1 full action and 1-2 free actions based on Lilya's Agility attribute. But this is something you'll be able to build upon with perks or special equipment. As in, it's something you can manipulate and obviously it will drastically affect your capabilities in combat. The player thus needs to know how many of these actions Lilya has left at any given time, and whether a move counts as a full or free action. In the 4th and 5th provided images, you can see full actions represented by the large circle in the bottom left, and free actions represented by smaller circle. When a move is highlighted, the segment of the corresponding circle to be expended will be also be highlighted. This tells you what action type is being used, and will show what of that type is left or will be left after use.
ADV stands for Advantage, and vaguely describes Lilya's position in combat. Certain actions will gain ADV (up to a max of 5) while special attacks will consume ADV to be used accurately. This is shown in the same images, at the top of this sidebar UI. For extra context, the 'type' of ADV usage can also change. 'Req.' means the move simply requires a minimum of x ADV to be used, and doesn't consume the ADV. 'Exp.' means the move expends up to x ADV, but does not require it, and the amount of ADV expended may improve the power of the attack. Actions can also have any combination of these ADV conditions (ie require 5 ADV but only use 2 ADV).
Skill requirements are simple, and shown below the ADV conditions and action type part of the sidebar. You simply have to be able to pass a skill check of the stated level with the corresponding skill, usually a weapon skill.
The last two UI additions to combat are basically just ported forward from the previous version. The sequence of 10 dots represent Lilya's DP, or 'Defiance Points', which are important in altercations involving restraints, hypnosis, and other such things. The loss and regain animations for the DP segments were added back in, and I had a much easier time with it compared to when I made the same thing for the previous version way back with less experience. The last gif shows status display during combat. States affecting Lilya are shown in order of priority, along with their duration in turns (always 15 seconds)—Or, not pictured, if the state has a unique duration set in actions, it'll show in roman numerals instead (ie a state with a duration of IV will expire after Lilya executes any four actions, regardless of how the passage of time).
With all of the above, combat can appropriately play out. But obviously there aren't any fully set up enemies yet, and Lilya has no real moves. But to begin filling up either of those holes in the system, I wanted to set the groundwork on just what information I can extract out of Lilya's actions. A small but annoying problem I had previously was figuring out how to check for misses and hits against enemies particularly when targeting multiples of them. This has been solved by just hooking straight into where the attacks are executed in the engine's code. This has allowed me to extract a ton of info from each attack which is exciting for setting up unique behavior both for Lilya and enemies. For instance: I can know if all enemies were hit or missed, so Lilya can have an attack that deals some status or other effect if all enemies are struck, or it backfires if any hits miss. I can check the total damage inflicted across multiple enemies, or how many times a targeted enemy was attacked, and thus trigger a reaction from that enemy on their following turn. This kind of stuff lets me reach a lot further with how I build up the mechanics of perks or special attacks, and creates larger playground for enemy AI, which I have a whole concept on how to overhaul from the basic manner it exists in in vanilla rpgmaker.
So the goal up next, starting next month, is to finish up combat with these things to be covered:
Uniform move structure and parsing
Standardized damage formula for attack types, w/ easy to tweak modifiers
Test basic stat mechanics (Accuracy, crit rate, dodge rate, etc. basically vanilla already)
Implement advanced stat mechanics (Counterattacks, spell absorption and reflection)
Enemy parameters and behavior, basic execution of attack patterns
Restraint and hypnosis mechanics
And finally implementation of Lilya's weapons, movesets per weapon, spells, etc.
Then some basic enemies to be seen in the demo, to test with
I do think it will begin to get pressing to implement all of this for the demo (I may delay a few things to post-demo, who knows). Since my money concerns have been somewhat alleviated recently I may be open to even pausing payments through October to December if I want to straight up focus on gamedev 100% to get something out by 2025. But no guarantee.
John Quiche
2024-09-01 04:55:26 +0000 UTCTim
2024-09-01 04:01:15 +0000 UTCOrri
2024-09-01 03:55:48 +0000 UTCTim
2024-09-01 03:41:36 +0000 UTC