Page 1 of 1

Specific script causes a bug (WIN XP)

Posted: 10.11.2004, 15:07
by Adirondack
Howdy gents,

there is a strange behavior of a specific script on my Win XP (SP2) machine, when I reduce the filename characters of this script.

I just want you to test it on your XP-machines to verify and reproduce this strange bug (and tell me, what is going on with it).

It is my german translation of "Space Opera". Do not worry about the language, you do not have to understand the words. The bug is a visual effect.

Get the script on Celestia Motherlode:
http://celestiamotherlode.net/creators/adirondack/scripts/SpaceOpera-de.zip

Then try this experiments:

1.
Run the script as it is.
After the credits you will fly smoothly from a deep space towards the milky way and SMC & LMC (total view).
Now you can cancel the script; you have seen what you should see.

2.
Now rename the script "Space_Opera_2004-de.cel" to "Space.cel" and run this renamed script.
Now you will see no smooth flight to the milky way, instead of it suddenly a "nebula wall" of the milky way will appear for a few seconds and then you get directly the total view of the milky way and SMC & LMC
(the smoothly flight is missing in this case).

What did happen?
With a shorter filename the "gotoloc" command within the script does not work at all.
Obviously Celestia ignores this command now.
This happens with Celestia 1.3.2 (and 1.3.1 too).

Question: Why?

I already discussed this phenomenon with Harry. He told me, with Linux OS everything is fine (no bug as described above). But he also can reproduce the bug with WIN. You too? :?:

Can somebody take a look at the memory management of Celestia in this case? Chris? Fridger? Anybody else?

Adirondack

Re: Specific script causes a bug (WIN XP)

Posted: 10.11.2004, 15:57
by Harry
BTW, I saw this problem on my system too, so apparently it's not restricted to Adirondack's system.

Adirondack wrote:Can somebody take a look at the memory management of Celestia in this case?

I should add that this was my "wild guess" at a possible source for this problem. I can't think of any source for this problem, so the best guess is some kind of weird memory corruption. But it's just a guess, not to be taken too seriously.

Harald

Posted: 11.11.2004, 23:14
by HB
I've downloaded the file "Space_Opera_2004-de.cel" and ran the script.
Unfortunatly I couldn't see any difference with de "bug" description at point 2
Now you will see no smooth flight to the milky way, instead of it suddenly a "nebula wall" of the milky way will appear for a few seconds and then you get directly the total view of the milky way and SMC & LMC
(the smoothly flight is missing in this case).

After renaming this file there is no difference in behavior as well.

But I've noticed the following, which might explain the strange things on your computer. It seem's that the the script is written on a Unix or MAC computer. I've noticed some "lehrzeigen" or control-character at the beginning of the first 13 lines and on last line. Also it is possible that Celestia-scripts works different on Unix or Mac platforms.
On my winxp-platform there was no difference in behaviour after converting this file from MAC to DOS format. It still behave as quoted above.
Another thing is that Windows will keep dll files a while into memory. On a slow computer you will notice that Celestia startsup quicker when you run Celestia again short after shutting down the program. On a fast computer you will hardly notice a difference, it's unlikely but maybe this can have some a influence in the way cel-scripts run.

Anyway after changing the script a little it's works fine: I've added the command "center {}" between "select{ object "milky way"}"and "track{}"
I think it works now in the way as you've discribed in point 1.

Hans.

Posted: 12.11.2004, 12:55
by Adirondack
Thank you, Hans.

It does not matter how the script is formatted.
It is the same behavior with a dos-txt format! I have checked this already.

Please try to force the bug:
Move the buggy .cel-file out of the Celestia directory (without shorten the filename). Let us say to C:\testing\
Run the script from there. Does it still work proper?
On my system it runs not proper outside of a Celestia directory (but other scripts do!).

Adirondack

Posted: 14.11.2004, 20:38
by HB
Before sending my previous reply I've ran this script from different directories, start Celestia with the original script as it's downloaded and after I've renamed the file. Also I've starts the script in both situations direct after reboot of the computer. Unfortunatly there was no smooth start of your script.
I've downloaded the file "Space_Opera_2004-de.cel" and ran the script.
Unfortunatly I couldn't see any difference with de "bug" description at point 2
Quote:
Now you will see no smooth flight to the milky way, instead of it suddenly a "nebula wall" of the milky way will appear for a few seconds and then you get directly the total view of the milky way and SMC & LMC
(the smoothly flight is missing in this case).

After renaming this file there is no difference in behavior as well.



And indeed, on my computer I couldn't find any different behaviour too in the way the script is formatted.

Hans.

Posted: 14.11.2004, 22:38
by Adirondack
Anyway after changing the script a little it's works fine: I've added the command "center {}" between "select{ object "milky way"}"and "track{}"
I think it works now in the way as you've discribed in point 1.

Hans, you are right! With a center-command between the other commands it works in every directory and no matter how long the filename is.

But there're still the questions:
Why does the script not work properly, without the center-command, when the filename is shorter or when the script is not within the Celestia dir?
And why does it work fine, when the script without the center-command is longer and within the Celestia-dir?

Isn't it weird?

Adirondack

Posted: 15.11.2004, 09:42
by HB
Yes, it's very weird.

But I'm affraid I don't have an answer to you.
I'm using a betaversion of Celestia 1.3.4

What mentioned earlier I can't get a proper working script from the original downloaded script. So this renaming-effect didn't show up. Maybe it can be caused by different kind of operating systems or between different versions of Celestia. Especcialy the the way waiting time's are treaded in the scripts.
A waiting time is very important within a script: commands will be ignored if a waiting time isn't properly set.

By the way, it's a very nice working script.

Hans