I know there is an autofire trigger button where it makes the button turbo until you turn it off but I want a key to make a button turbo only when I'm pressing it.
I need to be able to use both regular B button and turbo B when I need.
Another question, is it possible to throttle a maximum CPU usage for Visualboy? With this i7 computer it goes way too fast when I press the speedup key, I actually miss my old computer now, HAHA.
Alt + the number keys toggle autofire for each individual button. You should be able to set custom keys for those toggles using Options>Input>Customize All Commands.
No no, that makes it go Turbo regardless whether I'm pressing anything on the keyboard. I want it to turbo when and only when I press a button.
This is the only emulator I know where the Turbo control is so idiotic.
I guess you mean a maximum speed limit for VBA.
Just play normally. No one is forced to use the fast-forward key. Although, you can press the =+ key to speed up (say, to 200%) and -_ key to slow down.
You might want to be careful how you word things.
Anyway, I've used turbo/autofire and autohold for many years while doing Pokemon TASes and had no problem with it. Autohold is very useful and doesn't exist in some other emulators.
No some parts are too slow and boring. I love the speedup key I've been using it since ever been using an emulator. Speedup key rocks! Thats one of the reasons besides save states that I preferred emulator to my real nintendo. But with computers becoming too fast now its not so good to speedup when it speeds up too much especially with gameboy that don't require so much CPU.
This is too awkward for regular play, it doesnt help that it only speeds up to 112% on first press then 125 then 150 etc., if it sped up to 400% right away then it would be better.
Sorry english is not my first language though I think I speak it fluently by now. Thing is I learned my basic english first from video games and people from online games so I learned the harsh tones first I guess, ha.
Bobo the king, thanks a lot.
Oh. Right. Sorry, I forgot I promised you a Lua script.
Okay, here's what I came up with in about 30 minutes:
Download ABTurbo.lua
Language: lua
local function transferinput(thisinput)
lastinput={}
for k,v in pairs(thisinput) do
lastinput[k]=v
end
thisinput=input.get()
return thisinput, lastinput
end
local Aturbobutton='S'
local Bturbobutton='A'
local Aflag=true
local Bflag=true
local thisinput={}
while true do
thisinput, lastinput=transferinput(thisinput)
if not(lastinput[Aturbobutton]) then
Aflag=true
end
if not(lastinput[Bturbobutton]) then
Bflag=true
end
if thisinput[Aturbobutton] then
joypad.set(1, {A=Aflag})
end
if thisinput[Bturbobutton] then
joypad.set(1, {B=Bflag})
end
Aflag=not(Aflag)
Bflag=not(Bflag)
emu.frameadvance()
end
Very quick notes: You may set the turbo buttons at the lines
Language: lua
local Aturbobutton='S'
local Bturbobutton='A'
Just change those to the keys you want to assign A and B turbo to. (Don't forget to use capital letters!) I have them set to S and A by default.
There is a one frame delay between when you press the turbo button and when the Game Boy button is first pressed. I don't know where it's coming from and I don't have time to check-- I'm late for an appointment!
Tell me how it works!
I don't know-- I'm not all that knowledgeable concerning emulator history. 2006 sounds pretty old, though, and I think you'll need a new version.
Download a new version of VBA (it should be one with RR-- rerecording) and then go to "Tools/Lua Scripting/New Lua Script Window..." then select "Browse...", load the script, and finally click "Run". If you haven't modified the script, press the A and/or S keys to verify that autofire is working.
The script does not work. I am using VBA-rr-svn330.exe.
If I run the script without a game being open it crashes and if I run it while having a game open then nothing appears on the display inpuit.
I just tested my script again in VBA 23.6 svn480 and it worked fine. I'm not sure where you found svn330. You can download the latest version here.
Another possibility is that you simply have input display turned off. Press the comma key to turn it on.
I got it to work even on the svn330 I didn't know the lua window had to stay open. I closed it last time. I feel so dumb now. I'll be using the latest version now, the 330 I had since forever to play the latest movies released because they desync on the 2006 visualboy. Now you all use that bizhawk which doesn't work on my computer period so I get the MKV movies instead. :)
Thanks for helping me out Bobo the King.
Hello all, I have a question of lua:
Bobo the King's code is good but it ignores other buttons when the turbo button is being pressed.
I'm trying to write a lua script but it doesn't work. Here's my code:
Language: lua
print("Turbo, B: H; R: U; Y: A")
local PressDownA = false
local PressDownB = false
local PressDownR = false
gui.register(function()
local KeyPress = input.get()
if KeyPress["H"] or KeyPress["U"] or KeyPress["Y"] then
local Buttons = joypad.get(0)
if not emu.lagged() then
if KeyPress["H"] then
Buttons["B"] = PressDownB
PressDownB = not PressDownB
end
if KeyPress["U"] then
Buttons["R"] = PressDownR
PressDownR = not PressDownR
end
if KeyPress["Y"] then
Buttons["A"] = PressDownA
PressDownA = not PressDownA
end
else
if KeyPress["H"] then
Buttons["B"] = PressDownB
end
if KeyPress["U"] then
Buttons["R"] = PressDownR
end
if KeyPress["Y"] then
Buttons["A"] = PressDownA
end
end
print(Buttons)
joypad.set(0, Buttons)
else
PressDownA = false
PressDownB = false
PressDownR = false
end
end)
I'm a programmer but this is my first time writing lua. I write some logs and it seems everything goes fine.
Emu used: v23.6 SVN480
Thanks