• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

[8.60][tfs 0.3.6]niektóre postaci crashują serwer

vejin

I'm not an expert.
Joined
May 6, 2010
Messages
54
Reaction score
2
Location
Ultima
mam sobie otsa na windowsie z rl mapą, mam dwie postacie, zwykłą i gm, jak zwykłą sobie trochę pogram to po jakimś czasie, nie zauważam kiedy i dlaczego, nie mogę się potem zalogować, bo mi crashuje serwer. podejrzewam o to kolumnę 'conditions' w tabeli players w mysql, bo tylko postaci, które mają tam jakiekolwiek dane większe, niż 0B nie mogą się zalogować, kiedy usuwałem postać, tworzyłem na nowo identyczną, tylko bez wartości w 'conditions', wszystko było sprawnie, jak miałem więcej postaci, to zdarzały się jakieś wartości w 'conditions', które nie powodowały crasha, ale były mniejsze, niż te, które go powodują, np 11B, problem w tym, że to treść binarna i nie jestem w stanie przez to dojść do tego, co powoduje tego crasha. dwa przypadki, w których coś zaobserwowałem, to walka z wampirem, w 90% przypadków po walce z wampirem zostawały mi jakieś conditions, drugi przypadek nastąpił, kiedy do konta dopisałem sobie 31 dni pacc, ale tylko na konto, a nie na postać, nie wiem tak na prawdę, za co ta kolumna 'conditions' odpowiada, sam log z otsa nic nie mówi, bo crashuje, zanim cokolwiek powie.... proszę o pomoc, naprowadzenie, mam jakieś tam doświadczenie od paru lat z otsami, może nie znam perfekcyjnie języków, ale daję sobie radę w większości przypadków, jednak treść binarna jest dla mnie czarną magią...

@EDIT! rozwiązany! chodzi o to, że mimo braku capa postać dalej może ładować itemy, fakt, że postać chodzi bardzo powoli i jest powiadomienie o tym "Your capacity is overloaded", to dalej można ładować bez granic do bp, przy wylogowywaniu jest zapisywany ciężar, jaki postać nosi, i kiedy jest większy, niż dopuszczalny cap, crashuje serwer, jedyne, co pozostaje, to poszukać w configu albo w źródłach, gdzie to zmienić, ale nie dam rady dzisiaj tego zrobić.
 
Last edited:
w zasadzie totalnie nic mi to nie mówi....

