Page MenuHomeFeedback Tracker

CfgFunctions postInit runs before init.sqf on clients at mission start in MP (dedicated server)
Closed, ResolvedPublic

Description

Currently CfgFunctions postInit is executed before init.sqf for clients which are connected/present at mission start in MP.

[23323,201.821,0,"Executing fn_preinit.sqf"]
[23323,201.827,0,"fn_preinit.sqf processed"]
[23323,202.106,0,"Executing fn_postinit.sqf"]
[23323,202.106,0,"fn_postinit.sqf processed"]
[23328,202.395,0,"Executing init.sqf"]
[23328,202.396,0,"init.sqf processed"]

JIP clients and the dedicated server don't have the problem, execution order is correct:

[24985,254.519,0,"Executing fn_preinit.sqf"]
[24985,254.525,0,"fn_preinit.sqf processed"]
[24985,254.616,0,"Executing init.sqf"]
[24985,254.616,0,"init.sqf processed"]
[24991,255.963,0.243,"Executing fn_postinit.sqf"]
[24991,255.963,0.243,"fn_postinit.sqf processed"]

This makes using postInit quite unreliable as postInit should always run after init.sqf and never before init.sqf {F22213}

Details

Legacy ID
446370612
Severity
None
Resolution
Not Fixable
Reproducibility
Always
Category
Scripting
Steps To Reproduce

Attached is a simple test mission, run it on a dedicated server and check client and server RPT.
(The mission does not support JIP but for JIP clients the order is correct anyway. It only affects clients which are present at mission start).

Event Timeline

Xeno edited Steps To Reproduce. (Show Details)Sep 20 2013, 8:15 AM
Xeno edited Additional Information. (Show Details)
Xeno set Category to Scripting.
Xeno set Reproducibility to Always.
Xeno set Severity to None.
Xeno set Resolution to Not Fixable.
Xeno set Legacy ID to 446370612.May 7 2016, 4:50 PM
Xeno added a subscriber: Xeno.May 7 2016, 4:50 PM
Xeno added a comment.Oct 22 2013, 3:53 PM

Will this be fixed anytime soon, read before the next stable version of A3 is available?

There's also a problem with public variables which are not available for clients on a dedicated server in preInit, but this is an extra issue (for example paramsArray).

I'm afraid there are various engine reasons why init.sqf is executed at different point in SP and MP.
I recommend to use initServer.sqf and initPlayerLocal.sqf instead: http://community.bistudio.com/wiki/Functions_Library_%28Arma_3%29#Initialization_Order

Xeno added a comment.Nov 6 2013, 11:29 PM

Sad to read this.
We had this working perfectly fine in CBA XEH.
(and no, those two scripts are not an option :))

What are reasons why initServer.sqf and initPlayerLocal.sqf are not an option?

Mass closing resolved issues not updated since November.

Xeno removed a subscriber: Xeno.May 29 2016, 11:48 PM