Microscopic stage development after 1.xx release

I have never said this should be done by anyone I only think that’s an interesting path or prepective to explore ,and I believe the responsibility of exploring things I want to explore is on me and me only,it’s just that I want a clear process of adding them since it looks like it will take a long time and by the time I am ready to add them the game might have been developed to late staged

So you are planning to code in such niche features, correct?

1 Like

At least the concentration based absorption is totally with in my list of must do, since it gives some credit and realism to auto-absorbtion of phosphore and nitrogen

So like a modifier to passive reproduction and passive compound gathering?

1 Like

Yup, and some modification to the sensing organelle , it will now be responsible for access to the concentration of each compound, without them you will not know howmuch the concentration in you neighborhood

So chemoreceptor unlocking the cursor-concentration-checking ability? Will you need to dedicate a chemoreceptor to this role or will any chemoreceptor give this ability?

1 Like

Well, I still haven’t learned C# and Godot, and this is ajust a vision, my first contribution will undoubtedly be the documentation of the thrive code base, I think I 'll put all my efforts into making the most apprehensive and useful documentation in my life fe :face_with_monocle:

How long do you think will the documentation process take?

1 Like

A very good question!, first I need to learn C# and Godot, then I need to read all the code base and identify each variable and associates to it it’s path(where to find it) and role ( what it do ) then make connections between those variables in a way the just by reading one you’ll know what it requires to function and what it’s function will change to other variables, so in the future when you try to change one of the variables you’ll know the consequences,
All in all, I think I need 2 months to learn C# and Godot to passable levels then maybe a month to read the code and make the general layout , the most problematic thing is to understand the role of each variable that might take more time , and all this could only start in June( since now I am studying to pass a national exam)

1 Like

Right, so you should have completed the project before 1.0.0 (which is placed in Q3 now I think?).

1 Like

I don’t know when the 1.00 will come but I think this summer is all about documenting the code base ,maybe even some of September and November, then with all the understanding of the code base I don’t think implementing concentration based absorption of ressources will be a hard thing :construction_worker:

1 Like

Don’t judge the difficulty needed to code in a feature by it’s cover…

1 Like

Everything is relative, hard and easy is relative as well , compared to understanding the mechanism of the hole thrive code base and documenting it throughfully, I think tweaking some things here and there ar quite easy

1 Like

Right, but don’t be surprised if this change creates many bugs…

1 Like

That’s why a documentation is mandatory, :joy:

How much do you think it’ll decrease the amount of such bugs arising?

The same applies right now: minor changes, bug fixes, and general improvements are accepted as long as code quality is good and there’s no regressions found in testing (we don’t have a dedicated tester so more things than I’d like slip through).

And anything bigger than that needs first support from the development team before it is accepted. Ideas clearly outside the scope of Thrive, like magic, will be flat out rejected. And some changes may require to be hidden behind the LAWK toggle. Also just going and modifying existing systems as if you personally think they should be done in a different way, are the hardest changes to get in. Because you need to get support from the development team to switch us over to accepting your viewpoint as the better one. This is very difficult as we need to balance new player experience, UX and complexity in the game. And whereas one person requesting changing some system might like the new system much better, the playerbase in general might dislike that change. Which is something we developers also need to try to minimize (player dissatisfaction from changed features).

So there is not going to be any change to the criteria for changes to be accepted to the microbe stage even after we start focusing on multicellular, though the requirement to the testing step will be added that any change doesn’t impact multicellular stage. Or if it does then the change is carefully reviewed to make sure that the multicellular change is at least neutral if not outright positive.


I think this is honestly impossible. Thrive is a big enough codebase that it is not possible to go through each variable and document where it is used and what effects it has. Documenting all the tweak variables would be possible (in Constants.cs) but even that would be a huge undertaking.

The way you are supposed to work with the codebase is to load it up in your C# IDE (I use Rider) and use search everywhere to find variables and files related to what you want to change. And then when you have candidate variables you use the IDE functions to find the places where the variable is read and written to and based on that information decide if you’ve found the right variable or if you need to keep looking.

We have more work going into the Thrive code each week, so to keep your documentation of all things up to date, you’d need to update it basically each week.

This is why the only possible documentation outside an IDE for Thrive would be one autogenerated one from the C# XML comments.

4 Likes

Well I completely agree the fact that’s it’s mostly impossible to begin with and even harder to maintain, but I want to try it , if it works it works , if not then at least I’ll have a good idea about the code in his entirety and that will help me in the future become a good developer.but in general thrive is place of dreamers so there is no problem :+1:

1 Like

Good luck is all I can say. I do hope you will manage to achieve your goals with this project, but as Hhyyrylainen already said, it probably won’t get finished.

1 Like