Forums » Community Projects
Slick, Demonen ;)
Hmm, now I'm thinking you could combine a couple of different Zoom Bind sets with a bit of extra glue code and trigger keys and get some presets for "BSG Camera Guy" effects. Might be interesting for people who are filming events or trying for a more "cinematic" video style. Maybe I'll throw something together later on...
Throttle Assist (Toggle) - For those who don't want to toggle Flight Assist
alias Throttle_Assist_Forward "Accel +1000; set flymodeflag 0; echo 'Forward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Backward"
alias Throttle_Assist_Backward "Accel -1000; echo 'Backward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Forward"
alias Throttle_Assist_Neutral "Accel +0; set flymodeflag 1; echo 'Neutral Throttle Assist enabled'"
alias Throttle_Assist_Toggle "Throttle_Assist_Forward"
bind "0" Throttle_Assist_Toggle
bind "1" Throttle_Assist_Neutral
===========================================================================
Throttle Assist Advanced (Toggle) - Full blown version
alias Throttle_Assist_Forward "Accel +1000; set flymodeflag 0; echo 'Forward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Backward"
alias Throttle_Assist_Backward "Accel -1000; echo 'Backward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Forward"
alias Throttle_Assist_Neutral "Accel +0; set flymodeflag 1; echo 'Neutral Throttle Assist enabled'; alias TA_Toggle2 Throttle_Assist_Activated"
alias Throttle_Assist_Activated "flymodetoggle; Throttle_Assist_Forward; alias TA_Toggle2 Throttle_Assist_Neutral"
alias TA_Toggle2 "Throttle_Assist_Activated"
alias Throttle_Assist_Toggle "Throttle_Assist_Forward"
bind "0" Throttle_Assist_Toggle
bind "1" TA_Toggle2
I bound these to numbers so I can use the mouse, my strafe keys (the arrow keys) and throttle assist at relatively the same time. It's just basically to have the benfits of Flight Assist with the usefulness of the slide of Physics and the fact that one can go backwards. Also useful for those who are used to key setups that are crappy but changing them would be worse.
EDIT: Working on a toggle version. Done.
EDIT2: Incorporating Neutral into the Toggle. Done, a la Throttle Assist Advanced.
EDIT3: Made the Toggle bull**** stop by using the flag. So Throttle assist on always is FA off and Throttle assist off is always FA on. If you don't want this, just set the "set flymodeflag 1" in Throttle_Assist_Neutral to "set flymodeflag 0".
Oh, on Throttle_Assist_Backward, I removed this: set flymodeflag 0; . You are welcome to add it in but it just adds to the spam. It's only useful for... uh... in case you're really sloppy and hit your FA key alot by accident or instinct.
alias Throttle_Assist_Forward "Accel +1000; set flymodeflag 0; echo 'Forward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Backward"
alias Throttle_Assist_Backward "Accel -1000; echo 'Backward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Forward"
alias Throttle_Assist_Neutral "Accel +0; set flymodeflag 1; echo 'Neutral Throttle Assist enabled'"
alias Throttle_Assist_Toggle "Throttle_Assist_Forward"
bind "0" Throttle_Assist_Toggle
bind "1" Throttle_Assist_Neutral
===========================================================================
Throttle Assist Advanced (Toggle) - Full blown version
alias Throttle_Assist_Forward "Accel +1000; set flymodeflag 0; echo 'Forward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Backward"
alias Throttle_Assist_Backward "Accel -1000; echo 'Backward Throttle Assist enabled'; alias Throttle_Assist_Toggle Throttle_Assist_Forward"
alias Throttle_Assist_Neutral "Accel +0; set flymodeflag 1; echo 'Neutral Throttle Assist enabled'; alias TA_Toggle2 Throttle_Assist_Activated"
alias Throttle_Assist_Activated "flymodetoggle; Throttle_Assist_Forward; alias TA_Toggle2 Throttle_Assist_Neutral"
alias TA_Toggle2 "Throttle_Assist_Activated"
alias Throttle_Assist_Toggle "Throttle_Assist_Forward"
bind "0" Throttle_Assist_Toggle
bind "1" TA_Toggle2
I bound these to numbers so I can use the mouse, my strafe keys (the arrow keys) and throttle assist at relatively the same time. It's just basically to have the benfits of Flight Assist with the usefulness of the slide of Physics and the fact that one can go backwards. Also useful for those who are used to key setups that are crappy but changing them would be worse.
EDIT: Working on a toggle version. Done.
EDIT2: Incorporating Neutral into the Toggle. Done, a la Throttle Assist Advanced.
EDIT3: Made the Toggle bull**** stop by using the flag. So Throttle assist on always is FA off and Throttle assist off is always FA on. If you don't want this, just set the "set flymodeflag 1" in Throttle_Assist_Neutral to "set flymodeflag 0".
Oh, on Throttle_Assist_Backward, I removed this: set flymodeflag 0; . You are welcome to add it in but it just adds to the spam. It's only useful for... uh... in case you're really sloppy and hit your FA key alot by accident or instinct.
Moldyman, I think something similar had already mentioned in this thread/vo wiki
Personally I sticked with this version:
## ******** Combat Flight Assist
alias stop "Accel 0; alias faster speed1; alias slower speeda"
alias speedc "Accel -1000; alias faster speedb; alias slower ' '"
alias speedb "Accel -500; alias faster speeda; alias slower speedc"
alias speeda "Accel -250; alias faster speed0; alias slower speedb"
alias speed0 "Accel 0; alias faster speed1; alias slower speeda"
alias speed1 "Accel 250; alias faster speed2; alias slower speed0"
alias speed2 "Accel 500; alias faster speed3; alias slower speed1"
alias speed3 "Accel 1000; alias faster ' '; alias slower speed2"
stop
bind MWHEELUP faster
bind MWHEELDOWN slower
alias +Accel "speed0; +Accelerate"
alias -Accel "+Accelerate 0"
alias +Decel "speed0; +Decelerate"
alias -Decel "+Decelerate 0"
bind "r" +Accel
bind "f" +Decel
And, of course...
## ******** Activate bind
alias qreset "qaimon; qscanoff; stop; qttogoff; nododge"
alias acti "Activate; qreset"
bind Ctrl acti
Personally I sticked with this version:
## ******** Combat Flight Assist
alias stop "Accel 0; alias faster speed1; alias slower speeda"
alias speedc "Accel -1000; alias faster speedb; alias slower ' '"
alias speedb "Accel -500; alias faster speeda; alias slower speedc"
alias speeda "Accel -250; alias faster speed0; alias slower speedb"
alias speed0 "Accel 0; alias faster speed1; alias slower speeda"
alias speed1 "Accel 250; alias faster speed2; alias slower speed0"
alias speed2 "Accel 500; alias faster speed3; alias slower speed1"
alias speed3 "Accel 1000; alias faster ' '; alias slower speed2"
stop
bind MWHEELUP faster
bind MWHEELDOWN slower
alias +Accel "speed0; +Accelerate"
alias -Accel "+Accelerate 0"
alias +Decel "speed0; +Decelerate"
alias -Decel "+Decelerate 0"
bind "r" +Accel
bind "f" +Decel
And, of course...
## ******** Activate bind
alias qreset "qaimon; qscanoff; stop; qttogoff; nododge"
alias acti "Activate; qreset"
bind Ctrl acti
Oh, and I removed the echo commands from speedX aliases, because I totally couldn't read the chat. But that is not so bad without echoing actually
Alright, being a really lazy, slow, and kinda stupid person, I went way over the time I originally expected this to take me. It's starting to be a bit of a pain, so I'm gonna go ahead and dump it here in its unfinished state, so I can take my mind off of it and focus of stuff like homework.
What "it" is is a system for collecting, sorting and filtering trade data with minimal effort. That is, that's what it was going to be originally, but honestly, the BLAK trade computer (called so because I am in BLAK, and technically speaking, it's a trade computer, I guess) is a lot less useful than I just made it sound. Thankfully, with the exception of a few variable names, I like to think that what I wrote is self-explanatory enough that people will have no trouble expanding and whatnot. Either way, here are the files, of which there are two, because I was trying to avoid clutter. It didn't work.
BLAKtradecomp.txt (right-click-save)
BLAKui.txt
Once you do a /lua dofile("BLAKtradecomp.txt") the BLAK trade computer (BTC) will load into a new table it makes in the Game table of the global table, and sits there, waiting for you to do something, like typing "/lua Game.BTC.display()" into the console. Mind you, you shouldn't do that in a hud, because the damn thing will pop up underneath and annoy you into having to type "/lua Game.BTC.ui.dlg:hide()"
Once you do manage to display the BTC somewhere where you can actually interact with it, you'll notice that it's pretty self explanatory, even if it does have a few quirks. Perhaps the least obvious button is the one that says "reconcile with base data." What this does is update the filtered table of data to reflect the unfiltered table of data. The update button, which only works in a station, is the button that updates the base data table with whatever information it can scrounge up. So, in order to get anything to display in the lists up above, you'd need to find a station, hit the "update" button, and then hit the "reconcile with base data" button.
Another quirky bit, if you notice that when selecting a station, or a cargo, or something, the things that have information about the selected thing seem to be empty, you might have to close the BTC window and open it up again. I know, it's a pain, but what are you gonna do? Assign sizes to the labels in the first place? HAH!
I'm gonna assume that the rest of the ui is fairly obvious, but ask me if you need help. My current alts are Red Team Cat or something like that, Baron Koob, [syn]n00b, Eve Walter and Korshun.
Now then, on to the more obscure and probably less useful aspects, which don't happen to have a ui thinger. Specifically, the data saving and loading system. See, the lua tables BTC creates don't stay alive in between launches of the game, so people might desire some system to save these datas. The command that does just that is Game.BTC.makedatas(). Thing is, it does it in a very strange way: it prints the entire contents of the unfiltered data table into your errors.log, so that you can then copy and paste it to a text editor and save it. To load the data, you just go /lua dofila("the name of your beautiful whassit goes here") and then invoke the "Game.BTC.loadfromdatas()" command. That command also has the cool feature of keeping the most recent buy or sell price, so you know that you can more or less count on the data you get to be the most recent you have. Mind you, I didn't really test this aspect of it, but I assume it works, because I'm a genius.
Here's a 300KB data file for you to practice or something:
somedata.txt
That file contains a stunning eight stations in it. WOW.
As you can see, compressing the data is something someone might have a fun time looking into sometime in the future.
And lastly, I'd like to introduce my most proud achivement: a method for making informed decisions. Just download this file, load it up into vendetta and type in /lua Game.eightball.answer("Your question goes here")
It's pure genius.
PS: I haven't mentioned it anywhere, but all lua commands have to go into the console (`/~) and won't work from chat fields. In order for the dofile commands to work the files have to be in the game directory, which might be the game package or whatever on a mac and some other crap on a PC. Also, if there aren't any stations in the station list, but there is cargo in the cargo list, don't click the cargo. The game will get confused and throw up an error window, and that's just annoying.
What "it" is is a system for collecting, sorting and filtering trade data with minimal effort. That is, that's what it was going to be originally, but honestly, the BLAK trade computer (called so because I am in BLAK, and technically speaking, it's a trade computer, I guess) is a lot less useful than I just made it sound. Thankfully, with the exception of a few variable names, I like to think that what I wrote is self-explanatory enough that people will have no trouble expanding and whatnot. Either way, here are the files, of which there are two, because I was trying to avoid clutter. It didn't work.
BLAKtradecomp.txt (right-click-save)
BLAKui.txt
Once you do a /lua dofile("BLAKtradecomp.txt") the BLAK trade computer (BTC) will load into a new table it makes in the Game table of the global table, and sits there, waiting for you to do something, like typing "/lua Game.BTC.display()" into the console. Mind you, you shouldn't do that in a hud, because the damn thing will pop up underneath and annoy you into having to type "/lua Game.BTC.ui.dlg:hide()"
Once you do manage to display the BTC somewhere where you can actually interact with it, you'll notice that it's pretty self explanatory, even if it does have a few quirks. Perhaps the least obvious button is the one that says "reconcile with base data." What this does is update the filtered table of data to reflect the unfiltered table of data. The update button, which only works in a station, is the button that updates the base data table with whatever information it can scrounge up. So, in order to get anything to display in the lists up above, you'd need to find a station, hit the "update" button, and then hit the "reconcile with base data" button.
Another quirky bit, if you notice that when selecting a station, or a cargo, or something, the things that have information about the selected thing seem to be empty, you might have to close the BTC window and open it up again. I know, it's a pain, but what are you gonna do? Assign sizes to the labels in the first place? HAH!
I'm gonna assume that the rest of the ui is fairly obvious, but ask me if you need help. My current alts are Red Team Cat or something like that, Baron Koob, [syn]n00b, Eve Walter and Korshun.
Now then, on to the more obscure and probably less useful aspects, which don't happen to have a ui thinger. Specifically, the data saving and loading system. See, the lua tables BTC creates don't stay alive in between launches of the game, so people might desire some system to save these datas. The command that does just that is Game.BTC.makedatas(). Thing is, it does it in a very strange way: it prints the entire contents of the unfiltered data table into your errors.log, so that you can then copy and paste it to a text editor and save it. To load the data, you just go /lua dofila("the name of your beautiful whassit goes here") and then invoke the "Game.BTC.loadfromdatas()" command. That command also has the cool feature of keeping the most recent buy or sell price, so you know that you can more or less count on the data you get to be the most recent you have. Mind you, I didn't really test this aspect of it, but I assume it works, because I'm a genius.
Here's a 300KB data file for you to practice or something:
somedata.txt
That file contains a stunning eight stations in it. WOW.
As you can see, compressing the data is something someone might have a fun time looking into sometime in the future.
And lastly, I'd like to introduce my most proud achivement: a method for making informed decisions. Just download this file, load it up into vendetta and type in /lua Game.eightball.answer("Your question goes here")
It's pure genius.
PS: I haven't mentioned it anywhere, but all lua commands have to go into the console (`/~) and won't work from chat fields. In order for the dofile commands to work the files have to be in the game directory, which might be the game package or whatever on a mac and some other crap on a PC. Also, if there aren't any stations in the station list, but there is cargo in the cargo list, don't click the cargo. The game will get confused and throw up an error window, and that's just annoying.
lots of key binds...nice
IF someone had taken the time to explain to newbies exactly HOW to use them ...LOL
ie: where to put them etc
IF someone had taken the time to explain to newbies exactly HOW to use them ...LOL
ie: where to put them etc
AJ, read from page 1. It explains how to do binds. As for what to use, it is up to you which are a priority for you. One suggestion I give everyone and the ONLY aliased bind I use is the variable zoom. There are a couple of choices but I use Eldrad's and it works fine for me.
Does anybody know if it's possible to make the flight assist function like the turbo does by default. Where holding the button down enables FA and releasing it turns it off?
alias +fat 'flymodeflag 1'
alias -fat 'flymodeflag 0'
bind YOURFAVORITEBUTTONHERE +fat
alias -fat 'flymodeflag 0'
bind YOURFAVORITEBUTTONHERE +fat
thanks genka
Big big thanks for posting this BTC stuff, genka! I hope devs will not kill you for showing all that semi-secret Lua stuff :)
Any binds in my wgaf.cfg file are useless, and the diamond-dodge bind makes me asploed. I have to enter ALL of my binds in *vomit* chat. Oh well. Help welcome!
create a new file copy your wgaf.cfg file and make a new one wgaf2.cfg with the binds in it and just load it when you play
Much thanks to Roda for writing the original which i built upon
radarscan toggle (for prospecting missions)
bind "y" rc
alias rcstop "alias radarcycle ' ';bind 'y' rc"
alias rc "alias radarcycle 'radarprev; wait 0.005 radarcycle';bind 'y' rcstop; radarcycle"
alias radarcycle " "
radarscan toggle (for prospecting missions)
bind "y" rc
alias rcstop "alias radarcycle ' ';bind 'y' rc"
alias rc "alias radarcycle 'radarprev; wait 0.005 radarcycle';bind 'y' rcstop; radarcycle"
alias radarcycle " "
ok i've seen all the combat assists and var zoom. my question is since i have a mwheel that clicks as it rolls is there a way to make it ramp up on the throttle? in all ive seen and tried it goes full either way unless clicked again then it stops or doesn't stop either way till reaches the extremes. and yes i admit my complete and total ignorance concerning binds. from what i've seen. if it can be used to do var zoom why not a accel deccel but in stages
Anyone know to just what degree the wait command works at? Would wait 0.01 work maybe?
Edit: I see, thanks. Do you suppose network latency could throw it off at those kinds of intervals?
Edit: I see, thanks. Do you suppose network latency could throw it off at those kinds of intervals?
The wait command has (in theory) a resolution of 0.01 seconds, so yes, that would work.
Here's my attempt at a "Controlled Burn" bind. Theoretically it will boost in intervals such that your ship will never lose energy, so any ship can have infiniboost. To configure the settings to your ship, type "/TurboXX" where XX is the rate of the ship' turbo drain, and "/PCYY" where YY is the rate at which the ship's equipped power cell recharges. Bind any key for CntrldBrnToggle and you're set! It might also be wise to bind keys for different settings.
Once I think up a suitable syntax, I'll add in a library of every ship variation and power cell, so that you can just type in like "/setVultureMkIII" then "/setFastCharge" and have the correct settings.
alias Turbo46 "alias CntrldBrn3 'wait 0.46 Engage'; echo 'Turbo drain set at a rate of 46/sec."
alias Turbo50 "alias CntrldBrn3 'wait 0.50 Engage'; echo 'Turbo drain set at a rate of 50/sec."
alias Turbo54 "alias CntrldBrn3 'wait 0.54 Engage'; echo 'Turbo drain set at a rate of 54/sec."
alias Turbo55 "alias CntrldBrn3 'wait 0.55 Engage'; echo 'Turbo drain set at a rate of 55/sec."
alias Turbo57 "alias CntrldBrn3 'wait 0.57 Engage'; echo 'Turbo drain set at a rate of 57/sec."
alias Turbo60 "alias CntrldBrn3 'wait 0.60 Engage'; echo 'Turbo drain set at a rate of 60/sec."
alias PC38 "alias CntrldBrn2 'wait 0.38 CntrldBrn4'; echo 'Power Cell set at a charge of 38/sec."
alias PC40 "alias CntrldBrn2 'wait 0.40 CntrldBrn4'; echo 'Power Cell set at a charge of 40/sec."
alias PC45 "alias CntlrdBrn2 'wait 0.45 CntrldBrn4'; echo 'Power Cell set at a charge of 45/sec."
alias PC50 "alias CntrldBrn2 'wait 0.50 CntrldBrn4'; echo 'Power Cell set at a charge of 50/sec."
alias Initiate "echo 'Controlled Burn Engaged'; alias Brkr2 ' '; alias Engage 'CntrldBrn1; CntrldBrn2; CntrldBrn3; Brkr2'; Engage"
alias Disengage "echo 'Controlled Burn Disengaged'; alias Engage ' '; CntrldBrn4;"
alias CntrldBrn1 "+turbo"
alias CntrldBrn4 "+turbo 0"
alias CntrldBrnToggle "CntrldBrnToggle1"
alias CntrldBrnToggle1 "alias CntrldBrnToggle 'CntrldBrnToggle2'; Initiate"
alias CntrldBrnToggle2 "alias CntrldBrnToggle 'CntrldBrnToggle1'; Disengage"
alias CntrldBrn2 "echo 'ERROR: Power Cell not specified'; Brkr1"
alias CntrldBrn3 "echo 'ERROR: Turbo drain not specified'; Brkr1"
alias Brkr1 "alias Brkr2 'CntrldBrnToggle'"
Once I think up a suitable syntax, I'll add in a library of every ship variation and power cell, so that you can just type in like "/setVultureMkIII" then "/setFastCharge" and have the correct settings.
alias Turbo46 "alias CntrldBrn3 'wait 0.46 Engage'; echo 'Turbo drain set at a rate of 46/sec."
alias Turbo50 "alias CntrldBrn3 'wait 0.50 Engage'; echo 'Turbo drain set at a rate of 50/sec."
alias Turbo54 "alias CntrldBrn3 'wait 0.54 Engage'; echo 'Turbo drain set at a rate of 54/sec."
alias Turbo55 "alias CntrldBrn3 'wait 0.55 Engage'; echo 'Turbo drain set at a rate of 55/sec."
alias Turbo57 "alias CntrldBrn3 'wait 0.57 Engage'; echo 'Turbo drain set at a rate of 57/sec."
alias Turbo60 "alias CntrldBrn3 'wait 0.60 Engage'; echo 'Turbo drain set at a rate of 60/sec."
alias PC38 "alias CntrldBrn2 'wait 0.38 CntrldBrn4'; echo 'Power Cell set at a charge of 38/sec."
alias PC40 "alias CntrldBrn2 'wait 0.40 CntrldBrn4'; echo 'Power Cell set at a charge of 40/sec."
alias PC45 "alias CntlrdBrn2 'wait 0.45 CntrldBrn4'; echo 'Power Cell set at a charge of 45/sec."
alias PC50 "alias CntrldBrn2 'wait 0.50 CntrldBrn4'; echo 'Power Cell set at a charge of 50/sec."
alias Initiate "echo 'Controlled Burn Engaged'; alias Brkr2 ' '; alias Engage 'CntrldBrn1; CntrldBrn2; CntrldBrn3; Brkr2'; Engage"
alias Disengage "echo 'Controlled Burn Disengaged'; alias Engage ' '; CntrldBrn4;"
alias CntrldBrn1 "+turbo"
alias CntrldBrn4 "+turbo 0"
alias CntrldBrnToggle "CntrldBrnToggle1"
alias CntrldBrnToggle1 "alias CntrldBrnToggle 'CntrldBrnToggle2'; Initiate"
alias CntrldBrnToggle2 "alias CntrldBrnToggle 'CntrldBrnToggle1'; Disengage"
alias CntrldBrn2 "echo 'ERROR: Power Cell not specified'; Brkr1"
alias CntrldBrn3 "echo 'ERROR: Turbo drain not specified'; Brkr1"
alias Brkr1 "alias Brkr2 'CntrldBrnToggle'"
AeAel: Sorry for the late reply, but I wanted to finish something else I was working on, and maybe post it, but that sorta got less interesting. So, basically, I left you waiting for no reason.
Anyway, I think what you want is actually a bit simpler than most of the other throttle assist binds around, since you're using flight assist:
stopsillythrottle "+accelerate 0; +decelerate 0"
sillythrottleup "+accelerate; wait 0.1 stopsillythrottle"
sillythrottledown "+decelerate; wait 0.1 stopsillythrottle"
Thus, sillythrottleup will increase your throttle for a tenth of a second, and then stop doing so. Similarly, sillythrottledown will decrease your throttle for a tenth of a second and then stop doing that too.
With a bit of binding the two commands to the mouse wheel, and fiddling with the delays, you should be set for all sorts of thrusting back and forth.
PS: Hopefully, I'll edit this post to include something a bit more worthwhile in a few weeks.
Edit: I lied, I'm making a new post.
Anyway, I think what you want is actually a bit simpler than most of the other throttle assist binds around, since you're using flight assist:
stopsillythrottle "+accelerate 0; +decelerate 0"
sillythrottleup "+accelerate; wait 0.1 stopsillythrottle"
sillythrottledown "+decelerate; wait 0.1 stopsillythrottle"
Thus, sillythrottleup will increase your throttle for a tenth of a second, and then stop doing so. Similarly, sillythrottledown will decrease your throttle for a tenth of a second and then stop doing that too.
With a bit of binding the two commands to the mouse wheel, and fiddling with the delays, you should be set for all sorts of thrusting back and forth.
PS: Hopefully, I'll edit this post to include something a bit more worthwhile in a few weeks.
Edit: I lied, I'm making a new post.