View Issue Details

IDProjectCategoryView StatusLast Update
0002129FSSCPmultiplayerpublic2020-01-14 05:32
ReporterFUBAR-BDHR Assigned ToFSCyborg  
PrioritynormalSeveritycrashReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version3.6.11 
Summary0002129: Assert: (signature >= NPERM_SIG_MIN) in multiutil.cpp line 214
DescriptionGot this on the retail data standalone. Absolutely no idea on this one. Mission was Cet_M07.fs2 Attaching stack and variables.
Additional Information3.6.11 r5868. I have the log and will attach it later. Leaving the debugger open for now so it's locked. Doesn't appear to be anything special in it.
TagsNo tags attached.

Activities

2010-02-15 23:30

 

nperm_sig_min.txt (14,106 bytes)   
Assert: (signature >= NPERM_SIG_MIN)
File: multiutil.cpp
Line: 214

<no module>! KiFastSystemCallRet
<no module>! WaitForSingleObject + 18 bytes
<no module>! SCP_DumpStack + 354 bytes
<no module>! WinAssert + 208 bytes
<no module>! multi_set_network_signature + 327 bytes
<no module>! weapon_create + 1454 bytes
<no module>! ship_fire_secondary + 3418 bytes
<no module>! obj_player_fire_stuff + 310 bytes
<no module>! multi_oo_process + 426 bytes
<no module>! multi_do_frame + 960 bytes
<no module>! game_do_networking + 120 bytes
<no module>! game_do_state_common + 144 bytes
<no module>! game_do_state + 51 bytes
<no module>! gameseq_process_events + 237 bytes
<no module>! game_main + 782 bytes
<no module>! WinMain + 330 bytes
<no module>! __tmainCRTStartup + 358 bytes
<no module>! WinMainCRTStartup + 15 bytes
<no module>! RegisterWaitForInputIdle + 73 bytes


 	fs2_open_3_6_11d_sse2.exe!debug_int3(char * file=0x00e6c154, int line=902)  Line 764	C++
 	fs2_open_3_6_11d_sse2.exe!WinAssert(char * text=0x00ebedd0, char * filename=0x00ebedb9, int linenum=214)  Line 902 + 0x13 bytes	C++
>	fs2_open_3_6_11d_sse2.exe!multi_set_network_signature(unsigned short signature=7, int what_kind=3)  Line 214 + 0x23 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!weapon_create(vec3d * pos=0x0012f18c, matrix * porient=0x0012f0b0, int weapon_type=69, int parent_objnum=5, int group_id=-1, int is_locked=0, int is_spawned=0)  Line 4810 + 0x21 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!ship_fire_secondary(object * obj=0x0100ae9c, int allow_swarm=0)  Line 10060 + 0x39 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!obj_player_fire_stuff(object * objp=0x0100ae9c, control_info ci={...})  Line 732 + 0xb bytes	C++
 	fs2_open_3_6_11d_sse2.exe!multi_oo_process()  Line 1369 + 0x47 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!multi_do_frame()  Line 1277	C++
 	fs2_open_3_6_11d_sse2.exe!game_do_networking()  Line 1189	C++
 	fs2_open_3_6_11d_sse2.exe!game_do_state_common(int state=2, int no_networking=0)  Line 6874	C++
 	fs2_open_3_6_11d_sse2.exe!game_do_state(int state=2)  Line 6887 + 0xb bytes	C++
 	fs2_open_3_6_11d_sse2.exe!gameseq_process_events()  Line 405 + 0x14 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!game_main(char * cmdline=0x00151f10)  Line 7517 + 0x5 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!WinMain(HINSTANCE__ * hInst=0x00400000, HINSTANCE__ * hPrev=0x00000000, char * szCmdLine=0x00151f10, int nCmdShow=1)  Line 7597 + 0x9 bytes	C++
 	fs2_open_3_6_11d_sse2.exe!__tmainCRTStartup()  Line 263 + 0x2c bytes	C
 	fs2_open_3_6_11d_sse2.exe!WinMainCRTStartup()  Line 182	C
 	kernel32.dll!7c817077() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]	


		signature	7	unsigned short
		what_kind	3	int


Up one level locals:

-		pos	0x0012f18c {xyz={...} a1d=0x0012f18c }	vec3d *
+		xyz	{x=1113.2451 y=62.149731 z=-320.88055 }	vec3d::<unnamed-tag>::<unnamed-type-xyz>
+		a1d	0x0012f18c	float [3]
-		porient	0x0012f0b0 {vec={...} a2d=0x0012f0b0 a1d=0x0012f0b0 }	matrix *
+		vec	{rvec={...} uvec={...} fvec={...} }	matrix::<unnamed-tag>::<unnamed-type-vec>
+		a2d	0x0012f0b0	float [3][3]
+		a1d	0x0012f0b0	float [9]
		weapon_type	69	int
		parent_objnum	5	int
		group_id	-1	int
		is_locked	0	int
		is_spawned	0	int
-		morient	{vec={...} a2d=0x0012ef04 a1d=0x0012ef04 }	matrix
+		vec	{rvec={...} uvec={...} fvec={...} }	matrix::<unnamed-tag>::<unnamed-type-vec>
+		a2d	0x0012ef04	float [3][3]
+		a1d	0x0012ef04	float [9]
		num_deleted	0	int
		rand_val	-1.0737418e+008	float
-		objp	0x010cf1e8 {next=0x0100a130 prev=0x010b548c signature=33891 ...}	object *
+		next	0x0100a130 struct object obj_create_list {next=0x010b548c prev=0x010cf1e8 signature=0 ...}	object *
+		prev	0x010b548c {next=0x010cf1e8 prev=0x0100a130 signature=33890 ...}	object *
		signature	33891	int
		type	2 ''	char
		parent	5	int
		parent_sig	6	int
		parent_type	1 ''	char
		instance	6	int
		flags	2055	unsigned int
+		pos	{xyz={...} a1d=0x010cf20c }	vec3d
+		orient	{vec={...} a2d=0x010cf218 a1d=0x010cf218 }	matrix
		radius	2.0000000	float
+		last_pos	{xyz={...} a1d=0x010cf240 }	vec3d
+		last_orient	{vec={...} a2d=0x010cf24c a1d=0x010cf24c }	matrix
+		phys_info	{flags=512 mass=10.000000 center_of_mass={...} ...}	physics_info
+		shield_quadrant	0x010cf3b4	float [4]
		hull_strength	0.00000000	float
		sim_hull_strength	0.00000000	float
+		objsnd_num	0x010cf3cc	short [32]
		net_signature	65528	unsigned short
		num_pairs	0	int
+		jnp	0x00000000 {m_name=0x0000000c <Bad Ptr> m_modelnum=??? m_objnum=??? ...}	jump_node *
+		dock_list	0x00000000 {next=??? dockpoint_used=??? docked_objp=??? }	dock_instance *
+		dead_dock_list	0x00000000 {next=??? dockpoint_used=??? docked_objp=??? }	dock_instance *
		collision_group_id	0	int
-		orient	0x0012ef04 {vec={...} a2d=0x0012ef04 a1d=0x0012ef04 }	matrix *
+		vec	{rvec={...} uvec={...} fvec={...} }	matrix::<unnamed-tag>::<unnamed-type-vec>
+		a2d	0x0012ef04	float [3][3]
+		a1d	0x0012ef04	float [9]
		objnum	1410	int
-		wp	0x01d70720 {weapon_info_index=-1 objnum=1410 team=0 ...}	weapon *
		weapon_info_index	-1	int
		objnum	1410	int
		team	0	int
		species	0	int
		lifeleft	-0.0019989014	float
+		start_pos	{xyz={...} a1d=0x01d70734 }	vec3d
		target_num	-1	int
		target_sig	-1	int
		nearest_dist	281.03860	float
		creation_time	42692180	long
		weapon_flags	0	int
+		homing_object	0x00ffff70 struct object obj_used_list {next=0x0100a370 prev=0x010a2d9c signature=0 ...}	object *
+		homing_subsys	0x00000000 {next=??? prev=??? system_info=??? ...}	ship_subsys *
+		homing_pos	{xyz={...} a1d=0x01d7075c }	vec3d
		swarm_index	-1	short
		missile_list_index	-1	int
