here are my tips for large scale projects
coment everything on spot, even if takes double the ammount to properly do it, document everything as many said above me.
You need basically to create a "user manual" or better said a "dev manual"
when you make games or software that is 1000 -10,000 lines of code maybe you don't need that many comments.
but if you are going above 10,000 lines of code or in Construct events, you might want to do so...
also as many suggested, layers events and layouts, name them accordingly, early in C2 and classic someone used this format and i since followed it instinctively for Construct cause it made sense and its easy to find stuff
for example you have Intro screen and the events sheet for it will be ES_Intro_Screen
that will differentiate between the layout and event sheet, not wasting time clicking back and forth trying to figure out which one is which, especially when u got like 10 event sheets opened or 10 layouts opened.
latest C3 now has colored comments, i use that feature instinctively since implementation, reason?
RED is danger (meaning properly comment stuff and alert lines), Orange mid danger (meaning above medium danger if modified stuff might brake and cause weird glitches), yellow somewhat danger (some visual glitches or missalignments), green "animation stuff" "hud lements" - no danger if altered wrong, maybe some display not showing.
folders in project - i used this structure for my project usually
"g-spot" = plugins (mouse,touch,audio,etc) - all plugins that i use goes in this folder - (i name it usually like that or core but not to mess with the engine core - i usually give it a "sensitive naming" because once u mess with it, things go hot in weird places.)
"hud elements" - everything hud related (for in-game) goes in this spot
"menu items" - all menu items goes here
"character" - everything related to character goes here
"intro screen" - all intro/loading screen goes here
and u can do this for everything just keep track of them in a proper manner.
global variables - now here as the latest post in this topic there are a few factors to consider
are u confortable with using "workarounds" or sacrifice "memory usage" for sake of "development purpose" ? or u care more about how the "game performs"?
sometimes i find that what i think makes sense to me as a dev, is not always healthy for the game "resources" and i tend to do more harm then good, while is easy for my work it will clutter the project and barelly open it up in some cases.
that's why i prefer using Arrays, dictionaries or instead of the actual dictionary plugin, a json/xml file, or most of times i just make a Variables_event_sheet that i include in everything as "globals" and "graphic dump" layout to make every sprite first instance renderable and not having to worry about if i can call "create object" if object is not placed in a layout somewhere.
famillies - are your friend, no matter how good you are at simplifying things, you will find famillies are the best - like touretto says "all for the familly" and in our case .... its just true, famillies are one of the most powerful tools you can use in a project, learn to use them, when to apply them and how they interact with other project objects will make ur life easy.
json/xml/array - you want to learn this how they function how to properly make a grid, how to read and write them etc. plenty of examples plenty of tutorials just grind till u get the hang of it, it looks scary in beginning but are easy actually, requires somewhat some logical thinking.
entry level html5,css,javacript knowledge - if you want to understand how C3 works, will help you long run to understand this 3 languages. they are a must in everyones repository as developers,jquerry optional not really needed since javascript does similar stuff nowadays and sometimes even better.
functions - now here... i seen projects doing functions and were a masterpiece when looking at the code, and i seen projects that would make you hurt just reading the names of some of the functions ... avoid naming everything the same with 1_2_3_4_5_6 at end or in front, unless imperatively needed or required for some reason.
and going back to my first recomendation ... ALWAYS keep track of your code, i personally changed my style of coding lately, from just implementing in, implementing and while my head is hot and in the moment add comment immediately, otherwise i close i go to sleep, come back, and i look at it like some stranger made the code... and dont understand a thing of it.
always document your progress
oh and since i mentioned progress... turn autosave on, and make a habbit in making a backup, even if u "ctrl+s" by now as a tick response, "save file corruption" is a thing.
late development stages, streamline everything, find a better way to make ur code faster to read and run, reduce image sizes, and code. The shorter everything is and smaller the less memory usage your game will use, the greater experience the user will have.
Advertising - early in development across the years, decades by now, devs would stick ads on all pages of their game, bottom, top, spam full screen ads, video ads etc, you name it.
Personally i never liked that because before making games, i played games, and i hated watching advertising especially forced ones.
So one perfect model for advertising is a fairy dancing on ur screen saying hey "you want to watch some ad? you get X ammount of gold or diamonds or whatever, by watching this you help me as a dev and also u get something from it... you dont want to watch an add now? ok il come back later buzz u later"
that is the perfect model, piratesoftware mentioned this also in some of his twitch stream, but i totally agree. Also if users buy your game, and u have a in-game store for purchasing items etc ... don't make them powerful, make them design choices, especially if its a multiplayer game. it just ruins the mood as a player to grind free mode in watching them ads and diamonds and whatever and then some guy just comes in trows 100$ in ur store and bam top1% rank in leaderboards. while the rest grinding months in ur game. is toxic avoid it.
if you really want to give "a powerup" for donations or in-game stuff do this, instead of giving level 100 gear to the "payup" guy.. sell instead the ability to grind faster, or the ability to get 2x rewards if he watches the fairy ads or something that is a bit OP in balance of the free user that only paid for ur 5$ game or 20$ game, but can't afford to pay another 1000$ in-game supplies.. make it fair for everyone.
A good example here is the way POE is doing it, they sell goods and services, but the game is free, u can buy materials in game etc but all the in-game purchaseable items, don't give u any powerup are just super cool visuals nothing more.
and sort of this are my personal tips, you will find, that most of them repeat with a recurring theme with other devs, thats because its a "right way of doing things" which most devs will find and there is a "let the world burn way" of doing things.
hope it helps.