0.6.4 Release Candidate Testing

We had a beta build last week, and quite expectedly it had a bunch of problems. We’ve spent the last week fixing as many of them as possible. Right now there shouldn’t be any blocker issues on releasing 0.6.4 as such it is scheduled for next week. For now here is a public test build to just to make sure that the release will be good enough quality as it is always the case that random people find bugs we developers have not seen at all.

I’ll note that this build has at least one pretty serious bug: indigestible cells are not ejected from engulfers. If you as a player get engulfed by something that can’t digest you, that may softlock the game. But the game should no longer crash at all, and early multicellular (as well as the later prototypes) is now functional again. There will hopefully still be a rotation rate rebalance completed next week before the full 0.6.4 release.

This build is available through the Thrive launcher as the latest beta (after enabling the beta versions in the launcher options to see them) or the beta version on Steam and itch.

Edit: here’s the major changes since the beta:

  • New feature: mucilage can be selected for vacuole storage specialization
  • Reimplemented early multicellular, game should be playable again all the way through the prototypes
  • Buffed base movement, especially for larger cells, set slightly even higher microbe physics damping
  • Massively buffed mucilage jet speed
  • Reimplemented organelle render order to get things to look more like they should, especially when engulfing
  • Reimplemented pulling cilia so that it no longer crashes the game, it’s just a bit unbalanced
  • Various colony damage and engulfing fixes
  • Fixed saving and loading with cell colonies
  • Fixed pilus damage not working at all
  • Fixed engulf size not re-applying after cell grew or was edited
  • Fixed multiple engulfing related bugs (still at least one bug left with indigestible things getting stuck inside)
  • Fixed engulf progress indicator going up to 200% also fixed “devoured” text not appearing
  • Fixed a crash with certain entity types existing and not having expected materials
  • Fixed immediate crash when going to the ice shelf patch
  • Fixed various other bugs and crashes
  • Added submodule info to packaged source code
  • Updated translations

Please share any feedback below you have about the new build. Especially if you played the beta we’d greatly appreciate people checking if previously seen issues are now gone.

2 Likes

i try to bind to a cell it always binds to the front of my cell for some reason. it did it on 2 out of 2 saves i’ve played so far with this version.

and, of course, the problem stopped and turned into a new problem when i said something about it. now the cells are binding to the right side but not in the spot they were touching.


something that’s probably not a bug but doesn’t make sense is having an energy cost for movement when your speed is at 0

The engulfing also for some reason starts the pulling in animation from the wrong side of the cell. I suspect that is a related thing for the colony binding as that basically uses the same logic to find the touched point of two membranes.

2 Likes

I will update if I find something still broken.

Though it seems like membrane colour is not working correctly:

Pretty minor issue.

Still got engulfed by a cell smaller than me:

Summary

Notably, I was trying to engulf that other cell, but it happened the other way around.
Also, I didn’t really die upon losing all my health, but instead was teleported somewhere else and am now an immobile ghost:

Summary

Did you just edit your membrane colour and see a previous member of your species? Editing your species has always only applied the changes to your cell and any members of your species that spawn after the edit. It doesn’t affect any existing cells, they just keep on being what they were.

It is possible that that cell was partially grown making it have more hexes than you. If you had made a save at that exact point you were engulfed it would be possible to look at the save data to determine if there is still a bug in the size update.

Also a save from this state would be interesting to look at what’s going on. Did using the suicide button resolve the problem? I saw that bug happen myself once and that fixed it. It only happened in context of being stuck inside an engulfer that couldn’t eject my cell due to the bug related to that.

Of course, uploaded the saves here: Deleted

Strangely, it’s just my own cell that is missing the colour, and this lasts across generations.

Well, I uploaded my save so hopefully it’s useful. Though if my base size is larger, surely they can’t grow enough to overcome the minimum size needed to engulf me? That threshold seems very high now, can hardly ever engulf anything myself.

Also have a save, so you can see. The suicide button did not work for me.

