Well, yes and no.mikey wrote:One more question - will there be an option of directly editing a file like Ren'Py has it?
If I want to quickly add lines copy/paste blocks or something like that.
The advantage of Ren'Py is that you can edit the file with a notepad - will there be such a file in Novelty as well? Or do you always need to do it with the interface. Because with time it becomes much quicker to directly edit the script - at least for me.
Much like every WYSIWYG (actually, who thought that is a catchy acronym?!) editor of HTML also has a direct-input option, where you can see the "code".
The "code" in Novelty is XML and looks like this:
Code: Select all
<Page name="Demo" uid="12">
<Scene>
...
</Scene>
<Thread name="Whatever">
<Action type="change_state" object="Sumomo" state="4" desc="Concerned" />
<Action type="say" who="[$name]" phrase="'Whatever!?'

What's that supposed to mean?" />
<Action type="say" who="[$name]" phrase="I thought you wanted to know, like.. that is why you're here right?" />
<Action type="change_state" object="Sumomo" state="11" desc="Very firm" />
<Action type="say" who="[$name]" phrase="Ooh!" />
<Action type="say" who="[$name]" phrase="I see!
If that's really the case then it's simply my job to convince you." />
<Action type="change_state" object="Sumomo" state="1" desc="Default" />
<Action type="setvar" op="=" variable="Whatever" value="1" />
</Thread>
<Transition type="gradcross-se" time="2" rgb="1,1,1" pause="false" />
<Action type="playbgm" name="KTG - Calm workshop" volume="0.6" loop="true" />
<Action type="setvar" op="=" variable="name" value="Sumomo" />
<Action type="wait" timed="true" infinite="false" time="1" skipable="false" />
<Action type="showhide" object="Sumomo" time="1" show="true" wait="false" />
<Action type="wait" timed="true" infinite="false" time="0.5" skipable="false" />
<Action type="showhide" object="Border02" time="0.5" show="true" wait="true" />
<Action type="change_state" object="Sumomo" state="9" desc="Surprised" />
<Action type="playvocal" name="Eh?" volume="1" />
<Action type="say" who="???" phrase="Ah!" />
<Action type="say" who="???" phrase="We- Welcome!" />
</Page>
I understand what you mean and work in a similar way when I'm programming. There's a certain "flow" to the way you work and I want to replicate that in Novelty. But in Novelty you're not working with code per se, rather with self-contained "blocks" called actions/activities/events (I still haven't settled on what to call these guys :p). Of course these blocks can be copy-pasted freely and you can move them around and change their relative order.
Additionally there's a dedicated button for adding dialog (as well as a keyboard short-cut). Dialog-actions will remember character names from previous entries so you don't have to retype the name all the time. My goal from the very beginning was to be able to go in and say "I should flesh out this dialog some more" or "I don't like the way this scene plays out. I should change it" and I believe I've met that goal.
Another thing that's important to the "flow" is being able to navigate your code quickly. In programming, what I tend to do anyways, is to scan bodies of code for certian landmarks, being specific keywords or abstract "shapes" in the formatted code. I've tried to replicate this by color-coding each block based on it's archetype as well as giving them all individual icons.
I also try to minimize the amount of actions you need to perform a certain task. For instance there's are two actions: "Show object" and "Move object". They're both useful in their own respect but there's also an action called "Show object at" which does both. It's only purpose is to create a smoother experience for the author.
I'm ranting now. Obviously I've put a lot of thought into this and I always try make sure that you can work at a fast enough pace, but once the alpha is out you'll all be able to either confirm my hopes or prove me wrong. :p