Massassi Forums Logo

This is the static archive of the Massassi Forums. The forums are closed indefinitely. Thanks for all the memories!

You can also download Super Old Archived Message Boards from when Massassi first started.

"View" counts are as of the day the forums were archived, and will no longer increase.

ForumsCog Forum → I Don't Suppose Someone Would Kindly Whip Me Up a Cog, Would They?
I Don't Suppose Someone Would Kindly Whip Me Up a Cog, Would They?
2004-10-04, 1:37 PM #1
I've got a cutscene cog in mind. Here's how I'd like it set up, if some one would be obliging (I wish I knew cog):

The movie starts; the camera is in a fixed postion designated by a ghost. The camera is facing a texture on a wall (like a movie's main title). I would like the texture to switch between four different *.mats every five seconds and for the lighting to dim and then brighten between the transitions, so that the audience can't actually see the texture change from one mat to another. Also, a 21 second wav of music is playing in the background (timed so it will end when the 4 mats have finished displaying.) [Note: for changing the mat, adjusting the lighting, etc, you'll need to give me complete access to adjusting the times by adding the variables so that they appear in the F7 cog window. Everything, including music.]

After the final mat has been shown for 5 seconds, the camera then zooms forward (please give me the option to adjust it's speed) to its second frame and upon reaching that frame teleports to it's third frame and continues moving forward at that point at the same speed. At the smae time, this also triggers a 2nd .wav to start playing.

Now, please give me the option to go through two more wavs (they're very short) as well as the ability to set the ammount of time after startup to play each respective sound. Now meanwhile, the camera reaches it's fourth frame, and at this point starts to angle down (while still moving forward, through the camera slows down a bit), then shortly after its 5th, then 6th, and at 7th the camera has turned 90 degrees and is facing down. When the camera is facing completely down, and has completed its 7th frame, another sound file plays, and the camera shoots downward very fast (need I mention again, I'd like complete control over the time increment, etc. :o )

As soon as the camera reaches its 8th frame. The camera is teleported to frame 9 and the camera is now facing straight ahead again now (ie 0 pch) and everything is pitch black. As soon as the camera reaches these coordinates, the 6th wav plays. Half a second later, wav's 7 + 8 are played simultaneously, and then another half a second later just one wav is played.

After one more second (maybe 1.5 secs) have passed, the 10th and final .wav plays. At that exact smae instant, the light in the room where the camera is now stationed brightens. After another 3 or 4 seconds or so, the camera fades for the last time, and the cutscene ends.

I guess I got a little bit carried away. Sorry if this sounds like a lot, I just wanted to be really specific. Anyway, if someone could help, this could turn out to be pretty cool. The whole movie will be a bit less than a minute, but I'm going for some impact. ;)

P.S. I will reveal what the movie is about in all due time, but not now. Give, and you shall soon receive.
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-05, 12:51 AM #2
Ill start on it right now. Hopefully Ill finish it in half an hour.
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-05, 1:40 AM #3
Ok I think Ive got something. This should hopefully work for the cutscene. If anything doesnt work please tell me and ill try fix it. Also I used alot of new verbs ive never used before so if I did something wrong then someone correct me.

Code:
# Jedi Knight Cog Script
#
# Cut.COG
#
# This is a cutscene cog for Daft_Vader
# 5/10/04 [a_person]
#
# This Cog is Not supported by LucasArts Entertainment Co

symbols

message      startup                                                          

thing        cam                                                              

int          done=0                             local                         

thing        player                             local                         

surface      titsurf                                                          

sector       frame3sec
sector       frame9sec
sector       lightupsec
sector       startsec

material     titsurf1                                                         
material     titsurf2                                                         
material     titsurf3                                                         

sound        bgmusic                                                          
sound        wave2
sound        wave3
sound        wave4
sound        wave5
sound        wave6
sound        wave7
sound        wave8

flex         musvol=1                                                         
flex         sleeptime1=5.0
flex         camspeed                                                   
flex         camspeed2
flex         camspeed3
flex         finalwait=3.0

end                                                                           

# ========================================================================================

code
startup:

if (done ==0)
	{
	check = GetSenderRef();
			{
		Player = GetLocalPlayerThing();

		// freeze Kyle
		SetActorFlags(Player, 0xa00000);
		StopThing(Player);
		
		SetCameraFocus(0, cam);
		SetCurrentCamera(0);
PlaySoundLocal(bgmusic, musvol, 1, 0x1000);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
Setsurfacemat(titsurf, titsurf1);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
setsurfacemat(titsurf, titsurf2);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
setsurfacemat(titsurf, titsurf3);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime);
MoveToFrame(cam, 1, camspeed); 
waitforstop(cam);
JumpToFrame(cam, 2, frame3sec);
MoveToFrame(cam, 3, camspeed);
PlaySoundLocal(wave2, musvol, 1, 0x1000);
waitforstop(cam);
MoveToFrame(cam, 6, camspeed2);
waitforstop(cam);
PlaySoundLocal(wave3, musvol, 1, 0x1000);
MoveToFrame(cam, 7, camspeed3);
waitforstop(cam);
JumpToFrame(cam, 8, frame9sec);
PlaySoundLocal(wave4, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave5, musvol, 1, 0x1000);
PlaySoundLocal(wave6, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave7, musvol, 1, 0x1000);
sleep(1.5);
PlaySoundLocal(wave8, musvol, 1, 0x1000);
SetSectorLight(lightupsec, 1, 1);
sleep(finalwait);
SetSectorLight(lightupsec, 0, 1);
jkEndLevel(1);

        }

  }

return;

end


And for the two sounds that play a set time after startup you will have to use this cog on each one.

Code:
# Jedi Knight Cog Script
#
# sleep.COG
#
# 5/10/04 [a_person]
#
# This Cog is Not supported by LucasArts Entertainment Co

symbols

message      startup   

sound        playsnd
flex         sleeptime
flex         musvol
                                                       
end                                                                           

# ========================================================================================

code
startup:
sleep(sleeptime);
PlaySoundLocal(playsnd, musvol, 1, 0x1000);

return;

end


I hope all of this works. I will make a post explaing it all now.
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-05, 2:05 AM #4
Ok here is my explanation so you can fill out the boxes correctly.

thing cam
The number of the camera thing

surface titsurf
The number of the surface that the tittle is on

sector frame3sec
The sector that the cam will be in when it teleports to frame 3.(I think)

sector frame9sec
The sector the cam will be in when it teleports to frame 9

sector lightupsec
The sector you want to light up at the end of the cutscene and the fade again when it finishes.

sector startsec
The sector the tittle will be in that fades in new materials at the begining.

material titsurf1
The mat you want the tittle surface to change after the first 5 seconds.

Note: Im asuming the first material is already placed in the level at the begining.

material titsurf2
The material you want the tittle surface to change to after the second 5 seconds.

material titsurf3
The material you want the tittle to change to after the third five seconds.

sound bgmusic
the startup background music.

sound wave2
The wave played after the cam teleports to frame 3

Note: The two "short" waves which start a certain amount of time after startup are set in "sleep.cog"

sound wave3
The sound played after reaching frame 7

sound wave4
The wave played after the teleport to frame 9

sound wave5
The wave played 0.5 seconds after wave4.

sound wave6
The other wave played after the 0.5 seconds.

sound wave7
The wave played 0.5 seconds after waves 5&6.

sound wave8
The final wave played

flex musvol
The volume the waves are all played at. Please consult me if you want some of them at different volumes.

flex sleeptime1=5.0
The time between the changing of the surfaces at the begining. Default is 5 seconds.

flex camspeed
The speed the camera moves at until it reaches the end of frame 4, at which point the camera was told to slow down so I made another camspeed option "camspeed2"

flex camspeed2
The speed the cam moves at while moving to frame 7.

flex camspeed3
The speed the cam moves at to get to frame 8.

flex finalwait
The final sleeptime before the level fades out.


I hope this helps and I didnt miss anything :D
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-05, 1:19 PM #5
Thanks uber-mcuh, that cog looks really good (needs some slight tweaking though), but the cutscene isn't playing. I don't know if this is me not setting up the variables right, a cog fault, or both. It could also have something to do with this being MotS. Dangit, that's it, I never once said it was for MotS!!!! Dang!!!!!!! :mad: That really makes me mad. I'm soory a_person, could you tweak it fo MotS, you probably thought it was for JK!!

Darn! :mad:
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-05, 2:22 PM #6
Could it be the start-up cog? Anyone?
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-05, 2:23 PM #7
Code:
# Jedi Knight Cog Script
#
# Cut.COG
#
# This is a cutscene cog for Daft_Vader
# 5/10/04 [a_person]
#
# This Cog is Not supported by LucasArts Entertainment Co

symbols

message      startup                                                          

thing        cam                                                              

int          done=0                             local                         

thing        player                             local                         

surface      titsurf                                                          

sector       frame3sec
sector       frame9sec
sector       lightupsec
sector       startsec

material     titsurf1                                                         
material     titsurf2                                                         
material     titsurf3                                                         

sound        bgmusic                                                          
sound        wave2
sound        wave3
sound        wave4
sound        wave5
sound        wave6
sound        wave7
sound        wave8

flex         musvol=1                                                         
flex         sleeptime1=5.0
flex         camspeed                                                   
flex         camspeed2
flex         camspeed3
flex         finalwait=3.0

end                                                                           

#  ==================================================
======================================

code
startup:

if (done ==0)
	{
	check = GetSenderRef();
		Player = GetLocalPlayerThing();

		// freeze Kyle
		SetActorFlags(Player, 0xa00000);
		StopThing(Player);
		
		SetCameraFocus(0, cam);
		SetCurrentCamera(0);
PlaySoundLocal(bgmusic, musvol, 1, 0x1000);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
Setsurfacemat(titsurf, titsurf1);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
setsurfacemat(titsurf, titsurf2);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
setsurfacemat(titsurf, titsurf3);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime);
MoveToFrame(cam, 1, camspeed); 
waitforstop(cam);
JumpToFrame(cam, 2, frame3sec);
MoveToFrame(cam, 3, camspeed);
PlaySoundLocal(wave2, musvol, 1, 0x1000);
waitforstop(cam);
MoveToFrame(cam, 6, camspeed2);
waitforstop(cam);
PlaySoundLocal(wave3, musvol, 1, 0x1000);
MoveToFrame(cam, 7, camspeed3);
waitforstop(cam);
JumpToFrame(cam, 8, frame9sec);
PlaySoundLocal(wave4, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave5, musvol, 1, 0x1000);
PlaySoundLocal(wave6, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave7, musvol, 1, 0x1000);
sleep(1.5);
PlaySoundLocal(wave8, musvol, 1, 0x1000);
SetSectorLight(lightupsec, 1, 1);
sleep(finalwait);
SetSectorLight(lightupsec, 0, 1);
jkEndLevel(1);

        }
return;

end


Second set of braces not needed...
And when the moment is right, I'm gonna fly a kite.
2004-10-05, 2:24 PM #8
/me loves on gbk for responding

now to see if it works. . . :D
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-05, 2:32 PM #9
nope :(
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-05, 2:40 PM #10
GBK, just curious, why did you still not answer my question about the startup cog? Do I need one, or don't I, and how do I implement it? :confused:

Thanks.


(1 away from 1337)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-05, 11:17 PM #11
Well I dont have mots so sorry I cant help you there. But I will try to see if anything in the cog may stop it working.

[edit]I cant really see anyhting, maybe its the last variable in the jumptoframe verb because when i looked it up in cogwriter it said,
thing, int frame, sector. I assumed that meant the sector the frame it is to jump to??? Am i right?
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-05, 11:36 PM #12
Hang on I found a potential problem.

Code:
# Jedi Knight Cog Script
#
# Cut.COG
#
# This is a cutscene cog for Daft_Vader
# 5/10/04 [a_person]
#
# This Cog is Not supported by LucasArts Entertainment Co

symbols

message      startup                                                          

thing        cam                                                              

int          done=0                             local                         

thing        player                             local                         

surface      titsurf                                                          

sector       frame3sec
sector       frame9sec
sector       lightupsec
sector       startsec

material     titsurf1                                                         
material     titsurf2                                                         
material     titsurf3                                                         

sound        bgmusic                                                          
sound        wave2
sound        wave3
sound        wave4
sound        wave5
sound        wave6
sound        wave7
sound        wave8

flex         musvol=1                                                         
flex         sleeptime1=5.0
flex         camspeed                                                   
flex         camspeed2
flex         camspeed3
flex         finalwait=3.0

end                                                                           

#   ==============================================

code
startup:

if (done ==0)
	{
	check = GetSenderRef();
		Player = GetLocalPlayerThing();

		// freeze Kyle
		SetActorFlags(Player, 0xa00000);
		StopThing(Player);
		
		SetCameraFocus(0, cam);
		SetCurrentCamera(0);
PlaySoundLocal(bgmusic, musvol, 1, 0x1000);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
Setsurfacemat(titsurf, titsurf1);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
setsurfacemat(titsurf, titsurf2);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime1);
SetSectorLight(startsec, 0, 0.25);
sleep(0.25);
setsurfacemat(titsurf, titsurf3);
SetSectorLight(startsec, 1, 0.25);
sleep(0.25);
sleep(sleeptime);
MoveToFrame(cam, 1, camspeed); 
waitforstop(cam);
JumpToFrame(cam, 2, frame3sec);
MoveToFrame(cam, 3, camspeed);
PlaySoundLocal(wave2, musvol, 1, 0x1000);
waitforstop(cam);
MoveToFrame(cam, 6, camspeed2);
waitforstop(cam);
PlaySoundLocal(wave3, musvol, 1, 0x1000);
MoveToFrame(cam, 7, camspeed3);
waitforstop(cam);
JumpToFrame(cam, 8, frame9sec);
PlaySoundLocal(wave4, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave5, musvol, 1, 0x1000);
PlaySoundLocal(wave6, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave7, musvol, 1, 0x1000);
sleep(1.5);
PlaySoundLocal(wave8, musvol, 1, 0x1000);
SetSectorLight(lightupsec, 1, 1);
sleep(finalwait);
SetSectorLight(lightupsec, 0, 1);
jkEndLevel(1);

        }
return;

end


Try this.
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-06, 4:56 AM #13
Quote:
Originally posted by Daft_Vader
GBK, just curious, why did you still not answer my question about the startup cog? Do I need one, or don't I, and how do I implement it? :confused:

You dont need one. A startup cog merely sets the player's inital force/ammo values.
And when the moment is right, I'm gonna fly a kite.
2004-10-06, 1:14 PM #14
Quote:
Originally posted by a_person

sector frame3sec
The sector that the cam will be in when it teleports to frame 3.(I think)

sector frame9sec
The sector the cam will be in when it teleports to frame 9


Is that the sector the came will be in before teleporting or its destination sector?
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-06, 1:37 PM #15
Right, the cutscene is finally working to some extent but it's extremely buggy. Now for the *.goo(d) and the bad (man is that a bad pun):

The Good:

The cutcene is playing. The initial music is playing, and the mats are cycling every 5 seconds like tey should be. The camera moves lik it should when the mats have finished cycling.



The Bad:

The lighting is not working. No fading in/out - everything seems to be staying the smae for some reason. Do I have to calculate lighting for this to work? Also, should I supply a DL for this to work? Perhaps I could just use an additional; cog in the background set ona timer. What do you think would be best?

Also, the camera doesn't seem to want to move to the next frame. I put in the camer'a's track of frames in JED's frame mode - is that known to be buggy? Could it be the cause of the prob? Also, the sounds don't play whenb they should, and when they do play they, all play at once in loud, clattered, indescernable jumble of noise. Why is this happening? This could also have something to do with how I'm setting up the cog (see my above post).

Finally, you seem to have missed out slots for several of the sounds a_person? You have provided 8 (9 including the other cog you made) whereas I have 11 sounds. Perhaps you could combine it all into one cog.

Explanations, etc. welcome! Thanks all! :)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-06, 2:41 PM #16
The Verb SetSectorLight() sets "Extra Light". So if somethings fully lit, and you tell it to SetSectorLight(sector, 1, 0), or whatever, it won't do anything. Try removing all light from the cutscene sectors.
_ _ _____________ _ _
Wolf Moon
Cast Your Spell On Me
Beware
The Woods At Night
The Wolf Has Come
2004-10-06, 4:39 PM #17
Thanks SniperWolf, that got rid of that problem, sort of. The fading effect is really nice, it's a shame spiral didn't better employ this in the credits in his level. Nevertheless, the camera fades in after five seconds, in stead of fading in as soon as the cutscene starts. This is necessary, because otherwise you miss the first texture, and without that you don't get to read everything and the sentence makes no sense. This should be easy to fix, if any cogger would kindly do that (or a_person himself).

Unfortunately, however, the other problems still remain. Any ideas anyone? Thanks!


[EDIT: Also, when I hit F1 I switch to 3rd person view of Kyle, even though I'm in a cutscene. That's just not right, you shouldn't be able to do that in a cutscene. I suspect some more faulty code.]
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-06, 9:43 PM #18
Ok the camera light fading was just my best geuss at what would do it. But I will now put some more research into how to fade in and out correctly. I will try to fix the sound postioning, But the two sounds you requested to play a certain amount of time after start up are delt with in the second cog I provided you. You have to implement it two times and you can define the sound the volume and the amount of time after startup it plays with that cog.
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-07, 12:59 PM #19
Thanks. In fact, I might just use that second provided cog for all the sounds. :)

And since I can't remember and I've got to dash for the door for a doctor's appointment, did I mention that the movie is moving towards its initial target frame, but doesn't move to the 3rd frame after that? How is that, and could you fix it? THis is the frame where it actually needs to teleport to a new coordinate first, so that could be a cause of it not working.

Thanks again, sorry if I sound demanding, I just want everything to work just right. I appreciate your contributions, and they will be mentioned upon release.

BFN.
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-07, 8:43 PM #20
I had a feeling that jumptoframe verb might be off. Can anyone explain to me how to use jump to frame? Either that or ill need to use teleportthing or set it on a new camera. Do you mind using more than one ghost for a camera?
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-07, 8:44 PM #21
No problem. I don't mind using another ghost for a camera at all.
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-08, 1:32 AM #22
Ok ive made it so every time the cam teleports it sets a new focus on a different cam. You will need to set up the new frames for cam and cam2 but cam3 just stays put so youll be fine with that.

Im still figureing out how to fade light in and out so this is just a test for you to see if Ive got the frames right. Would someone be able to tell me how to fade light in and out?

Also would you like me to take the sounds out of this cog for the next version so you can trigger them in the second cog?

Code:
# Jedi Knight Cog Script
#
# Cut.COG
#
# This is a cutscene cog for Daft_Vader
# 5/10/04 [a_person]
#
# This Cog is Not supported by LucasArts Entertainment Co

symbols

message      startup                                                          

thing        cam
thing        cam2
thing        cam3                                                              

int          done=0                             local                         

thing        player                             local                         

surface      titsurf                                                          

material     titsurf1                                                         
material     titsurf2                                                         
material     titsurf3                                                         

sound        bgmusic                                                          
sound        wave2
sound        wave3
sound        wave4
sound        wave5
sound        wave6
sound        wave7
sound        wave8

flex         musvol=1                                                         
flex         sleeptime1=5.0
flex         camspeed                                                   
flex         camspeed2
flex         camspeed3
flex         finalwait=3.0

end                                                                           

# ============================

code
startup:

if (done ==0)
	{
	check = GetSenderRef();
			{
		Player = GetLocalPlayerThing();

		// freeze Kyle
		SetActorFlags(Player, 0xa00000);
		StopThing(Player);
		
		SetCameraFocus(0, cam);
		SetCurrentCamera(0);
PlaySoundLocal(bgmusic, musvol, 1, 0x1000);
sleep(sleeptime1);
sleep(0.25);
Setsurfacemat(titsurf, titsurf1);
sleep(0.25);
sleep(sleeptime1);
sleep(0.25);
setsurfacemat(titsurf, titsurf2);
sleep(0.25);
sleep(sleeptime1);
sleep(0.25);
setsurfacemat(titsurf, titsurf3);
sleep(0.25);
sleep(sleeptime);
MoveToFrame(cam, 1, camspeed); 
waitforstop(cam);
		SetCameraFocus(0, cam2);
		SetCurrentCamera(0);
MoveToFrame(cam2, 1, camspeed);
PlaySoundLocal(wave2, musvol, 1, 0x1000);
waitforstop(cam2);
MoveToFrame(cam2, 4, camspeed2);
waitforstop(cam);
PlaySoundLocal(wave3, musvol, 1, 0x1000);
MoveToFrame(cam2, 5, camspeed3);
waitforstop(cam2);
		SetCameraFocus(0, cam3);
		SetCurrentCamera(0);
PlaySoundLocal(wave4, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave5, musvol, 1, 0x1000);
PlaySoundLocal(wave6, musvol, 1, 0x1000);
sleep(0.5);
PlaySoundLocal(wave7, musvol, 1, 0x1000);
sleep(1.5);
PlaySoundLocal(wave8, musvol, 1, 0x1000);
sleep(finalwait);
jkEndLevel(1);

        }

}

return;

end



Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-09, 9:42 PM #23
Here is a version I developed from a_person's last post.
It uses a single camera thing, and also everything is combined into one cog (making use of timers :) ).

Will test when I get a chance, but you'll probably have tested by then ;)
Code:
[edit]Bad Code -- see my next post

btw, I didn't see anything wrong with the JumpToFrame() stuff... I dunno.
May the mass times acceleration be with you.
2004-10-10, 6:05 AM #24
Quote:
Originally posted by Daft_Vader:
Also, when I hit F1 I switch to 3rd person view of Kyle, even though I'm in a cutscene. That's just not right, you shouldn't be able to do that in a cutscene. I suspect some more faulty code.


I don't know whether this aspect of Daft's question has been answered (just briefly skimmed the thread :o) but it's not faulty code - it's something that editors tend to (and I'm not saying *all* editors do this...) neglect, because when they design a playable mission (with cutscenes) they usually assume that the player will just watch the cutscene rather than try and do any direct interaction (such as camera switching).

The "CycleCamera()" verb should be your ally in this respect :) - LEC use it in their cogs to make sure you start the dark-jedi missions with your lightsaber activated and in 3rd-person view. And.... if memory serves me correctly (or maybe semi-correctly ;)) the code that you'd use could be something like (and this is just one implementation, mind):

Code:
    // just after the "freeze kyle" line in your startup message....
    // Remember to create a "pulse" message in your symbols code section ;)
    SetPulse (0.1);

...

pulse:
        // Cycle camera code to keep player's view in 1st person...
    if (GetCurrentCamera() != 0)
        CycleCamera();
    return;


If you want to keep it in 3rd-person, substitute a "1" in place of the "0" :)

Hope this info helps :D

-Jackpot

[EDIT: made sure the page didn't scroll ;) ]
"lucky_jackpot is the smily god..." -gothicX
"Life is mostly froth and bubble, but two things stand in stone,
Kindness in another's trouble, courage in your own"
- "Ye Wearie Wayfarer"
|| AI Builder: compatible with both JK & MotS || My website ||
2004-10-11, 4:55 PM #25
Gah. JumpToFrame just isn't working! My guess is that you can't jump with a camera w/o getting errors. Either that or I was doing something really wrong. If I jumped to a frame, not only would I get HOM Heaven, the code would skip down to the end w/o waiting for anything and end the level after the delay.

Anyway, the blow code works -- I tested and tested and tested until it did. Use three cameras, since JTF isn't working here.

Code:
# Jedi Knight Cog Script
#
# Daft_Cut.COG
#
# This is a cutscene cog for Daft_Vader
# 5/10/04 [a_person + darthslaw]
#
# This Cog is Not supported by LucasArts Entertainment Co
# =======================================================================
symbols

message   startup
message   timer

thing     cam
thing     cam2
thing     cam3
sector    sec_frame2
sector    sec_frame8

sector    sec0
sector    sec1
sector    sec2
sector    sec3
sector    sec4
sector    sec5
sector    sec6
sector    sec7
sector    sec8
sector    sec9

thing     player           local

surface   titsurf

material  titsurf1
material  titsurf2
material  titsurf3

sound     bgmusic
sound     wave2
sound     wave3   # timer executed
sound     wave4   # timer executed
sound     wave5
sound     wave6
sound     wave7
sound     wave8
sound     wave9
sound     wave10

int       i                local
int       j                local
int       used             local

flex      sleeptime=5.0
flex      zoomspeed_0_to_2
flex      zoomspeed_3_to_6
flex      zoomspeed_6_to_7
flex      musicvol=1.0
flex      wav3wait
flex      wav4wait
flex      finalwait=3.0
flex      dim_speed=1.0
flex      undim_speed=1.0

end
# =======================================================================
code
# .......................................................................
startup:
	for(i = 0; i < 10; i = i + 1) if(sec0 != -1) used = used + 1;
	player = GetLocalPlayerThing();
	// freeze Kyle
	SetActorFlags(player, 0xa00000);
	StopThing(player);
	sleep(0.5);
	call lights_on;
	SetTimerEx(wav3wait, 3, 0, 0);
	SetTimerEx(wav4wait, 4, 0, 0);

	SetCameraFocus(0, cam);
	SetCurrentCamera(0);
	PlaySoundLocal(bgmusic, musicvol, 0.0, 0x0);	//play background music
	Sleep(sleeptime);
	for(i = 0; i < 3; i = i + 1)	//change surf 3x
	{
		call dim;
		SetSurfaceMat(titsurf, titsurf1);
		call undim;
		Sleep(sleeptime);
	}
	MoveToFrame(cam, 0, zoomspeed_0_to_2);	//final mat -- zoom in to 2nd frame
	WaitForStop(cam);

//JumpToFrame(cam, 2, sec_frame2);	//teleport to 3rd frame
	SetCameraFocus(0, cam2);
	MoveToFrame(cam2, 0, zoomspeed_0_to_2);	//move to 4th frame
	PlaySoundLocal(wave2, 1.0, 0.0, 0x0);
	WaitForStop(cam2);
	MoveToFrame(cam2, 1, zoomspeed_3_to_6);	//angle down; to 5th
	WaitForStop(cam2);
	MoveToFrame(cam2, 2, zoomspeed_3_to_6);	//to 6th
	WaitForStop(cam2);
	MoveToFrame(cam2, 3, zoomspeed_3_to_6);	//to 7th
	WaitForStop(cam2);
	PlaySoundLocal(wave5, 1.0, 0.0, 0x0);
	MoveToFrame(cam2, 4, zoomspeed_6_to_7);	//warp speed to 8th
	WaitForStop(cam2);

//JumpToFrame(cam, 8, sec_frame8);	//teleport to 9th frame
	call lights_out;			//pitch black instantly
	SetCameraFocus(0, cam3);
	PlaySoundLocal(wave6, 1.0, 0.0, 0x0);
	sleep(0.5);
	PlaySoundLocal(wave7, 1.0, 0.0, 0x0);
	PlaySoundLocal(wave8, 1.0, 0.0, 0x0);
	sleep(0.5);
	PlaySoundLocal(wave9, 1.0, 0.0, 0x0);
	sleep(1.5);
	PlaySoundLocal(wave10, 1.0, 0.0, 0x0);
	call undim;
	Sleep(finalwait);
	call dim;
	Sleep(0.25);
	jkEndLevel(1);

Return;
timer:
	if(GetSenderID() == 3)
	{
		PlaySoundLocal(wave3, 1.0, 0.0, 0x0);
	}
	if(GetSenderID() == 4)
	{
		PlaySoundLocal(wave4, 1.0, 0.0, 0x0);
	}

Return;
dim:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 0.0, dim_speed);
	}
	Sleep(dim_speed);

