Page MenuHomeFeedback Tracker

Exiting splendid cam while running an external .sqf script freezes (and crashes) game
Acknowledged, WishlistPublic

Description

When running Arma 3 in the built in editor, if you enter the splendid camera while an external .sqf script is running, when you attempt to exit the game, no dialogue box will come up confirming for you to close if time acceleration is 0. Once you change the time acceleration to anything but 0, the dialogue box will appear prompting you to exit splendid cam or cancel. If you click cancel after the script finishes (if its not on an infinite while loop (http://en.wikipedia.org/wiki/Infinite_loop)), it will allow you back into the camera (its frozen until then but makes the proper sound every time you press the cancel button). When you click Ok (to exit splendid camera) the same thing happens, but after grabbing lunch and coming back over an hour later, I had a dialogue window on my desktop saying Arma 3 stopped working. If you click the Ok button any time after the cancel button, it will result in the Ok bug rather than a chance at resuming splendid cam after a long wait.
There is a chance this is related to splendid cam stopping BIS_fnc_unitplay (http://feedback.arma3.com/view.php?id=15919)(link is for the dedicated server problem which is believed to be related to the splendid cam problem).

This has occured with my own external scripts (several so not just a bug in one script or mission), as well as while using the mission generator in MCC (MCC uses external scripts to compile the random missions as well as most other features it has), and rarely with ALiVE. Any mod that runs external scripts can cause this however, it is not limited to just these two.
Other occurance: http://forums.bistudio.com/showthread.php?155432-Arma-3-crash-freeze-exiting-splendid-camera
(that wasn't my report so I cant tell if the person was running an external script but the symptoms are similar)

Details

Legacy ID
1660355332
Severity
None
Resolution
Open
Reproducibility
Always
Category
Game Crash
Steps To Reproduce
    1. Open Arma 3 editor
    2. place a player on the map
    3. place Radio Alpha trigger on map ('Activation:' drop down and scroll to 'Radio Alpha')
    4. in that triggers 'On Act:' field type '0 = execVM "myScript.sqf";'
    5. save the mission (i.e. 'splendidCamTestMission')
    6. Alt tab out of Arma
    7. Open notepad or equivalent coding program
    8. type a script that will be active for a good deal of time(i.e. 'while {true} do { a = 10;};')
    9. save the script as 'myScript.sqf' in your mission file (i.e. C:/documents/Arma3/missions/splendidCamTestMission.altis)
  1. Alt tab back into Arma 3
  2. Click preview
  3. Press 0-0-1 to activate the Radio Alpha trigger
  4. Pause the game (escape)
  5. Click on the 'camera' button below the console (below the big text box, second row of buttons)
  6. mess around in splendid cam (not necessary)
  7. press escape to exit splendid cam
  8. if you are at time acceleration 0 then change it to another value (bottom bar in lower right corner)
  9. Click either 'cancel' or 'ok' and observe the results as described in the description part of this bug report
  10. Restart Arma3 (Either: Alt F4 or: control Alt Delete -> click task manager option -> click Arma 3 -> click end task button)
  11. Open your mission back in the editor
  12. Preview mission
  13. open splendid cam without activating the trigger
  14. Mess around in splendid cam (optional)
  15. Exit splendid cam (clicking either 'cancel' or 'ok' will have their normal intended effect)
Additional Information

This isn't a huge issue, but using splendid cam's aerial and thermal capabilities vastly speeds up a mission makers ability to test missions and see that AI and other objects are in position and behaving accordingly without moving the player.

There are a number of other issues that I have seen reported with external scripts and functions causing bugs when splendid cam is in use. (I would site sources, but just look around the feedback tracker and you will find a few) It is possible that splendid cam works in a non scheduled environment while the external scripts run in a scheduled environment. When splendid cam opens the exit dialog box it could relegate splendid cams thread(s) to a lower priority than external scripts preventing it from getting any time on the processor. This would cause all your input to 'cancel' or 'proceed with exiting' to effectively fall on deaf ears as the data is collected, but the processor never gets a chance to process it. In other bugs it could be the opposite happening, where splendid cam gets too much priority, or other thread priority problems. This seems likely from my understanding of threading with scheduled and non scheduled code (internal scripts versus external scripts). (source: http://killzonekid.com/arma-scripting-tutorials-code-performance/)

The Steps to Reproduce section is written so that those with no coding experience can reproduce it. Experienced modders, coders and BI developers, hopefully you understand.

Event Timeline

jshear95 edited Additional Information. (Show Details)
jshear95 set Category to Game Crash.
jshear95 set Reproducibility to Always.
jshear95 set Severity to None.
jshear95 set Resolution to Open.
jshear95 set Legacy ID to 1660355332.May 7 2016, 6:48 PM