Right, so research is all done, except for the research project select dialogue, which will require some graphical work from Lily.

The next thing I’ll work on will be crew dynamics! I have a bunch of ideas about this, and this is probably going to look like Toady One‘s devblog for a minute.

I have the idea that thoughts and conversations should basically model the behavior of memes. Memes are a real thing, sort of. They’re a way of representing the idea that an appealing bit of information, whether it’s a catchy song or juicy gossip, will tend to spread through a population while lesser bits of information are not communicated as often and eventually die off.

So we’ll model this in a basic way. The game will start with some basic memes, things like the fate of the ship, that Earth is probably dead, and so on. Things that happen will produce further memes, like setting a new course may get the crew talking about your destination. And as mentioned before, things like having to eat bad food will produce memes as well.

Each person will have a predisposition toward talking about and receiving certain types of memes. In other words, someone will be the ship gossip, while another person might be all business and only discusses humanity’s dire situation. This will create relationships among the crew, because some people will have really great conversations while others won’t find anything they can talk about.

This will also affect morale, because memes about especially good or bad things will have a natural tendency to spread quickly through the crew until everyone knows about it and is affected by it. This would replace the mechanic in, say, a Civilization game, where a city’s happiness is just a number and adding a fun building increases that number by 10% or whatever.

Is all of this necessary for a city-simulation-on-a-ship game? No! That’s the beauty of it. Overcomplicated backend code producing emergent gameplay features is one of the key aspects of this genre. The trick is getting it to work properly and somewhat intuitively.

So we’ll start with this!

The first thing to tackle from my new huge todo list will be research! I made the images for four laboratories last night and this morning, so at least that’s out of the way. Now all that’s ahead of me is fresh new code! Which is a lot more fun than bugfixing.

I have some ideas about research. First of all, it’ll have to fit into the new overall progression of the game. A basic lab can discover some things, a lab hooked up to a water supply can discover more, then add a power supply, and so on. Additionally, more advanced research should require more than one lab working at the same time, which means you need a larger crew to advance. And finally, while research technicians will be present in your crew, I think it would be interesting if advanced research required a scientist from the civilian population.

My test case for research will be using the biology lab to discover the galley and the chemistry lab to discover the chemical synthesizer. Both of these buildings are currently in the alpha test, but they are actually out of place as starting buildings, because you’ll have no one to run them until at least the first wave of new awakenings. So making them buildings that show up a bit later makes sense. One thing I’ll have to start to do, though, is guarantee that certain types of crew show up in the first couple of waves, so you’re not waiting six years for a chemist or some such.

Lily is currently working on images for advisors. These are people who will give you ideas for how to proceed and will eventually lead you through each game’s procedural plot. They’ll each be based on one of your actual crew members and will share the individual semi-random appearance of each sprite, which should be pretty cool. The advice they offer should help to ease the vertical learning curve that games of this genre tend to have.

This is the part where I sperge out over future game mechanics for many, many words.

Milestone #1 has been passed. It never sounded too ambitious. I called it “A Playable Shipboard Game” and we definitely have that now.  This milestone was about laying down the groundwork for things to come and making a complete experience out of the work done so far, however limited it seems at this point. Let’s reflect on the progress made.

Screenshot at Milestone #1

Someday I will look back at this screenshot and shake my head in wonder at how far the graphics have come. That day is not today.

We have crewmen who run around and do things. We have tasks that let them figure out exactly what they need to be doing. They get tired and hungry and will sleep and eat. We have buildings that make things and grow things. We have constructions: airlocks, doors, beds, stairs, and so on, each with unique behaviors. It’s really just the very basics for a game of this genre, but believe me, it represents a lot of work.

Alpha testing, by the way, is going well. I’ve rooted out a few of the remaining crash bugs, finally found a solution to a supply-finding issue that’s been annoying me for the longest time, and pathfinding appears to have no more problems. I’ve also solved a silly localization issue: did you know that in certain countries where decimal numbers appear in the form 67,13, a program will actually crash trying to parse “67.13″ into a number? Neither did I! If any professional programmers ever read this, they’ll probably shake their heads at this point.

Anyway! Let’s talk about the future. The game is playable but it is not that interesting. Sure, building in a sandbox is fun on its own, but at the very least, a game of this type needs to let you discover new things to build. There must be a sense of progression. Exploration, even. In addition, one of the overriding themes of the game is that you are in command of all that’s left of humanity. You should feel a sense of peril. But at the moment, the crew are immortal and nothing threatens the ship. This must begin to change.

A Deeper Shipboard Game

I’ve thought of eight major elements required to finalize the shipboard game. I figure that Milestone #2 will involve completing at least six of them. Some might be time-consuming enough that it’s healthier for the game to move on and then finish them off later. But we’ll see. All of them, in any case, will add challenges to the shipboard game or directly lead into the other portions of what the final game will be.

