News

This scripted agent is kept for historical and reference purposes but there will be no future updates nor support offered. If you are looking for a SecondLife bot then Corrade has superseded this project and should be used instead.

Vassal

en-noun|vassal|plural vassals

  1. (historical) The grantee of a fief, feud, or fee; one who keeps land of a superior, and who vows fidelity and homage to him, normally a lord of a manor; a feudatory; a feudal tenant.
  2. A subject; a dependant; a servant; a slave.

Change Log

Please see the full changelog for a complete list of changes.

26 November 2016

  • Release 1.5 - code maintenance.
  • Updated to be compatible with Corrade progressive version 9.144.

9 August 2016

  • Release 1.3 - feature additions and major code overhaul.
  • Added the ability to batch-set the region covenant using a notecard in Corrade's inventory.
  • Upgraded the wasSharp library in order to synchronize with Corrade.
  • The help boxes now handle clicks, similar to the Corrade configurator.
  • Added OpenJPEG library dependencies for ARM, Linux and BSD.
  • Upgraded the libopenmetaverse library in order to synchronize with Corrade and avoid parcel flags being set wrongly.

1 November 2015

  • Release 1.2 - code maintenance.
  • Branched out functions to wasSharp.

16 October 2015

  • Release 1.1 - feature additions and corrections.
  • Teleport throttles have been added in order to avoid server-side throttling when batch-restarting regions or teleporting Corrade around.
  • FrameTime, ScriptedObjects, PhysicsTime and NetTime are now displayed on the overview tab.
  • The overview tab now features a gauge that displays the time taken to retrieve data from Corrade and can be considered a lag meter between Corrade and Vassal.
  • The ability to teleport residents home has been added to the residents list tab.
  • Estate variables can now be set using the region tools tab.

About

Vassal is a Second Life land manager for estate owners built on top of the Corrade scripted agent designed for land barons whilst prioritising easy of use. We have been asked before to create estate tools such as the sim status tool, however, using Corrade and Vassal combined we are able to do much more than any in-world tool can do.

Demonstration

Features

  • The ability to define regions, export and import them from a stored CSV file (Excel compatible).
  • Map and agents overview in real-time with displays for region statistics such as Time Dilation, Script Time, etc…
  • A resident list display tracking agents as they move with the ability to ban residents (in case Corrade is the estate owner, then the ban can target all estates).
  • Remotely determining, displaying and scanning in real-time whether regions are up and running or down / inaccessible.
  • The ability to batch-restart regions with a few clicks.
  • Displaying the Top Scripts and Top Colliders as well as the ability to return objects from both lists and with filtering capabilities.
  • Managing all the estate lists: bans, managers, allowed groups and allowed users. Additionally, estate lists can be exported to a CSV list (Excel compatible). The capability to add agents or groups to the lists; manually by UUID or name, or by importing a previously exported CSV list along with filtering capabilities.
  • The ability to download ground textures and apply new textures (Low, Middle Low, Middle High and High) by UUID.
  • Region tools that allow you to disable physics, collisions, scripts and set land parameters such as terraform, push, etc… The region tools also have the capability to download the terrain, upload the terrain, or, in case the estate owner has not allowed you to download your own terrain, rip the terrain to a height-map.
  • The ability to batch-set region / estate covenant for one or multiple selected regions or estates.
  • All the features are tracked and updated in real-time and you can teleport between configured regions with a button click.

Requirements

Download

  • Vassal 1.5 (SHA1SUM: c4663922049151a0d3dbbaa9ffc30774c943e00c)

Previous Versions

All the previous versions are archived on the Vassal archived binaries page.

Source Code

The source-code can be downloaded using Subversion:

and then compiled.

Instructions

The pre-requisite for getting Vassal working is to first configure Corrade. You can refer to the Corrade documentation. After Corrade is set-up correctly, you will need to configure a group that Vassal will use to connect to Corrade. You must enable the following settings for Corrade:

  • The Corrade HTTP server must be enabled and listening on an address and port that Vassal can connect to.
Sample HTTP Connection Between Vassal and Corrade
  • You will need to configure a group with the following permissions:
    • land
    • movement
    • interact
    • inventory
Sample Group Configuration Sample Filters Configuration
  • The account that Corrade connects on should be an estate manager on the regions to manage. Some features such as the region top scripts and colliders, the ability to restart a region, etc… Will be disabled if the account that Corrade connects on is not an estate manager.

You will then have to:

  1. Launch Vassal and hit the "Vassal Settings…" button which will pop-up a configuration tab for Vassal and Corrade. In case you are not using encryption or any special filters, you will have to at least configure the options:
    1. Corrade HTTP URL as the URL that Corrade's internal web-server is listening on.
    2. Group the name or UUID of the group that Vassal will use to authenticate to Corrade.
    3. Group Password the group password that Vassal will use along with the Group to authenticate to Corrade.
  2. You should then save the file by overwriting the Vassal.ini configuration file in the same directory that you have launched Vassal from.
  3. After that, you can close the form and, in case everything goes alright, you should see the current region metrics popping up.

Configuring Regions

To add and remove regions, you can hit the Edit… button in the Region Teleport group which will pop-up a pane allowing you to add, edit, remove as well as import and export regions. To add a region you will need to add:

  1. The exact region name.
  2. A local position vector to which Corrade will be teleported to.

It is worth mentioning that the exact region / estate name must be used. You can grab the estate name from any viewer by going to the Region / Estate drop-down menu and reading the region name.

It is a good idea to set the local vector position to which Corrade teleports to a high altitude. This is to avoid any lag as well as not be bothersome to the residents over whose land Corrade hoovers. When teleporting, Corrade will always turn the flight-mode on and hoover at the altitude you specify whilst defining a region.

The regions are exported and imported from a CSV file which contains regions by LSL position vectors line-by-line. You can, of course, import and export the CSV to any spreadsheet program you may have at hand and edit the regions and the position vectors by hand.

File Formats

Just like Corrade, Vassal uses the XML format for its own configuration file and the RFC 4180 CSV format for export and imports across the entire interface making it easy to make adjustments and then import them in Vassal.

Performance

Since Vassal talks to Corrade, Vassal and Corrade should have a good link between each-other. Ideally, Corrade should connect as close as possible to Linden Labs servers and Vassal should not be far away either. Vassal makes extensive use of HTTP calls whilst Corrade uses both TCP and UDP connections to the grid.

Even though Vassal works on top of Corrade, which accepts multiple groups, it is a good idea to create a separate Corrade bot that you use only for estate management.

Thanks and Acknowledgements

Great thanks goes to Tatiana Lapis for allowing us to test the bot on her region. Otherwise, we would like to thank all the fans that contributed to Corrade.

Contact and Support

If you need help with Vassal, we can be contacted using our contact page.

Index


secondlife/scripted_agents/vassal.txt · Last modified: 2022/11/24 07:45 by 127.0.0.1

Access website using Tor Access website using i2p Wizardry and Steamworks PGP Key


For the contact, copyright, license, warranty and privacy terms for the usage of this website please see the contact, license, privacy, copyright.