PMC websites shut down October 13th 2025 unless yearly web hosting fees are paid. Please Support PMC to help keep these websites online.

Enjoyed or found this pages content useful, please Support PMC to help me keep this web page online beyond october 13th 2025 when yearly web hosting fees are due.

User Tools

Site Tools


arma:missions:cutscene_tutorial

Differences

This shows you the differences between two versions of the page.


Previous revision
arma:missions:cutscene_tutorial [2024/08/01 08:18] (current) – links added. snakeman
Line 1: Line 1:
 +====== ArmA 1 Cutscene Tutorial ======
 +
 +[[https://www.pmctactical.org/forum/viewforum.php?f=42|ArmA 1 Forum]], [[:arma|ArmA 1 Home]], [[arma:config|ArmA 1 Config]], [[arma:tools|ArmA 1 Tools]], [[arma:file_formats|ArmA 1 File Formats]], [[arma:missions|ArmA 1 Missions]], [[arma:modeling|ArmA 1 3D Modeling]], [[arma:terrain|ArmA 1 Terrain]], [[arma:texturing|ArmA 1 Texturing]], [[arma:scripting|ArmA 1 Scripting]]
 +
 +**ArmA 1** aka Armed Assault (ArmA)
 +
 +You can and should use SQF for camera scripts also, like this:
 +<code cpp>
 +// camera basic initialization
 +_camera = "camera" camCreate [0,0,0];
 +_camera cameraEffect ["internal","back"];
 +
 +[]; execVM "PMC\PMC_ArmA_Default_Music.sqf";
 +
 +// start
 +_camera camPrepareFOV 0.700;
 +_camera camCommitPrepared 0;
 +waitUntil { camCommitted _camera; };
 +sleep 3;
 +
 +titleText ["", "plain down", 3];;;
 +
 +titleText ["", "plain down", 2];
 +titleCut ["", "black out", 3];
 +3 fademusic 0;
 +sleep 4;
 +
 +// Destroy the camera
 +camDestroy _camera;
 +
 +// end the intro
 +endcut = true;
 +</code>
 +Note that the above is just a example, its not working script in itself.
 +
 +
 +====== Making SP Cutscene ======
 +
 +Making a single player (SP) cutscene. Mission editor, choose Intro from the drop down.
 +
 +Place soldier and make it player.
 +
 +Place trigger, END#1 and put on condition line: endcut
 +
 +On the mission / cutscene dir, make a script file called: movie.sqf
 +
 +Place a gamelogic where you want to start your first camera run, and put on its init line this:
 +<code cpp>
 +this exec "camera.sqs";
 +</code>
 +
 +Preview mission and camera is activated on the gamelogic's position.
 +
 +Now with the default ArmA key configuration settings you can move the camera by using mouse, A S D W Q and Z keys. Camera rotates from the keypad numbers 4 left, 6 right, 8 tilt down, 2 tilt up etc. Most importantly every time you press FIRE button on your mouse, a clipboard.txt file in ArmA profiles directory root is updated with the camera settings for this particular viewpoint.
 +
 +Do all your camera viewpoint savings like this, when you are done, press either ESC -> Abort, or V to exit camera and then ESC -> Abort to abort the cutscene/mission.
 +
 +Open the clipboard.txt file in your ArmA profiles dir, copy paste the contents into your movie.sqf file, perhaps it might look something likes this now:
 +<code cpp>
 +
 +// camera basic initialization
 +_camera = "camera" camCreate [0,0,0];
 +_camera cameraEffect ["internal","back"];
 +
 +[] execVM "PMC\PMC_ArmA_Default_Music.sqf";
 +
 +// start
 +_camera camPrepareTarget [-89221.44,12628.88,-17693.45];
 +_camera camPreparePos [8883.85,4817.06,2.84];
 +_camera camPrepareFOV 0.700;
 +_camera camCommitPrepared 0;
 +waitUntil { camCommitted _camera; };
 +sleep 3;
 +
 +titleText ["Special Forces are waiting on the shore for regular infantry to arrive.", "plain down", 3];
 +
 +sleep 2;
 +
 +// pan 1
 +_camera camPrepareTarget [-41745.95,91052.38,309.53];
 +_camera camPreparePos [8883.85,4817.06,2.84];
 +_camera camCommitPrepared 10;
 +waitUntil { camCommitted _camera; };
 +// pan 2
 +_camera camPrepareTarget [-41745.95,91052.38,309.75];
 +_camera camPreparePos [8883.85,4817.06,2.84];
 +_camera camPrepareFOV 0.120;
 +_camera camCommitPrepared 10;
 +waitUntil { camCommitted _camera; };
 +sleep 3;
 +
 +// pan other side start
 +_camera camPrepareTarget [2127.08,-94323.03,-5927.63];
 +_camera camPreparePos [8662.31,5286.23,2.00];
 +_camera camPrepareFOV 0.700;
 +_camera camCommitPrepared 0;
 +waitUntil { camCommitted _camera; };
 +sleep 3;
 +
 +// pan 1
 +_camera camPrepareTarget [73720.75,-69923.09,-10517.73];
 +_camera camPreparePos [8662.31,5286.23,12.08];
 +_camera camCommitPrepared 10;
 +waitUntil { camCommitted _camera; };
 +// pan 2
 +_camera camPrepareTarget [68009.46,-75128.52,-3350.77];
 +_camera camPreparePos [8662.31,5286.23,12.08];
 +_camera camPrepareFOV 0.233;
 +_camera camCommitPrepared 10;
 +waitUntil { camCommitted _camera; };
 +sleep 5;
 +
 +titleText ["", "plain down", 2];
 +titleCut ["", "black out", 3];
 +3 fademusic 0;
 +sleep 4;
 +
 +// Destroy the camera
 +camDestroy _camera;
 +
 +// end the intro
 +endcut = true;
 +</code>
 +Remember to save movie.sqf script file.
 +
 +Now go back to the mission editor and to you player character, on its init line put
 +<code cpp>
 +this = [] execVM "movie.sqf";
 +</code>
 +
 +Preview mission and your finished cutscene :)