Best import format for easy editing?
Re: Best import format for easy editing?
What is +- used for? It's been a while since I looked at the JLC format. Mografi, the developers of Jenny LeClue - Detectivu, designed the format and contributed the importer. I've intended for some time now to roll it into an official import format and provide a more full-featured import window. I'll bump up the priority to get it done soon.
Re: Best import format for easy editing?
That was the tag used for scripts, which is something I just started working with to connect dialogue events and lua commands with things happening in the game (and it works great)
I will try the current import/export, and let you know how it works. Don't worry about prioritizing it, it's probably not impossible for us to adjust it ourselves.
I will try the current import/export, and let you know how it works. Don't worry about prioritizing it, it's probably not impossible for us to adjust it ourselves.
Working on SpaceChef - A wacky open world space western, featuring a chef with nothing to loose, after he loses everything.. ;) Follow our work on @BlueGooGames.
Re: Best import format for easy editing?
I read a PDF with some documentation of the JLC import/export, but I can't find it now, it's not in the Zip.. hmm?
However, i just tried it, also with the Google Docs formatting plugin, and it works GREAT, this is exactly how I wanted to write. The features to import/export through a file or clipboard is perfect.
The +- symbol isn't critical, it's very easy to change in the file DialogueEscapeChars.cs, so the guys who made this did a great job.
So the only missing major feature for us is the ability to jump back in the tree.
Another small thing that I find maybe unnecessary, is that the response options needs to be repeated, like this:
I would prefer the following, and just detect that the indentation ends, or another response bracket start.
It would make it slightly more readable.
However, i just tried it, also with the Google Docs formatting plugin, and it works GREAT, this is exactly how I wanted to write. The features to import/export through a file or clipboard is perfect.
The +- symbol isn't critical, it's very easy to change in the file DialogueEscapeChars.cs, so the guys who made this did a great job.
So the only missing major feature for us is the ability to jump back in the tree.
Another small thing that I find maybe unnecessary, is that the response options needs to be repeated, like this:
Code: Select all
#16 Chippy/Good Morning
MessageBot: Good morning Chef... Time to wake up! ±Interaction("turnOffAlarm")±
[Alarm?]
Player: Come on, please turn off the alarm. What's going on?
[Alarm?]
[Who are you?]
Player: Huh, what? Where am I? Who are you?
[Who are you?]
MessageBot: Chef... are you ok? It's me, Chippy, your personal assistant! ±Interaction("turnOffAlarm")±
Player: Chippy?
It would make it slightly more readable.
Code: Select all
#16 Chippy/Good Morning
MessageBot: Good morning Chef... Time to wake up! ±Interaction("turnOffAlarm")±
[Alarm?]
Player: Come on, please turn off the alarm. What's going on?
[Who are you?]
Player: Huh, what? Where am I? Who are you?
MessageBot: Chef... are you ok? It's me, Chippy, your personal assistant! ±Interaction("turnOffAlarm")±
Player: Chippy?
Working on SpaceChef - A wacky open world space western, featuring a chef with nothing to loose, after he loses everything.. ;) Follow our work on @BlueGooGames.
Re: Best import format for easy editing?
This is what it looks like with the formatting in google drive, but it's also very easy to use in a plain text editor.
Working on SpaceChef - A wacky open world space western, featuring a chef with nothing to loose, after he loses everything.. ;) Follow our work on @BlueGooGames.
Re: Best import format for easy editing?
Hi,
The PDF file is in the zip. It's named Readme.pdf.
When I update the importer, I'll add the option to use +/- or a different character for Scripts. To maintain compatibility with existing JLC content, both will be supported. Any suggestions for the alternate character to use?
Also, to maintain compatibility, I'll keep the repeated response options ([response] text [response]). I'm sure the JLC devs had a reason for it.
The PDF file is in the zip. It's named Readme.pdf.
When I update the importer, I'll add the option to use +/- or a different character for Scripts. To maintain compatibility with existing JLC content, both will be supported. Any suggestions for the alternate character to use?
Also, to maintain compatibility, I'll keep the repeated response options ([response] text [response]). I'm sure the JLC devs had a reason for it.
Re: Best import format for easy editing?
Great, you don’t need to update it, like I wrote before, there is a config file where we can set it already. It’s all good
Working on SpaceChef - A wacky open world space western, featuring a chef with nothing to loose, after he loses everything.. ;) Follow our work on @BlueGooGames.
Re: Best import format for easy editing?
Great! It's been a while since I looked at it. I thought it was defined in a script.
As you use it, let me know if any ideas come to you that would improve your workflow.
As you use it, let me know if any ideas come to you that would improve your workflow.
Re: Best import format for easy editing?
Ok so I've worked a bit more on the import/export scripts from the JLC format, and fixed one issue with the JS, one that you could probably implement to help all.
So here are my thoughts/fixes:
1) In the formatActorNames function, I changed this line to remove tabs. This now causes each character to have its name in a consistent color throughout the script. Before it looked like my image a few posts up, due to the reason that tab-characters were included in the names, causing the actorColors array to detect them as different actors.
Here's the codefix (just add replace.. to the end)
2) I need to add instructions to make connections back in the tree. This is the current format I'm using, along with some custom code in the google doc for the dialog formatter to highlight it. So instead of having a separate tag to jump to, I simple tell it to jump to a specific branch. I also imaging adding -->#13 would make it jump to that conversation. I haven't made the code for it in the importer yet, so that's what I would love some suggestions for.
Is there perhaps some sequencer command or lua command I could use to make jumps to:
a) another branch within the same conversation
b) to the start of the conversation or
c) a different conversation?
That would make it easier than to modify the importer. But if that's not possible, I'm willing change the importer, but it still would help with some guides on how to locate a node by it's "Menu Text" and make a connection.
3) Another thing that gets in the way is the repeated [branch] command in the end which I mentioned before. It's very easy to forget to change the one in the end when you change the branch command. At first I through the indentation was important, but I realized that it only jumps back/forth in the depthLevel depending on if the same [branch] is or isn't detected. I guess I could convert it so it detects the indentation level with tabs, kinda like Python, but the problem is that Google docs does this super annoying thing where it sets the first line indent in some cases, so there really isn't a tab in the file. Do you know if it's possible to disable this behavior, and just have tabs?
My plan is to hand this over to our writer soon, and trying make it as easy as possible for him to focus on the text, and not on codes
So here are my thoughts/fixes:
1) In the formatActorNames function, I changed this line to remove tabs. This now causes each character to have its name in a consistent color throughout the script. Before it looked like my image a few posts up, due to the reason that tab-characters were included in the names, causing the actorColors array to detect them as different actors.
Here's the codefix (just add replace.. to the end)
Code: Select all
var characterName = text.getText().replace(/\t/g, '');
Is there perhaps some sequencer command or lua command I could use to make jumps to:
a) another branch within the same conversation
b) to the start of the conversation or
c) a different conversation?
That would make it easier than to modify the importer. But if that's not possible, I'm willing change the importer, but it still would help with some guides on how to locate a node by it's "Menu Text" and make a connection.
3) Another thing that gets in the way is the repeated [branch] command in the end which I mentioned before. It's very easy to forget to change the one in the end when you change the branch command. At first I through the indentation was important, but I realized that it only jumps back/forth in the depthLevel depending on if the same [branch] is or isn't detected. I guess I could convert it so it detects the indentation level with tabs, kinda like Python, but the problem is that Google docs does this super annoying thing where it sets the first line indent in some cases, so there really isn't a tab in the file. Do you know if it's possible to disable this behavior, and just have tabs?
My plan is to hand this over to our writer soon, and trying make it as easy as possible for him to focus on the text, and not on codes
Working on SpaceChef - A wacky open world space western, featuring a chef with nothing to loose, after he loses everything.. ;) Follow our work on @BlueGooGames.
Re: Best import format for easy editing?
Hi,
Thanks for the code fix for (1).
You can also search by Title field (entry.Title). Maybe it would be better to define "anchors" (like anchors in HTML files) using the Title field.
Thanks for the code fix for (1).
There isn't a built-in sequencer command or Lua command, but you could write one. I think it will be better in the long run to modify the importer. To locate a node by its Menu Text field:
Code: Select all
Conversation conversation; //<-- Assumes this points to a valid conversation.
DialogueEntry growEntry = conversation.dialogueEntries.Find(entry => entry.MenuText == "Grow?");
I haven't looked at the importer yet. But maybe you could use something like "[-]" to mean "close the most recent block. Example:
Code: Select all
Chippy: You need three things, a plant box, soil, and seeds!
[Plant box?]
Chippy: You can craft one in the workshop. -->Grow?
[-]
[Soil?]
Chippy: Soil is the stuff plants grow in.-->Grow?
[-]
Re: Best import format for easy editing?
Great ideas, I've been working on adding the link functionality to the importer, and noticed some problems.
1) I realized I don't want to jump to the [Grow?] menu text, but to the part where I select options again, so basically so I get to the step where I choose the 3 options, but without hearing the line "You need three things, a plant box, soil, and seeds!" again. Is that possible, or would I need an intermediate link without text for that to work? I think I've seen something about that in the forums.
2) How would I set it up so if you get to a branch the second time, the player says another line? I remember this being used quite a lot in Monkey Island, like first time "Tell me about pirates", and the second time "Tell me about pirates again".
3) I noticed the JLC importer imports the response options in reverse order, and I found this line with the comment in the end. I used Add instead, not sure why they wanted it to insert at the start instead. So it works now.
4) I've been working on adding support for links, but it's not working yet, I'd like to share the code later when it hopefully works
1) I realized I don't want to jump to the [Grow?] menu text, but to the part where I select options again, so basically so I get to the step where I choose the 3 options, but without hearing the line "You need three things, a plant box, soil, and seeds!" again. Is that possible, or would I need an intermediate link without text for that to work? I think I've seen something about that in the forums.
2) How would I set it up so if you get to a branch the second time, the player says another line? I remember this being used quite a lot in Monkey Island, like first time "Tell me about pirates", and the second time "Tell me about pirates again".
3) I noticed the JLC importer imports the response options in reverse order, and I found this line with the comment in the end. I used Add instead, not sure why they wanted it to insert at the start instead. So it works now.
Code: Select all
newEntry.outgoingLinks.Insert(0, link);//Add(link);
Working on SpaceChef - A wacky open world space western, featuring a chef with nothing to loose, after he loses everything.. ;) Follow our work on @BlueGooGames.