initial commit
Pretty raw state, SpanshAttack is in a usable state. Use things at your own risk.
This commit is contained in:
commit
af13889039
6 changed files with 8519 additions and 0 deletions
74
README.md
Normal file
74
README.md
Normal file
|
@ -0,0 +1,74 @@
|
|||
= Elite Dangerous VoiceAttack Profiles =
|
||||
|
||||
These are various profiles for [VoiceAttack](https://voiceattack.com) (VA) I use
|
||||
to enhance my Elite experience. They give me important info, facilitate
|
||||
day-to-day gaming and do some special things for [Fuel
|
||||
Rats](https://fuelrats.com) and [Hull Seals](https://hullseals.space) work.
|
||||
|
||||
Each of the profiles is documented in `/docs/`.
|
||||
|
||||
== Available Profiles ==
|
||||
|
||||
* [EliteDangerous](docs/EliteDangerous.md): My main Elite VA profile. Here be
|
||||
dragons; things may be heavily tailored towards how _I_ play the game and may
|
||||
not apply to how you play it. Included for reference and as a baseline or
|
||||
inspiration to create your own stuff.
|
||||
* [SpanshAttack](docs/SpanshAttack.md): profile to plot and follow trips along
|
||||
the neutron highway using [spansh](https://spansh.co.uk/plotter).
|
||||
* [RatAttack](docs/RatAttack.md): profile for interactions with the Fuel Rats’
|
||||
IRC server.
|
||||
* [SealAttack](docs/SealAttack.md): profile for interactions with the Hull
|
||||
Seals’ IRC server.
|
||||
|
||||
== Requirements ==
|
||||
|
||||
* [VoiceAttack](https://voiceattack.com): absolutely required (duh).
|
||||
* [bindED](FIXXME): required for all profiles; makes anything involving hitting
|
||||
E:D key binds portable.
|
||||
* [EDDI](FIXXME) installed as a VoiceAttack plugin: required for my personal
|
||||
profile and for SpanshAttack, optional for RatAttack and SealAttack.
|
||||
* [FIXXME that neutron plugin thing](FIXXME): required for SpanshAttack.
|
||||
|
||||
Additionally, you need to have keyboard binds setup at least as secondary
|
||||
bindings in Elite’s controls options. VA _cannot_ “push” joystick buttons for
|
||||
you, it can only do keyboard inputs. Hence its only way to interact with Elite
|
||||
is through keyboard emulation, even if you otherwise play the game with
|
||||
a controller or HOTAS. Or racing wheel. Or Rock Band set. Or bananas.
|
||||
|
||||
== Settings ==
|
||||
|
||||
Each profile has its respective `startup` command that should be launched upon
|
||||
loading the profile. If you include the profile in your own (see below) you have
|
||||
to manually call them for each included profile when yours is loaded.
|
||||
|
||||
== Using a Profile ==
|
||||
|
||||
Import the profile into VA, check the startup command for any settings you might
|
||||
want to adjust, activate it, done.
|
||||
|
||||
Oh, and you probably might want to check the corresponding README first.
|
||||
|
||||
<! FIXXME: does importing it include the startup settings? Check! !>
|
||||
|
||||
== Including a Profile ==
|
||||
|
||||
If you are already using a custom profile (or want to use mine), you can include
|
||||
others by FIXXME.
|
||||
|
||||
VoiceAttack does not execute configured startup commands for included profiles.
|
||||
Hence, you’ll have your own profile have one that in turn runs the included
|
||||
profiles’ startup commands. While you are doing that, you might as well set all
|
||||
settings here, centrally. Main advantage is that you can just upgrade the
|
||||
included profiles to newer versions without losing your settings.
|
||||
|
||||
Because of limitations of VoiceAttack itself, only the first matching command
|
||||
found will be executed, _including EDDI events_. That means you have to check
|
||||
your profile against the imported ones for events they both handle. E.g. if you
|
||||
already have a `((EDDI Message sent))` handler in your profile, you have to run
|
||||
`RatAttack.EDDI Message sent` and `SealAttack.EDDI Message sent` from within it.
|
||||
|
||||
You also have to do that if you include multiple profiles using the same events
|
||||
(e.g. RatAttack + SealAttack), even if you don’t have the same event in the
|
||||
including profile! If you want to make sure, manually create all EDDI Event
|
||||
handlers used in imported profiles and have them call the corresponding
|
||||
commands. See the Elite Dangerous profile for reference.
|
30
docs/EliteDangerous.md
Normal file
30
docs/EliteDangerous.md
Normal file
|
@ -0,0 +1,30 @@
|
|||
= EliteDangerous =
|
||||
|
||||
This is my personal VoiceAttack profile for Elite: Dangerous. It started out
|
||||
ages ago as a modification of [MalicVR’s public profile](FIXXME), 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 starting 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.
|
||||
|
||||
The rest is a random conglomerate of all things VA and E:D; from various voice
|
||||
commands and some buttons that are now being handled by VA to lots of EDDI event
|
||||
handlers.
|
||||
|
||||
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.)
|
||||
|
||||
This profile doesn’t have and probably never will have an exhaustive
|
||||
documentation (or basically any documentation at all). That said, the commands
|
||||
themselves have some comments that might be useful in understanding what they
|
||||
do. If one does(’t, bug me until it does.
|
||||
|
||||
Go through the thing, look at what is possible with some fiddling, then do your
|
||||
own crazy shit :D
|
0
docs/RatAttack.md
Normal file
0
docs/RatAttack.md
Normal file
0
docs/SealAttack.md
Normal file
0
docs/SealAttack.md
Normal file
112
docs/SpanshAttack.md
Normal file
112
docs/SpanshAttack.md
Normal file
|
@ -0,0 +1,112 @@
|
|||
= SpanshAttack =
|
||||
|
||||
This profile uses the FIXXME plugin to plot 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.
|
||||
|
||||
== Settings ==
|
||||
|
||||
Currently the only setting in the strict sense is the key use for pasting text
|
||||
into Elite:Dangerous. If you are using a “standard” QWERT[YZ] layout, you don’t
|
||||
have to do anything; if you are using something different, you have to set it to
|
||||
the symbol that’s on the physical button that has `V` on QWERT[YZ]. E.g. for
|
||||
AZERTY, set it to FIXXME.
|
||||
|
||||
The other “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.
|
||||
|
||||
The FIXXME plugin is technically supposed to read the current jump range from
|
||||
EDDI; sadly a) it’s [bugged](FIXXME) right now, and EDDI is storing the
|
||||
_maximum_ distance for your ship instead of the current / full on fuel one.
|
||||
|
||||
== Usage ==
|
||||
|
||||
=== 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 plotting
|
||||
will break).
|
||||
1. Trigger the `SpanshAttack.plotRoute` command either by voice (`plot neutron
|
||||
[course;route;trip]`) or calling it from another command
|
||||
1. (if ship not listed in `SpanshAttack.getShipRange`) Enter your ship’s jump
|
||||
range when 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.
|
||||
1. Either target the first waypoint or plot to it.
|
||||
1. Start jumping!
|
||||
|
||||
=== Neutron Jumping ===
|
||||
|
||||
With standard setting, 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.
|
||||
|
||||
Additionally, you can use the `SpanshAttack.getNextNeutronWaypoint`
|
||||
/ `[get;copy] next neutron [waypoint;way point]` command to copy the next
|
||||
neutron waypoint to the clipboard.
|
||||
|
||||
==== 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.
|
||||
|
||||
=== Refueling ===
|
||||
|
||||
Whenever you refuel off a scoopable star, the profile will automatically
|
||||
throttle back up to 100% speed.
|
||||
|
||||
=== 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
|
||||
`SpanshAttack.clearRoute` / `clear neutron [course;route;trip]` command.
|
||||
|
||||
== Other Commands ==
|
||||
|
||||
The profile contains a lot of helper functions that get called by the
|
||||
aforementionde commands. Have a look around, maybe learn something about
|
||||
VoiceAttack :)
|
||||
|
||||
== 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 ===
|
||||
|
||||
These are set in `SpanshAttack.startup` and can be overriden from your profile
|
||||
if you have imported SpanshAttack.
|
||||
|
||||
* Elite.pasteKey (string): the key used for pasting into Elite. On QWERTY this
|
||||
is `v`. Default: `v`.
|
||||
* 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. Default:
|
||||
“1;3;5;10;15;20;30;50;75;100”
|
||||
* SpanshAttack.autoPlot (boolean): whether to automatically plot to the next
|
||||
waypoint on supercharging. Default: true.
|
||||
* SpanshAttack.copyWaypointToClipboard (boolean): whether to copy the next
|
||||
waypoint into the Windows clipboard for use in other programs. Default: false.
|
||||
* SpanshAttack.useEddiForVoice (boolean): whether to use EDDI over VA’s builtin
|
||||
`say` command. Default: false.
|
||||
|
||||
=== 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.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
|
8303
profiles/SpanshAttack-Profile.vap
Executable file
8303
profiles/SpanshAttack-Profile.vap
Executable file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue