Hey hey,
Kay here~ 👋
This week passed by way too quickly >.>
As a quick rundown of what I finished this week:
- Removed some old code that wasn't needed anymore
- Wandering System is in its barest form, but working
- Stamina is now mostly* implemented
- Sleep mechanics and how it ties in to stamina is working
- HP and levels are in, however I still don't know if I'll need them any time soon
- Familiarity and the Familiarity cool-down timer has been added.
- Friendship level and Friendship XP have now been implemented. However, tweaks or reworks may happen in the future
- Affection is now implemented
- Nature is mostly done, but some additional work is needed
- Moods work, but some additional refining is needed
Wandering System
Not much to say about this. For now to test the stamina system, I wanted the Garde to wander around randomly, draining stamina as it happened. However, I couldn't get this to work at all, so it's back to the drawing board on how to implement this. The initial idea was to drain stamina while the Garde was moving, with the destination position being recorded and checking if the Garde reached that, stopping the stamina drain. In reality though, it seemed that the Garde never reached anywhere close to the destination position so stamina would just endlessly drain. My current idea to fix this is to record both the starting position and get the ending position, doing some math to get the distance between those two points, then subtract some stamina all at once based on that.
Hopefully this method works, but I'll have to wait and see after I actually implement it.
Stamina
Stamina system is mostly up and running, with the aforementioned issue when moving and Long Stamina Regen/ restoration not being present.
If you need a refresher: Long stamina dictates how much stamina you have over all; short stamina is the moment-to-moment energy. The more short stamina is used, the quicker long stamina drains, with the percentage of remaining long stamina also being the percentage that short stamina can regenerate to. When long stamina is completely drained, short stamina doesn't regen.
The next plan for this system is to move it out of the Garde for now. Since things other than Garde will use the stamina system, I'll need to move it from inheritance based to composition based. This isn't the only system I'll need to do this for, but in terms of just getting it to work this will do fine.
Sleep
Sleep meter works. It slowly drains over time until it's restored. The purpose of this is to limit the amount of actions that can be done in a single day. Currently there are no ways to restore the meter unless it's by sleeping, however in the future I might implement some form of temporary options like chugging large amounts of caffeine.
Currently the sleep system has an effect on stamina, but I'm not sure if I want to keep it or modify it at this point in time.
HP and Level
Works just like in the games, nothing too big to note here
However with levels, I'm going to change them just a bit with how they work in terms of XP. I have a rough idea on how I'm going to do that, but I need to expand upon it before making it viable. Since this isnt an actual recreation of the other games, getting XP through the normal way will be quite difficult. Looking on the wiki I did find items that give xp instead of fighting, but doping up a Garde is probably not the funnest way to play so to the drawing board I go.
Familiarity
The more you interact with the Garde, the more familiar she becomes with you. However, there's a time limit/cooldown since this stat also affects other stats, so the more familiar the Garde is with you, the easier time you'll have with raising other stats. However, since this is a neutral mechanic you can still be viewed negatively by the Garde despite being very familiar to her.
Friendship
Friendship levels and xp have been mostly implemented. I may have to do lots of tweaking, however, once I get to playtesting portions of the game. This is probably one of the more important equations/systems because it also will tie into the Love system and trust system as well. I do need to make some additional modifications so that there are separate values for each character the Garde is friends with. This goes for the other stats as well; right now per each inter-personal stat the Garde only has one to keep track of over all, which may be changed by the next weekly update.
Affection and Nature
Affection is mostly untouched in how it works, but is fully implemented, with an added bonus of giving some variation onto the xp gain when needed.
Nature was a bit tricky to deal with since it had so many stats related to it to keep track of, but a quick struct fixed that. However, additional work needs to be done on Nature to make it compatible with the other systems I've come up with. In the other games, Nature affects moves and tastes, but in this game, Nature affects the XP gain rate on some systems in addition to how much XP is needed to level up.
As of right now, I have no idea how I'm going to approach this, but hopefully I can get an idea of how this will work within a day or so~
Moods
Moods are mostly working, but with how they are in their current state, they feel mostly incomplete.
My previous idea involved having moods range from -1 to 1 with the highest mood being the main mood and the others being statuses.
As for the actual current implementation, during talking to the Garde certain actions will either raise or lower an emotion, change where the default emotion will go (for example, the emotion will decay to 0.1 instead of 0), and Emotion decays over time towards their defaults (they might be happy now, but as time passes they'll have a more neutral emotion).
With how they work now, I don't think these emotions can be tied to the animation system I set up previously that allows the Garde to react based on choice, and I really don't feel like adding a reaction system.
Oh well, time will tell if I come up with something better, but for now the Moods system is definitely not finished as of now, and much tweaking will be needed before I feel satisfied.
Anyways, that's all for this week~