Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Upload your cheat tables here (No requests)
lickmylemons
What is cheating?
What is cheating?
Posts: 2
Joined: Mon May 25, 2020 5:30 am
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by lickmylemons »

Launching from Epic games



After injecting then opening the CT I get this message when opening the cheat table

"Error: >> 'aob_in_APlayerController_PostInitializeComponents' not found. << "

The error is for the script it tries to run when it starts up the lua thing not sure how to fix it but its making it..not possible to use anything in the console



Anyone know how to fix?



3 Comments

[IMG]https://static.xx.fbcdn.net/rsrc.php/v3/yz/r/gGPRzHuW8qT.png[/IMG]Like

Comment

[IMG]https://static.xx.fbcdn.net/rsrc.php/v3/yP/r/EyGUmEdOqjv.png[/IMG]

Share

How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

[QUOTE="lickmylemons, post: 136801, member: 42001"]

...

[/QUOTE]



There is no difference between Steam and EGS versions. The only problem you have on EGS is there are [color=red]2[/color] [b]Borderlands.exe[/b] processes. The script doesn't know by default which one to pick. Based on the order of creation, it should pick the last one. I have a feeling that's your problem.



So.. Close the game. Start the game, get into the game world (click CONTINUE at main menu). Once you are in the game world and ready to play, hit Esc to pause the game and Alt-tab out. Open CE. Open the process list and manually pick the [i]last[/i] Borderlands3.exe. Then open the table (from the interface, not by double-clicking it) and click the 'Yes' button in the "Execute this Lua script?" window. The below gif is based on the Steam one, but aside from picking the last Borderlands3.exe, everything else still applies; you get the idea:



[MEDIA=imgur]1AD9lcL[/MEDIA]



Simple. And this shows how much you know how to use CE..



BR,

Sun
Last edited by SunBeam on Mon May 25, 2020 6:12 pm, edited 5 times in total.

lickmylemons
What is cheating?
What is cheating?
Posts: 2
Joined: Mon May 25, 2020 5:30 am
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by lickmylemons »

Maybe I am blind or something but I went through this process like 15 different times staring at the video I'm not sure why it's not working, Also no I don't really use cheat engine anymore I used to use it a long time ago but not anymore but that's not the point ¯\_(ツ)_/¯





[MEDIA=imgur]a/Aglvt1v[/MEDIA]

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

[QUOTE="lickmylemons, post: 136919, member: 42001"]

...

[/QUOTE]



Can you also please check the text in red in post #1? Do confirm you start Cheat Engine as Administrator (or have UAC disabled). Cuz, honestly, I have EGS version installed and it's working fine for me. We run the same game, same executable, you get an error, I don't. The middle-man is the scanner that should find the array of bytes. That error says the spot the script is searching for by pattern doesn't exist in your executable. Can you try selecting either of the 2 Borderlands3.exe processes and see if it works? I am not 100% sure the 2nd process is always the right one. Actually.. when you open the process list, click 'Windows' and select the game window instead. That should make sure you're in the right process.



Other than that, the only other way I can provide any assistance would be me getting involved; and I can only do that via a remote session, TeamViewer. If you're not comfortable with that, then please say it; hell, say you even found an alternative and I can walk away from this issue. Not saying anything at all, however, will add more to my cup of "ignore these people from now on, they don't deserve being helped". I will refer this post in the future to anyone who tells me I am not willing to or don't help.
Last edited by SunBeam on Sat May 30, 2020 7:24 am, edited 2 times in total.

Revised
What is cheating?
What is cheating?
Posts: 1
Joined: Sat May 30, 2020 10:58 am
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by Revised »

[QUOTE="SunBeam, post: 136921, member: 12587"]

Can you also please check the text in red in post #1? Do confirm you start Cheat Engine as Administrator (or have UAC disabled). Cuz, honestly, I have EGS version installed and it's working fine for me. We run the same game, same executable, you get an error, I don't. The middle-man is the scanner that should find the array of bytes. That error says the spot the script is searching for by pattern doesn't exist in your executable. Can you try selecting either of the 2 Borderlands3.exe processes and see if it works? I am not 100% sure the 2nd process is always the right one. Actually.. when you open the process list, click 'Windows' and select the game window instead. That should make sure you're in the right process.



