Console

The wiki has moved over to GitHub: https://github.com/sirjuddington/SLADE/wiki

SLADE features a console which serves two main purposes:
 * Log certain events and actions, which can be useful for troubleshooting
 * Offer an interface to use certain obscure or usually not useful commands

The console can be toggled by Ctrl-2 or through the View menu. It can be free-floating or docked in the main window.

Warning: console commands are for users who know what they are doing. If used incorrectly or on the wrong entries, some of them can destroy the content of the entry or otherwise provoke bugs.

Many console commands apply to the entry or entries currently selected in the entry list panel. Some apply only to one selected entry (notably, all those that modify an image, which will only work if said image is being displayed in the entry panel). Others are more general.

Existing console commands can be listed with the cmdlist command. They include:
 * addimfheader: automatically perform the needed operations to to the currently selected entry. (Make sure it actually is an IMF file without a header first before calling this command.)


 * crop x1 y1 x2 y2: crop the currently selected image between the coordinates passed as parameters.


 * echo text: repeat the given text.


 * imgconv: convert the currently selected image to a format that SLADE can write. If the image is paletted and uses an external palette, it will be converted to the Doom graphic format. Otherwise, it will be converted to PNG. This command is also implicitly called by other image-modifying commands.


 * lookupdat: extract the component parts of the selected entry which should be the "LOOKUP.DAT" file from a Build engine game. This will create the entries COLORMAP.DAT, WATERPAL.PAL, SLIMEPAL.PAL, TITLEPAL.PAL, 3DREALMS.PAL and ENDINPAL.PAL.


 * mirror axis: mirrors the currently selected image. The axis can be either horizontal (x, h, horz or horizontal) or vertival (y, v, vert or vertical).


 * palconv</tt>: convert the currently selected palette from 6-bit VGA mode to 8-bit mode. If the entry is not a palette, or is already in 8-bit mode, it will be destroyed by this command; so make sure first that it is indeed a 6-bit palette. (A VGA 6-bit palette will appear as a normal palette but extremely dark, since the maximum brightness value for each color channel is 63 instead of 255. SLADE 3 will shift each value both forward and backward, so 0x00aabbcc becomes 0xaabbccaa. This is more accurate than simply multiplying by four since a value of 63 becomes 255 and remains the maximum, instead of becoming 252 and losing a bit of brightness. But if the value was 8-bit to begin with, the two most significant bits are lost.)


 * palettedat</tt>: extract the component parts of the selected entry which should be the "PALETTE.DAT" file from a Build engine game. This will create the entries MAINPAL.PAL, COLORMAP.DAT and TRANMAP.DAT.


 * replacespecials</tt> oldspecial [arg0 [arg1 [arg2 [arg3 [arg4]]]]] newspecial [arg0 [arg1 [arg2 [arg3 [arg4]]]]]: replaces the given old line special (and thing special too if appropriate to map format) in all maps in the current archive. (Does not handle UDMF yet.)


 * replacetextures</tt> oldtexture newtexture: replaces the given old texture by the given new texture in all maps in the current archive. (Does not handle UDMF yet.)


 * replacethings</tt> oldthing newthing: replaces the given old thing (identified by its editor number) by the given new thing (identified likewise) in all maps in the current archive. (Does not handle UDMF yet.)


 * rotate</tt> angle: rotate the currently selected image. The angle can be 90, 180 or 270.


 * size</tt>: displays the exact size in bytes of the currently selected entry.


 * splash</tt> [text]: display or hide the splash window. If parameters are given, they will be displayed as message in the splash window. If no parameters are given, the splash window is hidden.


 * tablesdat</tt>: extract the component parts of the selected entry which should be the "TABLES.DAT" file from a Build engine game. This will create the entries VGAFONT1.FNT and VGAFONT2.FNT. (The sine/cosine, arctangent and gamma brightness tables are not extracted as individual lumps, however.)


 * type</tt> [type [force]]: Without parameters, this command gives a list of existing entry types and their aliases. With a parameter corresponding to a type name, it attempts to identify all selected entries to that type. This can be useful if an entry is misidentified as a different type from what it actually is. With a parameter and the "force" keyword passed as second parameter, this bypass the identification check. Warning: doing so can be dangerous. Make sure you know what you are doing when using the "force" keyword.