[Log in / Register]
| News | Chat | Pastebin | Donations | Tutorials | Rules | Forums |
| Maps | Skins | Icons | Models | Spells | Tools | Jass | Packs | Hosted Projects | Starcraft II Modding | Starcraft II Resources | Galaxy Wiki |
(Keeps Hive Alive)
Go Back   The Hive Workshop > Warcraft III Modding > Map Development > Cinematics


Cinematics Cinematic is a specific type of map in which there is no gameplay; the player is merely a spectator watching a sort of movie in which the map author is the producer and narrator of the events. You'll find discussion threads for popular cinematic maps like CMarket's The Lone Panther here.

Reply
 
Thread Tools
Old 09-10-2007, 01:01 AM   #1 (permalink)
Forum Moderator PurgeandFire
ʕ•͡ᴥ•ʔ
 
PurgeandFire's Avatar
Resource & Tutorial Moderator
 
Join Date: Nov 2006
Posts: 3,528
PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)
Tips and Tricks for the Cinema

Tips 'n' Tricks for the Cinema

Introduction:

Welcome to the Tips 'n' Tricks thread. Here, you can find many tricks for creating cinematics.

Links:
Index:
How to make units fly


Simply using "Set Unit's Fly Height" won't do. The thing is, that the unit must have a "flying" movement type, otherwise it won't work. The only way to achieve this is to add the Storm Crow Form/Crow Form.

The Storm Crow Form adds the "flying" movement type to the unit. So that is the key.

This is what to do:

GUI:
Fly
Events
Conditions
Actions
Unit - Add Storm Crow Form to <UNIT>
Animation - Set <UNIT>'s Flying Height to <height> at <rate>
Unit - Remove Storm Crow Form from <UNIT>
----- Note that some of these actions might not be exact -----
This adds the Storm Crow Form, sets the unit's flying height, then it removes the Storm Crow Form, but still has the unit flying.

JASS:
Jass:
function Fly takes unit u, real height, real rate returns nothing
//Function
    call UnitAddAbility(u,'Arav')
//Adds the ability
    call SetUnitFlyHeight(u,height,rate)
//Sets the flying height
    call UnitRemoveAbility(u,'Arav')
//Then it removes the ability because it is not needed, adding/removing it once will suffice to give them the flying movement
endfunction
I believe 'Arav' is the raw code of the Storm Crow spell. I remember it because it is like 'A raven'. That is just easy to remember. You can also use 'Amrf', which is basically the same thing.

You can either use this code or inline it to fit your needs, which is faster but takes a little more lines of coding.

Remember, you only need to add/remove the ability once. You can easily get this auto-done with libraries such as:
AutoFly.



Black Interface


If you have watched some famous cinematics such as Creatures of the Knight, Cult of the Damned, and The Spirit of Vengeance, you'll realize that they have black borders that are used at least once. The borders make your cinematic look much better and look as if they are an actual cinematic. To do this, go to Advanced | Game Interface


Then click Use Custom Game Interface.


Scroll down and wait until you see at least one of these:
  • Image - Cinematic Border
  • Image - Console Background
  • Image - Game Menu Background
Click on each value, click "Use Custom Path", then type out or copy 'n' paste this text:
UI\Widgets\EscMenu\Human\blank-background.blp

If you don't want a black cinematic border, but instead something else such as the border used in "Shipwrecked 1 Revamped - by Med. Map Maker" (Or number 2, I forgot) you can replace only one of them with it. You can keep messing around with those three to see the effects and choose the one you like.





Cameras

This is simply a brief explanation of cameras, with a little more odd animations. For a better explanation, and example usage (and better animations), refer to:
Cameras.

Cameras are extremely important to cinematics. To create a camera, open the camera palette then click "Create Camera". If you do that, it should say something like "Camera 001". If you right-click it then click "Rename Camera", you can modify it to fit your needs. I will tell you what each field means below:

Camera Name:

