Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Aaaaaargh!!

Rhombur Volos
King of Scripture & Kebab
Join date: 6 Oct 2004
Posts: 102
12-18-2004 20:43
Hello. This is not a rant, but the title is still quite fitting.

I've been working on an airborne vehicle all day, testing and building it, when i figured it would need just two more prims to top it off, resulting in a sum total of 21 prims.

So i added the two prims, tested the vehicle and noticed that two parts had turned invisible. Since the model had been relinked, all prims had changed numbers.

I found the new child numbers for my afterburners, corrected the script and hoppety-hopped into the cockpit of my craft, ready for a final test flight.
....
....
Nothing.

I spent about an hour trying to correct it, rearranging prims and relinking to get lower child numbers, removing the alpha modifier from the script entirely and putting it in a separate script, but nothing worked, _except_ using the old script, the one which modified alpha on wrong child numbers. Nothing else worked.

I tried starting from that one and correcting the child numbers again, and still nothing.

This is clearly a bug.
Where should this be reported to make sure it gets attention, and is there a workaround?

If you have _anything_, do not hesitate to reply :)

Addition: I tested the new version of the script on the old, 19-prim version of the vehicle - this worked fine, except of course that the script turned off alpha on the wrong prims.
Jediborg Wishbringer
Second Life Resident
Join date: 15 Nov 2004
Posts: 20
12-18-2004 21:32
i to have been working with airborne vehicles for a while, if you stop by sometime when im online, maybee we can compare notes, without more info on your specific problem, i cant help you.....

as to where to report a bug....no clue

Jediborg
Kurt Zidane
Just Human
Join date: 1 Apr 2004
Posts: 636
12-18-2004 21:37
Umm I'm not farmilure with the script, but I do know it is possible to program a script to fetch the name of each linked primitive If you label the primitives, you could then have the script scan all primitives it is linked to. This way you can unlink, and re link the primitives in any order and the script will still function.
Rhombur Volos
King of Scripture & Kebab
Join date: 6 Oct 2004
Posts: 102
12-18-2004 22:39
From: Kurt Zidane
Umm I'm not farmilure with the script, but I do know it is possible to program a script to fetch the name of each linked primitive If you label the primitives, you could then have the script scan all primitives it is linked to. This way you can unlink, and re link the primitives in any order and the script will still function.


Well, that wouldn't really be necessary to get the vehicle to function in this case.. The reason i need the child numbers is because one of my functions sets alpha in order to hide/show the thruster flames. All that happens if i don't have the right numbers is that a couple of prims end up missing.
The fault here is most likely not related to any errors in my script, since it compiles and works normally when not attached to the 21-prim ship. It's more likely something odd with the way SL applies the script to my vehicle.
Moleculor Satyr
Fireflies!
Join date: 5 Jan 2004
Posts: 2,650
12-19-2004 05:14
Uhm... Odd suggestion, but try copying and pasting the newer script into a brand new script file and running that instead. I've heard (but never seen, and I script like crazy) that occasionally a script's file gets messed up somehow.

Otherwise, I'd suggest shoving as many debug messages into your new script to see what's firing and what's not.
_____________________
</sarcasm>
Adam Zaius
Deus
Join date: 9 Jan 2004
Posts: 1,483
12-19-2004 06:50
From: Moleculor Satyr
Uhm... Odd suggestion, but try copying and pasting the newer script into a brand new script file and running that instead. I've heard (but never seen, and I script like crazy) that occasionally a script's file gets messed up somehow.

Otherwise, I'd suggest shoving as many debug messages into your new script to see what's firing and what's not.


Yeah, this is called bytecode corruption, I havnt seen much of it since 1.4, but Hank ramos just lost a script to it the other day, so there's a chance the bug is back. :|

My first however thought after reading this was:

- Is the script in the root prim of the object?
Vehicles will not work unless this is the case.
_____________________
Co-Founder / Lead Developer
GigasSecondServer
Rickard Roentgen
Renaissance Punk
Join date: 4 Apr 2004
Posts: 1,869
12-19-2004 11:03
also, sometimes if you change vehicle scripts, ie delete the existing one and drop in a new one, the new one won't work. try unlinking the root prim, shift draging it oiut of the way (which will leave a new prim behind) and see if that helps. I've had this happen before.
_____________________
Rhombur Volos
King of Scripture & Kebab
Join date: 6 Oct 2004
Posts: 102
12-19-2004 11:13
Well, these were all good suggestions, and thanks for the help :)

..But to me it seems the problem wasn't in the script at all. I solved the problem by making sure that the two new prims did not intersect with the main prim. Voila. For some reason, this caused a whole world of problems for the vehicle script. Might be due to the fact that both prims were spheres with cut, hollow and dimple modifications.

First thought: "What the...?"
Second thought: "Odd."
Third: "Well, that was just silly."

I wonder how many others might have been equally frustrated with such problems...
DoteDote Edison
Thinks Too Much
Join date: 6 Jun 2004
Posts: 790
12-19-2004 15:09
Earlier today, I wasted an hour trying to debug a script that didn't seem to do anything after working the first time. Turns out, I fogot that I'd unchecked the <RUNNING> box after the first run spammed.
Maximus Zander
Registered User
Join date: 30 Apr 2004
Posts: 55
12-21-2004 04:17
Are you using linkmessages?
If you are, ill suggest you do not send messages to just one child.
Send the message through out the whole set LINK_SET.

And just do a check in the childscript to see if it is a call for that child.
Just use an integervalue across the set that you check from the childscript.
if(num==15) etc

/ Max
Maximus Zander
Registered User
Join date: 30 Apr 2004
Posts: 55
12-21-2004 05:24
Also, sometimes the scripts deactivates itself and u sit there ripping your hair out trying to figure out why it doesnt work.

Just look on the bottom left and mark it :D.

Also, sometimes you rez the object you want to test..in a space where scripts is not allowed hehe.

Never look passed the obvious :)


/ Max
Rhombur Volos
King of Scripture & Kebab
Join date: 6 Oct 2004
Posts: 102
Ahhhhhhhhhhhh.
12-22-2004 18:59
I finally found a logical explanation to this recurring bug:

While i was making the two extra prims for the vehicle, i used duplicates of the main prim, as the two new ones were to have almost exactly the same dimensions and were placed at the same local coordinates. In doing so, i forgot to remove the vehicle script, unknowingly creating a vehicle with three scripts fighting for control.

Sometimes the vehicle worked fine, but it would bug and mostly not work if i tried rezzing it again. I have no idea why i didn't think of that before :P

I found the bug by going through the vehicle prim by prim, and finally found the two culprits.
It works fine now, thanks for all your suggestions :)