View Issue Details

IDProjectCategoryView StatusLast Update
0000389FSSCPgameplaypublic2005-08-29 06:40
Reporterfizz Assigned Totaylor  
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Summary0000389: Shockwave assertion failure
DescriptionI can reliably trigger an assertion failure in shiphit.cpp.

This is how to reproduce:

In SM2-04 (The King's Gambit) when the first cruiser jumps in
fly close to it and wait for it to be blown up (or blow it up
yourself). I always get thrown back to desktop as soon as I'm
hit by the shockwave.

This is what I get in the log:

BOGUS HITPOS PASSED TO DO_SUBOBJ_HIT_STUFF (2295.4 > 2192.6)!
ASSERTION FAILED: "false" at ship/shiphit.cpp:1021
Additional InformationBuild is CVS as of 2005/04/25.
TagsNo tags attached.

Activities

kasperl

2005-04-26 07:12

developer   ~0002264

Can you try to get it by shockwaves in other missions?
Can you try it with other ships?
What about shockwaves from bombs?
Also, what commmandlines are you using?
What version of windows?
OGL or D3D?

taylor

2005-04-26 07:29

administrator   ~0002266

Does this happen every time or just most of the time? I tried the mission twice (got close to the first 4 ships) and it was fine both times. Which set of VPs was this with, the officials or not?

Post a full backtrace if you can.

fizz

2005-04-26 08:25

reporter   ~0002267

Haven't had the problem with other missions or other shockwaves yet.

By "other ships", do you mean "other than the cruiser" or "other than the one you're flying"?

Only command line argument is -novbo.

Version of Windows is... Linux, thus also OGL.

Happens every single time (at least the five or six I tried it). Using retail VPs only.

I'll try to get a full backtrace.

kasperl

2005-04-26 09:08

developer   ~0002268

Other than that cruiser, but another player ship might be worth the try as well.

Sorry for asuming everyone still uses Windows.

fizz

2005-04-26 15:49

reporter   ~0002269

Actually, contrary to what I said earlier, it doesn't seem to happen every single time. The first time I just tried to reproduce it it didn't crash. However, the following approach then worked three times in a row:

When the Uhuru jumps in, go for the sat dish under the nose, drop a cyclops on it, and stay close by until the ship explodes.

This is the trace I got.

#0 0x40309001 in kill () from /lib/libc.so.6
0000001 0x40233a22 in raise () from /lib/libpthread.so.0
0000002 0x4030a401 in abort () from /lib/libc.so.6
0000003 0x082763f9 in WinAssert (text=0x82f4adb "false",
    filename=0x82f49c4 "ship/shiphit.cpp", line=1021)
    at windows_stub/stubs.cpp:101
0000004 0x0823c9eb in do_subobj_hit_stuff (ship_obj=0x9c94f20,
    other_obj=0x9cd4248, hitpos=0xbffff464, damage=28.1269379)
    at ship/shiphit.cpp:1021
0000005 0x0823f5fb in ship_do_damage (ship_obj=0x9c94f20, other_obj=0x9cd4248,
    hitpos=0xbffff464, damage=39.7792702, quadrant=0, wash_damage=0)
    at ship/shiphit.cpp:2497
0000006 0x0823ff1f in ship_apply_global_damage (ship_obj=0x9c94f20,
    other_obj=0x9cd4248, force_center=0xa57db80, damage=28.1269379)
    at ship/shiphit.cpp:2870
0000007 0x082595a7 in shockwave_move (shockwave_objp=0x9cd4248,
    frametime=11.4021435) at weapon/shockwave.cpp:553
0000008 0x08259ae0 in shockwave_move_all (frametime=0.0240020752)
    at weapon/shockwave.cpp:711
0000009 0x08054762 in game_simulation_frame () at freespace2/freespace.cpp:5305
0000010 0x08054d38 in game_frame (paused=0) at freespace2/freespace.cpp:5624
#11 0x080556dd in game_do_frame () at freespace2/freespace.cpp:6098
0000012 0x080577b8 in game_do_state (state=2) at freespace2/freespace.cpp:8032
0000013 0x080a7cf9 in gameseq_process_events ()
    at gamesequence/gamesequence.cpp:657
0000014 0x0805823a in WinMainSub (argc=4, argv=0xbffff7d4)
    at freespace2/freespace.cpp:8568
0000015 0x0805826c in main (argc=4, argv=0xbffff7d4)
    at freespace2/freespace.cpp:8630
0000016 0x402f8c6f in __libc_start_main () from /lib/libc.so.6

taylor

2005-05-13 14:14

administrator   ~0002382

I still can't replicate this. Can you send me a copy of the WarpMap01 that you are using? I'm wondering if perhaps it's an issue with the file.

fizz

2005-05-13 18:02

reporter   ~0002384

Hm, maybe. What's WarpMap01 and where do I find it?

If it helps any, I'm using FS2 retail data (english) plus the 1.2 patch.
Nothing else.

taylor

2005-05-13 20:26

administrator   ~0002389

Last edited: 2005-05-13 20:26

In the retail data it's WarpMap01.ani and should be inside of the sparky_fs2.vp.

Get WMC's vpmagic (link below) to extract the file from within Linux. Otherwise you'll have to use Windows to do it. vpmagic doesn't let you just extract one file though so make sure that you have enough disk space for the size of sparky_fs2.vp (it's not compressed) and everything goes in a data directory so you might want to extract in a working directory outside of the actual game directory.

