Talk:Modifying an existing level

From OniGalore
Revision as of 21:11, 14 November 2023 by Paradox-01 (talk | contribs)
Jump to navigation Jump to search

To convert an extracted ONLV into a new project file you need even more in-depth knowledge about the file structure than for simply building a level project file from scratch.

Therefore, it would be nice if we could provide a tool to automate necessary work as much as possible.

One-click operation:

  1. Level extraction.
  2. Conversion of ONLV into an actual project file.
  3. Recycling of physics and locklights.
  4. Preserving as much vertex shading as possible by preferring DAE over CJBO linked meshes.
  5. BSL analysis to create FILM and cut scene sections?


Oni
 |
 +-- AE
     |
     +-- Tools
     |    |
     |    +-- Onisplit
     |    +-- LevelRecycler
     |
     +-- GameDataFolder
          |
          +-- level0_Final.dat
          +-- level0_Final.raw
          +-- level1_Final.dat
          +-- level1_Final.raw
          +-- ...
          +-- IGMD
               |
               +-- BSL script folders

Level0_Final.dat stores all ONLD with more meaningful level names. Each non-zero level DAT-archive stores an ONLV file. With those extracted files, a list for modders can be built to easily identify the level they want to recycle.

// shortened paths
OniSplit -export:ONLD* ONLD level0_Final.dat
OniSplit -extract:xml ONLD ONLD/*.oni
for each non-zero DAT
     OniSplit -export:ONLV* ONLV ....dat
OniSplit -extract:xml ONLV ONLV/*.oni
dat file name, BSL script folder, level name
----------------------------------------------
level1_Final.dat, ONLV<Name>, ONLD<DisplayName>

As soon as the modder has selected the preferred level, it should be a one-click operation to carry out the recycling.