Modular workflows for my game’s environments has been somewhat of an obsession of mine for the last few projects i’ve done, specifically in trying to find the best structures for them, and in making editor side tools to help implement them.
Past Projects With Modular workflows.
In Balance(oh the memories, the horrible horrible memories) I had my first go with using modular assets and researching them. Here I kept things simple and made a editor script that could scroll through a pre-prepared set of prefabs at a selected position in the editor scene. At the same time you could also toggle different parts on or off, like the walls or floor segments.
I advanced this concept further for Stoic Sugar Cubes, adding extra functionality to this set of features. I added options that would move or rotate the kit spawner when a new piece was added to the scene, a option to cycle through different variations of pieces automatically and also the ability to set a specific gameobject to store the generated pieces as a parent object.
What I need now
A talk by Fallout and Skyrim developers about how they advanced and evolved there modular kits through there games.
During these projects and my research I learnt a lot about how environmental kits are used in the industry and the tools and practices that have been developed to use them. For Toasty I want to go a step further than a tool to select prefabs and instead work on making a proper, self managing level editing tool.
Grid Based Room Maker
Example of modular assets from Stoic Sugar Cubes
Going back to basics Toasty is a game set in interior and artificial environments to accommodate this Room editor kit and acts as a more reasonable target than Stoic Sugar Cubes landscapes. My aim is to make a grid based tool that, by checking which spaces are occupied or null , will prescribe the appropriate kit piece automatically e.g A corner in a corner, a wall at a wall.
Alongside the main room editor I will also work on a range of more specific smaller tools, such as a path and wall maker kit, however I will leave them to later in the project.