Hey guys. I'm trying to work out a system for skipping some of the longer cutscenes I have in my game. My plan, right now, is to utilize a common event that is a parallel process whenever an "in a skip-able conversation" switch is on (I would turn it on and off during longer scenes). Inside that common event is a conditional switch that is activated whenever the player presses the "Y" key (On the keyboard it's actually "S" for skip). Then a text box will pop up with the choice of whether or not to skip the scene.
So far, that all works. My problem is trying to use labels to jump between the dialogue. The engine doesn't recognize the label because its in a separate event, but I can't figure how to create a conditional switch that can be activated within the event that has the label AT ANY TIME. I don't want to throw up a text box asking if the player wants to skip the conversation at the beginning of anything important because it will absolutely shatter what little immersion I've scraped together.
The goal is to put up a little "picture" in the upper right corner of the screen that says "press S to skip" and have the skip function be accessible from then on in that cutscene. Does anyone have any advice on how to make a polished "skip cutscene" system with events? I'm also open to using scripts, but I need the scripts to be available for commercial use. Thanks in advance for everyone's help.
Edit! Sorry, forgot to close! I ended up using the script that Amerkevicius suggested with a few tweaks. Thanks for everyone's help.
This post has been edited by KD648: Apr 10 2011, 04:39 PM
So sorry about the delay in response! I've been having 11 hour rehearsals for the past few days, so I probably won't get to any responding until at LEAST this late at night each day. Sorry! I checked out your cutscene tutorial (which is awesome!) Just to let you know, when you try to use that feature initially it tells you it's missing a graphic (face 25 or something?) I just went in and deleted the command to put the picture up, and then it worked like a charm! Thanks so much! So, essentially, to skip these cutscenes you just transfer the player to an identical map? That's actually awesome! I already use a lot of identical maps (for dialogue purposes) so that fits brilliantly into game design already! Thank you so much for your help. I'll mark this as solved.
Edit: WAIT! I lied. Not solved. The cutscenes can ONLY work in parallel process? That won't work for me. My cutscenes are scripted with characters moving in specific places. I can't change them to parallel processes with screwing the entire game up. Sorry, but that won't help unless you know a fix.
This post has been edited by KD648: Mar 23 2011, 06:31 PM
Group: Local Mod
Posts: 1,156
Type: Event Designer
RM Skill: Masterful
Rev Points: 30
Hmm, I didn't knew that. I did it in parallel process because if the skip event is auto start, then it will be issued right away instead of allowing the auto event to run.
Hmm, auto event. I'll try to work around that but just to warn you that 85% chance you will not get the skip option, just a skip. As I said, I'll try to work around...
Hmm, I didn't knew that. I did it in parallel process because if the skip event is auto start, then it will be issued right away instead of allowing the auto event to run.
Hmm, auto event. I'll try to work around that but just to warn you that 85% chance you will not get the skip option, just a skip. As I said, I'll try to work around...
That's totally cool. I'll keep twiddling around by myself and see if I can come up with a work around. There's probably a better way to do this with scripts... but I SUCK at scripting. I'll let you know if I have any breakthroughs.
Group: Local Mod
Posts: 1,156
Type: Event Designer
RM Skill: Masterful
Rev Points: 30
Alright, I would try now but I'm at my high school's computers and I have no internet at home So I'll have to figure it out and upload it next day. If you find it before that, please do post the solution ---Edit--- Alright, so I tried switching the event to auto start and trying the different parallel process in common event, but that didn't work Then I put the common event on the map (with the 'check if pressing button' event) and I got half of it to work.... sucky. It did indeed show the "Skip event?" choice but now it won't transfer the player. Everything works but transfer.
After that, I added a fail switch to the end of the cutscene and called it "cancel switch" or something. I was hoping that if it went on that I would be able to transfer. Nope
Long story short, I got the skip event and fade out to work but nothing with the transfer
This post has been edited by kayden997: Mar 25 2011, 08:11 AM
*sigh* go find the tutorial I made about text; it features a simple text skip, as well as a complete list of the colors you can use. Mind you, button press doesn't like me for some reason. Anyways, at the start of your dialogue use this:
to skip the dialgue in that cutscene
show choices - 1. skip dialgue, 2. bore me to death if 1 jump to label-skip (the corrseponding label is obviously at the end of all the dialogue) if 2 -jump to label-dialogue (again, properly labelled)
If you want to skip all the dialgoue
no time to talk
it basically works like brackets in grammar; the condition branch is the [ bracket, and the skip label is the ] bracket. condition branch- if switch skip is on ( in test mode, you can call up a list of switches by pressing F9) >jump to label -skip (same deal)
the latter will skip all the dialogue events that have that condition branch, as long as the switch is on (they tend to stay on until turned off). This means that any event that has the text skip will be seamlessly skipped over (though you don't have a choice in the matter) . But...
QUOTE
My problem is trying to use labels to jump between the dialogue.
Yeah, that's certainly going to be a problem. It's not good to be capricious with these things, but everyone always seems to be. I just don't understand that...
QUOTE
The goal is to put up a little "picture" in the upper right corner of the screen that says "press S to skip" and have the skip function be accessible from then on in that cutscene.
great. Use "show picture". If you're trying to save time, just have the text display quickly; I just don't know whether you're skipping the entire cut scene or just slicing them up. It just seems like you want something that does "get to the part where it says...." in which case you'll just have to use a bunch of labels. Mind you, the machine will probably give you an error message because it doesn't know what you want to skip to, since you're just arbitrarily pressing "S". Skipping text with labels is easy; it's when you want to skip the start, read the middle, and skip the end. That just seems superlfous and the machine won't like it. If it's stuff like mission briefings, use choice boxes to select what you want to hear about. If it's just a conversation, skip the whole thing entirely. No point in being difficult about things.
This post has been edited by Alt_Jack: Mar 26 2011, 10:53 AM
Group: Global Mod
Posts: 1,784
Type: None
RM Skill: Undisclosed
Rev Points: 15
I'm not proficient on scripting myself. A simple solution may be just to add an event whenever a long cutscene takes place that asks if the player wants to watch it or skip it, and depending on whatever he chooses then transfer him that spot.
He chooses to watch it, transfer to the cutscene map, play it out, then transfer to the next map when it's over.
If he/she elects to skip it, they automatically just go to that "next map" and skip the scene.
You would have to do this each time, so it can be time consuming, but it is one idea if you can't get the key processing to work.
Thanks for your help Alt_Jack, but from my understanding of your tutorial, that skip feature would only work at the beginning of the text and in a real game without access to the debug screen it would still require a text box to pop up at the beginning of the conversation that says "would you like to skip this". I've got everything working (the picture, the button press parallel process with the conditional branch set up by a button press), but I can't get what I put inside that conditional branch to skip dialogue. I wouldn't mind transferring the player to an identical map, but the problem with that is that my cutscenes are autorun events, so the events just continue on as soon as the transfer is done.
Group: Global Mod
Posts: 1,784
Type: None
RM Skill: Undisclosed
Rev Points: 15
I'm not sure if this is exactly what you are looking for, but it may be a start. It's an Event Skipper script that Jet wrote some time back. The link is listed below. However, whether or not you can use this in a commercial game, I am not sure.
BigEd781 also had this to say: "You could also just use a separate parallel process event to check for a button press. If the player presses the cancel button, turn on a switch that skips to the end of the scene. Be careful though that you do not skip parts like turning on a switch or setting a variable that are important later in the game."
I'm not sure if this is exactly what you are looking for, but it may be a start. It's an Event Skipper script that Jet wrote some time back. The link is listed below. However, whether or not you can use this in a commercial game, I am not sure.
BigEd781 also had this to say: "You could also just use a separate parallel process event to check for a button press. If the player presses the cancel button, turn on a switch that skips to the end of the scene. Be careful though that you do not skip parts like turning on a switch or setting a variable that are important later in the game."
This looks phenomenal! I don't have time to look into it at the moment, but I'll post again once I've tinkered around with the script a bit. Thanks so much!
Group: Member
Posts: 27
Type: Developer
RM Skill: Intermediate
Easy peasy eventing?
New parallel event:
Conditional Branch: IF C is being pressed
<Skip to end of event>
Else,
<blank>
That easy Since it's parallel, it should run throughout the course of all the other events (unless you make the event stop other events) and everything should run more or less smoothly.