Giter VIP home page Giter VIP logo

voiceattack-profiles's Issues

SealAttack profile is missing

I will work on it based on the (also still missing :D #7) RatAttack profile once the seals have moved from using Discord to using IRC.

I can’t be arsed to build a profile / sanitise the stub I have for a temporary chat solution and unfinished SOP.

Make delays/pauses/key press timings configurable

Delays and pauses you need to execute between e.g. key presses to navigate the game’s UI are highly specific to your personal PC’s specs and configuration, whether you are playing pancake or VR, etc.pp. So there should probably be a way to set them globally instead of having to fiddle with every single command if they don’t fit your needs.

That’s something I’ve been too lazy to do until now, but since IMO the profiles are pretty much feature-complete by now I might as well do it, right?

video instructions

How to:

  • install the VoiceAttack plugins
  • import the profiles
  • work with an extra profile including the profiles
  • install the python script(s)

Ship build link is not shortened

EDDI gives an import link for coriolis which is … rather long.

I don’t know if I can find a sensible way to provide a short link, but I guess I’ll look into it when I find the time.

Make use of VoiceAttack’s command queues

Title. I can think of some cases that needs commands to be executed in order, but where I could move on to the rest of the running command before they are all done.

I’ll have to check all commands T.T

Play with cottle.

Use new VoiceAttack 1.8.6 command “parameter” feature

From the 1.8.6 changelog:

 -  Added, 'Passed Values' feature to, 'Execute Another Command' and 'Enqueue Command' actions.  This allows
    for you to specify (via semicolon-delimited lists) sets of values to pass to commands.  The values that
    are passed to the commands are converted to a standard set of command-scoped variables that are accessible
    only to the executed command.  Think of this as being able to have parameters for commands o_O

Have command-level command targets

Currently it’s a profile-wide setting to target Elite. A) that’s clunky, b) that’s not necessary for all commands and c) that doesn’t seem to be working properly, leading to things like “cruise” being triggered by me just typing furiously (and VA pressing lots of backspaces. Fun.).

Command-level this will hopefully both work better and be more granular.

Make use of VoiceAttack 1.8.6’s new restriction to one running command instance

From the changelog:

 -  Added advanced/experimental command option, 'Do not execute this command if it is already
    running'.  This keeps the current command from executing if another instance is already
    in progress.
    
 -  Added option, 'Do not execute this command if it is already running' to the, 'Execute Another
    Command' screen.  This will prevent a command from executing if it's currently running.

Thinking about longer-running commands with little feedback and stuff that should literally only run as a single instance, like plot neutron route.

Material name in `((EDDI Material threshold))` event is `Not set`.

Sadly there’s currently no way to work around that. It’s a limitation of how EDDI passes variables over to VoiceAttack; it can’t properly translate the material object.

That also applies to various other areas. For example I was thinking about adding an alert for FSSing bodies with icy rings. The ring composition object runs into the exact same problem.

No ETA.

Refactor EDDI `say` invocations

The other profiles are already doing that properly (because they have to check if EDDI is used or not), but there’s no real reason not to do it properly here, too. Just to make sure that the global SCRIPT variable is only fiddled with right before the plugin call.

Change RATSIGNAL passing from windows clipboard to file-based approach

So I’ve been struggling with finding a better way to pass RATSIGNALs from IRC to VoiceAttack than using the Windows clipboard for ages now. Sadly you can’t pass strings to VA via command line parameter like you can with VoiceMacro.

I should investigate if using a file is feasible:

  1. IRC client waits for $file to disappear
  2. IRC client writes RATSIGNAL string to $file
  3. IRC client invokes VA with the proper command
  4. VA reads $file, parses the signal and removes $file

RatAttack profile not triggering RatAttack.announceCaseDetails

I have the voice attack profile installed, and have the scrip in AdiIRC.

The scrip looks like this:

on :TEXT:RATSIGNAL - CMDR(??_SIGNAL):#fuelrats:{
/mkdir C:\users\Parker\appdata\roaming\RatAttack
/handleratsignal $1-
}
alias handleratsignal {
if ( $exists(C:\users\Parker\appdata\roaming\RatAttack\ratsignal.pipe) ) {
/sleep 1 /handleratsignal $1-
}
else {
/write C:\users\Parker\appdata\roaming\RatAttack\ratsignal.pipe $1-
if ( $away ) {
/run -h "C:\Program Files (x86)\VoiceAttack\VoiceAttack.exe" -nofocus -command "RatAttack.getInfoFromRatSignal"
}
else {
/run -h "C:\Program Files (x86)\VoiceAttack\VoiceAttack.exe" -nofocus -command "RatAttack.announceCaseFromRatSignal"
}
}
}

I cannot figure out why it is not triggering the commands within voiceattack. The ratsignal.pipe file gets generated perfectly, and read when voiceattack first opens, but it will not trigger the commands for some reason.

`Route details` event needs filtering for automated triggers

A Route details event with type update is triggered by EDDI automatically on handing in missions. With current logic that leads to a “no results found” TTS message.

There might be other triggers. It’s probably the best way forward to explicitly only process the types I have handling for and explicitly do nothing for everthing else.

Determine coordinates for the target system automatically if it’s not in Spansh’s data base

So if the target is not in the router’s db, you need to find the nearest system by coordinates. Wouldn’t it be great if you didn’t have to input them by hand⁈

Unfortunately the FSDTarget journal entry does not have coordinates. EDDI has Next system x through z, but pulls that data from EDSM.

As a workaround I can use that for now, at least that can handle systems that have been sent through EDDN after the neutron routers index has been built (happens daily, so lagging behind up to ~24h).

Make use of EDDI’s `jumpdetails` function

In addition to current range, jumpdetails can also tell you how many jumps you have left on your current fuel; at least that’s how I read it :)

That might be a useful tidbit to include in low fuel warnings.

Calling it might also be useful in instances where the current jump range status variable hasn’t been set for some reason (e.g. sometimes when loading into the game, before the first instance change). Needs more investigation on that, though – might be limited by the same constraints.

Give heads-up on pad lockdown timer

I’d like to have some form of heads-up on when the pad lockdown will come into effect. Long-term I’d like to have some kind of timer and/or be able to ask “how long until pad lockdown?”, short-term I guess I’ll just have announcements every couple minutes.

Update update instructions

Apparently importing a profile that already exists (now?) imports it as <name>-1 instead of overwriting commands. I’ll need to update the update instructions to reflect that:

  1. delete profiles
  2. import profiles
  3. fix includes

:-/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.