docs: DONE!
This commit is contained in:
parent
ddc5bd9bcb
commit
a355af016d
13 changed files with 302 additions and 871 deletions
46
CHANGELOG.md
46
CHANGELOG.md
|
@ -52,9 +52,6 @@ able to invoke that plugin. [You can safely ignore that](https://github.com/alte
|
||||||
also possible, but not on the roadmap yet.
|
also possible, but not on the roadmap yet.
|
||||||
* EDDI events (and some other more administrative commands) are now hidden from
|
* EDDI events (and some other more administrative commands) are now hidden from
|
||||||
the VoiceAttack log.
|
the VoiceAttack log.
|
||||||
* `power to` command now supports of lot more options. `power to X and Y` sets
|
|
||||||
8/4/0, `balanced power to X and Y` sets 6/6/0, `half power to X` sets 6/3/3,
|
|
||||||
`half power to X and Y` sets 5/5/2.
|
|
||||||
|
|
||||||
### EliteAttack 8.0
|
### EliteAttack 8.0
|
||||||
|
|
||||||
|
@ -65,12 +62,28 @@ profile will keep the old name. Feel free to manually rename it.
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
* `EliteAttack` plugin. Doesn’t do a lot yet.
|
* `EliteAttack` plugin. Doesn’t do a lot yet.
|
||||||
* `where is my landing pad` command: Will use EDDI to tell you about the landing
|
* Submodule targeting! Say
|
||||||
pad location on star ports in relation to the mail slot.
|
`target the [drive;drives;power plant;frame shift drive;f s d;shield generator]`
|
||||||
|
to target submodules on your current target, and `clear sub [module;system]
|
||||||
|
target` to clear your target.
|
||||||
|
* `distance [from;to] [Sol;home;the center;Beagle Point;Colonia]` command: Gives
|
||||||
|
you your current distance to the given POI.
|
||||||
|
* `[where’s;where is] my landing pad` command: Will tell you the location of
|
||||||
|
your assigned landing pad on a starport.
|
||||||
|
* `[dis;]engage silent running` command: Handles silent running.
|
||||||
|
* `[are there any;] outdated stations [in this system;]` command: Runs an
|
||||||
|
on-demand check for outdated stations in the current system.
|
||||||
|
* `open spansh` command: Opens https://spansh.uk in your default browser.
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
* FIXXME
|
* `power to` command now supports of lot more options. `power to X and Y` sets
|
||||||
|
8/4/0, `balanced power to X and Y` sets 6/6/0, `half power to X` sets 6/3/3,
|
||||||
|
`half power to X and Y` sets 5/5/2.
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
|
||||||
|
* `[buggy;exploration] power` command.
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
@ -96,7 +109,7 @@ profile will keep the old name. Feel free to manually rename it.
|
||||||
* RATSIGNAL handling is no longer done through a file, there is now a helper
|
* RATSIGNAL handling is no longer done through a file, there is now a helper
|
||||||
tool that communicates with the plugin directly. See “Upgrading” in the
|
tool that communicates with the plugin directly. See “Upgrading” in the
|
||||||
documentation.
|
documentation.
|
||||||
* Now supports up to 30 cases (0–29). Thanks, Epicalypse!
|
* Now supports up to 31 cases (0–30). Thanks, Epicalypse!
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
@ -106,32 +119,17 @@ profile will keep the old name. Feel free to manually rename it.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
* `SpanshAttack` plugin. FIXXME
|
* `SpanshAttack` plugin. Does miscellaneous things for now, will at some point
|
||||||
|
replace the dependency on the EDNeutronRouter plugin.
|
||||||
* Will now log the jumps calculated for a trip to the VoiceAttack log.
|
* Will now log the jumps calculated for a trip to the VoiceAttack log.
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
* FIXXME
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
* FIXXME
|
|
||||||
|
|
||||||
### StreamAttack 2.0
|
### StreamAttack 2.0
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
* FIXXME
|
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
* Jump target will now be set to SpanshAttack’s plot target if the actual target
|
* Jump target will now be set to SpanshAttack’s plot target if the actual target
|
||||||
system is not in the database.
|
system is not in the database.
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
* FIXXME
|
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
# 3.2.1 (2021-01-02)
|
# 3.2.1 (2021-01-02)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# EliteAttack #
|
# EliteAttack
|
||||||
|
|
||||||
This is my personal VoiceAttack profile for Elite: Dangerous. It started out
|
This is my personal VoiceAttack profile for Elite: Dangerous. It started out
|
||||||
ages ago as a modification of [MalicVR’s public
|
ages ago as a modification of [MalicVR’s public
|
||||||
|
@ -7,106 +7,170 @@ then looked less and less and less like that and I added and cleaned up a lot of
|
||||||
things while removing the stuff I didn’t use anyway. By now it would have
|
things while removing the stuff I didn’t use anyway. By now it would have
|
||||||
probably been simpler to start from scratch.
|
probably been simpler to start from scratch.
|
||||||
|
|
||||||
Some of it has grown to a state that it might be useful to others in its own
|
Funnily enough it has grown to rely way more on events provided by
|
||||||
package, so I’ve separated the neutron jumping and Seals stuff into their own
|
[EDDI](https://github.com/EDCD/EDDI) than actual voice commands.
|
||||||
profiles.
|
|
||||||
|
|
||||||
The rest is a random conglomerate of all things VA and E:D; from various voice
|
## Chat Commands
|
||||||
commands to lots of EDDI event handlers.
|
|
||||||
|
|
||||||
Speaking of EDDI; it has become in integral part of my Elite experience,
|
These commands will only work with the comms panel active, and you should be in
|
||||||
especially the plethora of information it extracts from the game’s journal and
|
the edit window ready to send. They will _not_ hit Enter on their own.
|
||||||
presents to you via lots and lots of status variables and by firing various
|
|
||||||
events that can then be handled through VA commands. It’s great. Check it out.
|
|
||||||
(You might want to make it talk a lot less in it’s personality options, or
|
|
||||||
disable the speech responder entirely like I have.)
|
|
||||||
|
|
||||||
## Requirements ##
|
|
||||||
|
|
||||||
In addition to the bindED and EDDI VoiceAttack plugins, this profiles needs my
|
|
||||||
[Python elite-scripts](https://github.com/alterNERDtive/elite-scripts) to do
|
|
||||||
everything properly. The release page here includes a compiled version for
|
|
||||||
Windows that does not need Python installed. If you use the profile package from
|
|
||||||
the release page, they will be installed automatically.
|
|
||||||
|
|
||||||
## Settings ##
|
|
||||||
|
|
||||||
Because Elite’s keyboard handling is … weird you’ll have to set the key to use
|
|
||||||
for pasting text into Elite:Dangerous. If you are not using a “standard”
|
|
||||||
QWERT[YZ] layout, you will have to change it back to the key that is physically
|
|
||||||
in the place where `v` would be on QWERTY.
|
|
||||||
|
|
||||||
For other settings, see the [Configuration Variables](#Configuration-Variables)
|
|
||||||
section.
|
|
||||||
|
|
||||||
## Including the Profile In Another Profile ##
|
|
||||||
|
|
||||||
This is meant to be a standalone profile, including the others in this repo (and
|
|
||||||
a couple more). It was never designed to be included into your existing profile.
|
|
||||||
Nevertheless, it _should_ work properly if you follow some guide lines:
|
|
||||||
|
|
||||||
* Run the startup command. You will need to have a startup command in your
|
|
||||||
profile (= one that is run on profile loading) and call
|
|
||||||
`EliteDangerous.startup` by name from that one.
|
|
||||||
* Make sure all EDDI events that EliteDangerous needs are correctly handled. For
|
|
||||||
all events used in EliteDangerous that you already have handlers for in your
|
|
||||||
profile, you’ll have to include a call to `EliteDangerous.<event name>`. E.g.
|
|
||||||
for “EDDI Jumped”, call `EliteDangerous.EDDI Jumped` by name from your `((EDDI
|
|
||||||
Jumped))` command.
|
|
||||||
|
|
||||||
## Usage ##
|
|
||||||
|
|
||||||
### Chat Commands ###
|
|
||||||
|
|
||||||
There’s a bunch of commands in here to send certain things to chat. Unless
|
|
||||||
stated otherwise, they will only work with the comms panel active, and you
|
|
||||||
should be in the edit window ready to send. They will _not_ hit Enter on their
|
|
||||||
own.
|
|
||||||
|
|
||||||
* `clear [chat;text]`: Clears the chat window. Use from outside the comms panel.
|
* `clear [chat;text]`: Clears the chat window. Use from outside the comms panel.
|
||||||
* `[local;squad;system;wing] chat`: Puts you into the chosen chat channel.
|
* `[local;squad;system;wing] chat`: Puts you into the chosen chat channel.
|
||||||
* `paste text`: Pastes your clipboard into Elite. Works outside the comms panel
|
|
||||||
too, e.g. on the galaxy map inside the search field.
|
|
||||||
* `salute; oh seven`: Will put “o7” into the chat.
|
* `salute; oh seven`: Will put “o7” into the chat.
|
||||||
|
|
||||||
### Engineering/Materials ###
|
## Engineering/Materials
|
||||||
|
|
||||||
* `how many [<g5 manufactured materials list>] do i have`: Tells you how many of
|
* `how many [<g5 manufactured materials list>] do i have`: Tells you how many of
|
||||||
the given g5 manufactured material you currently have on board. I’ve
|
the given g5 manufactured material you currently have on board. I’ve
|
||||||
restricted it to just those to not spam speech recognition with too many
|
restricted it to just those to not spam speech recognition with too many
|
||||||
phrases, and because those are the ones I usually want to know while jumping
|
phrases, and because those are the ones I usually want to know while jumping
|
||||||
around the bubble and having an eye on any HGE that might be around.
|
around the bubble and having an eye on any HGE that might be around.
|
||||||
* `open e d engineer`: Opens the ED Engineer tool.
|
* `[launch;open] e d engineer`: Opens the ED Engineer tool.
|
||||||
* `what [mats;materials] do i need?`: Runs the EDDI responder that tells you
|
* `what [mats;materials] do i need?`: Runs the EDDI responder that tells you
|
||||||
which materials are below wanted threshold. Needs setting those first. Gets
|
which materials are below wanted threshold. Needs setting those first. Gets
|
||||||
very spammy if you do it for all of them; personally I only set them for g5
|
very spammy if you do it for all of them; personally I only set them for g5
|
||||||
manufactured, so I can quickly check if it’s worth looking for HGE in a system
|
manufactured, so I can quickly check if it’s worth looking for HGE in a system
|
||||||
I’m in.
|
I’m in.
|
||||||
|
|
||||||
### Events ###
|
## Navigation
|
||||||
|
|
||||||
The main point of this profile is to react to Elite’s journal events (powered by
|
There are so many navigation-focused commands now, they deserve there own
|
||||||
EDDI). Each of the events listed here will trigger a `((EDDI <event>))` command
|
category. Basically anything that helps you plot anywhere. A lot of those are
|
||||||
in VoiceAttack which in turn triggers `EliteDangerous.EDDI <event>` and all
|
powered by awesome EDDI so I don’t have to do the work myself!
|
||||||
included profiles’ similar commands, e.g. `SpanshAttack.EDDI <event>`.
|
|
||||||
|
|
||||||
The actual `((EDDI <event>))` command will only be executed once by VoiceAttack,
|
* `distance [from;to] [Sol;home;the center;Beagle Point;Colonia]`: Gives you
|
||||||
the first one it can find. Keeping it separate from the actual code to be run
|
your current distance to the given POI.
|
||||||
makes it easier to handle (multiple) included profiles.
|
* `[find;target] nearest [encoded;manufactured;raw] material trader`: Targets
|
||||||
|
the nearest respective material trader.
|
||||||
|
* `[find;target] nearest [fuel;scoopable] star`: Targets the nearest scoopable
|
||||||
|
star.
|
||||||
|
* `[find;target] nearest [guardian;human] tech broker`: Targets the nearest
|
||||||
|
respective tech broker.
|
||||||
|
* `[find;target] nearest [interstellar factor;mission system;scoopable star]`:
|
||||||
|
Well, you know the drill by now.
|
||||||
|
* `[find;target] nearest mission system`: Targets the nearest system that has a
|
||||||
|
mission target.
|
||||||
|
* `plot course;[target;] next [waypoint;way point]`: Plots a course to the text
|
||||||
|
in your clipboard.
|
||||||
|
* `target [bug killer;colonia;dav’s hope;explorer’s anchorage;jackson's lighthouse;jameson’s cobra;robigo;shinrarta dezhra;sagittarius a*;shinrarta;sothis]`:
|
||||||
|
Targets the given system on the galaxy map.
|
||||||
|
* `[where’s;where is] my landing pad`: Will tell you the location of your
|
||||||
|
assigned landing pad on a starport.
|
||||||
|
|
||||||
If the command for an event will send key presses to Elite, it focuses the
|
## Ship Controls
|
||||||
client window first to make sure they get registered properly. If it is not in
|
|
||||||
focus, the first key press might be swallowed otherwise.
|
|
||||||
|
|
||||||
For other commands, the profile just assumes that you are actively doing
|
Basically anything that is related to directly doing something with your ship.
|
||||||
something in game and it is already focused :)
|
|
||||||
|
|
||||||
#### Body Mapped ####
|
* `[abort;cancel;stop] jumping`: Stops a currently charging FSD jump.
|
||||||
|
* `[half;] power to [engines;shields;systems;weapons]`: Sets pips to 6/3/3
|
||||||
|
(`half`) or 8/2/2 towards the given capacitor.
|
||||||
|
* `[balanced;half;] power to [engines;shields;systems;weapons] [and engines;and shields;and systems;and weapons;]`:
|
||||||
|
Sets pips to 6/6/0 (balanced), 5/5/2 (half) or 8/4/0 towards the given capacitors.
|
||||||
|
* `[close;deploy;extend;open;retract;] [cargo scoop;hard points; landing gear] [up;down;]`:
|
||||||
|
Overly complicated command to handle everything related to Cargo Scoop, Hard
|
||||||
|
Points, Landing Gear. You get the gist, I guess. Works in SRV too.
|
||||||
|
* `[dis;]engage silent running`: Handles silent running.
|
||||||
|
* `[disco;discovery scan]`: Executes a discovery scan. Expects the Discovery
|
||||||
|
Scanner in your first fire group, secondary fire. [You can change
|
||||||
|
that](/configuration/EliteAttack/#settings).
|
||||||
|
* `[dis;]engage silent running`: Turns silent running on and off.
|
||||||
|
* `[head;spot;] lights [on;off]`: Turns your lights on and off. Works in SRV
|
||||||
|
too, kinda; turning lights off there relies on the state updating fast enough,
|
||||||
|
which sometimes leads to weird results.
|
||||||
|
* `[jump;engage;get me out] [and scan;] [when ready;]`: Retracts everything that
|
||||||
|
might be protruding from your ship, then jumps to the next system. If the FSD
|
||||||
|
isn’t charging within 1s, it gets you into SC instead (e.g. if your target is
|
||||||
|
obstructed). If given “and scan” runs a discovery scan. If given “when ready”
|
||||||
|
waits for mass lock to clear, your FSD to cool down and you to leave scoop
|
||||||
|
range before jumping.
|
||||||
|
* `night vision [on;off]`: Toggles your night vision on/off. Works in SRV too.
|
||||||
|
* `rapid fire lights`: Flashes your lights 5 times in a row.
|
||||||
|
* `retract [all;everything]`: Retracts, well, everything.
|
||||||
|
* `[start;stop] [firing;mining]`: Starts/stops holding down primary fire. Mostly
|
||||||
|
useful when mining. When triggered with “mining”, also deploys the cargo
|
||||||
|
scoop.
|
||||||
|
* `[super;] cruise [when ready;]`: Retracts everything, then jumps to SC. If
|
||||||
|
given “when ready” will wait for mass lock to clear and your FSD to cool down
|
||||||
|
first.
|
||||||
|
|
||||||
|
## SRV controls
|
||||||
|
|
||||||
|
Things relevant to your SRV, but not your ship.
|
||||||
|
|
||||||
|
* `[recall;dismiss] ship`: Recalls or dismisses ship. Currently does the same
|
||||||
|
thing regardless of the state of your ship. I wish it would be possible to
|
||||||
|
restrict it to doing one thing each, but that’s currently not possible sadly.
|
||||||
|
* `[toggle;enable;disable] drive assist`: Handles all your drive assist needs!
|
||||||
|
|
||||||
|
## Targeting
|
||||||
|
|
||||||
|
Well … targeting stuff, I guess. Not really sure why I made that it’s own
|
||||||
|
category, but oh well :)
|
||||||
|
|
||||||
|
* `target the [drive;drives;power plant;frame shift drive;f s d;shield
|
||||||
|
generator]`:*
|
||||||
|
Targets the given submodule on your current target, or your next target if you
|
||||||
|
don’t have one currently. Does not persist between targets.
|
||||||
|
* `clear sub [module;system] target`: Clears the current submodule target.
|
||||||
|
* `target next system`: Selects the next system on your route.
|
||||||
|
* `target wing man [1;2;3]`: Targets your wingmen.
|
||||||
|
* `target’s target`: Targets your target’s target (only works on wingmen).
|
||||||
|
* `wing man [1;2;3] target`: Targets your wingmen’s target.
|
||||||
|
* `wing man nav lock`: Toggles wing man nav lock on the selected wing member.
|
||||||
|
|
||||||
|
## UI Commands
|
||||||
|
|
||||||
|
Everything handling stuff that’s not related to controlling your ship, but
|
||||||
|
manipulating some UI element(s).
|
||||||
|
|
||||||
|
* `[enter;leave] F S S`: Opens/closes FSS.
|
||||||
|
* `[main;game] menu`: Opens the ESC menu.
|
||||||
|
* `[relog;reset] to [open;solo]`: Relogs to Open or Solo mode, respectively.
|
||||||
|
* `controls options`: Opens the controls options menu.
|
||||||
|
* `docking request;request dock[ing;]`: Sends a docking request.
|
||||||
|
* `galaxy map`: Opens the galaxy map.
|
||||||
|
* `restart from Desktop`: Quits the game and restarts from an open launcher by
|
||||||
|
clicking the play button.
|
||||||
|
* `set [default;star;station;settlement;signal sources;anomaly;unknown;system] filter`:
|
||||||
|
Sets a nav panel filter setting. See the command or just try different things
|
||||||
|
for what is possible. You need to clear filters and hover over the filter
|
||||||
|
button, then run this.
|
||||||
|
* `system map`: Opens the system map.
|
||||||
|
* `take [high res;] screenshot`: Takes a (high res) screenshot.
|
||||||
|
* `toggle orbit lines`: Toggles the visibility of orbit lines.
|
||||||
|
|
||||||
|
## Miscellaneous
|
||||||
|
|
||||||
|
The commands in here do random more or less useful things.
|
||||||
|
|
||||||
|
* `[are there any;] outdated stations [in this system;]`: Runs an on-demand
|
||||||
|
check for outdated stations in the current system.
|
||||||
|
* `[bodies;what’s;what is] left to [map;be mapped;scan]`: Tells you which bodies
|
||||||
|
EDDI thinks are worth mapping in the system that you haven’t mapped yet.
|
||||||
|
* `copy current system`: Copies the current system name into the clipboard.
|
||||||
|
* `open [current;] system on EDSM`: Opens your current system on EDSM in your
|
||||||
|
default browser.
|
||||||
|
* `open copied system on EDSM`: Opens the system in your clipboard on EDSM in
|
||||||
|
your default browser.
|
||||||
|
* `open coriolis`: Opens Coriolis in your default browser.
|
||||||
|
* `open e d d b [station;system;faction;] [search;]`: Opens EDDB in your default
|
||||||
|
browser.
|
||||||
|
* `open e d s m`: Opens EDSM in your default browser.
|
||||||
|
* `open inara`: Opens Inara in your default browser.
|
||||||
|
* `open materials finder`: Opens EDTutorials’ materials finder in your default
|
||||||
|
browser.
|
||||||
|
* `open miner’s tool`: Opens https://edtools.cc/miner in your default browser.
|
||||||
|
* `open spansh`: Opens https://spansh.uk in your default browser.
|
||||||
|
|
||||||
|
## Events
|
||||||
|
|
||||||
|
### Body Mapped
|
||||||
|
|
||||||
Announces an estimate for high-value bodies’ payouts and the remaining mapping
|
Announces an estimate for high-value bodies’ payouts and the remaining mapping
|
||||||
candidates in the system as given by EDDI.
|
candidates in the system as given by EDDI.
|
||||||
|
|
||||||
#### Body scanned ####
|
### Body scanned
|
||||||
|
|
||||||
Announces any interesting body traits found when scanning:
|
Announces any interesting body traits found when scanning:
|
||||||
|
|
||||||
|
@ -119,347 +183,115 @@ Announces any interesting body traits found when scanning:
|
||||||
|
|
||||||
Feel free to suggest more!
|
Feel free to suggest more!
|
||||||
|
|
||||||
#### Carrier Cooldown ####
|
### Carrier Cooldown
|
||||||
|
|
||||||
Tells you when your carrier is able to do its next jump. Technically only works
|
Tells you when your carrier is able to do its next jump.
|
||||||
if you were docked at it when it performed the jump, but I’m doing some
|
|
||||||
behind-the-scenes magic if you weren’t :)
|
|
||||||
|
|
||||||
Might be slightly off (too early) in the latter case.
|
### Carrier Jump Engaged
|
||||||
|
|
||||||
#### Carrier Jumped ####
|
|
||||||
|
|
||||||
Announces system and body your carrier has just jumped to.
|
|
||||||
|
|
||||||
#### Carrier Jump Engaged ####
|
|
||||||
|
|
||||||
This event fires when your carrier jumps but you are _not_ docked at it. It
|
This event fires when your carrier jumps but you are _not_ docked at it. It
|
||||||
provides way less information than the `Carrier Jumped` event, but hey, I don’t
|
provides way less information than the `Carrier Jumped` event, but hey, I don’t
|
||||||
use most of it anyway.
|
use most of it anyway. Basically just calls `Carrier Jumped`.
|
||||||
|
|
||||||
Basically just calls `Carrier Jumped` (and makes sure that a `Carrier cooldown`
|
### Carrier Jump Request
|
||||||
event is triggered manually at approximately the right time).
|
|
||||||
|
|
||||||
#### Carrier Jump Request ####
|
|
||||||
|
|
||||||
Announces the system and body your carrier has just been scheduled to jump to.
|
Announces the system and body your carrier has just been scheduled to jump to.
|
||||||
Use this to double check ingame information; I’ve had my carrier accept a body
|
Use this to double check ingame information; I’ve had my carrier accept a body
|
||||||
as jump target, but then end up around the star. This _might_ give you a heads
|
as jump target, but then end up around the star. This _might_ give you a heads
|
||||||
up on that.
|
up on that.
|
||||||
|
|
||||||
#### Carrier Pads Locked ####
|
Also starts a command queue to give you advance warnings on carrier lockdown at
|
||||||
|
-10, -5 and -2 minutes.
|
||||||
|
|
||||||
Announces your carriers lockdown procedures. This _might_ only work when you are
|
### Carrier Jumped
|
||||||
docked (which would make it pretty useless). Feel free to open in issue if
|
|
||||||
that’s the case.
|
|
||||||
|
|
||||||
#### Discovery Scan ####
|
Announces system and body your carrier has just jumped to.
|
||||||
|
|
||||||
|
### Carrier Pads Locked
|
||||||
|
|
||||||
|
Announces your carrier’s lockdown procedures.
|
||||||
|
|
||||||
|
### Discovery Scan
|
||||||
|
|
||||||
Announces the number of bodies (and non-body signals) found in the system. Also
|
Announces the number of bodies (and non-body signals) found in the system. Also
|
||||||
compares the number of bodies to the amount reported by EDSM (requires Python
|
compares the number of bodies to the amount reported by EDSM (requires Python
|
||||||
scripts).
|
scripts).
|
||||||
|
|
||||||
#### Docked ####
|
### Docked
|
||||||
|
|
||||||
Automatically gets your ship into the hangar and opens station services.
|
Automatically refuels, repairs, optionally rearms, then gets your ship into the
|
||||||
|
hangar and opens station services.
|
||||||
|
|
||||||
#### Docking Denied ####
|
### Docking Denied
|
||||||
|
|
||||||
Tells you the reason for docking denial.
|
Tells you the reason for docking denial.
|
||||||
|
|
||||||
#### Entered Normal Space ####
|
### Entered Normal Space
|
||||||
|
|
||||||
Throttles to 0 upon dropping from SC, if `EliteDangerous.hyperSpaceDethrottle` is set.
|
Throttles to 0 upon dropping from SC, if `EliteDangerous.hyperSpaceDethrottle`
|
||||||
|
is set.
|
||||||
|
|
||||||
#### Fighter Launched ####
|
### Fighter Launched
|
||||||
|
|
||||||
Orders your ship to hold position so it doesn’t chase after you immediately.
|
Orders your ship to hold position so it doesn’t chase after you immediately.
|
||||||
|
|
||||||
#### Jet Cone Boost ####
|
### Jet Cone Boost
|
||||||
|
|
||||||
Sets your ship to full throttle immediately after you have supercharged.
|
Sets your ship to full throttle immediately after you have supercharged.
|
||||||
|
|
||||||
#### Jumped ####
|
### Jumped
|
||||||
|
|
||||||
* zeroes throttle
|
* Zeroes throttle.
|
||||||
* gets the system’s body count from EDSM (requires Python scripts)
|
* Gets the system’s body count from EDSM.
|
||||||
* gets stations with outdated data (older than 1 year) from Spansh’s API
|
* Gets stations with outdated data (by default: older than 1 year) from Spansh’s API.
|
||||||
* if you haven’t visited the systems, starts a discovery scan (see the discovery
|
* If you haven’t visited the systems (or set it up to honk every jump) starts a
|
||||||
scan command)
|
discovery scan.
|
||||||
* last but not least tells you about planets worth scanning if you are on the
|
* Last but not least tells you about planets worth scanning if you are on the
|
||||||
R2R
|
R2R.
|
||||||
|
|
||||||
#### Liftoff ####
|
### Liftoff
|
||||||
|
|
||||||
Retracts landing gear for you. Seriously, is there any occasion in which you
|
Retracts landing gear for you. Seriously, is there any occasion in which you
|
||||||
_don’t_ immediately want to retract it after takeoff?
|
_don’t_ immediately want to retract it after takeoff?
|
||||||
|
|
||||||
#### Low Fuel ####
|
### Low Fuel
|
||||||
|
|
||||||
Warns you when you reach 25% fuel. Also reports number of jumps you have left or
|
Warns you when you reach 25% fuel. Also reports number of jumps you have left or
|
||||||
the (rough) range you still have on the fumes left in your tank.
|
the (rough) range you still have on the fumes left in your tank.
|
||||||
|
|
||||||
#### Material Threshold ####
|
### Material Threshold
|
||||||
|
|
||||||
Warns you when a monitored material falls below it’s minimum stock level. You
|
Warns you when a monitored material falls below it’s minimum stock level and
|
||||||
will have to set a minimum desired amount in EDDI’s material monitor options
|
tells you when you reach your desired level or fill up.
|
||||||
first for all materials you wish to be monitored.
|
|
||||||
|
|
||||||
#### Message Sent ####
|
You will have to set minimum and desired amounts in EDDI’s material monitor
|
||||||
|
options first for all materials you wish to be monitored.
|
||||||
|
|
||||||
Checks any message you send for a chat prefix and sends it to the proper chat
|
### Ship FSD
|
||||||
window. Probably largely useless to you without modification.
|
|
||||||
|
|
||||||
* `.nc`: Actually doesn’t send anything, but runs the
|
|
||||||
`RatAttack.announceNearestCMDR` command with the system given in the rest of
|
|
||||||
the message.
|
|
||||||
* `.dc`: Sends the message to the Discord window.
|
|
||||||
* `.tc`: Sends the message to my twitch channel window (IRC #alternerdtive).
|
|
||||||
|
|
||||||
There are similar event commands in RatAttack and SealAttack handling other chat
|
|
||||||
windows.
|
|
||||||
|
|
||||||
#### Ship FSD ####
|
|
||||||
|
|
||||||
This event actually is several different events in one. Currently the following
|
This event actually is several different events in one. Currently the following
|
||||||
are handled:
|
are handled:
|
||||||
|
|
||||||
* charging: Warns you if your target system’s main star is not scoopable,
|
* Charging: Warns you if you are jumping with less than 25% fuel.
|
||||||
including an extra warning at low fuel levels. (__Note__: This only works if
|
* Cooldown complete: Announces FSD cooldown if you are currently in normal
|
||||||
the target system is in EDSM. So it’s kind of useless for its intended use
|
|
||||||
(exploration) and probably going to be removed at some point.)
|
|
||||||
* cooldown complete: Announces FSD cooldown if you are currently in normal
|
|
||||||
space.
|
space.
|
||||||
|
|
||||||
#### Ship interdicted ####
|
### Ship interdicted
|
||||||
|
|
||||||
Tells you when you have been interdicted by a player. Is also supposed to target
|
Tells you when you have been interdicted by a player. Is also supposed to target
|
||||||
the interdictor automatically, but randomly sometimes just doesn’t work. Yay!
|
the interdictor automatically, but randomly sometimes just doesn’t work. Yay!
|
||||||
|
|
||||||
#### Ship targeted ####
|
### SRV Launched
|
||||||
|
|
||||||
This currently doesn’t do anything. I was fiddling around with automatically
|
|
||||||
targeting a certain module on ship targeting, but it was more hassle than I had
|
|
||||||
thought.
|
|
||||||
|
|
||||||
#### SRV Launched ####
|
|
||||||
|
|
||||||
Toggles SRV lights off after launching. Might not work if you drop particularly
|
Toggles SRV lights off after launching. Might not work if you drop particularly
|
||||||
far after deployment because it works off a timer. Conversely might take
|
far after deployment because it works off a timer. Conversely might take a
|
||||||
a second to turn your lights off on a short drop and/or in high gravity.
|
second to turn your lights off on a short drop and/or in high gravity.
|
||||||
|
|
||||||
#### System Scan Complete ####
|
### System Scan Complete
|
||||||
|
|
||||||
Lists you all bodies EDDI considers worth mapping in the current system.
|
Lists you all bodies EDDI considers worth mapping in the current system.
|
||||||
|
|
||||||
#### Undocked ####
|
### Undocked
|
||||||
|
|
||||||
Retracts landing gear for you. Seriously, is there any occasion in which you
|
Retracts landing gear for you. Seriously, is there any occasion in which you
|
||||||
_don’t_ immediately want to retract it after takeoff?
|
_don’t_ immediately want to retract it after takeoff?
|
||||||
|
|
||||||
#### VA initialized ####
|
|
||||||
|
|
||||||
Fires when the EDDI VoiceAttack plugin is loaded. Makes sure that EDDI is set to
|
|
||||||
quite mode even if the profile was loaded before plugin initialization had
|
|
||||||
completed.
|
|
||||||
|
|
||||||
### Misc ###
|
|
||||||
|
|
||||||
The commands in here do random more or less useful things.
|
|
||||||
|
|
||||||
* `bind keys;reset key binds`: Reloads your key binds through the bindED plugin.
|
|
||||||
You should do that after changing anything in the controls options.
|
|
||||||
* `copy current system`: Copies the current system name into the clipboard.
|
|
||||||
* `distance [from;to] […]`: Tells you the distance from your current position to
|
|
||||||
the other thing you mentioned and is supported in the command. (requires
|
|
||||||
Python scripts)
|
|
||||||
* `do a barrow roll`: WHOOOOOOO!
|
|
||||||
* `fix window dimensions`: When you start the game in VR, it forces into
|
|
||||||
windowed mode with weird resolution. This changes it back. Hover the “PLAY”
|
|
||||||
entry in the main menu, then run this. Will need adjustment for different
|
|
||||||
graphics cards/drivers and the resolution you want.
|
|
||||||
* `neutron [jump;trip] time`: Shorter version of the same thing in SpanshAttack.
|
|
||||||
* `neutron jumps left`: Shorter version of the same thing in SpanshAttack.
|
|
||||||
* `open copied system on EDSM`: Opens the system in your clipboard on EDSM in
|
|
||||||
your default browser.
|
|
||||||
* `open coriolis`: Opens Coriolis in your default browser.
|
|
||||||
* `open [current;] system on EDSM`: Opens your current system on EDSM in your
|
|
||||||
default browser.
|
|
||||||
* `open EDDI options; configure EDDI`: Opens the EDDI configuration window.
|
|
||||||
* `open e d d b [station;system;faction;] [search;]`: Opens EDDB in your default
|
|
||||||
browser.
|
|
||||||
* `open e d s m`: Opens EDSM in your default browser.
|
|
||||||
* `open inara`: Opens Inara in your default browser.
|
|
||||||
* `open materials finder`: Opens EDTutorials’ materials finder in your default
|
|
||||||
browser.
|
|
||||||
* `open miner’s tool`: Opens https://edtools.ddns.net/miner in your default
|
|
||||||
browser.
|
|
||||||
* `reload bindings`: Reloads your bindings for bindED.
|
|
||||||
* `shut up EDDI`: Immediately stops any ongoing (and queued) EDDI speech.
|
|
||||||
* `[start;stop] [EDISON;navigation]`: Hits `CTRL+ALT+E` which just so happens to
|
|
||||||
be the start/stop hotkey I have set in E.D.I.S.O.N.
|
|
||||||
* `[bodies;what’s;what is] left to [map;be mapped;scan]`: Tells you which bodies
|
|
||||||
EDDI thinks are worth mapping in the system that you haven’t mapped yet.
|
|
||||||
|
|
||||||
### Navigation ###
|
|
||||||
|
|
||||||
There are so many navigation-focused commands now, they deserve there own
|
|
||||||
category. Basically anything that helps you plot anywhere. A lot of those are
|
|
||||||
powered by awesome EDDI so I don’t have to do the work myself!
|
|
||||||
|
|
||||||
* `plot course;[target;] next [waypoint;way point]`: Plots a course to the
|
|
||||||
system set in `~~system` or the one in your clipboard. The former way is
|
|
||||||
usually used by other commands to not interfere with your clipboard.
|
|
||||||
* `[find;target] nearest [encoded;manufactured;raw] material trader`: Targets
|
|
||||||
the nearest respective material trader.
|
|
||||||
* `[find;target] nearest [guardian;human] tech broker`: Targets the nearest respective
|
|
||||||
tech broker.
|
|
||||||
* `[find;target] nearest [interstellar factor;mission system;scoopable star]`: Well,
|
|
||||||
you know the drill by now.
|
|
||||||
* `[find;target] nearest mission system`: Targets the nearest system that has a mission
|
|
||||||
target.
|
|
||||||
* `[find;target] [<system>]`: Targets the given system on the galaxy map. There’s
|
|
||||||
a bunch in there, the list is easily extensible. Drop me a note if you want
|
|
||||||
something included.
|
|
||||||
|
|
||||||
### Ship Controls ###
|
|
||||||
|
|
||||||
Basically anything that is related to directly doing something with your ship.
|
|
||||||
|
|
||||||
* `[abort;cancel;stop] jumping`: Stops a currently charging FSD jump.
|
|
||||||
* `[buggy;exploration] power`: Sets your PD to 0/4/2 or 2/4/0 respectively.
|
|
||||||
Works in SRV too.
|
|
||||||
* `[close;deploy;extend;open;retract;] […] [up;down;]`: Overly complicated
|
|
||||||
command to handle everything related to Cargo Scoop, Hard Points, Landing
|
|
||||||
Gear. You get the gist, I guess. Works in SRV too.
|
|
||||||
* `[disco;discovery scan]`: Executes a discovery scan. To work properly, you’ll
|
|
||||||
have to set the Discovery Scanner to your first fire group, secondary fire.
|
|
||||||
* `[dis;]engage silent running`: Turns silent running on and off.
|
|
||||||
* `[head;spot;] lights [on;off]`: Turns your lights on and off. Works in SRV
|
|
||||||
too, kinda; turning lights off there relies on the state updating fast enough,
|
|
||||||
which sometimes leads to weird results.
|
|
||||||
* `[jump;engage;get me out;punch it chewie] [and scan;] [when ready;]`: Retracts
|
|
||||||
everything that might be protruding from your ship, then jumps to the next
|
|
||||||
system. If the FSD isn’t charging within 1s, it gets you into SC instead (e.g.
|
|
||||||
if your target is obstructed). If given “and scan” runs a discovery scan. If
|
|
||||||
given “when ready” waits for mass lock to clear, your FSD to cool down and you
|
|
||||||
to leave scoop range before jumping.
|
|
||||||
* `night vision [on;off]`: Toggles your night vision on/off. Works in SRV too.
|
|
||||||
* `power to [engines;shields;systems;weapons`: Sets 4 pips to the thing you told
|
|
||||||
it, 1 to the others.
|
|
||||||
* `rapid fire lights`: Flashes your lights 5 times in a row.
|
|
||||||
* `retract [all;everything]`: Retracts, well, everything.
|
|
||||||
* `[start;stop] [firing;mining]`: Starts/stops holding down primary fire. Mostly
|
|
||||||
useful when mining. When triggered with “mining”, also deploys the cargo
|
|
||||||
scoop.
|
|
||||||
* `[super;] cruise [when ready;]`: Retracts everything, then jumps to SC. If
|
|
||||||
given “when ready” will wait for mass lock to clear and your FSD to cool down
|
|
||||||
first.
|
|
||||||
|
|
||||||
### SRV controls ###
|
|
||||||
|
|
||||||
Things relevant to your SRV, but not your ship.
|
|
||||||
|
|
||||||
* `[recall;dismiss] ship`: Recalls or dismisses ship. Currently does the same
|
|
||||||
thing regardless of the state of your ship. I wish it would be possible to
|
|
||||||
restrict it to doing one thing each, but that’s currently not possible sadly.
|
|
||||||
* `[toggle;enable;disable] drive assist`: Handles all your drive assist needs!
|
|
||||||
|
|
||||||
### Targeting ###
|
|
||||||
|
|
||||||
Well … targeting stuff, I guess. Not really sure why I made that it’s own
|
|
||||||
category, but oh well :)
|
|
||||||
|
|
||||||
* `target next system`: Selects the next system on your route.
|
|
||||||
* `target wing man [1;2;3]`: Targets your wing men.
|
|
||||||
* `target’s target`: Targets your target’s target.
|
|
||||||
* `wing man [1;2;3] target`: Targets your wing men’s target.
|
|
||||||
* `wing man nav lock`: Toggles wing man nav lock on the selected wing member.
|
|
||||||
|
|
||||||
### UI Commands ###
|
|
||||||
|
|
||||||
Everything handling stuff that’s not related to controlling your ship, but
|
|
||||||
manipulating some UI element(s).
|
|
||||||
|
|
||||||
* `controls options`: Opens the controls options menu.
|
|
||||||
* `docking request;request dock[ing;]`: Sends a docking request.
|
|
||||||
* `[enter;leave] F S S`: Opens/closes FSS.
|
|
||||||
* `galaxy map`: Opens the galaxy map.
|
|
||||||
* `[main;game] menu`: Opens the ESC menu.
|
|
||||||
* `[relog;reset] to [open;solo]`: Relogs to Open or Solo mode, respectively.
|
|
||||||
* `restart from Desktop`: Quits the game and restarts from an open launcher by
|
|
||||||
clicking the play button.
|
|
||||||
* `set […] filter`: Sets a nav panel filter setting. See the command or just try
|
|
||||||
different things for what is possible. You need to clear filters and hover
|
|
||||||
over the filter button, then run this.
|
|
||||||
* `system map`: Opens the system map.
|
|
||||||
* `take [high res;] screenshot`: Takes a (high res) screenshot.
|
|
||||||
* `toggle orbit lines`: Toggles the visibility of orbit lines.
|
|
||||||
* `[toggle;show;hide] interface`: Toggles the cockpit interface (CTRL+ALT+G).
|
|
||||||
Probably needs to be adjusted if you are not playing with Neo2 keyboard layout
|
|
||||||
:)
|
|
||||||
|
|
||||||
### Update Commands ###
|
|
||||||
|
|
||||||
* `check for profiles update`: Does just that. Is also automatically run each
|
|
||||||
time the profile is started.
|
|
||||||
* `download profiles update`: Downloads a profiles update if applicable. Will
|
|
||||||
prompt you to restart VoiceAttack when the download has finished to import the
|
|
||||||
updated profiles.
|
|
||||||
* `open profiles change log`: Opens `CHANGELOG.md` on Github.
|
|
||||||
|
|
||||||
## Logging ##
|
|
||||||
|
|
||||||
The profile supports logging a bunch of stuff to the VoiceAttack event log. By
|
|
||||||
default, logging is concise and constrained to basically error messages.
|
|
||||||
|
|
||||||
If you need more logging (usually for debugging purposes), say `enable logging`.
|
|
||||||
If you want to enable verbose logging _by default_, call the
|
|
||||||
`Logging.enableLogging` command from your custom profile’s `startup` command.
|
|
||||||
|
|
||||||
## Configuration Variables ##
|
|
||||||
|
|
||||||
There are a bunch of configuration variables. You should not overwrite those
|
|
||||||
manually, instead use the provided commands in the `_configuration` section!
|
|
||||||
|
|
||||||
Basically all the settings are available using the `customize settings` prefix,
|
|
||||||
then saying `[enable;disable] <setting>` for on/off switches and `set <setting>`
|
|
||||||
for text variables.
|
|
||||||
|
|
||||||
* `EDDI.quietMode` (boolean): whether or not to set EDDI to quite mode. Default:
|
|
||||||
true.
|
|
||||||
* `Elite.pasteKey` (string): the key used for pasting into Elite. On QWERTY this
|
|
||||||
is `v`. Default: `p`.
|
|
||||||
* `EliteDangerous.announceEdsmSystemStatus` (boolean): whether to announce the
|
|
||||||
system or some of its bodies missing on EDSM. Default: true.
|
|
||||||
* `EliteDangerous.announceMappingCandidates` (boolean): whether to announce
|
|
||||||
mapping candidates when they are scanned. Default: true.
|
|
||||||
* `EliteDangerous.announceOutdatedStationData` (boolean): whether to announce
|
|
||||||
stations with outdated data in systems you jump to. Default: true.
|
|
||||||
* `EliteDangerous.announceR2RMappingCandidates` (boolean): whether to announce
|
|
||||||
planets worth mapping when jumping into a known system. This is useful for
|
|
||||||
doing some R2R on the side. Default: false.
|
|
||||||
* `EliteDangerous.enableCarrierAnnouncements` (boolean): whether or not to
|
|
||||||
process fleet carrier events. Default: true.
|
|
||||||
* `EliteDangerous.enableAutoUpdateCheck` (boolean): whether or not to
|
|
||||||
automatically check for updates on profile startup. Default: true.
|
|
||||||
* `EliteDangerous.flightAssistOff` (boolean): whether to automatically toggle
|
|
||||||
FlightAssist off on liftoff. Default: true.
|
|
||||||
* `EliteDangerous.hyperspaceDethrottle` (boolean): same thing as the SC assist
|
|
||||||
setting; if on, will throttle to 0 automatically after jumping. Default: true.
|
|
||||||
* `EliteDangerous.oldStationThreshold` (int): Age in days that will cause
|
|
||||||
station data to be considered outdated. Default: 365 (1 year).
|
|
||||||
* `python.ScriptPath` (string): the path you have placed the compiled python
|
|
||||||
scripts in. Default: “{VA_DIR}\Sounds\scripts” (the “\Sounds\scripts” folder
|
|
||||||
in your VoiceAttack installation directory).
|
|
||||||
|
|
||||||
#### Delays / Pauses ####
|
|
||||||
|
|
||||||
Delays needed e.g. between key presses in UI navigation can vary wildly
|
|
||||||
depending on your PC’s specs and configuration. Therefore they should be
|
|
||||||
configurable, shouldn’t they?
|
|
||||||
|
|
||||||
So far those actually are:
|
|
||||||
|
|
||||||
* `EliteDangerous.delays.quitToDesktop`: Delay between quitting to desktop and hitting the
|
|
||||||
play button in the launcher.
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# RatAttack #
|
# RatAttack
|
||||||
|
|
||||||
This profile facilitates [Fuel Ratting](https://www.fuelrats.com). It aims to
|
This profile facilitates [Fuel Ratting](https://www.fuelrats.com). It aims to
|
||||||
eliminate as much of the required manual task and attention switching as
|
eliminate as much of the required manual task and attention switching as
|
||||||
|
@ -6,155 +6,46 @@ possible via automation and voice commands.
|
||||||
|
|
||||||
If you don’t know what the Fuel Rats are, come hang out and ask :)
|
If you don’t know what the Fuel Rats are, come hang out and ask :)
|
||||||
|
|
||||||
## Requirements ##
|
## Going On/Off Duty
|
||||||
|
|
||||||
Only vanilla VoiceAttack is absolutely required to use this profile. Optionally
|
|
||||||
you can install EDDI and my elite scripts for advanced features.
|
|
||||||
|
|
||||||
* [EDDI](https://github.com/EDCD/EDDI) installed as a VoiceAttack plugin: This
|
|
||||||
will give you a better (IMO) way of using TTS. Be sure to set
|
|
||||||
`RatAttack.useEddiForVoice`. It will also enable you to have ingame chat be
|
|
||||||
transferred to IRC; see below.
|
|
||||||
* [elite-scripts](https://github.com/alterNERDtive/elite-scripts): Using the
|
|
||||||
Python scripts will give RatAttack a way to be aware of where your CMDRs are
|
|
||||||
and give you the nearest one to a rat case. That’s only really needed if you
|
|
||||||
actually _have_ multiple CMDRs, obviously. If you are using the profile
|
|
||||||
package from the release page, they will be installed automatically.
|
|
||||||
|
|
||||||
### EDDI speech responder ###
|
|
||||||
|
|
||||||
For the convenience of people that have not been using EDDI in the past,
|
|
||||||
RatAttack will deactivate the speech responder automatically to not clutter them
|
|
||||||
with unwanted TTS.
|
|
||||||
|
|
||||||
If you are already an EDDI user and want to keep the default speech responder
|
|
||||||
functionality, you will have to disable the `EDDI.quietMode` setting by running
|
|
||||||
the `customize settings disable eddi quiet mode` command.
|
|
||||||
|
|
||||||
## Settings ##
|
|
||||||
|
|
||||||
There are a lot of preferences you can set, including some you really want to
|
|
||||||
concern yourself with before you start using the profile. Some of the more
|
|
||||||
advanced features heavily rely on you giving it the correct things to work with.
|
|
||||||
|
|
||||||
See the [Configuration Variables](#Configuration-Variables) section.
|
|
||||||
|
|
||||||
## Including the Profile ##
|
|
||||||
|
|
||||||
When including the profile, be sure to
|
|
||||||
|
|
||||||
* Run the startup command. You will need to have a startup command in your
|
|
||||||
profile (= one that is run on profile loading) and call `RatAttack.startup`
|
|
||||||
from that one.
|
|
||||||
* Make sure all EDDI events that RatAttack needs are correctly handled. For all
|
|
||||||
events used in RatAttack that you already have handlers for in your profile,
|
|
||||||
you’ll have to include a call to `RatAttack.<event name>`. E.g. for “EDDI
|
|
||||||
Message sent”, call `RatAttack.EDDI Message sent` by name from your `((EDDI
|
|
||||||
Message sent))` command.
|
|
||||||
|
|
||||||
## Usage ##
|
|
||||||
|
|
||||||
### Going On/Off Duty ###
|
|
||||||
|
|
||||||
When you are on duty, RatAttack will automatically announce cases coming in
|
When you are on duty, RatAttack will automatically announce cases coming in
|
||||||
through IRC. When off duty, it won’t.
|
through IRC. When off duty, it won’t.
|
||||||
|
|
||||||
* `[enable;disable] rat duty`: puts you on/off duty.
|
* `[enable;disable] rat duty`: puts you on/off duty.
|
||||||
* `open [rat;] dispatch board`: opens the web dispatch board.
|
* `open [fuel rats;] dispatch board`: opens the web dispatch board.
|
||||||
|
|
||||||
### Handling a Case ###
|
## Case Handling
|
||||||
|
|
||||||
#### Getting Case Data From IRC ####
|
|
||||||
|
|
||||||
You can setup your IRC client to pass incoming RATSIGNALS to VoiceAttack by
|
|
||||||
writing them to a file (`%appdata%\Ratattack\ratsignal.pipe`), then calling the
|
|
||||||
appropriate command (`RatAttack.announceCaseFromRatsignal` for notification,
|
|
||||||
`RatAttack.getInfoFromRatsignal` for silently putting it into the case list).
|
|
||||||
|
|
||||||
This has two purposes:
|
|
||||||
|
|
||||||
1. announcing a new incoming case
|
|
||||||
1. storing case data and making it available to VoiceAttack, e.g. for copying
|
|
||||||
the case’s system into the clipboard
|
|
||||||
|
|
||||||
You need to make your IRC client
|
|
||||||
|
|
||||||
1. wait until the file disappears (for several cases coming in at once)
|
|
||||||
1. write the RATSIGNAL to the file
|
|
||||||
1. run the VoiceAttack command
|
|
||||||
|
|
||||||
In my case I am running AdiIRC and have the following script setup for handling
|
|
||||||
this:
|
|
||||||
|
|
||||||
```
|
|
||||||
on *:TEXT:RATSIGNAL - CMDR*(??_SIGNAL):#fuelrats:{
|
|
||||||
/mkdir C:\users\<user>\appdata\roaming\RatAttack\
|
|
||||||
/handleratsignal $1-
|
|
||||||
}
|
|
||||||
alias handleratsignal {
|
|
||||||
if ( $exists(C:\users\<user>\appdata\roaming\RatAttack\ratsignal.pipe) ) {
|
|
||||||
/sleep 1 /handleratsignal $1-
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
/write C:\users\<user>\appdata\roaming\RatAttack\ratsignal.pipe $1-
|
|
||||||
if ( $away ) {
|
|
||||||
/run -h "X:\path\to\VoiceAttack\VoiceAttack.exe" -nofocus -command "RatAttack.getInfoFromRatSignal"
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
/run -h "X:\path\to\VoiceAttack\VoiceAttack.exe" -nofocus -command "RatAttack.announceCaseFromRatSignal"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
You get the gist; if not and you don’t know how to do the same thing for your
|
|
||||||
IRC client or it doesn’t support copying the control characters in the ratsignal
|
|
||||||
that the profile uses to split the information, either switch to AdiIRC or bribe
|
|
||||||
me to include some other way to get case data into VoiceAttack.
|
|
||||||
|
|
||||||
**Note**: If you are running VoiceAttack as admin you need to run your IRC
|
|
||||||
client as admin, too! Otherwise it can’t talk to VoiceAttack for security
|
|
||||||
reasons. You really should _not_ run VoiceAttack with elevated privileges
|
|
||||||
though. Or anything.
|
|
||||||
|
|
||||||
#### Internal Case List ####
|
|
||||||
|
|
||||||
If you have your IRC client setup properly, VoiceAttack will hold a list with
|
If you have your IRC client setup properly, VoiceAttack will hold a list with
|
||||||
all rat cases that have come in while you had it running. It will save the case
|
all rat cases that have come in while you had it running. It will save the case
|
||||||
number, CMDR name, system, O₂ status and platform. There are several commands
|
number, CMDR name, system, O₂ status and platform. There are several commands
|
||||||
you can run on this list, giving it a case number:
|
you can run on this list, giving it a case number:
|
||||||
|
|
||||||
* `rat case number [0..19] details`: Will give you all stored info on a case.
|
### Getting Case Information
|
||||||
|
|
||||||
|
* `rat case number [0..30] details`: Will give you all stored info on a case.
|
||||||
* `[current;] rat case details`: Will give you all stored info on the currently
|
* `[current;] rat case details`: Will give you all stored info on the currently
|
||||||
open case.
|
open case.
|
||||||
* `distance to current rat case`: Will give you the distance from your current
|
* `distance to current rat case`: Will give you the distance from your current
|
||||||
location to the currently opened rat case. Requires the use of my
|
location to the currently opened rat case.
|
||||||
`elite-scripts` Python scripts.
|
* `distance to rat case number [0..30]`: Will give you the distance from your
|
||||||
* `distance to rat case number [0..19]`: Will give you the distance from your
|
current system to a case’s system.
|
||||||
current system to a case’s system. Requires the use of my `elite-scripts`
|
* `nearest commander to rat case number [0..30]`: Will give you the nearest of
|
||||||
Python scripts.
|
your CMDRs with their distance to a case’s system. [Requires some
|
||||||
* `nearest commander to rat case number [0..19]`: Will give you the nearest of
|
setup](/configuration/RatAttack/#announcing-your-nearest-cmdr).
|
||||||
your CMDRs with their distance to a case’s system. Requires some setup and the
|
|
||||||
use of my `elite-scripts` Python scripts.
|
|
||||||
* `nearest commander to [the;] rat case`: Will give you the nearest of your
|
* `nearest commander to [the;] rat case`: Will give you the nearest of your
|
||||||
CMDRs with their distance to the current case’s system. Requires some setup
|
CMDRs with their distance to the current case’s system. [Requires some
|
||||||
and the use of my `elite-scripts` Python scripts.
|
setup](/configuration/RatAttack/#announcing-your-nearest-cmdr).
|
||||||
|
|
||||||
#### Opening a Case ####
|
### Opening a Case
|
||||||
|
|
||||||
* `open rat case number [0..19]`: Opens rat case with the given number. If there
|
* `open rat case number [0..30]`: Opens rat case with the given number. If there
|
||||||
is no case data for that case (e.g. because you don’t have your IRC client set
|
is no case data for that case (e.g. because you don’t have your IRC client set
|
||||||
up properly), it will still open it, just not have any data on it.
|
up properly), it will still open it, just not have any data on it.
|
||||||
* `open [latest;] rat case`: Opens the latest rat case that has come in through
|
* `open [latest;] rat case`: Opens the latest rat case that has come in through
|
||||||
IRC. Will probably error out in creative ways if you don’t have your IRC
|
IRC. Will only work if you actually have [your IRC client setup to send case
|
||||||
client set up properly. Too tired right now to have proper error handling so
|
announcements to
|
||||||
just open an issue if you run into problems (it’s 7am, I haven’t slept and
|
VoiceAttack](/configuration/RatAttack/#getting-case-data-from-irc).
|
||||||
want to finish this doc to get the release out (yes, you are allowed to laugh
|
|
||||||
at this section)).
|
|
||||||
|
|
||||||
#### Closing a Case ####
|
|
||||||
|
|
||||||
* `[close;clear] rat case`: Closes the currently open rat case.
|
|
||||||
|
|
||||||
### Making Calls ###
|
### Making Calls ###
|
||||||
|
|
||||||
|
@ -168,25 +59,25 @@ client or use the “General IRC Integration”, see below.
|
||||||
currently open case. You can optionally include that you will still have to
|
currently open case. You can optionally include that you will still have to
|
||||||
login to the game or have to take off from your current
|
login to the game or have to take off from your current
|
||||||
station/port/outpost/planet.
|
station/port/outpost/planet.
|
||||||
* `call friend [positive;negative] [in pg;in private group;in solo;in main
|
* `call friend [positive;negative] [in pg;in private group;in solo;in main menu;sysconf;system confirmed;]`:
|
||||||
meu;sysconf;system confirmed]`: Friend request confirmations, with all the
|
Friend request confirmations, with all the
|
||||||
things you might want to / should call with it.
|
things you might want to / should call with it.
|
||||||
* `call [beacon;fuel;instance;pos;position;prep;sys;system;wing]
|
* `call [beacon;fuel;instance;pos;position;prep;sys;system;wing] [positive;negative]`:
|
||||||
[positive;negative]`: All the stuff you usually need for ratting after you
|
All the stuff you usually need for ratting after you have received the friend request.
|
||||||
have received the friend request.
|
|
||||||
* `call wing pending`: Calls “wr pending” for when it takes 30s again to
|
* `call wing pending`: Calls “wr pending” for when it takes 30s again to
|
||||||
actually show up.
|
actually show up.
|
||||||
* `call client in [exclusion zone;main menu;open;open sysconf;pg;private
|
* `call client in [exclusion zone;main menu;open;open sysconf;pg;private group;solo;super cruise]`:
|
||||||
group;solo;super cruise]`: Callouts for all the various things a client could
|
Callouts for all the various things a client could get themselves into.
|
||||||
get themselves into.
|
|
||||||
* `call [client destroyed;client offline;sysconf;system confirmed]`: This is the
|
* `call [client destroyed;client offline;sysconf;system confirmed]`: This is the
|
||||||
command you don’t want to use. Include sysconf in your “friend+” or “in open”
|
command you don’t want to use. Include sysconf in your “friend+” or “in open”
|
||||||
calls, and make sure you will never have to call “client destroyed”, would
|
calls, and make sure you will never have to call “client destroyed”, would
|
||||||
you?
|
you?
|
||||||
|
|
||||||
### General IRC Interaction ###
|
### Closing a Case
|
||||||
|
|
||||||
(requires EDDI)
|
* `[close;clear] rat case`: Closes the currently open rat case.
|
||||||
|
|
||||||
|
## General IRC Interaction
|
||||||
|
|
||||||
Using EDDI to read the game’s journal, you can send messages to IRC from Elite’s
|
Using EDDI to read the game’s journal, you can send messages to IRC from Elite’s
|
||||||
ingame chat.
|
ingame chat.
|
||||||
|
@ -198,86 +89,11 @@ I recommend using local chat and limiting the use to instances that will
|
||||||
probably not have other players in it (e.g. instanced in normal space with the
|
probably not have other players in it (e.g. instanced in normal space with the
|
||||||
client or in SC in some remote system out in the black on a long range rescue).
|
client or in SC in some remote system out in the black on a long range rescue).
|
||||||
|
|
||||||
* #fuelrats: Use “.fr \<message\>” to have VoiceAttack send “#\<caseNumber\>
|
* \#fuelrats: Use `.fr <message>` to have VoiceAttack send
|
||||||
\<message\>” to the #fuelrats channel – or yell at you when you are not on
|
`#<caseNumber> <message>` to \#fuelrats – or yell at you when you
|
||||||
a case.
|
are not on a case.
|
||||||
* #ratchat: Use “.rc \<message\>” to have VoiceAttack send “\<message\>” to
|
* \#ratchat: Use `.rc <message>` to have VoiceAttack send `<message>` to
|
||||||
#ratchat.
|
\#ratchat.
|
||||||
|
|
||||||
These commands send their text to windows with “#fuelrats” and “#ratchat” in
|
Make sure [that your IRC client is setup
|
||||||
their title, respectively. If your IRC client does not do that, you will have to
|
properly](/configuration/RatAttack/#sending-text-to-fuelrats-irc).
|
||||||
change the “target” window of the `RatAttack.sendToFuelrats` and
|
|
||||||
`RatAttack.sendToRatchat` commands to reflect the actual window titles on your
|
|
||||||
system. I will look into making this more elegant to change in the future.
|
|
||||||
|
|
||||||
## Logging ##
|
|
||||||
|
|
||||||
The profile supports logging a bunch of stuff to the VoiceAttack event log. By
|
|
||||||
default, logging is concise and constrained to basically error messages.
|
|
||||||
|
|
||||||
If you need more logging (usually for debugging purposes), say `enable logging`.
|
|
||||||
If you want to enable verbose logging _by default_, call the
|
|
||||||
`Logging.enableLogging` command from your custom profile’s `startup` command.
|
|
||||||
|
|
||||||
## Exposed Variables ##
|
|
||||||
|
|
||||||
The following Variables are _global_ and thus readable (and writeable! Please
|
|
||||||
don’t unless it’s a config variable …) from other profiles.
|
|
||||||
|
|
||||||
### Configuration Variables ###
|
|
||||||
|
|
||||||
There are a bunch of configuration variables. You should not overwrite those
|
|
||||||
manually, instead use the provided commands in the `_configuration` section!
|
|
||||||
|
|
||||||
Basically all the settings are available using the `customize settings` prefix,
|
|
||||||
then saying `[enable;disable] <setting>` for on/off switches and `set <setting>`
|
|
||||||
for text variables.
|
|
||||||
|
|
||||||
* `EDDI.quietMode` (boolean): whether or not to set EDDI to quite mode. Default:
|
|
||||||
true.
|
|
||||||
* `EDDI.useEddiForVoice` (boolean): whether to use the EDDI plugin to handle
|
|
||||||
text-to-speech over VoiceAttacks built-in speech function. Default: false.
|
|
||||||
* `Elite.pasteKey` (string): the key used for pasting into Elite. On QWERTY this
|
|
||||||
is `v`. Default: `v`.
|
|
||||||
* `RatAttack.announceNearestCMDR` (boolean): whether or not to automatically
|
|
||||||
announce your nearest CMDR to a case. Requires the `elite-scripts` Python
|
|
||||||
scripts. Will probably break in creative ways if you don’t have them and turn
|
|
||||||
it on anyway. Default: false.
|
|
||||||
* `RatAttack.announcePlatform` (boolean): whether or not to announce the case’s
|
|
||||||
platform by default. Useful to set if you are active on more than one
|
|
||||||
platform. Even with this off, you will still be warned when you open a case
|
|
||||||
that is _not_ on one of your platforms. Default: false.
|
|
||||||
* `RatAttack.CMDRs` (string): list of your CMDR names, delimited by spaces. If
|
|
||||||
your names include spaces, you will have to put them in quotes. Default: “"J
|
|
||||||
Jora Jameson" NameWithNoSpace”.
|
|
||||||
* `RatAttack.confirmCalls` (boolean): whether VoiceAttack should ask you before
|
|
||||||
posting to #fuelrats to make sure there hasn’t been an error in voice
|
|
||||||
recognition and you accidentally post the wrong thing. Default: true.
|
|
||||||
* `RatAttack.autoCloseCase` (boolean): whether or not to automatically close an
|
|
||||||
open rat case on calling “fuel+”. Default: false.
|
|
||||||
* `RatAttack.onDuty` (boolean): whether or not you are currently on rat duty.
|
|
||||||
Default: true.
|
|
||||||
* `RatAttack.platforms` (string): the platforms you want to be informed of
|
|
||||||
incoming cases for. If you are on console, you can still have VoiceAttack
|
|
||||||
running on the PC that you are using for IRC and handle calls and stuff using
|
|
||||||
voice! Delimited by whatever you want. Can include “PC”, “XB”, “PS4”.
|
|
||||||
Default: “PC”.
|
|
||||||
* `python.scriptPath` (string): the path you put the Python scripts in. Default:
|
|
||||||
“{VA_DIR}\Sounds\scripts”.
|
|
||||||
|
|
||||||
### Other Variables ###
|
|
||||||
|
|
||||||
Current case data:
|
|
||||||
|
|
||||||
* `RatAttack.caseNumber` (int): the number of the case you are currently on.
|
|
||||||
Will be `Not Set` if you are not on a case.
|
|
||||||
* `RatAttack.onCase` (boolean): whether or not you are currently on a case.
|
|
||||||
|
|
||||||
Case list:
|
|
||||||
|
|
||||||
* `RatAttack.caseList.<case#>.cmdr` (string)
|
|
||||||
* `RatAttack.caseList.<case#>.system` (string)
|
|
||||||
* `RatAttack.caseList.<case#>.platform` (string)
|
|
||||||
* `RatAttack.caseList.<case#>.codeRed` (boolean)
|
|
||||||
|
|
||||||
… with `<case#>` being a number between 0 and 19.
|
|
|
@ -1,4 +1,4 @@
|
||||||
# SpanshAttack #
|
# SpanshAttack
|
||||||
|
|
||||||
This profile uses the
|
This profile uses the
|
||||||
[ED-NeutronRouter](https://github.com/sc-pulgan/ED-NeutronRouter) plugin to plot
|
[ED-NeutronRouter](https://github.com/sc-pulgan/ED-NeutronRouter) plugin to plot
|
||||||
|
@ -6,94 +6,29 @@ neutron jumps using [spansh](https://spansh.co.uk/plotter). It fully does
|
||||||
everything you need from within the game and VoiceAttack, you won’t have to
|
everything you need from within the game and VoiceAttack, you won’t have to
|
||||||
visit the site at any point.
|
visit the site at any point.
|
||||||
|
|
||||||
## Requirements ##
|
## Plotting a Route
|
||||||
|
|
||||||
In addition to VoiceAttack, you will need the following plugins to use this
|
|
||||||
profile:
|
|
||||||
|
|
||||||
* [bindED](https://forum.voiceattack.com/smf/index.php?topic=564.0)
|
|
||||||
* [EDDI](https://github.com/EDCD/EDDI) installed as a VoiceAttack plugin
|
|
||||||
* [ED-NeutronRouter](https://github.com/sc-pulgan/ED-NeutronRouter): required
|
|
||||||
for SpanshAttack. **Make sure to [grab the pre-release
|
|
||||||
1.02](https://github.com/sc-pulgan/ED-NeutronRouter/releases/tag/1.02)** since
|
|
||||||
1.01 has a bug with a hardcoded 50 ly jump range.
|
|
||||||
|
|
||||||
### EDDI speech responder ###
|
|
||||||
|
|
||||||
For the convenience of people that have not been using EDDI in the past,
|
|
||||||
SpanshAttack will deactivate the speech responder automatically to not clutter
|
|
||||||
them with unwanted TTS.
|
|
||||||
|
|
||||||
If you are already an EDDI user and want to keep the default speech responder
|
|
||||||
functionality, you will have to disable the `EDDI.quietMode` setting by running
|
|
||||||
the `customize settings disable eddi quiet mode` command.
|
|
||||||
|
|
||||||
## Settings ##
|
|
||||||
|
|
||||||
Because Elite’s keyboard handling is … weird you’ll have to set the key to use
|
|
||||||
for pasting text into Elite:Dangerous. If you are not using a “standard”
|
|
||||||
QWERT[YZ] layout, you will have to change it back to the key that is physically
|
|
||||||
in the place where `v` would be on QWERTY.
|
|
||||||
|
|
||||||
For other settings, see the [Configuration Variables](#Configuration-Variables)
|
|
||||||
section.
|
|
||||||
|
|
||||||
The last “setting” in the not-so-strict sense of the word is the
|
|
||||||
`SpanshAttack.getShipRange` command. Any ship listed in there will automatically
|
|
||||||
have its jump range used instead of VA prompting you for it. Since, again, VA
|
|
||||||
will execute the first matching command found, you can create this command in
|
|
||||||
your own profile when you are using SpanshAttack by including it. You can
|
|
||||||
override a saved range for your ship by using the `plot neutron
|
|
||||||
[course;route;trip] with custom range` command.
|
|
||||||
|
|
||||||
The ED-NeutronRouter plugin is technically supposed to read the current jump
|
|
||||||
range from EDDI; sadly a) it’s
|
|
||||||
[bugged](https://github.com/sc-pulgan/ED-NeutronRouter/issues/3) right now, and
|
|
||||||
b) EDDI is storing the _maximum_ distance for your ship instead of the current
|
|
||||||
/ full on fuel one.
|
|
||||||
|
|
||||||
## Including the Profile ##
|
|
||||||
|
|
||||||
When including the profile, be sure to
|
|
||||||
|
|
||||||
* Run the startup command. You will need to have a startup command in your
|
|
||||||
profile (= one that is run on profile loading) and call `SpanshAttack.startup`
|
|
||||||
from that one.
|
|
||||||
* Make sure all EDDI events that SpanshAttack needs are correctly handled. For
|
|
||||||
all events used in SpanshAttack that you already have handlers for in your
|
|
||||||
profile, you’ll have to include a call to `SpanshAttack.<event name>`. E.g.
|
|
||||||
for “EDDI Jumped”, call `SpanshAttack.EDDI Jumped` by name from your `((EDDI
|
|
||||||
Jumped))` command.
|
|
||||||
* (Optional) Have a `SpanshAttack.getShipRange` command in your profile to
|
|
||||||
overwrite the default one with your ship’s ranges. See the default command for
|
|
||||||
pointers.
|
|
||||||
|
|
||||||
## Usage ##
|
|
||||||
|
|
||||||
### Plotting a Route ###
|
|
||||||
|
|
||||||
1. _Target_ the system you want to be routed to (target, do not plot to it).
|
1. _Target_ the system you want to be routed to (target, do not plot to it).
|
||||||
1. Either exit the galaxy map or make sure you are on its first tab (or
|
1. Either exit the galaxy map or make sure you are on its first tab (or
|
||||||
auto-plotting will break).
|
auto-plotting will break).
|
||||||
1. Trigger the `SpanshAttack.plotRoute` command either by voice (`plot neutron
|
1. Trigger the `SpanshAttack.plotRoute` command either by voice
|
||||||
[course;route;trip] [with custom range;]`) or calling it from another
|
(`plot neutron [course;route;trip] [with custom range;]`) or by
|
||||||
command.
|
calling it from another command.
|
||||||
1. Enter your ship’s jump range if prompted.
|
1. Enter your ship’s jump range if prompted.
|
||||||
1. Wait for the route to be calculated. The command will automatically open the
|
1. Wait for the route to be calculated. The command will automatically open the
|
||||||
galaxy map and jump to the first waypoint on your route. If you run into
|
galaxy map and search it for the first waypoint on your route.
|
||||||
weird behaviour, it’s probably because your target system is not in EDDB.
|
|
||||||
1. Either target the first waypoint or plot to it.
|
1. Either target the first waypoint or plot to it.
|
||||||
1. Start jumping!
|
1. Start jumping!
|
||||||
|
|
||||||
#### Plotting to a System Unknown to the Neutron Router ####
|
### Plotting to a System Unknown to the Neutron Router
|
||||||
|
|
||||||
The router can only plot a route to a system that is in its data base (obviously
|
The router can only plot a route to a system that is in its database (obviously
|
||||||
can also only give you way points that are). If your target system is not, there
|
can also only give you way points that are). If your target system is not, there
|
||||||
are several levels of fallback handling to find a system that is.
|
are several levels of fallback handling to find a system that is.
|
||||||
|
|
||||||
1. Check `Next system` coordinates provided by EDDI. If the system is in EDSM,
|
1. Check `Next system` coordinates provided by EDDI. If the system is in EDSM,
|
||||||
but has for some reason not been sent over EDDN to other sites including
|
but has for some reason not been sent over EDDN to other sites including
|
||||||
Spansh we can get coordinates here.
|
Spansh, we can get coordinates here.
|
||||||
1. If the system is not in EDSM check EDTS. It can calculate approximate
|
1. If the system is not in EDSM check EDTS. It can calculate approximate
|
||||||
coordinates for a given procedurally generated system name.
|
coordinates for a given procedurally generated system name.
|
||||||
1. If that fails prompt the user for input.
|
1. If that fails prompt the user for input.
|
||||||
|
@ -106,39 +41,41 @@ you will be prompted to make sure you are going roughly to the right
|
||||||
coordinates. You will find the system that is used for plotting, its
|
coordinates. You will find the system that is used for plotting, its
|
||||||
coordinates and the accuracy in VoiceAttack’s log window.
|
coordinates and the accuracy in VoiceAttack’s log window.
|
||||||
|
|
||||||
### Neutron Jumping ###
|
## Neutron Jumping
|
||||||
|
|
||||||
With standard settings, just supercharge off a neutron cone. You should
|
With standard settings, just supercharge off a neutron cone. You should
|
||||||
automatically be taken to the galaxy map with the next waypoint selected.
|
automatically be taken to the galaxy map with the next waypoint selected.
|
||||||
|
|
||||||
In case you have disabled auto-plotting to the next waypoint, manually invoke
|
In case you have disabled auto-plotting to the next waypoint, manually invoke
|
||||||
the `SpanshAttack.targetNextNeutronWaypoint` command by voice (`[target;] next
|
the `SpanshAttack.targetNextNeutronWaypoint` command by voice
|
||||||
neutron [waypoint; way point]`) or calling it from another command.
|
(`[target;] next neutron [waypoint; way point]`) or calling it from
|
||||||
|
another command.
|
||||||
|
|
||||||
Additionally, you can use the `SpanshAttack.copyNextNeutronWaypoint`
|
Additionally, you can use the `SpanshAttack.copyNextNeutronWaypoint`
|
||||||
/ `[get;copy] next neutron [waypoint;way point]` command to copy the next
|
/ `[get;copy] next neutron [waypoint;way point]` command to copy the next
|
||||||
neutron waypoint to the clipboard.
|
neutron waypoint to the clipboard.
|
||||||
|
|
||||||
#### Manual Re-Plot ####
|
### Manual Re-Plot
|
||||||
|
|
||||||
Trigger the `SpanshAttack.replotRoute` command either by voice (`replot neutron
|
Trigger the `SpanshAttack.replotRoute` command either by voice
|
||||||
[course;route;trip]`) or calling it from another command. This will start
|
(`replot neutron [course;route;trip]`) or calling it from another command.
|
||||||
a re-plot of the current route with the same target system and jump range.
|
This will start a re-plot of the current route with the same target system and
|
||||||
|
jump range.
|
||||||
|
|
||||||
### Refueling ###
|
## Refueling
|
||||||
|
|
||||||
Whenever you refuel off a scoopable star, the profile will automatically
|
Whenever you finish refueling off a scoopable star, the profile will
|
||||||
throttle back up to 100% speed. Unless you have disabled it in your
|
automatically throttle back up to 100% speed. Unless you have disabled it in
|
||||||
configuration, you will also automatically target the next system on your route
|
your configuration, you will also automatically target the next system on your
|
||||||
and jump to it once you leave fuel scoop range.
|
route and jump to it once you leave fuel scoop range.
|
||||||
|
|
||||||
### Clearing a Route ###
|
## Clearing a Route
|
||||||
|
|
||||||
When you reach your target system, the neutron route will automatically be
|
When you reach your target system the neutron route will automatically be
|
||||||
cleared. If you want to prematurely end your trip, call the
|
cleared. If you want to prematurely end your trip, call the
|
||||||
`SpanshAttack.clearRoute` / `clear neutron [course;route;trip]` command.
|
`SpanshAttack.clearRoute` / `clear neutron [course;route;trip]` command.
|
||||||
|
|
||||||
## Other Commands ##
|
## Other Commands
|
||||||
|
|
||||||
### Announcing Jumps Left ###
|
### Announcing Jumps Left ###
|
||||||
|
|
||||||
|
@ -156,86 +93,3 @@ SpanshAttack keeps track of your start time, even if you have the option to time
|
||||||
your trip turned off. This way you can get the time you’ve been jumping with the
|
your trip turned off. This way you can get the time you’ve been jumping with the
|
||||||
`SpanshAttack.announceTripTime` or
|
`SpanshAttack.announceTripTime` or
|
||||||
`how long have i been [jumping;on this trip;on this neutron trip]?` commands.
|
`how long have i been [jumping;on this trip;on this neutron trip]?` commands.
|
||||||
|
|
||||||
### Reload bindings ###
|
|
||||||
|
|
||||||
If you change any relevant bindings (e.g. the galaxy map key), you should run
|
|
||||||
the `reload bindings` command to make sure that SpanshAttack presses the right
|
|
||||||
thing for you.
|
|
||||||
|
|
||||||
Eh, just do it every time you edit your controls without re-starting
|
|
||||||
VoiceAttack, just to be sure.
|
|
||||||
|
|
||||||
### Helper Functions ###
|
|
||||||
|
|
||||||
The profile contains a lot of helper functions that get called by the
|
|
||||||
aforementioned commands. Have a look around, maybe learn something about
|
|
||||||
VoiceAttack :)
|
|
||||||
|
|
||||||
## Logging ##
|
|
||||||
|
|
||||||
The profile supports logging a bunch of stuff to the VoiceAttack event log. By
|
|
||||||
default, logging is concise and constrained to basically error messages.
|
|
||||||
|
|
||||||
If you need more logging (usually for debugging purposes), say `enable logging`.
|
|
||||||
If you want to enable verbose logging _by default_, call the
|
|
||||||
`Logging.enableLogging` command from your custom profile’s `startup` command.
|
|
||||||
|
|
||||||
## Exposed Variables ##
|
|
||||||
|
|
||||||
The following Variables are _global_ and thus readable (and writeable! Please
|
|
||||||
don’t unless it’s a config variable …) from other profiles:
|
|
||||||
|
|
||||||
### Configuration Variables ###
|
|
||||||
|
|
||||||
There are a bunch of configuration variables. You should not overwrite those
|
|
||||||
manually, instead use the provided commands in the `_configuration` section!
|
|
||||||
|
|
||||||
Basically all the settings are available using the `customize settings` prefix,
|
|
||||||
then saying `[enable;disable] <setting>` for on/off switches and `set <setting>`
|
|
||||||
for text variables.
|
|
||||||
|
|
||||||
* `EDDI.quietMode` (boolean): whether or not to set EDDI to quite mode. Default:
|
|
||||||
true.
|
|
||||||
* `EDDI.useEddiForVoice` (boolean): whether to use EDDI over VA’s builtin `say`
|
|
||||||
command. Default: false.
|
|
||||||
* `Elite.pasteKey` (string): the key used for pasting into Elite. On QWERTY this
|
|
||||||
is `v`. Default: `v`.
|
|
||||||
* `SpanshAttack.timeTrip` (boolean): whether to automatically tell you at the
|
|
||||||
end of a trip how long it took you to get there. Default: false.
|
|
||||||
* `SpanshAttack.announceWaypoints` (boolean): whether to announce each waypoint
|
|
||||||
of the neutron route. Default: true.
|
|
||||||
* `SpanshAttack.announceJumpsLeft` (string): `;`-separated list of remaining
|
|
||||||
jumps to announce when said amounts are reached. Right now only works if they
|
|
||||||
are _exactly_ reached when supercharging off a neutron. Note the extra `;` at
|
|
||||||
the beginning and end of the string. Default: `;1;3;5;10;15;20;30;50;75;100;`
|
|
||||||
* `SpanshAttack.autoJumpAfterScooping` (boolean): whether to automatically jump
|
|
||||||
after fuel scooping (and moving out of scoop range). Default: true.
|
|
||||||
* `SpanshAttack.autoPlot` (boolean): whether to automatically plot to the next
|
|
||||||
waypoint on supercharging. Default: true.
|
|
||||||
* `SpanshAttack.clearOnShutdown` (boolean): whether or not to automatically
|
|
||||||
clear an active neutron route on Elite client shutdown. Default: true.
|
|
||||||
* `SpanshAttack.defaultToLadenRange` (boolean): whether or not to default to
|
|
||||||
your ship’s laden range (as reported by EDDI) instead of asking for user
|
|
||||||
input. Sadly it’s with _current_ fuel, not full. Setting a ship’s jump range
|
|
||||||
in the `SpanshAttack.getShipRange` command will still overrule this. Default:
|
|
||||||
false.
|
|
||||||
* `SpanshAttack.copyWaypointToClipboard` (boolean): whether to copy the next
|
|
||||||
waypoint into the Windows clipboard for use in other programs. Default: false.
|
|
||||||
* `python.scriptPath` (string): the path you put the Python scripts in.
|
|
||||||
Default: “{VA_DIR}\Sounds\scripts”.
|
|
||||||
|
|
||||||
### Other Variables ###
|
|
||||||
|
|
||||||
These variables can be used to get information about the current neutron route.
|
|
||||||
Please do not set them manually and / or from outside the SpanshAttack profile.
|
|
||||||
|
|
||||||
* `SpanshAttack.plotSystem` (string): the system actually plotted towards using
|
|
||||||
the neutron router (onley used/set if the target system is not in the data
|
|
||||||
base)
|
|
||||||
* `SpanshAttack.targetSystem` (string): the target system for the current
|
|
||||||
neutron route
|
|
||||||
* `SpanshAttack.nextNeutronWaypoint` (string): the next waypoint on the current
|
|
||||||
neutron route
|
|
||||||
* `SpanshAttack.neutronJumpMode` (boolean): neutron jump mode active/inactive
|
|
||||||
* `SpanshAttack.jumpRange` (decimal): the current ship’s jump range
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# StreamAttack #
|
# StreamAttack
|
||||||
|
|
||||||
This profile uses the [EDDI](https://github.com/EDCD/EDDI) plugin to write
|
This profile uses the [EDDI](https://github.com/EDCD/EDDI) plugin to write
|
||||||
a bunch of information about your commander, your current location and your ship
|
a bunch of information about your commander, your current location and your ship
|
||||||
|
@ -7,41 +7,7 @@ stream.
|
||||||
|
|
||||||
Default folder is `%appdata%\StreamAttack\`.
|
Default folder is `%appdata%\StreamAttack\`.
|
||||||
|
|
||||||
## Requirements ##
|
## Commands
|
||||||
|
|
||||||
In addition to VoiceAttack, you will need the following plugins to use this
|
|
||||||
profile:
|
|
||||||
|
|
||||||
* [EDDI](https://github.com/EDCD/EDDI) installed as a VoiceAttack plugin
|
|
||||||
|
|
||||||
### EDDI speech responder ###
|
|
||||||
|
|
||||||
For the convenience of people that have not been using EDDI in the past,
|
|
||||||
StreamAttack will deactivate the speech responder automatically to not clutter
|
|
||||||
them with unwanted TTS.
|
|
||||||
|
|
||||||
If you are already an EDDI user and want to keep the default speech responder
|
|
||||||
functionality, you will have to disable the `EDDI.quietMode` setting by running
|
|
||||||
the `customize settings disable eddi quiet mode` command.
|
|
||||||
|
|
||||||
## Settings ##
|
|
||||||
|
|
||||||
See the [Configuration Variables](#Configuration-Variables) section.
|
|
||||||
|
|
||||||
## Including the Profile ##
|
|
||||||
|
|
||||||
When including the profile, be sure to
|
|
||||||
|
|
||||||
* Run the startup command. You will need to have a startup command in your
|
|
||||||
profile (= one that is run on profile loading) and call `StreamAttack.startup`
|
|
||||||
from that one.
|
|
||||||
* Make sure all EDDI events that StreamAttack needs are correctly handled. For
|
|
||||||
all events used in StreamAttack that you already have handlers for in your
|
|
||||||
profile, you’ll have to include a call to `StreamAttack.<event name>`. E.g.
|
|
||||||
for “EDDI Jumped”, call `StreamAttack.EDDI Jumped` by name from your `((EDDI
|
|
||||||
Jumped))` command.
|
|
||||||
|
|
||||||
## Commands ##
|
|
||||||
|
|
||||||
* `clear jump target`: clears the current jump target.
|
* `clear jump target`: clears the current jump target.
|
||||||
* `set jump target`: sets the jump target to the currently targeted system.
|
* `set jump target`: sets the jump target to the currently targeted system.
|
||||||
|
@ -51,70 +17,30 @@ When including the profile, be sure to
|
||||||
in your default browser.
|
in your default browser.
|
||||||
* `open StreamAttack folder`: opens the configured folder in Explorer.
|
* `open StreamAttack folder`: opens the configured folder in Explorer.
|
||||||
|
|
||||||
## Files the Profile Provides ##
|
## Output Files
|
||||||
|
|
||||||
### Elite ###
|
### Elite
|
||||||
|
|
||||||
#### Commander ####
|
#### Commander
|
||||||
|
|
||||||
* `Elite\cmdr\name`: the current commander’s name.
|
* `Elite\cmdr\name`: the current commander’s name.
|
||||||
|
|
||||||
#### Jump Target ####
|
#### Jump Target
|
||||||
|
|
||||||
* `Elite\jumpTarget\distance`: distance to current jump target in light years.
|
* `Elite\jumpTarget\distance`: distance to current jump target in light years.
|
||||||
* `Elite\jumpTarget\full`: pretty-printed `<distance> ly to <name>`.
|
* `Elite\jumpTarget\full`: pretty-printed `<distance> ly to <name>`.
|
||||||
* `Elite\jumpTarget\name`: the current jump target’s system name.
|
* `Elite\jumpTarget\name`: the current jump target’s system name.
|
||||||
|
|
||||||
#### Location ####
|
#### Location
|
||||||
|
|
||||||
* `Elite\location\full`: depending on your status, either the station you are
|
* `Elite\location\full`: depending on your status, either the station you are
|
||||||
currently docked at (+ system), the body you are currently near, or the system
|
currently docked at (+ system), the body you are currently near, or the system
|
||||||
you are currently in.
|
you are currently in.
|
||||||
* `Elite\location\system`: the system you are currently in.
|
* `Elite\location\system`: the system you are currently in.
|
||||||
|
|
||||||
#### Ship ####
|
#### Ship
|
||||||
|
|
||||||
* `Elite\ship\build`: your current ship’s loadout (link to coriolis).
|
* `Elite\ship\build`: your current ship’s loadout (link to coriolis).
|
||||||
* `Elite\ship\full`: `“<name>” | <model> | <build>`.
|
* `Elite\ship\full`: `“<name>” | <model> | <build>`.
|
||||||
* `Elite\ship\model`: your current ship’s model.
|
* `Elite\ship\model`: your current ship’s model.
|
||||||
* `Elite\ship\name`: your current ship’s name.
|
* `Elite\ship\name`: your current ship’s name.
|
||||||
|
|
||||||
## Logging ##
|
|
||||||
|
|
||||||
The profile supports logging a bunch of stuff to the VoiceAttack event log. By
|
|
||||||
default, logging is concise and constrained to basically error messages.
|
|
||||||
|
|
||||||
If you need more logging (usually for debugging purposes), say `enable logging`.
|
|
||||||
If you want to enable verbose logging _by default_, call the
|
|
||||||
`Logging.enableLogging` command from your custom profile’s `startup` command.
|
|
||||||
|
|
||||||
## Exposed Variables ##
|
|
||||||
|
|
||||||
The following Variables are _global_ and thus readable (and writeable! Please
|
|
||||||
don’t unless it’s a config variable …) from other profiles:
|
|
||||||
|
|
||||||
### Configuration Variables ###
|
|
||||||
|
|
||||||
There are a bunch of configuration variables. You should not overwrite those
|
|
||||||
manually, instead use the provided commands in the `_configuration` section!
|
|
||||||
|
|
||||||
Basically all the settings are available using the `customize settings` prefix,
|
|
||||||
then saying `[enable;disable] <setting>` for on/off switches and `set <setting>`
|
|
||||||
for text variables.
|
|
||||||
|
|
||||||
* `EDDI.quietMode` (boolean): whether or not to set EDDI to quite mode. Default:
|
|
||||||
true.
|
|
||||||
* `EDDI.useEddiForVoice` (boolean): whether to use EDDI over VA’s builtin `say`
|
|
||||||
command. Default: false.
|
|
||||||
* `StreamAttack.outputDir` (string): the directory StreamAttack will save its
|
|
||||||
information to. Default: `%appdata%\StreamAttack\`.
|
|
||||||
* `python.ScriptPath` (string): the path you have placed the compiled Python
|
|
||||||
scripts in. Default: “{VA_DIR}\Sounds\scripts” (the “\Sounds\scripts” folder
|
|
||||||
in your VoiceAttack installation directory).
|
|
||||||
|
|
||||||
### Other Variables ###
|
|
||||||
|
|
||||||
These variables can be used to get information about the current neutron route.
|
|
||||||
Please do not set them manually and / or from outside the StreamAttack profile.
|
|
||||||
|
|
||||||
* `StreamAttack.Elite.jumpTarget` (string): the current jump target.
|
|
||||||
|
|
|
@ -1 +1,4 @@
|
||||||
# VoiceAttack
|
# VoiceAttack Tips
|
||||||
|
|
||||||
|
This will fill up eventually with tips on how to properly setup VoiceAttack for
|
||||||
|
decent recognition.
|
|
@ -58,12 +58,12 @@ ETA yet.
|
||||||
|
|
||||||
Currently there is no way to specify a platform for each CMDR.
|
Currently there is no way to specify a platform for each CMDR.
|
||||||
|
|
||||||
## Ingame chat → FuelRats IRC
|
## Sending Text to FuelRats IRC
|
||||||
|
|
||||||
You can send messages from ingame chat directly to the “\#fuelrats” and
|
The profile will attempt to send calls to “\#fuelrats”, and you can send
|
||||||
“\#ratchat” channels on FuelRats IRC. (See [[#FIXXME]])
|
messages from ingame chat to “\#fuelrats” and “\#ratchat”.
|
||||||
|
|
||||||
That will send text to windows with “#fuelrats” and “#ratchat” in
|
That will send text to windows with “\#fuelrats” and “\#ratchat” in
|
||||||
their title, respectively. If your IRC client does not do that, you will have to
|
their title, respectively. If your IRC client does not do that, you will have to
|
||||||
change the “target” window of the `RatAttack.sendToFuelrats` and
|
change the “target” window of the `RatAttack.sendToFuelrats` and
|
||||||
`RatAttack.sendToRatchat` commands to reflect the actual window titles on your
|
`RatAttack.sendToRatchat` commands to reflect the actual window titles on your
|
||||||
|
|
|
@ -30,8 +30,8 @@ You can override a saved range for your ship by using the
|
||||||
|
|
||||||
Toggles:
|
Toggles:
|
||||||
|
|
||||||
* `auto jump after scooping`: Automatically accelerate and jump out when fuel
|
* `auto jump after scooping`: Automatically jump out when fuel scooping is
|
||||||
scooping is complete. Default: true.
|
complete. Default: true.
|
||||||
* `auto plot`: Automatically plot to the next waypoint after supercharging.
|
* `auto plot`: Automatically plot to the next waypoint after supercharging.
|
||||||
Default: true.
|
Default: true.
|
||||||
* `clear neutron route on shutdown`: Clear an active neutron route when the game
|
* `clear neutron route on shutdown`: Clear an active neutron route when the game
|
||||||
|
|
|
@ -1 +1,4 @@
|
||||||
# Troubleshooting
|
# Troubleshooting
|
||||||
|
|
||||||
|
This will fill up gradually with Troubleshooting tips as people run into common
|
||||||
|
ones.
|
||||||
|
|
|
@ -11,7 +11,6 @@ theme:
|
||||||
prev_next_buttons_location: both
|
prev_next_buttons_location: both
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
#- htmlproofer
|
|
||||||
- search
|
- search
|
||||||
- roamlinks
|
- roamlinks
|
||||||
- mkpdfs:
|
- mkpdfs:
|
||||||
|
@ -42,7 +41,7 @@ nav:
|
||||||
- 'SpanshAttack.md'
|
- 'SpanshAttack.md'
|
||||||
- 'StreamAttack.md'
|
- 'StreamAttack.md'
|
||||||
- 'Issues':
|
- 'Issues':
|
||||||
- 'VoiceAttack tips': 'VoiceAttack.md'
|
- 'VoiceAttack Tips': 'VoiceAttack.md'
|
||||||
- 'troubleshooting.md'
|
- 'troubleshooting.md'
|
||||||
- 'Report a Bug': 'https://github.com/alterNERDtive/VoiceAttack-profiles/issues/new'
|
- 'Report a Bug': 'https://github.com/alterNERDtive/VoiceAttack-profiles/issues/new'
|
||||||
- 'Watch in Action':
|
- 'Watch in Action':
|
||||||
|
|
|
@ -74,7 +74,7 @@ namespace alterNERDtive.util
|
||||||
{ new Option<string>("announceJumpsLeft", ";1;3;5;10;15;20;30;50;75;100;", voiceTrigger: "announce jumps left",
|
{ new Option<string>("announceJumpsLeft", ";1;3;5;10;15;20;30;50;75;100;", voiceTrigger: "announce jumps left",
|
||||||
description: "Estimated jumps left to announce when reached.\nNEEDS to have leading and trailing “;”.") },
|
description: "Estimated jumps left to announce when reached.\nNEEDS to have leading and trailing “;”.") },
|
||||||
{ new Option<bool>("announceWaypoints", true, voiceTrigger: "waypoint announcements", description: "Announce each waypoint by name.") },
|
{ new Option<bool>("announceWaypoints", true, voiceTrigger: "waypoint announcements", description: "Announce each waypoint by name.") },
|
||||||
{ new Option<bool>("autoJumpAfterScooping", true, voiceTrigger: "auto jump after scooping", description: "Automatically accelerate and jump out when fuel scooping is complete.") },
|
{ new Option<bool>("autoJumpAfterScooping", true, voiceTrigger: "auto jump after scooping", description: "Automatically jump out when fuel scooping is complete.") },
|
||||||
{ new Option<bool>("autoPlot", true, voiceTrigger: "auto plot", description: "Automatically plot to the next waypoint after supercharging.") },
|
{ new Option<bool>("autoPlot", true, voiceTrigger: "auto plot", description: "Automatically plot to the next waypoint after supercharging.") },
|
||||||
{ new Option<bool>("clearOnShutdown", true, voiceTrigger: "clear neutron route on shutdown", description: "Clear an active neutron route when the game is shut down.") },
|
{ new Option<bool>("clearOnShutdown", true, voiceTrigger: "clear neutron route on shutdown", description: "Clear an active neutron route when the game is shut down.") },
|
||||||
{ new Option<bool>("copyWaypointToClipboard", false, voiceTrigger: "copy neutron waypoints to clipboard", description: "Copy each neutron waypoint into the Windows clipboard.") },
|
{ new Option<bool>("copyWaypointToClipboard", false, voiceTrigger: "copy neutron waypoints to clipboard", description: "Copy each neutron waypoint into the Windows clipboard.") },
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue