Thunk Posted July 5, 2023 Posted July 5, 2023 In open beta 2.8.6.41363, the behavior of S_EVENT_REFUELING and S_EVENT_REFUELING_STOP have changed. Single player still behaves the same as prior builds, but multiplayer has changed significantly. In single player mode, when USER connects to TANKER, event S_EVENT_REFUELING fires. The event.initiator is the USER's unit. When the USER disconnects, event S_EVENT_REFUELING_STOP fires. That event.initiator is also the USER's unit. The behavior is the same for both single threaded and multi threaded clients. This is consistent behavior as observed in prior builds. Multi player used to work the same way. But in 2.8.6.41363 the online behavior has changed. Now, when a USER connects to TANKER, event S_EVENT_REFUELING fires but the event.initiator is the TANKER instead of the USER. Furthermore, when the USER disconnects two S_EVENT_REFUELING_STOP events fire. The first lists the TANKER as the event.initiator. The second lists the USER as the event.initiator. Prior to 2.8.6.41363, start and stop events with the USER as the initiator fired in both online and offline play. Now, without an event indicating when the USER initiated refueling, it's impossible to monitor (and grade) the duration of players' refueling attempts. Please re-institute an S_EVENT_REFUELING event with the USER as the initiator in the multiplayer environment, to be consistent with both offline play and prior builds. ----Attachments--- Here are the relevant lines from the log file. Note the first line shows refueling started with the S-3 as the initiator. Then there are two refueling stop events, one for the tanker and one for the hornet. Server track file is also attached. 2023-07-05 03:14:22.571 INFO Scripting (Main): event:initiator_unit_type=S-3B Tanker,type=refuel,initiator_object_id=16894209,initiator_ws_type1=1,t=178.416,initiator_coalition=2,initiatorMissionID=1768, 2023-07-05 03:14:22.571 INFO APP (Main): wcTanker::onEvent:6 2023-07-05 03:14:22.571 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2023-07-05 03:14:25.591 INFO APP (Main): wcTanker::onEvent:9 2023-07-05 03:14:25.591 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:5 2023-07-05 03:14:34.763 INFO APP (Main): wcTanker::onEvent:10 2023-07-05 03:14:34.763 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2023-07-05 03:14:34.763 INFO Scripting (Main): event:initiator_unit_type=S-3B Tanker,type=refuel stop,initiator_object_id=16894209,initiator_ws_type1=1,t=190.609,initiator_coalition=2,initiatorMissionID=1768, 2023-07-05 03:14:34.763 INFO APP (Main): wcTanker::onEvent:7 2023-07-05 03:14:34.763 INFO Scripting (Main): event:initiator_unit_type=FA-18C_hornet,type=refuel stop,initiatorPilotName=Thunk,initiator_coalition=2,initiator_ws_type1=1,t=190.609,initiator_object_id=16779010,initiatorMissionID=1767, server-20230704-211052.trk 1
OzDeaDMeaT Posted December 31, 2023 Posted December 31, 2023 Hi, I am not sure how long this has been a bug for but it appears that the S_EVENT_REFUELING event in DCS is not reporting the unit receiving the fuel. The documentation HERE appears to be missing quite a considerable amount of information regarding events but I have been able to find more information on other sources through the internet. The reason for my reporting the bug is due to the S_EVENT_REFUELING_STOP reporting the event for both the tanker AND the aircraft receiving fuel but the S_EVENT_REFUELING does not. Can you please fix this? Log evidence that the S_EVENT_REFUELING is not triggering for the refuelling aircraft. Spoiler 2023-12-30 17:52:45.600 INFO Scripting (Main): event:type=refuel,initiatorPilotName=KC135MPRS,t=1895.057,initiator_unit_type=KC135MPRS,initiator_object_id=16826881,linked_event_id=0,event_id=168,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=1002114, 2023-12-30 17:52:45.600 INFO APP (Main): wcTanker::onEvent:6 2023-12-30 17:53:26.866 INFO Scripting (Main): event:type=refuel stop,initiatorPilotName=KC135MPRS,t=1936.322,initiator_unit_type=KC135MPRS,initiator_object_id=16826881,linked_event_id=0,event_id=169,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=1002114, 2023-12-30 17:53:26.866 INFO APP (Main): wcTanker::onEvent:7 2023-12-30 17:53:26.866 INFO Scripting (Main): event:type=refuel stop,initiatorPilotName=OzDeaDMeaT,t=1936.322,initiator_unit_type=FA-18C_hornet,initiator_object_id=16777474,linked_event_id=0,event_id=170,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=102, 2023-12-30 17:53:26.866 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:1 Possible Enhancements to S_EVENT_REFUELING & S_EVENT_REFUELING_STOP Spoiler Also, if you are reviewing events with the DCS API, please consider the following 'upgrades' to the refuelling events 1. Make it a single event that reports both the tanker and the aircraft receiving fuel. 2. Add a refuelling duration for the S_EVENT_REFUELING_STOP as this information would be very useful for this event. Here is a possible data structure: world.event.S_EVENT_REFUELING = { id = 7, time = Time, initiator = Unit, --This would be the aircraft recieving fuel tanker = Unit, --This would be the tanker aircraft giving the fuel } world.event.S_EVENT_REFUELING_STOP = { id = 14, time = Time, initiator = Unit, --This would be the aircraft recieving fuel tanker = Unit, --This would be the tanker aircraft giving the fuel duration = Number --This would be the period (in seconds) that the refuelling aircraft and the tanker would be connected for } 2 CPU: i9-12900K @ 4.9Ghz M/B: MSI MEG z690 Ace RAM: 128GB Video Card: MSI RTX 4090 Suprim Liquid X VR: Varjo Aero
VonHoffnung Posted December 31, 2023 Posted December 31, 2023 Intriguing... 1 MSI Vector GP66 HX Laptop: i7-12800HX, 64GB Corsair Vengeance DDR5 4800MHz, NVidia 3070ti Max-Q, 2TB SSD+4TB SSD, 40" 60Hz 1080p TV, GrassMonkey Headtracker, VKB HOTAS (Gladiator NXT EVO & STECS Throttle) ~VonHoffnung~
Flappie Posted May 14, 2024 Posted May 14, 2024 Hi @OzDeaDMeaT. Can you please provide a .miz file showing this isssue? ---
OzDeaDMeaT Posted June 6, 2024 Posted June 6, 2024 hey @Flappie, I will try and get something together. Everything is typically spawned via the DCS API. I am better with the API than I am with the DCS Mission Editor. It was a multiplayer mission with both a S_EVENT_REFUELING & S_EVENT_REFUELING_STOP event handlers and was just dropping the table to the log or to a file to take a look at. If you have some time I can show you what I have. I can get you some access to logs and stuff on the fly as well if you want. CPU: i9-12900K @ 4.9Ghz M/B: MSI MEG z690 Ace RAM: 128GB Video Card: MSI RTX 4090 Suprim Liquid X VR: Varjo Aero
orbir Posted September 27, 2024 Posted September 27, 2024 Here is a mission that replicates the issue for me. Tested with following 3 different runs: Single player => Everything seems normal. Event fire as expected, with correct initiator (i.e. F-14A) "Launch Multiplayer Server" => Events fire as expected but the tanker starts at ramp rather than on runway although set runway start in ME. Standalone server Refuel events fire with the wrong initiator (tanker vs F-14A) Only if I refuel to full a refuel stop event is triggered with a F-14A initiator. Tanker starts at ramp even though ME is set to start on runway Only one basket is extended when on pre-contact. I don't know whether it is a problem, just different than previous 2 runs. The correct messages should read "[REFUEL TEST] (Main): F-14A started refueling." or "[REFUEL TEST] (Main): F-14A stopped refueling." But as seen from the following partial log, standalone server reports the tanker as the initiator. 2024-09-27 02:40:00.803 INFO Scripting (Main): event:type=refuel,initiatorPilotName=KC135MPRS,t=1028.179,initiator_unit_type=KC135MPRS,initiator_object_id=16777473,linked_event_id=0,event_id=16,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=1, 2024-09-27 02:40:00.803 INFO APP (Main): wcTanker::onEvent:6 2024-09-27 02:40:00.803 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2024-09-27 02:40:00.803 INFO [REFUEL TEST] (Main): Shell 1-1 251 1Y started refueling. 2024-09-27 02:40:03.822 INFO APP (Main): wcTanker::onEvent:9 2024-09-27 02:40:03.822 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:5 2024-09-27 02:40:40.402 INFO APP (Main): wcTanker::onEvent:10 2024-09-27 02:40:40.402 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2024-09-27 02:40:40.402 INFO Scripting (Main): event:type=refuel stop,initiatorPilotName=KC135MPRS,t=1067.778,initiator_unit_type=KC135MPRS,initiator_object_id=16777473,linked_event_id=0,event_id=17,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=1, 2024-09-27 02:40:40.402 INFO APP (Main): wcTanker::onEvent:8 2024-09-27 02:40:40.402 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:3 2024-09-27 02:40:40.402 INFO [REFUEL TEST] (Main): Shell 1-1 251 1Y stopped refueling. 2024-09-27 02:42:11.139 INFO Scripting (Main): event:type=refuel,initiatorPilotName=KC135MPRS,t=1158.515,initiator_unit_type=KC135MPRS,initiator_object_id=16777473,linked_event_id=0,event_id=18,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=1, 2024-09-27 02:42:11.139 INFO APP (Main): wcTanker::onEvent:6 2024-09-27 02:42:11.139 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2024-09-27 02:42:11.140 INFO [REFUEL TEST] (Main): Shell 1-1 251 1Y started refueling. 2024-09-27 02:42:14.151 INFO APP (Main): wcTanker::onEvent:9 2024-09-27 02:42:14.151 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:5 2024-09-27 02:43:36.010 ERROR ASYNCNET (9332): HTTP request dcs:server:update failed with error 16: Error in the HTTP2 framing layer 2024-09-27 02:43:36.014 ERROR ASYNCNET (Main): Server update failed with code -16. The server will be unlisted. 2024-09-27 02:44:33.440 INFO APP (Main): wcTanker::onEvent:2 2024-09-27 02:44:33.440 INFO Scripting (Main): event:type=refuel stop,initiatorPilotName=Fluke,t=1300.816,initiator_unit_type=F-14A-135-GR,initiator_object_id=16777474,linked_event_id=0,event_id=19,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=2, 2024-09-27 02:44:33.440 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:1 2024-09-27 02:44:33.441 INFO [REFUEL TEST] (Main): F-14A stopped refueling. 2024-09-27 02:44:33.441 INFO EDCORE (Main): (wcTanker)enterToState_:1 nevada_refuel.miz 1 1
orbir Posted October 31, 2024 Posted October 31, 2024 Tested again with DCS 2.9.9.2280. Is there any other info required?
Flappie Posted December 21, 2024 Posted December 21, 2024 Sorry for the delay, I was not much active these last months. I've just tested your mission on a dedicated server with an AI F-14 (because I suck at AAR) and it worked as expected. Does the issue only affect clients? 2024-12-21 23:48:12.473 INFO ASYNCNET (Main): client[2] occupied unit instructor_blue_1 2024-12-21 23:50:00.991 INFO Scripting (Main): event:type=refuel,initiatorPilotName=F-14A-135-GR,t=172.58,initiator_unit_type=F-14A-135-GR,initiator_object_id=16777729,linked_event_id=0,event_id=12,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=2, 2024-12-21 23:50:00.991 INFO APP (Main): wcTanker::onEvent:6 2024-12-21 23:50:00.991 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2024-12-21 23:50:00.991 INFO [REFUEL TEST] (Main): F-14A started refueling. 2024-12-21 23:50:03.999 INFO APP (Main): wcTanker::onEvent:9 2024-12-21 23:50:03.999 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:5 2024-12-21 23:50:56.684 INFO Scripting (Main): event:type=refuel stop,initiatorPilotName=F-14A-135-GR,t=228.28,initiator_unit_type=F-14A-135-GR,initiator_object_id=16777729,linked_event_id=0,event_id=13,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=2, 2024-12-21 23:50:56.684 INFO APP (Main): wcTanker::onEvent:8 2024-12-21 23:50:56.684 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:3 2024-12-21 23:50:56.684 INFO [REFUEL TEST] (Main): F-14A stopped refueling. 2024-12-21 23:51:18.109 INFO Scripting (Main): event:type=refuel,initiatorPilotName=F-14A-135-GR,t=249.7,initiator_unit_type=F-14A-135-GR,initiator_object_id=16777729,linked_event_id=0,event_id=14,initiator_coalition=2,initiator_ws_type1=1,initiatorMissionID=2, 2024-12-21 23:51:18.109 INFO APP (Main): wcTanker::onEvent:6 2024-12-21 23:51:18.109 INFO EDCORE (Main): (wcTanker::Channel)enterToState_:4 2024-12-21 23:51:18.109 INFO [REFUEL TEST] (Main): F-14A started refueling. 2024-12-21 23:51:21.107 INFO APP (Main): wcTanker::onEvent:9 ---
orbir Posted December 23, 2024 Posted December 23, 2024 Yes it only affects clients. AI aircraft refuelling reported as expected.
Thunk Posted March 15 Author Posted March 15 (edited) It's working again in 2.9.13.6818. Wow! Edited March 19 by Thunk it was wrong
Thunk Posted March 19 Author Posted March 19 Correction, it is *not* working in 2.9.13.6818. At least not completely: Single player: refueling and refueling_stop events fire as expected Single player mode but launched in a MP server: refueling and refueling_stop events fire as expected Hosted on a multiplayer: refueling shows the tanker as the initiator, refueling_stop shows the player as the initiator. This still makes it impossible to see how long the user was connected to the tanker.
Thunk Posted March 23 Author Posted March 23 I'm probably just talking to myself here, but just for posterity, the pattern is: If an AI plane tanks, then the initiator of the REFUELING event is the AI unit. If a PLAYER plane tanks, then the initiator of the REFUELING event is the PLAYER unit. If a CLIENT plane tanks, then the initiator of the REFUELING even is the tanker unit, not the CLIENT unit, making it impossible to programmatically identify who is tanking.
Recommended Posts