return;
undim:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 1.0, undim_speed);
	}
	Sleep(undim_speed);

return;
lights_out:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 0.0, 0.0);
	}

return;
lights_on:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 1.0, 0.0);
	}

return;
# .......................................................................
end

btw, switching to 3rd person shouldn't be a problem anymore.

Also, I used a ghost for the camera; droidcam just wouldn't work for me.
May the mass times acceleration be with you.
2004-10-11, 10:25 PM #26
WAIT!!!! Ive spoted a fatal problem. Dont wrorry Slaw its not your fault, its the fault of the code tags. The equals sighns below and above the symbols sction have been cut in half by the code tags. Easy to fix but hard to spot. Ill do it for you.

Code:
# Jedi Knight Cog Script
#
# Daft_Cut.COG
#
# This is a cutscene cog for Daft_Vader
# 5/10/04 [a_person + darthslaw]
#
# This Cog is Not supported by LucasArts Entertainment Co
#============
symbols

message   startup
message   timer

thing     cam
thing     cam2
thing     cam3
sector    sec_frame2
sector    sec_frame8

sector    sec0
sector    sec1
sector    sec2
sector    sec3
sector    sec4
sector    sec5
sector    sec6
sector    sec7
sector    sec8
sector    sec9

thing     player           local

surface   titsurf

