New Quest 4 bug

Dr.Froth
26 Feb 2007, 08:08
:x I have isolated a bug that had been bugging (sorry about the pun) me for a minute now. Here are the steps to recreate a crash of Quest.

1.) Add a conditional.

2.) Make one of the choices "print a message" and then type in about six sentances worth of whatever. The following worked for me if you want to recreate this:

"You swear that you can almost see him move as you pull a match from the matchbook, strike it, and gingerly toss it onto the body at your feet. You jump back as fire erupts to engulf the form of the scientest in a roaring inferno. The corpse lets out a massive bellow, like something a buffalo might have sounded out in extreme distress, as the flames lap at it hungrily. Suddenly the entire display in front of you is engulfed in a giant, unnatural green fireball. The scene is so bright that you must shield your eyes from what is going on, though even closed tightly, you can still discern the radiance of the emerald ball of fire. And then it is over, almost as quickly as it begun, and when you finally look over at the floor in front of you all you can see is the smoldering skeleton of David Sanders."

3.) Try to close the box and watch as quest crashes. (interesting note: if you put the above paragraph in the "then" box it works no problem. If you put it in the bottom box then the program will take a dive).

I can work around this by using text blocks, but it is frustrating because I am not sure exactly how much you can type into the standard "print a message" box before it triggers a crash. I am tired of having to redo stuff as a text block after a crash. Any suggestions? Anyone else having this happen to you as well? Alex...

Arbutus
27 Feb 2007, 00:19
Doesn't crash for me. Suggestions:
- Copy text to a text editor as soon as you write it.
- Save often

Alex
27 Feb 2007, 11:33
There is a bug in v4.0 that causes problems when a script line reaches 1024 bytes.

Also I've already had a report of a bug that means QDK crashes when you put a large amount of text into the "Print a message" box - it sounds like this is the same thing, although it's interesting that you say it doesn't happen when you put the text into the "Then" box.

Can you please send me the ASL file that demonstrates this problem?

witch wyzwurd
27 Feb 2007, 18:07
This happens in 3.53 also. I haven't mentioned it until now because I figured this was commonly known by users. I found that using the Text Block creates an unwanted return space though, even if you do include a |xn command. To work around this, just split the long text in half. At the end of the first part of the long text add an |xn and then double-space (for spaces after period/before new sentence). Then in a new Print Msg command include the second half of the long text, and put the command for the second half of the long text right underneath the command for the first half of the long text. The two halves will appear as one long text to the viewer. This way you can leave behind Text Blocks (or a Procedure if you use this way to eliminate unwanted line breaks).

007bond
27 Feb 2007, 20:49
While I'm all for fixing bugs like this, It makes me wonders why you can't just break it up into multiple paragraphs and display them all separately. It'd make it a lot easier to read.

paul_one
27 Feb 2007, 22:31
Does that effect Quest itself - or only QDK?

And is that REAL lines, or lines after being parsed/interpreted by Quest?
IE:
msg <this is a really long line of text........+infinitum!>
versus,
msg <this is a long line of text too _
but it is split into separate lines _
and put together after by Quest!>

And for textx with |xn in them, try:
msg <one two three |xn>
msg <four five |xn>
msg <six seven!>
Gives:
one two three four five six seven
A space before and |xn gives you a space in the output.