Jump to content
Sign in to follow this  
gameboi

Dumb (effcient) debug question by scripting newbie.

Recommended Posts

Hi guys.

I'm not that much into scripting, sometimes I feel I have to do a little bit of tweaking.

I know how to decompile a pbo file and recompile it again with 'Eliteness'. Normally to tweak a sqm file or a config.cpp file, I do:

1 - unpack the pbo

2 - modify the file(s)

3 - repack the contents back to a pbo file

4 - start Arma 3 again

5 - start a new game again and test result.

This is wayyyy to tedious. All the time this restarting of the game and whatnot. There must be a more efficient way. Is there a way to modify variables and re-init the config.cpp or the sqm file whilst still in the game? I can't modify the files and save them whilst the game is still running (as far as I know) but is there at least some other way to at least check out the new variables? Once I have tweaked the variables (I write the results down), I can modify the actual files later!

Cheers and thanks!

Share this post


Link to post
Share on other sites

Very simple,

When you open the .pbo, save it all in a folder called mymission.altis or mymission.stratis or mymission.vr.

Then copy that into: "My Documents\ArmA 3\missions (or mpmissions)\place folder here."

You would be tirelessly fustrated editing that .pbo, I suggest using that method which a lot do. (The main reason is that .pbo's contain FINAL work, if you want to edit it straight away, just place the content that inside the .pbo into a folder so you can edit that mission with the editor)

WARNING!

If your editing a .pbo that is not a mission, do not do so!!!

You will end up crashing the game thus possibly damaging that .pbo you are modifying, so do not edit a .pbo that is not a mission.

Edited by Ranwer

Share this post


Link to post
Share on other sites
Very simple,

When you open the .pbo, save it all in a folder called mymission.altis or mymission.stratis or mymission.vr.

Then copy that into: "My Documents\ArmA 3\missions (or mpmissions)\place folder here."

You would be tirelessly fustrated editing that .pbo, I suggest using that method which a lot do. (The main reason is that .pbo's contain FINAL work, if you want to edit it straight away, just place the content that inside the .pbo into a folder so you can edit that mission with the editor)

WARNING!

If your editing a .pbo that is not a mission, do not do so!!!

You will end up crashing the game thus possibly damaging that .pbo you are modifying, so do not edit a .pbo that is not a mission.

Hi Ranwer.

The PBO is not a mission. It's a mod which changes weapon characteristics. I want to tweak weapon recoil towards my experiences in the army. So I need a way to change values and see the results on the screen asap. Whether it's an in-memory change or directly editing a file, it doesn't matter to me. As long as I don't have to restart the game over and over again. I'll just create a player in the editor and test there.

Share this post


Link to post
Share on other sites

Don't know if that's possible because you are using the file at the time of alteration, and you have to restart the game to be able to overwrite the file (AFAIK).

Share this post


Link to post
Share on other sites

You are gonna have to restart the game over and over again. Its the nature of the beast.

Missions you can drop into your missions folder and just reload, mods that change or add things will require a restart.

There will be nights that you restart the game well over a hundred times. Its a bitch...

Share this post


Link to post
Share on other sites
You are gonna have to restart the game over and over again. Its the nature of the beast.

Missions you can drop into your missions folder and just reload, mods that change or add things will require a restart.

There will be nights that you restart the game well over a hundred times. Its a bitch...

Yeah, it's a bitch indeed. I better find a way to move my steam folder to my SSD drive to speed up restarting of the game. Is there a reliable trick to do so?

There is this command which may help, but I've seen two threads reporting that it may not be working since 1.42:

https://community.bistudio.com/wiki/setUnitRecoilCoefficient

Indeed, it can be set but as soon as you fire it resets itself again according to the debug console window.

Share this post


Link to post
Share on other sites
Indeed, it can be set but as soon as you fire it resets itself again according to the debug console window.

In that case, I have no idea how much of a performance hit this will make, but why not :D:

[
"setRecoil",
"onEachFrame",
{
	player setUnitRecoilCoefficient #;
},
[]
] call BIS_fnc_addStackedEventHandler;

EDIT: Or....

player addEventHandler
[
"Fired",
{
	player setUnitRecoilCoefficient #;
}
];

Edited by JShock

Share this post


Link to post
Share on other sites

Their is a thing called file patching that can speed things up (basically makes your PBO point to actual file paths so you can change the files without restarting the game), but I don't know enough about it to provide any further information.

ACE3 collaborators use it for development and the process of setting it up (specifically for ACE development though) is detailed here. I imagine you could potentially figure out how to set it up generally by looking at their .py files.

Share this post


Link to post
Share on other sites
Their is a thing called file patching that can speed things up (basically makes your PBO point to actual file paths so you can change the files without restarting the game), but I don't know enough about it to provide any further information.

ACE3 collaborators use it for development and the process of setting it up (specifically for ACE development though) is detailed here. I imagine you could potentially figure out how to set it up generally by looking at their .py files.

Think they mean file patching as in mission file patching, running mission without having to .pbo it. Any changes to config require game restart.

Share this post


Link to post
Share on other sites

diag_mergeConfig + unpacked data

Share this post


Link to post
Share on other sites
;2920341']diag_mergeConfig + unpacked data

Say what kju?

Share this post


Link to post
Share on other sites
In that case, I have no idea how much of a performance hit this will make, but why not :D:

[
"setRecoil",
"onEachFrame",
{
	player setUnitRecoilCoefficient #;
},
[]
] call BIS_fnc_addStackedEventHandler;

EDIT: Or....

player addEventHandler
[
"Fired",
{
	player setUnitRecoilCoefficient #;
}
];

LOL don't sweat it: http://feedback.arma3.com/view.php?id=23393

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×