HWPlaySchemeSyntax.wiki
author Wuzzy
Wed, 17 Apr 2019 01:54:11 +0100
changeset 1744 039b534ff9d6
parent 1501 d672599679a7
child 1963 1175d2f6f198
permissions -rw-r--r--
RacerRoomSetup: link to ProtocolNumbers
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
308
06767accef5a Edited wiki page HWPlaySchemeSyntax through web user interface.
vittorio.giovara@gmail.com
parents: 307
diff changeset
     1
#summary The Hedgewars URL scheme handler
307
1fff0c4471bc Created wiki page through web user interface.
vittorio.giovara@gmail.com
parents:
diff changeset
     2
1495
88ae278e5484 HWPlaySchemeSyntax: generailze 2
Wuzzy
parents: 1494
diff changeset
     3
= Hedgewars server links =
736
e2b1f824f37b HWPlaySchemeSyntax: Add title
Wuzzy
parents: 732
diff changeset
     4
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
     5
== Overview ==
1496
eb4548a39445 HWPlaySchemeSyntax: fix typo
Wuzzy
parents: 1495
diff changeset
     6
Hedgewars supports special links for Hedgewars servers and rooms. You can join a server (and optionally a room) by using a simple link. These links always start with “`hwplay://`” and look like this:
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
     7
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
     8
`hwplay://hedgewars.example.org`
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
     9
1495
88ae278e5484 HWPlaySchemeSyntax: generailze 2
Wuzzy
parents: 1494
diff changeset
    10
If your system is set-up to handle `hwplay` URLs, it will start Hedgewars and puts you immediately in the server.
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    11
1495
88ae278e5484 HWPlaySchemeSyntax: generailze 2
Wuzzy
parents: 1494
diff changeset
    12
The following link goes to the official Hedgewars server, you can try it out right now:
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    13
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    14
[hwplay://netserver.hedgewars.org]
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    15
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    16
== Usage ==
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    17
Your browser and other software needs to learn first how to deal with `hwplay`.
1493
151399fffe42 HWPlaySchemeSyntax: more clarify
Wuzzy
parents: 1492
diff changeset
    18
We recommend to first click on “Assign file types” in the Settings menu, Advanced tab, this should set things up automatically for you.
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    19
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    20
If an application (like a browser) is confused about `hwplay`, point it to the Hedgewars program (`hedgewars.exe` on Windows, `hedgewars` on GNU/Linux and Mac OS).
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    21
732
4a40a2b9ec52 HWPlaySchemeSyntax: command-line
Wuzzy
parents: 731
diff changeset
    22
Hedgewars itself also can use a `hwplay` URL as a command-line argument. See [CommandLineOptions#Frontend] for more information.
4a40a2b9ec52 HWPlaySchemeSyntax: command-line
Wuzzy
parents: 731
diff changeset
    23
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    24
`hwplay` URLs are of course optional, you can join any server from the main menu by selecting the network game, then “local network”, then by selecting a server from the list or entering its address directly after clicking on the “Connect to” button.
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    25
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    26
== Creating `hwplay` URLs ==
1501
d672599679a7 fix typo
TheZipBon
parents: 1496
diff changeset
    27
When you are about to start a server in Hedgewars (Main menu → Network game → Local network → Start server), Hedgewars will create a `hwplay` URL for you. You can copy it into the clipboard if you click on the “invite” button.
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    28
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    29
Note the generated URL might only work in your LAN and not world wide, so please check the IP address. You can obtain your Internet IP address on http://myip.is/ (for example).
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    30
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    31
Of course, you can also try to create the URLs from hand (see below).
307
1fff0c4471bc Created wiki page through web user interface.
vittorio.giovara@gmail.com
parents:
diff changeset
    32
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    33
== Syntax ==
1495
88ae278e5484 HWPlaySchemeSyntax: generailze 2
Wuzzy
parents: 1494
diff changeset
    34
`hwplay` is an unofficial URL scheme supported by Hedgewars. The syntax of the “hwplay” URL scheme is:
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    35
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    36
`hwplay://<HOST>[:<PORT NUMBER>[?room=<ROOM NAME>]]`
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    37
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    38
Parts in square brackets are optional.
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    39
Parts enclosed in less-then and greater-than signs are parameters, where
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    40
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    41
 * `<HOST>` is the IP address or host name of the server
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    42
 * `<PORT NUMBER>` stands for the TCP port number of the server
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    43
 * `<ROOM NAME>` is the name of a room in the server
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    44
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    45
If the port number is omitted, Hedgewars assumes the default port 46631.
731
42ff4b1eef88 HWPlaySchemeSyntax: small typo edits
Wuzzy
parents: 730
diff changeset
    46
1495
88ae278e5484 HWPlaySchemeSyntax: generailze 2
Wuzzy
parents: 1494
diff changeset
    47
If the room name is given, the user will automatically join this room. Otherwise, the user will start in the lobby of the server.
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    48
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    49
== Examples ==
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    50
Here are some example `hwplay` URLs:
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    51
1492
13e8497cc611 HWPlaySchemeSyntax: Generalize
Wuzzy
parents: 736
diff changeset
    52
 * [hwplay://netserver.hedgewars.org]: Points to the lobby of the official server. This is the same as if you'd click on the “official server” button in the main menu
730
917fd6b57b16 HWPlaySchemeSyntax: (hopefully) more complete explanation of the HWPLAY URLs
Wuzzy
parents: 308
diff changeset
    53
 * `hwplay://192.168.43.6:54321`: Points to the lobby on a LAN server with IP 192.168.42.6, port number 54321
731
42ff4b1eef88 HWPlaySchemeSyntax: small typo edits
Wuzzy
parents: 730
diff changeset
    54
 * `hwplay://example.org?room=MyRoom`: Points to the room called “MyRoom” on the server “example.org”
1501
d672599679a7 fix typo
TheZipBon
parents: 1496
diff changeset
    55
 * `hwplay://example.com:59000`: Points to the server “example.com”, port number 59000