Oni Central Forum

A forum for the Oni community

You are not logged in.

#1 03/03/08 10:03

coool
Member
From: China Haikou
Registered: 02/12/08

Questions...I am so fool? oh...

I download the BINACJBOCharacter.bina form

EdT wrote:

Here you go, an updated CHAR file for level19.  I added the following:

barabus, NinjaZip, evilkonoko, mad_bomber_1, TCTF Swat (A_Sbo15, B_S96), TCTF_lite_blackops (B_Lbo26, B_Lbo27), TCTF_lite (B_L30), Copmale (B_C32, D_L88), Copfem (D_S83, D_C100)

Backup the original BINACJBOCharacter.oni file in the level19_Final folder, add the new version and then recompile level19

Now I want to see some cool scripts written with these additional characters! smile

http://edt.oni2.net/mods/Level19CHAR.zip

but I use the BINACJBOCharacter.bina to replace the original ,it says"can't import BINACJBOCharacter,file has to have same size as file in dat with this backend"


And I do like this:
Find the file CJBOCharacter.bina with a hex editor.  Look for the part that deals with a charater, ,then change another level's  CJBOCharacter.bina to that i have found.

but it dosn't work also...:(

Last edited by coool (03/03/08 11:03)

Offline

#2 03/03/08 20:03

EdT
Moderator
From: Los Angeles, CA
Registered: 01/13/07
Website

Re: Questions...I am so fool? oh...

coool: Are you using the Anniversary Edition of Oni?  This file will not work with the original version.

Offline

#3 03/03/08 20:03

geyser
Member
From: beyond the veil
Registered: 01/14/07
Website

Re: Questions...I am so fool? oh...

I think the problem is that coool is trying to import BINACJBOCharacter.oni into level19_Final.dat with OUP.
This can't work because the format of the .oni files is not at all that of a single data chunk expected by OUP.

