Search the Community
Showing results for tags 'events'.
-
Hello DCS pilots! Recently we've added events system to VIRPIL Controls Servers and we'll be running some events (currently duel events) on regular basis. You can check the upcoming events for the duel server here. Feel free to register for any event that you might like (the sign up required) or just do some ranked duels if there is no event active (sign up is not mandatory in this case). If you have any questions on how the server works you can refer to the briefing, duel server faq or feel free to ask me - I'll be glad to answer! If you have any feedback or suggestions or willing to host your own themed event also please feel free to reach me out. Have fun!
- 10 replies
-
- 1
-
-
- multiplayer
- duel
-
(and 2 more)
Tagged with:
-
Join CVW-5: The Navy's Elite Digital Combat Simulator Group! Are you ready to take your virtual flying skills to the next level? CVW-5 is seeking dedicated pilots and crew members to join our ranks in the world of digital combat simulation. Whether you're a seasoned veteran or new to the simulator scene, we want you! Why Join CVW-5? Team-Based Operations: Experience the thrill of coordinated missions with a supportive community. Advanced Training: Receive top-notch training from experienced instructors to sharpen your skills. Realistic Simulations: Engage in realistic scenarios that mirror actual naval operations. Competitive Environment: Test your skills in friendly competitions and events. Flexible Participation: 50% attendance, life comes first, if you have to step away we understand What We’re Looking For: Passion for aviation and digital combat simulations. A team-oriented mindset and a willingness to learn. Basic knowledge of flight operations and tactical procedures (training provided). A commitment to teamwork and communication. Whats needed: F-18, F-14 , super carrier and base knowledge of jet and boat ops. Maps needed Syria How to Apply: Ready to soar with us? Visit https://discord.gg/cvw5. We can’t wait to welcome you aboard! Time and days: 8pm PST(11pm EST) start time, Every Tuesday and Thursday. At the moment we are recruiting for the F-18C Experience the thrill of the skies—join CVW-5 today!
- 18 replies
-
- dynamic mission
- navy flight ops
-
(and 4 more)
Tagged with:
-
Title, having an event you can use to see if a flare was dropped to see if it was within a radius of a convoy to get them to turn away (Show of force), have a SAM operator count chaff before shooting another missile etc. etc. opens a lot of scenarios and use cases if this was added. This is something people would like, reference this post.
-
Hello. A while ago, when a client selected a hot start module, heli or plane. That triggered engine start and birth, now it only trigger birth event. Is there any alternative to that? I would like to present the player with a welcome message but only when the engine is started, if I select the message to trigger upon engine start, it will not trigger if the engine is already started.
-
Hello DCS Players, My Names Moose and my friends and i have been working on a little project we call ALLIED COMMAND. Basically we mixed Board Game rules into DCS using it as the board / battlefield for WWII Assets. Here is a Little Trailer Video we have produced to show a bit about what it is. A rules sheet has been developed. SYNOPSIS: Players are given a map (Caucasus) doctored up to look like Europe (This map was selected to the bar for entry would be low). Players are given army groups of different types which they must decide where to deploy on the map. Much like Axis and Allies. Once the battlefield has been determined the mission is created and the battle will be fought. Once the outcome has been decided then the post battle assessment is done and the next turn is started. Here is a link to the video. ALLIED COMMAND VIDEO Here is the link to the SILVER BEARDS Discord for if you have any questions or would like to get involved in the Mission. https://discord.gg/Xzkq2PXV We intend for these missions to be conducted in a Mil-Sim environment where we create flights of WWII aircraft and reach out to destroy the enemy armies on the ground before they can destroy ours. PVE at first. 2 - Lives limit exist for each player per battle played. (Meaning if you do not successfully punch-out or belly land 2x) you will become a spectator for the remainder of the round. Best of luck flying and hope to see some of your inquiries.
-
It's long been known that this trigger is unreliable or dysfunctional for most applications. There has been comments made that this maybe be a placeholder or has some 'unknown' workings. However, it's exposed in the DCS Scripting Engine API. Therefore it SHOULD be documented and fully working. As it's the ONLY possible event trigger relating to units/groups ENTERING or LEAVING a trigger zone, this is a truly crucial and valuable event to hook into. Kindly, like the 'menuItemsForUnits' and the broken ' S_EVENT_PLAYER_ENTER_UNIT for MP Dedicated servers, consider this an urgent fix that would enable a huge amount of efficiency and power to the scripting engine and functionality for all mission designers.
-
Don't know when this happened, but I think it's very recent, but the event is no longer firing for either player aircraft skill level set to PLAYER or set to CLIENT. Attached are two missions using the same script (one for Single Player one for CLIENT/MP) If you look at the dcs.log you'll see that the event never fires. SinglePlayerSpawn.mizClientPlayerSpawn.miz Here's the script, it's loaded in each mission file by the DO SCRIPT command: MSB = { ["Version"] = "1.0.0" } function MSB:onEvent(event) env.info("MSB:onEvent Handler ENTERED", false) if event.id == world.event.S_EVENT_SHOT then env.info("MSB/OnEvent: ******* S_EVENT_SHOT *******", false) elseif event.id == world.event.S_EVENT_HIT then env.info("MSB/OnEvent: ******* S_EVENT_HIT *******", false) elseif event.id == world.event.S_EVENT_TAKEOFF then env.info("MSB/OnEvent: *******************************", false) env.info("MSB/OnEvent: ******* S_EVENT_TAKEOFF *******", false) env.info("MSB/OnEvent: *******************************", false) elseif event.id == world.event.S_EVENT_LAND then -- TODO env.info("MSB/OnEvent: ****************************", false) env.info("MSB/OnEvent: ******* S_EVENT_LAND *******", false) env.info("MSB/OnEvent: ****************************", false) elseif event.id == world.event.S_EVENT_CRASH then env.info("MSB/OnEvent: ******* S_EVENT_CRASH *******", false) elseif event.id == world.event.S_EVENT_EJECTION then -- TODO env.info("MSB/OnEvent: ********************************", false) env.info("MSB/OnEvent: ******* S_EVENT_EJECTION *******", false) env.info("MSB/OnEvent: ********************************", false) elseif event.id == world.event.S_EVENT_REFUELING then env.info("MSB/OnEvent: ******* S_EVENT_REFUELING *******", false) elseif event.id == world.event.S_EVENT_DEAD then env.info("MSB/OnEvent: ****************************", false) env.info("MSB/OnEvent: ******* S_EVENT_DEAD *******", false) env.info("MSB/OnEvent: ****************************", false) elseif event.id == world.event.S_EVENT_PILOT_DEAD then env.info("MSB/OnEvent: **********************************", false) env.info("MSB/OnEvent: ******* S_EVENT_PILOT_DEAD *******", false) env.info("MSB/OnEvent: **********************************", false) elseif event.id == world.event.S_EVENT_BASE_CAPTURED then env.info("MSB/OnEvent: ******* S_EVENT_BASE_CAPTURED *******", false) elseif event.id == world.event.S_EVENT_MISSION_START then env.info("MSB/OnEvent: *************************************", false) env.info("MSB/OnEvent: ******* S_EVENT_MISSION_START *******", false) env.info("MSB/OnEvent: *************************************", false) elseif event.id == world.event.S_EVENT_MISSION_END then env.info("MSB/OnEvent: ******* S_EVENT_MISSION_END *******", false) elseif event.id == world.event.S_EVENT_TOOK_CONTROL then env.info("MSB/OnEvent: ******* S_EVENT_TOOK_CONTROL *******", false) elseif event.id == world.event.S_EVENT_REFUELING_STOP then env.info("MSB/OnEvent: ******* S_EVENT_REFUELING_STOP *******", false) elseif event.id == world.event.S_EVENT_BIRTH then env.info("MSB/OnEvent: *****************************", false) env.info("MSB/OnEvent: ******* S_EVENT_BIRTH *******", false) env.info("MSB/OnEvent: *****************************", false) elseif event.id == world.event.S_EVENT_HUMAN_FAILURE then env.info("MSB/OnEvent: ******* S_EVENT_HUMAN_FAILURE *******", false) elseif event.id == world.event.S_EVENT_DETAILED_FAILURE then env.info("MSB/OnEvent: ******* S_EVENT_DETAILED_FAILURE *******", false) elseif event.id == world.event.S_EVENT_ENGINE_STARTUP then env.info("MSB/OnEvent: ******* S_EVENT_ENGINE_STARTUP *******", false) elseif event.id == world.event.S_EVENT_ENGINE_SHUTDOWN then env.info("MSB/OnEvent: ******* S_EVENT_ENGINE_SHUTDOWN *******", false) elseif event.id == world.event.S_EVENT_PLAYER_ENTER_UNIT then -- DOESN'T WORK FOR MP AND 'NEVER WILL' /FFS env.info("MSB/OnEvent: *****************************************", false) env.info("MSB/OnEvent: ******* S_EVENT_PLAYER_ENTER_UNIT *******", false) env.info("MSB/OnEvent: *****************************************", false) elseif event.id == world.event.S_EVENT_PLAYER_LEAVE_UNIT then env.info("MSB/OnEvent: ******* S_EVENT_PLAYER_LEAVE_UNIT *******", false) elseif event.id == world.event.S_EVENT_PLAYER_COMMENT then env.info("MSB/OnEvent: ******* S_EVENT_PLAYER_COMMENT *******", false) elseif event.id == world.event.S_EVENT_SHOOTING_START then env.info("MSB/OnEvent: **************************************", false) env.info("MSB/OnEvent: ******* S_EVENT_SHOOTING_START *******", false) env.info("MSB/OnEvent: **************************************", false) elseif event.id == world.event.S_EVENT_SHOOTING_END then env.info("MSB/OnEvent: ******* S_EVENT_SHOOTING_END *******", false) elseif event.id == world.event.S_EVENT_MARK_ADDED then env.info("MSB/OnEvent: ******* S_EVENT_MARK_ADDED *******", false) elseif event.id == world.event.S_EVENT_MARK_CHANGE then env.info("MSB/OnEvent: ******* S_EVENT_MARK_CHANGE *******", false) elseif event.id == world.event.S_EVENT_MARK_REMOVED then env.info("MSB/OnEvent: ******* S_EVENT_MARK_REMOVED *******", false) elseif event.id == world.event.S_EVENT_KILL then env.info("MSB/OnEvent: ******* S_EVENT_KILL *******", false) elseif event.id == world.event.S_EVENT_SCORE then env.info("MSB/OnEvent: ******* S_EVENT_SCORE *******", false) elseif event.id == world.event.S_EVENT_UNIT_LOST then env.info("MSB/OnEvent: ******* S_EVENT_UNIT_LOST *******", false) elseif event.id == world.event.S_EVENT_LANDING_AFTER_EJECTION then env.info("MSB/OnEvent: ******* S_EVENT_LANDING_AFTER_EJECTION *******", false) elseif event.id == world.event.S_EVENT_PARATROOPER_LENDING then env.info("MSB/OnEvent: ******* S_EVENT_PARATROOPER_LENDING *******", false) elseif event.id == world.event.S_EVENT_DISCARD_CHAIR_AFTER_EJECTION then env.info("MSB/OnEvent: ******* S_EVENT_DISCARD_CHAIR_AFTER_EJECTION *******", false) elseif event.id == world.event.S_EVENT_WEAPON_ADD then env.info("MSB/OnEvent: ******* S_EVENT_WEAPON_ADD *******", false) elseif event.id == world.event.S_EVENT_TRIGGER_ZONE then env.info("MSB/OnEvent: *****************************************", false) env.info("MSB/OnEvent: ******** S_EVENT_TRIGGER_ZONE *******", false) env.info("MSB/OnEvent: *** S_EVENT_TRIGGER_ZONE ***", false) env.info("MSB/OnEvent: ******** S_EVENT_TRIGGER_ZONE *******", false) env.info("MSB/OnEvent: *****************************************", false) elseif event.id == world.event.S_EVENT_LANDING_QUALITY_MARK then env.info("MSB/OnEvent: ******* S_EVENT_LANDING_QUALITY_MARK *******", false) elseif event.id == world.event.S_EVENT_BDA then env.info("MSB/OnEvent: ******* S_EVENT_BDA *******", false) elseif event.id == world.event.S_EVENT_AI_ABORT_MISSION then env.info("MSB/OnEvent: ******* S_EVENT_AI_ABORT_MISSION *******", false) elseif event.id == world.event.S_EVENT_DAYNIGHT then env.info("MSB/OnEvent: ******* S_EVENT_DAYNIGHT *******", false) elseif event.id == world.event.S_EVENT_FLIGHT_TIME then env.info("MSB/OnEvent: ******* S_EVENT_FLIGHT_TIME *******", false) elseif event.id == world.event.S_EVENT_PLAYER_SELF_KILL_PILOT then env.info("MSB/OnEvent: ******* S_EVENT_PLAYER_SELF_KILL_PILOT *******", false) elseif event.id == world.event.S_EVENT_PLAYER_CAPTURE_AIRFIELD then env.info("MSB/OnEvent: ******* S_EVENT_PLAYER_CAPTURE_AIRFIELD *******", false) elseif event.id == world.event.S_EVENT_EMERGENCY_LANDING then env.info("MSB/OnEvent: ******* S_EVENT_EMERGENCY_LANDING *******", false) elseif event.id == world.event.S_EVENT_UNIT_CREATE_TASK then env.info("MSB/OnEvent: ******* S_EVENT_UNIT_CREATE_TASK *******", false) elseif event.id == world.event.S_EVENT_UNIT_DELETE_TASK then env.info("MSB/OnEvent: ******* S_EVENT_UNIT_DELETE_TASK *******", false) elseif event.id == world.event.S_EVENT_SIMULATION_START then env.info("MSB/OnEvent: ****************************************", false) env.info("MSB/OnEvent: ******* S_EVENT_SIMULATION_START *******", false) env.info("MSB/OnEvent: ****************************************", false) elseif event.id == world.event.S_EVENT_WEAPON_REARM then env.info("MSB/OnEvent: ******* S_EVENT_WEAPON_REARM *******", false) elseif event.id == world.event.S_EVENT_WEAPON_DROP then env.info("MSB/OnEvent: ******* S_EVENT_WEAPON_DROP *******", false) elseif event.id == world.event.S_EVENT_UNIT_TASK_TIMEOUT then env.info("MSB/OnEvent: ******* S_EVENT_UNIT_TASK_TIMEOUT *******", false) elseif event.id == world.event.S_EVENT_UNIT_TASK_STAGE then env.info("MSB/OnEvent: ******* S_EVENT_UNIT_TASK_STAGE *******", false) elseif event.id == world.event.S_EVENT_MAC_SUBTASK_SCORE then env.info("MSB/OnEvent: ******* S_EVENT_MAC_SUBTASK_SCORE *******", false) elseif event.id == world.event.S_EVENT_MISSION_RESTART then env.info("MSB/OnEvent: ******* S_EVENT_MISSION_RESTART *******", false) elseif event.id == world.event.S_EVENT_MISSION_WINNER then env.info("MSB/OnEvent: ******* S_EVENT_MISSION_WINNER *******", false) elseif event.id == world.event.S_EVENT_POSTPONED_TAKEOFF then env.info("MSB/OnEvent: ******* S_EVENT_POSTPONED_TAKEOFF *******", false) elseif event.id == world.event.S_EVENT_POSTPONED_LAND then env.info("MSB/OnEvent: ******* S_EVENT_POSTPONED_LAND *******", false) elseif event.id == world.event.S_EVENT_MAX then env.info("MSB/OnEvent: ******* S_EVENT_MAX *******", false) end end function MSB.Initialise() world.addEventHandler(MSB) env.info("MSB LOADED", false) end MSB.Initialise()
-
Dear Everyone We are proud to invite you all to join our upcoming event in the next ten days to commemorate Aerospace Day and celebrate the 78th anniversary of the Indonesian Air Force. The event is "10 DAYS WAR - Operation Desert Fury" and you can find the guidelines here Guide Here There are 2 Official DCS Modules awaiting you, featuring the best PVP and Ground Attack categories. These parameters will be calculated using the DCS Bot. Let's invite your friends along and make this event a memorable one! Sincerely!
- 4 replies
-
- pvp
- dynamic campaign
-
(and 1 more)
Tagged with:
-
I have the following events handled (amongst all the others) S_EVENT_PLAYER_ENTER_UNIT S_EVENT_PLAYER_LEAVE_UNIT When I enter the F14, I see a S_EVENT_BIRTH followed by a S_EVENT_PLAYER_ENTER_UNIT. Then I ask my RIO to join in, I get the on-screen allow someone to join dialog (would be nice if this could have a keybinding as finding the mouse pointer esp in VR is a pita) and then I click allow... After a few seconds I get the blue banner saying my RIO has joined, and he confirms he's in the back. Yet NO events fire. Nothing. But when he jumps out, I get the expected S_EVENT_PLAYER_LEAVE_UNIT to fire. Obviously I can't give you a track or anything because you need two people and a multi-crew aircraft to do this, but it's a simple test. Without the S_EVENT_PLAYER_ENTER_UNIT event firing then it's impossible for my Player Manager to work out that they are a backseater and set things up accordingly.
- 5 replies
-
- scripting engine
- events
-
(and 3 more)
Tagged with:
-
Assuming that nothing in the Mission Editor has been setup i.e. naming the Pilot something with 'RIO' in their playerName etc. Is it even possible from when they just into the back seat to know that they aren't the pilot from an onBirth or onEnterUnit event - obviously this is in MP or even dedicated server environment.
-
2024-03-15 15:03:25.614 INFO TLC (Main): onEvent ENTERED 2024-03-15 15:03:25.614 INFO TLC (Main): ******* S_EVENT_PLAYER_LEAVE_UNIT ******* 2024-03-15 15:03:25.615 INFO TLC (Main): onEvent ENTERED 2024-03-15 15:03:25.615 INFO TLC (Main): ******* S_EVENT_PLAYER_LEAVE_UNIT ******* Can anyone else confirm this bug?
-
Surely it should trigger S_EVENT_BIRTH or S_EVENT_PLAYER_ENTER_UNIT or even S_EVENT_TOOK_CONTROL? When did this break/change? This is just running a single player mission on my own PC - NO SERVER or MULTIPLAYER is involved. I'm SURE this used to be working a year ago, right?
-
As title says. Too many times interesting and dynamic missions are impossible to create because key events, or architecture is crippled, especially for Multiplayer. Multiplayer Paid Campaigns would be a wonderful addition to DCS but until the architecture is unified and expanded such things are virtually impossible. We need to be able to have better (or any) debugging tools for individual mission/campaign creators to be able to build complex multiplayer missions on their own and know that everything - from detecting radio frequency settings PER UNIT is shared from all clients to the server, from being able to add/remove F10 Radio Menu options PER UNIT, to knowing when a client joins as a backseater and to what unit etc etc etc.
-
- 3
-
-
- mission editor
- scripting
- (and 4 more)
-
Aircraft kills are now being counted twice. AI to AI, player to AI, AI to player doesn't seem to matter. Haven't tried player to player or as client. S_EVENT_Kill event handler is activated twice for each kill. In the attached screen shot you can see the DCS score shows each aircraft kill twice and the text messages, activated by a scripted kill event handler, show 6 aircraft kills despite only 3 actually being killed. Ground and sea units are not affected and are only counted once.
-
Today's change (DCS 2.9.7.58923) somehow affected the Dead Event Handler. Map buildings assigned as zones using the "assign as" feature are no longer being detected when dead/destroyed. The script shown below still works fine for everything except the two munitions buildings. Any ideas @BIGNEWY? Log Error: 2024-08-10 15:26:47.848 ERROR SCRIPTING (Main): Mission script error: [string "C:\Users\chiph\AppData\Local\Temp\DCS.openbeta\/~mis000044A6.lua"]:805: attempt to call method 'getName' (a nil value) stack traceback: [C]: in function 'getName' [string "C:\Users\chiph\AppData\Local\Temp\DCS.openbeta\/~mis000044A6.lua"]:805: in function 'onEvent' [string "Scripts/World/EventHandlers.lua"]:13: in function <[string "Scripts/World/EventHandlers.lua"]:11> Script: DeadUnitHandler = {} function DeadUnitHandler:onEvent(Event) if Event.id == world.event.S_EVENT_DEAD then if Event.initiator then local DeadUnitName = Event.initiator:getName() -- this is line 805 in the mission script if ( string.find(DeadUnitName, "Bandar Abbas SA6 Launcher 1") or string.find(DeadUnitName, "Bandar Abbas SA6 Launcher 2") or string.find(DeadUnitName, "Bandar Abbas SA6 Launcher 3") or string.find(DeadUnitName, "Bandar Abbas SA6 Launcher 4") ) then DeadLauncherCount = DeadLauncherCount + 1 if ( DeadLauncherCount == 4 and SA6Dead == 0 ) then CPH_SA6Dead() else end elseif (string.find(DeadUnitName, "Bandar Abbas SA6 Radar") and SA6Dead == 0 ) then CPH_SA6Dead() elseif (string.find(DeadUnitName, "MV Baltic Cove") ) then GROUP:FindByName("Iran Attack Group 1"):OptionAllowJettisonWeaponsOnThreat() GROUP:FindByName("Iran Attack Group 2"):OptionAllowJettisonWeaponsOnThreat() GROUP:FindByName("Iran Fighter Escort"):OptionAllowJettisonWeaponsOnThreat() GROUP:FindByName("Iran Attack Boats"):CommandSwitchWayPoint( 1, 4 ) trigger.action.outText("MV Baltic Cove has been sunk!", 30) elseif (DeadUnitName == 163155054 ) then -- Munitions 1 Target AmmoDump1Hit = 1 AmmoDumpsDestroyed = AmmoDumpsDestroyed +1 trigger.action.setUserFlag('AmmoDump', AmmoDumpsDestroyed ) timer.scheduleFunction(CPH_Ammo_Dump_Secondary, nil, timer.getTime() + 20) elseif (DeadUnitName == 163154967 ) then -- Munitions 2 Target AmmoDump2Hit = 1 AmmoDumpsDestroyed = AmmoDumpsDestroyed +1 trigger.action.setUserFlag('AmmoDump', AmmoDumpsDestroyed ) timer.scheduleFunction(CPH_Ammo_Dump_Secondary, nil, timer.getTime() + 20) elseif (DeadUnitName == "Bandar Abbas Intl" ) then -- Detect Runway Destroyed RunwayDestroyed = 1 trigger.action.setUserFlag('RunwayDestroyed', 1 ) trigger.action.outTextForCoalition(2, "Bandar Abbas Runway Destroyed!!!", 30, true) CPH_Runway_Smoke() else end end end end world.addEventHandler(DeadUnitHandler)