From Sonic Retro

Category: Level editor
Version: 34.2
Status: Inactive
System: Microsoft Windows
Supported Games: Sonic Adventure DX: Director's Cut PC
Credits: MainMemory

SADXLVL is a tool for editing level layouts and other level-specific data in the PC version of Sonic Adventure DX: Director's Cut. It was written by MainMemory in Visual Basic .NET. It requires the .NET Framework 3.5 and the DirectX Runtimes to run.


  • Has (optional) automatic updates on startup.
  • Allows you to move and rotate level models.
  • Allows you to move many models at once by holding control while clicking.
  • Allows you to move death planes.
  • Allows you to import .vt files over a selected model.
  • Allows you to import new .nj files over a selected model.
  • Allows you to import new .obj files over a selected model.
  • Allows you to view a path file recorded with SADXPath.
  • Contains a material editor to edit the material data for models.
  • Contains SETedit to edit object layouts with SADXLVL's 3D view. Most of the information on that page applies here as well.
  • Contains a start position editor.
  • Contains an importer for autoloop paths.
  • Has support for levels in DLL files.
  • Uses customizable addresses and names in Addresses.ini

Version History

This is not complete as MainMemory didn't save a changelog anywhere except in a text file that was overwritten with each new version.


Updated 08/23/2012

  • Removed automatic updating and "Sonic Retro" splash screen.


  • Added a new error message so that people will stop bugging me about "Group with name "503C0" does not exist!" errors.


  • Added a new error message so that people will stop bugging me about "Group with name "503C0" does not exist!" errors.


  • Fixed: obj2nj reversed the order of colors (ARGB became BGRA).
  • Added: clicking on the color preview for diffuse or specular in the Material Editor displays the Microsoft color picker dialog. (Ported from SADXMDL)


  • Fixed out-of-range values for start position rotation.
  • Fixed material changes not showing up on instances.
  • Fixed material changes not saving for instanced models.
  • Fixed cam point 2 not showing up.
  • Fixed Copy button not copying all attributes of a camera.
  • Added file address display to SETedit and CAMedit, at request of Dude :P


  • Added mouse picking/moving for cameras.
  • Fixed title of CAMedit window.
  • Increased size of boxes for camera type, flags, pan speed, and priority.
  • Added "Import .nj" and "Import .obj" buttons to the Empty Models list.


  • Added more error info to landtable loading.
  • Fixed freespace finding.


  • Fixed negative rotations.
  • Added stack trace to NodeTable error message, now automatically copies message to clipboard.


  • Fixed INI parsing crash.
  • Rotation now uses the full 4 bytes.
  • Fixed NodeTable importing crash if nodetable has more entries than the current level.


Updated 12/04/2010

  • Fixed update check for non-English systems.


Updated 11/28/2010

  • Added more helpful error message to Nodetable import.
  • More correct .nj export.


Updated 09/26/2010

  • Fixed Degrees -> BAMS conversion when degrees >= 359.5.
  • Made invisible models always show up in white.
  • Added CAMedit.


Updated 09/13/2010

  • Added list of Empty Models, and an option to make any of them an instance of a selected model.
  • Forced all models to have 1,1,1 scale on saving, fixes Level clear function.
  • Added support for nodetable 1.5.
  • Fixed nodetable support.
  • Fixed flags not being reset for instances in nodetable import.


Updated 09/08/2010

  • Added diffuse transparency viewing for models with textures.
  • Fixed obj import adding every material in the mtl file to the model even if it's not used.
  • Added support for orbit cam in object editing mode.
  • Added support for loading models from files other than the exe. This will require you to copy sonic.exe.ini from the SADXLVL folder again.
  • Added models for Past objects, and some Station Square.
  • Added "Drop to ground" buttons for both objects and start points.
  • Added approximately 25% chance of Metal Sonic replacing Sonic on start points.


Updated 09/05/2010

  • Added vcolor saving to obj export.
  • Added diffuse transparency support to obj import/export.
  • Added texid saving to obj export.


Updated 09/05/2010

  • Fixed import after using Level clear function
  • Added nodetable import
  • Added diffuse material color display
  • Added texture list to material editor
  • Added vertex color support to obj import
  • Changed solid cube, sphere and cylinder objects to use models from SADX
  • Added orbit camera mode (press X)


