Skocz do zawartości
Masz już aplikację Sharegon?

Odkryj wszystkie możliwości. Dowiedz się więcej

Sharegon.pl

Zainstaluj aplikację Sharegon i korzystaj z powiadomień push oraz licznika nowych aktywności bezpośrednio z ekranu głównego.

Aby zainstalować tę aplikację na iOS i iPadOS.
  1. Tap the Share icon in Safari
  2. Przewiń menu i stuknij Dodaj do ekranu początkowego.
  3. Stuknij Dodaj w prawym górnym rogu.
Zainstaluj aplikację Sharegon na Androidzie
  1. Otwórz Sklep Google Play na swoim smarfonie.
  2. Wyszukaj „Sharegon” w pasku wyszukiwania.
  3. Stuknij „Zainstaluj”, aby pobrać aplikację.

Problem z wierzchowcem po teleportacji zsiada i wsiada ponownie

Featured Replies

Rozwiązane przez Sasori

  • Odpowiedzi 28
  • Wyświetleń 510
  • Dodano
  • Ostatniej odpowiedzi

Top użytkownicy w tym temacie

Najbardziej popularny wpis

  • Wtedy nie wsiadało, ale pieczęć zostawała w slocie, faktycznie było to spowodowane brakiem wpisów do special_item_group.txt, teraz wpisy mam, ale domyślnie na plikach TMP4 występuje błąd który staram

  • Jak śmiga to tak tylko wysyłanie logów wywal to już chyba wiesz co i jak. no i klasa odrobisz w polu :P