material  titsurf1
material  titsurf2
material  titsurf3

sound     bgmusic
sound     wave2
sound     wave3   # timer executed
sound     wave4   # timer executed
sound     wave5
sound     wave6
sound     wave7
sound     wave8
sound     wave9
sound     wave10

int       i                local
int       j                local
int       used             local

flex      sleeptime=5.0
flex      zoomspeed_0_to_2
flex      zoomspeed_3_to_6
flex      zoomspeed_6_to_7
flex      musicvol=1.0
flex      wav3wait
flex      wav4wait
flex      finalwait=3.0
flex      dim_speed=1.0
flex      undim_speed=1.0

end
#=============================
code
# .......................................................................
startup:
	for(i = 0; i < 10; i = i + 1) if(sec0 != -1) used = used + 1;
	player = GetLocalPlayerThing();
	// freeze Kyle
	SetActorFlags(player, 0xa00000);
	StopThing(player);
	sleep(0.5);
	call lights_on;
	SetTimerEx(wav3wait, 3, 0, 0);
	SetTimerEx(wav4wait, 4, 0, 0);

	SetCameraFocus(0, cam);
	SetCurrentCamera(0);
	PlaySoundLocal(bgmusic, musicvol, 0.0, 0x0);	//play background music
	Sleep(sleeptime);
	for(i = 0; i < 3; i = i + 1)	//change surf 3x
	{
		call dim;
		SetSurfaceMat(titsurf, titsurf1);
		call undim;
		Sleep(sleeptime);
	}
	MoveToFrame(cam, 0, zoomspeed_0_to_2);	//final mat -- zoom in to 2nd frame
	WaitForStop(cam);

