Evolution algorithm development

I am new to C# and game engines but I have some experience in python and quite the experience in evolution algorithm, so I attempted to understand the current code source but got Lost , so I want some guidance towards the right place to find the current code of EA(evolution algorithm)

4 Likes

The evolution algorithm of Thrive is called “autoevo” or “auto-evo” if that helps.

1 Like

I can point you to line 703 of GameWorld, this is one place where auto-evo get’s called. Thrive/src/general/base_stage/EditorBase.cs at master · Revolutionary-Games/Thrive · GitHub
I recommend exploring stuff with some IDE, because usually you can right click method call and you can then go to method implementation or all method calls.

3 Likes

What does “IDE” stand for?

1 Like

Integrated Development Environment.

3 Likes

@handy As a quick summary of all core concepts of auto-evo, this document is a must read:

While it’s possible to navigate from here to the code you need to see. I think a better starting point is looking specifically at the files in the auto-evo folder:

And while just randomly checking things starting from the top level will eventually work, I would also recommend using an IDE and starting here from the population number calculation part and jumping to the called methods to start to get into the parts of the auto-evo system:

The other key part is then the miche tree generation and the selection pressures that are on the miche tree nodes.

4 Likes

So, handy, have you managed to understand the auto-evo algorithm yet? You didn’t ask us for any more clues, so I’d guess you didn’t stumble upon any more major problems…

1 Like

Rather then not stumbling into any major problem , I would rather define my current stat as stumbling into thrive , I am at a critical year in my education (I have an international Exam at the end of the year), so I am obliged to focus on my studies, never the less, I am trying to read the documents mentioned in the doc repertory, I might as well try to understand game engines in the summer holidays, moreover I am a perfectionist guy so I might as well understand everything there is to understand about the game before attempting my first contribution, anyway since I am quite busy{studying:( }, I would be very happy if you always send me notification about the current discussion and issues of the thrive community. Because I really want to participate in some of the theoratical discussion about auto-evo and the realistic aspect of the game

3 Likes

You should focus on your Life before Thrive. If you can’t find time to contribute something in, there surely should be somebody else to do that. It’s just that it makes Thrive’s development take longer…

2 Likes

Well taking long time is not a problem,I mean as long as the game is attracting more and more attention and as long as this attention is converted into a contribution things will go smoothly, that’s why I am into long term contribution, if I start learning game engines then Godot specifically, then honing my skills in C#, when I aquire the needed skills it will be easier to contribute actively rather than just talking and day dreaming

6 Likes

Agreed. That is the type of developers we need.

3 Likes