Nome_Skavinski

Enhanced Movement Mod in Exile (Working!)

111 posts in this topic

Hi all,

First of all, i'd like to express my thanks to this forum for helping our group setup and modify our server! So i'd like to give this to guys as a thanks! Apologies if this causes any adverse affects to any games but it's a starting off point i suppose.

For awhile I've been trying to get BadBenson's Arma Enhanced Movement mod working (great mod by the way, very well made) with Exile, it took some doing but I found that the Arma Enhanced Movement mod uses 'onEachFrame'. In the Arma documentation for onEachFrame (https://community.bistudio.com/wiki/onEachFrame), a member called neokika (thank you so much for that comment!)  left a comment which stated:

onEachFrame {}; //Reset event

I searched the exile files and found that, ExileClient_system_thread_initialize.sqf, has this exact line in. So I commented out the line and overridden the file in my mission file. After resolving a few BattleEye filters it worked like a charm! Has been tested on Altis and Tanoa, with a vanilla build and with a load of mods.

How to get it working on your server

1) Find your 'ExileClient_system_thread_initialize.sqf' in '@Exile' > 'addons' > 'exile_client.pbo' > 'code'. This can be the file on your server or locally (just make sure its the latest).

2) Download your mission file from your server you are currently using. This will be found in the 'mpmissions' folder, it will be called something liek 'Exile.Tanoa.pbo' or 'Exile.Altis.pb. Unpack the .pbo and head inside the newly created folder.

3) Inside the extracted folder, create another folder called 'Overrides', and place a copy of the 'ExileClient_system_thread_initialize.sqf' inside of it.

4) Open 'ExileClient_system_thread_initialize.sqf' which is inside the 'Overrides' folder with a text editor and comment out the the "onEachFrame = {};" line.

5) Then open your missions config.cpp and search for "CfgExileCustomCode" and add this line:

ExileClient_system_thread_initialize = "Overrides\ExileClient_system_thread_initialize.sqf";

6) Save your changes and re-package your mission file into a .pbo and upload it to your server.

So now, it wont be resetting the onEachFrame event, allowing the ArmaEnhancedMovement mod to run. Hooray!

7) Now, you may want to enter all of these BattleEye restrictions into your script.txt. These are the ones I was hit with when I tried to run the mod, or attempted to jump:

Spoiler

