My Littlest Skeleton Devblog 3

lights

Art:

I spent a bunch of time messing around with the scale of items and redrawing them and whatnot. NOW THAT DOESN’T MATTER. Say “Hi” to the super talented Mel Potts, she’s gonna do art for the game. She’s powering through what I’ve already made, just check out this progress!

artpizzashep

Food and happiness:

There’s more food now. Each tier of food now has three items it randomly selects from. Better food quality makes your skeleton happier. happier skeletons make more jelly. SO KEEP EM HAPPY, OK? This is completely unbalanced right now, but it’s working.

Behavior Tree:

I rebalanced, tweaked, bugfixed a bunch of things in the behavior tree this week. It mostly revolved around getting the “fun branch” working. Things like what a skeleton should pick up, when they should put it down, when they should use the item (if it’s a trumpet or something), and when they should just wander around. This is the stuff that will define your skeleton. Later on I’ll add more preference for individual skeletons. I can’t wait to find the one skeleton that just sits in the corner all day playing the trumpet.

This kind of stuff is hard to show in an image, so here are some pictures of the behavior tree graphed out.

treeRefactor2

This doesn’t include using items, which are dynamically added as your skeleton picks things up.

adaptiveTree

I had to split the code that builds the tree up from the one large file it was becoming. And it’s only going to get bigger, too, which is awesome.

My Littlest Skeleton Devblog 2

FoodUI Buy Food screen:

WELCOME TO MY WEEK. It’s been UI. This one screen. It might not look like it’d take most of a week to do, but fun fact, I have no process for making art assets for this game. It started out not being a problem but as more and more things go in, it’s starting to get bad. So I came up with a process for UI. Next I’m going to take another pass on the sell confirmation screen, to get it up to spec. After that, I need to get all the game art in line.

Back to the food screen, you’ll have 3 tiers of food. All good food does right now is make your skeleton happier. There’s a free tier of food just in case you blow all you money on hats. This way you can’t doom yourself into an unplayable state.

Hat system:

What’s the point of raising adorable skeletons if you can’t play dress up with them?

MakeAContract

There isn’t one, and that’s not the kind of world I’d want to live in anyway. So now your skeletons can wear hats. Hats aren’t special items, either. It’s just a flag in the item object. Most things will have it turned on, actually. I might make there two flags later on, for “proper” hats and things that can be worn. That way you can have proper uptight skeletons, and stupid ones.
Pizzahead

Platform stuff:

I’ve been thinking about features I want to add in the future, and it’s narrowed the options I have for the game some. So for the foreseeable future, the game will be a desktop game. Windows only for a while, because that’s all I have right now. I’ll have a public alpha in a week or two if everything goes well. Cross your fingers.

My Littlest Skeleton Devblog 1

roomRoom

The room grew this week! In addition to the play area getting bigger, the first test walls were added. At first you’ll probably just be able to change between one of three room templates, but later on I want you to be able to really customize your room.

I did some quick tool work in how “zones” of the room are defined. Right now there’s only two, “Play” and “Food Trough”, but I might add more later. “Egg Hatching”, maybe? “Nap Zone”? Who knows!

Needs

This week saw a lot of good work on pulling together the needs of the skeleton. The core loop is finally in place, which is very exciting because the game finally fits the bill of a virtual pet game. Your skeleton plays around the room, gets hungry, needs to eat, turns food into jelly, and vomits it into a jar. After a while they’ll get tired, go over to their dog skeleton bed, and sleep.
sleeping
You can pick up the jars of jelly they make and sell them for skoins. Right now skoins don’t do anything, but that’s coming up. There’s also some more things that need to be tied into the system, such as happiness.

Item Affinity

Skeletons have preferences! Kinda. When an item is generated, your skeleton randomly decides if it likes it or not. Eventually I want have classes or types of items, and a skeleton’s preference is based off of that, but this works while there’s so few items.

Item Getting and Holding

Beyond the needs loop, I did did a bunch of refactoring on how skeletons pickup and hold items. They’re now able to hold two items at once, and if they need a third (eg. a jelly jar or food), they’ll drop which ever one they like least. This is currently the only real use for the item affinity.

I also added a case to the AI where if an item is outside of the play zone and they want it, the skeleton will stretch. Skeletons stretching to grab an item is one of my favorite bugs, and I wanted to have at least one scenario where it was desired behavior.
stretching

Code stuff

I deleted a bunch of stuff from the old AI system. It was still lingering around for reference, but besides the trumpet (which I plan on reworking anyway) I think everything in the old version is in this one.

I spent some time in the behavior tree graph to add scaling. It’s janky, but still allows me to easily see what’s going on inside that skull. A while ago I felt like I was wasting time figuring out how to graph the skeleton’s behavior, but now it’s proving to be a vital tool in debugging what’s actually going on. SO THAT’S COOL.behaviorTree

Next week

I’m still debugging the needs loop. Every time I play it, I see some kind of weird behavior. Then I just have to decide if it’s good weird, or bad weird. It’s way more fun and enjoyable than debugging normal boring programming stuff, though.

I don’t like making UI, but I need to force myself to next week. I really want to get the food buying UI in, because it will both add a use for skoins and it’s one of the last bits of the needs loop for a while.