My experience in the development and production of video games is purely theoretical; so before I dive in and make a bunch of mistakes that mess up my source control, I wanted to ask some people with practical knowledge if a general outline for game development that would promote efficiency and source control exists - and details of such an outline. Perhaps a work pipeline is another name for this, but I didn’t want to mix up terms as I’m fairly new to all of this.
~Details about the game that define what I will need to work out - skip this paragraph if desired~
Currently the general plan is to work from the third person shooter blueprint (I know how to program in C and a little C# visual, but not C++ so I’m stuck with the blueprint/logic node system at the moment) and replace the character actor with an up-gradable tank. There will be plenty of upgrades that modify the movement and attack capacities of said tank, most of which will be reflected in the tanks appearance. Additionally, there will be enemy tanks with AI and a mission type system that will propel the story forward to encourage the player to defeat these enemies and upgrade their tank with the rewards. I would like the missions to occur in randomly generated zones that are built by using something akin to procedural generation via stitching together chunks of land to give some variable terrain, enemy bases, etc. All the upgrades and missions, along with ideas on how gameplay should ideally progress have been documented. All that leaves is the art, modifications to the blueprint, setting up enemy AI, setting up the random generation if within my abilities, and linking the art to the upgrade system after implementing some GUI.
Assuming I have all the necessary textures/meshes ready, by my estimate that leaves:
- modifying the blueprint to get the tank to operate with the desired controls
- modifying the blueprint to animate the components of the tank “actors”
- making functional GUI’s to link the upgrade systems to actually effecting the tank “actor”
- creating a blueprint that adds new components as they are purchased via the GUI to the tank
- Game conditions for victory, loss, exp gain, etc.
- Level editing for the main base and creating links from entering certain buildings to triggering the appropriate upgrade GUI
- creating a blueprint/blueprints for enemy AI
- create blueprint for missions
- creating a seed-based generation for enemy terrain.
If someone has the time and will to review all the information and tell me what I should specifically focus on first, that would be great, but really all I need is a sort of general guideline on where to start. Right now I’m just reading the documentation extensively and reviewing the forums as much as possible. I tried to use the search engine, but due to lack of knowing the specific terminology I was not very successful. A link to a similar post would more than suffice. This is my first post, so I apologize in advance for any mistakes in the section in which I’m posting. I look forward to any and all input and am happy to be a part of this community.