Noah Petherbridge
75fa0c7e56
* Editor: Auto-save on a background goroutine so you don't randomly freeze the editor up during. * Fix actor linking issues when you drag and re-place a linked doodad: the level was too eagerly calling PruneLinks() whenever a doodad was 'destroyed' (such as the one just picked up) breaking half of the link connection. * Chunk unloader: do not unload a chunk that has been modified (Set or Delete called on), keep them in memory until the next ZIP file save to flush them out to disk. * Link Tool: if you clicked an actor and don't want to connect a link, click the first actor again to de-select it. Updates to the `doodad` tool: * `doodad edit-level --resize <int>` can re-chunk a level to use a different chunk size than the default 128. Large chunk sizes 512+ lead to performance problems. |
||
---|---|---|
.. | ||
commands | ||
main.go | ||
README.md |
doodad.exe
The doodad tool is a command line interface for interacting with Levels and Doodad files, collectively referred to as "Doodle drawings" or just "drawings" for short.
Commands
doodad convert
Convert between standard image files (bitmap or PNG) and Doodle drawings (levels or doodads).
This command can be used to "export" a Doodle drawing as a PNG (when run against a Level file, it may export a massive PNG image containing the entire level). It may also "import" a new Doodle drawing from an image on disk.
Example:
# Export a full screenshot of your level
$ doodad convert mymap.level screenshot.png
# Create a new level based from a PNG image.
$ doodad convert scanned-drawing.png new-level.level
# Create a new doodad based from a BMP image, and in this image the chroma
# color (transparent) is #FF00FF instead of white as default.
$ doodad convert --key '#FF00FF' button.png button.doodad
Supported image types:
- PNG (8-bit or 24-bit, with transparent pixels or chroma key)
- BMP (bitmap image with chroma key)
The chrome key defaults to white (#FFFFFF
), so pixels of that color are
treated as transparent and ignored. For PNG images, if a pixel is fully
transparent (alpha channel 0%) it will also be skipped.
When converting an image into a drawing, the unique colors identified in the drawing are extracted into the palette. You will need to later edit the palette to assign meaning to the colors.