coool, you must not import the file via OUP; just copy it into Oni\edition\GameDataFolder\level19_Final
(there'll be an original file by that name there, which you may want to back up rather than overwrite)
Once the new BINACJBOCharacter.oni is placed in Oni\edition\GameDataFolder\level19_Final, do this:
go to Oni\edition\install and either run the step9999 script or a lighter version that only does level19.

Last edited by geyser (03/03/08 20:03)


Behold the power of that which is yet unborn! For the swirling images that flow forth from the Chrysalis are only a shadow of the sleeper's true power.

Offline

#4 03/04/08 07:03

coool
Member
From: China Haikou
Registered: 02/12/08

Re: Questions...I am so fool? oh...

oh...so that's a waste of time to try that by use(using?- -||) OUP?...

I run big_zeal.bat,then I can change the BINACJBOCharacter.oni  in ONI\edition\GameDataFolder\level19_Final,
so it will work?

but  another problem,I run run_wind.bat or run_full.bat , "blam,oni crashed"...
I use a patch for xp before,so i can play oni in XP,
but "blam,oni crashed",..it happened again...

how could I use run_wind.bat  in XP?


I have the Microsoft .NET Framework 2.0,but blam all the same...

Last edited by coool (03/04/08 10:03)

Offline

#5 03/04/08 12:03

geyser
Member
From: beyond the veil
Registered: 01/14/07
Website

Re: Questions...I am so fool? oh...

oh...so that's a waste of time to try that by use(using?- -||) OUP?...

It's "using" here. And yes, .oni files can't be imported with OUP at all.

I run big_zeal.bat,then I can change the BINACJBOCharacter.oni  in ONI\edition\GameDataFolder\level19_Final, so it will work?

"It will work" is rather fuzzy. big_zeal.bat does everything: it splits the files, then moves them around, then patches them, then builds the final level archives.
If you want to include the changed or replaced Oni\edition\GameDataFolder\level19_Final\BINACJBOCharacter.oni in Oni, you have to rebuild level19_Final.dat
This is done (for all levels) with the step9999.bat (when you run big_zeal.bat, it actually calls step9999.bat at the end). You can also use another, custom script.

ECHO OFF
ECHO Recombining final level archives...
FOR %%L IN (19) DO (
    FOR %%D IN (..\GameDataFolder\level%%L_Final) DO (
        IF EXIST %%D (
            IF EXIST ..\..\GameDataFolder\level0_Final.sep (
                OniSplit.exe -import:sep %%D %%D.dat
            ) ELSE (
                OniSplit.exe -import:nosep %%D %%D.dat
            )
        )
    )
)
XCOPY ..\..\GameDataFolder\IGMD ..\GameDataFolder\IGMD /S /I /Y
COPY ..\..\persist.dat ..\persist.dat
COPY ..\..\key_config.txt ..\key_config.txt

This is just step9999.bat, where I replaced (0 1 2 3 4 6 8 9 10 11 12 13 14 18 19) with (19).

but  another problem,I run run_wind.bat or run_full.bat , "blam,oni crashed"...

run_wind.bat or run_full.bat just run Oni. There's no specific problem with them.
If Oni crashes for some reason right now, it will crash even if you run it directly.
There can be two reasons for a crash: the level binaries and the engine itself...

First of all, you have to give more details when reporting a Blam. Help us help you.
At what moment does Oni crash? When loading the last level? or at the very start?

Please check if there is a crash without the BINACJBOCharacter.oni experimentation...
Take a clean Oni and add the Edition. Run big_deal.bat, then run_wind.bat and report.

Also consider using the Daodan DLL instead of the so-called XP patch.
http://wiki.oni2.net/Daodan_DLL


Behold the power of that which is yet unborn! For the swirling images that flow forth from the Chrysalis are only a shadow of the sleeper's true power.

Offline

#6 03/05/08 06:03

coool
Member
From: China Haikou
Registered: 02/12/08

Re: Questions...I am so fool? oh...

It's OK now.
I used a patch before,that patch is to unlock konoko's move,mybe the patch changed the dat file,so it blam.

By using the edition,the game become different,but I don't like some of the difference.
that isn't important,
now I try to add charaters,when I have questions again,I'll come here and ask.I think this is the begining of my trying...all of the works I did last days are useless....

Thanks for your help!!and I feel fool about my questions befoe...

Offline

#7 03/05/08 07:03

geyser
Member
From: beyond the veil
Registered: 01/14/07
Website

Re: Questions...I am so fool? oh...

"By using the edition,the game become different,but I don't like some of the difference."
Just tell us what's on your mind. We'll make all the controversial upgrades optional.


Behold the power of that which is yet unborn! For the swirling images that flow forth from the Chrysalis are only a shadow of the sleeper's true power.

Offline

#8 03/05/08 15:03

coool
Member
From: China Haikou
Registered: 02/12/08

Re: Questions...I am so fool? oh...

Oh~~I have add the OutroNinja to level19~

EdT wrote:

This is important to know because for each character you add to a level, you have to change 2 other numbers in the file.

As this screenshot shows:
http://edt.oni2.net/OniSplit/CHARlevel1.jpg

38 7C is the size of the part in the raw/sep file in bytes (31800)
30 7C is the size of the complete collection from this postion in bytes (31792)

(These numbers will be different depending on which level you are editing. )

So for example if you add ten characters to this level, its will increase the size by 5,480 bytes

The last 4 bytes (after the last CHAR entry) used to be 00 00 00 00, signaling the end of the collection.
You will have to change them to 20 02 00 00, to announce the size of the first element you're adding.
Then after your first new element you'll have to write 20 02 00 00 to announce the other new element.
Finally, after your "new last element", be sure to write 00 00 00 00 to signal the end of the collection.

That's it!

EdT wrote:

Melodyman: As stated earlier, if you add characters to a level you need to change these numbers in the BINACJBOCharacter.oni file.

http://edt.oni2.net/OniSplit/CHARlevel1.jpg

38 7C is the size of the part in the raw/sep file in bytes (31800)
30 7C is the size of the complete collection from this postion in bytes (31792)

However, for my modified level 19 file, the numbers in hex are:
8CDC and 84DC

To convert to decimal switch the pair of numbers 8CDC becomes DC8C, then use a hex to decimal converter http://www.easycalculation.com/hex-converter.php you get the number 56460.  The same for the other number.

For the first location (8CDC) you have 56460 and the second location (84DC) 56452.

For each character you add, you need to increase the number by 548. So let's say you add 2 more characters, that's 548x2 or 1096.
Do the math: 56460+1096 = 57556 and 56452+1096 = 57548.

To convert these numbers to hex: http://www.easycalculation.com/decimal-converter.php
57556 becomes E0D4, 57548 becomes E0CC

To use them in Oni, again switch the pair of numbers E0D4 to D4E0 and E0CC to CCE0

Finally, replace 8CDC with D4E0 and 84DC with CCE0

Save the changes, recompile the level and you should have the new characters available.

Note: This is how I do it.  If there is an easier way, please post it.
Also, for Mac users, I use this application: http://www.toast442.org/hextoaster/

Hopefully, there's no typo in my instructions smile

so if I do the"+548" and change the 00 00 00 00 or 20 02 00 00 right,I can add a charater to the level which I want,is it right?

Offline

#9 03/05/08 18:03

EdT
Moderator
From: Los Angeles, CA
Registered: 01/13/07
Website

Re: Questions...I am so fool? oh...

so if I do the"+548" and change the 00 00 00 00 or 20 02 00 00 right,I can add a charater to the level which I want,is it right?

That's correct.  Be sure to post any changes you make on a level for us to see.

Offline

Board footer

Powered by FluxBB