0.4.0 Gameplay Features

About that. The FPS is set to 30 in the prototype so the constants will require tweaking for implementation to make the balance feel good. This will definitely need to be playtested to make sure that cells slow down at a reasonable rate after adding mass and speed up at a reasonable rate after adding flagella. The most relevant variables are force_per_flagella, organelle masses, global_top_speed, and the values that show up in the sigmoid function. The general trend of the curve is good but it needs fine tuning.

1 Like

To get the algorithm ready to use in the game it will need to work with variable timestep. So you should introduce a variable timepassed that will have the time in milliseconds since last frame and multiply the result with that to get a consistent experience when framerate differs.

@hhyyrylainen

Re health systems I’d like to fix this for now as is. Once we’ve tried it we’ll have more info about how it feels and we can talk about the relationship to compounds. I feel it’s quite a complicated question about double spending or taking away from reproduction etc.

I like the idea though, something like that could work well in the future.

With achievements that’s quite a big feature and it’s important to get it right. For now it might make more sense just to have a text box, like we do in the tutorial, to save implementation time.

I understand that you’re busy atm with the engine change. I continue to be amazed by the things you are doing. Thanks so much for all of it.

@Untrustedlife it would be awesome if you could work on some of this stuff. You’ve accomplished a lot recently and that’s been really cool to watch :slight_smile:

Just pushed a new version of the movement prototype with variable FPS.

3 Likes

I am currently still do not have access to my pc that is why I am not working on thrive ):

Hi all. Been busy recently and likely to be for a while longer, but should have time this weekend to help with things.

I seem to recall we’ve had quite a few discussions about this in the past. A similar system I preferred was having each vacuole specialised to store one compound. This has the separate storage bonus with the added advantage of allowing the player to have more control over their metabolism. Say a cell needs a lot of oxygen but no CO2. Having storage for both in every vacuole leads to a lot of wasted space and a lot more vacuoles.

Perhaps this could be combined with passive cytoplasm storage as you describe.

This will do for now. I’m not a huge fan of arbitrary health regeneration but I agree there needs to be some degree of separation between health and reproduction.

There is an alternative to the solution you proposed, and that’s to strip the starting cell of as many organelles and processes as possible. Give it just enough functionality to survive. Then complexity and depth are still present but instead of being thrown in at the deep end, the player can learn about each process as they progress.

This still irks me quite a bit with its artificial arbitrary-ness. I suppose it works as a placeholder. How would you make the player know their own mortality is tied to that of their species?

I may be biased here, but with the response to my run and tumble prototype, which creates organic-looking behaviour out of very simple (and realistic) rules, I’d like to propose this as a starting point for AI. Here’s the pseudo-code, which shows just how simple it is:

Run and Tumble
for each frame
    if (compound level this frame) >= (compound level last frame)
        move straight forward
    else
        rotate in random direction

Obviously it’s nowhere near a full AI system. It makes no allowance for different types of compounds or interactions with other cells, but I think it’s a good starting point providing it’s efficient enough. The reliance on frames should probably be changed to a more reliable time-measuring system.

Otherwise, all these ideas sound good. Make sure you update the GDD when you get the chance and ensure things stay consistent throughout the document.

Thanks for the feedback.

I’d like to be clear that I’m not proposing solutions in this thread, these are decisions which I’m making as Microbe Stage Design Lead. As you say we’ve discussed these things a lot. It’s time to take a step forward and this is how we are doing things for 0.4.0.

In terms of your other thoughts I think you’re totally right on a lot of points. I think everything you’ve picked out is a good thing to discuss as we move forwards, I’d suggest making a thread and making a pitch for how you think these systems should work.

For example Re health it is quite complicated if it’s at all related to compounds. Because if it takes compounds to heal then you can get stuck in a loop where you get wounded over and over, spend all your compounds healing and never get to reproduce. And with a pop penalty for death that could be quite annoying. @hhyyrylainen was suggesting healing if there are compounds in the cell and not using them. It’d be interesting to hear your thoughts on a good system for the future.

Re population I totally agree it’s important to move to a better system. For the player to understand what is happening a popup when they die should be sufficient.

Run and Tumble is cool and it’s great how realistic it is. Whoever is implementing the AI can definitely take it in to account.

2 Likes