//JumpToFrame(cam, 2, sec_frame2);	//teleport to 3rd frame
	SetCameraFocus(0, cam2);
	MoveToFrame(cam2, 0, zoomspeed_0_to_2);	//move to 4th frame
	PlaySoundLocal(wave2, 1.0, 0.0, 0x0);
	WaitForStop(cam2);
	MoveToFrame(cam2, 1, zoomspeed_3_to_6);	//angle down; to 5th
	WaitForStop(cam2);
	MoveToFrame(cam2, 2, zoomspeed_3_to_6);	//to 6th
	WaitForStop(cam2);
	MoveToFrame(cam2, 3, zoomspeed_3_to_6);	//to 7th
	WaitForStop(cam2);
	PlaySoundLocal(wave5, 1.0, 0.0, 0x0);
	MoveToFrame(cam2, 4, zoomspeed_6_to_7);	//warp speed to 8th
	WaitForStop(cam2);

//JumpToFrame(cam, 8, sec_frame8);	//teleport to 9th frame
	call lights_out;			//pitch black instantly
	SetCameraFocus(0, cam3);
	PlaySoundLocal(wave6, 1.0, 0.0, 0x0);
	sleep(0.5);
	PlaySoundLocal(wave7, 1.0, 0.0, 0x0);
	PlaySoundLocal(wave8, 1.0, 0.0, 0x0);
	sleep(0.5);
	PlaySoundLocal(wave9, 1.0, 0.0, 0x0);
	sleep(1.5);
	PlaySoundLocal(wave10, 1.0, 0.0, 0x0);
	call undim;
	Sleep(finalwait);
	call dim;
	Sleep(0.25);
	jkEndLevel(1);