Simply the name of the camera, try to make it relevant to what it is doing such as "Park Bench Camera 1".

  • Target X - This is the X-coordinate of the camera's target point. Maps are created by several thousands of coordinates, similar to a standard graph. The origin is 0, and it spreads out across the map into tons of coordinates of the quadrants. The "x" value denotes the horizontal location of the camera. These are changed simply by moving the camera around. (changing its position)
  • Target Y - This is the Y-coordinate. In graphs, you have ordered pairs (x,y). This is the y-coordinate, basically the vertical location of the coordinate. Together with x-y coordinates, you can have a point on the map. These are changed simply by moving the camera around. (changing its position)
  • Z-Offset - The height the camera is from the ground. The entire camera is moved upward, and thus has an increased "Z" value. Z-coordinates are basically the height of objects, how high something is from a standard ground-position of 0.
  • Rotation - This rotates the object. The values to input should be in the range from 1-360 degrees. 90 degrees is facing north, 180 degrees faces west, 270 degrees faces south, and 360/0 degrees faces east.
  • Angle of Attack - This modifies the angle of viewing. This does not modify the angle from left to right like rotation, but rather from up to down. The range of values is 1-360. 360/0 degrees is directly horizontal, and it parallel to flat ground. As you increase it from 0, it will begin to sink underground and keep changing its angle. At 90 degrees, it will be underground and looking directly upward. At 180 degrees, you'll have an upside down camera that is parallel to flat ground. At 270 it will face directly down at the ground. 304 degrees is the standard game camera AoA. Approximately 345 degrees or so is usually used for RPG-like cameras.
  • Distance - The distance the camera is from the target point. This has a standard value of 1650. You can get very close though, and pretty far by modifying this value.
  • Roll - Roll is just like doing a barrel roll in a plane. Or a dog rolling over. The camera rolls over according to the input angle, and can even go upside down. Rolling can create amazing camera effects if used well.
  • Field of View - This just basically controls the amount of area you see in your camera. Increasing it is kind of like a zoom out. It doesn't really affect the camera itself, but it makes kind of a zoom out effect so more things are on screen.
  • Far Z - This modifies the range in which far objects can be seen. So say there is a tree 10,000 coordinates away. You can set this to 10,000 to be able to see that tree. The maximum is actually 10,000. Even if you set it higher in triggers, it will most likely have the same effect as 10,000. Be careful when doing this though, it may enhance terrain screenshots, but in actual games, you will just be sending a death note to the players. This is probably one of the most impacting visual effects created. If you set it too high, and there are too many objects in view, it can reduce the FPS (frames per second, type /fps in-game) by 20's or possibly more. It depends on the Angle of Attack ultimately, but if there are too many objects seen, then it will generally cause a large amount of lag.
  • Preview Values in Main Window - Basically allows you to actually see what you are altering in the editor while you have the options open. This is very useful for making minor tweaks, without having to rename -> change -> exit -> rename -> change etc. over and over.


Applying Cameras:

You can apply cameras with simple triggers:
Camera - Apply <Camera> for Player 1 (Red) over 0.00 seconds
This will apply the camera for the player and will take X seconds to apply. Before you apply another camera, you should wait then apply it:
Camera - Apply Camera 1 for Player 1 (Red) over 3.00 seconds
Wait 2.00 seconds
Camera - Apply Camera 2 for Player 1 (Red) over 2.00 seconds
The reason why I only waited 2.00 seconds was because if I set it to 3.00, the camera will stop then apply. I want it to be much smoother.

For more about cameras, click here


Unskippable Transmissions

Many people get angry when some random starts pressing "ESC" repeatedly to skip the transmissions, it can completely ruin a cinematic. However, there is one easy snippet of code which can make all your transmissions unskippable:
Jass:
call DisableTrigger(bj_cineSceneBeingSkipped)

This will basically disable it. To do it in GUI, you use this:
Custom script: call DisableTrigger(bj_cineSceneBeingSkipped)

To enable it for whatever reason, use this:
Jass:
call EnableTrigger(bj_cineSceneBeingSkipped)

Do this after your first Transmission function. So, basically:
Untitled Trigger 001
Events
Conditions
Actions
Cinematic - Send transmission to (All players) from Ranger 0001 <gen> named Ranger: Play No sound and display You can't skip.. Modify duration: Add 0.00 seconds and Wait
Custom script: call DisableTrigger(bj_cineSceneBeingSkipped)
-------- After this, you no longer need to use this function! --------

Enjoy, it is great for RPG's and whatnot, wherever there are people who love to annoy.


No Portrait For Transmissions

Sometimes we don't always want portraits to be displayed for our transmissions. You can use these for subtitles, narrators, whatever you want.

Now, this is a very easy method, but many people probably haven't discovered it yet.

To make a transmission with a portrait, you'd do something like this:
Cinematic - Send transmission to (All players) from Footman 0003 <gen> named Narrator: Play No sound and display Good evening.. Modify duration: Add 0.00 seconds and Wait

