Page 1 of 1

A Funny Wingman Bug

Posted: Thu Jan 03, 2008 10:08 am
by FAD
Funny, yet somewhat annoying...

Was in a small battle when one of my wingmen got disabled (spinning in circles) then I made a jump back to a previous system. Everything seemed fine, my wingmen jumped as well, including the disabled one.

But, the disabled wingman never recovered! He sat in the gate just spinning away pretty as you please so I waited...and waited and...nothing, still spinning! I wandered around for quite a while and went back to check on him. Yep, still spinning!

No matter what system I jump to, he follows but remains disabled... been that way for over an hour.

Posted: Thu Jan 03, 2008 11:27 am
by Cardinal
Too much martian nori...

Posted: Fri Jan 04, 2008 1:51 am
by F50
does he have an infinite EMP effect or is it just an AI problem?

Posted: Fri Jan 04, 2008 8:23 am
by FAD
It's the EMP effect that's carried over. He's completely disabled no matter where I jump to.

Posted: Fri Jan 04, 2008 9:07 am
by Periculi
Maybe shoot it with another EMP and see if it wears off with a fresh blast.

Posted: Fri Jan 04, 2008 9:30 pm
by george moromisato
Definitely a bug.

My theory is that the "paralysis timer" overflowed. Currently I use a 16-bit number to keep track of the number of ticks that a ship is paralyzed for.

If the paralyzed time went over ~8 minutes (32,767 ticks) then the value goes negative and (I think) we never recover.

Thanks for the report!

Posted: Sat Jan 05, 2008 10:33 am
by Desolator
george moromisato wrote:Currently I use a 16-bit number to keep track of the number of ticks that a ship is paralyzed for.
Today most people have over 256 megs of RAM, so what exactly prevents you from using a long int? A few bytes isn't a big deal and it would prevent overflow bugs. Or you could as well make it unsigned and you have ~16 mins then, with the same memory.

Posted: Sat Jan 05, 2008 4:22 pm
by Kamikaze
Desolator wrote:Today most people have over 256 megs of RAM
No, no we don't.

With my ram-sucking onboard video card that can't be disabled, I have all of 248mb of ram.

:P

But while the timer may have overflowed in this case, that doesn't mean that it was the fault. The fault was somewhere in the jump... Possibly the timer gets forced negative in the jump?

Just an idea.

~Kyle

Posted: Sat Jan 05, 2008 4:31 pm
by george moromisato
Desolator wrote:Today most people have over 256 megs of RAM...
True.

But, I started working on Transcendence in 1998-1999. I added the EMP (and the paralysis timer) in 2001.

Back then, fewer people had enough RAM...

Posted: Sat Jan 05, 2008 10:46 pm
by Ttech
george moromisato wrote:
Desolator wrote:Today most people have over 256 megs of RAM...
True.

But, I started working on Transcendence in 1998-1999. I added the EMP (and the paralysis timer) in 2001.

Back then, fewer people had enough RAM...

luckily times have changed. :)

We now can have those better effects.

Posted: Sun Jan 06, 2008 6:37 am
by Desolator
george moromisato wrote:
Desolator wrote:Today most people have over 256 megs of RAM...
True.

But, I started working on Transcendence in 1998-1999. I added the EMP (and the paralysis timer) in 2001.

Back then, fewer people had enough RAM...
Still 2 more bytes didn't mean much :)

Posted: Thu Jan 10, 2008 3:19 pm
by Czert
256 kb of memory will be sufficient for everbody.

Bill Gates.

Posted: Tue Jan 15, 2008 2:14 am
by Charon Mass of Goo
LoL?

Yeah, that happened to me too once. it was really annoying, so I decided just to destroy the wingman. that took care of it...

Posted: Tue Jan 15, 2008 7:37 am
by Desolator
Czert wrote:256 kb of memory will be sufficient for everbody.

Bill Gates.
:lol: :lol: :lol: :lol: :lol: