Wednesday, November 30, 2016

So, that code I was struggling with the other day, trying to match the GUI menu thing to the pixel screenspace versus the world space?

optionMenu.transform.position = Input.mousePosition;

So. Yes. That happened. :facepalm: The option menu works wonderfully now. Except for the functionality, anyway. Today, we'll be getting the job queue back online, and ideally I'll have tiny people harvesting food and trees and visiting tiles soon.

Monday, November 28, 2016

Not dead (it just feels that way)

No new posts over the weekend; I was hospitalized and large amounts of drugs flowed through my veins. Quite literally-- I'm still feeling sick from all the IVs. Programming is really hard under these conditions. Particularly when you have a giant needle sticking through the top of your hand.

I'm fiddling with getting a right click 'action' menu up and running at the moment. No luck yet. I need to figure out how to transfer a GUI menu from screen space to world space, which is probably dead easy once my brain can think straight.

Anyway, just dropping in a note.

Friday, November 25, 2016

Imagine all the people...

Thanksgiving was lovely, but trying to attend a noisy family function for even a short while completely destroyed me. Stupid migraine. So putting in the job system hasn't happened yet (though I may try tonight after a nap).

In the meantime, I found pretty things: a GitHub LPC characters repository!

I'll need to do standardization and color corrections and such when I can look at bright lights again, but for now this is more than enough.

Thursday, November 24, 2016

Hair and inheritance, the sequel

10 hair colors is probably too much... but it's pretty?
I was working on a good system to place and stack inanimate objects on a tile in ways that made sense, then took a break to play with more hair. Since I've gotten a lot of different art pieces from several artists (I've added a credits page), I get hair that's not all standard hues. This cheat sheet should help.

That's the problem with procedural games, really. A lot of 2d game sprites were made to be placed by an artist, not a foolproof-all-angles set up. Having ten hair colors means I should have ten hair colors in short, medium, and long hair. It really adds up quickly.

But, we'll make the genetics and hair growth much, much later. For now, I'll continue using my current code (and a four-options switch) and put the rainbow aside.

In the meantime-- I give you completely procedural forests and corn plants. This time, it's the actual tree and corn plants, not just their image stamped over and over, which means it will work with our pathfinding system. Which is now installed!

Next up-- re-installing the job queue classes that I made while following Quill's tutorial. The people will wander (idle) by walking a few steps this way and that when they have no jobs, and they'll navigate through the forest to cut down a specified tree, ect.

I know this looks like other screenshots I've posted... but those are real, proper trees. ... We'll work on variety later.

Wednesday, November 23, 2016

Getting back on track

It's a tiny, uncomplicated structure right now-- but that's rather the point, I think.

Later on, I'll be expanding on those-- different types of animals, different types of plants. Equipable items will be a category under InanimateObjects. But it gets my point across.

Instead of having the tile tell us how many 'slots' of room it has in it, I'm considering letting the items tell if theres' room for any more objects. I'm not sure how that'll work with items that are multiple tiles wide and high, though. Still thinking about it.

Monday, November 21, 2016

In which hairdos are more fun than hierarchy

Today started with the best of intentions. Get the A* pathfinding system going. Install the tree's trunk (and only the trunk) to the tile to prevent characters from walking through them. Juggle several different sample plants to make sure the system is running well.

... And then I thought, "But first, let's try out some hairstyles." ... And then the rest of my day was shot.

But they're cute at least?

Editing the pretty dress to fit on all female bases...

Clothes for all!

Post Code Restructure!


So-- question. I've got five skin colors, and I'm dubious about the mid-range one, which I'm calling 'olive'. The character on the left edge of the third row is an olive.

I'm really not good at judging / adjusting digital color at the moment, because the never-ending migraine bludgeons me into a whimpering puddle if I try to look at a screen without my screen-dimmer. Anyway, I keep thinking that maybe that olive is too gray or too green for skin, but since everything on this screen is kind of gray anyway, I just can't tell. Opinions, anyone?

