A BYOND language smartness provider, map renderer, and more.
Bugfix and maintenance release.
DM language updates apply to all components.
/atom
variables (by SpaiR, #89).#include
ing a secondary .dme
file.##
token-pasting operator not handling integer right-hand arguments (#109)./list
, /savefile
, /client
, and /world
inheriting from /datum
(#98)./*
comments in the global scope (#105).-e <filename>
to specify environment to parse.--output <dirname>
to specify output directory (default is dmdoc
).--modules <dirname>
to specify directory to scan for Markdown files (default is code
)./*!
comments including the !
in the output (#90).-e <filename>
command-line option to specify environment to parse.set SpacemanDMM_should_call_parent = TRUE
and FALSE
properly, rather than 1
and 0
only (#106).This is the 1.0 release of the SpacemanDMM tooling suite for DreamMaker codebases, consisting of:
See the README for more information.
Attached binaries are for x86-64 Windows (.exe
) and x86-64 Linux (no extension). Linux binaries are statically-linked using musl.
Additions
.dme
file is not specified, an attempt is made to autodetect one.__FILE__
and __LINE__
macros are now expanded.#if
and #elif
directives are now actually evaluated.defined()
form is now recognized in preprocessor conditionals.parent_type
var is now handled properly.^
and **
operators are now evaluated in constants./image
are now recognized.Tweaks
.dmi
files in one pass, improving speed.Fixes
2e6-1
are no longer misinterpreted.layer
for each atom type are now recognized.layer
no longer crash.#include
directives no longer indent the first line of the file they include.#else
or #elif
in a row no longer activates more than one.First binary release of the dmm-tools
CLI, providing BYOND map rendering and analysis tools powered by SpacemanDMM.
Subcommands:
diff-maps <left> <right>
: List the differing coordinates between two maps.lint-maps [-n] [--reformat] <maps...>
: Lint and automatically fix the specified maps.list-passes [-j]
: Show information about the render-pass list.map-info [-j] <files...>
: Show metadata information about the map.minimap
: Build minimaps of the specified maps.
[--disable pass-1,pass-2,...] [--enable pass-1,pass-2,...]
: Disable or enable render-passes.[--max x,y[,z]] [--min x,y[,z]]
: Set the bounding cuboid to act upon.[--optipng] [--pngcrush]
: Run output through a PNG optimizer automatically.[-o output]
: Set the output directory.<files...>
Default render passes:
hide-space
: Do not render space tiles, instead leaving transparency.hide-areas
: Do not render area icons.hide-invisible
: Do not render invisible or ephemeral objects such as mapping helpers.random
: Replace random spawners with one of their possibilities.pretty
: Add the minor cosmetic overlays for various objects.spawners
: Replace object spawners with their spawned objects.fake-glass
: Add underlays to fake glass turfs.transit-tube
: Add overlays to connect transit tubes together.gravity-gen
: Expand the gravity generator to the full structure.Additional render passes:
only-powernet
: Render only power cables.only-pipenet
: Render only atmospherics pipes.