I didn’t see any mention of prokaryotes?

Yeah. Firstly what you’ve done for prokaryotes so far is great so it’s really nice to have that.

Secondly I think things like letting the player play as a prokaryote are great because they add more content. However I think it’s wise to fix the foundations first, like health, reproduction, combat, movement etc, before working hard to add more content. If movement feels bad then it’s hard for people to appreciate the content we have.

1 Like

Adding bacteria conicides with other aspects, Eg to get them where we want we need to reenable certain main things Eg population system, engulfing which means adding bacteria is a proxy for reimplementing game features.(including the old bacteria system which was broken and never saw a release)

2 Likes

That list looks great. One question though, what’s the purpose of removing glucose as one of the requirements for reproduction?

Other than that I think this list of features will add a lot to the gameplay for the upcoming update.

1 Like

I think that it’s juat so compounds are more distinct.

I have started hitting parts of this list, we have individual compounds now and after I’m done with engulfing I’m moving up the health system, I also did some AI work and added chemoplasts (still waiting on the model for that)

1 Like

I remember writing this somewhere else but now can’t find it, so I guess I can write it again :slight_smile:

The relationship between glucose and reproduction is a bit complicated. What happens when you are low on glucose? If glucose is being used up by reproduction then it feels quite harsh. You may run out of gas at a critical moment as your cell uses the last of your fuel in an unintelligent way. I think this is maybe ok but doesn’t feel quite right.

One option is to have reproduction automatically turn off when glucose is low to preserve it however I worry this will push people into endless runs where they are always low on glucose and can never quite get enough to reproduce, which I’m not comfortable with.

Another is to offer a toggle for reproduction, however I think this has the same problem and I would worry about people turning it off and then forgetting and being frustrated when they realise later.

In conclusion I think it’s a good system to start with to say: to reproduce you need to find X ammonia and Y phosphate and then survive for some amount of time (I think a couple of minutes, something like that) and then you will definitely reproduce if you are not dead. I think that is clear, easy to understand and pretty fair on the player.

I am very happy if there is a desire to iterate on this after 0.4.0. Glucose in reproduction could be very reasonable and if people have ideas for the above problems I’d love to hear them.

1 Like

Should cells moving without flagella use atp, if so how much should it cost?

Yes I think they should and it should cost maybe half of running a flagella? I don’t mind too much, I don’t think it should be super expensive.

1 Like

Sounds fair to me, I dunno if we should wait til the changes to the control system before doing that.

What do you mean about changes to the control system? Do you mean using a+d to turn?

That’s something I’m not particularly keen on. If we’re going to try it out I think it makes sense to rebalance the movement first, and get it really nice and smooth with mouse + wasd and then see if we want to switch control schemes.

My concern with a+d to turn is that it means you always turn at a constant rate. Either that’s slow and you can make fine course corrections easily but doing a 180 takes ages, or it’s fast and spinning around is easy but making a little change is hard.

With the mouse what’s nice about it is that the rate at which you turn can be proportional to how far you have to turn, so doing a 180 can be quick and you can make smooth little adjustments when going in a straight line, I think that feels quite nice.

So I’m open to a different control scheme but I think what we have now will feel better.

2 Likes

I’m also leaning towards keeping the mouse control scheme for 0.4.0 to keep the number of new features that haven’t been tested yet down / the number of things to do down as properly switching microbes to use turning instead of target heading will need quite a lot of changes in many places.

2 Likes

I agree, I just didn’t want to mention that I wasn’t a big fan of it, what we have now is very easy to understand

1 Like

I wanted to put up a final note of thanks to everyone who has put effort into this patch. The game has moved forward hugely, the new organelles and backgrounds look great, the code cleanup has been awesome, I like the new camera thing and all the other stuff too numerous to fully list. Thanks to everyone.

Special thanks to @Untrustedlife who has done a vast amount of work on this patch, I really appreciate all the programming and art and gui stuff which has touched basically every part of the game. Also to @hhyyrylainen who at some points earlier in the year was working alone on the engine switch which was a gargantuan task. Thanks so much for doing that work as we wouldn’t be where we are now without it, the new engine is a huge step forward.

I think Thrive has a bright future because of all the great contributions you all have made. I’m humbled to be part of such a talented and dedicated team.

3 Likes