http://dynamic4.gamespy.com/~freespace/forums/showthread.php?s=&threadid=31664&highlight=vpmagic

edited on: 05-13-05 16:26

taylor

2005-05-18 01:05

administrator   ~0002423

Just to keep the conversion here to: I asked fizz in an e-mail which ship he was piloting at the time it dies. If it's not the default then that may explain why it's working fine for me.

fizz

2005-05-18 06:04

reporter   ~0002428

For the record, it doesn't matter which ship I'm flying. I've only been able to reproduce against the Uhuru type of cruiser, though.

redmenace

2005-05-30 10:43

manager   ~0002537

I am getting this as well. I am attaching the relevant information.

2005-05-30 10:44

 

the kings gambit-2.zip (14,883 bytes)

taylor

2005-07-22 07:09

administrator   ~0002854

I did get this in a different mission but I haven't been able to reproduce it on a regular basis. I'll keep working on as time allows.

fizz

2005-07-22 07:32

reporter   ~0002857

Is there anything I can do to help (since I can easily reproduce it)?

taylor

2005-07-22 07:45

administrator   ~0002860

Well I think this is just when it's trying to figure out how to damage subsystem of some kind. We need to know what ship it is and what the other object (the one that could/should be hit) is. Also it has both hitpos and hitpos2. When it messes up we need to know if it should be testing hitpos2 instead, so if it's a shockwave (as the other object) then the hitpos2 won't be the same value as hitpos.

You probably see where I'm going with that, does:
float hitpos_dist = vm_vec_dist( hitpos, &ship_obj->pos );
changed to:
float hitpos_dist = vm_vec_dist( hitpos2, &ship_obj->pos );
make any difference in whether it messes up or not.

If I could regularly recreate it then I'd test it myself. But as it stands I wouldn't know if it fixed anything or not. hitpos2 is only used in a couple of places in that function and I'm wondering if that was a mistake.

2005-07-22 18:54

 

fsbug.txt (18,603 bytes)   
Breakpoint 1, do_subobj_hit_stuff (ship_obj=0x9d27aa0, other_obj=0x9d8f8b0, 
    hitpos=0xbffff464, damage=20.9271011) at ship/shiphit.cpp:1031