Basically, it sends a transmission from a preplaced unit saying "Good evening". Now, what we want to do is make <Footman 0003> become null, or basically we want no unit.

So replace "Footman 0003" with "Preset: No unit" (or you can use an event response to some event the current trigger doesn't apply to, since that too will return a null value)
Cinematic - Send transmission to (All players) from No unit named Narrator: Play No sound and display Good evening.. Modify duration: Add 0.00 seconds and Wait

And voila. It is done.



Filters for One Player/Force

Not too related to cinematics, but many people look for this so I will post the method. Now, there are somewhat two methods (actually, there are many methods branching off the method I discuss), however, the other one might interfere with other GUI functions so I won't discuss it.

For One Player:
We will use GetLocalPlayer() to create it for the player we need.

Basically, we will do this:
Set AlphaReal = 0
Custom script: if GetLocalPlayer() != Player(0) then
Set AlphaReal = 100
Custom script: endif
Cinematic - Fade out and back in over 2.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with AlphaReal transparency

Just modify Player(0) . In JASS, players are Player (x-1) where "x" is the GUI player index.
Jass:
//Starts here, a lower input will crash the game.
Player(0) //Player 1...
Player(1) //Player 2...
Player(2) //Player 3...
Player(3) //Player 4...
Player(4) //Player 5...
Player(5) //Player 6...
//....    //...
Player(15) //Player 16
//Ends here, a higher input will crash the game.

What this will do is, if the local player (the player executing the trigger currently) is not Player 1 (Red), then it will set the AlphaReal variable to 100. Basically, this will make the AlphaReal variable out of sync, allowing it to have a different value for Player 1 (Red) opposed to the other players. Thus, it will apply a filter with 0% transparency for Player 1 (Red), and a filter with 100% transparency for everyone else. This way, you can avoid desyncs. If you were to move the "Cinematic - Fade..." into the local player block, it would desync from destroying the timers. Since timers are normally allocated variables with an id > 0x100000 (1048576) it will desync when created/destroyed locally. For more info, view the tutorial I've linked above.
Jass:
function AbortCinematicFadeBJ takes nothing returns nothing
    if (bj_cineFadeContinueTimer != null) then
        call DestroyTimer(bj_cineFadeContinueTimer)
    endif

    if (bj_cineFadeFinishTimer != null) then
        call DestroyTimer(bj_cineFadeFinishTimer)
    endif
endfunction

For One Force:

Sometimes we want to make it for a specific amount of players, and it'd be a little bit stressful to do it with just GetLocalPlayer() == Player(#) . This is why we can use forces instead:

Actions
Set TempForce = (All allies of Player 1 (Red))
Set AlphaReal = 100
Custom script: if IsPlayerInForce(GetLocalPlayer(),udg_TempForce) then
Set AlphaReal = 0
Custom script: endif
Cinematic - Fade out and back in over 2.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with AlphaReal transparency

Now, if the local player is in the force, we will make the transparency 0, and for everyone else it will remain 100. (TempForce) can be whatever you want, you can manually add it or whatever. All you need to modify is udg_TempForce , just modify after the "udg_" with whatever the name of your force variable is.



Please feel free to post more tips 'n' tricks as well!
Attached Thumbnails
narrator.jpg   ui.jpg  

Last edited by PurgeandFire; 10-28-2011 at 10:47 PM.
PurgeandFire is offline   Reply With Quote
Old 09-10-2007, 06:06 AM   #2 (permalink)
Registered User Bob27
User
 
Bob27's Avatar
 
Join Date: Jun 2005
Posts: 3,073
Bob27 is a name known to all (720)Bob27 is a name known to all (720)Bob27 is a name known to all (720)Bob27 is a name known to all (720)Bob27 is a name known to all (720)
Former Staff Member: This user used to be on the Hive Workshop staff. User of the Year: 2005 
Stickied :)
Bob27 is offline   Reply With Quote
Old 09-11-2007, 12:47 AM   #3 (permalink)
Forum Moderator PurgeandFire
ʕ•͡ᴥ•ʔ
 
PurgeandFire's Avatar
Resource & Tutorial Moderator
 
Join Date: Nov 2006
Posts: 3,528
PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)
Thanks Bob. :)