+		trail_ptr	0x00000000 {head=??? tail=??? pos=0x00000008 ...}	trail *
+		turret_subsys	0x00000000 {next=??? prev=??? system_info=??? ...}	ship_subsys *
		group_id	-1	int
		det_range	0.00000000	float
		thruster_bitmap	-1	int
		thruster_frame	0.00000000	float
		thruster_glow_bitmap	-1	int
		thruster_glow_frame	0.00000000	float
		thruster_glow_noise	1.0000000	float
		laser_bitmap_frame	0.00000000	float
		laser_glow_bitmap_frame	0.00000000	float
		pick_big_attack_point_timestamp	6690470	int
+		big_attack_point	{xyz={...} a1d=0x01d707a0 }	vec3d
		cmeasure_ignore_objnum	-1	int
		cmeasure_chase_objnum	-1	int
		cscrew_index	-1	short
		particle_spew_time	6647284	int
		flak_index	0	short
		lssm_warpout_time	0	long
		lssm_warpin_time	0	long
		lssm_stage	-1	int
		lssm_warp_idx	0	int
		lssm_warp_time	0.00000000	float
		lssm_warp_pct	0.00000000	float
+		lssm_target_pos	{xyz={...} a1d=0x01d707d8 }	vec3d
		alpha_backward	0	unsigned char
		alpha_current	-1.0000000	float
		weapon_max_vel	1000.0000	float
-		wip	0x01dc454c {name=0x01dc454c "Piranha" alt_name=0x01dc456c "" title=0x01dc458c "GTM-10 Piranha" ...}	weapon_info *
+		name	0x01dc454c "Piranha"	char [32]
+		alt_name	0x01dc456c ""	char [32]
+		title	0x01dc458c "GTM-10 Piranha"	char [48]
+		desc	0x0342daa8 "Standard Issue
Area Effect
Fighter Suppresion Weapon"	char *
		subtype	1	int
		render_type	2	int
+		pofbitmap_name	0x01dc45c8 "piranha.pof"	char [32]
		model_num	58660	int
+		external_model_name	0x01dc45ec ""	char [32]
		external_model_num	58660	int
		hud_target_lod	-1	int
+		tech_desc	0x0342db20 "A third-generation version of the old Synaptic and Havoc missiles, the GTM-10 Piranha provides bombers with a high-explosive anti-fighter screen. The Piranha is detonated remotely by pressing the Secondary weapon trigger a second time. This releases over a dozen small, heat-seeking missiles that attack any enemy vessel within range. This function makes the missile effective against in	char *
+		tech_anim_filename	0x01dc4618 "Tech_Piranha"	char [32]
+		tech_title	0x01dc4638 "GTM-10 Piranha"	char [32]
+		tech_model	0x01dc4658 ""	char [32]
+		hud_filename	0x01dc4678 ""	char [32]
		hud_image_index	-1	int
+		laser_bitmap	{filename=0x01dc469c "" first_frame=-1 num_frames=0 ...}	generic_anim
+		laser_glow_bitmap	{filename=0x01dc4700 "" first_frame=-1 num_frames=0 ...}	generic_anim
		laser_length	10.000000	float
+		laser_color_1	{screen_sig=0 red='�' green='�' ...}	color
+		laser_color_2	{screen_sig=0 red=0 green=0 ...}	color
		laser_head_radius	1.0000000	float
		laser_tail_radius	1.0000000	float
		max_speed	90.000000	float
		free_flight_time	0.00000000	float
		mass	20.000000	float
		fire_wait	5.0000000	float
		damage	100.00000	float
+		shockwave	{name=0x01dc47bc "" pof_name=0x01dc47dc "" inner_rad=75.000000 ...}	shockwave_create_info
+		dinky_shockwave	{name=0x01dc4820 "" pof_name=0x01dc4840 "" inner_rad=75.000000 ...}	shockwave_create_info
		arm_time	0	long
		arm_dist	0.00000000	float
		arm_radius	0.00000000	float
		det_range	0.00000000	float
		det_radius	0.00000000	float
		armor_factor	1.0000000	float
		shield_factor	0.75000000	float
		subsystem_factor	1.0000000	float
		life_min	-1.0000000	float
		life_max	-1.0000000	float
		lifetime	4.0000000	float
		energy_consumed	0.00000000	float
		wi_flags	657432	int
		wi_flags2	0	int
		turn_time	1.0000000	float
		cargo_size	12.000000	float
		rearm_rate	10.000000	float
		weapon_range	1.0000000e+009	float
		num_spawn_weapons_defined	1	int
		total_children_spawned	15	int