Other than that, the only other way I can provide any assistance would be me getting involved; and I can only do that via a remote session, TeamViewer. If you're not comfortable with that, then please say it; hell, say you even found an alternative and I can walk away from this issue. Not saying anything at all, however, will add more to my cup of "ignore these people from now on, they don't deserve being helped". I will refer this post in the future to anyone who tells me I am not willing to or don't help.

[/QUOTE]





I Cannot get it to work either, It says injected Successfully, I Go in game Open the CT, It says Terminate Tab Console i press Yes, And then Switch it to Tilde. And No matter what I try It will not work. I have tried selecting the other Process and Even the Application window to no avail. Any Assistance would help

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

[QUOTE="Revised, post: 137554, member: 42316"]

It says Terminate Tab Console i press Yes, And then Switch it to Tilde.

[/QUOTE]



That means THE TABLE works :|



Please check again post #1. In Update #7 you'll find the link to the updated console dumper. That's your problem, why nothing happens when you press the console key.



I've updated main post with proper download links so you don't have to guess which one to pick from the bottom of the post.



BR,

Sun

[automerge]1590951729[/automerge]

[QUOTE="ShyTwig16, post: 132749, member: 91"]

So I found recoil and spread, but I'm having trouble with sway.

[/QUOTE]



Then you will find this script utmost useful:



[code]

{$STRICT}



{$lua}



if syntaxcheck then return end



[ENABLE]



-- get active weapon first (can use "Function OakGame.OakCharacter.GetActiveWeapon" as well)

t = staticFindObjectEx( "Function", "OakGame.OakCharacter", "GetWeapon" )

if t < 1 then stopExec( "'GetWeapon' Function not found." ) end

t = readQword( t + 0xB0 )

if readBytes( t, 0x1 ) == 0xE9 then -- cuz of Denuvo function relocations

t = t + readInteger( t + 0x1, true ) + 0x5

end

t = t + 0x73 -- get to CALL

execGetWeapon = t + readInteger( t + 0x1, true ) + 0x5 -- now we have execGetWeapon

local PlayerCharacter = readQword( getAddressSafe( "PlayerCharacter" ) )

local Weapon = executeCodeEx( 0, nil, execGetWeapon, PlayerCharacter, 0 )

if Weapon ~= 0x0 then

--print( string.format( "Weapon: %X", Weapon ) )



-- get Sway, Recoil, FireProjectile Component Classes

WeaponRecoilComponent_Class = staticFindObjectEx( "Class", "GbxWeapon.WeaponRecoilComponent" )

if t < 1 then stopExec( "'WeaponRecoilComponent' Class not found." ) end

--print( string.format( "WeaponRecoilComponent Class: %X", WeaponRecoilComponent_Class ) )

WeaponSwayComponent_Class = staticFindObjectEx( "Class", "OakGame.WeaponSwayComponent" )

if t < 1 then stopExec( "'WeaponSwayComponent' Class not found." ) end

--print( string.format( "WeaponSwayComponent Class: %X", WeaponSwayComponent_Class ) )

WeaponHeatComponent_Class = staticFindObjectEx( "Class", "GbxWeapon.WeaponHeatComponent" )

if t < 1 then stopExec( "'WeaponHeatComponent' Class not found." ) end

--print( string.format( "WeaponHeatComponent Class: %X", WeaponHeatComponent_Class ) )

WeaponChargeComponent_Class = staticFindObjectEx( "Class", "GbxWeapon.WeaponChargeComponent" )

if t < 1 then stopExec( "'WeaponChargeComponent' Class not found." ) end

--print( string.format( "WeaponChargeComponent Class: %X", WeaponChargeComponent_Class ) )

WeaponFireProjectileComponent_Class = staticFindObjectEx( "Class", "GbxWeapon.WeaponFireProjectileComponent" )

if t < 1 then stopExec( "'WeaponFireProjectileComponent' Class not found." ) end

--print( string.format( "WeaponFireProjectileComponent Class: %X", WeaponFireProjectileComponent_Class ) )



-- we'll use "Function GbxWeapon.Weapon.GetUseModeComponentByClass"

t = staticFindObjectEx( "Function", "GbxWeapon.Weapon", "GetUseModeComponentByClass" )

if t < 1 then stopExec( "'GetUseModeComponentByClass' Function not found." ) end

t = readQword( t + 0xB0 )

if readBytes( t, 0x1 ) == 0xE9 then -- cuz of Denuvo function relocations

