Name: travelnet - aka "Total Travelnet" Source: Fork of upstream mods (plural) - Do not replace License: See "LICENSE" in source tree ---------------------------------------------------------------------- 1. Total Travelnet is descended from Sokomine's Minetest "travelnet" mod v2.2 and v2.3 plus the Lord of the Test version of the "palantiri" mod and the "tpad" mod. This version of "travelnet" includes numerous enhancements. It re- quires Bucket Game. ---------------------------------------------------------------------- 2. Key features. * Multiple Types. Total Travelnet supports four types of travelnets: regular travelnets, elevators, palantiri, and travelpads. * Travelnet Themes. This mod can display legacy travelnets, Poikilos travelnets, or OldCoder travelnets. It can also make regular travel- nets look and behave like palantiri. * No Punch Updates. If the standard Travelnet Repair ABM is enabled, there is no longer a need for players to left-punch on travelnets to update the target lists. This feature works for all types of travelnets: regular travelnets, elevators, palantiri, and travelpads. * Sane Sort. This mod sorts "travelnet" target lists in alphabetical order. However, you can enable the old sort algorithm if you'd like to do so. * Mapgen Tour. This is a mapgen-related tool that is useful for ad- vanced world hosts. * Configurable. The mod can now be configured using "conf"-file option settings. ---------------------------------------------------------------------- 3. Palantiri. The word "palantiri" is singular or plural. A palantiri is an alter- native travelnet that resembles an unobtrusive obsidian rock. Palantiri and regular travelnets may be used at the same time in the same world. They share the same travelnet networks. If a player teleports to a palantiri, he materializes on top of it. So, the vertical space set aside for a palantiri must be at least 3 nodes tall, counting the 1-node rock at the bottom. See a related caution further down related to travelnet "theme" set- tings. ---------------------------------------------------------------------- 4. Node names. The node name for a regular travelnet is "travelnet:travelnet" (with the alias "travelnet" supported). The node name for a palantiri is "travelnet:palantiri" (with the alias "palantiri" supported). The node name for an elevator is "travelnet:elevator" (with the alias "elevator" supported). The node name for a travelpad is "travelnet:pad" (with the alias "travelpad" supported). ---------------------------------------------------------------------- 5. Travelnet themes. This mod allows you to select a travelnet theme using one of the fol- lowing "world.conf" settings: travelnet_theme = classic -- Old yellow phone booths travelnet_theme = poikilos -- Darker Poikilos version of classic travelnet_theme = oldcoder -- OldCoder TARDIS. This is the default. travelnet_theme = palantiri -- See notes below travelnet_theme = tardis -- Same as oldcoder The "palantiri" theme makes regular travelnets look and act like Pal- antiri. However, it doesn't change the node names, so the change is fully reversible. To go back to regular travelnets, simply change the theme. The theme setting doesn't affect elevators, travelpads, or actual pal- antiri; just regular travelnets. Travelnets that were palantiri to begin with remain palantiri regard- less of the theme setting. ---------------------------------------------------------------------- 6. Palantiri theme caution. Players materialize on top of palantiri. The vertical space required for a palantiri is therefore 3 nodes, counting the 1-node rock at the bottom. However, regular travelnets are only 2 nodes tall. So, if there's a ceiling right over any of your standard travelnets -- which is common -- you shouldn't use the "palantiri" theme or players will materialize with their heads in the ceiling. Note that it's all right to use actual palantiri regardless. You just shouldn't use the theme setting to change regular travelnets into Pal- antiri unless each of them has adequate vertical space. ---------------------------------------------------------------------- 7. Full feature list and/or change-log. * Total Travelnet adds palantiri and travelpads to regular travelnets and elevators. * Total Travelnet includes a useful tool named Mapgen Tour. This tool can be used to accomplish tasks related to mapgen of scattered areas. Details are discussed in Appendix B. * Target lists are now sorted alphabetically. However, the legacy sort algorithm can be enabled by the following "conf"-file setting: travelnet_enable_legacy_sort = true * Most travelnet formspecs now include a "Remove" button. * Merged a Poikilos "y-offset" change. This seems to fix a "travelnet" bug related to "fly". * Replaced sound effect with a "transporter" sound. For now, we'll treat the license, taking the brief length of the sound into account, as Fair Use. * Most features are now controllable by conf-file settings. To be doc- umented. * Removed flash effect for now as it doesn't seem to work. * Total Travelnet supports auto-rotate of players on both old and new servers. * The arrival sound now starts earlier (timing is more realistic in some cases). * A "safe write" routine is used if it's available but is *not* re- quired. * If the travelnet repair ABM is updated, players no longer need to left-click on travelnets to update target lists. * Added aliases "elevator", "palantiri", "travelnet", and "travelpad" for the associated "travelnet" nodes. ---------------------------------------------------------------------- Appendix A. Basic operation. Travelnet recipe: glass , steel_ingot , glass glass , mese , glass glass , steel_ingot , glass Elevator recipe: steel_ingot , glass , steel_ingot steel_ingot , empty , steel_ingot steel_ingot , glass , steel_ingot Palantiri recipe: obsidian , diamondblock , obsidian diamondblock , mese , diamondblock obsidian , diamondblock , obsidian Place one of these. Right-click on the back panel. Enter name of the station (e.g. "my house", "center of desert city") and name of the network (e.g. "Me- gaville", "my buildings"). Elevators have fewer fields. Press "Store". Punch it to update the list of stations on that network. This isn't necessary if the Travelnet Repair ABM is enabled. To teleport, right-click and press the appropriate target location button. An unconfigured travelnet box can be configured by anyone. If it's misconfigured, press the "Remove" button and place it anew. All stations that have the same network name and are owned by the same user connect to the same network. ---------------------------------------------------------------------- Appendix B. Mapgen Tour tool. This section, and the feature that it discusses, is/are for advanced world hosts. The feature in question, Mapgen Tour, can be used for multiple purpos- es. We'll start with a world capture problem. Suppose that you've done a Minetest world capture and that you haven't overlaid the captured mapblocks onto fully mapgenned territory. In- stead, the mapblocks are floating in territory that remains to be map- genned. If you use "singlenode" mapgen at the core-engine level and no mapgen mods -- i.e., no mapgen at all -- this will work fine. However, if you turn on mapgen, your captured mapblocks will be partly or completely destroyed. The Mapgen Tour tool can be used to solve the problem. It's in "travelnet", at least for now, for historical reasons and because the problem is often visible in captures that include travel- nets. You'll use a travelnet and notice that it's destroyed after you arrive at the destination. Or the area surrounding the destination will be damaged. The solution is as follows: * Shut down Final Minetest. * Make an SQLite3 file that contains your capture. Call it "capture. sqlite". Copy "capture.sqlite" to "map.sqlite" in the world under con- struction. If you're working under Windows, be sure to make it a bin- ary copy. * Add the following settings to "world.conf": travelnet_mapgen_radius = 200 travelnet_mapgen_above = 128 travelnet_mapgen_below = 128 These are mapgen distances relative to coordinates that we're about to come to. The units for these distances are nodes as opposed to map- blocks. "travelnet_mapgen_radius" is a horizontal mapgen radius; i.e., a rad- ius in the Minetest X-Z plane. "travelnet_mapgen_above" is a vertical mapgen distance measured up from a given coordinate. "travelnet_mapgen_below" is a vertical mapgen distance measured down from a given coordinate. * Edit "restorenet.lua" and look for the following line: -- table.insert (tp, pp("-889.8,23.5,829")) * Add one line like that, without the "--" comment part, for each tra- velnet or regional center in the capture. The part between the double quotes should be the X,Y,Z coordinates of the travelnet or regional center. Warning: Don't include any coordinates that are further out from 0,0,0 than 30,500 nodes in any direction. This will cause errors or lockups. Repair of regions that are close to the edge of the universe is a sub- ject for another time. You can have from 1 to 500 of these lines. Be warned that any number over 100 may involve significant processing time. 500 might take one or more hours. Additionally, please note that, the larger the number of lines, the larger the resulting map file. 500 lines will probably mean an output file of 2GB or more. * Restart Final Minetest. * Execute the following command: /mapgentour * You'll be teleported to each location in turn. There will be a delay of 5 to 10 seconds at each location. What's happening is that each of the locations is being mapgenned. * Shut down Final Minetest. * Overlay the mapblocks in "capture.sqlite" onto "map.sqlite". You should now have a non-self destructing copy of the captured world. Similar procedures can be used in other cases where mapgen of a set of specific areas is required. This feature can also be used to provide a simple automated tour of a world. Important: In this use case, you should set the "travelnet_ mapgen_..." parameters to 16 each (or to any small positive inte- ger). (end of document)