Sprite Editing Instructions
Any sprite within Nuclear Throne can be edited. While this includes some basic technical aspects, it's actually a fairly simple process. The tedious part of this is changing every single sprite in any walk or idle animation, which is why community edits usually just include someone's character main or a well used weapon. As always with file editing make sure to backup your files before editing in case any major mistakes are made, and another backup afterwards for any changes. Updating/changing versions will not retain edits.
Sprite editing uses an online tool for older versions of the game, but is directly viewable from within the game files 2023 beta forwards.
Note: Updating sprites between versions can be an especially tedious process, especially for larger edits, as each sprite changed needs to be individually added. When it comes to sprite editing, understand your edits may eventually be on an outdated version. Pick an update you plan to stick with for a while.
2023 Beta Editing
Editing sprites in the 2023 Beta is the simplest process.
- Navigate to your Nuclear Throne files. (Right click in library -> Properties -> Installed Files -> Browse).
- Enter the folder titled 'tex'.
- From here there will be 6 spritesheets in which everything is stored. Any can be opened in an image editor tool.
- paint.net is recommended by this guide as it gives the tools necessary while not being too complex.
- Make any desired edits and save the spritesheet. Do not modify the size of the image.
- Once the game is launched any new changes will be present. Make sure to make a new backup afterwards.
As a reminder Steam will auto-update by default (this can be toggled off), so backing up the entire save is a good idea to not lose changes. Oudated updates/betas can even be added to your Steam library using the dropdown instructions here.
(Include UMT here later)
Non-Beta & 2021 Beta Editing
Unlike the 2023 beta, older versions require usage of multiple tools in order to have them work. However the texture viewer also makes technical spriting easier.
- Visit YAL's texture viewer, a necessary tool for this process.
- Select 'Menu!' on the left top and select 'Open'. This should automatically open the folder where the Nuclear Throne files are stored.
- Open the correct program based on version; if the wrong one is selected it will simply give an error.
- For the 2021 betas, select the 'data.win' file.
- For u99r1, select the 'nuclearthrone.exe'.
- If done right this will display 6 different spritesheets on the left sidebar.
- Select the desired spritesheet to edit and select the 'Save?' button on top of the screen. The specific spritesheet will be saved to your folders.
- Open the spritesheet using any image editing tool.
- paint.net is recommended by this guide as it gives the tools necessary while not being too complex.
- From here any modifications to the sprite can be made - do not change the canvas size of the spritesheet.
- Once the desired edits are made save the image as a png.
- Back on the texture view page, select the 'Replace?' button on the correct spritesheet being edited and select the now modified spritesheet in full.
- If the image file is larger than the default it will return an error and not upload, which is a common issue.
- Using png crush is recommended by this guide as it will reduce the file size without sacrificing quality.
- The edits within the viewer will not immediately show if replaced. Changing to a different spritesheet then swapping back will make the changes visible.
- Once finished select the 'Save As...' button under the menu. This will generate a new file. Replace the old one with this.
- The next time Nuclear Throne is launched any edits changed will now be present.
- Make sure to make a new backup afterwards.
Texture Viewer
YAL's texture viewer is more than just a tool to retrieve the sprites, it has a few advanced tools.
Selecting 'Menu!' and then clicking 'Show sprites' will open up a list of every single sprite on the sheet based on its strips/groupings. (The sidebar can be adjusted to view whole lines easier)
Ctrl+F can be used to find groupings a lot easier, but objects will be referred to in the code differently than what the community uses. Use the sprite list alongside the texture viewer as it has interactable categories to find every sprite group's naming quickly.
Selecting a sprite name will automatically change to the spritesheet in which it is located on. Zooming out may be necessary to actually see where the sprites are, though, as it won't jump to specific sprites.
The listings aren't individual sprites but rather their groupings. For instance in the image above, 'RatkingWalk' includes 8 sprites for its walking animation which are numbered from 0-7. In the image its first frame(0) and fifth frame(4) can be seen.
Mousing over a sprite will show its sprite size (34x31 in this case), and its X and Y coordinate location on the spritesheet (473, 797 in this case).
The above image is shown through paint.net. Using the texture viewer one can discern where the spritebox starts (at 473, 797) and the size of the sprite (34x31). Coordinates of the cursor are shown at the right bottom of the program.
Anything within the spriting bounds can be edited. This means it does not have to be within the specific lines of the sprite, just within the bounds of the red box selection from above. Bear in mind the hitbox will NOT change, so edits that remove/add pixels to a sprite could lead to some confusion in gameplay.
Sprites can also be right clicked to select their entire groupings, and it will jump to its spot on the sprite list.
Under 'Menu!' there are two other tools, 'Save images' and 'Save strips'. These will pack every image into a ZIP file based on their spriting bounds to be downloaded. As this is over 10,000 sprites this will take just a few short minutes to be both created and extracted. These are not necessary to the process of sprite editing for vanilla NT.
NTT Spriting
Coming soon to a Wasteland near you!