Jump to content

History of Oni modding: Difference between revisions

m
contrary to Windows' claims, these are not "RAW" and "DAT" files
m (oops, didn't notice the word "years" was missing when I switched from AgeFull to Age template)
m (contrary to Windows' claims, these are not "RAW" and "DAT" files)
Line 29: Line 29:
[[Image:AEI_main_window.jpg|thumb|225px|right|The Installer released in 2013 could update itself, the player's mods, and the patches made to the game. It was written from scratch in Java for ease of cross-platform support.]]
[[Image:AEI_main_window.jpg|thumb|225px|right|The Installer released in 2013 could update itself, the player's mods, and the patches made to the game. It was written from scratch in Java for ease of cross-platform support.]]


Fans with some expertise in parsing files with hex editors found that the binary data (i.e., the files ending in .dat and .raw, not to be confused with "binary" as a term for an application) held four-letter codes, indicating the start of each resource within that file. Within a week of the street date for Oni, the community had its first resource modding tool, OniTools. While the author did not yet know how all the data worked, his program could at least parse it, and allow the modder to more easily edit each resource without having to count in hexadecimal. It also supported user-friendly replacement of texture maps and allowed in-line viewing of the game's 3D models. There seems to be little evidence that this knowledge was put to use in modding the game resources beyond simple mods such as texture replacements, no doubt due to the lack of a complete understanding of how Oni's dozens of resource types were inter-related.
Fans with some expertise in parsing files with hex editors found that the level data files held four-letter codes, indicating the start of each resource within that file. Within a week of the street date for Oni, the community had its first resource modding tool, OniTools. While the author did not yet know how all the data worked, his program could at least parse it, and allow the modder to more easily edit each resource without having to count in hexadecimal. It also supported user-friendly replacement of texture maps and allowed in-line viewing of the game's 3D models. There seems to be little evidence that this knowledge was put to use in modding the game resources beyond simple mods such as texture replacements, no doubt due to the lack of a complete understanding of how Oni's dozens of resource types were inter-related.


This did not stop one intrepid programmer named Pierre Terdiman from deciding to import data from Oni into the game engine that he was writing from scratch. Called [[Konoko Payne]], it is a long-term project which currently takes the form of (1) an underlying engine, and (2) a short scenario for it that resembles a sequel to Oni. In order to extract models and animations from Oni and recreate them precisely in his project, Pierre became one of the early pioneers in "reverse engineering" the game's resources, although his acquired knowledge remained largely private, as his work predated the community's organized public attempts at gathering this information.
This did not stop one intrepid programmer named Pierre Terdiman from deciding to import data from Oni into the game engine that he was writing from scratch. Called [[Konoko Payne]], it is a long-term project which currently takes the form of (1) an underlying engine, and (2) a short scenario for it that resembles a sequel to Oni. In order to extract models and animations from Oni and recreate them precisely in his project, Pierre became one of the early pioneers in "reverse engineering" the game's resources, although his acquired knowledge remained largely private, as his work predated the community's organized public attempts at gathering this information.
Line 42: Line 42:
Minor binary modding had already occurred before Loser's Warehouse (thus, while compiling the [[OBD]] database, Ssg had released a version of level0_Final in which all of Konoko's combos were unlocked). Still, it was the Warehouse mod released in 2005 which first showed the "full" potential of binary modding. It inspired a short-lived initiative called the [[AE:BIP|Binary Improvement Project]], aimed at providing upgraded binaries for all levels, not just level0_Final and level1_Final.
Minor binary modding had already occurred before Loser's Warehouse (thus, while compiling the [[OBD]] database, Ssg had released a version of level0_Final in which all of Konoko's combos were unlocked). Still, it was the Warehouse mod released in 2005 which first showed the "full" potential of binary modding. It inspired a short-lived initiative called the [[AE:BIP|Binary Improvement Project]], aimed at providing upgraded binaries for all levels, not just level0_Final and level1_Final.


BIP was hindered by large upload/download sizes as well as by the potential legal issues involved in distributing entire files from the game; in 2006 it was replaced by a smarter alternative to supplying whole levels, in the form of [[OUP|OniUnPacker]]-based patches and was termed [[AE:ONK|Oni ni Kanabô]]. The modder would edit his DAT/RAW files in OUP, and then release a single binary resource patch. This was both bandwidth-efficient and more legal-friendly, but suffered from one major limitation: the indexation of DAT resources and the offsets of RAW data vary a lot across the available versions of Oni. Thus, resources exported with OUP were not truly standalone or portable. Also, OUP still lacked the ability to import new resources alongside existing ones.
BIP was hindered by large upload/download sizes as well as by the potential legal issues involved in distributing entire files from the game; in 2006 it was replaced by a smarter alternative to supplying whole levels, in the form of [[OUP|OniUnPacker]]-based patches and was termed [[AE:ONK|Oni ni Kanabô]]. The modder would edit his .dat/.raw files in OUP, and then release a single binary resource patch. This was both bandwidth-efficient and more legal-friendly, but suffered from one major limitation: the indexation and offsets of data vary a lot across the available versions of Oni. Thus, resources exported with OUP were not truly standalone or portable. Also, OUP still lacked the ability to import new resources alongside existing ones.


===Modular modding===
===Modular modding===