Level Info Editor

From NSMBW Modding Database
Jump to navigation Jump to search
Level Info Editor
Screenshots:

Type: Editor
Developer(s): RoadrunnerWMC
Stable Release Version: v1.7
Operating System: Windows, Linux, macOS
Written in: Python
License: GNU GPLv3
Download:

Source Code

Latest Release

Level Info Editor is a tool that can edit NewerSMBW's LevelInfo.bin file, which contains world and level names, level IDs, as well as other information.

Installation

If you're using the latest release, then simply extract the .zip file, and run the included executable file.

If you're using the source code, install Python, then double-click on level_info_editor.py. Alternatively, you can open a Command Prompt (or Terminal) window in the directory, and run the following command:

py -3 level_info_editor.py

This will open a window looking like the screenshot to the right of this page. Click File --> Open File (or press Ctrl-O on the keyboard), and open the LevelInfo.bin file from the /NewerRes folder to edit it. It's recommended to make a backup of the LevelInfo.bin file in case if there are problems in-game after editing it.

NOTE: You cannot create a new LevelInfo.bin file, however, it is possible to edit an existing one.

Usage

File Dropdown

The File dropdown contains general file handling options:

  • Open File... - Opens a window to select a LevelInfo.bin file.
  • Save File - Saves the currently loaded file.
  • Save File As... - Opens a window to save the file under a new filename.
  • Exit - Closes the program.

Help Dropdown

The Help dropdown contains a single option named About. Selecting this opens a window that displays the README.md file.

World Options

The World Options pane is the one you'll see when opening the program. The box on the left lists all the worlds in the file, press Add or Remove with a world selected to create/remove it. The pane has the following options:

  • World Number - The numerical ID that the world uses. This is used by the World Editor window in Koopatlas to identify what level names should be loaded. This field can only be set if at least 1 world half is enabled.
  • Has a 1st Half - Enabling this checkbox sets that the world will have one half.
  • 1st Half Name - Sets the name of the first half of the world, this name is used in the Star Coins menu. This field can only be set if the above checkbox is enabled.
  • Has a 2nd Half - Enabling this checkbox sets that the world is split in two halves.
  • 2nd Half Name - Sets the name of the second half of the world, also used in the Star Coins menu. This field can also only be set if the above checkbox is enabled.

NOTE: World names on the map HUD and file selection screen are defined in Koopatlas. The Yoshi's Island world name is hardcoded due to technical reasons. To edit that world name, see this page.

Levels

The Levels pane contains all the levels and their related information. The box on the right at the top of the pane lists all the levels in the selected world. The pane has the following options:

  • Name - The name of the level, this is shown on the Star Coins menu and the map HUD.
  • Filename - Sets which level archive this information is tied to. As an example, setting 1-1 will choose 01-01.arc.
  • Display Name - The displayed level ID in-game, this is how icons like the tower or castle are loaded. For example, setting 1-21 will display 1- in-game. For more information on using different icons, see the Character Codes section later on this page.
  • Normal Exit - Sets if the level has a non-secret exit via a goal pole, Level Exit Controller sprite, or boss. This flag is disabled for Shops, Challenge Houses, and Music Houses.
  • Secret Exit - Sets if the level has a secret exit. When this flag is enabled, completing only one exit for the level will turn the node color purple.
  • Star Coins Menu - Sets if the level will display on the Star Coin menu. This flag is disabled for Shops, Challenge Houses, Switch Palaces, and Music Houses.
  • World Half - Which half of the world the level is in. Used for sorting on the Star Coins menu.

Comments

The comments pane contains no options. Instead, it contains a text box where any comments for the file can be written. NewerSMBW's LevelInfo.bin file has the following comment:

No hidden messages here. Sorry.

Character Codes

This Display Name setting supports loading certain icons from the mj2d00_PictureFont_32_RGBA8.brfnt font file. The entries are written as displayed in-game.

Some values display different icons in-game depending on which box they're put in. The first box will be referred to as the "world slot", and the second box the "level slot". The table below documents what each value loads in-game. The "Result in-game" section has two columns in it, the left is for the world slot, and the right is for the level slot. If there's only one column, the character in-game is the same for both slots.

NOTE: 0 is a valid input, it displays 0 in both slots of the Display Name setting.

Value Result in-game Value Result in-game Value Result in-game
World slot Level Slot World slot Level Slot World slot Level Slot
1 1 26 Train 51 j
2 2 27 Airship 52 Nothing
3 3 28 S 53 lowercase L
4 4 29 Yoshi Egg 54 Nothing
5 5 30 U 55 n
6 6 31 V 56 Nothing
7 7 32 W 57 p
8 8 33 X 58 Nothing
9 9 34 Y Keyhole-5 59 r
10 A 10 35 Z Keyhole-6 60 Nothing
11 B 11 36 Music House 61 t
12 C 12 37 Shop 62 Nothing
13 D 38 Challenge House 63 v
14 E 39 Red Switch Palace 64 Nothing
15 15 40 Blue Switch Palace 65 x
16 16 41 Yellow Switch Palace 66 Nothing
17 17 42 Green Switch Palace 67 z
18 18 43 b 68 Nothing
19 19 44 Nothing 69 vertical bar symbol
20 A 45 d 70 Nothing
21 Tower 46 Nothing 71 ~
22 Tower 2 47 f 72 Nothing
23 Castle 48 Nothing 73
24 Tower 3 49 h 74
25 Bowser's Castle 50 Nothing 75

Changelog

v1.7 (June 6, 2023)

  • Fixed a bug introduced in v1.6 that caused crashes during saving.

v1.6 (March 15, 2023)

  • Added support for PyQt6. PyQt5 is also still supported.
  • The world list now shows world names in addition to world numbers.
  • Broadly cleaned up the code.
  • The code for loading and saving files was almost completely rewritten. A few bugs were fixed during that process.

v1.5 (January 10, 2021)

  • Fixed issues with modern PyQt versions.
  • Started providing builds for 64-bit Windows, Linux, and macOS.
  • NOTE: There was no official v1.4 release. The repository code was marked as "1.4" for many years, so it was skipped ahead to v1.5 in order to distinguish that release from that.

v1.3 (August 2, 2014)

  • Added license.txt and license headers to the source files.
  • New readme.
  • Dropped Python 2 support.
  • Added PyQt5 support.
  • Switched from py2exe to cx_Freeze.

v1.2.1 (August 9, 2013)

  • Fixed a small bug.

v1.2 (August 8, 2013)

  • Keyboard shortcuts added.
  • Drag-and-drop support added.

v1.1 (July 22, 2013)

  • World Sections tab has been replaced with the new user-friendly World Options tab.
  • Some level settings have been changed/updated.
  • New tooltips have been added to most window items. If you don't understand something, hover over it!
  • Fixed a bug in which Windows .exes don't close when File --> Exit is clicked.

v1.0 (July 19, 2013)

  • Initial release!