pasmon79 Posted April 3, 2021 Share Posted April 3, 2021 I decided to test if missions are offered in Joinable Enclave after rejecting the offer. I added <Action ActionFlags="Repeats" ActionId="AddRandomFavor_Sandbox" ActionType="Action.Passive" ExecuteTimeStandard="2m" OutputDelayTime="0.0" PauseWhenOffline="">after removing the command that keeps checking the enclave for removal after the joining. No enclave mission appears after 2m, I attempted changing "Repeats" with "Repeats, Wait for NoMission", but nothing appears. What i am doing wrong here? Link to comment Share on other sites More sharing options...
qmjs Posted April 4, 2021 Share Posted April 4, 2021 Each enclave can have only one active mission. The only mission they have, assigned immediately, is <Action ActionFlags="WaitForNoMission" ActionId="AddMission (init)" ActionType="Action.Passive" ExecuteTimeStandard="0.0" OutputDelayTime="0.0" PauseWhenOffline="True"> <RTSActionIcon Name="" Id="" /> <NameText Flags="" Notes="" Text="" /> <Actors /> <Alts /> <Effects /> <Inputs /> <Outputs> <Mission_Create CreatedEventTrigger="" KeepTrying="" Mission="encJoinEscort" RtsDataAbort="" RtsDataDecline="" RtsDataSuccess="" TargetEnclave="" UseEnclaveStats="" /> </Outputs> </Action> Unless you wanted them to not be able to be recruited, they won't be able to offer other missions. Link to comment Share on other sites More sharing options...
pasmon79 Posted April 4, 2021 Author Share Posted April 4, 2021 If they are assigned the escort mission then why don't i receive join request each day even after rejection. It seems that the mission is stuck in some kind of error loop but strangely there is no conditional statement in <Input>. Link to comment Share on other sites More sharing options...
qmjs Posted April 4, 2021 Share Posted April 4, 2021 (edited) Until you visit them, they will just periodically say on the radio "Given any thought to our offer yet?" Once you do visit, if you decline to have them join, they will eventually just disappear. I think the easiest way to achieve what you want is to change the ActionId="Breakup (Timer)" Instead of them disbanding, change the state to friendly again, <ChangeState ActorIndex="" Silent="false" State="Friendly" />, and lower trust a bit so they don't immediately change back to the Join state (not too low or they will drop to a lower state). They will give normal missions for a while, and eventually gain trust and allow you to recruit, and if you decline again, they go back to friendly... they should always stay on the map and you will still get the option to recruit them later if you need more people. Edited April 4, 2021 by qmjs Link to comment Share on other sites More sharing options...
pasmon79 Posted April 4, 2021 Author Share Posted April 4, 2021 (edited) Well I am talking about the enclaves that remain till the start of new level, after the maximum NPC count for a certain level expires in "YOSE Breakdown". For these enclaves the "Breakdown(Timer)" does absolutely nothing(as the maximum trust remains) and they are static i.e, neither offering mission nor collapsing. Edited April 4, 2021 by pasmon79 Link to comment Share on other sites More sharing options...
qmjs Posted April 4, 2021 Share Posted April 4, 2021 Yes, follow what I said above, but I need to expand upon "lower trust a bit". In the missions, for each one in the mission bucket, add a trust loss line so it is below 100, and the breakup timer is then active. Or you could add an alt to the breakup timer that lowers it a bit every day, and that would allow some to disband, and others to drop back to friendly. Link to comment Share on other sites More sharing options...
pasmon79 Posted April 4, 2021 Author Share Posted April 4, 2021 (edited) Well, it worked but I still wonder why does the "Joining" State does not allow me to offer missions other than "escort", even after I removed "escort" mission from the state. I noted further that setting the Action ID other than "Breakup (Timer)" does not work(Why?). Thanks a lot for your great suggestions. Edited April 4, 2021 by pasmon79 Link to comment Share on other sites More sharing options...
qmjs Posted April 5, 2021 Share Posted April 5, 2021 If you were testing using an existing enclave in the Join state, it is because the mission will be locked in to the save because of the PauseWhenOffline="True" in ActionId="AddMission (init)". That makes it persist across save/load events. For the Breakup timer, it is probably because of the ExecuteTimeStandard="1d" making it take a long time to check the event again. Link to comment Share on other sites More sharing options...
pasmon79 Posted April 5, 2021 Author Share Posted April 5, 2021 From my experience in modification of the enclave.xml that involves a lot of testing and crashes, it appears that the entire "state"(Both of NPC and Home Encalve) is persistent across save files once loaded irrespective of "PauseWhenOffline=True", which in my opinion means something else altogether. I have tested this by adding a new action that prints message after each 1s. Nothing appeared when previous save loaded. But when i add the same code under an already defined "Action", the code works. Link to comment Share on other sites More sharing options...
qmjs Posted April 5, 2021 Share Posted April 5, 2021 Technically, the pause when offline means that the timers related to the mission don't count time spent offline, but in effect it keeps missions active that would otherwise timeout or expire. Link to comment Share on other sites More sharing options...
Recommended Posts