Jump to content
Eternal Lands Official Forums
Sign in to follow this  
ttlanhil

a couple of crashes and a graphics buffer prob

Recommended Posts

was waiting for a buffer overrun(that'd be a nice one to figure out, right?) and got 3 crashes in the meantime (4 if you count the clean exit for no apparent reason)

 

1st one, just off the boat into VotD:

 

(MSVC provides backtrace and local variables in seperate windows... copy all doesn't look as nice)

 




>	elc_ttlanhil.exe!draw_enhanced_actor(actor * actor_id=0x199890a8)  Line 145 + 0x1e	C
 elc_ttlanhil.exe!display_actors()  Line 575 + 0x9	C
 elc_ttlanhil.exe!display_game_handler(window_info * win=0x0da4c568)  Line 644	C
 elc_ttlanhil.exe!draw_window(window_info * win=0x0da4c568)  Line 995 + 0xf	C
 elc_ttlanhil.exe!display_window(int win_id=0)  Line 1132 + 0x15	C
 elc_ttlanhil.exe!display_windows(int level=1)  Line 54 + 0x9	C
 elc_ttlanhil.exe!draw_scene()  Line 92 + 0x7	C
 elc_ttlanhil.exe!start_rendering()  Line 123	C
 elc_ttlanhil.exe!Main(int argc=3, char * * argv=0x0da45000)  Line 227	C
 elc_ttlanhil.exe!WinMain(HINSTANCE__ * hInst=0x00400000, HINSTANCE__ * hPrev=0x00000000, char * lpCmd=0x001423ba, int nShow=1)  Line 281 + 0xd	C
 elc_ttlanhil.exe!WinMainCRTStartup()  Line 390 + 0x39	C
 kernel32.dll!RegisterWaitForInputIdle()  + 0x49	






-	actor_id	0x199890a8 {actor_id=174 actor_type=4 tmp={have_tmp=1 x_pos=35.000000000000000 y_pos=77.000000000000000 ...} ...}	actor *
actor_id	174	int
actor_type	4	int
+	tmp	{have_tmp=1 x_pos=35.000000000000000 y_pos=77.000000000000000 ...}	tmp_actor_data
+	calmodel	0x1884ca48 {m_pCoreModel=0x0eea4090 {m_strName={"Model"} m_pCoreSkeleton=0x0eea41c8 {m_vectorCoreBone={first=??? last=???} m_mapCoreBoneNames={size=30} m_listRootCoreBoneId={size=1} ...} m_vectorCoreAnimation={first=??? last=???} ...} m_pSkeleton=0x1886f360 {m_pCoreSkeleton=0x0eea41c8 {m_vectorCoreBone={first=??? last=???} m_mapCoreBoneNames={size=30} m_listRootCoreBoneId={size=1} ...} m_vectorBone={first=??? last=???} m_isBoundingBoxesComputed=false } m_pMixer=0x1884cf40 ...}	CalModel *
+	cur_anim	{anim_index=2 kind=0 duration=2.7585645 }	cal_anim
+	cur_idle_anims	0x199890f0 {anim_index=0 kind=0 duration=0.00000000 }	cal_anim [16]
IsOnIdle	0	int
anim_time	4.8039989	float
x_pos	35.000000000000000	double
y_pos	77.000000000000000	double
z_pos	0.00000000000000000	double
x_tile_pos	70	int
y_tile_pos	154	int
x_rot	0.00000000	float
y_rot	0.00000000	float
z_rot	180.00000	float
boots	0	int
hair	0	int
skin	0	int
pants	0	int
shirt	0	int
cur_weapon	4	int
cur_shield	0	int
is_enhanced_model	1	int
+	body_parts	0x0fab5280 {legs_meshindex=0 head_meshindex=0 torso_meshindex=0 ...}	enhanced_actor *
remapped_colors	0	char
texture_id	61	int
+	skin_name	0x19989210 ""	char [256]
+	actor_name	0x19989310 "‹Ant_45 ?Ant"	char [256]
+	que	0x19989410 ""	char [21]
last_command	0	char
busy	0	char
sitting	0	char
fighting	0	char
move_x_speed	1.9848071685385455e-009	double
move_y_speed	-0.037037037299999943	double
move_z_speed	0.00000000000000000	double
movement_frames_left	0	int
rotate_x_speed	0.00000000	float
rotate_y_speed	0.00000000	float
rotate_z_speed	0.00000000	float
rotate_frames_left	0	int
after_move_frames_left	0	int
moving	0	char
rotating	0	char
stop_animation	0	char
stand_idle	0	char
sit_idle	1 '?'	char
dead	0	char
damage	0	int
damage_ms	0	int
last_health_loss	0	int
cur_health	15	int
max_health	40	int
ghost	0	char
kind_of_actor	1	int
+	current_displayed_text	0x19989484 ""	char [60]
current_displayed_text_time_left	0	int
x_speed	0.00000000000000000	double
y_speed	0.00000000000000000	double
z_speed	0.00000000000000000	double
-	actor_id->tmp	{have_tmp=1 x_pos=35.000000000000000 y_pos=77.000000000000000 ...}	tmp_actor_data
have_tmp	1	int
x_pos	35.000000000000000	double
y_pos	77.000000000000000	double
z_pos	0.00000000000000000	double
x_tile_pos	70	short
y_tile_pos	154	short
x_rot	0.00000000	float
y_rot	0.00000000	float
z_rot	180.00000	float
actor_id->tmp.x_tile_pos	70	short
actor_id->tmp.y_tile_pos	154	short
-	height_map	0x0fb0b028 ""	unsigned char *
 0	unsigned char
tile_map_size_x	2950913	int
z_pos	0.00000000000000000	double

 

 

 

 

and then later:

 

particles.c:399  	return add_particle_sys (file_name, (float) x_tile / 2.0 + 0.25f, (float) y_tile / 2.0 + 0.25f, -2.2f + height_map[y_tile*tile_map_size_x*6+x_tile] * 0.2f);


 elc_ttlanhil.exe!add_particle_sys_at_tile(char * file_name=0x00509b1c, int x_tile=41, int y_tile=67)  Line 399 + 0x16	C
 elc_ttlanhil.exe!remove_bag(int which_bag=19)  Line 130 + 0x24	C
 elc_ttlanhil.exe!process_message_from_server(unsigned char * in_data=0x00693e80, int data_length=4)  Line 761 + 0xd	C
 elc_ttlanhil.exe!process_data_from_server()  Line 1078 + 0xe	C
>	elc_ttlanhil.exe!get_message_from_server()  Line 1148	C
 elc_ttlanhil.exe!start_rendering()  Line 119	C
 elc_ttlanhil.exe!Main(int argc=3, char * * argv=0x0da45000)  Line 227	C
 elc_ttlanhil.exe!WinMain(HINSTANCE__ * hInst=0x00400000, HINSTANCE__ * hPrev=0x00000000, char * lpCmd=0x001423ba, int nShow=1)  Line 281 + 0xd	C
 elc_ttlanhil.exe!WinMainCRTStartup()  Line 390 + 0x39	C
 kernel32.dll!RegisterWaitForInputIdle()  + 0x49	







-	file_name	0x00509b1c "./particles/bag_out.part"	char *
 46 '.'	char
-	height_map	0x0f981018 ""	unsigned char *
 0	unsigned char
tile_map_size_x	1632765696	int
x_tile	41	int
y_tile	67	int

 

I got another one in the same place a bit later, so no backtrace there

 

 

 

it looks to me like in both cases the heightmap is 0... very odd

 

 

 

 

the graphics bug will fill my inv with random textures (I think it's random... actually... it could be the same each time, i'll check next time)

it also opens up the trade window (yeah, odd. and i didn't trade anyone else nor get a trade request)

screenie

Share this post


Link to post
Share on other sites

whoo, another one! (bag this time... still think it's the heightmap)

 

 

bagc.c:49        z=-2.2f+height_map[bag_y*tile_map_size_x*6+bag_x]*0.2f;





>	elc_ttlanhil.exe!put_bag_on_ground(int bag_x=35, int bag_y=60, int bag_id=16)  Line 49 + 0x16	C
 elc_ttlanhil.exe!process_message_from_server(unsigned char * in_data=0x00693e8c, int data_length=8)  Line 675 + 0x1d	C
 elc_ttlanhil.exe!process_data_from_server()  Line 1078 + 0xe	C
 elc_ttlanhil.exe!get_message_from_server()  Line 1148	C
 elc_ttlanhil.exe!start_rendering()  Line 119	C
 elc_ttlanhil.exe!Main(int argc=3, char * * argv=0x0da45000)  Line 227	C
 elc_ttlanhil.exe!WinMain(HINSTANCE__ * hInst=0x00400000, HINSTANCE__ * hPrev=0x00000000, char * lpCmd=0x001423ba, int nShow=1)  Line 281 + 0xd	C
 elc_ttlanhil.exe!WinMainCRTStartup()  Line 390 + 0x39	C
 kernel32.dll!RegisterWaitForInputIdle()  + 0x49	






bag_x	35	int
bag_y	60	int
-	height_map	0x0f981018 ""	unsigned char *
 0	unsigned char
tile_map_size_x	1632765696	int
z	-1.0737418e+008	float


Share this post


Link to post
Share on other sites

I'll give it a try, but I can only debug when it crashes currently, trying to run ELC in the debuger comes up withsome nifty cal3d memory violations (and has done for ages. my cal3d build is probably bad)

 

edit: whoo! I figured out why it was crashing when I tried to debug... stupid MSVC... even though it loaded in the right directory (and hence was able to get its libs) it was then chdir()ing back to when it was built... and of course not all the data files are there :confused:

 

oh well. now to wander around looking for bugs

Edited by ttlanhil

Share this post


Link to post
Share on other sites

I hope your testing with the global swear filters off. Having them on can not only cause packet overruns, but in some cases inject other bad network data into the client.

Share this post


Link to post
Share on other sites

err, well, this was before I knew the reason for packet overruns.

 

please ignore the traces n such above, because they may have been because of that problem, if they appear again (now that the filters should have been fixed) I'll post again. if I don't, assume that it was global filters

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×