Home Artists Posts Import Register
Join the new SimpleX Chat Group!

Content

As much as I may seem inclined to rambling, I have to admit, writing dev journals has always been hard for me. But the worst thing about it has to be that whenever I'm having a hard time with the rest of my work, it gets that much harder to face the prospect of writing a new journal. I hate to disappoint myself, and I hate to disappoint others, and when I keep hitting slowdowns and setbacks, it hurts, but it doesn't hurt as much as having to come here and talk about it.

But these journals aren't just about making me feel bad-- or rather, in a way, that's exactly their benefit. It's easier when it's just me I'm disappointing for me to forgive myself. But when I have to confess here, it helps keep me feeling accountable for each day. Looking back, maybe it's a tool I should be using more for my own sake. Work on all these prototypes has been so chaotic and unpredictable it's been impossible to stick to a real schedule, and I used to build a lot of my plans, motivation, and focus around the deadlines I imposed on myself. Now that it's more free-form, it's much easier to let days slip by without doing as much as I could. In several cases that wasn't a problem because the work was so exciting I couldn't help but dive into it. I'd build up momentum and keep tearing through problems and building new features every day I could. But that's choked out since v0.02.

My big hope was to start building the new AI system, something very ambitious, maybe even too big for me, but something I'm passionate about, even if I have to create a halfway version of it or some such. It's such a strange and complicated beast that I spent a lot of time on pure theory work, trying to lay out all the ideas for how it would understand the actions of other characters and itself, how it could interpret and then reinterpret things as it gains new information so the characters can make assumptions, then correct them as things develop. But the more I thought about it all, the more it became clear you would need absolute loads of information to draw from about what has happened in the past. The game already has some “memory” of past events, but this kind of comprehensive record of things like who was present when, how healthy or horny they were, what status the various engagements were at, would require a lot more bookkeeping.

I had a placeholder for some of that with each character having their own basic “memories,” but it was looking like I would need to have a more comprehensive and centralized repository of everything that's happened that characters could draw information from. That would help with a few other features I've got creeping up as big potential additions in the near future as well, and would generally help the game be more “aware” of itself.

This would use more memory, but at the time I wasn't too worried about that. I was deep into laying out plans, and I realized that this would also open the door to a lot of interesting possibilities if I laid it out in conjunction with an overhaul of the text output system. I already knew I wanted to replace that sometime, but it was becoming increasingly appealing as a next step, and between the two, we'd finally open up options for things like having other encounters happening “off screen” so NPCs can form relationships and histories even when the player isn't there, or even having multiple player characters-- allowing for one player to play a “team” or even for a basic form of multiplayer. I felt like this would open a lot of exciting options up, and I was shifting my focus to the new info repository system and overhauling the text system when v0.02 finally went public. They would both be a big help for the new AI system and help it both be possible and be visible to the player.

But the response to v0.02 was... rough. There were a lot of problems, especially on Android, and I ended up pushing out a hotfix to deal with the worst of it. The complaints I saw were pretty discouraging, though some of it I probably should have seen coming. The change would of course change the nature and feel of the game, and it had been dialed up way too high out of the gate to “show off” the new feature, much more than most people would probably, reasonably want. And, as it turned out, more than some devices could handle. The expansion to multiple NPCs had revealed some problems: PWO has some bad practices in terms of memory usage. The game could literally just crash on some Android devices just because there was too much stuff being stored behind the scenes.

I had already been really frustrated with how little actual work I had been getting done. I'd worked a lot on concepts, planning, and laying out the design ideas, but very little code had been changed so far, and I'd kept shifting from one difficult design question to another. It's all stuff that needs to get done to turn a basic prototype into a full-fledged game system, but between the abstract nature of it all and the shifting focus, I couldn't build momentum, I couldn't harness any proper excitement and get myself on a roll.

So when it turned out that the last update had been so problematic, that people were literally going back to v0.01, and that my big planned addition for the coming update would make things even worse (being very memory intensive in exactly the way that I now know is the problem) it made it really hard to even face the project. I ended up doing a lot of research into the problems coming up on Android and into how memory works in general and on Unity, as that's something I've never really had to worry about before. MVOL was very straightforward besides dealing with the limitations of Flash itself, and I kept quietly hoping that as long as I wasn't making a fancy 3D game or the like, I'd never have to worry about things like keeping my memory or CPU usage low. But it looks like if I want to chase my big ambitions, I'll have to start paying a lot more attention to these things.

It's been sobering. And I've found myself filled with a lot of doubt each time I look at adding something to the game, because I worry that I'll just make things worse if I don't take the time to look up the best way to add it, to minimize its memory usage and such. But that's been slowing me down, both in literally making each new idea take longer, and in just killing any momentum I'd try to build.

Now it's been two months, and I feel like I have a better understanding of the mistakes I've made, and I have plans for how to improve the game's memory usage in the future, but you guys don't want v0.03 to be “I made the game lighter weight so it should run better on Android.” We need new features, and now.

The new info repository feature is on hold. I'm not sure if I need it enough to justify its existence. I want to be able to create a robust system, one that could be used for many different purposes, maybe even to have many different games inside it, so I want to have all the tools I can on hand for that, but I have to choose my focuses somewhere and draw lines for the sake of both my sanity and the player's device memory.

Instead, the revamp to the text output system is going forward with its own lightweight memory system. I'm hoping I can put this together fairly quickly, and if so, it should immediately make the game more satisfying and “alive” to play through, and it opens the door to adding things like a wider variety of actions and maybe even the multiple player character situation with only a little more work.

I still haven't been able to fix all the problems that Android users have been running into, but when I can't replicate the remaining problem and I can't find any way to get proper debug logs from those that do have the problem, it's honestly just been too much of a time and motivation sink in the middle of all of this. I do plan to find a fix, but for now, I'm putting the issue on pause so I can get more real progress done on Project Wild One. I'm sorry to disappoint if you're an Android player and you've been having this issue. I won't forget about this, but right now, I really need to just actually build something again, for my sake as well as everyone else's.

I'm finally building again now, and I have a lot of hopes for the new text output system. I'm taking what I learned from experimenting in Project Voice and hopefully I'll be able to do some really interesting stuff to make the descriptions of actions less repetitive, more specific, more aware of the situation, and generally more enjoyable to read. I probably won't go all-out for the first update with it, but you should be able to see a notable improvement at least.

I'm not happy with how many delays and hold-ups there have been. A lot of it needed doing, but I feel like I could have, should have been doing more, or mixing it with something else. But we're moving forward again now, I'm coding again, and I might even have real reason to start writing again soon. That's exciting. But right now I just want to do what I can to get an actual update-worth of new features ready so I don't keep you guys waiting too much longer on v0.03.

I deeply appreciate your patience and your understanding with all of this. I have a lot of ideas and hopes for how to make this game something special that does things no other game does, and I'm trying to balance those dreams against a measure of practicality to make sure I'm never aiming too high. I've seen that ugly cycle destroy projects before, and I'd rather find the right compromise than let that happen again here. I'm pushing myself, but that balance is key, and I know that.

Thank you for helping me make something special. I'm sorry I took this long to stand up and admit to my troubles.

Comments

No comments found for this post.