github Revolutionary-Games/Thrive v0.6.4
Thrive 0.6.4

latest releases: v0.6.6, v0.6.5, v0.6.4.1...
4 months ago

This release focused on the massive refactoring of the gameplay code to an ECS architecture and a different physics engine. That took up the vast majority of the time, and there's still probably new bugs caused by those changes in this release. Still some potential performance improvements couldn't be finished in time, but will be looked at in the future to hopefully get even a bit more performance than these good performance gains. There were a few new features developed by contributors for this release.

Read more in our devblog: https://revolutionarygamesstudio.com/devblog-39-a-foundation-for-tomorrow/

Installation

For easiest installation, download the latest version of the launcher:
https://github.com/Revolutionary-Games/Thrive-Launcher/releases/

Alternatively, download the relevant file below for manual installation.

Patch Notes

  • Refactored the entire microbe gameplay code to use an Entity Component System (ECS) architecture and a different physics engine (Jolt). This took up the vast majority of the time spent on this release. As a result of this many things in the game will feel slightly different and there will definitely be new bugs that have slipped past us. We will attempt to quickly fix any new bugs introduced with this change.
  • The game performance is now 20-100% better than before thanks to the ECS and physics rework (different benchmark parts have different improvements, and different gameplay conditions also have different performance gains)
  • Improved auto-evo performance by about 50%
  • Added a native C++ library for Thrive that has the physics engine integration for now but we can in the future move computation heavy parts of the game there that might benefit performance
  • Added two new context specific microbe tracks that can play instead of the normal microbe ambiance when in those specific patch types
  • Added Thriveopedia pages for each of the organelles currently in the game
  • Fixed 2 very often reported multicellular crashes: InvalidOperationException: Sequence contains no matching element and ArgumentException: OrganelleTemplate can't be placed at this location
  • When low performance is detected in the menu the game will now prompt the player to disable the 3D menu backgrounds
  • Improved the visuals of the organism statistics panel and added / updated related tooltip icons as well
  • Chemoreceptor can now be upgraded to detect cells of a certain species
  • Added vacuole upgrade to specialize it for a certain compound. Specialized vacuole stores double the normal amount of the specialized compound but provides no storage for other compounds.
  • The pilus now applies damage based on the physics penetration amount instead of always a fixed value. Faster collisions result now in more physical damage.
  • The pilus can now be upgraded to an injectisome to switch the damage to be toxic (instead of physical) and also to apply the full damage no matter how light the hit is
  • Microbes now use the physics engine to turn which should result in reduced rotation related bugs or slight issues
  • Microbe physics shapes are now a single convex body which performs better and it much more closely matches the visual size of the membrane
  • Microbe colony physics shape is now a single combined body. This should fix rare bugs with pili detaching or toxins hitting self when firing them.
  • Multicellular colonies now use absolute positioning of members set by the editor. This isn't perfect (leaves gaps) but the problem with cells growing at the wrong positions randomly should be gone now.
  • Membrane data generation now happens in a background thread to reduce stuttering happening while cells spawn
  • Added a tutorial for negative ATP balance
  • The AI will now most of the time not try to engulf something it cannot digest
  • The AI will now remember what it was doing before a save thanks to the component data being easier to load fully intact
  • Added 3D panorama backgrounds for various patch types for the late multicellular underwater part. These were completed a while ago but were never accessible in game until now.
  • There's now a basic page name search in the Thriveopedia
  • Improved initial compound handling for multicellular colonies
  • There's now a tutorial for the become multicellular button as many players seemed to not realize it was a button
  • Duplicating a cell type now selects it in the early multicellular editor
  • Becoming multicellular now has a timeline entry for permanent record when it happened
  • Added early multicellular freebuild mode
  • Organelle chunks that are dropped now stop playing animations (for example flagellum swim animation)
  • Fixed the most often reported crash, which was likely due to Godot integration with Bullet physics, by switching physics engines
  • Fixed subshape out of range errors from physics also thanks to entirely redoing the gameplay physics
  • Fixed the osmoregulation editor tooltips not updating based on the difficulty and current membrane
  • Fixed the AI shooting too early at a target it wasn't pointing at yet due to rotation no longer being almost instant
  • Fixed bug with glucose reduction showing up sometimes as NaN
  • Fixed the global timeline not showing populations correctly
  • Fixed a bug with incorrect resulting MP in early multicellular from incorrectly calculated actions on separate cell types
  • Fixed saving bug with ObjectDisposedException with HostileEngulfer
  • Fixed an exploit with deleting and duplicating cell types giving infinite MP
  • Fixed a crash when double clicking on organelle move
  • Fixed organelle popup menu not being tall enough with certain languages selected
  • Fixed symmetry trying to place multiple unique organelles
  • Fixed a crash when loading a save while load was already in progress (the new load is now prevented until the previous save/load operation completes)
  • Fixed the auto-evo exploring tool map not panning to show the selected patch initially
  • Fixed keyboard navigation in input options
  • Added one more fix (the 4th) now against accidental cannibalism (when turning multicellular)
  • Added multithreading to microbe growth, made easier thanks to the ECS architecture
  • Improved externally positioned organelles to use much less CPU time
  • Various disposed object exceptions should no longer be possible to happen with the gameplay no longer using Godot Nodes to implement it
  • Player cell related change callbacks now use invoke to trigger to reduce the chance of a rare bug triggering with them
  • Failure to delete a save should now give a popup warning about the error
  • Art gallery slideshow now works for models as well as images
  • Added a new separate icon for oxytoxisome to no longer use the toxin vacuole icon
  • Added a new icon for osmoregulation
  • Photostudio is now slightly faster at creating images of cells
  • Switched the early multicellular editor to use images of cells instead of cell objects for showing the body plan. This improves the performance a ton when there were large body plans being edited.
  • Tweaked the colour of the editor confirm button warning badge to make it more consistent with the other GUI
  • Fixed some situations where the editor confirm button warning got stuck on
  • Added new cheat in the microbe cheat menu to control the current time of day
  • Improved the handling of creating organelle upgrade actions / changes in the editor
  • The GUI no longer grabs focus during intro video to reduce chance of accidentally interacting with the menu while the video is playing
  • Fixed art gallery filter categories not reacting to language change
  • Species colour not applying to all organelles problem should now be fixed due to the component architecture where all organelles should read the consistent colour values that are copied
  • Organelle graphics are now slightly more colourful and pop out against the membrane more
  • Some microbe colony related corner cases are no longer relevant, but there's undoubtedly new bugs still left to fix with the newly redone system
  • Steam: fixed username display not reacting to language change
  • Steam: fixed bug with displaying library licenses
  • Split microbe HUD to its own scene to have better organization of the microbe stage
  • Moved enzyme descriptions to our JSON files to no longer have hardcoded descriptions in the code per enzyme type
  • Improved internal organelle position code to use read only data references when the data should not be modified. Same improvement was also made to some simulation parmeters data that was also returned as modifiable objects.
  • Git submodule info (current commits) is now included when packaging the game
  • Created a system to distribute precompiled native libraries for Thrive to more easily setup the new version for partial development
  • Updated code checking tools version
  • Updated YamlDotNet from 13.1.1 to 13.7.1
  • Updated Microsoft.CodeAnalysis.CSharp from 4.6.0 to 4.7.0
  • Updated AngleSharp from 1.0.6 to 1.0.7
  • Added new languages: Bengalian, Belarussian, and Macedonian
  • Updated translations

Don't miss a new Thrive release

NewReleases is sending notifications on new releases.