...
The main thing we want to do is to assign multiple titles to a game, but with additional attributes, like region, language, platform, and so forth. With these data in the database, we will be able to show every user his / her appropriate title using the information the user entered about his / herself. Exemplary, if the user is from the US, we could use the MobyGames model of displaying the US title. Furthermore, we will implement a hierarchical fallback of titles, so, following our example, if the US title of the game isn't present in the database, we could display the UK one instead, then any other English language title, next the game's original name, and so forth. Finally, these fallback options should be customizable by the user.
Now, the interested reader may be inclined to ask how this theory would translate to a Final Fantasy IV implementation. Well, FF IV would get just a single game entry at Oregami, but with multiple titles assigned to it, which could look as follows:
Title (Language) | Title Type | Region(s) | Platform(s) |
---|---|---|---|
Final Fantasy IV (English) | Initial Release | Japan | Super Nintendo |
Final Fantasy IV (English) | Re-release | USA / UK / Japan | Nintendo DS / PlayStation / PlayStation Portable |
Final Fantasy IV (English) | Re-release | Japan | Nintendo Wii / Wonderswan Color |
Final Fantasy IV Easytype (English) | Re-release | Japan | Super Nintendo |
Final Fantasy II (English) | Initial Release | USA | Super Nintendo |
Final Fantasy II (English) | Re-release | USA / UK | Nintendo Wii |
Final Fantasy IV Advance (English) | Re-release | USA / UK / Japan | Gameboy Advance |
FF IV (English) | Abbreviation |
By the way, the differences between the Japanese initial version and the US Easytype version are documented elsewhere within the data model, but this shall be the subject of another blog post.
Another facet of our approach to game titles is to document where and how these game titles were used. Every release of a game comes with different locations where a title can be shown, e.g. the front cover of the box, the title screen of the game, or more exotic ones like the install program. So we will implement a way to be able to assign game titles to releases, too, saving its location in the process. Of course, this assignment to a release shall only take place if the respective title was properly accepted into the database with a game connection beforehand.
...