New Terrain Commands

Some time ago, I reworked the terrain engine into a new shiny module. This module is now nearing completion as far as core features go – from here on in, new features will be towards things like v2.0 goals. Since it is now working correctly for most things, I have reworked the console commands back in – with some improvements. Many of you noticed in the last two-three weeks the old commands were ‘depreciated’ – these should now be working again as of r4039/4040.

So, a little guide.

First – I’ve created a new ‘command manager’ which also handles console commands, the goal of here is to enable LSL/Scripting functions for every console command, as well as allowing proper syntax-checked console input plus help. The short of this is you can now type “<module> <command> help” for help about a particular command, or “<module> help” for a list of valid commands. At the moment only “terrain” is supported for modules.

Region# :
terrain help
17:48:06 - ===Terrain===
17:48:06 - * load - Loads a terrain from a specified file.
17:48:06 - * load-tile - Loads a terrain from a section of a larger file.
17:48:06 - * save - Saves the current heightmap to a specified file.
17:48:06 - * fill - Fills the current heightmap with a specified value.
17:48:06 - * newbrushes - Enables experimental brushes which replace the standar
d terrain brushes. WARNING: This is a debug setting and may be removed at any ti
Region# :

You can see the list of commands there, with a brief description of what they do. You can see more detailed help, IE.

Region# :
terrain load-tile help
17:50:26 - == load-tile ==
17:50:26 - Loads a terrain from a section of a larger file.
17:50:26 - = Parameters =
17:50:26 - * filename (String)
17:50:26 -      The file you wish to load from, the file extension determines th
e loader to be used. Supported extensions include:  .r32 (RAW32) .f32 (RAW32) .t
er (Terragen) .raw (LL/SL RAW) .jpg (JPEG) .jpeg (JPEG)
17:50:26 - * file width (Integer)
17:50:26 -      The width of the file in tiles
17:50:26 - * file height (Integer)
17:50:26 -      The height of the file in tiles
17:50:26 - * minimum X tile (Integer)
17:50:26 -      The X region coordinate of the first section on the file
17:50:26 - * minimum Y tile (Integer)
17:50:26 -      The Y region coordinate of the first section on the file
Region# :

You will notice some of the commands have subtly changed since the previous version, load-tile now takes a slightly different input format, measured in tiles rather than pixels. Tiles are assumed to be equal to Constants.RegionSize (256) squared. So, the old format of ‘load-tile file.raw 512 512 1999 1999’ now takes the syntax ‘load-tile file.raw 2 2 1999 1999’.

The help in this new version should be more comprehensive and user-friendly for end users (or I at least hope so), I’m keen to see what users think. Also, if there are any features the previous version had that are not supported now and you were using, please let me know and I will add them to my TODO, but all other things being equal – I’m now going to move on to redesigning the console input for the rest of OpenSim.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: