0.5.9 Release Canditate Testing

Found a bug: It seems like the AI struggle a lot to engulf smaller cells and food. Since you need to keep engulf mode on until the food starts digesting, the AI often stops engulfing way too early before they can even digest the prey/food

To reproduce this bug you can go into free build and stay as a single hex, then spawn a big enough enemy with the F6 cheat menu and let them engulf you. They will stop engulfing basically instantly

1 Like

My game couldnt handel the game 4 generations later after i went multicellular and there war 5 different cell colonies on my screen at once

Can confirm I experienced this bug too. If you go extinct in a patch and move to another (in the patch extinction window) the population in the patch you move into will go down to zero (Even if you had a million)

Hello! I’ve just finished playing through the new update, and I just want to say that it’s great! You can tell the whole team has put a lot of effort into making the new update. Anyway, here’s my observations/bug reports from my playthrough -

Summary
  • The new difficulty options/new game options are great! I played on Hard Mode, and it certainly made things far harder. The AI cells evolving far faster was great too, as I encountered a gigantic eukaryotic cell as a small prokaryote, which was something that never happened before.

  • In my opinion, the Spore cell easter egg appears way too often. Here are the times that the first five appeared -
    1st - 25 minutes
    2nd - 32 minutes
    3rd - 45 minutes
    4th - 59 minutes
    5th - 76 minutes
    After a while, they stopped appearing entirely, until they came back, just far less common.

  • Although better than before, many cells on screen does still cause significant lag, as well as a audio clicking bug. I turned down the max entities on screen mid-game, and for some reason this caused an explosion of new cells to appear. The entire screen was almost filled. When I got away from them though, cell spawn rates returned to normal.

  • Sometimes the Pause button would show a play button instead when I wasn’t paused (pausing and unpausing would fix the bug)

  • The game sometimes crashed when trying to load saves.

  • AI cells would often start engulfing smaller cells, but then stop engulfing them before they were actually being digested, allowing them to escape.

  • The new patch map is a little confusing at first to see what patches you can actually migrate to.

  • Games in the Multicellular Stage do not autosave.

  • Multicellular creatures sometimes have some of their cells appear inside other cells.

  • When editing individual cells in the Multicellular editor, the original cost of organelles is taken away instead of the new one (for example - example organelle costs 50MP, but in the Multicellular editor it costs 10MP, but 50MP is taken instead.)

  • When going into the Late Multicellular Editor, your organism becomes a mess of cells.

I hope this helps!

I got to zero population, didn’t go extinct, but was unable to increase my population because the game thought I was extinct, and spent several generations at 0 pop before quitting.

1 Like

I get the storage fill before the evolution meter,

I also can push viruses with my Philis

Suggested feature- add @thim 's modded feature, that cilia can drag other cells towards you in engulf mode, because cilia are underpowered right now, with no other uses.

This???
image

Had a crash during the early multicellular, was not doing anything in particular. Is there a dump somewhere I can upload?

By the way, this was my first playthrough this time, and no easter egg seen.

Same, idk if they added anything though


Mitachondria origin story

I think they planned for that already: Basic cilia attraction mechanism by Kasterisk · Pull Request #3480 · Revolutionary-Games/Thrive · GitHub

Ya, its cool how Thim alread y has it implemented though,

ctr c ctr v

To me, it feels like there isn’t enough phosphate on Normal settings. If dead cells would all drop at least some phosphate and ammonia (they were made with something, they can’t be completely empty!), it would be OK, even will make predation a viable source of resources.

Also, why not drop a cloud of extraneous resources when consume an organella? For example, I usually have more ammonia that I need, and when I choose to engulf anything, the resources are lost to the world. It would be nice to leave anything extraneous behind as a cloud.

EDIT: About dropping a cloud – just (after 6 hours xD) saw it happen to iron, but never to ammonia, even when I was full of it.

3 Likes

Thermosynthase seems to produce less ATP than indicated in the editor prediction?

Haven’t reached macroscopic prototype yet due to crashes in multicellular (though I think mostly because of too many cells).

As a side note, it would be nice to have an in-game explanation on how speed is calculated, especially for multicellular organisms.

