Home Artists Posts Import Register

Content

So this last week had a lot of IRL stress, which made work screech to a halt for a bit. I tried powering through but realized pretty fast that I’d just burn out and slow things down more. Instead, I’ve been putting in the amount of work I can while remaining healthy. Today, I’m back on track and feel good, so here’s a (late) progress update! >.<

If you missed the streams, VODS are here. (They won't let me link to the actual vods page. It's the 'videos' tab at the top.)


What’s being worked on?

Categories at 100% are left out, cause so many things are already done. Next time, I’ll indicate how much each category has progressed since this post. Hopefully this approach will give a sense of how close we are to done.

Game Object data/structure ~ 90%

All my work prior to the decision to use ECS gave me an architecture for storing the data for all game objects. There are two pieces: the default settings for the huge amount of features a game object can have, and the actual object once it's created in-game.

I made the default settings pieces first, but got confused on the second part. That's where the ECS came to the rescue. The default object settings architecture is actually perfect. It's doing its job providing data for Entities to be created in the ECS. That's a relief, cause it means I don't have to rewrite it all again. >.<'

There’re a few things to finish pulling in from the data file, and the rest of the work here will be copying the old data into the new format.

Animation ~ 85%

Since the animation code has been completely revamped, a lot has changed here. The unfinished things here are just waiting on the ECS stuff, so I’ll have more to say about them as the code catches up.

ECS components/systems ~ 12%

Mostly, the work has been in figuring out the best approach, so I don’t waste time having to redo everything once I implement it. I’m going through the game's process one step at a time, making the current mechanics into small components that work modularly, instead of being tangled into spaghetti. These build on one another, getting faster and easier with each piece in place.

Motion, force, and positioning components and systems are mostly done. Tracking in-world motion is super important and has always been buggy. Now it actually works! Still need to convert the Spine motion system to components, since that's part of the features this update is using, but the base code is already there.

I just set up the code that sorts out the many variations that one object can have. E.g. a toy in your hand vs one stuffed into a pony requires different data to work, but they are technically the same "object". So reading the permutations of a toy with X amount of visual components, times Y amount of ways it needs to be displayed, is kind of mind-bending if it's not done well. It’s working great atm, but I want to hold off on celebrating until more objects are tested.

Spine rigs, which handle all the animation and complex stuff, are now components too. The ECS now creates and configures them, sets animations, attaches sprites, and runs all animation features on the rigs themselves. Most systems will use this component, so this is good progress.

Fluid messes are mostly done, too. They were a massive pain before, but now are one of the simplest systems in the game. And fluid interaction seems to just work. Yay!

I'm finding that the ECS and data architecture I've set up are shockingly successful. They're "Just Working (tm)". Once each piece of this thing is set up, I'm finding that I don't have to ever touch that code again. When I run into a bug, I've been able to look at all the already-finished code and say "Well, I know the bug's not in there!"

And when I want to add a new feature, I know that I don't have to touch anything in already-written code. I just plug a new lego piece in, test it, and it's done.

The difference that makes is so huge. I'm no longer scared of the code base. It's stable. This is the thing that was missing way back when I started this nightmare of an update. The instability crushed me each time I thought I was getting close to a working release.

UI ~ 15%

This was confusing at first, and I had this whole post written up about it. Then I learned a little more about the ECS and realized it’s actually super easy. Whew. Deleted all of that nonsense.

I was worried that the architecture I put a bunch of time into before would have to be thrown away due to the ECS replacing it, but it’s perfect for the UI. So I’m not worried about this category. It doesn’t take much time, and is getting done as each component is added. This should naturally progress along with the component/systems.


Q&A

What about mod potential? I’d love to, but I don’t have a good answer to this yet. It’s a no until it’s a yes. The ECS stuff I’m doing opens up a lot of potential for modding- I’ve seen it done in other games. But I’m not comfortable enough looking at what I have right now to say anything for sure. When I do an update focusing on character creation stuff, I’ll dive into this a lot more, and be able to give a better answer!

Characters should cry from laughter! Yes, they should. Just gotta get the visuals looking good, and that’ll happen for sure.

Tentacles? Yep, that’s one I have solid plans for :3

What about multiple body types for each character? Manes are the real killer here. Once I find an easier way to sculpt the manes around the size/shape of different heads/bodies, then I can just let you swap between any body configuration you want. This’ll come hand-in-hand with character customization features. It’ll also make development time much faster when dealing with the rigs, so it’s a big goal for me!

The game Rack by Fek has character customization! Can you do it like that? Nope. Well. Kinda. It’s a different type of animation, so there are special considerations. Rack requires far less precision in its rigs, so while I can use ideas from it, I still need to deal with the underlying issue- things need a lot of fiddling to not look janky. And that fiddling takes place in Spine right now, which is an expensive program. >.<’


That’s all for now! Slow progress this week, which sucks, but I’m trying not to let stress push me into unsustainable habits. ALSO, the discord is going through a bit of a clean-up atm. I have some long-term goals for it, which I’m excited about, but it might be a bit rocky getting there.

I hope this format for posts will give a better sense of where everything is at. It also maybe will make it easier for me to communicate with less words, and make these updates faster to write. Still working on the best way to approach these!

Thanks so much for sticking with me all this time! ._.

<3

Comments

Anonymous

I think the progress graph at the top of the post is an excellent idea. The visual reference allows us to best visualize how close the next release is. Thank you for that.

VitAnyaNaked

I am happy that you dealt with the problem that confused you and as you can see it turned out to be quite simple)) Keep your amazing work up!

Anonymous

preview or update?