-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Sprite compiler
This page documents OpenRCT2's built-in tool for importing and exporting of sprites in the game.
-
openrct2 sprite details \<sprite file> [sprite index]
- Displays basic information about the supplied sprite file, like the number of sprite and the total size of the file. If the index of a sprite has been supplied, the width, height, x and y offset and data offset of that sprite will be shown.
-
openrct2 sprite create \<sprite file>
- Creates a new empty sprite file. For the newly added graphics the file g2.dat is used.
-
openrct2 sprite append \<sprite file> \<image> [x offset] [y offset]
- Adds the specified image to the end of the sprite file. If supplied, the x and y offset will be used. Since OpenRCT2 has a limited colour palette, the image has to be converted. Currently, there are three modes of conversion, which can be specified by the option
-m
:-
-m default
: This mode behaves the same as the importer did before. Any pixels not present in the colour scheme will be ignored. -
-m closest
: This mode will change all pixels to the closest pixel in the palette. Already converted images will be unaffected. -
-m dithering
: This mode will use Floyd-Steinberg dithering to make the image look close to the original while converting to the colour palette. Already converted images will be unaffected.
-
- Adds the specified image to the end of the sprite file. If supplied, the x and y offset will be used. Since OpenRCT2 has a limited colour palette, the image has to be converted. Currently, there are three modes of conversion, which can be specified by the option
-
openrct2 sprite build \<sprite file> \<json path> [silent]
-
Creates a new sprite file and uses the supplied JSON file to add sprites. This also accepts the modes as described in append.
Every time the game is compiled, the images in \resources\g2\ will get added in this way automatically. It should be noted that if an image already uses the OpenRCT2 colour palette, none of the modes will change the output. Therefore, if the result of dithering is not to your liking, you can add your own custom image and still use dithering with this command for the other images. To learn how to do dithering yourself, see dithering images. If silent is not used, the added sprites will be displayed.
-
-
openrct2 sprite export \<sprite file> \<sprite index> \<image to create>
- Exports the sprite at the specified location in the sprite file to the image location.
-
openrct2 sprite exportall \<sprite file name> \<image directory>
- Exports all the sprites in the specified sprite location to the image directory. This is useful when creating open replacements for the sprites in the original game.
-
openrct2 sprite exportalldat \<DAT identifier> \<image directory>
- Exports all the sprites in the specified DAT to the image directory. This will also output JSON which includes the x and y offsets of the images. This feature is useful for converting legacy custom objects to JSON objects.
-
sprite combine <index file> <image file> <output>
- Combines a set of index (CSG1i.dat) and image (CSG.DAT) files from RollerCoaster Tycoon 1 into a file compatible with g1.dat. This file can then be used by any tool that can modify these, such as OpenRCT2’s own sprite exporter.
- Home
- FAQ & Common Issues
- Roadmap
- Installation
- Building
- Features
- Development
- Benchmarking & stress testing OpenRCT2
- Coding Style
- Commit Messages
- Overall program structure
- Data Structures
- CSS1.DAT
- Custom Music and Ride Music Objects
- Game Actions
- G1 Elements Layout
- game.cfg structure
- Maps
- Music Cleanup
- Objects
- Official extended scenery set
- Peep AI
- Peep Sprite Type
- RCT1 ride and vehicle types and their RCT2 equivalents
- RCT12_MAX_SOMETHING versus MAX_SOMETHING
- Ride rating calculation
- SV6 Ride Structure
- Settings in config.ini
- Sizes and angles in the game world
- Sprite List csg1.dat
- Sprite List g1.dat
- Strings used in RCT1
- Strings used in the game
- TD6 format
- Terminology
- Track Data
- Track Designs
- Track drawers, RTDs and vehicle types
- Track types
- Vehicle Sprite Layout
- Widget colours
- Debugging OpenRCT2 on macOS
- OpenGL renderer
- Rebase and Sync fork with OpenRCT2
- Release Checklist
- Replay System
- Using minidumps from crash reports
- Using Track Block Get Previous
- History
- Testing