MMOMinion

Full Version: Speed Hack working?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
So I've been searching the forum and wiki for days before making a new post.

Trying to figure out a speed hack - what I've done so far:
  • Shortcut Manager LUA, Speed Hack dropdown, try different modifier keys and shortcut keys
  • My own LUA module from example - add in Player:SetSpeed() to either single button press or recurring loop
  • Looked through existing LUA modules for guidance

It doesn't seem to be working from anywhere - is Player:SetSpeed() still functional?
Under the Dev LUA module I see the movement speed values and they do not change.
When I use mmolazy/lasta I do see the movement speed values change (and speed hack works there).

Thanks for a great product - I'm having fun building with it.

-Andrew
This is an excerpt from my old addon that enabled it.
I don't know if it is still working. It only ever worked in a given direction, and never during combat.

Code:
if ( gMoveHack == "SpeedHack" and not Player.incombat and not MeshManager:IsKeyPressed(016)) then
            if ( MeshManager:IsKeyPressed(017) ) then
                if ( Player.ismounted and currentSpeed ~= 18 ) then
                    Player:SetSpeed(FFXIV.MOVEMENT.FORWARD, 18)
                    currentSpeed = 15
                elseif ( not Player.ismounted and currentSpeed ~= 12) then
                    Player:SetSpeed(FFXIV.MOVEMENT.FORWARD, 12)
                    currentSpeed = 12
                end
            else
                if ( Player.ismounted and currentSpeed ~= 9) then
                    Player:SetSpeed(FFXIV.MOVEMENT.FORWARD, 9)
                    currentSpeed = 9
                elseif ( not Player.ismounted and currentSpeed ~= 6 ) then
                    Player:SetSpeed(FFXIV.MOVEMENT.FORWARD, 6)
                    currentSpeed = 6
                end
            end
        end
Yep, seems to not be working.
Any chance you could test this out?

Feels like I must be missing something...

Code here and attached for easy install.

Thanks!

Code:
--module.def

[Module]
Name=SpeedHackTest
Version=1
Files=speedhacktest.lua
Enabled=1
Dependencies=minionlib

Code:
--speedhacktest.lua

-- Create a new table for our code:
mymodule= { }

-- Some local variables we use in our module:
mymodule.running = false
mymodule.lastticks = 0
mymodule.counter = 0
mymodule.windowName = "SpeedHackTest"

-- Initializing function
function mymodule.ModuleInit()
    
    GUI_NewWindow(mymodule.windowName,250,50,300,200);
    GUI_NewButton(mymodule.windowName,"Toggle","MYMODULE.TOGGLE");
    GUI_SizeWindow(mymodule.windowName,300,200)
    GUI_WindowVisible(mymodule.windowName,true)
    
    GUI_NewField(mymodule.windowName,"Counter","countergui","MovementInfo")
    
    -- From devmonitor.lua
    GUI_NewField(mymodule.windowName,"IsMoving","mimov","MovementInfo")
    GUI_NewField(mymodule.windowName,"Moves Forward","mimovf","MovementInfo")
    GUI_NewField(mymodule.windowName,"Moves Backward","mimovb","MovementInfo")
    GUI_NewField(mymodule.windowName,"Moves Left","mimovl","MovementInfo")
    GUI_NewField(mymodule.windowName,"Moves Right","mimovr","MovementInfo")
    
    GUI_UnFoldGroup    (mymodule.windowName,"MovementInfo")
    
end

-- The function that gets called when the button is pressed:
function mymodule.ToggleRun()
    mymodule.running = not mymodule.running
end

-- The Mainloop function, gets called all the time by FFXIVMinion:
function mymodule.OnUpdateHandler( Event, ticks )
    if ( mymodule.running and ticks - mymodule.lastticks > 500 ) then
        
        mymodule.lastticks = ticks
        
        -- continually log changing var so you see it working
        mymodule.counter = mymodule.counter + 1
        countergui = mymodule.counter
        
        -- From devmonitor.lua
        mimov = tostring(Player:IsMoving())
        mimovf = tostring(Player:IsMoving(FFXIV.MOVEMENT.FORWARD)).."   ("..tostring(Player:GetSpeed(FFXIV.MOVEMENT.FORWARD))..")"
        mimovb = tostring(Player:IsMoving(FFXIV.MOVEMENT.BACKWARD)).."   ("..tostring(Player:GetSpeed(FFXIV.MOVEMENT.BACKWARD))..")"
        mimovl = tostring(Player:IsMoving(FFXIV.MOVEMENT.LEFT)).."   ("..tostring(Player:GetSpeed(FFXIV.MOVEMENT.LEFT))..")"
        mimovr = tostring(Player:IsMoving(FFXIV.MOVEMENT.RIGHT)).."   ("..tostring(Player:GetSpeed(FFXIV.MOVEMENT.RIGHT))..")"


        -- Set player speed to 12 - THIS IS NOT WORKING
        Player:SetSpeed(FFXIV.MOVEMENT.FORWARD, 12)
        Player:SetSpeed(FFXIV.MOVEMENT.BACKWARD, 12)
        Player:SetSpeed(FFXIV.MOVEMENT.STRAFELEFT, 12)
        Player:SetSpeed(FFXIV.MOVEMENT.STRAFERIGHT, 12)
        
    end        
end

-- Registering the Events
RegisterEventHandler("Gameloop.Update",mymodule.OnUpdateHandler) -- the normal pulse from the gameloop
RegisterEventHandler("MYMODULE.TOGGLE", mymodule.ToggleRun) -- the function that gets called when our button is pressed
RegisterEventHandler("Module.Initalize",mymodule.ModuleInit) -- the initialization function, gets called only once at startup of the game
It's very possible that those functions simply weren't fixed during the last patch. They have never worked well to begin with.
Bummer, so it sounds like some functions may work and some may not - it's hit or miss each patch?
No, you're doing a little too much extrapolating there. This is one of those 1% things.
SetSpeed is just one of those functions that has seldom been used, so when the post-patch QA testing was done, nobody had a reason to look at it.

I'll forward on a ticket for the guys to look at it.
I think the client changed in the last big update. Those functions won't work anymore and they won't be fixed.
I appreciate any looking into it.

Glad I can help support such a great product.

:)