A Java plug-in to help in finding own way while moving across a world.
____________________
Version 1.4.0
This will be the final version of the plug-in; bugs, if found, will be corrected but no new features will be added (I know I am repeating this since a number of versions...)
- New in 1.4.0
*) Removed WP sharing!
*) Changed player identification from name to DB ID.
*) Added the possibility for other plug-ins to send to the GPS temporary target points
*) Added a number of public API functions for other plug-ins to use
*) Added Javadocs
*) Posted sources to the plug-in github repository.
- Features
*) Displays current player heading as a standard navigation route, position in 'standard' geographic coordinates (N E) and block altitude:
Note that internal RW positive W longitude is converted into a more common positive E longitude.
*) Optionally, in settings.properties, the display can be set to Rising World own proprietary format:
*) Define a Home position and display radial, side (to the left or to the right of the player) and distance to it:
*) Define up to 15 way points and display radial, side and distance to any of them in turn:
*) Working with the GPS is done via a GUI:
which allows to turn the GSP on/off, to set the Home and each way-point, to show/hide them. The GUI adapts itself to the current GSP status.
*) Teleport to home and to any defined waypoint. Teleporting to waypoints can be disabled for servers which do not like players popping up everywhere. In fact, it is disabled by default; edit allowTpToWp=0 within setting.properties into allowTpToWp=1 to enable (remember to reload the plug-ins or restart the server to enable the change).
*) Other plug-ins can use a number of API which GPS makes available; details in the Javadoc included in the sources; among them, an API to send the GPS target points:
*) Target points are a kind of way points; other than way points, target points are not permanent (when the player disconnects they are lost), there can be any number of them but only the first is active and can be displayed in the GPS display; once the player reaches the active target, the target is deleted and the next one becomes active.
*) The plug-in user interface defaults to English, but it can be translated in any language (whose characters are supported by Rising World) through external files by the users themselves. Details in the readme.txt file.
*) The plug-in stores player-specific data into a separate data base for each world; so, even, in a local single player context, home and waypoints defined for one world do not affect other worlds.
____________________
Important - Important - Important - Important:
in order to work the plug-in requires the GUI back-end plug-in 0.5.0 available here. Install it at the same time of (or before) installing this plug-in or the server will crash at start-up!
____________________
Commands
/gps | opens the GUI. This is the main command; everything can be achieved through it. more easily than through the char commands. |
For the 'purists' and for compatibility with well-known commands of older scripts, two commands are also available:
/home | teleports to home (if defined) |
/sethome | set home position to current position |
Installation
*) Extract the files in the ZIP placing the whole GPS folder into the plugins folder of RW (if the plugins folder does not exist, just create one). The resulting hierarchy shall be:
*) Uninstall the old LUA version, as the two might trespass in each other garden!
*) Uninstall any older version of this plug-in! Only one version may exist in your Rising World copy / server!
Open points and known issues
*) If the player changes of heading without actually moving, particularly while flying, RW does not always notify the script which cannot update the displayed heading. This depends upon RW and there is nothing I can do about. The heading is updated as soon as the player moves.
*) After issuing the reloadplugins command from the console, an error message may appear in the chat relative to this plug-in; it is harmless and depends on the timing of the various initialisation steps which in turn depend on the server, the network and so on; just ignore it (the reloadplugins command is not intended for production anyway, but only for testing/debugging purposes).
Enjoy!