Early Progress on New Project

I spent a couple of weeks kicking around some ideas for my next project. After a lot of research and false starts, I ended up deciding that I should make use of the stuff I worked on since March. Being that it would be silly to make a colony sim at this stage, I decided to go back to making a traditional roguelike. The solo developers love child.

This is still in very early stages, so nothing is cast in stone. The basic premise is that you’ll be a far future feller delving a planet for valuables and information. I was thinking a wyrdstone equivalent like in Mordheim, but I haven’t thought it through yet. All I know for sure is I’d like the player to explore war torn planets, dangerous biomes, and planet-wide cities. Think any 40k planet and you’re on the right track.

The main mechanic I am focusing on is being able to swap out your body parts at will. So that you can become this mishmash of organic material and machine.

To test this out, I took my body system from the previous project and simplified it to be more like an inventory system. Body parts have some body part slots such as legs, arms, and heads. And those parts will have their own slots and so on.

For example, a humanoid torso has five slots: a head, two arms, and two legs. Legs and arms have slots for hands and feet and a humanoid head has two eyes, two ears, a mouth, and nose. This made it easy for me to make a struct that holds what kind of body part slot the part fits into and what side it is on for labeling purposes.

I simplified the parts since I don’t see any real value in simulating the bones or fingers and toes. But I suppose I can add those in later on as non-swappable parts down the line if I find a use for them.

Ye olde human body

In the previous project I had used Odin and scriptable objects to build templates of body parts and bodies and it worked pretty well. The issue with that system was that it was not built in an inventory style where you can swap out parts like you would a weapon or armor. It could have worked the way it was, but I wanted it to be direct and easy to understand.

I was able to enforce body parts fitting into the correct slots when editing the templates by using before and after insert triggers. If the wrong part is added to a slot, it kicks it back and gives the user a message on how they fucked up.

I did run into a few problems early on. One problem I needed to solve was how it didn’t make sense to equip a hover-jet in one leg slot and have a normal ass leg in the other. That’s goofy. It makes more sense to define parts like a hover-jet or wheels to take up more than one slot and view them as one unit. This opens up opportunities for interesting builds. Like a cyborg insect that has a hover-jet and standard legs that they can switch between. While the hover jet can be immune to movement cost and environmental hazards, it could have the drawback of being slower and make it more difficult to aim . Whereas the legs are subject to movement cost, but are faster when there is no movement penalty and may also not incur any kind of aiming penalty. Yet, there may be bonuses to having a matching set of parts. So there’s a lot of potential for these kinds of builds.

I was able to use some validation for multi-slot parts in the editor. It’s pretty basic, but it makes sure there’s enough slots available and replaces the first n slots it encounters. When I implement this in the game, I’d prefer to make it clear to the player they are choosing a pair of slots. That way, it’s clear which slots are being used.

Attributes ahoy

Another thing that came up was how could the player swap out something like their torso, head, or even brain? My solution for that is to not allow for swapping of vital parts without outside help. You can find a body mechanic hiding out in the dark corners of a city or you happen upon body modification pods. Essentially suspend you and replace that which you depend on to live. Want a super sophisticated targeting CPU for a brain? A circulatory system that sprays acid when you are injured? Sure, strap in and wake up a new, deadlier you.

I’m also planning on allowing parts to have a certain number of cybernetics installed as well. Things that can block pain, increase melee damage, that sort of thing. When it comes to cybernetics, you can come up with pretty much anything.

In that same vein, I’d like to mess around with genetics as well. In the same way hobby scientists are messing with gene kits in their garages, you could splice in a frog’s DNA to jump farther or toughen up your skin like a rhino.

With all that I can mix some premade templates of robots, animals, and humanoids along with some proc gen monstrosities. Maximum Cronenberg.

Like I said, a lot of this is brainstorming and in the early prototype stages. But I am hoping to have a test harness setup for swapping out the parts soon. Hopefully making it a fun time while I’m at it.

Leave a Reply

Your email address will not be published. Required fields are marked *