4 Game data
games.json contains the games from 1986 to 2010, each with a fixed release date. They decide what arrives in the editorial inbox, what readers expect and what the editors' scores are measured against.
Fields
| Field | Type | Effect |
Id | Text | Unique identifier, lowercased. Also the file name of a custom cover image (grafix\covers\games\<Id>.png or .jpg, portrait 720 × 1020, without text). |
Name | Text | Title as it appears in the magazine and on the cover. |
Description | Text | Short description in the game's profile. |
GenreId | Id | Genre from genres.json: action, adventure, rpg, simulation, strategy, sport. Decides which editors like to review the game, which reader groups it interests and which genre trends affect it. |
PlatformIds | List | Platforms from platforms.json. The game only arrives in the inbox if the player owns a test device for at least one of them. |
ReleaseDate | Date | ISO 8601, e.g. 1988-05-01T00:00:00. Decides the issue in which the game comes out. Before that it can be announced as a preview, afterwards it stays reviewable for one more issue, with less reader interest. |
Quality | 0–1 | The score the game deserves: 0.85 means 85 %. Editors hit it more or less precisely depending on skill and knowledge; the magazine's credibility and accuracy are measured against it. |
Popularity | 0–1 | How eagerly readers wait for the game. Decides its pull on the cover and how strongly a review, or its absence, affects readers. |
Size | 0–1 | Scope of the game. Decides the appropriate length of a review (up to 8 pages), the work needed for tips and the space needed on the cover mount. |
PublisherId | Id | Publisher from publishers.json (or a new entry of your mod). Decides relationship, exclusive reviews, demos and advertising around the game. |
ReviewText | Text | Currently not used; the game writes the verdict of a review itself. |
Which games an issue gets
For each issue the game takes all games from games.json whose ReleaseDate falls in the period of the issue. The number is tied to the page count readers expect in that year: if there are more than a third of that (at most 60), a random but reproducible selection is made; if there are fewer than 0.3 games per expected page, invented games from games_filler.json fill the gap. Games from mods count as real. Filling a thin period with real games therefore displaces invented ones; adding more to a busy month only enlarges the pool that is drawn from.
Example: add a game
mod.json with "mode": "merge", plus Data\games.json:
[
{
"Id": "gm86_examplegame",
"Name": "Example Game",
"Description": "Racing game by Ocean.",
"GenreId": "sport",
"PlatformIds": [ "c64", "amiga" ],
"ReleaseDate": "1988-05-01T00:00:00",
"Quality": 0.74,
"Popularity": 0.6,
"Size": 0.4,
"PublisherId": "ocean"
}
]
Example: correct a score
mod.json with "mode": "patch", plus Data\games.json:
[
{ "Id": "<Id of an existing game>", "Quality": 0.81 }
]
Your own data set
With "mode": "override" your games.json replaces the shipped one completely. Make sure every issue has enough games; the game fills gaps with invented games. An empty games_filler.json in the same mod switches invented games off, and thin months stay thin.
Related files
| File | Content |
publishers.json | Publishers with Friendliness (willingness to grant exclusive reviews and demos) and Showmanship (how much the publisher talks up the quality of its games). Logo as grafix\publishers\<Id>.png or .jpg. |
platforms.json | Platforms with release date, price of the test device and reader potential per year (ReaderPotentialByYear). Image as grafix\platforms\<Id>.png, 128 × 96, transparent. |
games_filler.json | Templates of the invented games (without platform and date; the game assigns both). |
hardware.json | Hardware for the hardware office. In the description, {pid:<Id>} inserts the name of a platform from platforms.json, e.g. "The best joystick for the {pid:c64}". |
magazines.json | Competing magazines with period, platforms and circulation per year. Cover pictures as grafix\magazines\<Id>\<YYYY-MM>.jpg. |
editors.json | Editors. characterId points to the character folder under grafix\characters\editors\. |
fairs.json, historicalnews.json | Trade fairs and world events in the ticker. The headlines name games, companies, platforms and fairs through placeholders: {gid:<Id>} (game), {pubid:<Id>} (publisher), {pid:<Id>} (platform), {fid:<Id>} (fair), e.g. "{pubid:sega} launches the {pid:genesis} in Japan". So the headline follows every mod that changes the name. |