Updated 08/25/2010

  • Doubled default SET object clip distance.
  • Added Object clip multiplier setting to the options. Increase it to see objects from farther away, at the cost of speed.
  • Fixed bug that caused crashes on some systems.


Updated 08/22/2010

  • Added mass .nj export to a folder with numbered files (0.nj, 1.nj etc).
  • Added mass .nj/.obj import from a folder with numbered files.
  • Added menu option to clear all model data from the level.
  • Fixed line drawing for SET objects.
  • Added clipping for SET objects. They will now only be drawn if they are within a specific distance from the camera, these values can be changed with SADXTweaker.
  • Added support for opening Sky Chase levels for SET editing (no level geometry). Copy from default INI to add them to the level list.
  • Added models for Sky Chase objects.
  • Added untested support for objf files to obj import.


Updated 08/13/2010

  • Fixed UVs for character start point models.
  • Improved mouse picking.
  • Added model for swinging spike ball.
  • Added rocket model to open rocket platform objects.
  • .obj export now exports only the level textures, instead of all the loaded textures.
  • Added option for .obj export to not export textures.
  • Exporting all to .obj will now also export animated models if they are visible.


Updated 08/05/2010

  • Fixed a bug with opening empty/nonexistent files in SETedit.
  • Added models for most objects in Twinkle Park, Chaos 2 and Perfect Chaos levels.
  • Added model for Froggy.
  • Fixed a bug in the default INI that made Emerald Coast 3 not load the correct textures. To fix this yourself, change the LevelID for the level to 0102.


Updated 07/28/2010

  • Loop Editor now has buttons that move the entire path.
  • Objects for Icecap and Windy Valley.
  • Start positions now save with everything else, instead of when the editor window is closed.
  • Material Editor now updates the level view immediately when something is changed.
  • Added Open From and Save As buttons to SETedit.
  • Made .nj export actually usable.
  • Added .obj import.


Updated 07/24/2010

  • Inactive editing windows will now become transparent.
  • Added much more information for Emerald Coast's objects, thanks to igorseabra4.
  • Most of Emerald Coast's objects now show models.
  • Added collision cube/sphere/cylinder viewing.
  • Removed "About" button from SETedit.
  • Added checkbox to switch SETedit from BAMS to degrees.
  • SETedit now creates new objects 20 units in front of the camera, instead of at 0,0,0.
  • Added display of debug names to SETedit.
  • Removed open/save dialogs from SETedit. Now SADXLVL tells it where the SET file is using the system path and the LevelID or SETName parameters for each level.


Updated 07/23/2010

  • More models for Emerald Coast, thanks to Dude.
  • Fixed a bug with keyboard camera control.
  • Reversed mouse camera controls.
  • Camera can be rotated by holding the middle mouse button.


Updated 07/23/2010

  • Fixed bug with loop saving.
  • Fixed bug with death area saving.
  • Fixed obj export.


Updated 07/22/2010

  • Loop editor can now import loops of any length.
  • Loop editor can now import/export rotation data as well.
  • Made selected loop use inverted color.
  • Added ability to move death areas with the mouse (press Z twice).


Updated 07/22/2010

  • Object List read from EXE file instead of INI files.
  • Some objects display using their models.
  • Now uses INI files with EXE-specific information instead of loading and saving EXEs directly (like SonED2).
  • Removed manual address entry for level geometry.
  • Automatically loads all textures for the level without prompting the user.
  • Displays character models at start points.
  • Now edits rotation for start points.
  • Loop editor added.
  • Increased rotation boxes in level editor to increment by 0x100.
  • Fixed bug with rotation boxes in level editor.
  • SETedit now displays rotation values in hex, instead of degrees.
  • Right click and drag to move models with the mouse.
  • Right click and drag with Ctrl held to rotate camera with the mouse.
  • .nj exporting added.
  • Fixed bug with importing nj files with VColors.
  • Added "Flip ZY-axis" and "Flip V coords" options for import/export.
  • Camera up/down changed to Shift+Up/Down.
  • Press Z to switch between Level and Object mouse modes.
  • Disabled Sonic Retro screen on startup.


