Sziasztok, egy gond lenne ,hogy ha kilépek a trent vagy épp hwang templomban akkor nem enged vissza a szerver, hanem kidob mintha beragadtam volna.
És a game.core meg ezt írja
#0 0x083992dd in CAttribute::Get ()
[New Thread 2901403429014900 (LWP 101045/<unknown>)]
[New Thread 287ae57429014600 (LWP 101041/<unknown>)]
[New Thread 2901493429014300 (LWP 101040/<unknown>)]
[New Thread 2901463429014000 (LWP 100160/<unknown>)]
Cannot find new threads: generic error
(gdb) bt full
#0 0x083992dd in CAttribute::Get ()
No symbol table info available.
#1 0x080b6866 in CHARACTER_MANAGER::SpawnMob (this=0xffffc62c, dwVnum=8024,
lMapIndex=67, x=302626, y=64382, z=0, bSpawnMotion=true, iRot=-1,
bShow=true) at char_manager.cpp:372
tree = <value optimized out>
dwAttr = <value optimized out>
is_set = <value optimized out>
pkMob = (const CMob *) 0x29915680
sectree = <value optimized out>
ch = <value optimized out>
__FUNCTION__ = "SpawnMob"
s_isLog = false
s_nextTime = 1531478283
#2 0x080b7066 in CHARACTER_MANAGER::SpawnMobRange (this=0xffffc62c,
dwVnum=8024, lMapIndex=67, sx=284500, sy=61700, ex=314500, ey=101700,
bIsException=true, bSpawnMotion=false, bAggressive=false)
at char_manager.cpp:466
x = 302626
y = <value optimized out>
ch = 0x0
pkMob = <value optimized out>
i = 14
---Type <return> to continue, or q <return> to quit---return
#3 0x081fb5ac in regen_spawn (regen=0x49b88e80, bOnce=false) at regen.cpp:373
ch = <value optimized out>
i = 0
#4 0x081fca6f in regen_load (
filename=0xffff99f8 "locale/hungary/map/metin2_map_trent/stone.txt",
lMapIndex=67, base_x=281600, base_y=0) at regen.cpp:704
info = <value optimized out>
tmp = {prev = 0x0, next = 0x0, lMapIndex = 0, type = 0, sx = 2900,
sy = 61700, ex = 32900, ey = 101700, z_section = 0 '\0', direction = 0 '\0',
time = 300, max_count = 1, count = 0, vnum = 8024, is_aggressive = false,
event = {px = 0x0}, id = 0}
regen = 0x49b88e80
fp = (FILE *) 0x28d70ab4
__FUNCTION__ = "regen_load"
#5 0x08205535 in SECTREE_MANAGER::Build (this=0xffffa90c,
c_pszListFileName=0xffff9e88 "locale/hungary/map/index",
c_pszMapBasePath=0x2901728c "locale/hungary/map")
at sectree_manager.cpp:807
pkMapSectree = 0x48902480
setting = {iIndex = 67, iCellScale = 200, iBaseX = 281600, iBaseY = 0,
iWidth = 76800, iHeight = 76800, posSpawn = {x = 287300, y = 5700, z = 0}}
fp = (FILE *) 0x28d709c8
buf = "67 metin2_map_trent\000\000wer1\000\000n_13\000\000-\231---\bB\b-
Módosítottál esetleg mapindexet vagy kordinátákat, vagy talán raktál be másik mappot? lehet összeérnek.
Esetleg valakinek meglenne az a program amivel lehet ellenőrizni a mappokat ,hogy össze érnek -e mert akárhogy keresem nem találom
Csatoltam.
Köszönöm, és nem ütközik semmivel :s
Amúgy azt tisztázzuk hogy beragad a karakter, vagy leáll a szerver?
Mert mindkettőről beszélsz, ha van game.core akkor a szerver (az adott ch/ch core-ja) leállt,
ha ez ch1 2. core-ja akkor karaktercseréig még el lehet jutni, mert a login az 1. core-on van.
A biztonság kedvéért vedd ki a regen.txt-ket, stone.txt-ket, és próbálj úgy kijelentkezni ott.
A debug megemlíti a char_manager.cpp-t is (2 sorát), abban miket módosítgattál?
Nem áll le a szerver csupán kivág ,ha karakter választottam.
A csatorna nincs több corera rakva 1 en fut.
Akkor hogy van neked game.core-od?
Nem lehet hogy az a game.core nem is aktuális, régi?
Ez aktuális, de megnézem a forrásba még és jelezek
Üzenet összefésülés: 2018-07-13, 19:07:23
if (!(pkMob->m_table.bType == CHAR_TYPE_NPC || pkMob->m_table.bType == CHAR_TYPE_WARP || pkMob->m_table.bType == CHAR_TYPE_GOTO) || mining::IsVeinOfOre (dwVnum))
{
LPSECTREE tree = SECTREE_MANAGER::instance().Get(lMapIndex, x, y);
if (!tree)
{
sys_log(0, "no sectree for spawn at %d %d mobvnum %d mapindex %d", x, y, dwVnum, lMapIndex);
return NULL;
}
DWORD dwAttr = tree->GetAttribute(x, y);
bool is_set = false;
if ( mining::IsVeinOfOre (dwVnum) ) is_set = IS_SET(dwAttr, ATTR_BLOCK);
else is_set = IS_SET(dwAttr, ATTR_BLOCK | ATTR_OBJECT);
if ( is_set )
{
// SPAWN_BLOCK_LOG
static bool s_isLog=quest::CQuestManager::instance().GetEventFlag("spawn_block_log");
static DWORD s_nextTime=get_global_time()+10000;
DWORD curTime=get_global_time();
if (curTime>s_nextTime)
{
s_nextTime=curTime;
s_isLog=quest::CQuestManager::instance().GetEventFlag("spawn_block_log");
}
if (s_isLog)
sys_log(0, "SpawnMob: BLOCKED position for spawn %s %u at %d %d (attr %u)", pkMob->m_table.szName, dwVnum, x, y, dwAttr);
// END_OF_SPAWN_BLOCK_LOG
return NULL;
}
if (IS_SET(dwAttr, ATTR_BANPK))
{
sys_log(0, "SpawnMob: BAN_PK position for mob spawn %s %u at %d %d", pkMob->m_table.szName, dwVnum, x, y);
return NULL;
}
}
Ez a sor van a char_managerbe
DWORD dwAttr = tree->GetAttribute(x, y);
Üzenet összefésülés: 2018-07-13, 19:15:50
Jobban átnéztem amit írt és amire utalt, az lehetett a gond ,hogy 2x ugyan arra a kordinátára volt a stone.txt be híva metin
tehát
m 60 161 150 200 0 0 3650s 100 1 8024
m 179 817 150 200 0 0 3650s 100 1 8024
m 230 194 200 150 0 0 3600s 100 1 8025
m 366 292 200 150 0 0 3750s 100 1 8025
m 60 161 150 200 0 0 3650s 100 1 8024
m 179 817 150 200 0 0 3650s 100 1 8024
m 230 194 200 150 0 0 3600s 100 1 8025
m 366 292 200 150 0 0 3750s 100 1 8025
Akkor egyelőre csak annyit tudok még javasolni a regen/stone kiszedésén kívül hogy csinálj új server_attr-t a mappoknak WE-vel, mert ez meg arra utal.
Szerintem ez volt a gond mert 2 mapban ugyan így volt, most átírtam őket szóval köszönöm