I need to know how to make a cutscene.
And does it require any high level of programming skills? :|
just use the DLL scriptor to set up a scripted camera sequence , it's very easy to do .
Um... I have to disagree.
It's easy to set one up, but it's hard to do one safely. In the Scriptor look at the 'cam' commands, but consider them a loaded gun. I almost always cringe when one occurs in SP, FE or Fleshstorm, because bad things happen afterward.
Why?
The BZ2 engine never stops... there's no 'pause' while in the cutscene and hitting the space bar to end it jumps you forward in time, as if the whole thing had played. If one occurs while you're in the middle of a fight you're dead...
There are things you can do to help make them safer, though:
1. You can make everyone an Ally before starting a cutscene. This stops any fights because everyone's one big happy team. After the cutscene is done everyone is put back on their own team and the fighting starts up again.
The main drawback to this method is that any attack waves keep moving to wherever they were going. Suddenly there's a dozen enemies around you or your Recycler despite the wall of GT's that was holding them back before the cutscene. You also may end up off a cliff or coasting into a tight spot when it starts, so getting your bearings is tough afterwards.
Another thing that can happen is that a unit told to 'attack' something at that time won't, they'll stop wherever they are and you end up with 'orphan' units.
Still, this is better than instant, unavoidable death due to cutscene.
2. You can set up some conditions that have to occur before the cutscene triggers. Make it the destruction of the last attack wave AND the Player being a certain distance from the nearest enemy, so both the base and the Player are safe during the cutscene, and don't send any more attack waves until the cutscene ends. Players being what they are this can end up causing the cutscene never to happen, or if the Player goes and sits next to the enemy base he'll effectively stop all attack waves, giving him a major advantage. It can also cause some long pauses between attacks depending on how far away they're coming from.
An alternative to this is to use the conditions as a guide to how to present what you're trying to say. In this case after the last attack wave you'd check to see if the Player is near an enemy. If he is you just play a wav sound with no camera activity. If he isn't you do the full blown cutscene. This is the method I've tried to use for BZC, but there are times when this isn't appropriate, either. It all depends on what you're trying to show with the cutscene.
3. You can temporarily move the Player off the map or to somewhere on the map that you know is safe, then put them back where they were when the cutscene ends. This can give you a flicker of seeing that you're somewhere else (unless you use an actual DLL, but the Scriptor has a bit of lag to it).
***
So, be careful with cutscenes unless you want people to hate you... there are a lot of options available to try to minimize how much damage can occur during one, and to make them more presentable to all different types of players...
-Av-
Good tips Av, will keep those in mind for my next project.
Thanks for the tip Ava, but I think it will take me some time to understand the scriptor fully :-P
Pretty sure you can record a game, then play it back and just move the camera where you need it while using Fraps to record it. Not sure though.
yeah you can do that, but only if you actually have fraps - and i dont mean the demo
While the Scriptor does support "Playmovie, filename" I've never actually gotten it to play a movie during a mission... so if that works I've never done it.
The other cutscene commands, under "cam____" in the Scriptor, are very easy to do. Here's a sample from BZC that triggers if a Soviet Tug captures the Relic. The first time this happens the mission will show you the Tug taking off with the Relic. If it happens again it'll skip the movie:
GetPlayer,ThePlayer //find the player and assign it "ThePlayer" as a name
NearEnemy,BadGuy,ThePlayer //find the nearest enemy to "ThePlayer" and assign it "BadGuy" as a name
DistObject,BadGuy,ThePlayer //find out how far away the "BadGuy" is from the Player, the next operation will use that number
IfLT,200,SKIPMOVIE //if the nearest bad guy is less than 200m away go to SKIPMOVIE
CamObject,SovTug,CameraSpawn,SovTug,25 //Set a camera on the Soviet Tug, using the position "CameraSpawn" away, and follow the Tug for 25 seconds
SKIPMOVIE: //go here if there's an enemy around
Set,TugMovie,1 //set the variable "TugMovie" to 1, indicating the movie was triggered
JumpTo,CHECKESCORT1 //go to another part of the script
The whole camera operation is one line, and it does a very cool cutscene of the Tug running away with the Relic...
You know, we could have a whole seperate board just one the Scriptor...
-Av-
Looking at the DLL, I'm thinking that we may be able to get the camera to follow a unit in sat view in-game. Maybe. Back burner though.
You could fake it in the Scriptor easily enough by just specifying a high position, looking down.
There's no end to what you can do, up to making entire 'sets' via DLL, running the camera sequence, and then removing it all also by DLL. If you were trying, say, to show a news broadcast from Earth you could make a whole Earth-like area, complete with environmental changes (blue sky, green grass), run through the camera sequence, and then put the environment back to say, the Moon after you remove any 'props'.
Keep in mind that extended camera sequences, no matter how cool looking, will annoy about 75% of the players. Toss in unexpected skyrides, attackers breezing past your defenses, or exiting to find your sitting in lava and another 20% will be annoyed with you.
So keep them clear, short, and to the point while keeping the player and his toys as safe as possible.
-Av-
Talking about targeting a unit in sat view in MP and having the camera follow it.
Quote
Keep in mind that extended camera sequences, no matter how cool looking, will annoy about 75% of the players. Toss in unexpected skyrides, attackers breezing past your defenses, or exiting to find your sitting in lava and another 20% will be annoyed with you.
Doing the math, you're saying that 5% of players like cutscenes. I think that's rather high.
(Unless you're talking Final Fantasy or Metal Gear Solid, games with more cutscene than interactive times, it seems. Hasn't hurt their sales.)
-- GSH
Way back when I first started "In The Shadows", I created a special cutscene mission that I gave to CmptrWz who captured and edited into an intro movie which has been sitting on my site ever since (http://www.starfleetplatoon.com/users/sonic/bz2/its.wmv). Timming was particularly hard, especially when you write the script on one computer and another computer actually ran it.
Here's the script for that mission, if you want it:
// Script used to create the ITS Trailer Clip
[objects]
Builder1
Builder2
Recycler1
Recycler2
OS
Attacker1
Attacker2
Attacker3
Bomber
Player
[positions]
[variables]
[text]
Start,
"Hey You! Yea You! \nSay Cheese! ^_^"
[routine,Main,1,true]
Display,Start,turquoise
Wait,3
BeaconOn,OS
Createp,Attacker1,">fvtank",6,"attack1"
GiveWeapon,Attacker1,"gomburst2_c"
GiveWeapon,Attacker1,"gshield"
Attack,Attacker1,Recycler1,1
Createp,Attacker1,"fvtank",6,"attack1"
GiveWeapon,Attacker1,"gomburst2_c"
GiveWeapon,Attacker1,"gshield"
Attack,Attacker1,Recycler1,1
Createp,Attacker1,"fvtank",6,"attack1"
GiveWeapon,Attacker1,"gomburst2_c"
GiveWeapon,Attacker1,"gshield"
Attack,Attacker1,Recycler1,1
Wait,1
RunSpeed,Cheese,1,true
Wait,15
Createp,Attacker1,"fvtank",6,"attack1"
GiveWeapon,Attacker1,"garc_c"
GiveWeapon,Attacker1,"gshield"
SetMaxHealth,Attacker1,10000
SetSkill,Attacker1,2
Createp,Attacker2,"fvtank",1,"attack2"
GiveWeapon,Attacker2,"gomburst2_c"
GiveWeapon,Attacker2,"gabsorb"
Attack,Attacker2,Attacker1,1
SetMaxHealth,Attacker2,12000
SetCurHealth,Attacker2,12000
SetSkill,Attacker2,3
Createp,Attacker3,"fvtank",1,"attack2"
GiveWeapon,Attacker3,"gomburst2_c"
GiveWeapon,Attacker3,"gabsorb"
Attack,Attacker3,Attacker1,1
SetMaxHealth,Attacker3,12000
SetCurHealth,Attacker3,12000
SetSkill,Attacker3,3
Wait,5
SetCurHealth,Attacker1,4000
Wait,8
Build,Builder2,"fbbomb",1
DropOff,Builder2,"build_here",1
CHECKING:
GetByLabel,Bomber,"unnamed_fvbomb"
IsAround,Bomber
IfEQ,false,CHECKING
Wait,16
Attack,Bomber,OS,1
Remove,Attacker2
Remove,Attacker3
Createp,Attacker1,">fvwalk",6,"attack1"
Attack,Attacker1,Recycler1,1
Createp,Attacker1,"fvwalk",6,"attack1"
Attack,Attacker1,Recycler1,1
Createp,Attacker1,"fvwalk",6,"attack1"
Attack,Attacker1,Recycler1,1
[routine,GetStuff,1,true]
GetByLabel,Builder1,"cons_good"
GetByLabel,Builder2,"cons_bad"
GetByTS,Recycler1,1,1
GetByTS,Recycler2,6,1
GetByLabel,OS,"over"
[routine,Cheese,0,false]
CamOf,Attacker1,-25,10
CamPath,"cam2",2500,2500,Recycler1
CamPath,"cam1",1000,3000,Attacker2
CamPath,"cam3",2500,900,Builder2
CamOf,Bomber,-50,10
CamPath,"cam2",2500,2000,Bomber
[Routine,ThePlayer,1,true]
START:
GetPlayer,Player
JumpTo,START
in the shadows...brings back some memories -- i remember checking the sfp site every month to see if it was going anywhere -- i am still DISAPPOINTED!!!!!
Quote from: GSH on January 09, 2008, 06:36:47 PM
Quote
Keep in mind that extended camera sequences, no matter how cool looking, will annoy about 75% of the players. Toss in unexpected skyrides, attackers breezing past your defenses, or exiting to find your sitting in lava and another 20% will be annoyed with you.
Doing the math, you're saying that 5% of players like cutscenes. I think that's rather high.
(Unless you're talking Final Fantasy or Metal Gear Solid, games with more cutscene than interactive times, it seems. Hasn't hurt their sales.)
-- GSH
I felt that a safe statistic as 5% of the population will enjoy watching paint dry or grass grow... just look at the Nielson ratings for shows like "Alf", or "Smarter than a Fifth Grader". :)
I personally love a good cutscene. Makes the whole experience more like being in an epic movie. The trouble is there aren't many good cutscenes IN missions in BZ2 because of the downside to freezing the Player. They're much better used at the beginning/ending of a mission to set the stage, or show the result of the mission.
-Av-
Cutscenes are good if done right, like watching a bunch of assault tanks being decimated by maulers or anything with action/story value. And also providing that they can be skipped.
Has anyone ever attempted cutscenes in BZ2, HL/HL2 style. In other words, it is a cutscene, but you still have full control, just that the cutscene is taking place around you and you can interact with it as such, those tend to be well received.
No, but it sounds do-able. That SP mission where you drop in on the base being attacked by the Scions sounds close.
What about the comm bunker trick used in the FE mission "into the fire" ? The thing is that the building looks like a comm bunker, but it is actually a GT class with a really high eyepoint to view the surrounding terrain.