I recently mentioned I'm working on ZXDB improvements. Let's talk about it!Einar Saukas wrote: ↑Fri Feb 15, 2019 7:36 amAlso technically, I'm now working on some internal improvements to the ZXDB schema (I will detail them later).
According to the old WoS model, each game in the archive could be either a mod of one other game, or inspired by one other game. However there are quite a few exceptions to this rule. For instance, Ku-Ku is a mod of 2 different games: Project Future (game code/engine) and Sabre Wulf (graphics). Miner Willy's Nightmare is a mod of Atic Atac, and at the same time inspired by Manic Miner. A few other titles were inspired by two different games, combining ideas from both. And so on... Since ZXDB schema was originally based on the old WoS site, it also had the same restrictions. Not anymore. ZXDB now contains a new table "relations" to store all kinds of NxN relationships between titles, so each game can now have multiple inspirations, and it can be a mod from multiple titles.
The old WoS site didn't have a proper place to store information about game editors. Instead, this information was simply stored in comments. For instance, Chaos has a comment "There also was a Chaos Editor. There is a patch (Additional material) to create a 256-colour edition for the ULAPlus", and Chaos Editor has a comment "An editor for Chaos". This information was mixed with other comments, and harder to search. Now this information will be also moved to the new table "relations".
This table "relations" will also store graphics engines (like Churrera and NIRVANA), game engines (like PAW and AGD), libraries (like FZX and ZX7), and other development tools currently displayed under the description "authored with". This information was previously stored in "frameworks", but we don't need a separate table anymore since "relations" is much more flexible.
Technically, this new table "relations" will replace table "framework", and columns "entries.is_mod" and "entries.original_id". As usual, I didn't remove the old table and fields yet, so websites based on ZXDB can have time to make the proper changes. But they will be removed in the next ZXDB update.