Thursday, December 6, 2012

The weird X-Wing series or Why do we model data?

Intro

Oregami is designed to become an interactive database for computer and video games, with a similar complexity like the Internet Movie Database  has for TV and film. Thus, if we talk about Oregami we quickly drift to our data model - or technical model - and to the statement that this ominous model shall be better than that of any existing video game database. But why that? What is a data model, actually, and why the heck is it not enough for us what MobyGames and TheLegacy offer?

Now our beloved hobby brings along a real mountain of data: computer and video games have a title, belong to one or more genres, are published for different systems in different versions at different times, even in different countries, and so on and so forth. We want the users to be able to enter all these data into our database, but that alone clearly isn't enough. If the user checks a game entry, he / she may exemplary want to learn the systems it was released on and when. If one visits a compilation entry the included games shall be visible, and with one more click every of those game entries must be reachable for more information. Or which games of a certain genre have been released on a certain system within a given time frame?

Such research can only be conducted if all the data are connected in a senseful way, and this is where our data model comes into play: The model contains every possible kind of data that can theoretically arise with computer and video games - and connects them. And it does so in a way which, in the best case, will enable us to reproduce every real world case of 40 years of gaming history.Sounds complicated? It is, if it's done comprehensively, and following we wanna use a concrete example to show why. We chose the X-Wing games, a series of 3D space shooters within the Star Wars universe that saw releases on DOS, Macintosh, and Windows throughout the 90s. Reading through the following "stages" the interested reader will be able to check the data model of his / her respective favourite video game database on the correct mapping of the X-Wing series.

Some X-Wing releases - so similar, but oh so different.

Stage 1

In Stage 1 there's groundwork to lay. Every game database should be able to implement these requirements.

Level 1-1: All games, add-ons and compilations of the series have their own database entry with basic information.

That's the absolute minimum of information a game database should provide. Following the games of the X-Wing series along with their official add-ons, there's different video game databases linked to for demonstration purposes:

X-Wing with Imperial Pursuit and B-Wing
TIE Fighter with Defender of the Empire
X-Wing vs. TIE Fighter with Balance of Power
Alliance

Furthermore, a collection of compilations that featured games of the series:

X-Wing Collector's CD-ROM
TIE Fighter Collector's CD-ROM
X-Wing Trilogy
X-Wing Collector Series
The LucasArts Archives Vol. II

Level 1-2: Every entry of a game, add-on or compilation shows the platforms it was released on.

The first two games of the X-Wing series were initially released on DOS, and saw both later re-releases on Mac and Windows. The last two games were initial Windows releases that never made it to another platform.

A well-arranged view at the platforms offers, exemplary, the OGDB, just take a look at their TIE Fighter page.

Level 1-3: The games are connected with their respective add-ons and the other way round.

This level contains the requirement that the info pages of the main games link to all their add-ons, and reversely the mother games are visible at every add-on's page. Naturally, we're not talking about manual links in the description or similar here.

For Level 1-3 the OGDB offers examples, too. For instance, at the bottom of the X-Wing page this level is achieved.

Stage 2

Every game database taking itself seriously and wanting to be seen as a serious project should have mastered Stage 2.

Level 2-1: Compilations are connected to all included games / add-ons and vice versa.

This level is a follow-up to level 1-3 not without reason, because it's quite similar. Starting from the compilation page every included game / add-on should be reachable and the other way round, which means that on the page of every game /add-on it should be visible that the game is part of a compilation. And here, we're also not talking about manual links, of course.

Exemplary, the OGDB shall be mentioned, too, here as one can see for instance on the page of the Star Wars Collection.

Level 2-2: Every game, add-on or compilation can be assigned multiple releases with different data like release date, region, or cover scans each.

In the video game industry it is common practice, and that's how it also has been at times of the X-Wing games, that games see multiple releases. Say localized versions for different countries, or budget releases, or within compilations, almost every release features a new packaging, and different goodies for the collector's heart.