+		spawn_info	0x01dc48d4 {spawn_type=87 spawn_count=15 spawn_angle=180.00000 }	spawn_weapon_info [5]
		swarm_count	-1	short
		min_lock_time	0.00000000	float
		lock_pixels_per_sec	50	int
		catchup_pixels_per_sec	50	int
		catchup_pixel_penalty	50	int
		fov	0.00000000	float
		seeker_strength	1.0000000	float
		launch_snd	93	int
		impact_snd	101	int
		disarmed_impact_snd	-1	int
		flyby_snd	-1	int
+		tr_info	{pt={...} w_start=0.25000000 w_end=0.75000000 ...}	trail_info
+		icon_filename	0x01dc4974 "iconPiranha"	char [32]
+		anim_filename	0x01dc4994 "Piranha"	char [32]
		impact_weapon_expl_index	1	int
		impact_explosion_radius	20.000000	float
		dinky_impact_weapon_expl_index	1	int
		dinky_impact_explosion_radius	20.000000	float
		flash_impact_weapon_expl_index	-1	int
		flash_impact_explosion_radius	0.00000000	float
		piercing_impact_weapon_expl_index	-1	int
		piercing_impact_explosion_radius	0.00000000	float
		piercing_impact_particle_count	0	int
		piercing_impact_particle_life	0.00000000	float
		piercing_impact_particle_velocity	0.00000000	float
		piercing_impact_particle_back_velocity	0.00000000	float
		piercing_impact_particle_variance	0.00000000	float
		emp_intensity	300.00000	float
		emp_time	10.000000	float
		weapon_reduce	10.000000	float
		afterburner_reduce	10.000000	float
+		b_info	{beam_type=-1 beam_life=-1.0000000 beam_warmup=-1 ...}	beam_weapon_info
		tag_time	-1.0000000	float
		tag_level	-1	int
		muzzle_flash	-1	int
		SSM_index	-1	int
		particle_spew_count	1	int
		particle_spew_time	25	int
		particle_spew_vel	0.40000001	float
		particle_spew_radius	2.0000000	float
		particle_spew_lifetime	0.15000001	float
		particle_spew_scale	0.80000001	float
+		particle_spew_anim	{filename=0x01dc4dd8 "" first_frame=-1 num_frames=0 ...}	generic_anim
		cs_num_fired	4	int
		cs_radius	1.2500000	float
		cs_twist	5.0000000	float
		cs_crotate	1	int
		cs_delay	30	int
+		decal_texture	{filename=0x01dc4e50 "" bitmap_id=-1 }	generic_bitmap
		decal_glow_texture_id	-1	int
		decal_burn_texture_id	-1	int
+		decal_backface_texture	{filename=0x01dc4e7c "" bitmap_id=-1 }	generic_bitmap
		decal_burn_time	1000	int
		decal_rad	-1.0000000	float
		elec_time	8000	int
		elec_eng_mult	1.0000000	float
		elec_weap_mult	1.0000000	float
		elec_beam_mult	1.0000000	float
		elec_sensors_mult	1.0000000	float
		elec_randomness	2000	int
		elec_use_new_style	0	int
		lssm_warpout_delay	0	int
		lssm_warpin_delay	0	int
		lssm_stage5_vel	0.00000000	float
		lssm_warpin_radius	0.00000000	float
		lssm_lock_range	1000000.0	float
		field_of_fire	0.00000000	float
		shots	1	int
		cm_aspect_effectiveness	1.0000000	float
		cm_heat_effectiveness	1.0000000	float
		cm_effective_rad	300.00000	float
		SwarmWait	150	int
		WeaponMinRange	0.00000000	float
		weapon_submodel_rotate_accell	10.000000	float
		weapon_submodel_rotate_vel	0.00000000	float
		damage_type_idx	-1	int
		alpha_max	1.0000000	float
		alpha_min	0.00000000	float
		alpha_cycle	0.00000000	float
