Yarrdachi: More parts!

Yarrdachi: More parts!

Today I managed to rescue some of the data from my old blog instance, though there is a period of missing stuff I probably wont be able to recover. These posts relate to the Thing A Day which I should probably have called Thing In A Day, that would have allowed for more flexibility... however it doesn't matter now because all of that has vanished into the ether. With that, on to today's work.

Yesterday I did a lot of things, I kinda got carried away. I should be aiming for a thing every day so I don't confuse things and end up with complex interdependent code. I really need to do my best to keep things simple and contained. I also should probably be using a local database for development, I am getting a bad reading on how long generating a pet takes because it has to pull data from the remote server and that adds a lot of time.

Today I will focus on adding some more parts to the generator for the baby stage and test them. This, in theory, should be quick. If there are bugs (There probably are) I will spend a lot of time debugging. I will try to add at least 2 more bodies, another 2 sets of eyes per body and 2 markings per body. On one hand they are sprites with a max 32x32 size until I export them (they are 4x size or they would look really tiny at modern resolutions) so they should be pretty easy for me to draw quickly... on the other hand that's a lot of parts and every body I add leads to exponentially more work. I think I will go with 3 bodies per stage for release and work on adding more after. This means 15 total bodies, which means at least 30 markings and 30 eyes.

I wont have to worry about all that until I get around to evolution which comes after care and the basic adventure system. Which come after the house and farm system. Which all seem like a lot to me, looking at them and knowing that later I will be adding a town system and various other things like chat and forums but if I take it a day at a time it will be alright.

Tomorrow I will probably start on the sprite sheets and the sprite generator which hopefully will be just a slightly modified version of the static image generator and will only be 2x magnified.

First new body basic set.

After adding a few more markings and some eye sets to the basic body I ran a few tests to make sure the generator was working as intended.

I also redrew the shading. Still needs work, but better.

I will get better as I go on and work out a better workflow for doing this but it's not too bad as it is. I've got quite a bit made by lunch. Of course it gets a little harder when I animate them... but I will keep it simple and by having every part only be one color I can way more easily handle the animation. I might even rewrite the code so I can have parts be different color and based on just the alpha of the sprite in order to make it a little easier to do this... exporting everything as white is really a lot of extra steps.

I think it's a small enough task to add it to today's todo list. If it takes more than 20 mins I will add it to tomorrow's instead. Though it would improve my drawing workflow and save a lot of time if I get it done sooner. Especially before the sprite sheet generator.

Anyway, lunch.

And I'm back and added a second body with only the first set of markings and eyes so far.

Here's three now.

I've modified the pixel selector code to operate on anything that has an alpha of 255 instead of only white things. Life will be much easier now. Inb4 I miscalculated.

# operable_areas = (red == 255) & (blue == 255) & (green == 255) & (alpha == 255) #OLD
    operable_areas = (red >= 0) & (blue >= 0) & (green >= 0) & (alpha == 255) # NEW

First new pet with new eyes.

Not a fan of me, it would seem.

I'll add another set of eyes and a few more markings and then decide what to do from there.

This one gives me an idea.

So I had a thought that I could change the generator code a little more, allowing me to add a bit of alpha to the markings instead of making them purely solid... I will try that and see how it goes.

More of a blending but hey, it works. I could do the same for highlighting.

So there's the roster I generated today, I think I will try to add one more body type and some features for it, then there was some stuff I should probably get done around the house.

There we go.

The story so far... in pets generated.

I feel like I need to edit the eyes to add some shading around them to make them pop out more but aside from that most of these things seem to be working alright.

I just need to keep up the structure and remember I can add shading layers to the markings if I need to. The model with all the generator code has gotten pretty big, I expect it to grow by quite a lot yet, the API image generator is also really big now. About 500 lines between them over the past 3 days so... yeah, accounting for the 4 more life stages and breeding as well as special cases these will get massive. I may break some functions out into their own classes later on.

Anyway, I got shit to do around here and accomplished more than I initially set out to do so...