this idea came to me when I was a video where a developer is playing thrive, but why not a developer is developing thrive?
my poiny was that many newcommers(like me) might want to become a developer but get intimdated by how big thrive repistory has become,
so if there is a video or a youtube list/refference on how to get started with thrive developement where/what are the things that they should know,
how to make little changes and start they own contributions .
(note:I am not that old here so it might already be such things and it’s just my ignorance )
I think the “let’s code thrive” (if that’s what they were called) streams on the rg channel did somewhat do just that but they got discontinued years ago now.
I did one “let’s code Thrive” stream some years ago. I’m open to doing another stream of that type, but I would just need to find the time where I could work on some low pressure tasks for the stream. Right now all of my tasks are totally massive or very hard to pinpoint what needs doing. So maybe after 1.0.0 is bugfixed or even released I could do such a thing if there was a suitable time where I can be working on people would be there to watch.
Just a link to those ancient videos , please I’ll try to see them this week and…. Make a plan forward
It should be somewhere on the RG channel as I said.
It was surprisingly easy to find it even with Youtube’s search:
I just searched for “revolutionary games lets’ code thrive”
I am not trying to be mean but bro …… 2.4 hour video is too intimidating ….and while let’s code togother is the name …..you are supposed to like help them get a general idea about….the assets,code structure.
my idea is like 15minute videos where you try to explore thrive ….repistory, point out what you want to do and what is the files/assets that you need to change to achieve those goals and finnally where you could find those files and similar files in the repistory.
the video without those explanation is like watching a teacher writing the answers on the table with out knowing why he have done those things or what was he truly doing.
-like if I am to suggest a youtube series about what you should do as a thrive developer then you’ll start with somthing like this:
1-what is the feature you are going to impliment/regulate
2-clear description of what are the assets/files/code that need to be changed and why.
3-navigate to those files while explaining why they are where they are and what to expect to find in each repistory/folder
4-opnning the code/json file : explaining some of the code inside and what is the general purpose of that file.
5-getting to the part that need fixing/adding some code or data:explaining why we need this code/data in this specific file and not in another file
6-seeing the effects of those changes in action.
-this is my…..hallow impression on the hole video idea,probably needs some one dedicated to this and probably for the best.
my note : if thrive is expecting more fame in the future, making ressources to integreate more people into the project is ….vital for proper utilization of the human ressources which is coming our way.
I mean Hhyyrylainen could adapt this plan for the next codestream if he wants to. But they might also not want to “waste their time”.
Also, you don’t have to watch it all at once. Just like studying, do it piecewise.
I think handy also made a point that the first codestream didn’t seem to have really much explaining going on behind what is being done and why for whoever would wish to code thrive for themself.
Well, @hhyyrylainen , is not the only one who is capable of this in the development team, anyone who has enough know how could share with the community his knowledge, so thrive would have enough educational ressources for future fans to try and start contributing
(First one is here :I have enough knowledge aka basics in both Godot and C# by now but completely overwhelmed with the ever-growing repository of thrive)
To be fair they are the only actual employee of RG and not a volunteer.
So what you actually wanted was a tutorial type of video about the Thrive codebase or the development process?
Sadly such a thing does not exist. We tried to get a new setup instructions video guide done about 3 or so years ago but that attempt just fizzled out.
So someone if they really want such a thing would need to make it themselves.
A next coding stream might be kind of like that, but I cannot while streaming make a full tutorial. I can of course try to explain in as much detail as I can what I’m doing and chat can of course ask clarifying questions.
This is kind of the reason why effort into making this kind of tutorial video about implementing a feature is not very worthwhile, because it will not take long until it is outdated. And it is totally unreasonable to have a video per subject area of Thrive as there are so much stuff. So we’d never finish making those.
With any big codebase getting into the code is hard. So the recommended approach I’ve heard is to just pick a small area (related to a bug or new feature you are interested in) and start investigating that and learning from there. And gradually as you complete changes learn more and more.
I mean, unless we changed the game engine again there will likely be some things that would stay around the same or similar for long, so perhaps if anything such a video could start out with those “core” stable features?
You never know what is stable… Just for this release I changed where the Thriveopedia is and how the pause menu communicates with the stages. So if I had made a video about a topic like changing something in the Thriveopedia or adding a new thing to the pause menu, that would now need to be a quite different video. Still an old video would have quite many useful parts but it would stop being a step by step guide as the watcher would need to figure out themselves where the code moved and why.
Okay , let’s put a fruitful conclusion to this
:
-Theoratically good but practically useless.
Let me switch the topic to more useful side:
@New thrive developers,what is the technic/technics that you hav used to get familiar,with the code base?
Is there any some how general game structure that most game (including thrive )are using?
What to look for and what is the basics in any game that an non-game developer should know?
I think most new developers are mostly on the developer forum
Yeah. Besides me and Rathalos (and the occasional Deus post) no other developers visit these forums.
So it’s very unlikely that anyone with any information will respond to this.
Our GUI (menus, HUD) are made with very standard Godot structure so that should be immediately familiar to anyone familiar with Godot game development. Our gameplay is structured with the Entity Component System (ECS) pattern, which while not super common is still used by quite many games (especially heavy simulation ones like Thrive).
There’s a high level overview of Thrive architecture in this document I’ve written:
Nobody really helps me in documenting Thrive structure and improving new developer information, so I just do some of it every now and then.
Realtime performance and optimization are very important topics in games but not in other software. Whenever I’m working on other projects than Thrive using C# I can just relax and slap together basically anything I want with LINQ and allocate all the memory I want without any worry. In Thrive I instead have to constantly keep efficiency in mind when writing code.