Code:
*****************************************************
Error report - Mon Jan 27 13:37:14 2014
Compiler Info - GNU C++ version 3.4.5 (mingw special)
Compilation Date - Jan 27 2014 13:05:00
Memory load: 92
Total phys: 1961976 K available phys: 145480 K
Start time: 27-1-2014  12:28:24
Kernel time: 0:0:7.456
User time: 0:0:50.310
Threads: 4
Exception: 0xc0000005 at eip = 0x90b297
eax = 0
ebx = 0x2b4bbc0 -> 0x9f63e8
ecx = 0x2b4bbc0 -> 0x9f63e8
edx = 0x2618cc48 -> 0x9f140c
esi = 0x2618cc48 -> 0x9f140c
edi = 0
ebp = 0x2b4bb58 -> 0x2b4bbe8
esp = 0x2b4bb40 -> 0
efl = 0x10202
---Stack Trace---
From: 0x2b4bb40 to: 0x2b50000
0x2b4bb40 | 0
0x2b4bb44 | 0x330000 -> 0xa8349993
0x2b4bb48 | 0x23729c48 -> 0x120e
0x2b4bb4c | 0xb
0x2b4bb50 | 0x2618cc48 -> 0x9f140c
0x2b4bb54 | 0x2618cc48 -> 0x9f140c
0x2b4bb58 | 0x2b4bbe8 -> 0x2b4bc18 \\\\\\ stack frame //////
0x2b4bb5c | 0x4ac635 -> 0x8d04ec83 <-- ret
0x2b4bb5c  Game::changeSpeed(Creature*, int)(0x4ac57e)
0x2b4bb60 | 0x2b4bbc0 -> 0x9f63e8
0x2b4bb64 | 0x2618cc48 -> 0x9f140c
0x2b4bb68 | 0x23720c48 -> 0x24c23358
0x2b4bb6c | 0x1
0x2b4bb70 | 0x23729c40 -> 0x2f794167
0x2b4bb74 | 0x2b4bb8c -> 0x351faac
0x2b4bb78 | 0x773adea3 -> 0x840fc084
0x2b4bb7c | 0x23729c48 -> 0x120e
0x2b4bb80 | 0
0x2b4bb84 | 0x2618cc48 -> 0x9f140c
0x2b4bb88 | 0x23729c40 -> 0x2f794167
0x2b4bb8c | 0x351faac -> 0x351fd0c
0x2b4bbb0  Game::changeSpeed(Creature*, int)(0x4ac57e)
0x2b4bbbc  Items::getItemType(int) const(0x5960e2)
0x2b4bbc4 | 0x848
0x2b4bbc8 | 0x2b4bbe8 -> 0x2b4bc18
0x2b4bbcc | 0x57a62b -> 0x318480d9
0x2b4bbcc  Item::getWeight() const(0x57a5b2)
0x2b4bbd0 | 0x9f63e0 -> 0x9f12a8
0x2b4bbd4 | 0x848
0x2b4bbd8 | 0x2b4bbe8 -> 0x2b4bc18
0x2b4bbdc | 0xb
0x2b4bbe0 | 0x2618cc48 -> 0x9f140c
0x2b4bbe4 | 0
0x2b4bbe8 | 0x2b4bc18 -> 0x2b4f6f8 \\\\\\ stack frame //////
0x2b4bbec | 0x68cca7 -> 0x86dd40eb <-- ret
0x2b4bbec  Player::updateInventoryWeight()(0x68cba2)
0x2b4bbf0 | 0xa03e00 -> 0x9f0de8
0x2b4bbf4 | 0x2618cc48 -> 0x9f140c
0x2b4bbf8 | 0xffffff5b
0x2b4bbfc | 0x478bdf -> 0x8b0c6d8d
0x2b4bbfc  DatabaseMySQL::storeQuery(std::string const&)(0x478a08)
0x2b4bc00 | 0
0x2b4bc04 | 0x406b8000 -> 0
0x2b4bc08 | 0xa5
0x2b4bc0c | 0x27f0e7f
0x2b4bc10 | 0x2b4f5e0 -> 0x23729c54
0x2b4bc14 | 0
0x2b4bc18 | 0x2b4f6f8 -> 0x2b4fcb8 \\\\\\ stack frame //////
0x2b4bc1c | 0x515aab -> 0x42444c7 <-- ret
0x2b4bc1c  IOLoginData::loadPlayer(Player*, std::string const&, bool)(0x50896e)
0x2b4bc20 | 0x2618cc48 -> 0x9f140c
0x2b4bc24 | 0x2b4c520 -> 0x26ad151c
0x2b4bc28 | 0x2b4c520 -> 0x26ad151c
0x2b4bc2c | 0
0x2b4bc30 | 0
0x2b4bc34 | 0
0x2b4bc38 | 0
0x2b4bc3c | 0
0x2b4c20c  Condition::unserializeProp(ConditionAttr_t, PropStream&)(0x42f1b0)
0x2b4c39c  Condition::unserializeProp(ConditionAttr_t, PropStream&)(0x42f1b0)
0x2b4c4f0  IOLoginData::loadPlayer(Player*, std::string const&, bool)(0x50896e)
0x2b4f5ec  ProtocolOld::disconnectClient(unsigned char, char const*)(0x42e11a)
0x2b4f6d4 | 0xa0da50 -> 0x9f4698
0x2b4f6d8 | 0xa0da58 -> 0x9f4658
0x2b4f6dc | 0x2b4feb4 -> 0x2b4ff70
0x2b4f6e0 | 0x76ef8cd5 -> 0x8b55ff8b
0x2b4f6e4 | 0
0x2b4f6e8 | 0x50897e -> 0x8908458b
0x2b4f6e8  IOLoginData::loadPlayer(Player*, std::string const&, bool)(0x50896e)
0x2b4f6ec | 0x23038ff0 -> 0x9effa8
0x2b4f6f0 | 0x23e223d4 -> 0x23d812ac
0x2b4f6f4 | 0xa
0x2b4f6f8 | 0x2b4fcb8 -> 0x2b4fd08 \\\\\\ stack frame //////
0x2b4f6fc | 0x6b7d65 -> 0x850fc084 <-- ret
0x2b4f6fc  ProtocolGame::login(std::string const&, unsigned int, std::string const&, OperatingSystem_t, unsigned short, bool)(0x6b4a20)
0x2b4f700 | 0x9b15c0 -> 0x9efa88
0x2b4f704 | 0x2618cc48 -> 0x9f140c
0x2b4f708 | 0x23e223d4 -> 0x23d812ac
0x2b4f70c | 0
0x2b4f710 | 0x9b158c -> 0
0x2b4f714 | 0xafd8f0 -> 0x9f3a08
0x2b4f718 | 0x2b4f808 -> 0x2b4fb08
0x2b4f71c | 0x8d526e -> 0xdcc481
0x2b4f7dc  QTreeNode::getLeaf(unsigned short, unsigned short)(0x610cf2)
0x2b4f81c  Condition::unserializeProp(ConditionAttr_t, PropStream&)(0x42f1b0)
0x2b4f92c  Map::getSpectatorsInternal(std::list<Creature*, std::allocator<Creature*> >&, Position const&, bool, int, int, int, int, int, int)(0x60e36a)
0x2b4fa2c  Map::getSpectators(Position const&)(0x60eb3a)
0x2b4fb30  ProtocolGame::login(std::string const&, unsigned int, std::string const&, OperatingSystem_t, unsigned short, bool)(0x6b4a20)
0x2b4fc94 | 0
0x2b4fc98 | 0
0x2b4fc9c | 0xafd8f0 -> 0x9f3a08
0x2b4fca0 | 0x2b4ff3c -> 0xe36728
0x2b4fca4 | 0x76ef88fb -> 0x2583c3c9
0x2b4fca8 | 0xcf30c55 -> 0
0x2b4fcac | 0x23e223d4 -> 0x23d812ac
0x2b4fcb0 | 0x35c
0x2b4fcb4 | 0xa
0x2b4fcb8 | 0x2b4fd08 -> 0x2b4fda8 \\\\\\ stack frame //////
0x2b4fcbc | 0x8c3405 -> 0x8bf45d8b <-- ret
0x2b4fcc0 | 0x23038ff0 -> 0x9effa8
0x2b4fcc4 | 0x23e223d4 -> 0x23d812ac
0x2b4fcc8 | 0x2
0x2b4fccc | 0x23e223dc -> 0x23d812cc
0x2b4fcd0 | 0xa
0x2b4fcd4 | 0x35c
0x2b4fcd8 | 0
0x2b4fcdc | 0
0x2b4fce4 | 0x330000 -> 0xa8349993
0x2b4fce8 | 0x2374f9c0 -> 0x1a5a
0x2b4fcec | 0x23e223dc -> 0x23d812cc
0x2b4fcf0 | 0x2
0x2b4fcf4 | 0x23e223d4 -> 0x23d812ac
0x2b4fcf8 | 0x23038ff0 -> 0x9effa8
0x2b4fcfc | 0xafd8f0 -> 0x9f3a08
0x2b4fd00 | 0x9b15ac -> 0x26279ef0
0x2b4fd04 | 0x2b4ff3c -> 0xe36728
0x2b4fd08 | 0x2b4fda8 -> 0x2b4fed8 \\\\\\ stack frame //////
0x2b4fd0c | 0x9090df -> 0x8984458d <-- ret
0x2b4fd10 | 0x23e218c4 -> 0x23e223c8
0x2b4fd14 | 0x2b4fd2c -> 0x351f8cc
0x2b4fd18 | 0x73238c48 -> 0x732388b8
0x2b4fd1c | 0x1
0x2b4fd20 | 0x732407d0 -> 0x729229f5
0x2b4fd24 | 0x2b4fd3c -> 0x857120
0x2b4fd28 | 0x23e218c0 -> 0x9b18f0
0x2b4fd2c | 0x351f8cc -> 0x75160962
0x2b4fd6c  OutputMessagePool::startExecutionFrame()(0x679a2e)
0x2b4fd84 | 0x7fffffff
0x2b4fd88 | 0xff
0x2b4fd8c | 0
0x2b4fd90 | 0x52e652f9 -> 0x9f0e
0x2b4fd94 | 0xffc400ff
0x2b4fd98 | 0x2b40000
0x2b4fd9c | 0xafd8f0 -> 0x9f3a08
0x2b4fda0 | 0x9b15ac -> 0x26279ef0
0x2b4fda4 | 0x2b4ff3c -> 0xe36728
0x2b4fda8 | 0x2b4fed8 -> 0x2b4fee8 \\\\\\ stack frame //////
0x2b4fdac | 0x747790 -> 0xc02404c7 <-- ret
0x2b4fdac  Dispatcher::dispatcherThread(void*)(0x7473ac)
0x2b4fdb0 | 0x23e218c0 -> 0x9b18f0
0x2b4fdb4 | 0x2b4fe18 -> 0xfffffffe
0x2b4fdb8 | 0
0x2b4fdbc | 0x50
0x2b4fdc0 | 0xffffffff
0x2b4fdc4 | 0xffffffff
0x2b4fdc8 | 0x35314301 -> 0x9f05
0x2b4fdcc | 0x45303337 -> 0x2fd8c042
0x2b4fe50  Dispatcher::dispatcherThread(void*)(0x7473ac)
0x2b4feb4 | 0x2b4ff70 -> 0x2b4ffc4
0x2b4feb8 | 0x47e7c0 -> 0x57e58955
0x2b4feb8  _SEHHandler(_EXCEPTION_RECORD*, void*, _CONTEXT*, void*)(0x47e7c0)
0x2b4febc | 0x201
0x2b4fec0 | 0x1010000 -> 0x211e89f
0x2b4fec4 | 0x2b4fdfc -> 0x9b15ac
0x2b4fec8 | 0
0x2b4fecc | 0xafd8f0 -> 0x9f3a08
0x2b4fed0 | 0x2b4ff08 -> 0x28f96c
0x2b4fed4 | 0x2b4ff3c -> 0xe36728
0x2b4fed8 | 0x2b4fee8 -> 0x2b4ff48 \\\\\\ stack frame //////
0x2b4fedc | 0x8b3c7e -> 0x8955c3c9 <-- ret
0x2b4fee0 | 0x9b1580 -> 0x9ef5e8
0x2b4fee4 | 0xafd8f0 -> 0x9f3a08
0x2b4fee8 | 0x2b4ff48 -> 0x2b4ff80 \\\\\\ stack frame //////
0x2b4feec | 0x80bcc2 -> 0xffc445c7 <-- ret
0x2b4fef0 | 0xafd8f0 -> 0x9f3a08
0x2b4fef4 | 0xe36728 -> 0
0x2b4fef8 | 0xe36720 -> 0x45010044
0x2b4fefc | 0x2b4ff48 -> 0x2b4ff80
0x2b4ff00 | 0x76ed98cd -> 0x840fc085
0x2b4ff04 | 0x330000 -> 0xa8349993
0x2b4ff08 | 0x28f96c -> 0x28fbcc
0x2b4ff0c | 0x1
0x2b4ff24 | 0x9ae4c4 -> 0x10d00ff
0x2b4ff28 | 0x2b4ff3c -> 0xe36728
0x2b4ff2c | 0x80bcea -> 0x830cc583
0x2b4ff30 | 0x2b4fef0 -> 0xafd8f0
0x2b4ff34 | 0x2b4ff80 -> 0x2b4ff88
0x2b4ff38 | 0x76eda53a -> 0x5ec68b5f
0x2b4ff3c | 0xe36728 -> 0
0x2b4ff40 | 0
0x2b4ff44 | 0
0x2b4ff48 | 0x2b4ff80 -> 0x2b4ff88 \\\\\\ stack frame //////
0x2b4ff4c | 0x76ee1287 -> 0x2fe850 <-- ret
0x2b4ff50 | 0xafd8f0 -> 0x9f3a08
0x2b4ff54 | 0xe3f35e7 -> 0xfc8dfa0e
0x2b4ff58 | 0
0x2b4ff5c | 0
0x2b4ff60 | 0xe36728 -> 0
0x2b4ff64 | 0x2b4ff54 -> 0xe3f35e7
0x2b4ff68 | 0x2b4ff54 -> 0xe3f35e7
0x2b4ff6c | 0x2b4ffc4 -> 0xffffffff
0x2b4ff70 | 0x2b4ffc4 -> 0xffffffff
0x2b4ff74 | 0x76ef8cd5 -> 0x8b55ff8b
0x2b4ff78 | 0x7a65d8f7 -> 0xfc9ad000
0x2b4ff7c | 0
0x2b4ff80 | 0x2b4ff88 -> 0x2b4ff94 \\\\\\ stack frame //////
0x2b4ff84 | 0x76ee1328 -> 0x909090cc <-- ret
0x2b4ff88 | 0x2b4ff94 -> 0x2b4ffd4
0x2b4ff8c | 0x74ff3677 -> 0xf015ff50 <-- ret
0x2b4ff90 | 0xe36728 -> 0
0x2b4ff94 | 0x2b4ffd4 -> 0x2b4ffec \\\\\\ stack frame //////
0x2b4ff98 | 0x773b9d72 -> 0xfefc45c7 <-- ret
0x2b4ff9c | 0xe36728 -> 0
0x2b4ffa0 | 0x75ccdcaa -> 0
0x2b4ffa4 | 0
0x2b4ffa8 | 0
0x2b4ffac | 0xe36728 -> 0
0x2b4ffb0 | 0
0x2b4ffb4 | 0
0x2b4ffb8 | 0
0x2b4ffbc | 0x2b4ffa0 -> 0x75ccdcaa
0x2b4ffc0 | 0
0x2b4ffc4 | 0xffffffff
0x2b4ffc8 | 0x773f041d -> 0x8b55ff8b
0x2b4ffcc | 0x42e0ae -> 0
0x2b4ffcc  MagicField::onStepInField(Creature*, bool)(0x42d3fa)
0x2b4ffd0 | 0
0x2b4ffd4 | 0x2b4ffec -> 0 \\\\\\ stack frame //////
0x2b4ffd8 | 0x773b9d45 -> 0x909090cc <-- ret
0x2b4ffdc | 0x76ee12e5 -> 0x8b55ff8b
0x2b4ffe0 | 0xe36728 -> 0
0x2b4ffe4 | 0
0x2b4ffe8 | 0
0x2b4ffec | 0 \\\\\\ stack frame //////
0x2b4fff0 | 0 <-- ret
0x2b4fff4 | 0x76ee12e5 -> 0x8b55ff8b
0x2b4fff8 | 0xe36728 -> 0
0x2b4fffc | 0
*****************************************************
 
Back
Top