Back to Main Page


World Guide System

This page contains various items of development information, about the World Guide mod I created.

Current version number of this mod is 1.5.10 (Unreleased)

It's disappointing that only 2 people have access to this mod as I think it had great potential to really open up location based mods but I still consider it one of my most significant creations, simply because of the time I invested in it and the end result.

World Guide System - The world at your fingertips


The World Guide System (WGS), is a complete location guide that provides access to over 1800 map locations in Los Santos and surrounding areas. Everything from Supermarkets, to Designer Clothes Stores, to Bus Stops are included. Every ATM, Metro Station and Gas Station. All are just a few button presses away, using the controller driven GUI system. Click the image below to see a full map of all current 1999 locations (opens in a new page). Note: Current location count is 2013, this image is missing several locations.

You can search for any location by name, to find your nearest "Burger Shot". Search by type, like Fast Food, to cover a wider range of names in one search parameter. As you provide more information, the system will suggest possible locations that match your search criteria, then let you scroll through the suggestions to pick the one you want.

This is a video showing the GUI functionality, there are some functions not present in this version of the GUI that were added later.

 

If you need to find something nearby, then you can either search within a specified map zone, or within a specified distance. If you want to find a random location, then you can search for a type or name and it can return one at random by searching for "Any" of that type.. Ideal for those days out where you can just choose to drive to any "picnic area", or "waterfall".

All results can be the potential source for the 3D waypoint system, that actively shows your destination name and distance high above the map to make it visible at great distance. This works alongisde the route information that is displayed by the game in the minimap. Each category of location, like POI or Amenity, has its own colour and the route and waypoint info will reflect those colours.

As well as providing search results and waypoint info direct to the player, the WGS also acts as an API accessible repository for all this information. Every location isn't just a point on the map that is near the chosen business/atm, it's a precisely placed location that has placement and heading, relevant to the location type. So Gas Station locations are based on a car at a specific pump, at a heading that is consistent with how you would park at that pump. ATM locations are placed at a distance and heading consistent with using the ATM. So if you warp to a location, you will be in the right place, facing the right direction.

This video shows the WGS as a main mod, with two other mods getting location data directly from the WGS System and displaying markers accordingly. One is getting food related locations (Yellow markers), the other vehicle related locations (Blue markers).

 

The WGS will also fire off events when waypoints are set or reached, so companion mods are actively updated if they subscribe to those events. That means that you can set destinations to certain location types and a companion mod can react to your arrival and show a menu to purchase items or services relevant to that location. The refined quadrant-based search system means you can actively distance check all 1999 locations with minimal impact on performance.

If all of this sounds extensive, then it truly is. The collecting and refinement of all this location data came at a great expense time-wise. As well as the main WGS mod, there is also the location collector that allowed me to place locations, adjust their settings and then output the compressed location data the WGS requires. Because even though there are over 1800 locations, it uses just 55KB of data to store them all. That includes names, types, street names (2 if the location is at a junction), zone name, position and heading. The plain text file that the location collector works with, is over 200KB, so compressing the data is a huge space saver.

Then there was the search mod that I wrote to look for specific items that identify locations, like the ATM props. All these other tools are what make these mods possible, the data has to be collected and often needs custom mods to do it. And finally, there was the coordinate tracking Windows programme, that kept me actively up to date with where the existing locations were, so I knew which areas needs more searching. As I saved new data files, it automatically loaded and displayed the contents, to give me real-time feedback on my progress. That app now communicates directly with the location collector, to display the position the player is at and the route they have taken during this session. All in a scrolling, zoomable map display, that follows the player around the map. Every 500ms it updates with the new location, so you know where you are and where you've been.

This is the player tracking mod in action, you can see the locations in the minimap and on the map in the right window. The video's jerky because I was recording two screens wide with OBS and GTAV had to be in windowed mode to do it.

 

Functionality Info Update:

WGS now has the ability to accept temporary additions to the location database, from companion mods.

It also now accepts a configuration switch that will allow result filtering based on opening & closing times, so that it only returns locations that are actually open. This is a function primarily driven by the requirements of Players Extended, so that food and drink isn't guaranteed to be a 24hr service at every location.

An additional SubType has been added for Zone under POI. This is a location marker placed in each zone, which allows you to locate the Zone using the WGS. This addition was driven by the Vehicles in Demand system. VID spawns vehicles in random zones, so this aids navigation with regards to that functionality, in instances where the zone contains no other SubType locations. Useful for places like Legion Square or Port of Los Santos.

Search optimisation on SubType based searches by storing a second dictionary using SubTypes as the key. Memory overhead should be minimal... hopefully.

Addition of numeric result number instead of "Multiple", just for quick feedback to show how many results were actually found.

Further Functionality Update:

Addition of a third dictionary that holds all locations using the LocationType as a key.

Optimising of location distribution to other mods using the additional dictionaries. This vastly improves the performance of retrieving collections of SubTypes, as there is no need to scan all locations to find matching locations. This means return SubTypeDictionary[subType]; will return that complete collection of SubTypes.

Added a function to return all locations matching a specified LocationType. This was driven by my Courier Service minigame, that has services creating delivery schedules using specific LocationTypes, like Business, Retail etc...

Further Functionality Update:

Additional locations added as VehicleParts to some AutoServices. This is to facilitate deliveries from the courier service mod.

Missing Public WC added at the side of Sandy's Gas Station that I didn't realise was there.