Commit a6511868 authored by sirjorj's avatar sirjorj

update README

parent dfbda807
......@@ -3,6 +3,8 @@
---
== Summary
xhud is a command line utility for https://fantasyflightgames.com[FFG]'s https://www.fantasyflightgames.com/en/products/x-wing/[X-Wing Miniatures Game]. It can:
* Show info for ships, pilots, upgrades
......@@ -115,63 +117,122 @@ Notes:
To run a game, you use xhud's 'run' command. You then specify 2 .xws files (for P1 and P2, respectively) and an image to be generated. In the examples ablve, all the squad files are in the same 'xhud' folder as the program.
Anyway, once you have this in place, open the terminal, cd to the proper folder (`cd ~/xwing/xhud`) and start a game with this:
./xhud run ../squads/babyblues.xws ../squads/palpaces.xws ../xhud.png
Assuming the everything was entered correctly and the squads were valid, a game will be started. In the `xwing` directory, you will find `xhud.png`. This is the image to add to your streaming/recording program. Make the image the full size of your streaming view so it will put the first squad you specify on the left and the second one on the right. I use OBS and when an image is overwritten, it will automatically refresh on screen, so that's all you have to do.
When the game starts, you are presented with a simple prompt. This is how you issue commands to change the game state. A '?' command will show you a list of options, and a 'qqq' command will exit the game. To change game state, you tell it what to do by passing in command codes. The basic syntax of these is:
=== Commands
When the game starts, you are presented with a simple prompt. This is how you issue commands to change the game state. The commands fall into a few basic categories:
* [PLAYER][SHIP][COMMAND]
* [PLAYER][SHIP][UPGRADE][COMMAND]
==== Helper
These commands do other things like display help, show current game state, or exit.
|===
| `?` | Show commands
| `S` or `s` | Show current game state
| `qqq` | Quit
|===
*PLAYER* - Which player's state do you want to change?
==== Squad Manipulation
These commands are for adjusting the players' squads to reflect the game state. They include adding or remove hull or shield, making a ship or upgrade active or inactive, adding or removing an extra munitions token, or flipping an upgrade from one side to the other. The basic syntax of these is:
*SHIP* - Which ship do you want to change? The top one is '1', and they count down from there.
===== Pilot
* [PLAYER][SHIP][ACTION]
*UPGRADE* - Which upgrade do you want to change? Since they are displayed in 2 columns, they are numbered like this:
*PLAYER* - Which player's state do you want to change? (`1` or `2`)
|===
|1 |2
|3 |4
|5 |6
|===
*SHIP* - Which ship do you want to manipulate? (`1` to `number of ships`, counting down)
*COMMAND* - What do you want to change? Your options are:
*ACTION* - What do you want to change? Your options are:
|===
|`s` |remove a shield 1.2+|Lower-case removes, Capital adds
|`s` |remove a shield 1.2+|Lower-case removes, Capital adds
|`S` |add a shield
|`h` |remove a hull 1.2+|Lower-case removes, Capital adds
|`h` |remove a hull 1.2+|Lower-case removes, Capital adds
|`H` |add a hull
|`e` |disable the ship 1.2+|Disable when destroyed or not yet deployed (Phantom)
|`E` |enable the ship
|`x` |remove extra token 1.2+|Add/Remove token for Extra Munitions or Jabba the Hutt's Illicit
|`X` |add extra token
|`f` 1.2+|Flip the card 1.2+|Flip a 2 sided card. No effect on single sided cards.
|`F` |
|`a` |deactivate the ship 1.2+|Disable when destroyed or not yet deployed (Phantom)
|`A` |activate the ship
|===
===== Upgrade
* [PLAYER][SHIP][UPGRADE][ACTION]
*PLAYER* - Which player's state do you want to change? (`1` or `2`)
*SHIP* - Which ship do you want to manipulate? (`1` to `number of ships`, counting down)
*UPGRADE* - Which upgrade do you want to manipulate? (`1` to `number of upgrades`, counting left to right, top to bottom)
*ACTION* - What do you want to change? Your options are:
|===
|`a` |deactivate the ship 1.2+|Disable when destroyed or not yet deployed (Phantom)
|`A` |activate the ship
|`x` |remove extra token 1.2+|Add/Remove token for Extra Munitions or Jabba the Hutt's Illicit
|`X` |add extra token
|`f` 1.2+|flip the card 1.2+|Flip a 2 sided card. No effect on single sided cards.
|`F`
|`(name)` |replace upgrade with `name` *Note:* leaving `name` blank (just entering `()`) will print all possible `name` values| Vizago
|===
* Multiple commands can be issued to the same/upgrade in one command (`11ssh` will remove 2 shields and 1 hull from player 1, ship 1)
* Multiple commands, separated by spaces, can be entered at one time (`11h 12h` will remove 1 hull from player 1, ships 1 and 2)
Examples:
|===
|`12s` |Player 1, Ship 2 loses a shield
|`24h` |Player 2, Ship 4 loses a hull
|`11S` |Player 1, Ship 1 regenerated a shield
|`21ss` |Player 2, Ship 1 loses 2 shields
|`22shh` |Player 2, Ship 2 loses a shield and 2 hull
|`13shha` |Player 1, Ship 3 loses a shield, 2 hull, and is destroyed
|`211a` |Player 2, Ship 1's 1st upgrade is deactivated (fired munition, stealth device lost, glitterstim popped, etc)
|`12A` |Player 1, Ship 2 is deployed (ex. Phantom undocks from Ghost)
|`11s 111a` |Player 1, Ship 1 loses and shield and upgrade 1 is disabled (ex. Stealth Device)
|`231x` |Player 2, Ship 3 fires torpedo (upgrade slot 1) and loses Extra Munitions token.
|`111f` |Player 1, Ship 1 flips Pivot Wing (upgrade slot 1) NOTE: 111F would have the same result
|`11h 12h 13h 14h` |Player 1, Ships 1-4 lose 1 hull (bomb detonation)
|`113(glitterstim)` |Player 1, Ship 1 replaces upgrade 3 with Glitterstim (assuming upgrade 3 is Illicit)
|===
==== Popup
These commands show temporary pop-up info such as dice results.
===== Clear
|===
| `C` or `c` | Remove all popups from view
|===
===== Dice
* [TYPE][PLAYER][RESULTS]
*TYPE* - `A` or `a` for Attack Dice, `D` or `d` for Defense Dice
*PLAYER* - Which player is rolling (`1` or `2`)
*RESULTS* - String of dice results consisting of the following:
|===
| `C` or `c` | Critical Hit
| `H` or `h` | Hit
| `E` or `e` | Evade
| `F` or `f` | Focus
| `B` or `b` | Blank
|===
* Multiple commands can be issued to the same/upgrade in one command
* Multiple commands, separated by spaces, can be entered at one time
* There is no difference between the capital and lowercase letters in these commands
Examples:
|===
|`12s` |Player 1, Ship 2 loses a shield
|`24h` |Player 2, Ship 4 loses a hull
|`11S` |Player 1, Ship 1 regenerated a shield
|`21ss` |Player 2, Ship 1 loses 2 shields
|`22shh` |Player 2, Ship 2 loses a shield and 2 hull
|`13shhe` |Player 1, Ship 3 loses a shield, 2 hull, and is desctoyed
|`211e` |Player 2, Ship 1's 1st upgrade is disabled (fired munition, stealth device lost, glitterstim popped, etc)
|`12E` |Player 1, Ship 2 is deployed (ex. Phantom undocks from Ghost)
|`11s 111e` |Player 1, Ship 1 loses and shield and upgrade 1 is disabled (ex. Stealth Device)
|`231x` |Player 2, Ship 3 fires torpedo (upgrade slot 1) and loses Extra Munitions token.
|`111f` |Player 1, Ship 1 flips Pivot Wing (upgrade slot 1) NOTE: 111F would have the same result
|`11h 12h 13h 14h` |Player 1, Ships 1-4 lose 1 hull (bomb detonation)
| `A1hhc` | Attack Dice roll from Player 1 : *CRIT*, *HIT*, *HIT*
| `D2efb` | Defense Dice roll from Player 2: *EVADE*, *FOCUS*, *BLANK*
|===
== FAQ
......@@ -184,7 +245,7 @@ This means one of two thigs:
All pilot and upgrade names have to be formatted a certain way so all the different programs can properly communicate. The definitive guide can be found https://github.com/elistevens/xws-spec/blob/master/README_NAMES.md[here].
If the names of the pilot/faction/ship are correct (based on the guide linked above) and you still get this error, then the problem is on my end. Please open an issue and I will get it fixed ASAP.
If the names of the pilot/faction/ship are correct (based on the guide linked above) and you still get this error, then the problem is on my end. Please open an issue and I will get it fixed ASAP.
In the example above, "kestal" should be "lieutenantkestal", so the program exporting the name is wrong. Please file a bug report to the exporting program's project so they can fix it.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment