Author Topic: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships  (Read 12564 times)

0 Members and 1 Guest are viewing this topic.

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
At the end of a long day's FRED I stretched in satisfaction and clicked commit. My mission was a masterpiece. Now my testers could caress its marble perfection and whisper admiring things.

[20:46] <battuta> who's around to test
[20:46] <battuta> Aesaar is it YOU
[20:48] <Aesaar> wait, what?

I ate grapes as Aesaar prepared his faceballs to absorb my ****ing masterwork. I couldn't wait to spoon his brains back into his head and listen to his feverish adoration!

[21:07] <Aesaar> game crashed



FLASH BACK

BOOM!

NOW WE'RE BACK ONE DAY

There's heavy testing going down: event shrapnel rattling off the walls of the dev channel, slabs of :words: frying in peanut oil, burning Germans incinerating HUD code. Axem's in major trouble. There's a support ship latched to him and it won't come off. He's being...harassed. It's a controlling spouse, and it won't even let him fire his ammo-based weapons. 'no' it burbles 'the ammunition is mine. gibe back'

[19:37] <@Axem> TTUTA
[19:37] <@Axem> MAH WEPONS
[19:37] <@Axem> gattler doesnt work after rearming
[19:37] <@Axem> and i cant fire secondaries
[19:37] <@Axem> just my maul and rapier
[19:38] <battuta> whoa, wtf?
[19:39] <battuta> :|
[19:39] <battuta> why would that happen?
[19:39] <@Axem> OY
[19:39] <@Axem> SUPPORT 1
[19:39] <@Axem> GET OFF ME
[19:39] <battuta> AAAAAhahahaha

Because the mission's critical path requires some interaction with the support ship, I set up a series of events to try to help the support ship clear out: wiping its goals, telling it to depart, soothing it with gentle compliments. But there's just something damn funny about this support ship. It doesn't lock onto the player and refuse to let go any more, but it's still sort of...neurotic. It detaches, has a panic attack, and locks itself in place vibrating furiously. If you give it an order it petulantly ignores you. It won't even depart.

I stare in bafflement at this emotionally damaged support ship and decide I'll figure it out later. Maybe he'll calm down.

BACK TO THE PRESENT DAY ****ING WHOOSH



My mission. It was supposed to befuddle my testers with its brilliance! Instead it'd gone full Hindenburg! Smashed itself straight into the desktop like a 3.6.10 build!

My mission had tactical jumps. Dialogue trees! Multiple endings! A radio station with a dance channel AND a jazz channel! It was supposed to be HAUTE ART! What piddling little scrap of pissant code DARED -

'hey dude' Rian said. 'you ever gonna come to bed'

'NOOOOOOO' I roared. 'I FOUND A BUG'

I booted up DEBUG and ran the mission until I could repro Aesaar's crash. After the player docked with a support ship and the support ship received its orders to depart, the player made a mid-mission jump, causing all other ships in the mission to depart. As soon as the player hit the subspace corridor, the game crashed. It even produced a cryptic error:

Assert: ss

The SS! I hate those guys! I'd better make sure it was them, though. I ran the mission again, using a dev shortcut to skip straight to the subspace jump.

NO CRASH



Let's diagram the case:

MISSION START
Clue 1: Support ship freaks out and trembles
Clue 2: Player jumps to subspace. Most other ships in the mission depart. (Support 1 has already been ordered to depart by this point, but it's busy trembling)
Clue 3: Mission crashes with weird Nazi error...if the support ship has previously arrived in the mission

This support ship was trouble. I was sure of it. Maybe SS stood for Support Ship, not Schutzstaffel. Maybe I needed to...sooth the support ship.

It was 1:00 AM and the room baked in the heat of my rig as it crunched through four separate instances of FreeSpace. I had my mission open in FRED and Notepad, trying to build a repro test case. But it wasn't working. No matter how I tried to spook the support ship in a clean, retail-assets mission - clearing its orders, ordering it to depart, setting max-concurrent-support-ships to 0 - I couldn't reproduce that weird, spooked freezing behavior. I couldn't get the support ship to tremble and sob the way it had with Axem, the way it had in the depths of my masterpiece.

Could the support ship be intimidated by my mission? Did it have stage fright? The support ship had to be causing the crash. But why would it crash during the subspace jump? None of the events in that part of the mission even TOUCHED Support 1!

I batphoned Niffiwan and ShivanHunter. We put our heads together and tried to figure out what. Niffiwan suggested that the problem had to do with a ship attempting to depart to an invalid fighterbay. Okay, could be - two ships in the early parts of the mission had a fighterbay, and they were leaving during the subspace jump event.

But not a single ship in the mission was assigned to depart via fighterbay. And the support ship wasn't being told to depart during the subspace jump event.

****



I wasn't going to bed. My flesh had started to peel from my skeleton in the heat. The whispers of ancient mirages moving across the glass deserts of Vasuda crowded my skull like epitaphs spoken in the final instant of a race long dead.

I continued the debug march. There were two primary lines of attack: building a clean mission that could repro the bug. This line of attack was pretty much turning into the Somme, in that everything I threw at it turned into hamburger, and CHRIST I wanted a hamburger so thank God for late-night takeout.

The other line of attack involved destroying my masterpiece.

Event by event I stripped my mission apart. Though my hands trembled on the keyboard, though I wept at the vivisection, though Rian turned away in shame, I peeled my mission down to its finely enameled bones - and sector by sector I drove the bug towards its lair.

The bug only occurred if the player jumped to subspace after meeting the support ship. Could it be the depart orders I was giving the ship? No, removing those had no effect, the crash still occurred. But we were still setting the maximum number of concurrent support ships in the mission to zero, and that could be telling the support ship to depart.

It all came back to that support ship and its damn emotional issues.

Tears dried on my cheeks. My flesh crumbled into a cloak of dust, a vortex of ash and grief, whirling penitently against my bones. But I FREDded on. And, at last, I made a breakthrough. The crash occured - only occurred, a single, necessary, sufficient cause - if the support ship was given a depart order. This caused the ship to begin to tremble and freak out, just as it had with Axem. The source was irrelevant.

But my support ship in my clean test mission was departing fine. And how was the support ship's trembling linked to the crash?

It all seemed so hopeless. I'd poured my soul into nothing. The engine would eat me up and **** me out. Rian would never love me again. I just wanted it all to...end.



And then everything began to snap together.

Niffiwan had said a ship was attempting to depart via an invalid fighterbay. The support ship had trembled and freaked out like it was terrified. And what we are all really afraid of, deep down? Of being alone.

What if the support ship was convinced it was being abandoned? What if it was crashing the mission because we'd taken away the only place it had left to go? What if we'd somehow accidentally destroyed its subspace drive, and it froze in place when ordered to depart because it wanted to go to a nearby fighterbay but didn't have the self-confidence?

And then, when we jumped to subspace and removed most of the ships in the mission area, what if the support ship saw all its fighterbays leaving, watched all hope depart, and DESTROYED THE ENTIRE MISSION RATHER THAN BE ALONE!?

Suddenly I could feel for that little ship.

How could the support ship's subspace drive have been removed, though? There was only one SEXP in the entire mission targeting subspace drives: in the mission's first frame, we fired alter-ship-flag: no subspace drive at -

ALPHA ONE.

It seemed like madness. Why would taking away Alpha One's subspace drive also take it away from the support ship? But if I was right, and support ships had self-esteem issues...what if the support ship tried to be like Alpha One any way it could?

I removed the alter-ship-flag SEXP. Gave Alpha One back her subspace drive.

The crash vanished. The support ship stopped trembling. It departed peacably, and the mission worked.

I was right. Whenever Alpha 1 lost her subspace drive, SO DID THE SUPPORT SHIP. He just wanted to be like his hero! But if he was left alone with no subspace drive and no fighterbay, he'd freak out!

And I was able to repro the minimum case in my test mission. All it took was this: if a support ship arrived into a mission after alter-ship-flag: no subspace drive had been called on Alpha 1, it would not have a subspace drive. If it arrived and there was a fighterbay nearby, it could still be told to depart, but it would freeze in place and tremble. And if that fighterbay later left, the terrified support ship would crash the mission.



Or was it? As I slipped the issue into Mantis, I began to wonder. Who could have poisoned the support ship's confidence? Who could have torn that poor soul down, convinced him that we were trying to abandon him - leave him in a mission with no way to get home?

Could there be an archvillain in the shadows, a nefarious force responsible? Could it possibly be who I suspected? Could it be...?

'wow' Rian said. 'you're a skellington'
« Last Edit: February 04, 2014, 11:17:32 am by General Battuta »

 

Offline An4ximandros

  • 210
  • Transabyssal metastatic event
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Quote from: General Battuta
But there's just something damn funny about this support ship. It doesn't lock onto the player and refuse to let go any more, but it's still sort of...neurotic. It detaches, has a panic attack, and locks itself in place vibrating furiously. If you give it an order it petulantly ignores you. It won't even depart.


Quote from: General Battuta
Niffiwan had said a ship was attempting to depart via an invalid fighterbay. The support ship had trembled and freaked out like it was terrified. And what we are all really afraid of, deep down? Of being alone.

What if the support ship was convinced it was being abandoned? What if it was crashing the mission because we'd taken away the only place it had left to go? What if we'd somehow accidentally destroyed its subspace drive, and it froze in place when ordered to depart because it wanted to go to a nearby fighterbay but didn't have the self-confidence?

And then, when we jumped to subspace and removed most of the ships in the mission area, what if the support ship saw all its fighterbays leaving, watched all hope depart, and DESTROYED THE ENTIRE MISSION RATHER THAN BE ALONE!?
:(

Round of applause for the General, Ladies and Gentlemen!

 

Offline crizza

  • 210
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
 :shaking:
Hillarius :D

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
UPDATE AND CRY FOR HELP: NIGHTMARISHLY CLINGY SUPPORT SHIP JUST RE-DOCKED WITH ME AFTER A REARM AND DRAGGED ME INTO SUBSPACE WITH IT

 

Offline NGTM-1R

  • I reject your reality and substitute my own
  • 213
  • Syndral Active. 0410.
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Some support ships are not meant to be.
"Load sabot. Target Zaku, direct front!"

A Feddie Story

 

Offline BritishShivans

  • Jolly good supernova
  • 29
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
the cycle is complete

first the support ship was a secret alien

now the support ships are kidnapping people

UEF support ships are clearly Vishnan agents

 

Offline Axem

  • 211
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
I told you bro. I told you about giving support ships sentience! BUT YOU DIDN'T LISTEN.

SEE WHAT YOU HAVE UNLEASHED UPON THE UNIVERSE?!

 

Offline StarSlayer

  • 211
  • Men Kaeshi Do
    • Steam
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
UPDATE AND CRY FOR HELP: NIGHTMARISHLY CLINGY SUPPORT SHIP JUST RE-DOCKED WITH ME AFTER A REARM AND DRAGGED ME INTO SUBSPACE WITH IT

Fly home, Support Ship. I work alone.



See? Now you respect me, because I'm a bug. That's the way it works.
“Think lightly of yourself and deeply of the world”

 

Offline niffiwan

  • 211
  • Eluder Class
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Hahahaha - exceedingly entertaining writeup of the bughunt :D
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline Hobbie

  • 28
  • It's Hot Drop O'Clock!
    • Minecraft
    • Steam
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Detective section needed more pointless drivel and silly metaphors. :P
In the arena of logic, I fight unarmed.

  

Offline CKid

Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Sometimes I wish HLP had a up-vote button.
If I agreed with you, we would both be wrong

 

Offline Shivan Hunter

  • 210
  • FRED needs lambdas!
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
I love these posts :D

I whipped together a test mission and did some stuff. Support ships inherit the subspace drive flag from Alpha 1, no matter who calls them in, and even if Alpha 1 is not the first ship in the mission file. They don't inherit any other flags that I can easily test for - for instance, no invulnerable, guardianed, protected, stealthy or hidden-from-sensors flags are inherited from Alpha 1, which implies that the no-subspace-drive flag is a special case.

 

Offline niffiwan

  • 211
  • Eluder Class
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
It is, along with shields.  If you're interested, have a read of this function: void mission_bring_in_support_ship( object *requester_objp ) in code/mission/missionparse.cpp.
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline Shivan Hunter

  • 210
  • FRED needs lambdas!
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Yeah, I see it. Seems a bit weird to assume that, though. I think a better solution would be to just let the FREDder control that whole thing using set-support-ship, since if you set both the arrival and departure cues to a (valid) fighterbay, the support will act as if it has no subspace drive (even if it gets an ai-warp-out order)*.

If you don't use that sexp, then the support ship definitely seems to have a subspace drive regardless of the ship flag, since it warps in...

*actually I tested that last night with some random fighter, lemme go test with a support ship, brb Possibly I confused ai-warp-out with a player depart order. Support ships go to their departure hangarbay if it's a player order or if they have the no-subspace-drive flag, but warp out as soon as they get the ai-warp-out order if they have a subspace drive.
« Last Edit: February 04, 2014, 05:13:07 pm by Shivan Hunter »

 

Offline Veers

  • 29
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Perhaps we should abandon the BP Universe before it consumes us further  :shaking:
Current Activities/Projects: Ideas and some storyline completed.

ArmA 2&3 Mission Designer and player.


WoD - I like Crystal. <3

 

Offline qwadtep

  • 28
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Perhaps we should abandon the BP Universe before it consumes us further  :shaking:
SUPPORT SHIP: imperate! metastatic ontovoric acatalepsis event! subversion of noosphere un - TERMINATE

 

Offline yuezhi

  • no u
  • 29
  • ¿¡you dare defy the commodore‽
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
When extraterrestrial relationships get too clingy, violent and obsessive, I punch in the afterburners and GTFO of that pop stand before she takes me to hell with her.
ϟIn Neo-Terra we Trustϟ
ϟGreat Tin Can Run (Download
☭Gods and Conquerors  - mission design, tech descriptions, sounds; currently 5% Book of Invasions(reserved)☭


░░░░░░███████ ]▄▄▄▄▄▄▄▄        ︻╦╤─   Bob is building an army.
    ▂▄▅█████████▅▄▃▂          ☻/         This tank & Bob are against Google+
Il███████████████████].       /▌          Copy and Paste this all over
  ◥⊙▲⊙▲⊙▲⊙▲⊙▲⊙▲⊙◤...     / \          Youtube if you are with us!

 

Offline Crybertrance

  • 29
  • Conventional warheads only, no funny business
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
 :lol: Battutta you just made my day.

Thank you!
<21:08:30>   Hartzaden fires a slammer at Cybertrance
<21:09:13>   Crybertrance pops flares, but wonders how Hartzaden acquired aspect lock on a stealth fighter... :\
<21:11:58>   *** The_E joined #bp [email protected]
21:11:58   +++ ChanServ has given op to The_E
<21:12:58>   Hartzaden continues to paint crybertrance and feeding the info to a wing of gunships
<21:14:07>   Crybertrance sends emergency "IM GETING MY ASS KICKED HERE!!!!eleventy NEED HELPZZZZ" to 3rd fleet command
<21:14:50>   Hartzaden jamms the transmission.
<21:14:51>   The_E explodes the sun

 

Offline Rheyah

  • 28
  • Will release something one day. Promise.
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Welp, this is a new meme.

Overly Attached Support Ship

 
Re: ENIGMA DEATH BUG pulverizes Battuta's skeleton, relationships
Extremely entertaining write up, thank you for some excellent and rather loud laughs. I hope this bug won't reappear as it seems fairly standard to want to lock down the player's subspace drive to provide tension or ensure they're not going anywhere but where they need to be.

The support ship has always proven to be a valuable asset or even distraction when need be, so I can see why it might want to behave to erratically :P.
I'm all about getting the most out of games, so whenever I discover something very strange or push the limits, I upload them here:

http://www.youtube.com/user/JCDentonCZ

-----------------

"Do you begin to see, then, what kind of world we are creating? It is the exact opposite of the stupid hedonistic Utopias that the old reformers imagined. A world of fear and treachery and torment, a world of trampling and being trampled upon, a world which will grow not less but more merciless as it refines itself. Progress in our world will be progress to more pain."
- George Orwell