(Restriciton #13, enter it on line #15)
!="fnc_command_ab","BABE_CORE_fnc_command_abc","BABE_CORE_fnc_addaction","BABE_CORE_fnc_switchMove","BABE_CORE_fnc_movein","BABE_CO" 
(Restriction #0, enter it on line #2)
!="e_keyhandlersaver") then \n{\n(findDisplay 46) displayRemoveEventHandler ['KeyDown', babe_core_keyhandlersaver];\n};\n\nbabe_core_key" 
(Restriction #15, enter it on line #17)
!=" [];\n\nbabe_core_escM_mousepos = [];\n\n\n\n["BABE_MAINLOOP", "onEachFrame", \n{\nprivate ["_i"];\n\nfor "_i" from 0 to (count babe_core_"
(Restriction #21, enter it on line #23)
!="= _EH select 8;\n\n\nif (_delay == -1 or diag_tickTime - (call compile (_id+"_timer")) >= _delay) then \n{\ncall compile (_id + "_tim" 
(Restriction #7, enter it on line #9)
!="call babe_fd_fnc_init_fd;\n\n\nbabe_em_help = "babe_helper" createVehicleLocal [0,0,0];\n\nbabe_em_debug_a = "Sign_Arrow_Green_F" cre" 
(Restriction #25, enter it on line #27)
!="oneachframe", "onpreloadstarted", "onpreloadfinished", "onmapsingleclick", "onplayerconnected", "onplayerdisconnected"];\n\n\nif !(" 
(Restriction #40, enter it on line #42)
!=" "oneachframe" : { onEachFrame { ["oneachframe"] call BIS_fnc_executeStackedEventHandler; }; };\ncase "onpreloadstarted" : { onPr" 
(Restrcition #2, enter it on line #4)
!=" [];\n\n_menuW = 3.5;\n_menuH = 4;\n\n\n_ctrlbg = findDisplay 49 ctrlCreate ["BABE_CORE_Listbg", 21251327];\n_ctrl = findDisplay 49 ctr" 
(Restriction #14, enter it on line #16)
!="then\n{\n_obj = (_int select 0) select 3;\n\nif (EM_debug) then\n{\ndrawLine3D [_posa, _posb, [1,0,0,1]];\n};\n\n_testpos = (_int select " 

8) Subscribe to BadBenson's Arma Enhanced Movement mod on the steam workshop (http://steamcommunity.com/sharedfiles/filedetails/?id=333310405&searchtext=Enhanced).

9) Find the mod directory locally on your PC, and upload the mod folder to your server, ensuring there are no spaces in the folder name. Don't forget to copy the keys over to your servers 'keys' folder.

10) Add the Arma Enhanced Movement mod to your servers mod parameters (i added my to both the -serverMod and -mods parameters to ensure all clients joined with it).

11) Restart your server.

Clients only need to subscribe to the Arma Enhanced Movement mod on the steam workshop, and ensure they have it loaded before joining the server. If all goes well, users should be able to see the mod's menu when they hit escape.

This was everything I needed on an Exile vanilla server to get Arma Enhanced Movement mod working. I got this working on two servers, one running only Exile, the other running Exile and a plethora of mods (Advanced towing, Rappelling, Ryanzombies, CUP vehicles, units and weapons, dms missions).

Apologies if this has an adverse affect on Exile I have overlooked, but I have had no issues on our server so far (please say something if it has).

I hope this works for other users like it did for me, as I have seen a lot of people struggling to get this working.

Here's a video of it working in our server:

Here is the vanilla Exile.Tanoa file i used:

http://www.filedropper.com/exileenhancedmovement

All the best,

Nome.

Edited by Nome_Skavinski
Make the steps clearer
  • Like 6

Share this post


Link to post
Share on other sites

I thought I had read that using this would require clients to download another mod. This isn't true, I guess?

*Edit* I see you do need to download the Enhanced movement mod and add it to the server command line. You might want to add that to the OP.

Share this post


Link to post
Share on other sites
Advertisement
15 minutes ago, hogansheroes said:

yes this will be a client side dl as the "ExileClient_system_thread_initialize.sqf" is not even in the exile_server\code file as he said to look for it

That's not what I had asked. I had asked if it required clients to download another mod and it does. They have to download the Enhanced Movement mod: https://steamcommunity.com/sharedfiles/filedetails/?id=333310405. It needs to be added to the server command line and the client must also load it.

Share this post


Link to post
Share on other sites
23 minutes ago, hogansheroes said:

would be better as server side if possible

Since it relies on an extra mod, that wouldn't be possible unless the Exile team coded their own.

I couldn't get this to work. The mod page says that if you hit esc, you'll get a menu to set up the key for the enhanced movement. I didn't get that menu.

Share this post


Link to post
Share on other sites
7 minutes ago, BetterDeadThanZed said:

Since it relies on an extra mod, that wouldn't be possible unless the Exile team coded their own.

I couldn't get this to work. The mod page says that if you hit esc, you'll get a menu to set up the key for the enhanced movement. I didn't get that menu.

oh well atleast you gave it ago Better

Share this post


Link to post
Share on other sites
6 minutes ago, BetterDeadThanZed said:

So you hit the ESC key once in game and you have the option to set the key to climb/move?

Yes I do. I have overriden the file like instructed and enabled the mod client and serverside. But not as servermod. And I changed the folder name to "@ArmaEnhancedMovement" on the server, because sometimes the empty spaces cause problems.

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.