Shipboard Discovery

I said before that the other major portions of the game will provide enough of the sense of discovery and exploration that the game needs. This is still true to some extent; after all, how much can you discover on a ship that humans built themselves? But it’s not quite going to do it. There should be some surprises as you expand the ship. Supply caches, prebuilt rooms, even technologies that you didn’t begin with should all be available to find on the ship.

Shipboard Progression

Similarly, there should be an overall structure to the ship. Watching your crew run around like ants is a good reason to want to expand things, but it shouldn’t be the only reason. There should be a long-term goal, a storyline of sorts, to your expansion aboard the ship.

Here it is: your crew start near the bridge. They need, ultimately, to reach engineering, and they need to reach other major important areas of the ship along the way. It will be crucial to the ship’s survival. First, they will want access to the water tanks, to ensure that they can keep everyone healthy and fed. Next, they need access to the main fusion reactors, to power improved weapons and facilities. Finally, they will want access to engineering and a direct line into the main fuel supply, which will again unlock more technologies. Each section of the ship is both a goal and an obstacle on the way to the next section.

Research

Both a staple of the genre and another thing to build. Laboratories and research should be a part of the game and contribute to the sense of progression. The way you prioritize your research will direct what type of game you’re playing. You can not only research new weapons and buildings, but also how to deal with the alien cultures that you encounter. Progressing from first contact to trade to full communication will require researching the alien language and culture. This is how you will decide whether you’re playing a basically peaceful or warlike game.

Crew Dynamics

Crew should have feelings besides sleepy and hungry. They should like and dislike things that happen to them. Do you think your crew enjoy eating algae all the time? Being exposed to vacuum when a bulkhead is broken down? Having to climb four sets of stairs to get to a task? Conversely, wouldn’t they like a meal of meat, even if it was grown in a vat? Or prefer a charismatic commander? Lots of things should affect the productivity and morale of your crew. You should have to be concerned with whether they’re happy and whether you’ve promoted the right people to command positions. They should also interact with each other and build relationships.

Civilians

Not every frozen human is another chump deckhand for you to boss around. Your ship has also brought thinkers, artists, and architects, not to mention lots of grunt workers. Eventually there will be people aboard your ship that you have no control over, but you still have to keep them happy and healthy. They will have different needs and expectations.

Weapons and Defenses

You can already build factories and docks and hydroponics vats. Added to that should be weapons. The weapons and defenses you build in the shipboard game determine how your ship is armed when in ship combat mode. In addition, your weapons must be manned in the shipboard map for them to be available in combat. I plan for combat to involve a variety of close-range beam weapons, flak weapons, and long-range missiles. On the defensive side, you’ll build a number of countermeasures, defensive fields, and be able to armor your bulkheads to help prevent blowouts.

Vehicles

The current expedition system, where a couple crew members just quietly disappear for a while and then return with raw materials, is very much a temporary stand-in. The first part of improving this will be done by adding vehicles. At first you will just have shuttles, with varying cargo capacities. After this you will have fighters to aid you in combat. Along with this comes pilots and all the hangar crew required to maintain the fighters.

Damage and Damage Control

Buildings and infrastructure will get damaged during battle. Often this will be something you’ll just repair after the battle. Occasionally, though, your crew will need to address the problem immediately. Blown-out bulkheads will need to be patched. Sometimes your damage control crew will be doing minor damage to prevent a worse disaster: power lines or fuel lines leading to malfunctioning weapons or thrusters will need to be cut. This will all have to happen automatically, with the ship and the crew on heightened alert during battle. Afterwards, you’ll have time to see to full and proper repairs.

Future Milestones

So, while the principle goal is to add content to the shipboard game, much of this content will directly lead into future portions of the game. The things necessary for the battle portion of the game are obvious, but even some things leading into adventure mode will be present, like researching alien cultures. When this milestone is reached, the other parts of the game will be very natural next steps.

For the next few days, I’m going to stay focused on the alpha test, tweaking things here and there, fixing bugs that are reported, and getting a very robust stable build out of it. After that, I should no longer have to revisit much of the code I’ve written and it’ll be time to work toward Milestone #2.

This is it! Time for other people to look at the finally playable shipboard game.

I’m not going to invite every applicant today. I’ll start with a handful and add more later, and seek more out as we go. Basically, I want to start with a handful of people that I already know and make sure certain lingering issues are settled before I widen the field. So don’t feel too left out if you applied and didn’t get an invite today.

I learned long ago that it’s unwise to make deadlines for software development until you’ve pretty much already done everything you need to do to reach them. So announcing this date means I’m basically already done!

The one thing I have to do is stairs. I kept forgetting to actually put them into the game, and now that they are, they seem to turn the crewmen into hyperdimensional beings who can quantum tunnel through the ship’s deck at will. This is not ideal. But once that’s sorted, I’ll just have a few rough edges to smooth out, and then I’ll need volunteers to help me find all of the remaining oddities in the game before it becomes even more complex.

