====== SM64 Editor ====== The SM64 Editor contains tools for importing levels, changing music, editing RAM banks, adding water boxes, and making many other tweaks. ===== Dialogs ===== ==== Import Settings ==== {{super_mario_64:sm64_editor_import.png?direct&200 |}} The Import Settings tab contains the controls for importing a new level from Wavefront OBJ format (.obj/.mtl files). ==== Level Settings ==== {{super_mario_64:sm64_editor_level.png?direct&200 |}} The Level Settings tab contains controls for terrain, music, environment, background, fog, and entry point. ==== RAM Bank ==== {{super_mario_64:sm64_editor_ram.png?direct&200 |}} The RAM Bank tab allows selection of the RAM banks for objects and enemies that can be placed in the level. ==== Collision ==== {{super_mario_64:sm64_editor_collision.png?direct&200 |}} The Collision tab configures the collision type for each material type in the level model. ==== Special Material ==== {{super_mario_64:sm64_editor_special.png?direct&200 |}} The Special Material tab allows adding of water boxes, lava, haze, and scrolling textures. ==== ROM Settings ==== {{super_mario_64:sm64_editor_rom.png?direct&200 |}} The ROM Settings tab contains many general ROM settings such as starting level, camera, checksum, start lives. ==== Miscellaneous ==== The Miscellaneous tab contains everything else, like boss star positions, trajectories (e.g. Koopa-the-Quick), {{super_mario_64:sm64_editor_misc.png?direct&200 |}} ---- {{super_mario_64:sm64_editor_tweak_manager.png?direct&200 |}} {{super_mario_64:sm64_editor_text_editor.png?direct&200 |}} {{super_mario_64:sm64_editor_hex.png?direct&200 |}} It also contains some nice tools for managing tweaks, a dialog editor, a hex editor, and applying PPF patches. ==== Music Settings ==== {{super_mario_64:sm64_editor_music.png?direct&200 |}} ===== Changes Made to ROM ===== As of version 1.9.3S (but prior to version 2.0), when loading a new SM64 ROM, it performs the following actions: - Runs M64ROMExtender.exe to decompress [[MIO0]] blocks and extend ROM to 24MB - Runs rom_expand_64.exe to further extend to 64MB - Applies obj_import18S.ppf - clear checksum verification infinite loop - override unused Behavior12 with copy and clear code - update reference to sequence bank (0x7B0860 -> 0x2F00000) - update reference to instrument set table (0x7CC620 -> 0x7F0000, len: 256 -> 512) - changes whomp's star spawn location (why?) - TODO: 0x8FC -> 0x4000, _pool_alloc() -> 0x80750000 - replace LevelCommand 10 and 17 with function 80401500 - reduce Mario's shadow size from 0x64 to 0x46 (why?) - inserts music menu names in unused space - applies "collision improvements fix" - 1000C8: LI T6,0x4000 -> LI T6,0x7FFF - applies "music volume bug fix" - 12A788: 00B40046 -> 00960064 - this seems to be adjusting some shadow size in geo layout? - additional music settings and sequences - relocate music from 0x02F00000 to 0x03E00000 - replace call to soundAlloc/0x80317040 with hardcoded 0x803D0000 - NOTE: this [[http://smwc.me/1214349|breaks console compatibility]]