- Have a src folder for code/scene stuff.
- Be aware of Layers/Masks (Which thing belongs in which Layer; Which Masks they interact with) and even how stuff is organized in the scene tree (Due to Godot's from bottom to top order)
- Be aware of node stuff like "body_entered" if that's how interactions can be made.
- Be aware of WHERE the game's files will be stored/saved (Because i want the folders to be easy to find) and tab organization, to avoid that one ColorRect specific issue with the UI.
- Control Input stuff, so i give the program stuff that i can use for interactivity.
- When it comes to code, there's adding gravity physics code, THEN making the script actually use it (Learned this when copying code from a Godot demo to a project of mine).
- Maybe see the Monitoring/Monitorable settings.
- Check Project Settings > Run to make the program open with a specific scene first.
- Save Menu features as scenes that can be reused in other screens (Pause screen) so they're not exclusive to the main title.
- Be considerate over "script-wide" variables.
- Sometimes, you can use certain functions (Like inside other functions) before func definitions (Though this could be understood a little better)
- You can't resize the default font text, so use a custom font to resize text.
- Be aware of stuff like Autoload on project settings for "universal" nodes/scenes i guess.
- Pay attention to the output/debugger screen.
- Use Merge_From_Scene when wanting to take some nodes to another scene.
- Consider Finite State Machines/enum stuff.
- Maybe addons/plug-ins should have their own dedicated folders (Like a new project) but also make sure to copy-paste their addon related folder in the same folder as the project you want to use an addon on.
- You can make animations use functions BUT there's a limit to how many of them play at once (Had to reinvent a melee attack because making it an animation prevented a pain state to work).
- Speaking of Node signals: If an entity that caused an "x enters y" interaction on another entity disappears while the second entity is still affected by the interaction, the game crashes. This is why i made the enemies/projectiles invisible before actually quitting the level.
Will update this eventually.
Feel free to give me tips.