- To everyone: Please, feel free to post more cinematic tips/tricks!
PurgeandFire is offline   Reply With Quote
Old 10-07-2007, 06:14 PM   #4 (permalink)
Registered User Waldbaer
Returned for music
 
Waldbaer's Avatar
 
Join Date: Jul 2004
Posts: 473
Waldbaer has a spectacular aura about (121)Waldbaer has a spectacular aura about (121)Waldbaer has a spectacular aura about (121)Waldbaer has a spectacular aura about (121)
Cinematic Mini-Contest #1 - Winner: The Escape & The Premonition 
I saw you also linked my "exact cinematic timing" thread from wc3campaigns. It is outdated... I'll write a new tutorial describing my current method (also used in my contest cinematic "The Premonition") soon.

Another tip concerning camera movement: If you make bigger sways over more than one camerasetup station, you will notice that everytime you apply a new camera, there will be an edge in movement. I wrote a system to prevent this ugly edges from occuring - here it is: Dragonblood Creations' Camera System.
Its application is basically the same than with the normal "apply camera x over y seconds", but it offers smooth acceleration and braking. Take a look at it, it should be a great help especially for advanced cinematic makers.
__________________
Dragonblood Creations is dead.
If you are interested in continuing+maintenancing one of its projects, just contact me via PM:
Systems:
Camera SystemAllows hollywood-like smooth sways over as many camera setups as you like.
Jump SystemAllows to make ground units jump without further preparation.
The Lord Of The Rings: The Fellowship Of The Ring (Campaign) contact busterkomo
Waldbaer is offline   Reply With Quote
Old 10-07-2007, 07:16 PM   #5 (permalink)
Registered User HeretoDLstuff
User
 
HeretoDLstuff's Avatar
 
Join Date: Feb 2007
Posts: 2,127
HeretoDLstuff is just really nice (312)HeretoDLstuff is just really nice (312)
Wow, pretty nice, goodjob and +rep!
__________________
TheSkunk#386
HeretoDLstuff is offline   Reply With Quote
Old 10-19-2007, 10:17 AM   #6 (permalink)
Registered User Waldbaer
Returned for music
 
Waldbaer's Avatar
 
Join Date: Jul 2004
Posts: 473
Waldbaer has a spectacular aura about (121)Waldbaer has a spectacular aura about (121)Waldbaer has a spectacular aura about (121)Waldbaer has a spectacular aura about (121)
Cinematic Mini-Contest #1 - Winner: The Escape & The Premonition 
I wrote a new tutorial about exact cinematic timing and posted it also on this site. Take a look at it: Exact Cinematic Timing (Trigger Queue and Timers)
I suggest to edit the link in the first post to the one I gave above.
__________________
Dragonblood Creations is dead.
If you are interested in continuing+maintenancing one of its projects, just contact me via PM:
Systems:
Camera SystemAllows hollywood-like smooth sways over as many camera setups as you like.
Jump SystemAllows to make ground units jump without further preparation.
The Lord Of The Rings: The Fellowship Of The Ring (Campaign) contact busterkomo
Waldbaer is offline   Reply With Quote
Old 10-19-2007, 07:17 PM   #7 (permalink)
Registered User Wolverabid
 
Wolverabid's Avatar
 
Join Date: Oct 2006
Posts: 8,426
Wolverabid has a brilliant future (1352)Wolverabid has a brilliant future (1352)Wolverabid has a brilliant future (1352)
Medal of Honor: This user has proven himself through his deeds and contributions on wc3sear.ch and/or The Hive Workshop, and is thus awarded this Medal of Honor in adulation of his perpetual legend. Super Donor: This user has donated at least $100 to The Hive. Former Staff Member: This user used to be on the Hive Workshop staff. User of the Year: 2007 
Quote:
Originally Posted by Waldbaer View Post
I suggest to edit the link in the first post to the one I gave above.
Post edited; link redirected.
__________________
SuperSecretSearchSystem .......Netiquette....... Posting And You..........Read Me.......Vote

Antivirus Chat Dictionary Games Hoaxes Links Music News Quotations Reference Software

[timquote]blah[/timquote]
Wolverabid is offline   Reply With Quote
Old 12-13-2007, 03:49 PM   #8 (permalink)
Registered User Traxamillion
WTF is this nerd shit?
 
Traxamillion's Avatar
 
