World Decoration Package

Post your Custom Scripts or Packages.

Moderator: POL Developer

Post Reply
Yukiko
Distro Developer
Posts: 2824
Joined: Thu Feb 02, 2006 1:41 pm
Location: San Antonio, Texas
Contact:

World Decoration Package

Post by Yukiko » Mon Sep 12, 2022 10:47 pm

This package will decorate the facets (realms). This package only places items in the world. It does not populate the maps with NPCs.

There are two decoration commands available.

decoratefacets - This will bring up 2 gumps. The first one asks you to select whether your map is post or pre-Stygian Abyss. Due to the changes made to the maps with the Stygian Abyss expansion, the decorate script needs to know which version of UO you are using. After you have selected the map you are using, you will be presented with a gump to select the facets you wish to decorate. Only the facets (realms) that were generated for your server will be displayed in the gump. Choose those you want to decorate. Click "Continue" and they will be decorated. Please take note that this package will not work properly with the smaller pre-Mondain's Legacy maps.

undecoratefacets - This command is the reverse of the decoratefacets command. It will remove only those items placed in the facet by the decoratefacets command. You will receive the same gumps as in the first command. In the second gump you will only see those facets previously decorated by the decoratefacets command.

Two other commands that are in this package. They are to prevent accidentally destroying items placed by the decorate command. To make these commands relevant, please read the notice below.

Those commands are:
udestroy - This will destroy only items that were placed by the decorate command. The target is persistent. This allows destroying more items without the need to keep typing a command. Simply press [ESC] when you are done.
and
udestroymany <range> - This performs the same function as udestroy except that you may specify a range that will destroy all items placed by the decorate command within the range of the target. If you do not specify a range the script will default to a range of 1. Simply press [ESC] when you are done.

Note: This is an optional step you can take but it is not necessary to the functioning of the decorate command. In order to prevent the accidental destruction of decorations, you will need to modify any of the normal "destroy" commands that are present in your scripts. The decorate command sets a CProp, Static equal to 1, on items it creates and your normal destroy commands need to check for this CProp, and if present, leave the item in the world. I have posted the normal destroy command from the Distro as an example.

This package is already in the Distro but I had a request from CaniBall on the POL Discordance server to help him get it working for his server. The Distro version is dependent on the Distro gumps package. So the createWorld package cannot be just plugged into other shards that do not have the Distro gumps package. So I decided to release it as a drop-in package with no external dependencies. To do this I took the easy path by placing the Distro gumps files within the createWorld package I posted here.

A special thanks to the ServUO community for their hard work creating the configuration files containing the item placement data that were used in this package.

And a very special thanks to ThisIsMe for extracting that data in a POL readable config file format and for his work on this package.
Attachments
destroy.zip
The Destroy command from the Distro.
(498 Bytes) Downloaded 73 times
createWorld.zip
The decoration package.
(973.33 KiB) Downloaded 75 times

Post Reply