t = t + readInteger( t + 0x1, true ) + 0x5

end

t = t + 0xAF

local u = readInteger( t + 0x2 )

local Weapon_mf = readQword( Weapon )

local execGetUseModeComponentByClass = readQword( Weapon_mf + u )



-- get the current weapon's 3 components above by their Classes

-- how many max. modes are there, 3?

for i = 0, 2 do

-- RECOIL

WeaponRecoilComponent = executeCodeEx( 0, nil, execGetUseModeComponentByClass, Weapon, WeaponRecoilComponent_Class, i )

-- disable recoil for all weapon modes by 0-ing out the # of Samples (array size = 0)

if WeaponRecoilComponent ~= 0x0 then

RecoilPatternData = readQword( WeaponRecoilComponent + 0x1A0 )

--print( string.format( "RecoilPatternData_Mode0%X: %X", i, RecoilPatternData ) )

Samples = readQword( RecoilPatternData + 0x30 )

--print( string.format( "Samples_Mode0%X: %X", i, Samples ) )

NumSamples = RecoilPatternData + 0x38

--print( string.format( "NumSamples_Mode0%X: %X", i, readInteger( NumSamples ) ) )

writeInteger( NumSamples, 0 )

end

--print( string.format( "WeaponRecoilComponent_Mode0%X: %X", i, WeaponRecoilComponent ) )

-- SWAY

-- disable sway for all weapon modes by 0-ing out the # of Samples (array size = 0)

WeaponSwayComponent = executeCodeEx( 0, nil, execGetUseModeComponentByClass, Weapon, WeaponSwayComponent_Class, i )

if WeaponSwayComponent ~= 0x0 then

SwayPatternData = readQword( WeaponSwayComponent + 0x188 )

--print( string.format( "SwayPatternData_Mode0%X: %X", i, SwayPatternData ) )

Samples = readQword( SwayPatternData + 0x30 )

--print( string.format( "Samples_Mode0%X: %X", i, Samples ) )

NumSamples = SwayPatternData + 0x38

--print( string.format( "NumSamples_Mode0%X: %X", i, readInteger( NumSamples ) ) )

writeInteger( NumSamples, 0 )

end

--print( string.format( "WeaponSwayComponent_Mode0%X: %X", i, WeaponSwayComponent ) )

-- HEAT

-- kill overheating on firing (weapon still overheats, but you can fire it while overheated; won't reload)

WeaponHeatComponent = executeCodeEx( 0, nil, execGetUseModeComponentByClass, Weapon, WeaponHeatComponent_Class, i )

if WeaponHeatComponent ~= 0x0 then

bCanOverheat = WeaponHeatComponent + 0x1B9

t = readBytes( bCanOverheat )

t = t & 0xF7 -- false = and(not(true_val))

writeBytes( bCanOverheat, t )

end

-- CHARGE

WeaponChargeComponent = executeCodeEx( 0, nil, execGetUseModeComponentByClass, Weapon, WeaponChargeComponent_Class, i )

if WeaponChargeComponent ~= 0x0 then

ChargeTime = WeaponChargeComponent + 0x198

writeFloat( ChargeTime + 0x4, 0.0 ) -- instant charge

writeFloat( ChargeTime + 0x8, 0.0 ) -- instant charge

DischargeTime = WeaponChargeComponent + 0x1A4

writeFloat( DischargeTime + 0x4, 3600.0 ) -- 1h

writeFloat( DischargeTime + 0x8, 3600.0 ) -- 1h

end

-- PROJECTILE

WeaponFireProjectileComponent = executeCodeEx( 0, nil, execGetUseModeComponentByClass, Weapon, WeaponFireProjectileComponent_Class, i )

--print( string.format( "WeaponFireProjectileComponent_Mode0%X: %X", i, WeaponFireProjectileComponent ) )

-- adjust several parameters in here

if WeaponFireProjectileComponent ~= 0x0 then

FireRate = WeaponFireProjectileComponent + 0x218

writeFloat( FireRate + 0x4, 20.0 )

writeFloat( FireRate + 0x8, 20.0 )

BurstFireDelay = WeaponFireProjectileComponent + 0x230

writeFloat( BurstFireDelay + 0x4, 0.0 )

writeFloat( BurstFireDelay + 0x8, 0.0 )

bAutoBurst = WeaponFireProjectileComponent + 0x23C

writeBytes( bAutoBurst, 0x1 )

ShotAmmoCost = WeaponFireProjectileComponent + 0x2E0

writeInteger( ShotAmmoCost + 0x4, 0 )

writeInteger( ShotAmmoCost + 0x8, 0 )

Spread = WeaponFireProjectileComponent + 0x2F0

writeFloat( Spread + 0x4, 0.0 )

writeFloat( Spread + 0x8, 0.0 )

AccuracyImpulse = WeaponFireProjectileComponent + 0x2FC

writeFloat( AccuracyImpulse + 0x4, 0.0 )

writeFloat( AccuracyImpulse + 0x8, 0.0 )

BurstAccuracyImpulseScale = WeaponFireProjectileComponent + 0x308

writeFloat( BurstAccuracyImpulseScale + 0x4, 0.0 )

writeFloat( BurstAccuracyImpulseScale + 0x8, 0.0 )

ProjectileSpeedScale = WeaponFireProjectileComponent + 0x90C

writeFloat( ProjectileSpeedScale + 0x4, 200.0 )

writeFloat( ProjectileSpeedScale + 0x8, 200.0 )

end

end

end

return "assert(true)"



[DISABLE]

[/code]

Been using it for over 1.5 months now :) You're gonna love it. Highly customizable. Let me know if you need anything else in.



How this works: get in a map (so not at main menu), load table in Update #9, let it do its thing (past the pop-up about the Console Key), activate [Enable] script, then add the above to the table. Like so:



[IMG]https://i.imgur.com/I8eHO5X.png[/IMG]



Bind a hotkey on it (e.g. Numpad 7). Then once you've equipped a weapon, hit that hotkey. These will happen:

[LIST]

[*]disable recoil for all weapon modes by 0-ing out the # of Samples (array size = 0)

[*]disable sway for all weapon modes by 0-ing out the # of Samples (array size = 0)

[*]kill overheating on firing (weapon still overheats, but you can fire it while overheated; won't reload)

[*]instant charge time and 1h-refreshable discharge time

[*]fire rate set to 20.0

[*]burst fire delay = 0

[*]auto-burst activated

[*]shot ammo cost = 0 (unlimited clip ammo)

[*]spread = 0

[*]accuracy impulse = 0

[*]burst accuracy impulse = 0

[*]projectile speed scale set to 200.0 (instant hit as soon as you fire)

[/LIST]

Need to do it to another weapon? Just switch weapon and press that hotkey; wait 1-2s and it's done. Effects stay on till you leave for main menu or close the game.



BR,

Sun
Last edited by SunBeam on Sun May 31, 2020 7:02 pm, edited 12 times in total.

User avatar
Chickens
Noobzor
Noobzor
Posts: 5
Joined: Sun May 31, 2020 11:54 pm
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by Chickens »

First off, thanks for this. The commands are well thought out and work well. However, I've noticed that after an unknown amount of time the commands just stop working for me (command not found). Not sure what's the cause, but it's definitely annoying since to keep using it I'm forced to restart the game. If you could tell me anything that you'd need me to provide to help diagnose that'd be great, as I definitely would like to know how to fix the problem.

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

[QUOTE="Chickens, post: 137807, member: 42427"]

...

[/QUOTE]



Do tell which commands and how often do you use them. The more information you provide, the more I can test on my end. I've been playing these 2 days non-stop with no issues whatsoever.. Really don't know what's going on for you, people.
Last edited by SunBeam on Mon Jun 01, 2020 1:45 am, edited 3 times in total.

User avatar
Chickens
Noobzor
Noobzor
Posts: 5
Joined: Sun May 31, 2020 11:54 pm
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by Chickens »

[QUOTE="SunBeam, post: 137811, member: 12587"]

Do tell which commands and how often do you use them. The more information you provide, the more I can test on my end. I've been playing these 2 days non-stop with no issues whatsoever.. Really don't know what's going on for you, people.

[/QUOTE]

Actually seems like it might be okay after I restarted my computer. Though a question I have is [S]how do you get annointed weapons? [/S] (EDIT: I guess you have to unlock Mayhem mode first)

[automerge]1590989274[/automerge]

Nevermind, I'm not sure how this is caused.



[IMG]https://puu.sh/FRiol.jpg[/IMG]



I don't close cheat engine or anything, I just alt+tab and stuff at best.
Last edited by Chickens on Mon Jun 01, 2020 7:49 am, edited 3 times in total.

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

Man.. I have to stress it again: use the table in Update #9. Go download it again, please. You have a big ass DOWNLOAD button there. [I]GiveCurrency[/I] command wasn't there in previous table versions. And lastly, do read the posts BEFORE yours. Am done wasting time on no actual problems but the one between the chair and monitor.
Last edited by SunBeam on Mon Jun 01, 2020 12:36 pm, edited 3 times in total.

jonasbeckman
Expert Cheater
Expert Cheater
Posts: 307
Joined: Sat May 06, 2017 1:26 pm
Reputation: 22

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by jonasbeckman »

But it worked the first three times going by the screenshot.

Though those three were followed by a type such as money or whatever vault coins are.



Doing a bit back and forth between older games so I don't have much progress with Borderlands 3, alt-tab and having stuff reloaded I would probably utilize borderless mode especially with DirectX 12 and improvements to window management it should be about as good as exclusive full screen assuming the implementation is solid.

(D3D11 has part of this but as optional and rarely used, D3D12 moves it to a requirement instead along with some other improvements in the newer Windows 10 builds.)



Or perhaps just re-initializing the table or options could help if stuff stops working in-between level loading or things like that assuming the initial initialization went OK and followed the recommended on how to load the table and when and what to enable and when. :)

(Not on the main menu and when in the game proper.)





I do notice that from the generic console injector occasionally that it just fails at loading the camera or console and that just needs a game restart and trying until it works and the scan itself and initialization can be very slow almost stalling the game for a while before it's done but I haven't investigated it further and the game is getting one more DLC and more patches plus there was a hotfix some week or two back again but that shouldn't change things the same way a patch can.

(Though it can change drop rates and other things like the loot the world whatever it was event causing legendary gear to be themed to specific types on specific maps or altering other properties.)



Games on the back burner here until some more patches so I don't really know too much on the later mechanics nor do I have enough progress for things like the Mayhem mode and changes done to how that works so that post-game stuff is going to take a while to reach.



Have not started using the table much at all either but the commands I did play around with on the hub ship area worked fine including some of the additions or restored cvars that would otherwise not have worked at all so that seemed fine.

(But it was a pretty quick session mostly to just see if it worked and was compatible with that version of the game though it's only been two maybe three hotfixes since so it should still work at least until the next actual patch rolls out.)







EDIT: Although I suppose the first post and video and updates spell out how it all works which means it should work as long as it's followed such as including a type together with the currency command for what to give.
Last edited by jonasbeckman on Mon Jun 01, 2020 12:54 pm, edited 3 times in total.

User avatar
Chickens
Noobzor
Noobzor
Posts: 5
Joined: Sun May 31, 2020 11:54 pm
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by Chickens »

[QUOTE="SunBeam, post: 137877, member: 12587"]

Man.. I have to stress it again: use the table in Update #9. Go download it again, please. You have a big ass DOWNLOAD button there. [I]GiveCurrency[/I] command wasn't there in previous table versions. And lastly, do read the posts BEFORE yours. Am done wasting time on no actual problems but the one between the chair and monitor.

[/QUOTE]



Trying to be respectful because you're sharing this for free and I'm not entitled to anything, but as the guy stated above, you can clearly see that the commands working for the first few times, including the GiveCurrency command. I'm not an idiot, I'm on the latest version and I watched the entire 30 minute video you posted. The screenshot shows the exact issue I described: commands work great and then after a while just stop working for no apparent reason. Yes I did not put any arguments on the last use of the command, however the error should not be command not found. It should be that there is an error with the arguments and that the first one is missing.



I've tested this multiple times, using the spawnitems command to try to find items that I want and just randomly from any time between 5 and 30 minutes, the command stops working, even though I literally am using the up arrow key to select the previous command. Just as I had done for the past 5 uses of it. I can screenshot that if you would like or even record it if you're skeptical and believe it to be user error. I've probably had to restart and wait for the game to load like 10 times, which granted isn't even that bad, but, as I said in my first post, is annoying and it would be nice to have it fixed.

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

The thing is there's nothing to fix. Like I said.. DO NOT DO ANYTHING as soon as you enter a map. Alt-tab [I]without pausing via Esc[/I], then open the table, activate [ Enable ] script, then you're good to go. Try the commands till you get bored. As explained in a post somewhere in this topic, Unreal Engine does some garbage collecting and removes all the UObjects that aren't used. One of them is [B]DeveloperPerks[/B], which will get destroyed in like 30-45s from the moment you enter a map and [I]start[/I] moving around or shooting (moving is enough to trigger the garbage collection watchdog). It gets destroyed even faster if before you alt-tab you press Esc to pause the game. Bringing up the menu will trigger that check. So by the time you get back in-game, you would have already signaled it to be destroyed ([I]UActorComponent_DestroyComponent[/I] function does it), meaning your commands will work till the Engine wipes it and puts a NULL in PlayerController+0x1A00. That's when you'll start experiencing "Command not recognized". And that's why I said "don't do anything in the map you enter BEFORE you activate [ Enable ] script".



EDIT #1: Yeah, don't know what's up on your end. I've been playing for 20-30 min. straight, running all possible commands ranging from giving currency to spawning items. No issue found whatsoever. The only 2 possibilities a 'DeveloperPerks' command won't run are:

[LIST]

[*]the DeveloperPerks pointer is empty; in which case, check this:



[IMG]https://i.imgur.com/Bivk8QS.png[/IMG]



And like I said, don't do anything in your map till you activate [ Enable ] script. You don't need to restart the game or reboot the PC if it stops working. Just head out to main menu and back in-game.





[*]the UFUNC_Exec flag is somehow reset for the command you're running, which I doubt.

[/LIST]

EDIT #2: When you get the "Command not recognized" message in the console, run the below in CE's Lua console (Memory Viewer, then Ctrl+L, copy-paste the below and hit Execute):

[code]

local PlayerController = readQword( getAddressSafe( "PlayerController" ) )

local DeveloperPerks = readQword( PlayerController + 0x1A00 )

print( string.format( "DeveloperPerks: 0x%X", DeveloperPerks ) )

local bDestroy = readBytes( DeveloperPerks + 0xC8, 1 )

print( string.format( "bDestroy: 0x%X", bDestroy ) )



local i = 0x0

local cmdArr = 0x0



cmdArr = {

"GiveCash",

"GiveEridium",

"GiveGoldenKeys",

"GiveLevels",

"KillEnemies",

"SpawnAwesomeItems",

"UnlimitedAmmo",

"UnlockAllCustomizations"

}



for i = 1, #cmdArr do

t = staticFindObjectEx( "Function", "BP_DevPerks.BP_DevPerks_C", cmdArr[i] )

if t < 1 then stopExec( "'" .. cmdArr[i] .. "' Function not found." ) end

t = readInteger( t + 0x88 )

print( string.format( "%s -> UFUNC_Exec: 0x%X", cmdArr[i], t ) )

end



cmdArr = {

"GetOwnerOakPlayerController",

"GiveCurrency",

"GrantLevels",

"KillAllEnemies",

"Loaded",

"OnDeveloperPerkActivated",

"PerkTypeEnumFunc",

"ServerGiveCurrency",

"ServerGrantLevels",

"ServerKillAllEnemies",

"ServerSpawnItems",

"ServerUnlockVehicleParts",

"SpawnItems",

"UnlockCustomizations",

"UnlockVehicleParts",

"UnlockWeaponSkins",

"UnlockWeaponTrinkets"

}



for i = 1, #cmdArr do

t = staticFindObjectEx( "Function", "OakGame.OakDeveloperPerks", cmdArr[i] )

if t < 1 then stopExec( "'" .. cmdArr[i] .. "' Function not found." ) end

t = readInteger( t + 0x88 )

print( string.format( "%s -> UFUNC_Exec: 0x%X", cmdArr[i], t ) )

end

[/code]

This is what I got:

[code]

DeveloperPerks: 0x56073500

bDestroy: 0xE8

GiveCash -> UFUNC_Exec: 0xC020200

GiveEridium -> UFUNC_Exec: 0xC020200

GiveGoldenKeys -> UFUNC_Exec: 0xC020200

GiveLevels -> UFUNC_Exec: 0xC020200

KillEnemies -> UFUNC_Exec: 0xC020200

SpawnAwesomeItems -> UFUNC_Exec: 0xC020200

UnlimitedAmmo -> UFUNC_Exec: 0xC020200

UnlockAllCustomizations -> UFUNC_Exec: 0xC020200

GetOwnerOakPlayerController -> UFUNC_Exec: 0x54040601

GiveCurrency -> UFUNC_Exec: 0x44020601

GrantLevels -> UFUNC_Exec: 0x44020601

KillAllEnemies -> UFUNC_Exec: 0x44020601

Loaded -> UFUNC_Exec: 0x44020601

OnDeveloperPerkActivated -> UFUNC_Exec: 0x8020A00

PerkTypeEnumFunc -> UFUNC_Exec: 0x20601

ServerGiveCurrency -> UFUNC_Exec: 0xC0220EC0

ServerGrantLevels -> UFUNC_Exec: 0xC0220EC0

ServerKillAllEnemies -> UFUNC_Exec: 0xC0220EC0

ServerSpawnItems -> UFUNC_Exec: 0x80220EC0

ServerUnlockVehicleParts -> UFUNC_Exec: 0xC0220EC0

SpawnItems -> UFUNC_Exec: 0x4420601

UnlockCustomizations -> UFUNC_Exec: 0x44020601

UnlockVehicleParts -> UFUNC_Exec: 0x44020601

UnlockWeaponSkins -> UFUNC_Exec: 0x44020601

UnlockWeaponTrinkets -> UFUNC_Exec: 0x44020601

[/code]

Then copy the output, like I did, and paste it here (as text, not screenshot). I want to see their states when you say a command stops working.



Lastly, I also need to know which version you're playing: Steam or EGS. Awaiting your reply.



BR,

Sun
Last edited by SunBeam on Mon Jun 01, 2020 10:37 pm, edited 15 times in total.

User avatar
Chickens
Noobzor
Noobzor
Posts: 5
Joined: Sun May 31, 2020 11:54 pm
Reputation: 0

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by Chickens »

[QUOTE="SunBeam, post: 137914, member: 12587"]

The thing is there's nothing to fix. Like I said.. DO NOT DO ANYTHING as soon as you enter a map. Alt-tab [I]without pausing via Esc[/I], then open the table, activate [ Enable ] script, then you're good to go. Try the commands till you get bored. As explained in a post somewhere in this topic, Unreal Engine does some garbage collecting and removes all the UObjects that aren't used. One of them is [B]DeveloperPerks[/B], which will get destroyed in like 30-45s from the moment you enter a map and [I]start[/I] moving around or shooting (moving is enough to trigger the garbage collection watchdog). It gets destroyed even faster if before you alt-tab you press Esc to pause the game. Bringing up the menu will trigger that check. So by the time you get back in-game, you would have already signaled it to be destroyed ([I]UActorComponent_DestroyComponent[/I] function does it), meaning your commands will work till the Engine wipes it and puts a NULL in PlayerController+0x1A00. That's when you'll start experiencing "Command not recognized". And that's why I said "don't do anything in the map you enter BEFORE you activate [ Enable ] script".



EDIT #1: Yeah, don't know what's up on your end. I've been playing for 20-30 min. straight, running all possible commands ranging from giving currency to spawning items. No issue found whatsoever. The only 2 possibilities a 'DeveloperPerks' command won't run are:

[LIST]

[*]the DeveloperPerks pointer is empty; in which case, check this:



[IMG]https://i.imgur.com/Bivk8QS.png[/IMG]



And like I said, don't do anything in your map till you activate [ Enable ] script. You don't need to restart the game or reboot the PC if it stops working. Just head out to main menu and back in-game.





[*]the UFUNC_Exec flag is somehow reset for the command you're running, which I doubt.

[/LIST]

EDIT #2: When you get the "Command not recognized" message in the console, run the below in CE's Lua console (Memory Viewer, then Ctrl+L, copy-paste the below and hit Execute):

[code]

local PlayerController = readQword( getAddressSafe( "PlayerController" ) )

local DeveloperPerks = readQword( PlayerController + 0x1A00 )

print( string.format( "DeveloperPerks: 0x%X", DeveloperPerks ) )

local bDestroy = readBytes( DeveloperPerks + 0xC8, 1 )

print( string.format( "bDestroy: 0x%X", bDestroy ) )



local i = 0x0

local cmdArr = 0x0



cmdArr = {

"GiveCash",

"GiveEridium",

"GiveGoldenKeys",

"GiveLevels",

"KillEnemies",

"SpawnAwesomeItems",

"UnlimitedAmmo",

"UnlockAllCustomizations"

}



for i = 1, #cmdArr do

t = staticFindObjectEx( "Function", "BP_DevPerks.BP_DevPerks_C", cmdArr[i] )

if t < 1 then stopExec( "'" .. cmdArr[i] .. "' Function not found." ) end

t = readInteger( t + 0x88 )

print( string.format( "%s -> UFUNC_Exec: 0x%X", cmdArr[i], t ) )

end



cmdArr = {

"GetOwnerOakPlayerController",

"GiveCurrency",

"GrantLevels",

"KillAllEnemies",

"Loaded",

"OnDeveloperPerkActivated",

"PerkTypeEnumFunc",

"ServerGiveCurrency",

"ServerGrantLevels",

"ServerKillAllEnemies",

"ServerSpawnItems",

"ServerUnlockVehicleParts",

"SpawnItems",

"UnlockCustomizations",

"UnlockVehicleParts",

"UnlockWeaponSkins",

"UnlockWeaponTrinkets"

}



for i = 1, #cmdArr do

t = staticFindObjectEx( "Function", "OakGame.OakDeveloperPerks", cmdArr[i] )

if t < 1 then stopExec( "'" .. cmdArr[i] .. "' Function not found." ) end

t = readInteger( t + 0x88 )

print( string.format( "%s -> UFUNC_Exec: 0x%X", cmdArr[i], t ) )

end

[/code]

This is what I got:

[code]

DeveloperPerks: 0x56073500

bDestroy: 0xE8

GiveCash -> UFUNC_Exec: 0xC020200

GiveEridium -> UFUNC_Exec: 0xC020200

GiveGoldenKeys -> UFUNC_Exec: 0xC020200

GiveLevels -> UFUNC_Exec: 0xC020200

KillEnemies -> UFUNC_Exec: 0xC020200

SpawnAwesomeItems -> UFUNC_Exec: 0xC020200

UnlimitedAmmo -> UFUNC_Exec: 0xC020200

UnlockAllCustomizations -> UFUNC_Exec: 0xC020200

GetOwnerOakPlayerController -> UFUNC_Exec: 0x54040601

GiveCurrency -> UFUNC_Exec: 0x44020601

GrantLevels -> UFUNC_Exec: 0x44020601

KillAllEnemies -> UFUNC_Exec: 0x44020601

Loaded -> UFUNC_Exec: 0x44020601

OnDeveloperPerkActivated -> UFUNC_Exec: 0x8020A00

PerkTypeEnumFunc -> UFUNC_Exec: 0x20601

ServerGiveCurrency -> UFUNC_Exec: 0xC0220EC0

ServerGrantLevels -> UFUNC_Exec: 0xC0220EC0

ServerKillAllEnemies -> UFUNC_Exec: 0xC0220EC0

ServerSpawnItems -> UFUNC_Exec: 0x80220EC0

ServerUnlockVehicleParts -> UFUNC_Exec: 0xC0220EC0

SpawnItems -> UFUNC_Exec: 0x4420601

UnlockCustomizations -> UFUNC_Exec: 0x44020601

UnlockVehicleParts -> UFUNC_Exec: 0x44020601

UnlockWeaponSkins -> UFUNC_Exec: 0x44020601

UnlockWeaponTrinkets -> UFUNC_Exec: 0x44020601

[/code]

Then copy the output, like I did, and paste it here (as text, not screenshot). I want to see their states when you say a command stops working.



Lastly, I also need to know which version you're playing: Steam or EGS. Awaiting your reply.



BR,

Sun

[/QUOTE]

Ahhhh... My bad, I didn't know how strict the garbage collection was after loading in. That was probably what was causing it.

Sorry for wasting your time. It seems to work perfectly now.

User avatar
SunBeam
Administration
Administration
Posts: 4932
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4630

Borderlands 3 [Engine:Unreal 4.20] - Console enabler, Dumper and more..

Post by SunBeam »

[QUOTE="Chickens, post: 137953, member: 42427"]

Ahhhh... My bad, I didn't know how strict the garbage collection was after loading in. That was probably what was causing it.

Sorry for wasting your time. It seems to work perfectly now.

[/QUOTE]



All good. You didn't really waste my time, so to speak, because I'm going to reuse these posts with whomever mentions this subject again :) So it's a sort of a win:win :P

Post Reply

Who is online

Users browsing this forum: Bing [Bot], jogonzalez, readlfj, Rihito, stefad99, TsReal