Author Topic: Luyten Civil War technical problem  (Read 239 times)

0 Members and 1 Guest are viewing this topic.

Offline CT27

  • 210
Luyten Civil War technical problem
In the "Luyten Civil War" campaign (mission "From My Cold Dead Hands") I ran into a technical problem I haven't encountered before.

I'm supposed to scan certain parts of the Arcadia station in the mission.  In the directives list I'm supposed to scan four [4] parts of the station.  The parts are represented by items in the escort list.  However, when I scan a part, the directives list stays at [4] and doesn't go down.  I scan all four points but the directive stays at [4].  After I've scanned all four nothing happens and I can't progress in the mission.

I tried a debug build and got this when I hit play on the launcher:
Assert: "first_frame != -1"
File: missionshipchoice.cpp
Line: 2807
Failed to load icon iconINFFighter02


ntdll.dll! ZwWaitForSingleObject + 10 bytes
KERNELBASE.dll! WaitForSingleObjectEx + 156 bytes
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
kernel32.dll! BaseThreadInitThunk + 13 bytes
ntdll.dll! RtlUserThreadStart + 33 bytes
[...]
[ This info is in the clipboard so you can paste it somewhere now ]


Use Debug to break into Debugger, Exit will close the application.

ntdll.dll! ZwWaitForSingleObject + 10 bytes
KERNELBASE.dll! WaitForSingleObjectEx + 156 bytes
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
fs2_open_3_8_1_20171022_4e7f8fa_x64_SSE2-FASTDBG.exe! <no symbol>
kernel32.dll! BaseThreadInitThunk + 13 bytes
ntdll.dll! RtlUserThreadStart + 33 bytes

I was playing on a post 3.8.0 nightly.  A log is also attached.

 

Offline TopAce

  • Stalwart contributor
  • 212
  • FREDder, FSWiki editor, and tester
Re: Luyten Civil War technical problem
I tested it with a 22 October nightly and it didn't work for me either. Weird. It surely worked when the mod was released. I don't know what's going on here, but I'll investigate it tomorrow.
My community contributions - Get my campaigns from here.

"Truth" is the opinion of the majority which it can enforce on the minority. Members of the minority have two choices: join the bandwagon or think. Those who do not fall into line will be brutally crushed.
The tools to maintain order are: lies, double standards, and hypocrisy. The most powerful and the most insidious of them is hypocrisy

 

Offline Novachen

  • 27
  • The one and only Capella supernova.
Re: Luyten Civil War technical problem
Mhh.. i have changed the ship-vanish SEXP for the investigation points with the destroy-instantly SEXP and it worked.

Maybe ship-vanish works different now and the game forgot everything what the player have done with the object. Especially if the object has a arrival cue, maybe the game still thinks, that the object is still there. I don't know.

Put that into data\missions.

« Last Edit: November 15, 2017, 02:41:55 pm by Novachen »
Female FS2 pilot since 1999.

German Translations created by me:
Between the Ashes: Slaves of Chaos, FreeSpace Port, The Destiny of Peace, Silent Threat: Reborn, Awakenings (in development),

Other projects:
FSPort Mission Upgrade, Out of the Shadow: Nova Safiya Edition (Remake of the Out of the Shadow campaign, in development)

If you want to know, what my nickname means, -chen is a german diminutive term, so you can translate Novachen as something like Little Nova or Novalet.
Even my original meaning of this name is more like "Sweet pretty deadly (Super)Nova" ;).

 

Offline CT27

  • 210
Re: Luyten Civil War technical problem
Thanks Novachen.

 I played the mission through the techroom and it worked.

 

Online Goober5000

  • HLP Loremaster
  • Administrator
  • 214
    • Goober5000 Productions
Re: Luyten Civil War technical problem
Mhh.. i have changed the ship-vanish SEXP for the investigation points with the destroy-instantly SEXP and it worked.

Maybe ship-vanish works different now and the game forgot everything what the player have done with the object.

This is the correct problem and solution.  I just looked at the code.  For ships that are no longer in the mission, the code checks the status which is saved when a ship departs or is destroyed.  This status is not saved when a ship is vanished.

I am not sure why the sexp worked previously.  It was rewritten at one point, but the rewrite did not affect that aspect.

 

Offline TopAce

  • Stalwart contributor
  • 212
  • FREDder, FSWiki editor, and tester
Re: Luyten Civil War technical problem
So if I understand you correctly, all missions with ship-vanish must be fixed?
My community contributions - Get my campaigns from here.

"Truth" is the opinion of the majority which it can enforce on the minority. Members of the minority have two choices: join the bandwagon or think. Those who do not fall into line will be brutally crushed.
The tools to maintain order are: lies, double standards, and hypocrisy. The most powerful and the most insidious of them is hypocrisy

 

Online Goober5000

  • HLP Loremaster
  • Administrator
  • 214
    • Goober5000 Productions
Re: Luyten Civil War technical problem
It depends on how ship-vanish is used.  The sexp is designed to make the ship disappear without a trace.  So sexps should not really refer to ships after they have vanished, due to unpredictable effects.

In this case, the sexp that broke was cargo-known-delay.  I don't know if any other sexps would break.

  

Offline Novachen

  • 27
  • The one and only Capella supernova.
Re: Luyten Civil War technical problem
I am not sure why the sexp worked previously.  It was rewritten at one point, but the rewrite did not affect that aspect.

In the original mission it is visible, that the objectives goes down to [3] for a brief moment, before the Investigation point vanishes and the number goes up to [4] again. But actually... because if one Point vanish it should be the same as this point was never in the mission in the first place for the game. And so there should not be never 4 ships to scan. I think that another sexp was also rewritten so that this one does not work anymore.

Actually i still think, that this one have to do more with the warpless Arrival Cue the four ships have. Because with it there is a evidence (aka Log) for the game, that the ships have arrived in the mission and so there are still in the mission as long there is no log about their departure or destruction.

Would be intesting if this would work, if you use ship-create instead.
« Last Edit: November 22, 2017, 02:38:08 pm by Novachen »
Female FS2 pilot since 1999.

German Translations created by me:
Between the Ashes: Slaves of Chaos, FreeSpace Port, The Destiny of Peace, Silent Threat: Reborn, Awakenings (in development),

Other projects:
FSPort Mission Upgrade, Out of the Shadow: Nova Safiya Edition (Remake of the Out of the Shadow campaign, in development)

If you want to know, what my nickname means, -chen is a german diminutive term, so you can translate Novachen as something like Little Nova or Novalet.
Even my original meaning of this name is more like "Sweet pretty deadly (Super)Nova" ;).

 

Online AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: Luyten Civil War technical problem
Actually i still think, that this one have to do more with the warpless Arrival Cue the four ships have. Because with it there is a evidence (aka Log) for the game, that the ships have arrived in the mission and so there are still in the mission as long there is no log about their departure or destruction.
Not quite; the way a SEXP like is-cargo-known-delay determines if a ship is present is by iterating through every single ship in the mission and comparing their names; it only checks the mission log to see if it's already departed. In other words, it doesn't check for the ship having arrived at all; it just assumes that anything that hasn't departed/been destroyed and isn't currently in the mission must not have arrived yet.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.