6F - Hyperlinks

Last modified by Cycrow on 2023/08/15 17:25

In Farnham's Legacy, you can now add hyperlinks to various places like menus, description pages, incoming messages, mission breifings, etc.
The hyperlinks will appear similar to links in on a web page that you can click on with your mouse (or select with keyboard/joystick/controller) to take you to other menus. This is primary uses to open help pages within the encyclopaedia, but can open most menus.

There are 2 ways to add hyperlinks, the first so to manually add a hyperlink in your text's. This works similar to the select values in incoming questions.
using

This is my [hyperlink value='hyperlink_value']Hyperlink[/hyperlink]

This will make the word "Hyperlink" a link you can select, this will be displayed in a different colour with an underline so its clearly visible.

The value is a certain code that tells the game what menu you wish to open.

If you add hyperlinks into your own custom event menus, this value can be anything you want, and your event script will receive the "hyperlink" event with that as its value.
To add hyperlinks to custom menus, you need to add the text to a text file with the hyperlink formatting added, and then use the hyperlinked info command

add custom menu hyperlinked info: menu=<menuarray>, page id=<int>, text id=<int>

This will add an info display to your menu, the same as the add info line command, except it will also read the formatting tags (including hyperlinks) and format the display correctly. Long texts will be split across multiple lines.

The second method of adding hyperlinks is the automatic hyperlink control. To use this you have to use script commands to register your hyperlinks. And everywhere that can display hyperlinks will replace the text with a hyperlinked version.

register message automatic hyperlink, page=<int>, id=<int>, link=<string>
unregister message automatic hyperlink, page=<int>, id=<int>

The page/id is for the text to be replaced. Any text matching this will be replaced with a hyperlinked version. The link is the value string used to link to the correct menu.

Hyperlink Values

You can use a number of predefined values to open the various menus, otherwise any value can be used if its to be used in your own custom menus.

  • Encyclopedia - 'OpenEncyclopedia' : Opens the encyclopaedia on the main page
  • Encyclopedia - Manuals Page : 'OpenEncyclopedia;Menu;Manual' : This is the ingame manual, the Survival Guide
  • Encyclopedia - Help Page : 'OpenEncyclopedia;Menu;Help' : The list of custom help topics
  • Encyclopedia - Lasers Page : 'OpenEncyclopedia;Menu;Lasers' : The list of known lasers
  • Encyclopedia - Missiles Page : 'OpenEncyclopedia;Menu;Missiles' : The list of known missiles
  • Encyclopedia - Docks Page : 'OpenEncyclopedia;Menu;Docks' : The list of known dock types
  • Encyclopedia - Factory Page : 'OpenEncyclopedia;Menu;Factory' : The list of known factory types
  • Encyclopedia - Ships Page : 'OpenEncyclopedia;Menu;Ships' : The list of known ship types
  • Encyclopedia - Ship Equipment Page : 'OpenEncyclopedia;Menu;Equipment' : The list of known ship equipment/software
  • Encyclopedia - Ship Equipment Pack Page : 'OpenEncyclopedia;Menu;EquipmentPack : The list of known equipment packs
  • Encyclopedia - Player Equipment Page : 'OpenEncyclopedia;Menu;PlayerEquipment' : The list of known player inventory wares
  • Encyclopedia - Upgrades Page : 'OpenEncyclopedia;Menu;Upgrades' : The list of known upgrade wares (engine tuning/rudder/etc)
  • Encyclopedia - Other Wares Page : 'OpenEncyclopedia;Menu;OtherWares' : The list of known wares (that dont fit in other categories)
  • Encyclopedia - Races Page : 'OpenEncyclopedia;Menu;Races' : The list of known races
  • Encyclopedia - Corporation Page : 'OpenEncyclopedia;Menu;Corp' : The list of known corporations
  • Encyclopedia - Special Objects Page : 'OpenEncyclopedia;Menu;Special' : The list of known special objects (ie Gates)
  • Encyclopedia - Discoveries Page : 'OpenEncyclopedia;Menu;Discoveries' : The list of known discoveries
  • Encyclopedia - Ship Commands Page : 'OpenEncyclopedia;Menu;ShipCommands' : The list of known ship commands
  • Encyclopedia - Wing Commands Page : 'OpenEncyclopedia;Menu;WingCommands' : The list of known wing commands
  • Encyclopedia - Station Commands Page : 'OpenEncyclopedia;Menu;StationCommands' : The list of known station commands
  • Encyclopedia - Sectors Page : 'OpenEncyclopedia;Menu;Sector' : The list of known sectors
  • Encyclopedia - Custom News Page : 'OpenEncyclopedia;Menu;News' : The list of custom news articles
  • Encyclopedia - Custom History Page : 'OpenEncyclopedia;Menu;History' : The list of custom history articles
  • Encyclopedia - Custom Stories Page : 'OpenEncyclopedia;Menu;Stories' : The list of custom story articles
  • Encyclopedia - Custom Info Page : 'OpenEncyclopedia;Menu;Info' : The list of custom info articles
  • Encyclopedia - Abbreviations Page : 'OpenEncyclopedia;Menu;Abbreviations' : The list of abbreviations
  • Encyclopedia - Ware/Ship/Station Info Page : 'OpenEncyclopedia;Ware;wareid' : The ware id is the string id of the ware you want to open, ie SS_WARE_WARPING or SS_SH_A_M5 (can be used for any wares/ships/stations)
  • Encyclopedia - Help Article : 'OpenEncyclopedia;Help;article_id' : This opens a specific help article if it exists
  • Encyclopedia - Manual Article : 'OpenEncyclopedia;Manual;article_id' : This opens a specific manual article if it exists (Survival Guide)
  • Encyclopedia - Article : 'OpenEncyclopedia;Help;article_id' : This opens a specific article if it exists (info/history/stories)
  • Encyclopedia - Ship Command Info : 'OpenEncyclopedia;Command;cmd_id' : This opens a ship command info page, the id is the command id value
  • Encyclopedia - Wing Command Info : 'OpenEncyclopedia;WingCommand;cmd_id' : This opens a wing command info page, the id is the command id value
  • Encyclopedia - Station Command Info : 'OpenEncyclopedia;StationCommand;cmd_id' : This opens a station command info page, the id is the command id value
  • Global Trade Report - Playership : 'OpenGlobalTradeReport;playership' : This opens the global trade report for your current ship
  • Global Trade Report - Ship/Station : 'OpenGlobalTradeReport;serilised_id' : This opens a global trade report for an object, the id is a serialised string (using the available script command)
  • Empire Trade Report : 'OpenEmpireTradeReport' : This opens your empire trade report menu
  • Diplomacy Menu : 'OpenDiplomacy' : Opens the diplomacy menu
  • Wings Menu : 'OpenWings' : Opens the wing menu
  • Property Owned Menu : 'OpenProperty' : Opens the property owned menu
  • Custom Menus : 'CustomMenu;scriptname;value' : Opens a custom menu, it must be a menu event script, the value is passed to the "start" event and is optional