Level graphics data
RD1P - Spring Valley
RD1M - Gillwing
RD2P - Frozen Bell
RD2M - Puffy
RD3P - Mystic Forest
RD3M - Clawz
RD4P - Aqua Garden
RD4M - Reala
RD5P - Soft Museum
RD5M - Jackle
RD6P - Stick Canyon
RD6M - Gulpo
RD7P - Twin Seeds
RD7M - Wizeman
RD7M - Wizeman (background tiles)
Nightopian graphics data
AL1P - Spring Valley
AL2P - Frozen Bell
AL3P - Mystic Forest
AL4P - Aqua Garden
AL5P - Soft Museum
AL6P - Stick Canyon
PLTEX - player graphics
PCOM - HUD and level layout objects
MCOM - "Result" graphics after the boss fight
SELECT - Main menu
SELECT S - Main menu background tiles(?)
NAME - Boss nameplates in the credits
TITLE - Title screen
Extra graphics from the level (the ground tiles and purple water)
GTXALPS - Spring Valley
GTXFORES - Mystic Forest
GTXMAGNE - Stick Canyon
GTXOCEAN - Aqua Garden
GTXRUBBE - Soft Museum
GTXSNOW - Frozen Bell
Hint screens
HINT_E - English hint screen
HINT_J - Japanese hint screen
Warning messages(for broken memory files and stuff)
KEIKOKU - Japanese
KEIKOKUP - English
Spring Valley - alp
Splash Garden - sea
Mystic Forest - mor
Frozen Bell - snw
Soft Museum - gom
Stick Canyon - mag
Twin Seeds - tokai
import as raw with 22050 hz,8 bit pcm, setero then split the setero track to mono and delete the part with noise ...... now u have it spedded up ,go to effects,change speed, precent change -50, after that, done!
The SFD files are the audio tracks from cd. The ...SEQ.PRS files are sequenced music tracks (equal to midi format), ...SND.PRS are sound banks. Those contain sound definitions including PCM compressed samples (8 and 16 bit) and also dsp programs.
----------------
File load debug:
06006D08 -> load function
r4 = pointer to file name
r5 = destination address
File Destination
---- -----------
ALPWSNDC.PRS -> 25A0A000
ALPWSEQ.PRS -> 00200000
PRG1PX.PRS -> 060B0000
AL1PX.PRS -> 06080000
PCOM.PRS -> 06080000
RD1PX2.PRS -> 00200010
PCOM2X.PRS -> 0028D000
RD1PXH.PRS -> 06098000
PCOMH.PRS -> 06080000
PCOMH2X.PRS -> 06089500
GRDXALPS.PRS -> 00200000
GTXXALPS.PRS -> 05C68800
WALK_ANIM = 0x73;
WALK_ANIM2 = 0x74;
WALK_ANIM3 = 0x75; // upslope walk?
WALK_ANIM4 = 0x76; // lean back -> uphill?
WALK_ANIM5 = 0x77; // nearly same as 0x76
WALK_STEEP_ANIM = 0x78; // walking upwards (crawl)
WALK_DOWN_ANIM = 0x79; // lean forward, animate faster -> downhill?
RUN_ANIM1 = 0x7a;
RUN_FLIP_ANIM = 0x7b; // flip over, stumble
RUN_ANIM2 = 0x7c; // running
RUN_ANIM3 = 0x7d; // running more movement
RUN_ANIM4 = 0x7e; // running body further extended
RUN_ANIM5 = 0x7f; // running body extended, no y movement and a little bit in air?
ROTATE_LEFT90_ANIM = 0x80; // rotate 90 degreens (standing) into idle
JUMP_START_ANIM = 0x81; // jump -> ends at 83
JUMP_START2_ANIM = 0x82; // jump (bigger or forward?) -> ends at 84
JUMP_LAND_ANIM = 0x85; // jump land
WALK_HOLD_LEFT_ANIM = 0x86; // walking hold left arm
RUN_HOLD_ANIM = 0x87; // running holding with both hands
ROTATE_RIGHT_ANIM = 0x88;
FALL_OVER_TO_JUMPSTAND_ANIM = 0x89; // -> a6 (jump up) -> 9e (stand)
FALL_CLEAN_BACK_ANIM = 0x8a; // -> a7 (stand up and clean) -> 9e (stand)
DRIVE_ANIM = 0x8b; // sitting driving vehicle?
WALK_SEARCH_ANIM = 0x8c; // walking looking left and right arms extended
JUMP_START_LOOKUP_ANIM = 0x8d; // jump start and look up at same time -> 83
FALL_BACKWARDS_ANIM = 0x8e;
FALL_FORWARDS_ANIM = 0x8f;
FLIPOVER_FORWARDS_ANIM = 0x90; // very fast
LEAP_JUMP_START_ANIM = 0x91;
STRETCH_JUMP_START_ANIM = 0x92; // stretch legs -> 94 (transition?) -> 93 (front flip) -> 94 ...
// 94 jump flip transition -> 93 flip
// 95 non humanoid? (legs up pose)
// 96 non humanoid?
// 97 non humanoid?
// 98 non humanoid (sled pose?)
// 99 non humanoid (sled pose push forward to legs up pose)
// 9a non humanoid? -> 95 (legs up pose)
FREE_FALL_START_ANIM = 0x9b; // -> 9c (free fall loop)
// 9c (free fall loop)
FREE_FALL_HEAD_SIDE_ANIM = 0x9d; // lay flat move head sideways
IDLE_ANIM = 0x9e; // + 9f chained
// 9f idle 2 pose
ROTATE180_ANIM = 0xa0; // rotate 180 while standing -> 9e (idle loop)
IDLE_ANIM2 = 0xa1; // raised fist pose -> a2 chained
// a2 idle 2 pose
SQUAT_TO_IDLE2_ANIM = 0xa3; // squat -> a1
ROTATE180_TO_WALK_ANIM = 0xa4; // rotate 180 to walk -> 73
SLIP_ANIM = 0xa5; // slip -> 89 (jump up to stand)
// a6 jump up to stand
// a7 stand up and clean
TUMBLE_TO_BACK_SLIDE_ANIM = 0xa8; // tumble forward -> a9 (lay on back with legs fidgeting)
CHEER_TO_IDLE_ANIM = 0xaa; // cheer -> 9e (idle)
FLIP_OVER_FORWARD_ANIM = 0xab; // flip over -> 8a (FALL_CLEAN_BACK_ANIM)
FALL_BACK_ANIM = 0xac; // flip over -> a6 (jump up to stand)
LEDGE_BALANCE_ANIM = 0xad; // balance at ledge anim -> 9e
FALL_BACK_ANIM2 = 0xae; // fall on back legs up -> 8a (FALL_CLEAN_BACK_ANIM)
STARTLE_ANIM = 0xaf; // little startle -> 9e
LOOK_UP_ANIM = 0xb0; // look in air -> 9e
IDLE_SELECT_ELLIOT_ANIM = 0xb1;
DREAM_START_ANIM = 0xb2; // -> b3 -> b4 -> b5 -> b6 -> back to b5 (loop)
DREAM_START_ANIM2 = 0xb7; // -> b7 -> b8 -> b9 -> ba -> back to b9 (loop)
// second set of default anims (2nd kid?)
WALK_ANIM6 = 0xbb; // walk
WALK_STEEP_ANIM2 = 0xbc; // walking upwards (crawl)
RUN_ANIM6 = 0xbd; // run
FALL_TO_STAND_ANIM = 0xbe; // sit (shake head) -> c0 (swipe face) -> 9e
LEAP_TO_JUMP_ANIM = 0xbf; // leap (bend backwards) -> 94 (flip jump transition)
// c0 stand up and swipe face
VICTORY_JUMP_ANIM = 0xc1; // victory jump -> 9e
FLIP_OVER_TO_FALL_ANIM = 0xc2; // flip over forward -> be
IDLE_SELECT_CLARIS_ANIM = 0xc3;
// d4 - e2 (acrobatic loops?)
// e3 -> 36 (something nights or kids floating?)
GLIDE_ANIM = 0xe4; // e4 (hanging, paragliding?)
// e5 (sideways lookdown?)
DRIVE_HIT_ANIM = 0xe6;
// e7 (float look around)-> 36 (something nights or kids floating?)
LEDGE_BALANCE_ANIM2 = 0xe8;
DRIVE_TO_TUMBLE_ANIM = 0xe9; // e9 (sit, very short)-> ec (backwards tumble)
CHEER_ANIM = 0xea;
GLIDE_TAKEOFF_ANIM = 0xeb; // eb (take off) -> e4 (glide)
// ec (backwards tumble, from sitting?)
SONIC_WALK_ANIM = 0xed; // sonic walk
SONIC_RUN_ANIM = 0xee; // sonic run
SONIC_JUMP_ANIM = 0xef; // sonic jump (spin)
SONIC_IDLE_ANIM = 0xf0; // sonic idle
⚠️Disclaimer! You need Yabause or any other emulator that supports memory editing
Start game and go to pause mode with start button (in game)
Select "Debug" from Yabause-Menu-bar and "Memory-Editor" (last option)
Click "Goto Address" button
Enter 603830e as value (you can copy paste) and press OK
Click on the spot where the cursor appears
Type c1a0
Click "Close" button
Exit pause mode (in game)
Wait for clock to appear (if it isn't already there)
If you want the other head you can type f330 instead of the c1a0
Claris -> NiGHTS
Enter a level
Open memory editor
Goto location: 6062034
Paste this values: 06052BCC060532A406053ED40605418C060544EC060546FC060549B406054D1406054F240605508C0605535C0605556C060556D4060559A406055BB
- Open emulator's memory editor
- Go to Address 060FFB15
- Type 02 in the small highlighted box
- Another alternative is to use Action Replay code 360FFB15 0002
Sonic Jam hacking guide - lots of this applies to NiGHTS and Burning Rangers:
https://drive.google.com/drive/folders/1GahOG0Svem2OYHzo9PgfL75BkSbYrY0R
File comparisons among several NiGHTS builds.
https://docs.google.com/spreadsheets/d/1Ga6Z-Jns6z6Xm0ZCml_FldRMVirKKo99T9Phi97SO2Y/edit?usp=sharing
Bo’s post with NiD hacking using Burning Rangers tools
https://x.com/memory_fallen/status/1694328725695873056