So, KUVA. My sideproject of a sideproject. Or something like that.
So, this is a bit of project. Never done anything like this. What I am trying to do here is to simulate a person, or a personality. There's no dialogue, basically I use a REPL and "why" which then tells me what it feels and why. Basically it's a "person" shaped thing that I can interact with limited activities, and it changes mood, and responds to things. Reponses to which change the "person".
It's very extensive with a lot of experimentation, and being confused. Had to read about Psi Theory, OCC Appraisal, ALMA Mood model, and what else crazy bullshit that psychologists come up with, in addition to programmers and philosophers. It's a never-ending rabbit-hole that I have no idea how to escape.
Anyway, right now I have three prototypes, none are anywhere near done. They all share rough idea of there being different layers that change in different speds. Fast emotions leak into slower moods, which then even slower beliefs and so forth.
Currently I tried three ways to approach this same architecture, more or less:
I did everything by hand, special rule after special rule. It worked, but goddamn that's a lot of code with no universal function to be seen. First proto, off to the trash.
Basically everything is data now, instead of code, and it all comes down to the "what will this bring me?" question as the central tenent of the personality construct.
Concerns. The same as second, but now the central tenent is what it cares about rather than what it gets out of things.
Not sure if I'll consider this third version the final version... but it is the furthest along, if that's worth anything.
I still would need to tackle the idea how to communicate with this "person"... in a game. It'd make for an interesting dating simulator, since there's no way I can script anything at all for this. They are who they are. Which is somewhat randomly generated per playthrough.
We'll see how this idea progresses. Even if I get this working and I crack the dynamic dialogue system as well... then we'd still be at most 1/3rd way through. It would still need actual game around it. Le sigh.
So, yeah... there's been a storm of ludicrious numbers on the heatmap. I did try to avoid that from happening, but... I think I'll just not care from now on? To make things short: Basecamp activity is still limited, so we won't be seeing 100+ activies per day when I decide to clean up old notes, or something. But my GITEA server is going to report raw numbers -- on top of whatever Basecamp reports. I've added several new repos to my server, and I've been diligent on keeping them up to date, even though I do only small changes to documentation. So I've gotten some pretty damn big numbers. Honestly, that was an accident. I wanted to keep the heatmap simmering instead of screaming.
So to speak.
But I forgot that each additional repo will add "noise". At this point, I'm thinking I might even add my Obsidian vaults to my Git, since we're already such damn high numbers. I forget what the top number is but we're well over 30 activities per day already. So that's probably half Basecamp and half Git activity, if I had to guess. I have no way to tell them apart after the fact.
So, this website is getting a new look. Right now this post is not going to be published... at least not right away. I'm also going to return the ability (to me) to publish straight to Bluesky as well. Also, yes, there was again another riot of heatmap stuff... I'll come back to that and explain it later. It's way too late in the evening to get into that right now.
So, finally the storm of Basecamp has abated. Most of the design work is done... for now? Maybe? I'll start working on some Rust code now. We'll see how it goes, and if Basecamp will be hit again a lot. Should be a lot more sane number of changes rather what the last few weeks were like. So much churn. Well... back to work.
Okay, ALLEGEDLY, I should find out THIS week what's my future at the company looking like. We're done with Wednesday, so I am... not skeptical, but it is a bit late in coming. Anyway, as you all know -- if I stay full-time employee, then I will have to "downsize" the Patreon into a tip-jar, because there is no way I can meet any schedule worth paying for. On the other hand, I can't close the Patreon because I am grandfathered into the lower fees, so closing the Patreon will just mean if I start it again, I'll lose bigger chunk of the money to Patreon. So, tip-jar.
ALSO, you might have noticed the crazy growth in the activity of the heatmap. Don't get too excited, I just plugged Basecamp into it, although it does have a limit how much it contributes. Otherwise I'd have some insane numbers there for every time I write a note to Basecamp. This is just so that you can tell I am still alive and working on things, even if it might not be code or art.
That said, cross your fingers that I find out what my employment looks like in near future. Then we can actually plan things.
Working finally on some new code. Now, I am the first to admit that I am not much of a coder. I am far more interested in the end-product than the actual process of coding. But I do love myself some systems design and rule work. I think I am finally getting used to the new job? I mean, I am not quite so totally blank after I come home from work. It's been a real struggle to work on the game, and the systems after work. I have NOT written anything, because I've felt like I have zero creativity to give. So... yeah, it's been a real struggle. I still don't know how this work pans out, but I can safely say that if it becomes regular 9 to 5, I will absolutely have to rework my Patreon as I have no idea what I can even feasibly push out.
Of course, I still have no idea how it all works out. So, painting devils on the walls, as we say in Finland. But, at least this weekend has gone well so far, so that's positive sign for the game.
This week/weekend went a bit haphazard as far as working on the game went. My partner had her last week of vacation time, so I felt obliged to spend as much time with her as possible -- especially in light of her partially crippling injury that she received at the start of the summer. So I didn't have a whole lot of time to spare for the game. But I did occasionally di some minror things, but probably nothing that shows on the heatmap. That said, August is now done, and I'll see if I can actually work on the game a bit more now. The job is still stealing all the hours in the day, or that is how it feels sometimes, but I'll do my best.
A bit late, but that one empty week there? For some reason this whole system that automatically builds the heatmap died. In addition, I don't know why. The error handling was robust enough not to do anything bad -- but not robust enough to give me useful error information. I might have not have noticed unless one of you Patrons told me that this was happening. I don't really look at this page too often -- it's pretty set it and forget it. That said, soon after that I got sick. Snot. Cough. Fever. All the fun stuff. So this week has been a bit of a disappointment.
Anyway, I am working on the travel system. If you squint, it is done. Ignore the missing content, missing combat and social encounters. I am now mostly working on the social encounter system, then the minimal combat, and then I'll work on the content and the encounters. Once THAT is done... I need to create the locations where the player can even travel into. So, yeah, it's still a lot of stuff to be done.
That said, then ... I think we only have the "level editor" to be added to the game and all the "big" features should be in the game. I'll have to get back to you on whether that's actuall an factual statement, or wishful thinking. But... the end is nigh? Or something like that.
Okay, now CTRL-Skip related bugs (panels not showing, backgrounds not loading, music possibly not playing, etc) should be fixed and guarded against. This was quite the thing to do, because by initial design my dialogue system is "stateless". It runs independently of the game, the idea was that I can essentially show any dialogue anywhere and as far as game thinks: nothing happened. This is useful, for example for cutscenes. But, as it happens, I organically decided to add the control flow of the game (what music plays, what poses characters have, what background is on the screen, etc) into dialogue files... suddenly, skipping dialogue became a bit fraught with danger. It should all be fixed now, I think. Hope. Pray. I'm thinking I can probably push out the next version during the weekend. Friday might have been possible otherwise, but Fridays are baaad days for me to do any work on the game.
Fixed some minor bugs, made entering Locations more intuitive. Now all "hotspots" highlight when pressing down ALT and also when mouse hovering over them, so you don't need to "pixel hunt" anything. Although to be honest, that was not really a thing in the game. Next, I'll probably see if I can address some bugs that can happen when CTRL-skipping text. I've already implemented several fixes on that end, but it has some fundamental issues that I might want to address first. Basically, trying to reduce jank.
Okay, the [Location] system as I call it in my head is now simplified. I killed bunch of dead code. How it works now is how it should have done from the start... but for historical reasons (too complicated to explain here) I had much more convoluted way of displaying a location. What this means is that when you go into a Room, that is a capital letter "Room". When you click on, let's say the shower, and you see a dialogue panel style view of the shower -- that is a "Location".
Now, technically speaking, there is almost no difference between a normal dialogue panel during story beats, and the view of the Location. Before, those two were completely separate and different things, although using same graphics. Architecturally, this makes making Rooms and adding Locations much easier as I don't have to juggle basically pointless differentiation between a dialogue panel and a location panel. Now I just create a dialogue panel, add interactive areas as needed, and tell Room that this spot opens this Location -- and it's done.
Well... great. Saturday a storm hit, and knocked out the power. There's trees down everywhere on the property, fences broken, the whole village is broken. So, yeah... I have power -- for now -- but it's intermitted. So, I am off to trying to fix the yard, fences, and that one tree that fell on one of the buildings. Christ.
NoMoCo
Someone turn on the AC outside. It's way too hot. Lucky that I don't have to do any GPU bound stuff, or I'd be melting in this office. This room has no central AC. So GPU running full-tilt will just straight up heat this room.
NoMoCo
I think I got the "location" system simplified and working much better. It's teh system where you click on a spot on the diorama in the room, and you get the VN panel display. It's now much simpler and better system, just need to roll it out every room. It's for now only in bathroom, donna's room, and living room. The reason for working on this? It simplifies the future "level editor" that I'll use to quickly create new rooms.
So, just as a general informational. Because of the new job, I won't be able to work on the game basically at all during mon/wed/fri. This should be reflected pretty well on the heatmap, but just letting everyone know. I'll still work when I can, but right now it looks like bulk of the work will happen during weekends.
To tell anyone who reads this page, but not the Patreon/SS Progress Reports: I was running low on funds. I have been working on this game as a "full time" worker, because I have been unemployed. Naturally, due to the laws here, I have also been actively looking for a job. But honestly, you can't spend the whole day on that, it's not how the job market works here in modern days. You just send a lot of applications via websites and hope for the best.
So, minor delays. I need to go to a job interview on Monday, since I am starting to run out of money and actually need to work on something else than the game for a living. Depending on how it goes, we'll see if there are any further delays. Otherwise things are going well. Sonja's nude sprite set is done and in the game. I am now writing a scene with her nude set in play. Once that's done, I'll add what systems I can. I have added the "SWAY" system in the game -- but it's ugly as sin. After the writing is done, doing proper art for that system is next on the line.
Today, no progress report. I'll be making them bi-weekly, to save on time. It's not that they take THAT long, but let's say it takes an hour to write, then I have to post it to both Patreon and Subscribe Stars, and all that, plus add screenshots. It's a problem, because I can't start a job I can't stop -- I always know that at latest on Wednesday I need to write it up. So it quite often 'interrupts' my flow. Let's see if this is any help. Writing these microblogs is much less work. Like, it's just throwing dirt in Twatter or something.
Today forwards, the Heatmap now includes some of the stuff that wasn't counted before. It now also tracks some stuff that isn't strictly speaking "ready" for the game, like some writing stuff and so forth. Basically, it more accurately grabs when I work on the game on some level. On the other hand, it also now is less clear when I am actually contributing to the code of the game -- but I don't think most of you really care about that. In short: it's less of a pure Git tracker now.
Man. This whole "sway" system I've been working is making things... spiral out. Basically, I am now tying it down to Power (e.g. you'll use Power to attempt this), and this will have THEMATIC repercussions, that I need to start tracking. The initial plan to just give players a tool to change the opinion of Anchors and speed up the plot -- is intact. But it ended up having far reaching consequences all over the game. Not that this has stopped me, it's just one of those "well, damn." realizations.
I've made an attempt to move from my other task management software to Basecamp. Since basecamp now has a CLI, which is basically the non-negotiable requirement for me to use a task management software. I do prefer the systems which are file-locked and local, but... I just can't compete with how useful the syncing is through basecamp, and the notifications on my phone are just perfect. So, I'm trying to modify my schedule... I hope this means I am more efficient, but we'll see how it works out?
NoMoCo
I'm designing a cutscene for Day 5 night now. It'll be, if all works out well, the first view of other Great Ones. So that'll be a thing. I'm also toying with the idea of some potential RNG "voyeur" content for the earlier days. Basically some % chance of seeing one of the Anchors in the shower. Although that probably won't be part of the next update. Or maybe it will be? I have no firm plans beyond doing this cutscene, after that I will see what my budget as far as time goes looks like.
Ugh. I've been a bit sick. Also since my partner is injured, I've had to help her dress and do all the housework, etc. Now I also need to study for a test, so I can pass it (requirements for being unemployed) -- so things have gone slower than I like. But they have progressed, at least. But still. Do not recommend sickness. 1 star review. Do not recommend.
NoMoCo
Because of plot reasons, I now need to tackle combat and exploration (e.g. getting further from the house than front yard). I have been thinking about this for ages, but if the Kitchen minigame taught me anything -- it's that the amount of UI work will be crushing. So, I am making an MVP (Minimum Viable Product), trying to trim down extra stuff to minimum, and leaving a lot of the art unfinished. But still, it is quite the project.
Because the latest update had a major features, but zero plot, I am concentrating on doing some small jobs this week. Anchor screen, finessing the way new journal entries are notified, implementing the "known facts" system to Anchor screen. I am doing a minor redesign on the anchor screen, although it'll get more work before the alpha is done. I am also composing a "timeline" of the game in a wiki-style in Obsidian. The idea is to create a comprehensive timeline that I can use to get a better landing strip to the story. I always have hard time to get into what needs to be written, because I do so many other things that it takes me days to "get into" the story and start writing something usable. It'd be a lot easier if I didn't have to still work on the engine. But... yeah, that's what I am working towards. I am going to concentrate on more on the story side in this update, since I skipped that side completely last time.
Well, this is awkward. For this page, I mean. While on holidays, I am on my laptop. Not a big deal, since I am working on the Kitchen Minigame gameplay. So it's all about balancing, rules, UI and all that stuff. But, my Gitea server won't get any "contributions" to it while I am here. So, uh, it'll look like I haven't done a thing. Which is funny, because the Gitea server is on THIS machine. But I just can't be bothered to fix the configuration issue (different IP addresses and all that) for just a few days. It will mean, though that on Sunday or Monday there will be an overwhelmingly disappoinrting "1 contribution" that contains the totality of all the work I've done this weekend.
Finally done working on the Tile graphics (for now) for the kitchen mini game. I also have coded the basics of it down, and now I need to plug in the art, and see if it's actually worth playing. Which is... eh, interesting. I hope it's compelling enough to play, because I'd hate to redesign the whole thing.
Well... I've been traveling and not being able to do a damn thing, except travel. But I got an access to Windows computer, so there's a good chance of this working out fine. Now I just need to set up the system so that it works out on that windows computer. Most recent versions of code, etc. It'll be a total pain in the ass, I am sure.