+		sc_collide_ship	{o_language=0 o_index=0 h_language=0 ...}	script_hook
+		sc_collide_weapon	{o_language=0 o_index=0 h_language=0 ...}	script_hook
		weapon_hitpoints	0	int
		burst_shots	0	int
		burst_delay	1.0000000	float
		burst_flags	0	int
+		thruster_flame	{filename=0x01dc4f3c "" first_frame=-1 num_frames=0 ...}	generic_anim
+		thruster_glow	{filename=0x01dc4fa0 "" first_frame=-1 num_frames=0 ...}	generic_anim
		thruster_glow_factor	1.0000000	float
		target_lead_scaler	0.00000000	float
+		targeting_priorities	0x01dc500c	int [32]
		num_targeting_priorities	0	int
		n	6	int
-		parent_objp	0x0100ae9c {next=0x0100b0d8 prev=0x0100ac60 signature=6 ...}	object *
+		next	0x0100b0d8 {next=0x0100b9c8 prev=0x0100ae9c signature=7 ...}	object *
+		prev	0x0100ac60 {next=0x0100ae9c prev=0x0100aa24 signature=5 ...}	object *
		signature	6	int
		type	1 ''	char
		parent	-1	int
		parent_sig	6	int
		parent_type	1 ''	char
		instance	5	int
		flags	71	unsigned int
+		pos	{xyz={...} a1d=0x0100aec0 }	vec3d
+		orient	{vec={...} a2d=0x0100aecc a1d=0x0100aecc }	matrix
		radius	20.764433	float
+		last_pos	{xyz={...} a1d=0x0100aef4 }	vec3d
+		last_orient	{vec={...} a2d=0x0100af00 a1d=0x0100af00 }	matrix
+		phys_info	{flags=258 mass=691.03784 center_of_mass={...} ...}	physics_info
+		shield_quadrant	0x0100b068	float [4]
		hull_strength	330.96246	float
		sim_hull_strength	0.00000000	float
+		objsnd_num	0x0100b080	short [32]
		net_signature	83	unsigned short
		num_pairs	47	int
+		jnp	0x00000000 {m_name=0x0000000c <Bad Ptr> m_modelnum=??? m_objnum=??? ...}	jump_node *
+		dock_list	0x00000000 {next=??? dockpoint_used=??? docked_objp=??? }	dock_instance *
+		dead_dock_list	0x00000000 {next=??? dockpoint_used=??? docked_objp=??? }	dock_instance *
		collision_group_id	0	int
nperm_sig_min.txt (14,106 bytes)   

2010-02-17 22:07

 

2129.rar (1,000,056 bytes)

FSCyborg

2019-12-14 22:43

developer   ~0016945

Last edited: 2019-12-14 22:44

FUBAR, thank you very much for the stack trace. Based on that, I think I traced this Assert to a ushort overflow. I have submitted a PR, but it's in draft status because I cannot test to make sure that I didn't break anything.

I just need to eventually get a multi testing solution up and running.

FSCyborg

2020-01-14 05:32

developer   ~0016955

Fix is now in trunk, post 19.0RC2

Issue History

Date Modified Username Field Change
2010-02-15 23:30 FUBAR-BDHR New Issue
2010-02-15 23:30 FUBAR-BDHR File Added: nperm_sig_min.txt
2010-02-17 22:07 FUBAR-BDHR File Added: 2129.rar
2013-12-01 10:38 Echelon9 Severity minor => crash
2019-12-14 22:40 FSCyborg Assigned To => FSCyborg
2019-12-14 22:40 FSCyborg Status new => assigned
2019-12-14 22:43 FSCyborg Status assigned => code review
2019-12-14 22:43 FSCyborg Note Added: 0016945
2019-12-14 22:44 FSCyborg Note Edited: 0016945
2020-01-14 05:32 FSCyborg Status code review => resolved
2020-01-14 05:32 FSCyborg Resolution open => fixed
2020-01-14 05:32 FSCyborg Note Added: 0016955