I have to emphasize that this isn’t a release and I’m still not doing much of anything to promote the game yet. This is just the point where the most essential features of this portion of the game are complete, and I need to make sure it’s all working properly before I pile on more code. So if you’re interested, try the alpha test application!

Now it’s a party.

Lily finished the female crew today, and they’re looking quite nice for tiny sprites. I started a new game with them and was surprised to find the punk-looking blonde chick on the right building my bulkheads. Exciting!

I’m currently fixing a few lingering issues and adding things that shouldn’t wait much longer. Mostly I’m waiting for my next day off on Saturday to evaluate exactly when I want to declare the game in alpha.

It seems like almost all of my post titles are some variation on the idea that I’m very, very close to being done with what I’m doing. It always feels that way, but my todo lists are like some kind of Zeno’s Paradox, with major goals getting accomplished but then spawning minor finely detailed tasks that take a similar amount of time.

Anyway, I’ve got a playable game. You can start a new game, you get some starting supplies, you can build buildings, you can make things. More crew are awakened occasionally. Tradeships arrive a couple times a year. You can send people on expeditions for raw materials. So that’s a game. It’s completely playable, though a bit of a purposeless sandbox at the moment.

Right now Lily is finishing up art (buttons, crew sprites) and I’m finishing up features that I didn’t previously consider important. For example, the game now has air. What would a space game be without explosive decompression? I just put this in tonight and it was far less trouble than I expected it to be. What’s funny, though, is that the crew currently don’t react at all to being plunged into vacuum. So what happens is I queue a section of bulkhead to be deconstructed, then watch a guy go over and tear it down. He gazes blankly for a moment at the unblinking stars beyond as air whistles past him out of the ship, then calmly turns and goes back to where the rest of the crew are chilling, barely staying ahead of the outrush of air. A few seconds later, that entire section of ship has explosively decompressed. And no one cares. Of course, the next step is to have the crew flee for their lives through the nearest airlock when the air pressure starts to drop. And obviously lighter items need to get sucked out through the hole in the ship. When your hull gets holed in battle, it’s gonna be great.

We’re very much on track to be alpha testing with a larger pool of testers before the end of the month. That’s what I called Milestone #1 about a month ago, so we’re pretty much there. Milestone #2 will be about adding some depth to the portion of the game that occurs aboard the ship, making it more compelling even without the rest of the game in place, and I’ll have much more to write about that when I’m ready to start. Milestone #3 will probably involve the battle system. That’s the plan!

Final for alpha, that is. Today I finalized the map that’ll be used for the alpha release, finished up the code for starting a new game, and made saved game management less of a hack. This means that you can start the program, create a fresh new game, and play it. That’s about all we need for an alpha version. But there are a few things that need to be fixed and a handful of small additions I need to make before I’ll want other people testing it.

So, probably another week or so and we’ll be testing. Then it’ll be time to think about Milestone #2, which will involve adding a lot more depth to the shipboard game. After that, I’ll probably be thinking about combat. Pretty soon, this might even be a real game!

I spent much of the afternoon throwing together a 3D starship and then making a retro pixelated title screen out of it… which Lily then touched up so that it would not literally be painful to look at. I’m not good with art. However, I’m fairly happy with the final result.

Star Voyage Title

Click for big!

Now, this could strike some people as a colossal waste of time, given all the deadlines I keep imposing upon myself. But this actually served two purposes! First, building a model of the ship will help me figure out exactly what the in-game maps should look like. Second, having a title graphic finalized will get me to work on a proper startup screen, which leads into creating a new game, which of course is a major thing on my todo list.

My other announcement is that I went ahead and put together an alpha test application. The link is on the sidebar to the right. I can’t predict exactly when alpha will actually begin, but there is really not a great deal more to do.

My first day off since vacation ended. There isn’t much to say, I’m still working away on this thing. Let’s take a look at the todo list from my last post.

  • Data dump screen for crew members, their professions and current tasks.
  • Data dump screen for tasks and who’s doing them, if anyone.
  • Screen for viewing professions, editing their tasks, and creating new professions. This also includes editing the colors and insignia that crewmen of this profession wear.
  • A depot-like building for the trading system.
  • An expedition system for retrieving resources, which can mostly just piggyback off of the trading system and shouldn’t be much trouble.
  • Expedition launch building.
  • Starting configuration screen, for choosing your captain and initial crew members.
  • Editing the ship map into a form suitable for the alpha test.

Plus many other minor tasks that seem too small to list yet add up quickly. But in any case, it’s really close to being ready to test. Besides working on the game itself, I’ll probably take some time today to prepare for the alpha test and start actually pointing a few people toward this website.

© 2012 Star Voyage Dev Blog Suffusion theme by Sayontan Sinha

WP SlimStat