All in one nice little block. For now.

B.T. - Before Trees

After Trees!
(Okay, the trees aren't really in yet. Not properly anyway. Going to work on getting them installed the right way next.)

Sunday, November 20, 2016

Brief Update: Structural Decisions

A quick note-- still working on design and structure and such decisions. Things like "Wait, do we want to track animals' hunger and diets?" and "If we have a world map and a local map, and some of the characters leave their starter map to scavenge from the local town, do the other characters get paused? Does the AI take over for them??". There's also the famous "to OOP or not OOP?" question; lately, a lot of people on the internet are insisting that a component-based system will be easier and cleaner, and there's no doubt that this is Unity's focus.

All these things are kinda important, but not really fancy enough to put on a blog.

That said, I'm shifting my MVP to include satiating hunger and having kids. Because, really, that's probably the core mechanics of the game. For later, I have dreams of tracking some basic traits and doing Punnett squares and watching what happens... but I might put in skin tone genes early. Particularly since I may have done all their walk cycle sprites ahead of time.

Getting distracted? What? Me? No!

Anyway. Back to pounding on the keyboard.

Friday, November 18, 2016

Basic Saves Complete! ... To refactor or not refactor...

Character position is now saving and loading properly, and I've played around with some UI elements. As promised, I've removed the 'Build [...]' buttons that were in the last screenshot, and I'm backtracking away from Quill18's work.

The UI buttons may be too fancy. We will see.

New Buttons!
Now, here's my current issue: my hierarchy for constructed objects (fences and misc. furnishings) is woefully unorganized. Quill's tutorial doesn't make use of inheritance, and he calls everything-- even the walls-- furniture in his project. I know I won't keep it like that, but I'm also trying to think of a good, logical structure with idiomatic naming conventions.

So, what does a tree, a rowboat, and a bucket have in common?

None of these things are quite like the other...
Some of these items are man-made. Some aren't.

Some of these things stop characters from walking through. Others will just slow them down.

Some can be equipped. Some are containers for other objects. Some can be cut down (the tree), some can be harvested (the corn). Most will be placed on a tile, but the walls and fences will be aligned to the tile edges. Some can have smaller items stacked on top-- you'd logically want to be able to set things atop a table, for instance.

But! All these things can be interacted with in some way. I want to be able to right click all of them and see a context menu, and I want to left click on them and have them 'selected'. So if I'm to use inheritance (which I think I should), I'm going to need to figure out a natural way to build them. Ideally, this 'tree' will contain minimal amounts of duplicate code.

Spending the day restructuring; we'll see how this goes.

Thursday, November 17, 2016

State of the Game: 2016-11-17

Hey there!

So, a short, short backstory, since this is my first post. My name's Eliza, and I'm a fantasy author / artist / software engineer. Early summer 2016 I got very sick with what's basically a long-term migraine. It's about as much fun as it sounds.

I'm currently confined to our homemade sensory deprivation tank (aka, the windowless office), popping the latest pills the neurologist has thrown at me, and would probably have gone crazy if I wasn't such a nerd. Because clearly, the logical thing to do in this situation is to make that video game I've been thinking about.

At the moment, I'm working on saving the character information-- as soon as I have that, my short-term saving goals will be met and I'll be able to move ahead to other things.

I've been working through Quill18's Base-Building Game Tutorial (which is a fantastic resource-- anyone who wants to dip their toes into game programming, take a look at the free Unity game engine and Quill18's tutorials). 

As of the end of Episode 28, though, my game design and Quill's are starting to go in very different directions. Walls and fences aren't part of my MVP (minimum viable product), for instance. Spawning resources, assigning jobs, and creating stockpiles are my main concern, and I mean to implement a 'Blueprint Mode' building system instead of grid blocks..

SO. Next step-- I'm skipping to stockpiles, and I'll be disabling the (functional) fence building system. We'll add that in later.