Return;
timer:
	if(GetSenderID() == 3)
	{
		PlaySoundLocal(wave3, 1.0, 0.0, 0x0);
	}
	if(GetSenderID() == 4)
	{
		PlaySoundLocal(wave4, 1.0, 0.0, 0x0);
	}

Return;
dim:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 0.0, dim_speed);
	}
	Sleep(dim_speed);

return;
undim:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 1.0, undim_speed);
	}
	Sleep(undim_speed);

return;
lights_out:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 0.0, 0.0);
	}

return;
lights_on:
	for(j = 0; j < used; j = j + 1)
	{
		SetSectorLight(sec0[j], 1.0, 0.0);
	}

return;
# .......................................................................
end
Spoting an error in post will result in a $100 reward.
Offer expires on 6/6/06. Valid one per customer, per day.

Rangi
2004-10-15, 12:48 PM #27
Thankyou very much Slaw and a_person, I'm, sdrry I haven't responded sooner, but schoolwork has been keeping me really busy latlely.

Anyway, I have a couple of questions about the cog again. I don't know why I don't seem to be getting this, or if I'm just not stating myself clearly, or what. I apologize if I'm a bit slow on the uptake with this. Anyway:

1) cam(thing) - this is self-explanatory I suppose
cam2
cam3

2) sec_frame2(sector) - This is not so explanatory. Is this meant to be the sector the camera is in BEFORE it switches to camera 2 or the sector it WILL be in (ie camera2's start sector). The same goes for sec_frame8.

3) What on earth are the sector0-9 variables for? I have no clue what that's meant to be for, perhaps you could explain. Thankyou.

4) titsuface - all that stuff makes sense

5) For the music and sound wavs, you're still missing one Slaw. I need 11 slots, not 10. ANd perhaps for simplicity's sake we can just remove the whole timed variables tihng, until I at least get this cutscene working partially. Just make it so that the first sound plays at startup, and subsequent sounds follow immediately after that, and then the next one, and so on . . . please.

6) sleeptime - self-explanatory

7) zoomspeed - self-explanatory

8) musicvolume -self-explanatory

9) wav3wait - just remove this variable and the wav4 one for the current for the sake of simplicty, as stated above.

10) finalwait - I assume that's the time until the level ends

11) dim_speed, undim_speed - that makes sense.


____________________________________________

Thanks Slaw/a_person, if you could just clear up these misconceptions and perhaps rewrite the cog once more. I don't know why for thel ove of me it's still not working properly. THanks though. :)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-15, 2:15 PM #28
sec_frame2/8 are obsolete variables. They were used when I was trying to use Jumptoframe to move the camera, but as I said I couldn't get it to work. parsec isn't telling me that they are unused, and when I delete them, it doesn't say they are used either. :confused: You can delete them tho, because they are no longer used.

sector0-9 are the sectors to (un)dim the lights in

and you've got finalwait right.

