View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002587 | FSSCP | gameplay | public | 2012-01-27 14:14 | 2012-02-14 00:47 |
Reporter | rodo | Assigned To | Goober5000 | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | not sure | OS | Windows 7 | OS Version | 64bit ultimate |
Product Version | 3.6.14 RC4 | ||||
Summary | 0002587: Canceling rearm procedure causes crash | ||||
Description | When rearming your ship, sending the cancel rearm command from the comms menu will crash FS2. Tested on "Surrender, Belisarius!" (first mission of fs2 retail campaign) with mvps 3.6.12 + patch. It also happens in mods, discovered issue on a mission of ED, so it's not mod related I guess. | ||||
Steps To Reproduce | Open any mission, deplete all your secondaries (or a lot of them). Call a rearm ship. Wait for it to dock. When it docks you may send the order to cancel. It will crash after doing that last step. | ||||
Additional Information | Crash warning from DEBUG version: Assert: goal_objp != NULL File: aicode.cpp Line: 10160 ntdll.dll! ZwWaitForSingleObject + 21 bytes kernel32.dll! WaitForSingleObjectEx + 67 bytes kernel32.dll! WaitForSingleObject + 18 bytes fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> fs2_open_3_6_14_RC4_DEBUG.exe! <no symbol> kernel32.dll! BaseThreadInitThunk + 18 bytes ntdll.dll! RtlInitializeExceptionChain + 99 bytes ntdll.dll! RtlInitializeExceptionChain + 54 bytes | ||||
Tags | No tags attached. | ||||
|
|
|
Confirmed here. Also, this isn't limited to the player and the "Abort Rearm" command. If any rearm procedure--including those for AI ships--is aborted for any reason other than the support ship being destroyed, the game will crash. I have also uploaded a mission to test for this. In it, Alpha 2's subsystems are damaged or destroyed, and his secondary banks are nearly empty, so a support ship will warp in to repair him. While they're docked, you can terminate the procedure by pressing "2" to destroy Alpha 2. You can also press "1" to destroy your own ship, just in case you need it. |
|
I looked over the source but couldn't figure out a quick fix. Leaving it to goober. My approach would be either triggering the animation when undocking BEFORE removing the reference to the goal_obj or triggering the animations from the routines each ship runs instead of triggering them for both at once by referencing by the goal_objp |
|
Will take a look. |
|
Fix committed to trunk@8398. |
|
Fix committed to fs2_open_3_6_14@8479. |
fs2open: trunk r8398 2012-01-29 04:19 Ported: N/A Details Diff |
fix Mantis 0002587 |
Affected Issues 0002587 |
|
mod - /trunk/fs2_open/code/ai/aicode.cpp | Diff File | ||
fs2open: trunk r8399 2012-01-29 04:19 Ported: N/A Details Diff |
coded for Mantis 0002587 but not actually used... this can allow a series of animations to be pushed and then popped |
Affected Issues 0002587 |
|
mod - /trunk/fs2_open/code/model/modelanim.h | Diff File | ||
mod - /trunk/fs2_open/code/model/modelanim.cpp | Diff File | ||
fs2open: trunk r8412 2012-01-30 23:53 Ported: N/A Details Diff |
more robust saving of dockpoint indexes (again for Mantis 0002587) |
Affected Issues 0002587 |
|
mod - /trunk/fs2_open/code/ai/aicode.cpp | Diff File | ||
fs2open: fs2_open_3_6_14 r8479 2012-02-13 16:18 Ported: N/A Details Diff |
Backport: Trunk r8398; fix Mantis 0002587 |
Affected Issues 0002587 |
|
mod - /branches/fs2_open_3_6_14/code/ai/aicode.cpp | Diff File | ||
fs2open: fs2_open_3_6_14 r8483 2012-02-13 19:47 Ported: N/A Details Diff |
Backport: Trunk r8412; more robust saving of dockpoint indexes (again for Mantis 0002587) |
Affected Issues 0002587 |
|
mod - /branches/fs2_open_3_6_14/code/ai/aicode.cpp | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2012-01-27 14:14 | rodo | New Issue | |
2012-01-27 22:36 | Yarn | File Added: rearmtest.fs2 | |
2012-01-27 22:36 | Yarn | Note Added: 0013171 | |
2012-01-28 18:10 | Valathil | Assigned To | => Valathil |
2012-01-28 18:10 | Valathil | Status | new => assigned |
2012-01-28 19:03 | Valathil | Assigned To | Valathil => Goober5000 |
2012-01-28 19:07 | Valathil | Note Added: 0013181 | |
2012-01-28 21:13 | Goober5000 | Note Added: 0013184 | |
2012-01-29 09:19 | Goober5000 | Changeset attached | => fs2open trunk r8398 |
2012-01-29 09:19 | Goober5000 | Note Added: 0013191 | |
2012-01-29 09:19 | Goober5000 | Status | assigned => resolved |
2012-01-29 09:19 | Goober5000 | Resolution | open => fixed |
2012-01-29 09:19 | Goober5000 | Changeset attached | => fs2open trunk r8399 |
2012-01-31 00:17 | niffiwan | Relationship added | has duplicate 0002592 |
2012-01-31 04:53 | Goober5000 | Changeset attached | => fs2open trunk r8412 |
2012-02-13 21:18 | Zacam | Changeset attached | => fs2open fs2_open_3_6_14 r8479 |
2012-02-13 21:18 | Zacam | Note Added: 0013302 | |
2012-02-14 00:47 | Zacam | Changeset attached | => fs2open fs2_open_3_6_14 r8483 |