Talk:Oni 2 (Angel Studios): Difference between revisions

From OniGalore
Jump to navigation Jump to search
(laying out my questions and the "launch arguments")
 
(launch arg stuff has been moved to Oni 2 (Angel Studios)/Running)
Line 1: Line 1:
==General engine discussion==
==Engine/data discussion==
I don't have much experience reverse-engineering game data, but I have a lot of questions from looking through the strings in the game data files in the Oni 2 ISO, namely, BANKS.DAT, RB.DAT, SCPS_123.45 (the binary), and STREAMS.DAT:
I don't have much experience reverse-engineering game data, but I have a lot of questions from looking through the strings in the game data files in the Oni 2 ISO, namely, BANKS.DAT, RB.DAT, SCPS_123.45 (the binary), and STREAMS.DAT:
*What does "RB" mean? It occurs everywhere, including in the name of file RB.DAT.
*What does "RB" mean? It occurs everywhere, including in the name of file RB.DAT.
*There seem to be launch arguments available for the game, but how does one supply them to the game? Or, if they are console commands, how does one access the console? Or, if they are config settings, where does one place a .cfg? To find them, search the binary for the string "BASLUS". I have listed them under "Launch arguments" below. They seem like they would be tremendously useful.
*There are references to a Chrysalis entity in RB.DAT. An entity is any kind of object, animate or inanimate.
*There are references to a Chrysalis entity in RB.DAT. An entity is any kind of object, animate or inanimate.
*There are references to Konoko skateboarding. There's even a skateboard texture. What is that about? See "Entity/KonokoBoarder" in RB.DAT. KonokoGym sounds interesting too.
*There are references to Konoko skateboarding. There's even a skateboard texture. What is that about? See "Entity/KonokoBoarder" in RB.DAT. KonokoGym sounds interesting too.
*Among the other entities, which are often abbreviated to three characters, is "shn". Could that be who I think it is? I'd like to draw attention to the resources named "win32_shn_LODs[0-3].mod". Could these be rips from Oni? I'm suspicious that they ripped other resources from Oni, like the Lariat and back-roll throw animations. Of course, they could simply have asked the animator to reproduce those by hand. But they also seem to have the model/textures for the original Konoko in the dev build (she appears in Brawler). If "shn" is indeed Shinatama, she doesn't appear in Brawler, which seemingly spawns all characters (or maybe it doesn't!).
*Among the other entities, which are often abbreviated to three characters, is "shn". Could that be who I think it is? I'd like to draw attention to the resources named "win32_shn_LODs[0-3].mod". Could these be rips from Oni? I'm suspicious that they ripped other resources from Oni, like the Lariat and back-roll throw animations. Of course, they could simply have asked the animator to reproduce those by hand. But they also seem to have the model/textures for the original Konoko in the dev build (she appears in Brawler). If "shn" is indeed Shinatama, she doesn't appear in Brawler, which seemingly spawns all characters (or maybe it doesn't!).
*It looks from the arguments below like they were thinking of co-op multiplayer, specifically local two-player mode. If we could utilize those arguments, perhaps we could activate it.
*What is that Password field for, on the game's Options screen? It's only four characters, and rather than allowing you to select A-Z for each space, the first slot only allows A-F and S, the second slot only allows A-F and W, the third slot allows A-F and Y, and the fourth slot allows only A-F. The A-F seems to be a reference to hexadecimal. The fact that the only characters allowed for the first three slots besides A-F are S, W, and Y implies to me that at least one password is "SWY_", where the '_' is something between A and F. However, I tried all those permutations and didn't see any result in the game. I cannot find a string anywhere in the game data that is of the form "SWY", nor "YWS" if written little-endian like Oni's tag codes. So I may be arriving at a wrong conclusion based on the allowed characters.
*What is that Password field for, on the game's Options screen? It's only four characters, and rather than allowing you to select A-Z for each space, the first slot only allows A-F and S, the second slot only allows A-F and W, the third slot allows A-F and Y, and the fourth slot allows only A-F. The A-F seems to be a reference to hexadecimal. The fact that the only characters allowed for the first three slots besides A-F are S, W, and Y implies to me that at least one password is "SWY_", where the '_' is something between A and F. However, I tried all those permutations and didn't see any result in the game. I cannot find a string anywhere in the game data that is of the form "SWY", nor "YWS" if written little-endian like Oni's tag codes. So I may be arriving at a wrong conclusion based on the allowed characters.
*It's possible that the Password is where cheat codes are entered. There's a single reference to cheats in the engine, a portion that reads "End Cheat Flying Mode [...] Start Cheat Flying Mode". Perhaps the mystery "SWY_" code above is the flying cheat?
*It's possible that the Password is where cheat codes are entered. There's a single reference to cheats in the engine, a portion that reads "End Cheat Flying Mode [...] Start Cheat Flying Mode". Perhaps the mystery "SWY_" code above is the flying cheat?
Line 12: Line 10:
*The level scripts might be interesting to read. See the references to the "ScrOni" system in the binary, and the names of the .onc files in RB.DAT. Unfortunately it seems that the scripts are not encoded in plain-text.
*The level scripts might be interesting to read. See the references to the "ScrOni" system in the binary, and the names of the .onc files in RB.DAT. Unfortunately it seems that the scripts are not encoded in plain-text.
--[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 04:28, 12 December 2016 (CET)
--[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 04:28, 12 December 2016 (CET)
==Launch arguments==
Found in the binary after the string "BASLUS", I'm not sure if these are launch args, console commands, or .cfg-type settings. My first thought was "launch args", since commands like "noui" would seem to need to be passed to the game at launch-time in order to take effect.
;ui
:use the frontend
;noui
:Bypass the frontend and go to game.
;devui
:use the dev frontend
;fullui
:use the full frontend
;nogame
:Never go into the game shell.  Useful for testing frontend.
;mission
:The "mission" to load.
;level
:The level to load
;players
:The number of human players in game.
;vsplit
:Want vertical split for 2 player mode instead of default horizontal split.
;sharevp
:All players share the same viewport.
;diff
:Difficulty to use.
;musicvol
:Music volume to use for playback.
;sfxvol
:Sound FX volume to use for playback.
;voicevol
:Voiceover volume to use for playback.
;nocutscenes
:Disables in-game cinematics.
;noattacking
:Prevents AI from attacking player.<br />
'''???''' (no text where there should be an argument; perhaps it's just a number? also, is this not the same as the "level" code above?)
:Specify which level to load.
;testloadsave
:Use test save file to run game.
;oldcam
:Start with the old camera system in the game.
;noactorreload
:Don't reload actor XML files when doing the "quick" restart.
;defaultcampack
:Use the default camera package instead of the campack in the layout directory.
;nocamcollision
:No camera collision.
;norumble
:No pad rumbling.
;noparticles
:No particle effects.
;unbreakable
:Player is unbreakable
;polar
:Use polar camera by default.
;nohud
:Don't draw the HUD.
;recompile
:Recompile all used scripts.
;noai
:Disables NPC movement/actions.
;notemplates
:Don't preload the actor templates.
;nopausemenu
:Do not show the pause menu when you press start, just freeze the frame.
;playerNN
:(Where NN is 0->Max players) Sets the specified player's name.
;modelNN
:(Where NN is 0->Max players) Sets the specified player's model to use.
;controlcfgNN
:(Where NN is 0->Max players) Sets the specified player's control configuration.
;controlmapNN
:(Where NN is 0->Max players) Sets the specified player's control mapping (i.e. Player 1 is using controller in port 3).

Revision as of 15:59, 5 February 2018

Engine/data discussion

I don't have much experience reverse-engineering game data, but I have a lot of questions from looking through the strings in the game data files in the Oni 2 ISO, namely, BANKS.DAT, RB.DAT, SCPS_123.45 (the binary), and STREAMS.DAT:

  • What does "RB" mean? It occurs everywhere, including in the name of file RB.DAT.
  • There are references to a Chrysalis entity in RB.DAT. An entity is any kind of object, animate or inanimate.
  • There are references to Konoko skateboarding. There's even a skateboard texture. What is that about? See "Entity/KonokoBoarder" in RB.DAT. KonokoGym sounds interesting too.
  • Among the other entities, which are often abbreviated to three characters, is "shn". Could that be who I think it is? I'd like to draw attention to the resources named "win32_shn_LODs[0-3].mod". Could these be rips from Oni? I'm suspicious that they ripped other resources from Oni, like the Lariat and back-roll throw animations. Of course, they could simply have asked the animator to reproduce those by hand. But they also seem to have the model/textures for the original Konoko in the dev build (she appears in Brawler). If "shn" is indeed Shinatama, she doesn't appear in Brawler, which seemingly spawns all characters (or maybe it doesn't!).
  • What is that Password field for, on the game's Options screen? It's only four characters, and rather than allowing you to select A-Z for each space, the first slot only allows A-F and S, the second slot only allows A-F and W, the third slot allows A-F and Y, and the fourth slot allows only A-F. The A-F seems to be a reference to hexadecimal. The fact that the only characters allowed for the first three slots besides A-F are S, W, and Y implies to me that at least one password is "SWY_", where the '_' is something between A and F. However, I tried all those permutations and didn't see any result in the game. I cannot find a string anywhere in the game data that is of the form "SWY", nor "YWS" if written little-endian like Oni's tag codes. So I may be arriving at a wrong conclusion based on the allowed characters.
  • It's possible that the Password is where cheat codes are entered. There's a single reference to cheats in the engine, a portion that reads "End Cheat Flying Mode [...] Start Cheat Flying Mode". Perhaps the mystery "SWY_" code above is the flying cheat?
  • Does anyone want to try to extract the game data? I don't have the time, and since this is an unfinished PS2 game there's not a lot of modding potential in terms of bringing data into the game. But there's certainly some resources that I would like to see (for examples, take a look at any part of RB.DAT, or the beginning of STREAM.DAT at the names of the .stm files). Some interesting-sounding resources do not seem to appear in the dev build. Since AGE is a known engine, it's possible that someone has already attempted to reverse-engineer the format of these resources for the sake of another game. AGE eventually became an engine that powers games released for PC too, including the GTA series, which would have made it a matter of great interest for modders, but it's likely that the data formats have changed considerably since the time that Oni 2 was under development.
  • The level scripts might be interesting to read. See the references to the "ScrOni" system in the binary, and the names of the .onc files in RB.DAT. Unfortunately it seems that the scripts are not encoded in plain-text.

--Iritscen (talk) 04:28, 12 December 2016 (CET)