Page MenuHomePhabricator

3den module didnt trigger "init" state
New, NormalPublic

Description

If you place a module in 3den it didnt trigger the "init" state.
The mod ZEI (https://github.com/LISTINGS09/ZEI) run before 1.86 without any problem... after the update the switch do with "init" didnt get executed and only "attributesChanged3DEN" get triggert if a module was placed.
We had to also check for "attributesChanged3DEN" instead of "init" to make it work now (https://github.com/LISTINGS09/ZEI/blob/5edd6455a13ef3ec7654fca2608d1b8383ca5826/ZEI/functions/fn_mod_findBPos.sqf#L8-L9)

Details

Severity
Minor
Resolution
Open
Reproducibility
Always
Operating System
Windows 10 x64
Category
Eden Editor
Steps To Reproduce
  1. make a module like (https://github.com/LISTINGS09/ZEI/blob/5edd6455a13ef3ec7654fca2608d1b8383ca5826/ZEI/CfgVehicles.hpp#L70-L80)
  2. place it in the 3den editor
  3. look at the debug from this function position (https://github.com/shukari/ZEI/blob/2bac69252d72368ad7b82b04616abb4006b3d76f/ZEI/functions/fn_mod_garrisonBuilding.sqf#L6)
  4. ausgabe=output -> attributesChanged3DEN but need to be init

Event Timeline

shukari created this task.Wed, Dec 5, 12:28 PM

I'm pretty sure it's intentional. For instance, have a look how BIS_fnc_moduleGrenade is implemented, which is the module function for the smoke grenade module. "registeredToWorld3DEN" is the one that should be triggered in Eden, not "init".

Init was called before 1.86 in the wiki stand beside isEden = 1 config entry that it call the init and also it not trigger register...3den... only the attrs...changed... test it for yourself look at tje ZEI like i provide

ookexoo added a comment.EditedFri, Dec 7, 12:53 AM

Ok, that's curious, since our effect modules in Achilles, which follow the syntax used in the smoke module, still work fine when placed in Eden and we are using "registeredToWorld3DEN" for Eden and "init" for Zeus/mission start. Gonna have a look if I got time. Unfortunately, got some other issues with spawning modules on the fly with scripts, but that is unrelated to this issue...

Nvm, logging revealed you are completely right. It's "attributesChanged3DEN" that gets triggered, "registeredToWorld3DEN" is for redos in the history instead. You may want to add "registeredToWorld3DEN" to ZEI to handle redos in history, since in that case "attributesChanged3DEN" does not get triggered.