In the early Multicellular stage, I am not able to load previous saves in the environment. The same happens in the microbe stage environment whenever I am in a cell colony:

Error Loading - An exception happened while loading the save data exception: Newtonsoft.Json.JsonSerializationException: Could not create an instance of type Species. Type is an interface or abstract class and cannot be instantiated. Path ‘MicrobeStage.DynamicEntities[72].Species.IsBacteria’, line 1, position 9027015.
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateNewObject (Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract objectContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, Newtonsoft.Json.Serialization.JsonProperty containerProperty, System.String id, System.Boolean& createdFromNonDefaultCreator) [0x000b9] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00148] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000db] in :0
at Newtonsoft.Json.Serialization.JsonSerializerProxy.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00008] in :0
at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in :0
at InProgressObjectDeserialization.ReadNextProperty (System.Boolean ignoreNotConsumed) [0x001a5] in :0
at BaseThriveConverter.ReadJson (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Object existingValue, Newtonsoft.Json.JsonSerializer serializer) [0x00090] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.DeserializeConvertable (Newtonsoft.Json.JsonConverter converter, Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Object existingValue) [0x00055] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList (System.Collections.IList list, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, System.String id) [0x00173] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.Object existingValue, System.String id) [0x000dc] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0007f] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000db] in :0
at Newtonsoft.Json.Serialization.JsonSerializerProxy.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00008] in :0
at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in :0
at InProgressObjectDeserialization.ReadNextProperty (System.Boolean ignoreNotConsumed) [0x001a5] in :0
at BaseThriveConverter.ReadJson (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Object existingValue, Newtonsoft.Json.JsonSerializer serializer) [0x00090] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.DeserializeConvertable (Newtonsoft.Json.JsonConverter converter, Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Object existingValue) [0x00055] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) [0x00052] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00280] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x00161] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in :0
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000db] in :0
at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00054] in :0
at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in :0
at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in :0
at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in :0
at ThriveJsonConverter+<>c__DisplayClass10_01[T].<DeserializeObject>b__0 (Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <d36b01e60e134fad865b3f0fc9dba8ba>:0 at ThriveJsonConverter.PerformWithSettings[T] (System.Func2[T,TResult] func) [0x00068] in :0
at ThriveJsonConverter.PerformWithSettings[T] (System.Func`2[T,TResult] func) [0x000a5] in :0
at ThriveJsonConverter.DeserializeObject[T] (System.String json) [0x0000d] in :0
at Save.LoadFromFile (System.String file, System.Boolean info, System.Boolean save, System.Boolean screenshot, System.Action readFinished) [0x000a6] in :0
at Save.LoadFromFile (System.String saveName, System.Action readFinished) [0x00006] in :0
at InProgressLoad.Step () [0x00082] in :0

Do you mind putting that in a summery? Aka hide details

Summary

Also

Its here!

Trying out the macroscopic editor now (I know, early prototype, so not important), metaballs seem to be randomly jumping around whenever I move one, though it seems to be the same “cells” that were moving on their own in the early multicellular editor.

This made it impossible to exit the editor because of disconnected metaballs (I guess their real locations are different from what was displayed) until I eventually deleted a bunch, then it worked. And I was greeted by the sun-lit featureless grey plain. I know this is just a prototype so I don’t mind, but you could consider throwing up a message stating that is the end of the prototype just in case.

Using metaballs to build an organism seems a bit too loose and structureless for now, but I look forward to seeing how it develops.

As to the easter egg: I didn’t see it for three playthroughs, then kept seeing it later on every time. So, it’s about as consistent as the rest of the spawn system.


Early version looks simple, yet promising

I think you need to change it from cells to tissues, but you have already planned that so I don’t mind.

thrive keeps crashing before i get to macroscopic

Enable cheats, in options f6

I was playing with LAWK-only and oxytoxysome and toxin vacuoles were available. Shouldn’t they be disabled as oxytoxy does not exist?


I was thinking: maybe disable the music only for the audio page, otherwise just make it a little softer?

I mean you can lower the art gallery’s bg music volume by going to the settings. By the way doesn’t the background music pauses by itself whenever you listen to one of the audio items?