As an example, the interested reader can study the release information of X-Wing at MobyGames.

Level 2-3: For every game the users can contribute technical details like system requirements, supported peripherals, or integrated languages.

Almost every game released is built on a different engine and, therefore, brings along very different system requirements. Furthermore, more than one gameplay mode is often integrated, or multiple peripherals and screen resolutions are supported. All that should be visible in a good video game database.

For deeper immersion, the technical information to X-Wing and to the X-Wing Collector's CD-ROM at MobyGames shall be linked here.

Some screen shots.

Stage 3

Finally, Stage 3 separates the wheat from the chaff. Here, it gets hairy and complicated, which is why no example links are given. To our knowledge there is just no game database mastering the following levels.

Level 3-1: The different main versions of a game are fully distinguishable from one another.

At this level, "main versions" doesn't mean smallish patches, but significantly changed re-releases of a game like demos, remakes or extended versions which basically stay the same game as the initial release. Exemplary, after its initial release on DOS floppy X-Wing was ported to the TIE Fighter engine, the result was re-released as an extended CD-ROM version. Later on the game even saw a port to the X-Wing vs. TIE Fighter engine for Windows (say X-Wing 95) released. Thus, the game had three main versions released: DOS floppy, DOS CD and Windows, whereas all these re-releases were part of compilations initially. Another example is X-Wing vs. TIE Fighter itself, which was bundled to some compilations as a dumbed-down promotional version called Flight School.

Level 3-1 therefore implies the possibility to label the game's main version contained within every release. Vice versa this level also means that for every main version of a game, the database offers a view showing all releases of that version over the years.

Level 3-2: A nested compilation is connected to its original games and vice versa.

The careful reader may be inclined to ask: Huh, that's exactly what we had at level 2-1? No, not exactly. The subtle distinction is the word "nested". The X-Wing und TIE Fighter Collector's CD-ROMs, being compilations themselves in bundling the games X-Wing and TIE Fighter with their respective add-ons, were bundled together as X-Wing Collector Series later on. A compilation compilation, if you will, or better called a nested compilation.

So, Level 3-2 implies here that on the information page of the Collector Series the user can see the games X-Wing and TIE Fighter with add-ons being bundled, and not only in the description of this nested compilation. The other way round, on the information page of every of these games and add-ons the user shall see the re-release within the Collector Series.

Level 3-3: Changes of the technical specifications of a game by an add-on can be reproduced.

The first add-on Imperial Pursuit to the first game of the X-Wing series was released in an additional version not seen very often: after the installation of Imperial Pursuit: Upgrade Kit the German player could not only enjoy the additional content in his native language, but also the main game. Further examples for changes of a game's technical specifications by an add-on are new graphic modes, or even new gameplay modes, and add-ons that alter the system requirements.

Within Level 3-3 hides the possibility to show on the information page of the main game X-Wing that it saw a localized German release, and that this was done using the add-on Imperial Pursuit: Upgrade Kit.

Extro

So much for the weirdness of the X-Wing series which no video game database known to us fully reproduces. Within Oregami we try to build up our data model from the ground up in a way that even Stage 3 can be checked in without much effort. Easy it is not, but it's fun. Because other kinds of data are featuring many interesting problems, too, which need to be comprehensively sorted out beforehand to not hit a wall with the live database later on.

Game developers change their gender, print magazines are released in different versions per issue, and big gaming companies found, buy, sell, close their branch offices and subsidiaries as they see fit. If you'd like to join us puzzling these problems out, or programming it, you are warmly invited to our forums. Maybe we can then post a new blog entry about the nice, real world of data out there soon.

This was the first cut, a first blog entry about an aspect of gaming databases at which we want to improve upon existing projects. Naturally, there are other aspects that shall separate Oregami from the rest of the bunch later on. But these shall be subject to blog entries in the not too distant future. So well, dear reader, please watchen das blinkenlights(big grin)

No comments:

Post a Comment