diff --git a/CHANGELOG.md b/CHANGELOG.md index 018e5ff..dc5ab20 100644 --- a/CHANGELOG.md +++ b/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. * EDDI events (and some other more administrative commands) are now hidden from 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 @@ -65,12 +62,28 @@ profile will keep the old name. Feel free to manually rename it. ### Added * `EliteAttack` plugin. Doesn’t do a lot yet. -* `where is my landing pad` command: Will use EDDI to tell you about the landing - pad location on star ports in relation to the mail slot. +* Submodule targeting! Say + `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 -* 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 @@ -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 tool that communicates with the plugin directly. See “Upgrading” in the documentation. -* Now supports up to 30 cases (0–29). Thanks, Epicalypse! +* Now supports up to 31 cases (0–30). Thanks, Epicalypse! ### Fixed @@ -106,32 +119,17 @@ profile will keep the old name. Feel free to manually rename it. ### 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. -### Changed - -* FIXXME - -### Fixed - -* FIXXME - ### StreamAttack 2.0 -### Added - -* FIXXME - ### Changed * Jump target will now be set to SpanshAttack’s plot target if the actual target system is not in the database. -### Fixed - -* FIXXME - ----- # 3.2.1 (2021-01-02) diff --git a/docs/EliteAttack.md b/docs/EliteAttack.md index 842e0c9..a1f4601 100644 --- a/docs/EliteAttack.md +++ b/docs/EliteAttack.md @@ -1,4 +1,4 @@ -# EliteAttack # +# EliteAttack This is my personal VoiceAttack profile for Elite: Dangerous. It started out 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 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 -package, so I’ve separated the neutron jumping and Seals stuff into their own -profiles. +Funnily enough it has grown to rely way more on events provided by +[EDDI](https://github.com/EDCD/EDDI) than actual voice commands. -The rest is a random conglomerate of all things VA and E:D; from various voice -commands to lots of EDDI event handlers. +## Chat Commands -Speaking of EDDI; it has become in integral part of my Elite experience, -especially the plethora of information it extracts from the game’s journal and -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.`. 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. +These commands 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. * `[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. -### Engineering/Materials ### +## Engineering/Materials * `how many [] do i have`: Tells you how many of 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 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. -* `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 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 manufactured, so I can quickly check if it’s worth looking for HGE in a system I’m in. -### Events ### +## Navigation -The main point of this profile is to react to Elite’s journal events (powered by -EDDI). Each of the events listed here will trigger a `((EDDI ))` command -in VoiceAttack which in turn triggers `EliteDangerous.EDDI ` and all -included profiles’ similar commands, e.g. `SpanshAttack.EDDI `. +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! -The actual `((EDDI ))` command will only be executed once by VoiceAttack, -the first one it can find. Keeping it separate from the actual code to be run -makes it easier to handle (multiple) included profiles. +* `distance [from;to] [Sol;home;the center;Beagle Point;Colonia]`: Gives you + your current distance to the given POI. +* `[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 -client window first to make sure they get registered properly. If it is not in -focus, the first key press might be swallowed otherwise. +## Ship Controls -For other commands, the profile just assumes that you are actively doing -something in game and it is already focused :) +Basically anything that is related to directly doing something with your ship. -#### 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. -Announces an estimate for high-value bodies’ payouts and the remaining mapping +## 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 candidates in the system as given by EDDI. -#### Body scanned #### +### Body scanned 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! -#### Carrier Cooldown #### +### Carrier Cooldown -Tells you when your carrier is able to do its next jump. Technically only works -if you were docked at it when it performed the jump, but I’m doing some -behind-the-scenes magic if you weren’t :) +Tells you when your carrier is able to do its next jump. -Might be slightly off (too early) in the latter case. - -#### Carrier Jumped #### - -Announces system and body your carrier has just jumped to. - -#### Carrier Jump Engaged #### +### Carrier Jump Engaged 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 -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` -event is triggered manually at approximately the right time). - -#### Carrier Jump Request #### +### Carrier Jump Request 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 as jump target, but then end up around the star. This _might_ give you a heads 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 -docked (which would make it pretty useless). Feel free to open in issue if -that’s the case. +### Carrier Jumped -#### 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 compares the number of bodies to the amount reported by EDSM (requires Python 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. -#### 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. -#### Jet Cone Boost #### +### Jet Cone Boost Sets your ship to full throttle immediately after you have supercharged. -#### Jumped #### +### Jumped -* zeroes throttle -* gets the system’s body count from EDSM (requires Python scripts) -* gets stations with outdated data (older than 1 year) from Spansh’s API -* if you haven’t visited the systems, starts a discovery scan (see the discovery - scan command) -* last but not least tells you about planets worth scanning if you are on the - R2R +* Zeroes throttle. +* Gets the system’s body count from EDSM. +* Gets stations with outdated data (by default: older than 1 year) from Spansh’s API. +* If you haven’t visited the systems (or set it up to honk every jump) starts a + discovery scan. +* Last but not least tells you about planets worth scanning if you are on the + R2R. -#### Liftoff #### +### Liftoff Retracts landing gear for you. Seriously, is there any occasion in which you _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 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 -will have to set a minimum desired amount in EDDI’s material monitor options -first for all materials you wish to be monitored. +Warns you when a monitored material falls below it’s minimum stock level and +tells you when you reach your desired level or fill up. -#### 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 -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 #### +### Ship FSD This event actually is several different events in one. Currently the following are handled: -* charging: Warns you if your target system’s main star is not scoopable, - including an extra warning at low fuel levels. (__Note__: This only works if - 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 +* Charging: Warns you if you are jumping with less than 25% fuel. +* Cooldown complete: Announces FSD cooldown if you are currently in normal space. -#### Ship interdicted #### +### Ship interdicted 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! -#### 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. +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 a +second to turn your lights off on a short drop and/or in high gravity. -#### SRV Launched #### - -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 -a 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. -#### Undocked #### +### Undocked Retracts landing gear for you. Seriously, is there any occasion in which you -_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] []`: 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] ` for on/off switches and `set ` -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. +_don’t_ immediately want to retract it after takeoff? \ No newline at end of file diff --git a/docs/RatAttack.md b/docs/RatAttack.md index 6884ced..7b875e3 100644 --- a/docs/RatAttack.md +++ b/docs/RatAttack.md @@ -1,4 +1,4 @@ -# RatAttack # +# RatAttack This profile facilitates [Fuel Ratting](https://www.fuelrats.com). It aims to 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 :) -## Requirements ## - -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.`. E.g. for “EDDI - Message sent”, call `RatAttack.EDDI Message sent` by name from your `((EDDI - Message sent))` command. - -## Usage ## - -### Going On/Off Duty ### +## Going On/Off Duty When you are on duty, RatAttack will automatically announce cases coming in through IRC. When off duty, it won’t. * `[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 ### - -#### 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\\appdata\roaming\RatAttack\ - /handleratsignal $1- -} -alias handleratsignal { - if ( $exists(C:\users\\appdata\roaming\RatAttack\ratsignal.pipe) ) { - /sleep 1 /handleratsignal $1- - } - else { - /write C:\users\\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 #### +## Case Handling 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 number, CMDR name, system, O₂ status and platform. There are several commands 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 open case. * `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 - `elite-scripts` Python scripts. -* `distance to rat case number [0..19]`: Will give you the distance from your - current system to a case’s system. Requires the use of my `elite-scripts` - Python scripts. -* `nearest commander to rat case number [0..19]`: Will give you the nearest of - 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 - CMDRs with their distance to the current case’s system. Requires some setup - and the use of my `elite-scripts` Python scripts. + location to the currently opened rat case. +* `distance to rat case number [0..30]`: Will give you the distance from your + current system to a case’s system. +* `nearest commander to rat case number [0..30]`: Will give you the nearest of + your CMDRs with their distance to a case’s system. [Requires some + setup](/configuration/RatAttack/#announcing-your-nearest-cmdr). +* `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](/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 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 - IRC. Will probably error out in creative ways if you don’t have your IRC - client set up properly. Too tired right now to have proper error handling so - just open an issue if you run into problems (it’s 7am, I haven’t slept and - 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. +* `open [latest;] rat case`: Opens the latest rat case that has come in through + IRC. Will only work if you actually have [your IRC client setup to send case + announcements to + VoiceAttack](/configuration/RatAttack/#getting-case-data-from-irc). ### 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 login to the game or have to take off from your current station/port/outpost/planet. -* `call friend [positive;negative] [in pg;in private group;in solo;in main - meu;sysconf;system confirmed]`: Friend request confirmations, with all the +* `call friend [positive;negative] [in pg;in private group;in solo;in main menu;sysconf;system confirmed;]`: + Friend request confirmations, with all the things you might want to / should call with it. -* `call [beacon;fuel;instance;pos;position;prep;sys;system;wing] - [positive;negative]`: All the stuff you usually need for ratting after you - have received the friend request. +* `call [beacon;fuel;instance;pos;position;prep;sys;system;wing] [positive;negative]`: + All the stuff you usually need for ratting after you have received the friend request. * `call wing pending`: Calls “wr pending” for when it takes 30s again to actually show up. -* `call client in [exclusion zone;main menu;open;open sysconf;pg;private - group;solo;super cruise]`: Callouts for all the various things a client could - get themselves into. +* `call client in [exclusion zone;main menu;open;open sysconf;pg;private group;solo;super cruise]`: + Callouts for all the various things a client could get themselves into. * `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” calls, and make sure you will never have to call “client destroyed”, would 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 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 client or in SC in some remote system out in the black on a long range rescue). -* #fuelrats: Use “.fr \” to have VoiceAttack send “#\ - \” to the #fuelrats channel – or yell at you when you are not on - a case. -* #ratchat: Use “.rc \” to have VoiceAttack send “\” to - #ratchat. +* \#fuelrats: Use `.fr ` to have VoiceAttack send + `# ` to \#fuelrats – or yell at you when you + are not on a case. +* \#ratchat: Use `.rc ` to have VoiceAttack send `` to + \#ratchat. -These commands send their text to windows with “#fuelrats” and “#ratchat” in -their title, respectively. If your IRC client does not do that, you will have to -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] ` for on/off switches and `set ` -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..cmdr` (string) -* `RatAttack.caseList..system` (string) -* `RatAttack.caseList..platform` (string) -* `RatAttack.caseList..codeRed` (boolean) - -… with `` being a number between 0 and 19. +Make sure [that your IRC client is setup +properly](/configuration/RatAttack/#sending-text-to-fuelrats-irc). \ No newline at end of file diff --git a/docs/SpanshAttack.md b/docs/SpanshAttack.md index f5d2422..f7b8d9c 100644 --- a/docs/SpanshAttack.md +++ b/docs/SpanshAttack.md @@ -1,4 +1,4 @@ -# SpanshAttack # +# SpanshAttack This profile uses the [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 visit the site at any point. -## Requirements ## - -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.`. 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 ### +## Plotting a Route 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 auto-plotting will break). -1. Trigger the `SpanshAttack.plotRoute` command either by voice (`plot neutron - [course;route;trip] [with custom range;]`) or calling it from another - command. +1. Trigger the `SpanshAttack.plotRoute` command either by voice + (`plot neutron [course;route;trip] [with custom range;]`) or by + calling it from another command. 1. Enter your ship’s jump range if prompted. 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 - weird behaviour, it’s probably because your target system is not in EDDB. + galaxy map and search it for the first waypoint on your route. 1. Either target the first waypoint or plot to it. 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 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, 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 coordinates for a given procedurally generated system name. 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 and the accuracy in VoiceAttack’s log window. -### Neutron Jumping ### +## Neutron Jumping With standard settings, just supercharge off a neutron cone. You should 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 -the `SpanshAttack.targetNextNeutronWaypoint` command by voice (`[target;] next -neutron [waypoint; way point]`) or calling it from another command. +the `SpanshAttack.targetNextNeutronWaypoint` command by voice +(`[target;] next neutron [waypoint; way point]`) or calling it from +another command. Additionally, you can use the `SpanshAttack.copyNextNeutronWaypoint` / `[get;copy] next neutron [waypoint;way point]` command to copy the next neutron waypoint to the clipboard. -#### Manual Re-Plot #### +### Manual Re-Plot -Trigger the `SpanshAttack.replotRoute` command either by voice (`replot neutron -[course;route;trip]`) or calling it from another command. This will start -a re-plot of the current route with the same target system and jump range. +Trigger the `SpanshAttack.replotRoute` command either by voice +(`replot neutron [course;route;trip]`) or calling it from another command. +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 -throttle back up to 100% speed. Unless you have disabled it in your -configuration, you will also automatically target the next system on your route -and jump to it once you leave fuel scoop range. +Whenever you finish refueling off a scoopable star, the profile will +automatically throttle back up to 100% speed. Unless you have disabled it in +your configuration, you will also automatically target the next system on your +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 -cleared. If you want to prematurely end your trip, call the +When you reach your target system the neutron route will automatically be +cleared. If you want to prematurely end your trip, call the `SpanshAttack.clearRoute` / `clear neutron [course;route;trip]` command. -## Other Commands ## +## Other Commands ### Announcing Jumps Left ### @@ -155,87 +92,4 @@ neutron waypoint_. 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 `SpanshAttack.announceTripTime` or -`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] ` for on/off switches and `set ` -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 +`how long have i been [jumping;on this trip;on this neutron trip]?` commands. \ No newline at end of file diff --git a/docs/StreamAttack.md b/docs/StreamAttack.md index 36828dd..e97d29c 100644 --- a/docs/StreamAttack.md +++ b/docs/StreamAttack.md @@ -1,4 +1,4 @@ -# StreamAttack # +# StreamAttack 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 @@ -7,41 +7,7 @@ stream. Default folder is `%appdata%\StreamAttack\`. -## Requirements ## - -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.`. E.g. - for “EDDI Jumped”, call `StreamAttack.EDDI Jumped` by name from your `((EDDI - Jumped))` command. - -## Commands ## +## Commands * `clear jump target`: clears the current jump target. * `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. * `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. -#### Jump Target #### +#### Jump Target * `Elite\jumpTarget\distance`: distance to current jump target in light years. * `Elite\jumpTarget\full`: pretty-printed ` ly to `. * `Elite\jumpTarget\name`: the current jump target’s system name. -#### Location #### +#### Location * `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 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\full`: `“” | | `. * `Elite\ship\model`: your current ship’s model. -* `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] ` for on/off switches and `set ` -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. +* `Elite\ship\name`: your current ship’s name. \ No newline at end of file diff --git a/docs/VoiceAttack.md b/docs/VoiceAttack.md index 5178f03..1cf3487 100644 --- a/docs/VoiceAttack.md +++ b/docs/VoiceAttack.md @@ -1 +1,4 @@ -# VoiceAttack \ No newline at end of file +# VoiceAttack Tips + +This will fill up eventually with tips on how to properly setup VoiceAttack for +decent recognition. \ No newline at end of file diff --git a/docs/configuration/RatAttack.md b/docs/configuration/RatAttack.md index 58c9402..f7607f6 100644 --- a/docs/configuration/RatAttack.md +++ b/docs/configuration/RatAttack.md @@ -58,12 +58,12 @@ ETA yet. 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 -“\#ratchat” channels on FuelRats IRC. (See [[#FIXXME]]) +The profile will attempt to send calls to “\#fuelrats”, and you can send +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 change the “target” window of the `RatAttack.sendToFuelrats` and `RatAttack.sendToRatchat` commands to reflect the actual window titles on your diff --git a/docs/configuration/SpanshAttack.md b/docs/configuration/SpanshAttack.md index b542dc8..beff9be 100644 --- a/docs/configuration/SpanshAttack.md +++ b/docs/configuration/SpanshAttack.md @@ -30,8 +30,8 @@ You can override a saved range for your ship by using the Toggles: -* `auto jump after scooping`: Automatically accelerate and jump out when fuel - scooping is complete. Default: true. +* `auto jump after scooping`: Automatically jump out when fuel scooping is + complete. Default: true. * `auto plot`: Automatically plot to the next waypoint after supercharging. Default: true. * `clear neutron route on shutdown`: Clear an active neutron route when the game diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index 227bd67..a53b66b 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -1 +1,4 @@ # Troubleshooting + +This will fill up gradually with Troubleshooting tips as people run into common +ones. diff --git a/mkdocs.yml b/mkdocs.yml index 4247bf5..43abe25 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -11,7 +11,6 @@ theme: prev_next_buttons_location: both plugins: - #- htmlproofer - search - roamlinks - mkpdfs: @@ -42,9 +41,9 @@ nav: - 'SpanshAttack.md' - 'StreamAttack.md' - 'Issues': - - 'VoiceAttack tips': 'VoiceAttack.md' + - 'VoiceAttack Tips': 'VoiceAttack.md' - 'troubleshooting.md' - 'Report a Bug': 'https://github.com/alterNERDtive/VoiceAttack-profiles/issues/new' - 'Watch in Action': - 'Twitch': 'https://twitch.tv/alterNERDtive' - - 'Youtube': 'https://www.youtube.com/channel/UC3XNZA7xWed1zM1AWOOdmog' \ No newline at end of file + - 'Youtube': 'https://www.youtube.com/channel/UC3XNZA7xWed1zM1AWOOdmog' diff --git a/plugins/VoiceAttack-base/util.cs b/plugins/VoiceAttack-base/util.cs index 7de6946..26ae13b 100644 --- a/plugins/VoiceAttack-base/util.cs +++ b/plugins/VoiceAttack-base/util.cs @@ -74,7 +74,7 @@ namespace alterNERDtive.util { new Option("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 “;”.") }, { new Option("announceWaypoints", true, voiceTrigger: "waypoint announcements", description: "Announce each waypoint by name.") }, - { new Option("autoJumpAfterScooping", true, voiceTrigger: "auto jump after scooping", description: "Automatically accelerate and jump out when fuel scooping is complete.") }, + { new Option("autoJumpAfterScooping", true, voiceTrigger: "auto jump after scooping", description: "Automatically jump out when fuel scooping is complete.") }, { new Option("autoPlot", true, voiceTrigger: "auto plot", description: "Automatically plot to the next waypoint after supercharging.") }, { new Option("clearOnShutdown", true, voiceTrigger: "clear neutron route on shutdown", description: "Clear an active neutron route when the game is shut down.") }, { new Option("copyWaypointToClipboard", false, voiceTrigger: "copy neutron waypoints to clipboard", description: "Copy each neutron waypoint into the Windows clipboard.") }, diff --git a/profiles/EliteAttack-Profile.vap b/profiles/EliteAttack-Profile.vap index 9b8faa5..6ee9132 100644 Binary files a/profiles/EliteAttack-Profile.vap and b/profiles/EliteAttack-Profile.vap differ diff --git a/profiles/RatAttack-Profile.vap b/profiles/RatAttack-Profile.vap index e741c07..c5daa37 100755 Binary files a/profiles/RatAttack-Profile.vap and b/profiles/RatAttack-Profile.vap differ