Different bug: unbinding a colony makes the other members disappear sometimes: Deleted

PS: removing the cilia pulling upgrade pays you +mp, I don’t think it’s supposed to do that.

And just had a crash in the early multicellular: Thrive has crashed at 2023-12-03T10:48:53.1856942Z (crash happened immediately b - Pastebin.com

I was using some cheats to skip through, not sure if related.

1 Like

I just tested it and yeah, that’s a problem. Seems like the new player colour only applies to the organelles and not the membrane.

I checked the save file and, here’s what I found:

You cell is in the base size (i.e. not grown at all):

              "HexCount": 22,
              "BaseEngulfSize": 22.0,
              "HostileEngulfer": "Entity 3:141.10",

And your engulfer is just barely big enough to engulf you:

            {
              "$type": "Components.Engulfer, Thrive",
              "EngulfedObjects": [
                "Entity 3:1.0"
              ],
              "ExpelledObjects": null,
              "EngulfingSize": 36.0,
              "UsedIngestionCapacity": 17.8863888,
              "EngulfStorageSize": 36.0
            },
              "HexCount": 36,

I also counted the organelles in the species for that engulfer, which is 36. So it is just the base size of that species, and it is big enough to engulf something with just 22 hexes (22*1.5 < 36)

So no bug here.

If you grew just 3-4 organelles (I’m unsure if the code uses < or <= check) then that cell couldn’t engulf you anymore.

I can confirm that as well.

Looking at the save I at least see that it’s pretty weird to have negative digestion progress:

              "AdditionalEngulfableCompounds": {
                "ammonia": 0.0,
                "phosphates": 0.0,
                "glucose": -2.62233114
              },
              "BulkTransport": null,
              "BaseEngulfSize": 22.0,
              "DigestedAmount": -0.0166606326,

It looks like the entity is stuck as for some reason the death is processed but the death animation is not playing and the timed despawn was not started.

I need to investigate this a bit more, but I can add a workaround to force despawn the player after 10 seconds of pressing the suicide button always.

I suspect that the root cause has something to do with the player dying while engulfed, as that skips much of the normal dying logic, and then being expelled later which partially relies on the death mechanics if the cell was too digested.

Can you describe what you saw? I tried a few times (with normal entity limit setting) but saw nothing except the unbound cells just being pushed quite fast away by the physics.

That was already the case previously. There’s an existing open issue:

Relevant log part:

ERROR: ------------ Begin of Unhandled Exception Log ------------
ERROR: The following exception prevented the game from running:
ERROR: 
ERROR: System.ArgumentException: Cannot remove a colony member who isn't actually a member
ERROR: 
ERROR:   at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x00058] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x001f2] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x001f2] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at Systems.ColonyStatsUpdateSystem.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x000a0] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at MicrobeWorldSimulation.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x00037] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at WorldSimulation.PerformEntityDestroy (DefaultEcs.Entity entity) [0x0002b] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at WorldSimulation.ProcessDestroyQueue () [0x0001f] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at WorldSimulation.ProcessLogic (System.Single delta) [0x000a4] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at WorldSimulation.ProcessAll (System.Single delta) [0x00000] in <be4908fc4fd44c9b9d6683434ba91301>:0 
ERROR: 
ERROR:   at MicrobeStage._Process (System.Single delta) [0x00083] in <be4908fc4fd44c9b9d6683434ba91301>:0 

So it looks like the cleanup code to remove entities on death from a cell colony, crashed because it couldn’t remove the colony member as it was no longer marked as a member. There is probably a rare edge case with a certain colony structure in the unbind method (as it needs to recursively remove all dependent members from the colony).

If you had any info on what kind of colony structure you had at the time (preferably a save where pressing the unbind button causes an instant crash) that would help a lot.

1 Like

Sorry, I must have misread the size when checking the species. The cell that engulfed me was visually much smaller than me, but that’s a more general problem with scaling and not urgent.

Hmm, sometimes when I unbound they “teleport” to random places nearby, sometimes they seem to disappear completely. Maybe they got launched so fast I couldn’t see them? This seems to happen more if I stay in the colony for longer.

Sorry, this was actually in the early multicellular, and I did not realize yet it was not autosaving. I will see if I can recreate it.

2 Likes

There could be a problem with accumulating force on the cells, but there should already be a fix for that.

You could try if the problem is consistent after making a save, i.e. the state is persistent and not a random incorrect data that is only temporary and cleared if the program is restarted.

Edit: I realized that I didn’t re-apply the world positions to the physics positions of cells after they leave colonies or are ejected from engulfment. This could very well be the cause of me not seeing the problem when loading a save. I’ve made that fix here:

2 Likes

Hello. I’ve been out of the loop for a while, so apologies if this feedback is a bit late. Also for any typos - my keyboard is a bit broken.

It seems to take much longer to load an image for a species in the Thriveopedia, now, at least the first time the image is shown.

I’ve had a huge number of sound issues while in game. The music and ambience make continual loud pops. It’s very unpleasant to listen to. It doesn’t affect the editor or menus. When I pause, the issues pretty-much stop. I had to mute both the music and ambience. This is on Ubuntu, using ALSA.

Engulfing an object for the first time (following the tutorial) did a zoom in/out effect. When I engulfed the object, a green oval grew out from me until it spread beyond the edges of the screen. And when the object was fully ingested, the same thing happened in reverse (the same oval shrank towards me).

I feel like I’m playing on ‘drift mode’. Everything slides around a lot. This makes it very hard to engulf organelles, as I have to chase after each one. The sliding lessens when the cell size increases, but sometimes, things end up moving bizarrely fast when hit. At one point, a species came belgiumzing onto the screen, much faster than anything could normally move, only stopping when hitting an iron chunk. [False positive for the language filter there]

At one point, the population graph appeared with the points separate from the lines.

Pili can often hit cells which are out of reach. When I’m jousting with a smaller cell with much smaller pili, the smaller cell can often hit me with its pilus even when it’s out of reach. It seems like the pilus hitboxes are the wrong size.

Engulfed objects often appear on the opposite side from where they were engulfed.

When binding with other members of my species, they often teleport to another position when joining. I had 3 appear at the same position, overlapped.

The game keeps crashing during multicell.

From the log files:

Removed 123 spawner.
Jukebox now playing from: EarlyMulticellularStage
Skip ejecting engulfable on engulfer destroy as it no longer has engulfable component
Jukebox: starting track: res://assets/sounds/multicellular-theme-3.ogg position: 0
Jukebox: starting track: res://assets/sounds/soundeffects/microbe-ambience.ogg position: 0
------------ Begin of Unhandled Exception Log ------------
The following exception prevented the game from running:

System.ArgumentException: Cannot remove a colony member who isn’t actually a member
at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x00058] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x001f2] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at Systems.ColonyStatsUpdateSystem.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x000a0] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at MicrobeWorldSimulation.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x00037] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.PerformEntityDestroy (DefaultEcs.Entity entity) [0x0002b] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessDestroyQueue () [0x0001f] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessLogic (System.Single delta) [0x000a4] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessAll (System.Single delta) [0x00000] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at MicrobeStage._Process (System.Single delta) [0x00083] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0

Please provide us with this log, thank you.
------------ End of Unhandled Exception Log ------------

Another crash in multicell:

Jukebox: starting track: res://assets/sounds/microbe-theme-4.ogg position: 0
Immediately ejecting engulfable that has no animation properties
------------ Begin of Unhandled Exception Log ------------
The following exception prevented the game from running:

System.ArgumentException: Cannot remove a colony member who isn’t actually a member
at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x00058] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x001f2] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at Systems.ColonyStatsUpdateSystem.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x000a0] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at MicrobeWorldSimulation.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x00037] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.PerformEntityDestroy (DefaultEcs.Entity entity) [0x0002b] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessDestroyQueue () [0x0001f] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessLogic (System.Single delta) [0x000a4] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessAll (System.Single delta) [0x00000] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at MicrobeStage._Process (System.Single delta) [0x00083] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0

Please provide us with this log, thank you.
------------ End of Unhandled Exception Log ------------

And another:

save finished, success: True message: Saving succeeded elapsed: 00:00:05.4117035
Jukebox: starting track: res://assets/sounds/microbe-theme-4.ogg position: 0
Immediately ejecting engulfable that has no animation properties
------------ Begin of Unhandled Exception Log ------------
The following exception prevented the game from running:

System.ArgumentException: Cannot remove a colony member who isn’t actually a member
at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x00058] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at Components.MicrobeColonyHelpers.RemoveFromColony (Components.MicrobeColony& colony, DefaultEcs.Entity& colonyEntity, DefaultEcs.Entity removedMember, DefaultEcs.Command.EntityCommandRecorder recorder) [0x001f2] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at Systems.ColonyStatsUpdateSystem.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x000a0] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at MicrobeWorldSimulation.OnEntityDestroyed (DefaultEcs.Entity& entity) [0x00037] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.PerformEntityDestroy (DefaultEcs.Entity entity) [0x0002b] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessDestroyQueue () [0x0001f] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessLogic (System.Single delta) [0x000a4] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at WorldSimulation.ProcessAll (System.Single delta) [0x00000] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0
at MicrobeStage._Process (System.Single delta) [0x00083] in <3965df6e2a914f6593b0fe9ec8bbb23f>:0

Please provide us with this log, thank you.
------------ End of Unhandled Exception Log ------------

2 Likes

The feedback is still welcome, but with just a day left until the release there isn’t much that can be done anymore.

The photostudio system now needs to setup a new microbe visuals only simulation, so I’ve noticed the same but to me it feels like after that initial image load the subsequent image generations are much faster than before.

Probably a system-Godot issue. I’m on pipewire and haven’t had any sound issues with the game for probably two years at this point.

This is a pretty rare bug where the engulf visual scaling for some reason decides to create an animation that has an extremely large scale in it.

I think I finally today got that fixed (after suddenly getting an idea about what might be wrong yesterday morning):

Tweaking the new physics engine to behave exactly the same as before has not been easy. I’ve basically cranked the microbe physics damping already up to 0.99, I don’t know if everything will go wrong if it is set to 1 (or if it is even possible to go higher). I’m pretty happy with the current result of there being just a tad more drift than previously. Steering problems are more likely about the slower rotation rate than before, I’d say. This week we got a rotation rate rebalance so small-ish cells turn again much faster.

There were basically no GUI changes this release, so this shouldn’t be able to be a new bug.

There was a small physics gap (bottom right in the image):

Accidentally put the wrong image

in the prokaryotes pilus attach position. I adjusted that to make it touch the main body. There’s something a bit weird there so I wasn’t fully able to fix it but I now think it is more balanced now without being much too short or too long compared to the visuals. It still isn’t exact.

Yeah, there’s some vector math bug where the position seems almost flipped to the wrong side: https://github.com/orgs/Revolutionary-Games/projects/5/views/1?pane=issue&itemId=45925049

I think this has the same bug as the engulfing as this uses very similar math (this is also on the board).

Do you have any images / saves about what kind of cell colony you had? This is the third report about this so I’d really appreciate some way for me to try to trigger the crash on my computer so that I can investigate it.

The root cause seems an edge case in the colony destroy method with certain colony shape / configuration.

1 Like

Here’ the save file:

And here’s a pic:
Colony

That’s surprising. I don’t think I saw this happen before.

I got the crash by letting the game run for a while after loading that save.

kuva

and of course it is somehow possible for a cell to be its own parent in the colony structure graph, somehow. Why didn’t I consider that possibility.

Update: I found the root cause, I think, which caused the colony parent graph to be filled with incorrect data:

1 Like

This topic was automatically closed after 2 days. New replies are no longer allowed.