Space game (title TBD)

Let’s see if I can get another dev diaries thread going! I’ve completed Fates of Ort, and while I might add some more content over the next while, it’s time to look towards the skies for a new project…

And that’s exactly where I’ve landed. In space, that is. I will update this top post later on when things are a bit fleshed out, but the basic idea is this:

A space roguelike in a procedurally generated universe. You are operating a ship on a centuries long journey (faster than light travel does not exist), crewed by a motley assortment of various alien species. Not only will you need to manage resources and fight off threats, the very genetic makeup of your crew will need to be carefully managed to optimise skills and minimise mutations. The main sources of inspirations that I can imagine to describe it is a mix of FTL and Darkest Dungeon.

20 Likes

Nearly finished working on this particle effect system for my space game. The parameters for each explosion in this video are all the same, except for radius_modifier which alters the distribution of the particles in their spawn area.

I spawn particles around a given central point from which I draw a line in a random direction. The length of that line for each individual particle is randomised. I noticed particles visually clumped around the middle and wanted to have the option to change that.

This distribution makes sense because there is more area to cover the further out you get. I added radius_modifier so that it could be skewed towards the middle, or away from it. Value of 1 is regular random, <1 skews towards the middle, >1 skews towards the edge.

The other parameters I have available are:
Number of particles to spawn
Delay before particles start spawning
Frequency of spawning (time between each particle)
Frequency decay (so that spawning can go slow-to-fast or vice versa)
Animations - using Defold’s in-built animation system I can instruct animations of position, scale, rotation, etc.

A lot of what I’ve done is achievable using Defold’s animation and particle fx system, but this will give me more flexibility. Using this system I can spawn either sprites (like in the example above) or instances of particlefx components.

What do you think? Are there any other parameters you would add? Any considerations I’ve missed?

11 Likes

Making progress! This clip shows the crew combination mechanic, where you combine 2 or more crew in a vat (the green thing on the left) to create a new crew member. This is a core part of the game, as you will be able to encounter new genetic variants (a good thing) or be hit with mutations (a bad thing).

Two important concepts are also illustrated here.

1 - Juice. I am looking to make the game feel really good, with a lot of bouncy animations. Currently I am relying a lot on the ELASTIC animation type, but that might change as a visual theme is decided. Elastic animations might not be suitable if we go for a metallic UI style, as the bouncy-ness feels more cartoony in nature.

Working on juicy-ness is a balance at this point - I want to build it in where it is necessary, but I don’t want to polish too much too early as things might change.

2 - Modular UI. See the circular selection wheel used for picking crew, and which skill to reserve, and which variant to discover? That’s a generic “choice” module that I can use whenever there is a selection to be made. I’m making a lot of these generic modules to save time, and to be able to invest a lot of effort into polish since a lot of the modules will be re-used a lot. For example, I’ve also made an “announcement” module that can be used for a variety of things.

What do you guys think? Feedback is very welcome! If you want to play (it’s very early stages yet so probably not particulary fun), you can sign up to my newsletter to be sent playtest builds periodically.

12 Likes

Even in an early stage, this game looks incredible! I love the idea of trying to preserve traits in crew members over time. It’s both a very real problem when facing space travel and something I haven’t seen any other games cover.

The Juice feels really good so far and I can’t wait to see how good it feels with sound effects. I don’t have any suggestions yet, I can’t wait to see what else you do with your game.

Best of luck on your project!

4 Likes

Hey, thanks! What a nice message! That put a smile on my face first thing in the morning :grin:

4 Likes

Been busy (baby and all) but here are the first tentative steps towards the combat system!

At first I was planning turn based combat, then a card battler, then… Throw both those out of the window entirely to go for a kind of shooter. Think it was the right call.

10 Likes

Indeed! It looks fun!

1 Like

I’m going to start a new thread because this game has been changed radically. Until I get around doing that, I’ll use this one.

I experimented a bit with screen shake, because I didn’t like the solution I had in Fates of Ort. Too noisy and unpredictable, didn’t feel good.

I rolled a few examples myself:

Noisy - This just randomises the position in a range which decreases with shake magnitude. The position in the last frame has nothing to do with the position of the current frame. More or less equivalent to Fates of Ort.

Directional - The shake has a direction which is slightly altered each frame. The position moves around in a range which decreases with magnitude.

Bounce - The shake has a direction, which is constant until the boundary is hit. At that point, the direction is flipped and slightly randomised.

What do you think? Do any of these feel good to you?

How do you do screen shake, and do you have any good resources for it?

1 Like

For me, a perlin/simplex noise shake is the way to go. Your “Directional” shake looks pretty good too though.

The cool thing about the perlin shake is that you can change its speed or frequency. On one hand, if you have slow-motion effects in your game (like smooth hit-stops) then it just works and looks good. On the other hand, you can use various lower frequencies on purpose to get different effects, like some really nice “rumbles” / wind / hand-held camera effects / etc.

Throwing in a bit of rotational shake can make a big difference too. I generally just set up my code to use a small multiple of the translational shake distance.

shake_demo

Here’s a demo project:
Simplex Shake Demo.zip (268.6 KB)

  • Included is a “Love2d Camera.lua” that I use for my Love2D projects and copied a snippet from for this demo.
  • There’s also a copy of the old “dev” branch of rendercam in there. The version in the “rendercam -old” folder has a simplex shake (but it’s very old & in-progress code, so don’t expect to use it as-is).

All that said, your “Directional” shake might be a very good approximation of this for a lower cost. :+1:

3 Likes

Brilliant! Thanks for taking the time to whip up an example, using my snazzy graphics and everything! I’ll need to check out your demo when I get a minute, your examples look great.

1 Like

This reminds me of Sunless Sea/Sunless Skies a lot. You might want to check it out, especially the later, which has a more dynamic gameplay compared to full focus on story of the former.

3 Likes

Just wanted to update to let you know I’ve gone with your implementation. I think it works great. Thank you for sharing.

I’ve embedded it into my version of Orthographic. If anyone is interested I’ll share my setup (you’ll need to edit the “requires” to match your folder structure):

orthographic.zip (10.5 KB)

4 Likes