NT Crash Thread
Moderators: Community Managers, Developers
Re: NT Crash Thread
Code: Select all
WorldServer.exe!std::vector<DataStruct *,std::allocator<DataStruct *> >::begin() Line 982 C++
WorldServer.exe!PacketStruct::GetDataStruct(const char * name) Line 124 C++
> WorldServer.exe!PacketStruct::GetUInt32(const char * name, unsigned int pos) Line 591 C++
WorldServer.exe!Loot::SendToClient(const std::shared_ptr<Client> & client, PacketStruct * packet) Line 141 C++
WorldServer.exe!ChunkServer::HandleClientLootRequest(const std::shared_ptr<Client> & client, PacketStruct * packet) Line 2931 C++
WorldServer.exe!ChunkServer::HandleNPCInteractionRequest(const std::shared_ptr<Client> & client) Line 4175 C++
WorldServer.exe!ChunkServer::ProcessPackets() Line 407 C++
WorldServer.exe!ChunkPacketThread(void * data) Line 153 C++
WorldServer.exe!ThreadRun(void * arg) Line 77 C++
WorldServer.exe!_callthreadstart() Line 255 C
WorldServer.exe!_threadstart(void * ptd) Line 239 C
Re: NT Crash Thread
Code: Select all
ntdll.dll!77e9334f() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
> WorldServer.exe!Mutex::WriteUnlock() Line 204 C++
WorldServer.exe!Database::Query(const char * fmt, ...) Line 144 C++
WorldServer.exe!WorldDatabase::SaveCharacterDetails(std::shared_ptr<WorldCharacter> & character) Line 2370 C++
WorldServer.exe!WorldDatabase::SaveCharacter(std::shared_ptr<WorldCharacter> & character) Line 2299 C++
WorldServer.exe!Net::SaveAllCharacters() Line 1276 C++
WorldServer.exe!Net::Process() Line 150 C++
WorldServer.exe!main(int argc, char * * argv) Line 237 C++
WorldServer.exe!__tmainCRTStartup() Line 241 C
WorldServer.exe!mainCRTStartup() Line 164 C
kernel32.dll!7646338a() Unknown
ntdll.dll!77e49f72() Unknown
ntdll.dll!77e49f45() Unknown
Re: NT Crash Thread
Code: Select all
WorldServer.exe!std::_Fetch_add_seq_cst_2(volatile unsigned short * _Tgt, unsigned short _Value) Line 1166 C++
WorldServer.exe!std::_Atomic_fetch_add_2(volatile unsigned short * _Tgt, unsigned short _Value, std::memory_order _Order) Line 1188 C++
WorldServer.exe!std::atomic_fetch_add_explicit(std::atomic_ushort * _Atom, unsigned short _Value, std::memory_order _Order) Line 1175 C++
> WorldServer.exe!std::atomic_ushort::fetch_add(unsigned short _Value, std::memory_order _Order) Line 1394 C++
WorldServer.exe!Client::GetAndIncrementServerSequence() Line 237 C++
WorldServer.exe!Client::PushOutgoing(SOEProtocolData * data, bool dump_packet) Line 371 C++
WorldServer.exe!Client::QueuePacket(SOEProtocolData * data, bool dump_packet) Line 305 C++
WorldServer.exe!WorldCharacter::SendRequestChatChannel() Line 482 C++
WorldServer.exe!ChunkServer::CheckPlayerChangedContinents(std::shared_ptr<Client> & client, std::shared_ptr<WorldCharacter> & character) Line 3634 C++
WorldServer.exe!ChunkServer::HandleClientAuthConfirm(std::shared_ptr<Client> & client, PacketStruct * packet_struct) Line 1267 C++
WorldServer.exe!ChunkServer::ProcessPackets() Line 365 C++
WorldServer.exe!ChunkPacketThread(void * data) Line 153 C++
WorldServer.exe!ThreadRun(void * arg) Line 77 C++
WorldServer.exe!_callthreadstart() Line 255 C
WorldServer.exe!_threadstart(void * ptd) Line 239 C
kernel32.dll!75de338a() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!770d9f72() Unknown
ntdll.dll!770d9f45() Unknown
Code: Select all
11:22:45.405 11:22:45.405 I I UDP UDP New client connected from 24.19.96.150:63326
New client connected from 24.19.96.150:53831
11:22:45.420 I Chunk Chunk shutdown cancelled for Stiirhad.
11:22:45.451 D Chunk control_text='JOIN'
11:22:45.451 E Unreal Could not find unreal channel list for account id 0!
11:22:45.451 E Chunk ClientJoin: Error getting control channel for account id 0
11:22:45.467 E Unreal Could not find unreal channel list for account id 0!
11:22:45.467 D Char Attempting to load character ID 578
11:22:45.467 I Ability Successfully loaded 12 abilities into character map.
11:22:45.467 D Ability Loaded 2 forms for character id 578.
11:22:45.467 D Dungeon Loading dungeons for character_id 578.
11:22:45.467 D Dungeon Successfully loaded 5 dungeons for character_id 578.
11:22:45.483 E Char AddTitle: Invalid title id 602 at c:\vgoemu\src\world\worldcharacter.cpp:940
11:22:45.483 D Char Loading Inventory for character_id 578
11:22:45.529 I Char Loaded 21 items for character_id 578
11:22:45.529 D Char ToggleIsOnline: Setting player online
11:22:45.529 D Char Successfully loaded character 'MoldewJr' (578)
Ok when this section get's hit and there is no control channel I think the client keep's going about it's business which is what caused the server to crash.
Think i'm going to add a client disconnect instead of it just doing a return if there is no control channel what do you guys think will it work?
Code: Select all
void ChunkServer::HandleClientJoin(shared_ptr<Client>& client){
UnrealChannel* chan = unreal_channel_list.GetCharacterControlChannel(client->GetAccountID());
if(chan == NULL){
LogError(LOG_CHUNK, 0, "ClientJoin: Error getting control channel for account id %u", client->GetAccountID());
// Client should disconnect if there is no control channel.
udp.BeginDisconnectFromServer(client, CLIENT_DISCONNECT_APPLICATION);
return;
}
BitStreamControlPacket cp;
cp.WritePacket(client, chan->GetAndIncrementSequenceNumber(), "JOINED", true);
Re: NT Crash Thread
Code: Select all
ntdll.dll!76f68277() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
WorldServer.exe!Mutex::ReadLock() Line 99 C++
> WorldServer.exe!UDPServer::GetClient(unsigned int account_id) Line 196 C++
WorldServer.exe!ChunkServer::GetClient(unsigned int account_id) Line 302 C++
WorldServer.exe!UDPServer::KickDupeClients(unsigned int account_id, unsigned int connection_id) Line 270 C++
WorldServer.exe!Net::HandleCharacterSelected(std::shared_ptr<Client> & client, PacketStruct * packet_struct) Line 588 C++
WorldServer.exe!Net::Process() Line 187 C++
WorldServer.exe!main(int argc, char * * argv) Line 237 C++
WorldServer.exe!__tmainCRTStartup() Line 241 C
WorldServer.exe!mainCRTStartup() Line 164 C
kernel32.dll!7517338a() Unknown
ntdll.dll!76ef9f72() Unknown
ntdll.dll!76ef9f45() Unknown
Code: Select all
18:09:37.650 D Char Attempting to load character ID 477
18:09:37.666 I Ability Successfully loaded 180 abilities into character map.
18:09:37.666 D Ability Loaded 18 forms for character id 477.
18:09:37.666 D Dungeon Loading dungeons for character_id 477.
18:09:37.666 D Dungeon Successfully loaded 16 dungeons for character_id 477.
18:09:37.666 W Title TODO: No titles! Reset from Starting Titles...
18:09:37.682 D Char Loading Inventory for character_id 477
18:09:37.682 I Char Loaded 57 items for character_id 477
18:09:37.682 D Char ToggleIsOnline: Setting player online
18:09:37.791 D Char Successfully loaded character 'Shargash' (477)
18:09:37.791 D Chunk Loading Unreal File List for Chunk 144
18:09:37.791 D Chunk Starting chunk 'Tursh Village' (144)
18:09:38.087 D NPC 1821 NPCs Loaded in Chunk ID: 144
18:09:38.118 D PPO 106 PPOs Loaded in Chunk ID: 144
18:09:38.118 D Music 55 Music Tracks Loaded in Chunk ID: 144
18:09:38.134 D Sound 89 Sounds Loaded in Chunk ID: 144
18:09:38.134 W Mover Found mover of type MT_Other with move_time == 0, legacy_mover_id=26
18:09:38.150 W Mover Found mover of type MT_Other with move_time == 0, legacy_mover_id=133
18:09:38.150 W Mover Found mover of type MT_Other with move_time == 0, legacy_mover_id=138
18:09:38.150 D Mover 152 Movers Loaded in Chunk ID: 144
18:09:38.586 I UDP New client connected from 98.115.70.62:51134
18:09:38.586 I UDP Received session request from 98.115.70.62:51134 with connection ID 1557783217
18:09:38.789 I Chunk New Session: Account ID: 273 Session ID: 'edo36dt0nbvaoovef8pkmaniq7'
18:10:11.268 W Chunk Camp requested from client with character==null
18:10:38.645 I UDP New client connected from 98.115.70.62:64999
18:10:38.645 I UDP Received session request from 98.115.70.62:64999 with connection ID 419677569
18:10:38.879 I Net New Session: Account ID: 273 Session ID: 'edo36dt0nbvaoovef8pkmaniq7'
18:10:39.113 D Char Loading 12 characters for account_id: 273
18:10:39.113 D Char Loaded 5 characters for account_id: 273
18:10:39.113 D Net Net:Loading character inventory for Sthelany.
18:10:39.113 D Char Loading Inventory for character_id 457
18:10:39.129 I Char Loaded 0 items for character_id 457
18:10:39.129 E Database Unable to properly load character inventory!
18:10:39.129 D Net Net:Character inventory loaded.
18:10:39.129 D Net Net:Loading character inventory for Harqush.
18:10:39.129 D Char Loading Inventory for character_id 460
18:10:39.129 I Char Loaded 0 items for character_id 460
18:10:39.129 E Database Unable to properly load character inventory!
18:10:39.129 D Net Net:Character inventory loaded.
18:10:39.129 D Net Net:Loading character inventory for HIresh.
18:10:39.129 D Char Loading Inventory for character_id 464
18:10:39.129 I Char Loaded 0 items for character_id 464
18:10:39.144 E Database Unable to properly load character inventory!
18:10:39.144 D Net Net:Character inventory loaded.
18:10:39.144 D Net Net:Loading character inventory for Shargash.
18:10:39.144 D Char Loading Inventory for character_id 477
18:10:39.222 I Char Loaded 57 items for character_id 477
18:10:39.222 D Net Net:Character inventory loaded.
18:10:39.222 D Net Net:Loading character inventory for Ningauble.
18:10:39.222 D Char Loading Inventory for character_id 518
18:10:39.222 I Char Loaded 1 items for character_id 518
18:10:39.222 D Net Net:Character inventory loaded.
18:10:11.268 W Chunk Camp requested from client with character==null.
- John Adams
- Retired
- Posts: 4581
- Joined: Wed Aug 28, 2013 9:40 am
- Location: Phoenix, AZ.
- Contact:
Re: NT Crash Thread
First crash in a long time, but not much detail I'm afraid. What's scary is that it was a simple character create, no one was even in-game yet.
REPRODUCED! Just make a new character. Soon as you land in the world, we crash I am looking into it now.
Threads:
Console:
[quote]06:42:17.221 I Chunk Shutdown timer expired. Shutting down Isle of Dawn.
09:31:45.321 D LS Create character request for 'Maracus' for account ID 41
09:31:45.368 D Char Adding default chunk for race: 13, class: 28 for id: 37 (choice: true)
09:31:45.368 D Char Success: Set Home Town starting location in 'CliffsofGhelgad' from chunks table.
09:31:45.368 D Ability Success: 10 starting abilities set for character_id 37
09:31:45.383 D Char Successfully loaded 10 starter abilities.
09:31:45.383 D Char Adding default hotbar icons for race: 13, class: 28 for character id: 37
09:31:45.383 D Char Success: 6 starting hotbar icons set for character_id 37
09:31:45.383 D Char Successfully loaded 6 starter hotbar icons.
09:31:45.383 D Ability Success: 22 starting diplomacy cards set for char_id 37
09:31:45.383 D LS Character 'Maracus' created with character ID 37
09:31:46.241 I UDP New client connected from 58.169.210.110:51481
09:31:46.241 I UDP Received session request from 58.169.210.110:51481 with connection ID 1893724453
09:31:46.616 I Net New Session: Account ID: 41 Session ID: '81litg1pds35ic5ofs06rkk9m5'
09:31:47.021 D Char Loading 12 characters for account_id: 41
09:31:47.021 D Char Loaded 1 characters for account_id: 41
09:31:47.021 D Net Net:Loading character inventory for Maracus Pascal.
09:31:47.021 D Char Loading Inventory for character_id 37
09:31:47.021 I Char Loaded 0 items for character_id 37
09:31:47.021 E Database Unable to properly load character inventory!
09:31:47.021 D Net Net:Character inventory loaded.[/quote]
REPRODUCED! Just make a new character. Soon as you land in the world, we crash I am looking into it now.
Code: Select all
> WorldServer.exe!memcpy(unsigned char * dst, unsigned char * src, unsigned long count) Line 305 Unknown
WorldServer.exe!ThreadRun(void * arg) Line 77 C++
kernel32.dll!7517338a() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!76ef9f72() Unknown
ntdll.dll!76ef9f45() Unknown
Code: Select all
Not Flagged > 3952 0 Worker Thread WorldServer.exe!_threadstart WorldServer.exe!memcpy Normal
WorldServer.exe!memcpy(unsigned char * dst, unsigned char * src, unsigned long count) Line 305
WorldServer.exe!ThreadRun(void * arg) Line 77
kernel32.dll!7517338a()
[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!76ef9f72()
ntdll.dll!76ef9f45()
Not Flagged 2224 0 Main Thread Main Thread WorldServer.exe!SleepMS Normal
Not Flagged 3356 0 Worker Thread ntdll.dll thread ntdll.dll!76ee015d Normal
Not Flagged 4004 0 Worker Thread WorldServer.exe!_threadstart WorldServer.exe!SleepMS Normal
Not Flagged 2936 0 Worker Thread WorldServer.exe!_threadstart mswsock.dll!745d6f1f Normal
Not Flagged 3612 0 Worker Thread WorldServer.exe!_threadstart WorldServer.exe!SleepMS Normal
Not Flagged 1152 0 Worker Thread WorldServer.exe!_threadstart WorldServer.exe!_read_nolock Normal
[quote]06:42:17.221 I Chunk Shutdown timer expired. Shutting down Isle of Dawn.
09:31:45.321 D LS Create character request for 'Maracus' for account ID 41
09:31:45.368 D Char Adding default chunk for race: 13, class: 28 for id: 37 (choice: true)
09:31:45.368 D Char Success: Set Home Town starting location in 'CliffsofGhelgad' from chunks table.
09:31:45.368 D Ability Success: 10 starting abilities set for character_id 37
09:31:45.383 D Char Successfully loaded 10 starter abilities.
09:31:45.383 D Char Adding default hotbar icons for race: 13, class: 28 for character id: 37
09:31:45.383 D Char Success: 6 starting hotbar icons set for character_id 37
09:31:45.383 D Char Successfully loaded 6 starter hotbar icons.
09:31:45.383 D Ability Success: 22 starting diplomacy cards set for char_id 37
09:31:45.383 D LS Character 'Maracus' created with character ID 37
09:31:46.241 I UDP New client connected from 58.169.210.110:51481
09:31:46.241 I UDP Received session request from 58.169.210.110:51481 with connection ID 1893724453
09:31:46.616 I Net New Session: Account ID: 41 Session ID: '81litg1pds35ic5ofs06rkk9m5'
09:31:47.021 D Char Loading 12 characters for account_id: 41
09:31:47.021 D Char Loaded 1 characters for account_id: 41
09:31:47.021 D Net Net:Loading character inventory for Maracus Pascal.
09:31:47.021 D Char Loading Inventory for character_id 37
09:31:47.021 I Char Loaded 0 items for character_id 37
09:31:47.021 E Database Unable to properly load character inventory!
09:31:47.021 D Net Net:Character inventory loaded.[/quote]
- John Adams
- Retired
- Posts: 4581
- Joined: Wed Aug 28, 2013 9:40 am
- Location: Phoenix, AZ.
- Contact:
Re: NT Crash Thread
Got more info doing this on my local dev box. Seems related to Guild code?
Because for some odd reason, the chunk object is empty.
Because the current_chunk_id is 0
Code: Select all
> WorldServer.exe!GuildsList::SendGuildPCInfo(std::shared_ptr<Client> & client, std::shared_ptr<WorldCharacter> & character) Line 606 C++
WorldServer.exe!ChunkServer::HandleClientAuthConfirm(std::shared_ptr<Client> & client, PacketStruct * packet_struct) Line 1223 C++
WorldServer.exe!ChunkServer::ProcessPackets() Line 295 C++
WorldServer.exe!ChunkPacketThread(void * data) Line 120 C++
WorldServer.exe!ThreadRun(void * arg) Line 77 C++
WorldServer.exe!_callthreadstart() Line 255 C
WorldServer.exe!_threadstart(void * ptd) Line 239 C
kernel32.dll!7578336a() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!773a92b2() Unknown
ntdll.dll!773a9285() Unknown
Code: Select all
+ this 0x02058c88 {WorldServer.exe!GuildsList guilds_list} {guilds={ size=1 } guilds_update={ size=0 } default_ranks=...} GuildsList *
+ client shared_ptr {outgoing={ size=0 } outgoing_noseq={ size=0 } sent_packets={ size=65 } ...} [2 strong refs, 68 weak refs] [make_shared] std::shared_ptr<Client> &
+ character shared_ptr {character_id=39 full_name="Jakii" first_name="Jakii" ...} [4 strong refs, 5 weak refs] [make_shared] std::shared_ptr<WorldCharacter> &
+ member 0x03ca07b8 {guild_id=1 char_id=39 firstname="Jakii" ...} Member *
+ out 0x1815b928 {name=0x1815b928 "WS_ServerGuildPcInfo" opcode=1262 server_id=5 ...} PacketStruct *
- chunk 0x00000000 {chunk_id=??? continent= shortname= ...} ChunkInfo *
chunk_id <Unable to read memory>
+ continent std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+ shortname std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+ displayname std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+ filename std::basic_string<char,std::char_traits<char>,std::allocator<char> >
coord_y <Unable to read memory>
coord_x <Unable to read memory>
+ safe_coords {x=??? y=??? z=??? } FVector
+ safe_rotation {pitch=??? yaw=??? roll=??? } FRotator
+ chunk_type std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+ behavior_flags std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+ access_flags std::basic_string<char,std::char_traits<char>,std::allocator<char> >
is_city <Unable to read memory>
always_loaded <Unable to read memory>
shutdown_timer <Unable to read memory>
file_count <Unable to read memory>
name_count <Unable to read memory>
+ file_guid std::basic_string<char,std::char_traits<char>,std::allocator<char> >
file_size <Unable to read memory>
ruleset_id <Unable to read memory>
script_id <Unable to read memory>
is_active <Unable to read memory>
fly_state <Unable to read memory>
- member 0x03ca07b8 {guild_id=1 char_id=39 firstname="Jakii" ...} Member * guild_id 1 unsigned int char_id 39 unsigned int + firstname "Jakii" std::basic_string<char,std::char_traits<char>,std::allocator<char> > rank 7 unsigned int recruiter false bool isOnline false bool + personal_note "" std::basic_string<char,std::char_traits<char>,std::allocator<char> > + guild_note "" std::basic_string<char,std::char_traits<char>,std::allocator<char> > points 0.000000000 float + officer_note "" std::basic_string<char,std::char_traits<char>,std::allocator<char> > has_joined 1 unsigned int current_chunk_id 0 unsigned int adv_class 19 unsigned int adv_level 1 unsigned int last_online 0 unsigned int isRemoved false bool
Re: NT Crash Thread
Code: Select all
> WorldServer.exe!std::_Fetch_add_seq_cst_2(volatile unsigned short * _Tgt, unsigned short _Value) Line 1166 C++
WorldServer.exe!std::_Atomic_fetch_add_2(volatile unsigned short * _Tgt, unsigned short _Value, std::memory_order _Order) Line 1188 C++
WorldServer.exe!std::atomic_fetch_add_explicit(std::atomic_ushort * _Atom, unsigned short _Value, std::memory_order _Order) Line 1175 C++
WorldServer.exe!std::atomic_ushort::fetch_add(unsigned short _Value, std::memory_order _Order) Line 1394 C++
WorldServer.exe!Client::GetAndIncrementServerSequence() Line 237 C++
WorldServer.exe!Client::PushOutgoing(SOEProtocolData * data, bool dump_packet) Line 371 C++
WorldServer.exe!Client::QueuePacket(SOEProtocolData * data, bool dump_packet) Line 305 C++
WorldServer.exe!WorldCharacter::SendRequestChatChannel() Line 482 C++
WorldServer.exe!ChunkServer::CheckPlayerChangedContinents(std::shared_ptr<Client> & client, std::shared_ptr<WorldCharacter> & character) Line 1764 C++
WorldServer.exe!ChunkServer::HandleClientAuthConfirm(std::shared_ptr<Client> & client, PacketStruct * packet_struct) Line 1216 C++
WorldServer.exe!ChunkServer::ProcessPackets() Line 295 C++
WorldServer.exe!ChunkPacketThread(void * data) Line 120 C++
WorldServer.exe!ThreadRun(void * arg) Line 77 C++
WorldServer.exe!_callthreadstart() Line 255 C
WorldServer.exe!_threadstart(void * ptd) Line 239 C
kernel32.dll!7517338a() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!76ef9f72() Unknown
ntdll.dll!76ef9f45() Unknown
Code: Select all
19:36:46.713 I UDP New client connected from 66.41.69.123:50070
19:36:46.713 I UDP Received session request from 66.41.69.123:50070 with connection ID 860342601
19:36:46.916 I Chunk New Session: Account ID: 80 Session ID: '8pjo0d3ck6g7qf1gluv1u2k077'
19:36:46.916 E Unreal Could not find unreal channel list for account id 80!
19:36:47.134 D Chunk control_text='HELLO REVISION=0 MINVER=3151 VER=3186'
19:36:47.290 D Chunk control_text='LOGIN'
19:36:49.412 D Chunk control_text='JOIN'
19:36:49.427 D Char Attempting to load character ID 0
Code: Select all
void ChunkServer::HandleClientAuthConfirm(shared_ptr<Client>& client, PacketStruct* packet_struct) {
const char* name = packet_struct->GetString("player_first_name");
string account_name = packet_struct->GetString("username");
shared_ptr<WorldCharacter> character;
if (name){
string str_name = name;
character = character_list.GetCharacter(str_name);
if (character){
client->SetCharacterId(character->GetCharacterID());
client->SetCharacter(character);
Re: NT Crash Thread
[quote="John Adams"]Got more info doing this on my local dev box. Seems related to Guild code?
[/quote]
I looked at this briefly this morning. There was already error checking in place during the SendGuildPCInfo routine that if it failed to return a chunk object (i.e. if chunk id was 0), it exited the routine. It should not crash the server, it just aborts sending the packet.
Either way, there was the potential (obviously to have a current chunk id = 0 for a newly created character. I didn't see a way to actually get that value during the creation, so it gets set to 0. I added in a line to the load character function to set the chunk id in the member struct to the character chunk id. And then I moved the guild character update function above the chunk code in the SendGuildPCInfo. So it shouldn't be possible for this to be a 0 now unless its getting erroneously set elsewhere back to 0, which would definitely be a bug.
Fix committed.
[/quote]
I looked at this briefly this morning. There was already error checking in place during the SendGuildPCInfo routine that if it failed to return a chunk object (i.e. if chunk id was 0), it exited the routine. It should not crash the server, it just aborts sending the packet.
Either way, there was the potential (obviously to have a current chunk id = 0 for a newly created character. I didn't see a way to actually get that value during the creation, so it gets set to 0. I added in a line to the load character function to set the chunk id in the member struct to the character chunk id. And then I moved the guild character update function above the chunk code in the SendGuildPCInfo. So it shouldn't be possible for this to be a 0 now unless its getting erroneously set elsewhere back to 0, which would definitely be a bug.
Fix committed.
- John Adams
- Retired
- Posts: 4581
- Joined: Wed Aug 28, 2013 9:40 am
- Location: Phoenix, AZ.
- Contact:
Re: NT Crash Thread
Cool Faux, thank you. The patch was probably added by me, inspiring the desire that we go over the code base and add the checks that are missing. I'm always more interested in the cause than patching the symptom though, so if you think this solves the origin of the problem, then it's a done deal.
Re: NT Crash Thread
ouch
Code: Select all
08:26:09.956 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:11.983 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:14.011 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:16.039 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:18.083 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:20.111 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:22.139 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:24.167 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:26.226 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:28.254 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:30.282 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:32.309 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:34.353 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:36.381 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:38.409 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:40.437 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:42.465 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:44.493 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:46.521 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:48.548 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:50.576 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:52.604 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:54.632 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:56.660 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:26:58.688 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:00.732 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:02.775 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:04.819 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:06.847 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:08.890 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:10.934 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:12.977 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:15.005 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:17.033 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:19.061 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:21.089 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:22.212 D Char BeginDisconnectFromServer: Character Inthild Set to Offline
08:27:22.212 D Char ToggleIsOnline: Setting player offline
08:27:22.212 I UDP Client from 77.222.107.230:63271 set to disconnect : Timeout
08:27:22.337 D Char BeginDisconnectFromServer: Character Inthild Set to Offline
08:27:22.337 D Char ToggleIsOnline: Setting player offline
08:27:22.337 I UDP Client from 77.222.107.230:62530 set to disconnect : Timeout
08:27:23.117 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:24.240 I UDP Client from 77.222.107.230:63271 has been removed.
08:27:24.365 I UDP Client from 77.222.107.230:62530 has been removed.
08:27:25.191 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:27.531 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:40.978 E Mutex Timeout trying to acquire mutex Net::m_ClientHeartbeatUpdates's write lock lock after 10000 mill
iseconds
08:27:44.035 E UDP Read timed out after 2000 milliseconds! Disconnecting this client to be safe.
08:27:44.176 D Char DisconnectChunkClient: Character Chran Set to Offline
08:27:44.301 D Char ToggleIsOnline: Setting player offline
08:27:50.790 D Char Saving character 'Chran Solen' (55)
08:27:50.790 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:27:54.924 D Char Saved successful for character 'Chran Solen' (55)
08:27:58.340 D Char BeginDisconnectFromServer: Character Chran Set to Offline
08:27:58.340 D Char ToggleIsOnline: Setting player offline
08:27:58.356 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:27:58.387 D Char BeginDisconnectFromServer: Character Chran Set to Offline
08:27:58.387 D Char ToggleIsOnline: Setting player offline
08:27:58.434 I UDP New client connected from 68.37.119.36:59886
08:27:59.229 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:28:00.805 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:01.320 D NPC 'FENGROT FOULBREATH' will face and combat 'Chran Solen'
08:28:01.382 E Unreal Could not find unreal channel list for account id 0!
08:28:01.959 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:01.975 I UDP New client connected from 68.37.119.36:59886
08:28:01.975 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:01.990 I UDP New client connected from 68.37.119.36:59886
08:28:01.990 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:02.006 I UDP New client connected from 68.37.119.36:59886
08:28:02.006 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:02.022 I UDP New client connected from 68.37.119.36:59886
08:28:02.022 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:02.037 I UDP New client connected from 68.37.119.36:59886
08:28:02.037 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:02.053 I UDP New client connected from 68.37.119.36:59886
08:28:02.053 I UDP Client from 68.37.119.36:59886 set to disconnect : Application
08:28:03.410 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.814 I UDP Client from 68.37.119.36:59886 has been removed.
08:28:04.861 I Chunk Starting chunk shutdown timer for Isle of Dawn.
08:28:05.438 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:07.466 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:09.494 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:11.537 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:13.565 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:15.593 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:17.621 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:19.649 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:21.677 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:23.705 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:25.733 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:27.761 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:29.789 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:31.817 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:33.845 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:35.888 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:37.932 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:39.975 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:42.019 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:44.047 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:46.075 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:48.118 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:50.162 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:52.190 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:54.217 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:56.245 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:28:58.273 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:00.301 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:02.329 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:04.357 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:06.385 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:08.413 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:10.441 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:12.469 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:14.497 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:16.525 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:18.600 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:20.627 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:22.671 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:24.699 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:26.727 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:28.755 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:30.783 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:32.811 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:34.839 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:36.867 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:38.894 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:40.922 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:42.950 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:44.978 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:47.006 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:49.034 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:51.062 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:53.090 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:55.118 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:57.146 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:29:59.189 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:30:01.217 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:30:03.261 W NPC NpcStateInCombat::Do 'FENGROT FOULBREATH' found no character on top of hate list
08:30:05.289 I Chunk Shutdown timer expired. Shutting down Thelaseen.
08:30:08.814 I UDP Client from 68.37.119.36:64352 set to disconnect : Timeout
08:30:10.842 I UDP Client from 68.37.119.36:64352 has been removed.
08:33:04.996 I Chunk Shutdown timer expired. Shutting down Isle of Dawn.
08:34:09.625 I UDP New client connected from 73.169.222.178:61815
08:34:09.625 I UDP Received session request from 73.169.222.178:61815 with connection ID 710487640
08:34:50.698 I UDP Client from 73.169.222.178:61815 set to disconnect : Timeout
08:34:52.726 I UDP Client from 73.169.222.178:61815 has been removed.
08:34:54.583 I UDP New client connected from 73.169.222.178:61818
08:34:54.583 I UDP Received session request from 73.169.222.178:61818 with connection ID 1466348851
08:35:35.313 I UDP Client from 73.169.222.178:61818 set to disconnect : Timeout
08:35:37.341 I UDP Client from 73.169.222.178:61818 has been removed.
08:35:49.665 I UDP New client connected from 73.169.222.178:61821
08:35:49.665 I UDP Received session request from 73.169.222.178:61821 with connection ID 244443501
08:36:30.068 I UDP Client from 73.169.222.178:61821 set to disconnect : Timeout
08:36:32.096 I UDP Client from 73.169.222.178:61821 has been removed.
08:42:57.700 E TCP TCP Connection disconnected from 68.98.218.5:10102