I dunno why you're having trouble with it -- it should be working fine. However, I just tested it again on my computer, and it's acting different from when I posted the cog originally -- camera speeds are varying, some camera movement is wrong (I had funked up pyr values before, but now it's TOTALLY wacky).

I'll have another looksee later and see if I can fix it.
I might need to reinstall JK or something -- I had trouble with a cog last night where scaling a vector by values over 100 would crash it, but Flexor's DT levels used a very similar cog that just happens to propel the player upward like mine, except he was able to scale by 1350 :confused:. I dunno -- something's going on.
May the mass times acceleration be with you.
2004-10-15, 2:42 PM #29
hmmmm... this is very curious. At least I know now the fault's not entirely mine now. This is nevertheless truly very peculiar. Perhaps, Slaw, I should ask someone with a good deal of MotS cutscene experience such as AKPiggott. Since He's reappeared around here lately, maybe he could give me his opinion. Do you think that's a good idea?

Anyway, thanks again Slaw, I'll talk to you about this later, 'cuz I gotta go to a prayer group right now. Ttyl. :cool:
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-21, 8:36 PM #30
Any new ideas/theories/works-of-cogging-art, anyone?
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-21, 9:36 PM #31
Sorry. I haven't been able to do any real work on this due to exams.
This weekend I'll have a look at it again.
May the mass times acceleration be with you.
2004-10-22, 2:57 PM #32
You have exams in mid-October? :confused:

(btw, that was posed as a question, not an insult. And I like your sig.)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-22, 3:08 PM #33
ok i think i have a cog that will work for what you want
i think i got it to do all you wanted but i might have missed something or not done something right.
Code:
#################################################
# Jedi Knight Cog Script	(MotS)
#---------------------------------------------------------
# DV_CUTSCENE01.COG
#---------------------------------------------------------
# -Level starts and camera is set looking at a wall.
# -On the wall is a texture that switches between 4
#  different mats every 5 seconds.
# -When the texture is changeing the lights dim to black
#  so that the player cannot see the textur switch.
# -A 21 second wav is playing and will end when all the
#  textures have been displayed.
# -After the final mat shows for 5 seconds the camera
#  moves to its second frame, when it arrives it switches
#  to the next camera.
# -The next camera will start moving and a series of wavs
#  will play.
# -This camera will have 5 frames to go through.
#  when it reaches its first frame it start angling down
#  and by its 4th frame it is looking straight down.
#  then it moves to its next frame.
#  when it reaches its 5th frame the camera will switch to
#  the next camera.
# -this camera will be in a pitch black sector and
#  another wav will be started.
#  About 0.5 a sec later 2 more waves are started
#  then about 0.5 sec later another is played
#  then about 1.5 sec later a final wav is played an the
#  sector that the camera is in brightens for a few
#  seconds then fades again and the cutscene ends
#---------------------------------------------------------
# Written By DSLS_DeathSythe
# This COG is NOT supported by LucasArts Entertainment Co.
#################################################
symbols
#---------------------------------------------------------
message     startup
message     timer
message     arrived
#--------------------#
thing       player=-1                                     local

thing       camera01=-1
flex        cam01_mveSpd=4.0

flex        fadeTime01=2.0
int         effect_handle=-1                              local
flex        curFade=0.0                                   local

int         scene_status=0                                local

sound       titleScrn_snd
flex        titleSnd_vol=1.0
flex        titleSnd_delay=1.0

surface     title_screen=-1
material    titleMat01
material    titleMat02
material    titleMat03
material    titleMat04
flex        displayTime=5.0
int         curMat=0                                      local

thing       camera02=-1
flex        cam02_sloMveSpd=3.0
flex        cam02_fstMveSpd=9.0

flex        scene2snd_vol=1.0
sound       scene2_snd1

sound       scene2_snd2
flex        scn2Snd2_strtDly=2.0
sound       scene2_snd3
flex        scn2Snd3_strtDly=2.0
sound       scene2_snd4
flex        scn2Snd4_strtDly=1.0

thing       camera03=-1
flex        scene3snd_vol=1.0
sound       scene3_snd1

sound       scene3_snd2

sound       scene3_snd3
sound       scene3_snd4
flex        scn3Snd3a4_strtDly=1.0

sound       scene3_snd5
flex        scn3Snd5_strtDly=1.0

sound       final_snd
flex        finalSnd_strtDly=1.5
flex        finalFade_delay=3.0

#---------------------------------------------------------
end
#================================================
code
#---------------------------------------------------------
startup:
	player = GetLocalPlayerThing();
	//-Stop the player, remove HUD, set camera to 0
	// and set focus to camera01
	SetActorFlags(player, 0xA00000);
	if(GetCurrentCamera() != 0) CycleCamera();
	SetCameraFocus(0, camera01);
	SetCameraFocus(1, camera01);

	//-Turn the screen black
	curFade = 0.0;
	if(effect_handle != -1)
		{
		FreeColorEffect(effect_handle);
		effect_handle = -1;
		}
	effect_handle = NewColorEffect(0, 0, 0, 0.0, 0.0, 0.0, 0, 0, 0,curFade);

	//-Set the title screen to the first mat
	SetSurfaceMat(title_screen, titleMat01);
	curMat=0;

	//-Small delay before we fade in and start the scene
	Sleep(1.0);

	//-Que the lights
	SetTimerEx(0.5, 1, 1, 0);

	//-Start the title sound
	SetTimerEx(titleSnd_delay, 3, 0, 0);
return;
#---------------------------------------------------------
timer:
	if(GetSenderID() == 1)
		{
		//-Lights fading OUT and fading IN...
		if(GetParam(0) == 0)	//-Fade OUT
			{
			if(curFade > 0.0)
				{
				curFade = curFade -((2/fadeTime01)/50);
				if(curFade < 0.0) curFade = 0.0;
				SetTimerEx(0.01, 1, 0, 0);
				}
			else if(scene_status == 1)
				{
				//-switch mat and start fad in
				curMat = curMat + 1;
				if(curMat < 4)
					SetSurfaceMat(title_screen, titleMat01[curMat]);
				SetTimerEx(0.1, 1, 1, 0);
				}
			else if(scene_status == 2)
				{
				jkEndLevel(1);
				}
			}
		if(GetParam(0) == 1)	//-Fade IN
			{
			if(curFade < 1.0)
				{
				curFade = curFade + ((2/fadeTime01) / 50);
				if(curFade > 1.0) curFade = 1.0;
				SetTimerEx(0.01, 1, 1, 0);
				}
			else if(scene_status == 0)
				{
				//-SetTimer for mat change
				scene_status = 1;
				SetTimerEx(displayTime, 2, 0, 0);
				}
			else if(scene_status == 1)
				{
				if(curMat >= 3)
					{
					scene_status = 2;
					}
				SetTimerEx(displayTime, 2, 0, 0);
				}
			}
		if(effect_handle != -1)
			{
			FreeColorEffect(effect_handle);
			effect_handle = -1;
			}
		effect_handle = NewColorEffect(0, 0, 0, 0.0, 0.0, 0.0, 0, 0, 0, curFade);
		return;
		}
	else if(GetSenderID() == 2)
		{
		//-fading the lights
		if(scene_status == 1)
			{
			curFade = 1.0;
			SetTimerEx(0.01, 1, 0, 0);
			}
		//-movement of camera01
		else if(scene_status == 2)
			{
			MoveToFrame(camera01, 1, cam01_mveSpd);
			}
		return;
		}
	else if(GetSenderID() == 3)
		{
		if(GetParam(0) == 0) 	//-Play the Title sound
			PlaySoundLocal(titleScrn_snd, titleSnd_vol, 0.0, 0x0);
		if(GetParam(0) == 1) 	//-Play the scene2_snd2 sound
			PlaySoundLocal(scene2_snd2, scene2snd_vol, 0.0, 0x0);
		if(GetParam(0) == 2) 	//-Play the scene2_snd3 sound
			PlaySoundLocal(scene2_snd3, scene2snd_vol, 0.0, 0x0);
		if(GetParam(0) == 3) 	//-Play the scene2_snd4 sound
			PlaySoundLocal(scene2_snd4, scene2snd_vol, 0.0, 0x0);
		if(GetParam(0) == 4)	//-Play the scene3_snd3 and
			{			// the scene3_snd4 sound
			PlaySoundLocal(scene3_snd3, scene3snd_vol, 0.0, 0x0);
			PlaySoundLocal(scene3_snd4, scene3snd_vol, 0.0, 0x0);
			SetTimerEx(scn3Snd5_strtDly, 3, 5, 0);
			}
		if(GetParam(0) == 5)	//-Play the scene3_snd5 sound
			{
			PlaySoundLocal(scene3_snd5, scene3snd_vol, 0.0, 0x0);
			SetTimerEx(finalSnd_strtDly, 3, 6, 0);
			}
		if(GetParam(0) == 6)	//-Play the final_snd sound
			{
			PlaySoundLocal(final_snd, scene3snd_vol, 0.0, 0x0);
			curFade = 0.0;
			SetTimerEx(0.5, 1, 1, 0);
			SetTimerEx(finalFade_delay, 1, 0, 0);
			}
		return;
		}
return;
#---------------------------------------------------------
arrived:
	if(GetSenderRef() == camera01)
		{
		//-Time to switch to the next camera
		if(GetCurrentCamera() != 0) CycleCamera();
		SetCameraFocus(0, camera02);
		SetCameraFocus(1, camera02);
		MoveToFrame(camera02, 1, cam01_mveSpd);
		PlaySoundLocal(scene2_snd1, scene2snd_vol, 0.0, 0x0);
		SetTimerEx(scn2Snd2_strtDly, 3, 1, 0);
		SetTimerEx(scn2Snd3_strtDly, 3, 2, 0);
		SetTimerEx(scn2Snd4_strtDly, 3, 3, 0);
		return;
		}
	if(GetSenderRef() == camera02)
		{
		if(GetCurFrame(camera02) == 1 || GetCurFrame(camera02) == 2 ||
		   GetCurFrame(camera02) == 3)
			{
			//-camera starts to angle down
			MoveToFrame(camera02, GetCurFrame(camera02)+1, cam02_sloMveSpd);
			return;
			}
		else if(GetCurFrame(camera02) == 4)
			{
			//-camera is angled down and a sound is played
			// then it takes off
			PlaySoundLocal(scene3_snd1, scene3snd_vol, 0.0, 0x0);
			MoveToFrame(camera02, 5, cam02_fstMveSpd);
			return;
			}
		else if(GetCurFrame(camera02) == 5)
			{
			//-camera arrived at last frame move on to last scene
			//-Turn the screen black
			curFade = 0.0;
			if(effect_handle != -1)
				{
				FreeColorEffect(effect_handle);
				effect_handle = -1;
				}
			effect_handle = NewColorEffect(0, 0, 0, 0.0, 0.0, 0.0, 0, 0, 0,curFade);
			//-Time to switch to the next camera
			if(GetCurrentCamera() != 0) CycleCamera();
			SetCameraFocus(0, camera03);
			SetCameraFocus(1, camera03);

			PlaySoundLocal(scene3_snd2, scene3snd_vol, 0.0, 0x0);
			SetTimerEx(scn3Snd3a4_strtDly, 3, 4, 0);
			}
		return;
		}
return;
#---------------------------------------------------------
end
#################################################

try it and see if it works right
i hope that that i made the setup stuff easy enough to understad when you putting the info into it in jed
because i dont really want to go through and explain it all if i dont have to
have any question ill answer them though

the camera fading part doesnt mess with sector light or anything like that so you can light the level any way you want

it uses 3 separate ghosts for the cameras
for the part where the camera angles down just do that with the frames
so the frames would look something like this
numframes - 6
frame - (0/0/0:0/0/0)
frame - (0/1/0:0/0/0)
frame - (0/2/0:-30/0/0)
frame where it starts angling
frame - (0/3/0:-60/0/0)
frame - (0/4/0:-90/0/0)
finished angling and ready to head down
frame - (0/4/-3:-90/0/0) at the bottom frame
it should be something like that but with the cords you need them to have

i hope it works for you
i did test it and it worked for me, good luck

[edit: made changes to the cog]
Famous last words - "It seemed like a good idea at the time."
2004-10-22, 7:08 PM #34
Quote:
Originally posted by Daft_Vader
You have exams in mid-October? :confused:

(btw, that was posed as a question, not an insult. And I like your sig.)
Yeah, we started August 23 and only had Sep 6 off. I'm now halfway through the first semester (1/4th of the year -- block scheduling).

Took my Physics and Calculus exams today -- got a 104 on calculus and I have good feelings about physics. I also believe (hope) yesterday's English and Religion exams went well.

And glad you like the sig. :) It reminds me of when my friend said that one day he was going to cross-breed scorpions and pigeons... :rolleyes: :D
May the mass times acceleration be with you.
2004-10-23, 10:54 AM #35
Slaw: Wow, I'm glad I don't have to have exams on a block schedule like that. We take all our periods all the way through the year and just alternate days. We have 1.5 hour long periods, 4 a day. Lunch is only 1/2 an hour though, which stinks. :(

DSLS_DeathSythe: Yes, this is what I've been looking for for all this time. It's almost perfect. The opening scene, the timing of them usic and the fading of the screen is perfect. The only real problem I seem to be having is timing, but hopefully I can tweak that through trial and error. You just left out one sound slot, I apologize if that was my fault in specification. I've got work to do right now, so I'll come back and explain what might need some minor tweaking later. THanks, I was starting to think I was never going to get this cog worked out. :D
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-23, 10:18 PM #36
Yeah, lunch isn't long enough.

At my school, we actually are scheduled for 24 minute lunch periods, but it's usually reduced to 20 if you consider it takes a while to get down to the cafeteria since nobody knows how to move :rolleyes:
May the mass times acceleration be with you.
2004-10-27, 2:00 PM #37
Allright, here's what I'd like to be changed/fixed:

After scene2_snd3 plays, there is complete silence - for some odd reason, scene2_snd4 doesn't play until after the last frame of camera 2 is reached, regardless of what I put in the "scn2Snd4_strtDly" box in the F7 cog window. Maybe you could see what's causing this.

Also, I'd like it if "scene3_snd1" played as soon as camera 2 was starts to descend rapidly downawards towards it's last frame. As soon as Camera's 2 final frame is reached, the screen should turn black and sounds scene3_snd2, should play (then a 1 second delay), and then sounds "scene3_snd3" and "scene3_snd4" play simultaneously (then another 1 second delay), and finally "scene3_snd5" plays (This doesn't currently exist - please add it to the list).

After another 1-2 second delay, the final *.wav, "final_snd", plays and the screen fades in, blablabla, and the cutscene ends when the music finishes playing, etc. (this last paragraph already all works, so you don't need to alter it.)

Thankyou very much. After this, it should all be working. Does anyone want to take a guess at what I'm making? ;)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-28, 12:25 PM #38
ok i think its working the way you want now
copy it and from my last post and try again
Famous last words - "It seemed like a good idea at the time."
2004-10-28, 5:38 PM #39
Right, I've sent it off to Massassi! :)

Thanks so much for the help everyone! The cutscene was a bit rushed, but hopefully it will still have some impact. And just in time for Halloween! ;)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels
2004-10-29, 12:55 PM #40
Right, the level is up on Massassi; you can download it @ http://www.massassi.net/levels/files/3031.shtml and I hope you enjoy. It's very short, but hopefully a bit scary.

Also, everyone received due credit! :)
My JK Level Design | 2005 JK Hub Level Pack (Plexus) | Massassi Levels

↑ Up to the top!