When it comes to developer tools, there are two major elements involved - the user interface that allows the user to interact with the data, and the functionality of what the tool does (e.g. generate a data set that will recreate a specific character look in-game). The user interface makes things easier for the user to choose what they want. The functionality takes those choices and generates the correct set of data that will work within the game.
The functionality of player-facing tools and developer-facing tools must be the same, because the output is used by the same game for the same reasons (representing a specific character look). This means that all of the character creation variables (height, weight, race, hair type, nose type, eye type, etc.) must be [stored in data in some form], which can then be read by the game in order to reconstruct that specific character look when needed. The main difference with the player-facing tools is that we usually add some additional safeguards to protect against invalid data that might cause the game to crash if used, and we pretty them up since most of our internal tools just look like default windows system apps.
The user interface, however, can vary wildly depending on the need. There’s a far cry from the polished character creator you see in the game itself and developer tools. Instead of a visual interface, we might have a simple tool that lets us choose numbers - hair 3, nose 2, eyes 5, hair color 4, etc. alongside a “randomize” button so we can just speed through character creation rather than have to craft specific looks for every background NPC. The most basic design tools might just be a text editor or [a spreadsheet]. Sure, we might have the bandwidth for our tools programmers to make a better or more elaborate interface, but they have to juggle support for all of the tools we use to create content - character editor, level editor, item editor, quest editor, ability editor, effect editor, and so on. We need some form of editor for any kind of content we need to create - even if that editor is notepad or excel.
In summary, the functionality of the tools is the usually same for players as it is for developers (maybe with a few additional safeguards thrown in), but the user interface of the tools is wildly different. Developers can be trained and are paid to use things correctly, but we can’t assume the same for players so we have to make things easier and prettier for players.
[Join us on Discord] and/or [Support us on Patreon]
The FANTa Project is being rebooted. [What is the FANTa project?]
Got a burning question you want answered?
- Short questions: Ask a Game Dev on Twitter
- Long questions: Ask a Game Dev on Tumblr
- Frequent Questions: The FAQ