SCUMM style dialog system

Get help using Construct 2

Post » Wed Dec 07, 2016 6:00 pm

I'm trying to work this one out, not sure how to store the dialog, how to recall it, how to cross off dialog that's been discussed, how to display the dialog above the characters heads in sequence, how to add new dialog sentences upon game progress, etc. Basically, I have nothing! I think it would be fussy to store all the dialog in the game as strings, but I also don't know if storing and recalling externally would be much easier.
B
41
S
12
G
14
Posts: 1,122
Reputation: 11,268

Post » Wed Dec 07, 2016 7:07 pm

Funny, I was just thinking of creating a new dialog template that mimics the one found in SCUMM's games. However, it's quite the task, not sure when I'll find the time to do that.

One thing is certain, storing scripts externally is a must. And you should dedicate some efforts to create a proper script editing and testing tool, for obvious reason. ;)
B
74
S
31
G
26
Posts: 994
Reputation: 20,198

Post » Fri Dec 09, 2016 7:15 am

Magistross wrote:Funny, I was just thinking of creating a new dialog template that mimics the one found in SCUMM's games. However, it's quite the task, not sure when I'll find the time to do that.

One thing is certain, storing scripts externally is a must. And you should dedicate some efforts to create a proper script editing and testing tool, for obvious reason. ;)

I'd love to do all this well but I'm not exactly the most proficient programmer, so it's gonna have to be hacking and handholding all the way! 😄 Well, I was thinking, all we really need to store externally is the sentence, a Boolean to determine if it's available or if it's been "spent" and the next sentence in the conversation. I suppose each sentence needs a Boolean to determine if it's time to return to the dialog selector or not, but even that could be just another number from the next sentence variable. How to pull this all in game is the hard part? 🤔
B
41
S
12
G
14
Posts: 1,122
Reputation: 11,268

Post » Fri Dec 09, 2016 7:32 am

B
41
S
12
G
14
Posts: 1,122
Reputation: 11,268

Post » Thu Dec 22, 2016 10:56 am

@magistross perhaps this could be useful? plugin-csv-csv2array-csv2dictionary_t64326
B
41
S
12
G
14
Posts: 1,122
Reputation: 11,268

Post » Thu Dec 22, 2016 7:07 pm

It certainly could be useful, however, the file data format is probably not the first issue to worry about... unless you went for XML. XML might be the more logical choice actually... given its versatility.
B
74
S
31
G
26
Posts: 994
Reputation: 20,198

Post » Thu Dec 22, 2016 11:12 pm

Magistross wrote:It certainly could be useful, however, the file data format is probably not the first issue to worry about... unless you went for XML. XML might be the more logical choice actually... given its versatility.

Trying to figure out where to start! :? I notice Tim Schaefer and Ron Gilbert have mentioned on numerous occasions of writing the dialog directly into the code, obviously they would have different lines for language translations and such, but they nevertheless mention writing it directly in the code, which in this case would be ScummC or whatever he called the engine. Al Lowe did the same with LSL if that's important. I doubt writing hundreds upon hundreds of lines of dialog in a separate event sheet would be as flexible as external file, though, would it?

I'm also thinking about line length, that would be done using a multiple of the character count of each sentence? So, long sentences would last on screen longer than short ones. Then there's voice talkie, if that were to be considered, every line would have to have this character length/on-screen time ignored so the line changed when the sound file was finished, should talkie be enabled.
B
41
S
12
G
14
Posts: 1,122
Reputation: 11,268

Post » Thu Dec 22, 2016 11:31 pm

I used variables and text in a specific event-sheet, triggering them on purposes. It's easy to translate later, easy to manipulate the event-sheet out of C2 (it's a xml), easy to follow and organize (just drag and drop), easy to change, and it's visual, searchable, fast =]

https://www.youtube.com/watch?v=RozvOxMMqms
Image
B
108
S
24
G
18
Posts: 1,373
Reputation: 22,824

Post » Thu Dec 22, 2016 11:49 pm

TELLES0808 wrote:I used variables and text in a specific event-sheet, triggering them on purposes. It's easy to translate later, easy to manipulate the event-sheet out of C2 (it's a xml), easy to follow and organize (just drag and drop), easy to change, and it's visual, searchable, fast =]

https://www.youtube.com/watch?v=RozvOxMMqms

Really? Sounds interesting, how did you associate the variables with dialog lines in a readable way?
B
41
S
12
G
14
Posts: 1,122
Reputation: 11,268

Post » Fri Dec 23, 2016 2:38 am

Magistross wrote:Funny, I was just thinking of creating a new dialog template that mimics the one found in SCUMM's games. However, it's quite the task, not sure when I'll find the time to do that.


@Magistross Wouldn't it be somewhat quick to modify the template you already have?

I just tried to modify mine and although it's kind of messy and ugly, @Zebbi, you can probably get some inspiration, here is my example.

Magistross wrote: And you should dedicate some efforts to create a proper script editing and testing tool, for obvious reason. ;)


I still didn't make one :roll:
B
18
S
9
G
17
Posts: 84
Reputation: 10,519

Next

Return to How do I....?

Who is online

Users browsing this forum: AnD4D and 20 guests