Najbardziej pomocny post

  • hmm void CHARACTER::MountVnum(DWORD vnum) { sys_log(0, "[MOUNTDBG] MountVnum CALL name=%s vid=%u new=%u old=%u map=%d riding=%d", GetName(), (DWORD)m_vid, (DWORD)vnum, (DWORD)m_dwMountVnum

  • Jak śmiga to tak tylko wysyłanie logów wywal to już chyba wiesz co i jak. no i klasa odrobisz w polu :P

Opublikowane grafiki

Opublikowano

Pokaż coś więcej w fusów wróżyć nie potrafimy chodzi ci o to ze po teleportacji schodzi i wchodzi na mounta?

Jakie pliki? Pokaż quest od mounta jeżeli jest na quescie robione.

Opublikowano
  • Autor
W dniu 14.01.2026 o 18:13, Sasori napisał(a):

Pokaż coś więcej w fusów wróżyć nie potrafimy chodzi ci o to ze po teleportacji schodzi i wchodzi na mounta?

Jakie pliki? Pokaż quest od mounta jeżeli jest na quescie robione.

Tak, o to chodzi, TMP4, quest:

ride.questNiedostępne

Opublikowano
  • Autor
W dniu 14.01.2026 o 18:48, Sasori napisał(a):

Jest jakaś różnica reakcja? jakoś inaczej?

Nie, całość zachowuje się tak samo jak wcześniej.

@Sasori Błąd występuje domyślnie w plikach TMP4, właśnie to sprawdziłem.

Opublikowano
  • Autor

Kilka plików z source w których cokolwiek związane z mountami występuje, nie mam pojęcia co tam może być nie tak, wszystko wygląda na pierwszy rzut oka normalnie, chyba że coś przeoczyłem

src.zipNiedostępne

@Sasori Może znów uratujesz sprawę, zamknę tydzień dobrym progressem ;>

Edytowane przez mrszk4

Opublikowano
  • Autor
W dniu 17.01.2026 o 09:22, Sevence napisał(a):

A zobacz może ten temat:

Wtedy nie wsiadało, ale pieczęć zostawała w slocie, faktycznie było to spowodowane brakiem wpisów do special_item_group.txt, teraz wpisy mam, ale domyślnie na plikach TMP4 występuje błąd który staram się teraz rozwiązać

Opublikowano

Spróbuj tak, ale nie testowałem i nie obiecuje.

w char.cpp

C++Kod został skopiowany
podmień to void CHARACTER::MountVnum(DWORD vnum){	if (m_dwMountVnum == vnum)		return; 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return; 	//NOTE : Mount한다고 해서 Client Side의 객체를 삭제하진 않는다.	//그리고 서버Side에서 탔을때 위치 이동은 하지 않는다. 왜냐하면 Client Side에서 Coliision Adjust를 할수 있는데	//객체를 소멸시켰다가 서버위치로 이동시키면 이때 collision check를 하지는 않으므로 배경에 끼거나 뚫고 나가는 문제가 존재한다.	m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY();	//EncodeRemovePacket(this);	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin(); 	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first; 		//Mount한다고 해서 Client Side의 객체를 삭제하진 않는다.		//EncodeRemovePacket(entity);		//if (!m_bIsObserver)		EncodeInsertPacket(entity); 		//if (!entity->IsObserverMode())		//	entity->EncodeInsertPacket(this);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints();} na to  void CHARACTER::MountVnum(DWORD vnum){	if (m_dwMountVnum == vnum)		return; 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return;	if (m_posWarp.x != 0 || m_posWarp.y != 0 || m_lWarpMapIndex != 0)		return; 	m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY();	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin();	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first;				EncodeInsertPacket(entity);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints();}

Przekompiluj game i przetestuj teleport.

Opublikowano
  • Autor
W dniu 17.01.2026 o 09:26, Sasori napisał(a):

Spróbuj tak, ale nie testowałem i nie obiecuje.

w char.cpp

C++Kod został skopiowany
podmień to void CHARACTER::MountVnum(DWORD vnum){	if (m_dwMountVnum == vnum)		return; 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return; 	//NOTE : Mount한다고 해서 Client Side의 객체를 삭제하진 않는다.	//그리고 서버Side에서 탔을때 위치 이동은 하지 않는다. 왜냐하면 Client Side에서 Coliision Adjust를 할수 있는데	//객체를 소멸시켰다가 서버위치로 이동시키면 이때 collision check를 하지는 않으므로 배경에 끼거나 뚫고 나가는 문제가 존재한다.	m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY();	//EncodeRemovePacket(this);	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin(); 	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first; 		//Mount한다고 해서 Client Side의 객체를 삭제하진 않는다.//EncodeRemovePacket(entity);//if (!m_bIsObserver)EncodeInsertPacket(entity); 		//if (!entity->IsObserverMode())//	entity->EncodeInsertPacket(this);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints();} na to  void CHARACTER::MountVnum(DWORD vnum){	if (m_dwMountVnum == vnum)		return; 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return;	if (m_posWarp.x != 0 || m_posWarp.y != 0 || m_lWarpMapIndex != 0)		return; 	m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY();	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin();	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first;				EncodeInsertPacket(entity);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints();}

Przekompiluj game i przetestuj teleport.

Podmieniłem, przekompilowałem gameclean -> gamecompile ale nic się nie zmieniło

Opublikowano

żadnego innego zachowania dzieje się na pewno tak samo ?

skoro tak to spróbuj tak

C++Kod został skopiowany
void CHARACTER::MountVnum(DWORD vnum){	if (m_dwMountVnum == vnum)		return; 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return; 	if (m_posWarp.x != 0 || m_posWarp.y != 0 || m_lWarpMapIndex != 0)		return; 	TPacketGCCharacterUpdate pack;	memset(&pack, 0, sizeof(pack)); 	pack.header = HEADER_GC_CHARACTER_UPDATE;	pack.dwVID = m_vid; 	pack.awPart[CHR_EQUIPPART_ARMOR]  = GetPart(PART_MAIN);	pack.awPart[CHR_EQUIPPART_WEAPON] = GetPart(PART_WEAPON);	pack.awPart[CHR_EQUIPPART_HEAD]   = GetPart(PART_HEAD);	pack.awPart[CHR_EQUIPPART_HAIR]   = GetPart(PART_HAIR); 	pack.bMovingSpeed = GetLimitPoint(POINT_MOV_SPEED);	pack.bAttackSpeed = GetLimitPoint(POINT_ATT_SPEED); 	pack.bStateFlag = m_bAddChrState;	pack.dwAffectFlag[0] = m_afAffectFlag.bits[0];	pack.dwAffectFlag[1] = m_afAffectFlag.bits[1]; 	pack.dwGuildID = 0;	if (GetGuild())		pack.dwGuildID = GetGuild()->GetID(); 	pack.sAlignment = m_iAlignment / 10;	pack.bPKMode = m_bPKMode; 	pack.dwMountVnum = GetMountVnum(); 	if (GetDesc())		GetDesc()->Packet(&pack, sizeof(pack));			for (ENTITY_MAP::iterator it = m_map_view.begin(); it != m_map_view.end(); ++it)	{		LPENTITY ent = it->first;		if (!ent || !ent->IsType(ENTITY_CHARACTER))			continue; 		LPCHARACTER ch = (LPCHARACTER) ent;		if (!ch->GetDesc())			continue; 		ch->GetDesc()->Packet(&pack, sizeof(pack));	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints();}
Opublikowano

JEŻELI DALEJ bedzie to samo to dopiszemy kod z małym logiem i sprawdzimy jaki pakiet jest wysyłany po teleporcie

Opublikowano
C++Kod został skopiowany
w horse_rider.cpp bool CHorseRider::StopRiding(){	sys_log(0,		"[MOUNTDBG] CHorseRider::StopRiding name=%s horseRiding=%d horseLv=%d stamina=%d",		m_pChar ? m_pChar->GetName() : "<null>",		IsHorseRiding() ? 1 : 0,		GetHorseLevel(),		(int)GetHorseStamina()	); 	if (!m_Horse.bRiding)		return false; 	m_Horse.bRiding = false;	StartStaminaRegenEvent();	return true;} w item.cpp  void CItem::ClearMountAttributeAndAffect(){	LPCHARACTER ch = GetOwner();	if (!ch)		return; 	sys_log(0,		"[MOUNTDBG] ClearMountAttributeAndAffect owner=%s itemVnum=%u map=%d riding=%d mount=%u",		ch->GetName(),		GetVnum(),		ch->GetMapIndex(),		ch->IsRiding() ? 1 : 0,		ch->GetMountVnum()	); 	ch->RemoveAffect(AFFECT_MOUNT);	ch->RemoveAffect(AFFECT_MOUNT_BONUS); 	ch->MountVnum(0); 	ch->PointChange(POINT_ST, 0);	ch->PointChange(POINT_DX, 0);	ch->PointChange(POINT_HT, 0);	ch->PointChange(POINT_IQ, 0);} w char.cpp  void CHARACTER::MountVnum(DWORD vnum){	sys_log(0,		"[MOUNTDBG] MountVnum CALL name=%s vid=%u new=%u old=%u map=%d riding=%d warp=(%ld,%ld,%ld)",		GetName(), m_vid, vnum, m_dwMountVnum, GetMapIndex(),		IsRiding() ? 1 : 0,		m_posWarp.x, m_posWarp.y, m_lWarpMapIndex	); 	if (m_dwMountVnum == vnum)	{		sys_log(0, "[MOUNTDBG] MountVnum SKIP same");		return;	} 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)	{		sys_log(0, "[MOUNTDBG] MountVnum RETURN observer");		return;	} 	// Jeśli jesteśmy w trakcie warpa – tylko zapamiętaj wartość.	// Insert po Show() i tak przyjdzie.	if (m_posWarp.x != 0 || m_posWarp.y != 0 || m_lWarpMapIndex != 0)	{		sys_log(0, "[MOUNTDBG] MountVnum RETURN during-warp");		return;	} 	// Zamiast reinserta (który daje efekt zsiadania/wsiadania)	// wysyłamy normalny update z dwMountVnum.	TPacketGCCharacterUpdate pack;	memset(&pack, 0, sizeof(pack)); 	pack.header = HEADER_GC_CHARACTER_UPDATE;	pack.dwVID = m_vid; 	pack.awPart[CHR_EQUIPPART_ARMOR]  = GetPart(PART_MAIN);	pack.awPart[CHR_EQUIPPART_WEAPON] = GetPart(PART_WEAPON);	pack.awPart[CHR_EQUIPPART_HEAD]   = GetPart(PART_HEAD);	pack.awPart[CHR_EQUIPPART_HAIR]   = GetPart(PART_HAIR); 	pack.bMovingSpeed = GetLimitPoint(POINT_MOV_SPEED);	pack.bAttackSpeed = GetLimitPoint(POINT_ATT_SPEED); 	pack.bStateFlag = m_bAddChrState;	pack.dwAffectFlag[0] = m_afAffectFlag.bits[0];	pack.dwAffectFlag[1] = m_afAffectFlag.bits[1]; 	pack.dwGuildID = GetGuild() ? GetGuild()->GetID() : 0;	pack.sAlignment = m_iAlignment / 10;	pack.bPKMode = m_bPKMode; 	pack.dwMountVnum = GetMountVnum(); 	sys_log(0,		"[MOUNTDBG] MountVnum UPDATE send name=%s mountNow=%u",		GetName(), pack.dwMountVnum	); 	if (GetDesc())		GetDesc()->Packet(&pack, sizeof(pack)); 	for (ENTITY_MAP::iterator it = m_map_view.begin(); it != m_map_view.end(); ++it)	{		LPENTITY ent = it->first;		if (!ent || !ent->IsType(ENTITY_CHARACTER))			continue; 		LPCHARACTER ch = (LPCHARACTER)ent;		if (!ch->GetDesc())			continue; 		ch->GetDesc()->Packet(&pack, sizeof(pack));	} 	SetValidComboInterval(0);	SetComboSequence(0);	ComputePoints();}

kompiluj tepnij sie na mountcie i pokaż logi z

[MOUNTDBG] MountVnum CALL ...

[MOUNTDBG] CHorseRider::StopRiding ... jak wyskoczy

[MOUNTDBG] ClearMountAttributeAndAffect ... jak wyskoczy

Opublikowano
  • Autor

@Sasori

// Zmieniłem m_vid na (DWORD)m_vid

horse_rider.cpp:204 undeclared identifier m_pChar ->

usunałęm m_pChar ? m_pChar->GetName() : "<null>", --- nie mam tego w horse_rider.h

To było pierwotnie:

TextKod został skopiowany
  void CHARACTER::MountVnum(DWORD vnum){	if (m_dwMountVnum == vnum)		return; 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return; 	//NOTE : Mount한다고 해서 Client Side의 객체를 삭제하진 않는다.	//그리고 서버Side에서 탔을때 위치 이동은 하지 않는다. 왜냐하면 Client Side에서 Coliision Adjust를 할수 있는데	//객체를 소멸시켰다가 서버위치로 이동시키면 이때 collision check를 하지는 않으므로 배경에 끼거나 뚫고 나가는 문제가 존재한다.	m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY();	//EncodeRemovePacket(this);	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin(); 	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first; 		//Mount한다고 해서 Client Side의 객체를 삭제하진 않는다.		//EncodeRemovePacket(entity);		//if (!m_bIsObserver)		EncodeInsertPacket(entity); 		//if (!entity->IsObserverMode())		//	entity->EncodeInsertPacket(this);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints();}

A teraz po zastosowanym bloku podanym przez ciebie w char.cpp i reszcie postać wgl. nie wchodzi na mounta, jedynie montuje się pieczęć i mam w sys_log:

TextKod został skopiowany
Jan 17 12:57:46 :: MARK_SERVER: LoginJan 17 12:57:46 :: QUEST_LOAD: Login pc 5 by eventJan 17 12:57:46 :: AddAffect Arth type 221 apply 109 20118 flag 0 duration 1672440Jan 17 12:57:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=20118 old=0 map=1 riding=0 warp=(0,0,0)Jan 17 12:57:46 :: [MOUNTDBG] MountVnum UPDATE send name=Arth mountNow=20118Jan 17 12:57:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=20118 old=20118 map=1 riding=1 warp=(0,0,0)Jan 17 12:57:46 :: [MOUNTDBG] MountVnum SKIP sameJan 17 12:57:46 :: AddAffect Arth type 533 apply 115 10 flag 0 duration 1672440Jan 17 12:57:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=0 old=20118 map=1 riding=1 warp=(0,0,0)Jan 17 12:57:46 :: [MOUNTDBG] MountVnum UPDATE send name=Arth mountNow=0Jan 17 12:57:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=20118 old=0 map=1 riding=0 warp=(0,0,0)Jan 17 12:57:46 :: [MOUNTDBG] MountVnum UPDATE send name=Arth mountNow=20118Jan 17 12:57:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=20118 old=20118 map=1 riding=1 warp=(0,0,0)Jan 17 12:57:46 :: [MOUNTDBG] MountVnum SKIP sameJan 17 12:57:53 :: GLOBAL_TIME: Jan 17 12:57:53 time_gap 0Jan 17 12:58:53 :: GLOBAL_TIME: Jan 17 12:58:53 time_gap 0SYSERR: Jan 17 12:59:04 :: hupsig: SIGHUP, SIGINT, SIGTERM signal has been received. shutting down.Jan 17 12:59:04 :: <shutdown> Starting...Jan 17 12:59:04 :: <shutdown> Destroying CArenaManager...Jan 17 12:59:04 :: ARENA: ArenaMap will be destroy. mapIndex(112)Jan 17 12:59:04 :: ARENA: End Duel PID_A(0) vs PID_B(0)Jan 17 12:59:04 :: ARENA: End Duel PID_A(0) vs PID_B(0)Jan 17 12:59:04 :: ARENA: End Duel PID_A(0) vs PID_B(0)Jan 17 12:59:04 :: ARENA: End Duel PID_A(0) vs PID_B(0)Jan 17 12:59:04 :: <shutdown> Destroying COXEventManager...Jan 17 12:59:04 :: <shutdown> Disabling signal timer...Jan 17 12:59:04 :: <shutdown> Shutting down CHARACTER_MANAGER...Jan 17 12:59:04 :: DISCONNECT: Arth (GracefulShutdown)Jan 17 12:59:04 :: SAVE: Arth 469531x964187Jan 17 12:59:04 :: QUEST clear timer 0Jan 17 12:59:04 :: [MOUNTDBG] ClearMountAttributeAndAffect owner=Arth itemVnum=71128 map=1 riding=1 mount=20118Jan 17 12:59:04 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=0 old=20118 map=1 riding=1 warp=(0,0,0)Jan 17 12:59:04 :: [MOUNTDBG] MountVnum UPDATE send name=Arth mountNow=0

Edytowane przez mrszk4

Opublikowano

ok teraz widać ze coś z affect

zrób teraz tak

C++Kod został skopiowany
void CHARACTER::MountVnum(DWORD vnum){	sys_log(0,		"[MOUNTDBG] MountVnum CALL name=%s vid=%u new=%u old=%u map=%d riding=%d special=%u warp=(%ld,%ld,%ld)",		GetName(),		(DWORD)m_vid,		(DWORD)vnum,		(DWORD)m_dwMountVnum,		GetMapIndex(),		IsRiding() ? 1 : 0,		(DWORD)GetSpecialRideVnum(),		(long)m_posWarp.x,		(long)m_posWarp.y,		(long)m_lWarpMapIndex	);		if (vnum == 0 && GetSpecialRideVnum() != 0)	{		sys_log(0,			"[MOUNTDBG] MountVnum SKIP unmount-to-0 (special still active) special=%u current=%u",			(DWORD)GetSpecialRideVnum(),			(DWORD)m_dwMountVnum		);		return;	} 	if (m_dwMountVnum == vnum)	{		sys_log(0, "[MOUNTDBG] MountVnum SKIP same");		return;	} 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)	{		sys_log(0, "[MOUNTDBG] MountVnum RETURN observer");		return;	} 	m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY(); 	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin();	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first;		EncodeInsertPacket(entity);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints(); 	sys_log(0, "[MOUNTDBG] MountVnum DONE now=%u", (DWORD)m_dwMountVnum);}

i wklej MOUNTDBG z momentu teleporta

Opublikowano

hmm

C++Kod został skopiowany
void CHARACTER::MountVnum(DWORD vnum){	sys_log(0,		"[MOUNTDBG] MountVnum CALL name=%s vid=%u new=%u old=%u map=%d riding=%d",		GetName(),		(DWORD)m_vid,		(DWORD)vnum,		(DWORD)m_dwMountVnum,		GetMapIndex(),		IsRiding() ? 1 : 0	); 	if (vnum == 0 && IsRiding())	{		sys_log(0,			"[MOUNTDBG] MountVnum IGNORE unmount-to-0 while riding (blink fix)"		);		return;	} 	if (m_dwMountVnum == vnum)	{		sys_log(0, "[MOUNTDBG] MountVnum SKIP same");		return;	} 	m_dwMountVnum = vnum;	m_dwMountTime = get_dword_time(); 	if (m_bIsObserver)		return;			m_posDest.x = m_posStart.x = GetX();	m_posDest.y = m_posStart.y = GetY(); 	EncodeInsertPacket(this); 	ENTITY_MAP::iterator it = m_map_view.begin();	while (it != m_map_view.end())	{		LPENTITY entity = (it++)->first;		EncodeInsertPacket(entity);	} 	SetValidComboInterval(0);	SetComboSequence(0); 	ComputePoints(); 	sys_log(0, "[MOUNTDBG] MountVnum DONE now=%u", (DWORD)m_dwMountVnum);}
Opublikowano
  • Autor

No i teraz jest elegancko szefie ;)

Całość działa tak jak powinna. Dzięki za pomoc!

JSONKod został skopiowany
Jan 17 13:45:46 :: GMC guild_name AdminJan 17 13:45:46 :: GMC master 5Jan 17 13:45:46 :: SHOW: Arth 469300x964200x0Jan 17 13:45:46 :: reallocating buffer to 8192, current 1024Jan 17 13:45:46 :: AddAffect Arth type 215 apply 0 0 flag 28 duration 5Jan 17 13:45:46 :: ENTERGAME: Arth 469300x964200x0 10.212.144.158 map_index 1Jan 17 13:45:46 :: HORSE STAMINA CONSUME EVENT CANCEL 0x0Jan 17 13:45:46 :: HORSE STAMINA REGEN EVENT CREATE 0x353a5280Jan 17 13:45:46 :: SendLandList map 1 count 18 elem_size: 432Jan 17 13:45:46 :: AddAffect Arth type 500 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 0 282564855minJan 17 13:45:46 :: AddAffect Arth type 501 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 1 282564855minJan 17 13:45:46 :: AddAffect Arth type 502 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 2 282564855minJan 17 13:45:46 :: AddAffect Arth type 503 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 3 282564855minJan 17 13:45:46 :: AddAffect Arth type 504 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 4 282564855minJan 17 13:45:46 :: AddAffect Arth type 505 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 5 282564855minJan 17 13:45:46 :: AddAffect Arth type 506 apply 0 0 flag 0 duration 282564855Jan 17 13:45:46 :: PREMIUM: Arth type 6 282564855minJan 17 13:45:46 :: VERSION CHECK 1215955205 1215955205 1215955205 1215955205Jan 17 13:45:46 :: SYSTEM: new connection from [10.212.144.158] fd: 20 handshake 498988763 output input_len 0, ptr 0x21e02600Jan 17 13:45:46 :: SYSTEM: closing socket. DESC #18Jan 17 13:45:46 :: MARK_SERVER: LoginJan 17 13:45:46 :: QUEST_LOAD: Login pc 5 by eventJan 17 13:45:46 :: AddAffect Arth type 221 apply 109 20118 flag 0 duration 1670760Jan 17 13:45:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=20118 old=0 map=1 riding=0Jan 17 13:45:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=20118 old=20118 map=1 riding=1Jan 17 13:45:46 :: [MOUNTDBG] MountVnum SKIP sameJan 17 13:45:46 :: [MOUNTDBG] MountVnum DONE now=20118Jan 17 13:45:46 :: AddAffect Arth type 533 apply 115 10 flag 0 duration 1670760Jan 17 13:45:46 :: [MOUNTDBG] MountVnum CALL name=Arth vid=24384 new=0 old=20118 map=1 riding=1Jan 17 13:45:46 :: [MOUNTDBG] MountVnum IGNORE unmount-to-0 while riding (blink fix)Jan 17 13:45:57 :: GLOBAL_TIME: Jan 17 13:45:57 time_gap 0
Opublikowano
  • Autor

@Sasori Właśnie zauważyłem jeszcze teraz, że po warpie postać siedzi, ale gdy ściągnę pieczęć siedzi nadal, a gdy próbuje ją założyć, pisze że postać siedzi na koniu, CTRL+G działa tylko przy wsiadaniu, po wejściu na mounta nie da się zejść poprzez GUI ani CTRL+G/H, po warpie ze ściągniętą pieczęcią postać nie siedzi na mouncie, z włożoną teleportuje się na mouncie.

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

Konto

Nawigacja

Skonfiguruj powiadomienia push w przeglądarce.

Chrome (Android)
  1. Stuknij ikonę kłódki obok paska adresu.
  2. Wybierz Uprawnienia → Powiadomienia.
  3. Dostosuj swoje preferencje.
Chrome (Desktop)
  1. Kliknij ikonę kłódki na pasku adresu.
  2. Wybierz Ustawienia witryny.
  3. Znajdź Powiadomienia i dostosuj swoje preferencje.