1031                    mprintf(( "BOGUS HITPOS PASSED TO DO_SUBOBJ_HIT_STUFF (% 
.1f > %.1f)!\n", hitpos_dist, ship_obj->radius * 2.0f ));

(gdb) print *hitpos
$2 = {{xyz = {x = -62.9688034, y = -0.00731577072, z = -1979.9729}, a1d = {-62.9688034, -0.00731577072, -1979.9729}}}
(gdb) print ship_obj->pos
$3 = {{xyz = {x = -1999.14355, y = 0.00778375193, z = -897.153137}, a1d = {-1999.14355, 0.00778375193, -897.153137}}}
(gdb) print ship_obj->radius
$4 = 1096.29932
(gdb) print hitpos_dist
$5 = 2218.39404
(gdb) print damage
$6 = 20.9271011
(gdb) print damage_left
$7 = 20.7799644
(gdb) print *ship_obj
$8 = {next = 0x9d27cac, prev = 0x9da7ba0, signature = 1, type = 1 '\001', 
  parent = -1, parent_sig = 1, parent_type = 1 '\001', instance = 0, 
  flags = 135, pos = {{xyz = {x = -1999.14355, y = 0.00778375193, 
        z = -897.153137}, a1d = {-1999.14355, 0.00778375193, -897.153137}}}, 
  orient = {{vec = {rvec = {{xyz = {x = 0.412309289, y = -0.908610702, 
              z = -0.0665414259}, a1d = {0.412309289, -0.908610702, 
              -0.0665414259}}}, uvec = {{xyz = {x = 0.897006512, 
              y = 0.417644233, z = -0.144750476}, a1d = {0.897006512, 
              0.417644233, -0.144750476}}}, fvec = {{xyz = {x = 0.159312457, 
              y = -6.13068687e-06, z = 0.987228215}, a1d = {0.159312457, 
              -6.13068687e-06, 0.987228215}}}}, a2d = {{0.412309289, 
          -0.908610702, -0.0665414259}, {0.897006512, 0.417644233, 
          -0.144750476}, {0.159312457, -6.13068687e-06, 0.987228215}}, a1d = {
        0.412309289, -0.908610702, -0.0665414259, 0.897006512, 0.417644233, 
        -0.144750476, 0.159312457, -6.13068687e-06, 0.987228215}}}, 
  radius = 1096.29932, last_pos = {{xyz = {x = -1999.14355, y = 0.00778383994, 
        z = -897.153137}, a1d = {-1999.14355, 0.00778383994, -897.153137}}}, 
  last_orient = {{vec = {rvec = {{xyz = {x = 0.412309289, y = -0.908610702, 
              z = -0.0665414259}, a1d = {0.412309289, -0.908610702, 
              -0.0665414259}}}, uvec = {{xyz = {x = 0.897006512, 
              y = 0.417644233, z = -0.144750476}, a1d = {0.897006512, 
              0.417644233, -0.144750476}}}, fvec = {{xyz = {x = 0.159312457, 
              y = -6.12963095e-06, z = 0.987228215}, a1d = {0.159312457, 
              -6.12963095e-06, 0.987228215}}}}, a2d = {{0.412309289, 
          -0.908610702, -0.0665414259}, {0.897006512, 0.417644233, 
          -0.144750476}, {0.159312457, -6.12963095e-06, 0.987228215}}, a1d = {
        0.412309289, -0.908610702, -0.0665414259, 0.897006512, 0.417644233, 
        -0.144750476, 0.159312457, -6.12963095e-06, 0.987228215}}}, 
  phys_info = {flags = 2, mass = 1165842.75, center_of_mass = {{xyz = {
          x = 0.532481432, y = 1.24348664, z = -55.7112045}, a1d = {
          0.532481432, 1.24348664, -55.7112045}}}, I_body_inv = {{vec = {
          rvec = {{xyz = {x = 5.20231601e-12, y = 2.20736977e-15, 
                z = 5.0773845e-14}, a1d = {5.20231601e-12, 2.20736977e-15, 
                5.0773845e-14}}}, uvec = {{xyz = {x = 2.20736998e-15, 
                y = 4.5898476e-12, z = 1.07985842e-12}, a1d = {2.20736998e-15, 
                4.5898476e-12, 1.07985842e-12}}}, fvec = {{xyz = {
                x = 5.0773845e-14, y = 1.07985853e-12, z = 2.42332109e-11}, 
              a1d = {5.0773845e-14, 1.07985853e-12, 2.42332109e-11}}}}, a2d = {
          {5.20231601e-12, 2.20736977e-15, 5.0773845e-14}, {2.20736998e-15, 
            4.5898476e-12, 1.07985842e-12}, {5.0773845e-14, 1.07985853e-12, 
            2.42332109e-11}}, a1d = {5.20231601e-12, 2.20736977e-15, 
          5.0773845e-14, 2.20736998e-15, 4.5898476e-12, 1.07985842e-12, 
          5.0773845e-14, 1.07985853e-12, 2.42332109e-11}}}, rotdamp = 1.5, 
    side_slip_time_const = 0.200000003, max_vel = {{xyz = {x = 0, y = 0, 
          z = 15}, a1d = {0, 0, 15}}}, afterburner_max_vel = {{xyz = {x = 0, 
          y = 0, z = 0}, a1d = {0, 0, 0}}}, booster_max_vel = {{xyz = {x = 0, 
          y = 0, z = 0}, a1d = {0, 0, 0}}}, max_rotvel = {{xyz = {
          x = 0.0418879017, y = 0.0418879017, z = 0.0418879017}, a1d = {
          0.0418879017, 0.0418879017, 0.0418879017}}}, max_rear_vel = 0, 
    forward_accel_time_const = 20, afterburner_forward_accel_time_const = 0, 
    booster_forward_accel_time_const = 0, forward_decel_time_const = 10, 
    slide_accel_time_const = 0, slide_decel_time_const = 0, 
    shockwave_shake_amp = 0, prev_ramp_vel = {{xyz = {x = 0, y = 0, z = 0}, 
        a1d = {0, 0, 0}}}, desired_vel = {{xyz = {x = 0, y = 0, z = 0}, a1d = {
          0, 0, 0}}}, desired_rotvel = {{xyz = {x = 0, y = 0, z = 0}, a1d = {
          0, 0, 0}}}, forward_thrust = 0, side_thrust = 0, vert_thrust = 0, 
    vel = {{xyz = {x = -5.38924155e-07, y = -1.79118194e-06, 
          z = 8.69569519e-08}, a1d = {-5.38924155e-07, -1.79118194e-06, 
          8.69569519e-08}}}, rotvel = {{xyz = {x = 2.07831281e-08, 
          y = 1.68572711e-08, z = 1.55728557e-07}, a1d = {2.07831281e-08, 
          1.68572711e-08, 1.55728557e-07}}}, speed = 1.87252067e-06, 
    fspeed = 6.32138994e-15, heading = 0, prev_fvec = {{xyz = {x = 0.159318, 
          y = 0, z = 0.987227023}, a1d = {0.159318, 0, 0.987227023}}}, 
    last_rotmat = {{vec = {rvec = {{xyz = {x = 1, y = 6.85304524e-09, 
                z = -7.41826933e-10}, a1d = {1, 6.85304524e-09, 
                -7.41826933e-10}}}, uvec = {{xyz = {x = -6.85304524e-09, 
                y = 1, z = 9.14589571e-10}, a1d = {-6.85304524e-09, 1, 
                9.14589571e-10}}}, fvec = {{xyz = {x = 7.41826933e-10, 
                y = -9.14589571e-10, z = 1}, a1d = {7.41826933e-10, 
                -9.14589571e-10, 1}}}}, a2d = {{1, 6.85304524e-09, 
            -7.41826933e-10}, {-6.85304524e-09, 1, 9.14589571e-10}, {
            7.41826933e-10, -9.14589571e-10, 1}}, a1d = {1, 6.85304524e-09, 
          -7.41826933e-10, -6.85304524e-09, 1, 9.14589571e-10, 7.41826933e-10, 
          -9.14589571e-10, 1}}}, afterburner_decay = 68943, 
    shockwave_decay = 0, reduced_damp_decay = 1}, shield_quadrant = {0, 0, 0, 
    0}, hull_strength = 69989.2969, objsnd_num = {0, -1 <repeats 31 times>}, 
  net_signature = 0, num_pairs = 30, {jnp = 0x0}, dock_list = 0x0}


(gdb) print *other_obj
$9 = {next = 0x9d90910, prev = 0x9d8f6a4, signature = 813, type = 10 '\n', 
  parent = 20, parent_sig = 21, parent_type = 1 '\001', instance = 3, 
  flags = 1025, pos = {{xyz = {x = -62.9688034, y = -0.00731577072, 
        z = -1979.9729}, a1d = {-62.9688034, -0.00731577072, -1979.9729}}}, 
  orient = {{vec = {rvec = {{xyz = {x = 1, y = 0, z = 0}, a1d = {1, 0, 0}}}, 
        uvec = {{xyz = {x = 0, y = 1, z = 0}, a1d = {0, 1, 0}}}, fvec = {{
            xyz = {x = 0, y = 0, z = 1}, a1d = {0, 0, 1}}}}, a2d = {{1, 0, 0}, 
        {0, 1, 0}, {0, 0, 1}}, a1d = {1, 0, 0, 0, 1, 0, 0, 0, 1}}}, 
  radius = 2400, last_pos = {{xyz = {x = -62.9688034, y = -0.00731577072, 
        z = -1979.9729}, a1d = {-62.9688034, -0.00731577072, -1979.9729}}}, 
  last_orient = {{vec = {rvec = {{xyz = {x = 1, y = 0, z = 0}, a1d = {1, 0, 
              0}}}, uvec = {{xyz = {x = 0, y = 1, z = 0}, a1d = {0, 1, 0}}}, 
        fvec = {{xyz = {x = 0, y = 0, z = 1}, a1d = {0, 0, 1}}}}, a2d = {{1, 
          0, 0}, {0, 1, 0}, {0, 0, 1}}, a1d = {1, 0, 0, 0, 1, 0, 0, 0, 1}}}, 
  phys_info = {flags = 0, mass = 10, center_of_mass = {{xyz = {x = 0, y = 0, 
          z = 0}, a1d = {0, 0, 0}}}, I_body_inv = {{vec = {rvec = {{xyz = {
                x = 9.99999975e-06, y = 0, z = 0}, a1d = {9.99999975e-06, 0, 
                0}}}, uvec = {{xyz = {x = 0, y = 9.99999975e-06, z = 0}, 
              a1d = {0, 9.99999975e-06, 0}}}, fvec = {{xyz = {x = 0, y = 0, 
                z = 9.99999975e-06}, a1d = {0, 0, 9.99999975e-06}}}}, a2d = {{
            9.99999975e-06, 0, 0}, {0, 9.99999975e-06, 0}, {0, 0, 
            9.99999975e-06}}, a1d = {9.99999975e-06, 0, 0, 0, 9.99999975e-06, 
          0, 0, 0, 9.99999975e-06}}}, rotdamp = 0.100000001, 
    side_slip_time_const = 0.0500000007, max_vel = {{xyz = {x = 100, y = 100, 
          z = 100}, a1d = {100, 100, 100}}}, afterburner_max_vel = {{xyz = {
          x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, booster_max_vel = {{xyz = {
          x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, max_rotvel = {{xyz = {
          x = 2, y = 1, z = 2}, a1d = {2, 1, 2}}}, max_rear_vel = 100, 
    forward_accel_time_const = 0, afterburner_forward_accel_time_const = 0, 
    booster_forward_accel_time_const = 0, forward_decel_time_const = 0, 
    slide_accel_time_const = 0.0500000007, 
    slide_decel_time_const = 0.0500000007, shockwave_shake_amp = 0, 
    prev_ramp_vel = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, 
    desired_vel = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, 
    desired_rotvel = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, 
    forward_thrust = 0, side_thrust = 0, vert_thrust = 0, vel = {{xyz = {
          x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, rotvel = {{xyz = {x = 0, 
          y = 0, z = 0}, a1d = {0, 0, 0}}}, speed = 0, fspeed = 0, 
    heading = 0, prev_fvec = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, 
    last_rotmat = {{vec = {rvec = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 
                0}}}, uvec = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, 
          fvec = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}}, a2d = {{0, 
            0, 0}, {0, 0, 0}, {0, 0, 0}}, a1d = {0, 0, 0, 0, 0, 0, 0, 0, 0}}}, 
    afterburner_decay = 1, shockwave_decay = 0, reduced_damp_decay = 0}, 
  shield_quadrant = {0, 0, 0, 0}, hull_strength = 0, objsnd_num = {
    -1 <repeats 32 times>}, net_signature = 0, num_pairs = 0, {jnp = 0x0}, 
  dock_list = 0x0}


(gdb) print Ship_info[ship_obj->instance]
$10 = {name = "GTF Ulysses", '\0' <repeats 20 times>, 
  short_name = "TFight", '\0' <repeats 25 times>, species = 0, 
  type_str = 0xa814878 "Space Superiority", 
  maneuverability_str = 0xa8148a0 "Excellent", armor_str = 0xa8148c0 "Light", 
  manufacturer_str = 0xa8148e0 "Triton / Mekhu", desc = 0xa814908 " ", 
  tech_desc = 0xa814dd0 "Affectionately nicknamed 'The Bat' by its pilots, the GTF Ulysses is a well-designed craft that has had a far longer useful life than its engineers ever imagined. Developed jointly by Terran and Vasud"..., 
  ship_length = 0xa814938 "16 m", gun_mounts = 0xa814958 "4", 
  missile_banks = 0xa814978 "1", 
  pof_file = "fighter01.pof", '\0' <repeats 18 times>, 
  pof_file_hud = '\0' <repeats 31 times>, num_detail_levels = 4, 
  detail_distance = {0, 80, 300, 900, 0}, modelnum = 1417, modelnum_hud = -1, 
  density = 1, damp = 0.100000001, rotdamp = 0.349999994, max_vel = {{xyz = {
        x = 0, y = 0, z = 70}, a1d = {0, 0, 70}}}, afterburner_max_vel = {{
      xyz = {x = 0, y = 0, z = 150}, a1d = {0, 0, 150}}}, max_rotvel = {{
      xyz = {x = 2.09439516, y = 2.41661, z = 1.2566371}, a1d = {2.09439516, 
        2.41661, 1.2566371}}}, rotation_time = {{xyz = {x = 3, y = 2.5999999, 
        z = 5}, a1d = {3, 2.5999999, 5}}}, srotation_time = 2.79999995, 
  max_rear_vel = 0, forward_accel = 2, 
  afterburner_forward_accel = 0.699999988, forward_decel = 1.5, 
  slide_accel = 0, slide_decel = 0, flags = 1573223, flags2 = 3, ai_class = 3, 
  max_speed = 70, min_speed = -0, max_accel = 70, inner_rad = 25, 
  outer_rad = 55, damage = 15, blast = 1000, explosion_propagates = 0, 
  shockwave_speed = 0, shockwave_count = 1, 
  shockwave_pof_file = '\0' <repeats 31 times>, shockwave_moddel = -1, 
  n_subsystems = 5, subsystems = 0xa814fd0, power_output = 2, 
  max_overclocked_speed = 94, max_weapon_reserve = 80, 
  afterburner_fuel_capacity = 300, afterburner_burn_rate = 50, 
  afterburner_recover_rate = 25, cmeasure_max = 25, num_primary_banks = 2, 
  num_secondary_banks = 1, primary_bank_weapons = {0, 7, -1}, 
  primary_bank_ammo_capacity = {1, 1, 0}, secondary_bank_weapons = {62, -1, 
    -1, -1}, secondary_bank_ammo_capacity = {40, 0, 0, 0}, 
  max_hull_strength = 180, max_shield_strength = 380, 
  hull_repair_rate_percent = 0, subsys_repair_rate_percent = 0.00999999978, 
  engine_snd = 128, closeup_pos = {{xyz = {x = 0, y = 0, z = -22}, a1d = {0, 
        0, -22}}}, closeup_zoom = 0.5, allowed_weapons = {1, 2, 0, 0, 1, 1, 0, 
    1, 1, 2, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0 <repeats 33 times>, 1, 0, 0, 1, 2, 
    1, 2, 1, 1, 0, 1, 2, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 
    0 <repeats 122 times>}, restricted_loadout_flag = {0, 0, 0, 0, 0, 0, 0}, 
  allowed_bank_restricted_weapons = {{1, 2, 0, 0, 1, 1, 0, 1, 1, 2, 1, 0, 0, 
      0, 1, 1, 0, 0, 1, 0 <repeats 181 times>}, {0 <repeats 200 times>}, {
      0 <repeats 200 times>}, {0 <repeats 52 times>, 1, 0, 0, 1, 2, 1, 2, 1, 
      1, 0, 1, 2, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 
      0 <repeats 122 times>}, {0 <repeats 200 times>}, {
      0 <repeats 200 times>}, {0 <repeats 200 times>}}, 
  shield_icon_index = 0 '\0', 
  icon_filename = "iconfighter01", '\0' <repeats 18 times>, 
  anim_filename = "ssfighter01", '\0' <repeats 20 times>, 
  overhead_filename = "loadfighter01", '\0' <repeats 18 times>, score = 8, 
  scan_time = 2000, ct_info = {{pt = {{xyz = {x = -7.75, y = -2.79999995, 
            z = 0.75}, a1d = {-7.75, -2.79999995, 0.75}}}, w_start = 0.25, 
      w_end = 0.0500000007, a_start = 1, a_end = 0, max_life = 1, stamp = 60, 
      bitmap = 356437}, {pt = {{xyz = {x = 7.75, y = -2.79999995, z = 0.75}, 
          a1d = {7.75, -2.79999995, 0.75}}}, w_start = 0.25, 
      w_end = 0.0500000007, a_start = 1, a_end = 0, max_life = 1, stamp = 60, 
      bitmap = 356437}, {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 
            0}}}, w_start = 0, w_end = 0, a_start = 0, a_end = 0, 
      max_life = 0, stamp = 0, bitmap = 0}, {pt = {{xyz = {x = 0, y = 0, 
            z = 0}, a1d = {0, 0, 0}}}, w_start = 0, w_end = 0, a_start = 0, 
      a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, {pt = {{xyz = {x = 0, 
            y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, w_end = 0, 
      a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, {pt = {{
          xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, 
    {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, 
    {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, 
    {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, 
    {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, 
    {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, bitmap = 0}, 
    {pt = {{xyz = {x = 0, y = 0, z = 0}, a1d = {0, 0, 0}}}, w_start = 0, 
      w_end = 0, a_start = 0, a_end = 0, max_life = 0, stamp = 0, 
      bitmap = 0}}, ct_count = 2, num_nondark_colors = 0, nondark_colors = {
    "\0\0", "\0\0", "\0\0", "\0\0", "\0\0", "\0\0", "\0\0", "\0\0", "\0\0", 
    "\0\0"}, shield_color = "dd�", 
  ABtrail_bitmap_name = '\0' <repeats 31 times>, ABbitmap = -1, 
  ABwidth_factor = 1, ABAlpha_factor = 1, ABlife = 5, 
  thruster_bitmap1 = "thrusterglow01", '\0' <repeats 17 times>, 
  thruster_bitmap1a = "thrusterglow01a", '\0' <repeats 16 times>, 
  thruster_bitmap2 = "thruster02-01", '\0' <repeats 18 times>, 
  thruster_bitmap2a = "thruster02-01a", '\0' <repeats 17 times>, 
  thruster_bitmap3 = "thruster03-01", '\0' <repeats 18 times>, 
  thruster_bitmap3a = "thruster03-01a", '\0' <repeats 17 times>, 
  thruster_glow1 = 218648, thruster_glow1a = 1654402, thruster_glow2 = -1, 
  thruster_glow2a = -1, thruster_glow3 = -1, thruster_glow3a = -1, 
  thruster01_rad_factor = 1, thruster02_rad_factor = 1, 
  thruster02_len_factor = 1, thruster03_rad_factor = 1, 
  n_thruster_particles = 0, n_ABthruster_particles = 0, 
  normal_thruster_particles = {{
      thruster_particle_bitmap01_name = '\0' <repeats 31 times>, 
      thruster_particle_bitmap01 = 0, thruster_particle_bitmap01_nframes = 0, 
      min_rad = 0, max_rad = 0, n_high = 0, n_low = 0, variance = 0}, {
      thruster_particle_bitmap01_name = '\0' <repeats 31 times>, 
      thruster_particle_bitmap01 = 0, thruster_particle_bitmap01_nframes = 0, 
      min_rad = 0, max_rad = 0, n_high = 0, n_low = 0, variance = 0}, {
      thruster_particle_bitmap01_name = '\0' <repeats 31 times>, 
      thruster_particle_bitmap01 = 0, thruster_particle_bitmap01_nframes = 0, 
      min_rad = 0, max_rad = 0, n_high = 0, n_low = 0, variance = 0}}, 
  afterburner_thruster_particles = {{
      thruster_particle_bitmap01_name = '\0' <repeats 31 times>, 
      thruster_particle_bitmap01 = 0, thruster_particle_bitmap01_nframes = 0, 
      min_rad = 0, max_rad = 0, n_high = 0, n_low = 0, variance = 0}, {
      thruster_particle_bitmap01_name = '\0' <repeats 31 times>, 
      thruster_particle_bitmap01 = 0, thruster_particle_bitmap01_nframes = 0, 
      min_rad = 0, max_rad = 0, n_high = 0, n_low = 0, variance = 0}, {
      thruster_particle_bitmap01_name = '\0' <repeats 31 times>, 
      thruster_particle_bitmap01 = 0, thruster_particle_bitmap01_nframes = 0, 
      min_rad = 0, max_rad = 0, n_high = 0, n_low = 0, variance = 0}}, 
  splodeing_texture = -1, 
  splodeing_texture_name = "boom", '\0' <repeats 27 times>, max_decals = 50, 
  draw_primary_models = {false, false, false}, draw_secondary_models = {false, 
    false, false, false}, draw_models = false, 
  weapon_model_draw_distance = 200, armor_type_idx = -1}

(gdb) print Shockwaves[other_obj->instance]
$11 = {next = 0xa610b60, prev = 0xa60f838, flags = 5, objnum = 812, 
  num_objs_hit = 6, obj_sig_hitlist = {21, 13, 11, 10, 12, 1, 
    0 <repeats 58 times>}, speed = 568.465271, radius = 1264.70251, 
  inner_radius = 100, outer_radius = 2400, damage = 83.1198578, 
  weapon_info_index = -1, pos = {{xyz = {x = -62.9688034, y = -0.00731577072, 
        z = -1979.9729}, a1d = {-62.9688034, -0.00731577072, -1979.9729}}}, 
  blast = 1457.58704, next_blast = 0, shockwave_info_index = 0, 
  current_bitmap = 1250334, time_elapsed = 2.2230072, total_time = 4.22189379, 
  delay_stamp = -1, rot_angle = 217.352783, model = -1}

fsbug.txt (18,603 bytes)   

fizz

2005-07-22 18:56

reporter   ~0002864

No, using hitpos2 does not help.

Don't know if you can use some of the info, but I tried to collect some data on the objects the crash relates to. Attached in fsbug.txt.

taylor

2005-08-11 05:19

administrator   ~0002980

Just and update here. I was getting this pretty frequently with TBP which made it easier to test things out. Shockwaves are a special case for big ships so I changed it to not use the force_center value and use the world_pos value instead when in that case and in HTL mode. So far it has worked but it just does seem right so I haven't put it in CVS. :V: seems to handle this one thing differently than all other shockwave and particle effects so I'm being cautious. I haven't had the time to make sure that debris and other related issues don't have some side effect from this though nothing have jumped out at me during play.

For this "fix" I added a Cmdline_nohtl check to force_center assignment in ship_apply_global_damage() in shiphit.cpp. This will make it use the real world hitpos rather than the shockwave pos in HTL mode.

taylor

2005-08-20 19:51

administrator   ~0003059

Possible fix is in CVS. It's been in my last two builds and I've had no compaints. Give it a try fizz and see if you are still having problems.

kasperl

2005-08-24 11:18

developer   ~0003126

Reminder sent to fizz

Could you please look at the bug you submitted here, and if the fix Taylor made works for you? You can get a new build here:
http://dynamic.gamespy.com/~freespace/forums/forumdisplay.php?s=&forumid=97

fizz

2005-08-24 12:26

reporter   ~0003140

My display gave up on me two weeks ago, so unfortunately I'm not in a position to test anything right now. I'm expecting the replacement to arrive any day now, though, and I'll check it out then.

fizz

2005-08-29 06:14

reporter   ~0003195

I can now confirm that the change indeed seems to have fixed the issue for me. Thanks.

taylor

2005-08-29 06:39

administrator   ~0003196

Cool. If if shows up again or you start seeing weird side-effects just reopen this bug.

taylor

2005-08-29 06:40

administrator   ~0003197

Fixered.

Issue History

Date Modified Username Field Change
2005-04-26 05:40 fizz New Issue
2005-04-26 07:12 kasperl Note Added: 0002264
2005-04-26 07:29 taylor Note Added: 0002266
2005-04-26 07:30 taylor Status new => assigned
2005-04-26 07:30 taylor Assigned To => taylor
2005-04-26 08:25 fizz Note Added: 0002267
2005-04-26 09:08 kasperl Note Added: 0002268
2005-04-26 15:49 fizz Note Added: 0002269
2005-05-13 14:14 taylor Note Added: 0002382
2005-05-13 18:02 fizz Note Added: 0002384
2005-05-13 20:26 taylor Note Added: 0002389
2005-05-13 20:26 taylor Note Edited: 0002389
2005-05-18 01:05 taylor Note Added: 0002423
2005-05-18 06:04 fizz Note Added: 0002428
2005-05-30 10:43 redmenace Note Added: 0002537
2005-05-30 10:44 redmenace File Added: the kings gambit-2.zip
2005-07-22 07:09 taylor Note Added: 0002854
2005-07-22 07:32 fizz Note Added: 0002857
2005-07-22 07:45 taylor Note Added: 0002860
2005-07-22 18:54 fizz File Added: fsbug.txt
2005-07-22 18:56 fizz Note Added: 0002864
2005-08-11 05:19 taylor Note Added: 0002980
2005-08-20 19:51 taylor Note Added: 0003059
2005-08-24 11:18 kasperl Note Added: 0003126
2005-08-24 12:26 fizz Note Added: 0003140
2005-08-29 06:14 fizz Note Added: 0003195
2005-08-29 06:39 taylor Note Added: 0003196
2005-08-29 06:40 taylor Status assigned => resolved
2005-08-29 06:40 taylor Resolution open => fixed
2005-08-29 06:40 taylor Note Added: 0003197