Join Date: Sep 2007
Posts: 1,504
Traxamillion has disabled reputation
PayPal Donor: This user has donated at least $20 to The Hive. Short Story Contest #3 - Winner: A Family Torn Asunder Former Staff Member: This user used to be on the Hive Workshop staff. 
very very useful
__________________
Dark Troll Recolor Skins
[22-45-54] Hakeem: Traxamillion, if it were me and my site, you'd still have ML access even if you weren't on staff.


Traxamillion is offline   Reply With Quote
Old 12-13-2007, 11:15 PM   #9 (permalink)
Forum Moderator PurgeandFire
ʕ•͡ᴥ•ʔ
 
PurgeandFire's Avatar
Resource & Tutorial Moderator
 
Join Date: Nov 2006
Posts: 3,528
PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)PurgeandFire has much of which to be proud (1095)
Thanks, remember you guys can post some of em' yourselves too!
PurgeandFire is offline   Reply With Quote
Old 01-08-2008, 09:39 AM   #10 (permalink)
Registered User ChRiS..
Chris_is_here(us west)
 
ChRiS..'s Avatar
 
Join Date: Jan 2008
Posts: 1
ChRiS.. is an unknown quantity at this point (0)
Can anybody help me with cinematics like. characters talking during cinematic and how to make units move
ChRiS.. is offline   Reply With Quote
Old 08-22-2008, 03:54 PM   #11 (permalink)
Registered User Ein fisk
User
 
Join Date: Apr 2008
Posts: 8
Ein fisk is an unknown quantity at this point (0)
I knew everything except the fly trick... Pretty good tho
Ein fisk is offline   Reply With Quote
Old 12-01-2008, 08:06 PM   #12 (permalink)
Registered User Rock_Golem
Rocky
 
Join Date: Oct 2008
Posts: 41
Rock_Golem has little to show at this moment (1)
where can I view these cinimatics, I want to see the masters in action.
Rock_Golem is offline   Reply With Quote
Old 06-26-2009, 05:33 PM   #13 (permalink)
Registered User MK Emaster
in-map Bugs Finder!
 
MK Emaster's Avatar
 
Join Date: Jun 2009
Posts: 1
MK Emaster is an unknown quantity at this point (0)
Here is a -little- common trick I always use to showup some pics over the screen.
First import the picture.
then, In the trigger Editor (since I know nothing about Jass) do the following:
Set the "event" and "condition" on what you need or want, then in the "action" list add
"Cinematic-Fade Filter"
In the "action text" change "white mask" to your imported pic! press ok and you are done!
This is the very basic, the event, condition and even adding some additional actions depends on your work!
__________________
[Mog]: "hahahahahah"
[Grun]: "Now what? Miley kissed you?"
[Mog]: "That was before, now I got something better!"
[Grun]: "what?"
[Mog]: "I bought Wow!!!"
[Grun]: "what a jerk, I saw it it wasn't WoW! it was WCII!"
[Mog]: "I hate storm.inc!"
MK Emaster is offline   Reply With Quote
Old 03-29-2010, 10:50 AM   #14 (permalink)
Registered User LordPerenoldeII
In memory of Perenolde I
 
LordPerenoldeII's Avatar
 
Join Date: Nov 2005
Posts: 462
LordPerenoldeII has little to show at this moment (55)
neither here no one told anything about floating text, which is something related to cinematics imo.
__________________
Remember to +rep those who help you!
LordPerenoldeII is offline   Reply With Quote
Old 04-01-2010, 02:23 PM   #15 (permalink)
Registered User Blitzschnell
User
 
Blitzschnell's Avatar
 
Join Date: Feb 2010
Posts: 43
Blitzschnell has little to show at this moment (2)
A trick in cinematics is never stop the camera then its boring :D the camera need always to move :P. ( im a cinematicer ).
Blitzschnell is offline   Reply With Quote
Reply

Bookmarks

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
abyss Gates Tips & Tricks Kickban WarCraft Discussion 0 03-08-2008 05:24 PM
Singing Tricks Rui Sound / Music Art 19 11-12-2007 05:06 AM
Tricks and Stuff GST_Nemisis Off-Topic 0 05-06-2006 05:21 PM
Anyone have some terraining tips or tricks? Modeler Map Development 7 09-29-2005 07:16 PM
Tips and tricks Mastif Off-Topic 0 06-21-2005 01:11 PM

All times are GMT. The time now is 02:23 PM.





Powered by vBulletin
Copyright 2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.5.1 PL2
Copyright © Ralle