Updated 06/25/2010

  • .nj importing fixed for instanced objects. Options to leave other instances untouched, repoint all instances or null the other instances.
  • .obj exporting now has option to not transform the vertices.
  • Redid some network/file IO stuff in the updater.
  • Fixed culling being reset to counter-clockwise when resizing.


Updated 06/23/2010

  • .nj importing no longer requires the model to be keyed to 0.
  • Added option to select a model by entering its SEG address (under File).


Updated 06/22/2010

  • Importing a .vt file no longer requires reloading the level.
  • .nj importing added, for EXE only. Uses same code and fsp file as SADXTweaker to find/create free space.
  • Run option added to File menu, allows you to play your game.
  • Show Animated option added to View menu.
  • Puyo Tools updated to 1.0.7.


Updated 06/01/2010

  • Added Texture Picker dialog
  • Added checkboxes for common flags to the level editor
  • Removed Use Position, Use Rotation checkboxes, SADXLVL will set the flags when saving
  • Added option to enable back-face culling by pressing the ; key
  • Added .vt export option
  • Added (incomplete) .obj export option, to save all visible or the selected models to an obj file for use in various 3d programs
  • Added more advanced view options: Visible, Invisible, All, Solid, Nonsolid, toggled by the dropdown menu under View or by pressing the B key
  • Added option to open new level from current file by pressing the F3 key
  • Added (non-animated) viewing of animated level objects


Updated 05/16/2010

  • P2 Path now saves properly.
  • Fixed a bug where start locations would render in wireframe if collision viewing was on.
  • Made nonexistant start locations uneditable (had no effect on saving).


Updated 05/14/2010

  • Added P2 Path editor
  • Added col flag editor


Updated 05/02/2010

  • Perfect texture coordinates.
  • Fixed loading of Adventure Fields.
  • Improved load time for Icecap 4.
  • SETedit now uses the full 12 bits for object type (supports up to 4096 different types in one level).
  • Added invalid version warning when an error occurs during loading, with an option to download the US crack version from my website.


Updated 03/27/2010

  • Added viewing of death zones.
  • Better texture coordinates.
  • Added support for Quads and Triangles.
  • Fixed Sand Hill loading.
  • 'T' key now allows you to cycle between all the starting positions in the level.
  • Added "Editors" menu.
  • Added option to hide the level editor.
  • Added strip/quad/triangle totals to Advanced Info in the editor window.
  • Increased Z-Buffer size to 24-bit.


Updated 03/25/2010

  • Fixed saving asking you to load another level.
  • Fixed start positions being highlighted when the last object in the list is highlighted.
  • Fixed saving start positions.
  • Fixed displaying of invisible models.
  • "Sonic Retro" screen will now appear in the middle of the SADXLVL window.


Updated 3/19/2010

  • Now allows you to open an EXE and a DLL file.
  • Now shows you the various starting positions for the characters.
  • New Start Position Editor (under View).
  • Now picks default DLL and PVM names based on the level you want to open.
  • Now loads the correct INI file in SETedit without needing to open a SET file first.
  • New "Help" menu.


Updated 01/30/2010

  • Objects have transparent borders, rather than blue ones.
  • Icecap 2/4 and Final Egg 2 will load now.


Updated 12/13/2009

  • Editor properly updates position fields based on the items you have selected.
  • Click-to-select fixed for items that use rotation and positioning.
  • Pressing Y with nothing selected no longer crashes.
  • Hedgehog Hammer no longer crashes.


Updated 12/11/2009

  • Fixed bug from v4.3 where clicking on empty space crashed the program.


Updated 12/11/2009

  • Hold "Ctrl" while clicking to select multiple models and move them at the same time.
  • The option to edit scaling has been removed, as it never worked right anyway.
  • Y and U can no longer be used to select models.


Updated 12/11/2009

  • readme.txt readded
  • *.dll filter option added to save dialog.
  • Path loading from SADXPath with F7 added.


Updated 12/10/2009

  • Path drawing added.


Updated 12/10/2009

  • DLL support added.


Updated 12/09/2009

  • Replaced RAR file with self-extracting installer.
  • Added Collision Sphere Calculation button.


Updated 12/08/2009

  • Automatic Updates


Download.svg Download SADXLVL
File: SADXLVL_v34.2.7z (346 kB) (info)
Current version: v34.2

Previous Versions

External Links