So I have been really having a time figuring out the best approach to my situation for building custom source engine and project code and deploying to team members with perforce. I guess this can apply to most other version control.
Let me explain what I am doing and trying to achieve.
Basically I have a custom engine build running custom code that is constantly changed. We have custom platform code as well (inside the platform directory) from the Switch, PS5, Xbox etc.
But I don’t really think that matters. (just additional information)
I also have the game project sitting in its own folder inside the root folder so that the project just uses the engine that is next to it.
What I want to do is I have a bunch of distributed team members that I don’t want to have them install the engine and recompile code (or do any compiling of code for that matter). I just want to send the engine code with the project next to it and have them run the project from there. I don’t want them to have issues compiling or anything. Just get on P4 and download the source and run the project with the engine associated already.
Now I have done some tests and I had it working with a team member but I ran into issues with P4 and what I should be including/not including. When I program something new I want to compile it and send it off to the team members I have to unlock certain files to be writeable etc. I am assuming those files probably didn’t need to be commited in the first place. What I am getting at is I am sure there is a very good way/proper way on what source files and project files should be commited so that when engine source is changed and needs to be distributed to the team so they can just download the changed binaries and rerun the project without any issues. I just am missing something small.
For example I will add a new plugin lets say and compile it to the engine or source code of the project but when I commit the code I think is needed and the new binary files. The team member still gets the message that there is a miss match with the engine source.
Is there someone that can point me in the right direction as to how their team is doing this as I am sure there are multiple teams doing exactly what I am trying to do.
Please and thanks! Sorry for the novel above.