Jump to content

Cross-Town Cutscenes


Morgan

Recommended Posts

So here's the problem - I want a cutscene to start in one town, move to another town, then move back to the original town. This, it seems cannot be done.

 

I'm guessing this is because you can't call a move_to_new_town in the START_STATE or INIT_STATE. Presuming that is the case, can anyone think of a viable workaround?

Link to comment
Share on other sites

So, either a flashback or dream sequence type thing? I had to do something somewhat similar for a particular town, and a set_state_continue() at the end of INIT_STATE let me run a cutscene and then teleport the party to a different location (same town though) at the end of it. So the first thing I'd try (if you haven't) is to see whether a set_state_continue() gives you enough "separation" from the INIT_STATE to be able to move_to_new_town().

 

If that doesn't work, then at the end of the cutscene I guess you'll need to let control fall back to the player, but leave him placed so that all he can really do is move into a square with a special encounter that moves him back to his starting town.

 

-spyderbytes

Link to comment
Share on other sites

Do the docs say somewhere that you can't use move_to_new_town in START_STATE or INIT_STATE? I can't find it anywhere. And if they don't, they should...

 

EDIT: By the way, the set_state_continue trick doesn't work. I tried it (because I am trying to do the same thing). The workaround that I've settled on is pretty much what spyderbytes outlined.

Link to comment
Share on other sites

Yeah, thanks spyderbytes, but it didn't work (I'd tried it already).

 

My workaround, which is a bit messy, is to move the party to an area out of view, then when the cutscene ends in the second town, I don't call force_terrain_redraw. That way, when the party moves, it should be back in the original town without being any the wiser.

 

I'm not entirely sure if it'll work, and it's fairly messy, but it's the best I can come up with.

Link to comment
Share on other sites

I think what I'm going to do is end the cut scene with the party in a room that looks identical to the room that they started in, and surround the party with move_to_new_town calls. Then, once the party moves, they go back to the original town.

 

I have a slightly more complicated problem, because I want to have a cross-town cut scene take place immediately following a dialogue option. (This gets messy pretty quickly, as you might imagine.) I'm not sure how I'm going to resolve this yet, but with maybe another hour or two of testing I should have it.

Link to comment
Share on other sites

Hmm... how are you pulling that one off? With run_scenario_state() in the code of the dialog node?

 

I ask because my own need for this sort of cutscene will be a dream sequence following an inn dialog node. That's what I was thinking to try when I came to it...

 

EDIT: I either didn't mean what I said or say what I meant... take your pick. smile

Link to comment
Share on other sites

Well, I had issues, because move_to_new_town doesn't work off of a dialogue node either. I can only get it to work when the state is called by something the party steps on.

 

So I'm trying to force the party to be standing in one particular location when they have this conversation. I do this by calling begin_talk_mode as soon as they walk into the room.

 

(I might possibly add relocate_char calls in the START_STATE in an if controller depending on an SDF that would be set in a dialogue node in that conversation, too.)

 

Then I surround that spot where I've forced the party to stand with specials depending on the same SDF as before that would call move_to_new_town, and in the INIT_STATE of that new town have my cut scene.

 

It's a weak solution, because I might be teleporting the party a little ways after the conversation, but at this point I'm not sure what else to do.

 

Actually, come to think of it, because the conversation that they have is rather short, I could run the whole thing using dialog boxes, but that would be kind of ridiculous. Well, we'll see.

 

Does anyone know of a way to take away the choice to end the conversation in the lower right-hand corner of the dialogue screen? I could've sworn I saw this done in the A1-3, so it would only be just if we could do it in BoA, but I can't find a call for it anywhere.

 

For your inn, you could just stick them next to a bed and force them (through block_entry calls, again controlled by an if) to step onto that bed on the next turn. Then have the bed call the state that would move them to the cut-scene town.

Link to comment
Share on other sites

Umm... begin_talk_mode() is the call you ALWAYS use to initiate dialog, even from within a creature's script. If there's any other way to start a conversation, I don't know what it is.

 

Are you saying that if you initiate dialog from, say, a special encounter (or other means that's not within the creature's script) it doesn't have the Done button? I haven't tried that, so it might well be the case. But even if the creature is the one initiating the dialog, if he does it from within his own script, you get the Done button. (I just tested it with my messenger script where the NPC initiates dialog as soon as he is within x range of the party, by calling begin_talk_mode(), to make sure.)

 

As for forcing the party to step onto the bed... yeah, that looks like it might be what I have to resort to, then. Not really what I wanted, though...

Link to comment
Share on other sites

The call begin_talk_mode does seem to function differently from within town scripts and within creature scripts. From what I can tell, Eldiran is correct for circumstances when begin_talk_mode is called from town scripts -- but NOT from creature scripts.

 

And WHY is this not covered in the docs?

Link to comment
Share on other sites

Quote:
Originally written by Kelandon:
And WHY is this not covered in the docs?
Hehe... in Jeff's defense, docs are hard, boring work and don't (directly) pay the bills. In Jeff's prosecution, the editor docs do seem to leave out quite a number of things that it would be nice to know. smile

Maybe we should start a thread and list stuff like this that should have been documented as we discover it? That doesn't help those of us who are the pioneers much, but might be useful for those who follow behind us. And if we make it easy for JV to find it all in one place, maybe we can twist his arm into visiting the thread and making those doc changes before releasing any new versions. smile
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...