Jump to content

Ship Defense (Hydra Dungeon)


Recommended Posts

14 hours ago, bekolay1 said:
ShipDefense.cpp: In constructor 'CShipDefense::CShipDefense(long int, DWORD)':
ShipDefense.cpp:514:2: error: 'memset' is not a member of 'std'
  std::memset(&m_lpBarrier, 0, sizeof(m_lpBarrier));
  ^
ShipDefense.cpp:514:2: note: suggested alternative:
In file included from ../../libthecore/include/stdafx.h:89:0,
                 from stdafx.h:12,
                 from ShipDefense.cpp:15:
/usr/include/string.h:67:7: note:   'memset'
 void *memset(void *, int, size_t);
       ^
ShipDefense.cpp: In member function 'virtual void CShipDefense::Destroy()':
ShipDefense.cpp:542:2: error: 'memset' is not a member of 'std'
  std::memset(&m_lpBarrier, 0, sizeof(m_lpBarrier));
  ^
ShipDefense.cpp:542:2: note: suggested alternative:
In file included from ../../libthecore/include/stdafx.h:89:0,
                 from stdafx.h:12,
                 from ShipDefense.cpp:15:
/usr/include/string.h:67:7: note:   'memset'
 void *memset(void *, int, size_t);
       ^
gmake: *** [.obj/ShipDefense.o] Error 1

it gives an error like this

+1 problem pls 

Link to comment
Share on other sites

2 hours ago, BadGrecee said:

stdafx.h open and search

#ifndef __GAME_SRC_STDAFX_H__
#define __GAME_SRC_STDAFX_H__

ADD:

#include <cstring>

#include <iostream>

 

 

 

Thank you, I solved this problem, but this time there was a problem in the client part.

 

Error	81	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	82	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	83	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	84	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
	85	IntelliSense: identifier "TargetPacket" is undefined	c:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1520	6	UserInterface
Error	86	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	87	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	88	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	89	error C2065: 'TargetPacket' : undeclared identifier	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1520	1	UserInterface
Error	90	error C2228: left of '.bAlliance' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1520	1	UserInterface
Error	91	error C2065: 'TargetPacket' : undeclared identifier	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	92	error C2228: left of '.dwVID' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	93	error C2228: left of '.iAllianceMinHP' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	94	error C2228: left of '.iAllianceMaxHP' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	95	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	96	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	97	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	98	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	99	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	100	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	101	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	102	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	103	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	104	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	105	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	106	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	107	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	108	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	109	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	110	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	111	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	112	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	113	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	114	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	115	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface

 

Error products like this. I tried many ways and couldn't solve the error in the code. I removed , and did ; and it didn't work. int64_t iAllianceMinHP, iAllianceMaxHP; your code

int iAllianceMinHP;
int iAllianceMaxHP; I did, it didn't work.

Link to comment
Share on other sites

3 hours ago, bekolay1 said:

 

Thank you, I solved this problem, but this time there was a problem in the client part.

 

Error	81	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	82	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	83	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	84	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
	85	IntelliSense: identifier "TargetPacket" is undefined	c:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1520	6	UserInterface
Error	86	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	87	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	88	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	89	error C2065: 'TargetPacket' : undeclared identifier	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1520	1	UserInterface
Error	90	error C2228: left of '.bAlliance' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1520	1	UserInterface
Error	91	error C2065: 'TargetPacket' : undeclared identifier	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	92	error C2228: left of '.dwVID' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	93	error C2228: left of '.iAllianceMinHP' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	94	error C2228: left of '.iAllianceMaxHP' must have class/struct/union	C:\Users\Administrator\Desktop\03. Client Source\source\UserInterface\PythonNetworkStreamPhaseGame.cpp	1522	1	UserInterface
Error	95	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	96	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	97	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	98	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	99	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	100	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	101	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	102	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	103	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	104	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	105	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	106	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	107	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	108	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	109	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	110	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	111	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	112	error C4430: missing type specifier - int assumed. Note: C++ does not support default-int	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	113	error C2143: syntax error : missing ';' before ','	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	114	error C2238: unexpected token(s) preceding ';'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface
Error	115	error C2146: syntax error : missing ';' before identifier 'iAllianceMinHP'	c:\users\administrator\desktop\03. client source\source\userinterface\Packet.h	1990	1	UserInterface

 

Error products like this. I tried many ways and couldn't solve the error in the code. I removed , and did ; and it didn't work. int64_t iAllianceMinHP, iAllianceMaxHP; your code

int iAllianceMinHP;
int iAllianceMaxHP; I did, it didn't work.

Submit the files you will add in ClientSource from here. I'll add it for you.

Link to comment
Share on other sites

  • 2 weeks later...
1023 16:55:22017 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/back_dot.prb

1023 16:55:22034 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/box04.prb

1023 16:55:22043 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/wall_lantern.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent06.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent04.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent03.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent01.prb

1023 16:55:22045 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/ropeset03.prb

1023 16:55:22046 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/rope03.prb

1023 16:55:22046 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/right.prb

1023 16:55:22047 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/steerhandle.prb

1023 16:55:22047 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/rail_crack05.prb

1023 16:55:22048 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/rail_crack02.prb


error ploblem

Link to comment
Share on other sites

  • 3 weeks later...

@ Owsap Thanks bro, but if i join the ship defence through the npc, the party leader can join. The second party member has to join by himself, but if he tries, he gets this message: 

"You cannot enter yet. Time remaining: %s"

I haven't done anything wrong, does someone know how i can solve this issue ? 

Link to comment
Share on other sites

  • 4 months later...
On 3/17/2023 at 10:28 PM, metrix2020 said:

i have a problem with the mast, in the first wave its fine,in the middle, but in the next waves it spawn random on the ship

i manage to solve the problem(wrong mob proto structure), but now i dont know why hydra doesent use skill and mobs never attack me

Link to comment
Share on other sites

  • 2 weeks later...

How can is solve those warnings?

ShipDefense.cpp: In member function 'void CShipDefense::Notice(LPCHARACTER, bool, const char*, ...)':
ShipDefense.cpp:629:7: warning: unused variable 'iLen' [-Wunused-variable]
   int iLen = vsnprintf(szBuf, sizeof(szBuf), c_pszLocaleText, pszArgs);
       ^~~~
 

Link to comment
Share on other sites

  • Developer
On 3/28/2023 at 9:11 PM, metrix2020 said:

How can is solve those warnings?

ShipDefense.cpp: In member function 'void CShipDefense::Notice(LPCHARACTER, bool, const char*, ...)':
ShipDefense.cpp:629:7: warning: unused variable 'iLen' [-Wunused-variable]
   int iLen = vsnprintf(szBuf, sizeof(szBuf), c_pszLocaleText, pszArgs);
       ^~~~
 

by removing "int iLen = " from that line of code

My youtube channel  on which you can see my works here

Link to comment
Share on other sites

  • 1 month later...
  • Active Member

Hello!

So I just noticed that if you want to join to the ship defense after the leader started AND the cooldown is enabled the other characters cannot connect (idk if it's fixed already or not, sorry if it is.) because the cooldown is put on the characters on creating the instance and when you're trying to join it's already on cooldown.

Here's a fix for it:
 

/// In ShipDefense.h add after:
	bool IsRunning(const LPCHARACTER c_lpChar);
/// This:
	bool CanJoin(const LPCHARACTER c_lpChar);

/// In ShipDefense.cpp add after:
bool CShipDefenseManager::IsRunning(const LPCHARACTER c_lpChar)
{
	[...]
}
/// This:
bool CShipDefenseManager::CanJoin(const LPCHARACTER c_lpChar)
{
	if (c_lpChar == nullptr)
		return false;

	const LPPARTY c_lpParty = c_lpChar->GetParty();
	if (c_lpParty == nullptr)
		return false;

	if (m_mapShipDefense.empty())
		return false;

	ShipDefenseMap::const_iterator f = m_mapShipDefense.find(c_lpParty->GetLeaderPID());
	if (f != m_mapShipDefense.end())
		return true;

	return false;
}

/// In questlua_shipdefense_mgr.cpp
/// Add before:
	void RegisterShipDefenseManagerFunctionTable()
    {
    	[...]
    }
/// This:
	int ship_defense_mgr_can_join(lua_State* L)
	{
		const LPCHARACTER c_lpChar = CQuestManager::instance().GetCurrentCharacterPtr();
		if (c_lpChar == nullptr)
		{
			lua_pushboolean(L, false);
			return 1;
		}

		CShipDefenseManager& rkShipDefenseMgr = CShipDefenseManager::instance();
		lua_pushboolean(L, rkShipDefenseMgr.CanJoin(c_lpChar));
		return 1;
	}

/// Add after:
			{ "set_alliance_hp_pct", ship_defense_mgr_set_alliance_hp_pct },
/// This:
			{ "can_join", ship_defense_mgr_can_join},
-- In quest_functions add:
ship_defense_mgr.can_join

-- In shipdefense.quest change this:
if pc.getqf("cooldown") > get_time() then
-- To this:
if pc.getqf("cooldown") > get_time() and not ship_defense_mgr.can_join() then

 

Edited by Valki
  • Metin2 Dev 8
  • Love 1
  • Love 1
Link to comment
Share on other sites

  • 4 months later...

Hi @ Owsap i have a core crash

This is my core debug:

 

Spoiler

Core was generated by `./srv1-ch1-core3'.
Program terminated with signal SIGSEGV, Segmentation fault.
Address not mapped to object.
#0  strlen (str=0x2029f679 <error: Cannot access memory at address 0x2029f6
    at /usr/src/lib/libc/string/strlen.c:101
101     /usr/src/lib/libc/string/strlen.c: No such file or directory.
[Current thread is 1 (LWP 100733)]
(gdb) bt
#0  strlen (str=0x2029f679 <error: Cannot access memory at address 0x2029f6
    at /usr/src/lib/libc/string/strlen.c:101
#1  0x28eacf72 in __vfprintf (fp=0x28f68d90,
    locale=0x28f5ba28 <__xlocale_global_locale>,
    fmt0=0x8531f08 "PRIVAE_MAP: removing character %s", ap=<optimized out>)
    at /usr/src/lib/libc/stdio/vfprintf.c:854
#2  0x28eabb43 in vfprintf_l (fp=0x28f68d90,
    locale=0x28f5ba28 <__xlocale_global_locale>,
    fmt0=0x8531f08 "PRIVAE_MAP: removing character %s",
    ap=0xffff9a68 "y\366) \300x\227(\024")
    at /usr/src/lib/libc/stdio/vfprintf.c:285
#3  0x28eaea76 in vfprintf (fp=0x28f68d90,
    fmt0=0x8531f08 "PRIVAE_MAP: removing character %s",
    ap=0xffff9a68 "y\366) \300x\227(\024")
    at /usr/src/lib/libc/stdio/vfprintf.c:292
#4  0x084f988b in sys_log (bit=0,
    format=0x8531f08 "PRIVAE_MAP: removing character %s") at log.c:197
#5  0x081e9551 in FDestroyPrivateMapEntity::operator() (ent=0x5b437d01,
    this=<synthetic pointer>) at sectree_manager.cpp:1036
#6  FCollectEntity::ForEach<FDestroyPrivateMapEntity> (
    f=<synthetic pointer>..., this=0xffff9ab0) at sectree.h:73
#7  SECTREE_MAP::for_each<FDestroyPrivateMapEntity> (
    rfunc=<synthetic pointer>..., this=<optimized out>)
--Type <RET> for more, q to quit, c to continue without paging--
    at sectree_manager.h:105
#8  SECTREE_MANAGER::DestroyPrivateMap (this=<optimized out>,
    lMapIndex=<optimized out>) at sectree_manager.cpp:1071
#9  0x08247df1 in CShipDefense::Destroy (this=0x5a9b6680)
    at ShipDefense.cpp:529
#10 0x08247ecf in CShipDefense::~CShipDefense (this=0x5a9b6680,
    __in_chrg=<optimized out>) at ShipDefense.cpp:524
#11 0x08247f99 in CShipDefense::~CShipDefense (this=0x5a9b6680,
    __in_chrg=<optimized out>) at ShipDefense.cpp:525
#12 0x08244178 in CShipDefenseManager::Remove (this=0xffff9ef4,
    c_dwLeaderPID=1047) at ShipDefense.cpp:1476
#13 0x082460a6 in CShipDefense::JumpAll (this=<optimized out>,
    eJumpTo=<optimized out>) at ../../common/singleton.h:30
#14 0x0824661d in CShipDefense::JumpAll (this=0x5a9b6680,
    eJumpTo=ShipDefense::JUMP_PORT) at ShipDefense.cpp:1392
#15 0x0824698b in ExitEvent (event=..., processing_time=25)
    at ShipDefense.cpp:94
#16 0x08134d3c in event_process (pulse=<optimized out>) at event.cpp:130
#17 0x0824cdbe in heartbeat (ht=0x293ea5c0, pulse=16969) at main.cpp:254
#18 0x0824dd94 in idle () at main.cpp:900
#19 0x08078695 in main (argc=<optimized out>, argv=<optimized out>)
    at main.cpp:546

Do you know how I could solve it? thanks to who helps me.

Edited by ReDraco
Link to comment
Share on other sites

  • Developer
22 minutes ago, ReDraco said:

Hi @ Owsap i have a core crash

This is my core debug:

 

  Hide contents

Core was generated by `./srv1-ch1-core3'.
Program terminated with signal SIGSEGV, Segmentation fault.
Address not mapped to object.
#0  strlen (str=0x2029f679 <error: Cannot access memory at address 0x2029f6
    at /usr/src/lib/libc/string/strlen.c:101
101     /usr/src/lib/libc/string/strlen.c: No such file or directory.
[Current thread is 1 (LWP 100733)]
(gdb) bt
#0  strlen (str=0x2029f679 <error: Cannot access memory at address 0x2029f6
    at /usr/src/lib/libc/string/strlen.c:101
#1  0x28eacf72 in __vfprintf (fp=0x28f68d90,
    locale=0x28f5ba28 <__xlocale_global_locale>,
    fmt0=0x8531f08 "PRIVAE_MAP: removing character %s", ap=<optimized out>)
    at /usr/src/lib/libc/stdio/vfprintf.c:854
#2  0x28eabb43 in vfprintf_l (fp=0x28f68d90,
    locale=0x28f5ba28 <__xlocale_global_locale>,
    fmt0=0x8531f08 "PRIVAE_MAP: removing character %s",
    ap=0xffff9a68 "y\366) \300x\227(\024")
    at /usr/src/lib/libc/stdio/vfprintf.c:285
#3  0x28eaea76 in vfprintf (fp=0x28f68d90,
    fmt0=0x8531f08 "PRIVAE_MAP: removing character %s",
    ap=0xffff9a68 "y\366) \300x\227(\024")
    at /usr/src/lib/libc/stdio/vfprintf.c:292
#4  0x084f988b in sys_log (bit=0,
    format=0x8531f08 "PRIVAE_MAP: removing character %s") at log.c:197
#5  0x081e9551 in FDestroyPrivateMapEntity::operator() (ent=0x5b437d01,
    this=<synthetic pointer>) at sectree_manager.cpp:1036
#6  FCollectEntity::ForEach<FDestroyPrivateMapEntity> (
    f=<synthetic pointer>..., this=0xffff9ab0) at sectree.h:73
#7  SECTREE_MAP::for_each<FDestroyPrivateMapEntity> (
    rfunc=<synthetic pointer>..., this=<optimized out>)
--Type <RET> for more, q to quit, c to continue without paging--
    at sectree_manager.h:105
#8  SECTREE_MANAGER::DestroyPrivateMap (this=<optimized out>,
    lMapIndex=<optimized out>) at sectree_manager.cpp:1071
#9  0x08247df1 in CShipDefense::Destroy (this=0x5a9b6680)
    at ShipDefense.cpp:529
#10 0x08247ecf in CShipDefense::~CShipDefense (this=0x5a9b6680,
    __in_chrg=<optimized out>) at ShipDefense.cpp:524
#11 0x08247f99 in CShipDefense::~CShipDefense (this=0x5a9b6680,
    __in_chrg=<optimized out>) at ShipDefense.cpp:525
#12 0x08244178 in CShipDefenseManager::Remove (this=0xffff9ef4,
    c_dwLeaderPID=1047) at ShipDefense.cpp:1476
#13 0x082460a6 in CShipDefense::JumpAll (this=<optimized out>,
    eJumpTo=<optimized out>) at ../../common/singleton.h:30
#14 0x0824661d in CShipDefense::JumpAll (this=0x5a9b6680,
    eJumpTo=ShipDefense::JUMP_PORT) at ShipDefense.cpp:1392
#15 0x0824698b in ExitEvent (event=..., processing_time=25)
    at ShipDefense.cpp:94
#16 0x08134d3c in event_process (pulse=<optimized out>) at event.cpp:130
#17 0x0824cdbe in heartbeat (ht=0x293ea5c0, pulse=16969) at main.cpp:254
#18 0x0824dd94 in idle () at main.cpp:900
#19 0x08078695 in main (argc=<optimized out>, argv=<optimized out>)
    at main.cpp:546

Do you know how I could solve it? thanks to who helps me.

It's crashing while printing a string in syslog or syserr.

Search this string and post the code immediately before and immediately above.

 

"PRIVAE_MAP: removing character %s",

Edited by Ikarus_
  • Love 1

My youtube channel  on which you can see my works here

Link to comment
Share on other sites

2 minutes ago, Ikarus_ said:

I edited the answer with instructions for u

Oh thanks

I have this is secree_manager.cpp

 

struct FDestroyPrivateMapEntity
{
	void operator() (LPENTITY ent)
	{
		if (ent->IsType(ENTITY_CHARACTER))
		{
			LPCHARACTER ch = (LPCHARACTER) ent;
			sys_log(0, "PRIVAE_MAP: removing character %s", ch->GetName());

			if (ch->GetDesc())
				DESC_MANAGER::instance().DestroyDesc(ch->GetDesc());
			else
				M2_DESTROY_CHARACTER(ch);
		}
		else if (ent->IsType(ENTITY_ITEM))
		{
			LPITEM item = (LPITEM) ent;
			sys_log(0, "PRIVATE_MAP: removing item %s", item->GetName());

			M2_DESTROY_ITEM(item);
		}
		else
			sys_err("PRIVAE_MAP: trying to remove unknown entity %d", ent->GetType());
	}
};

 

Link to comment
Share on other sites

  • Developer

It looks the map instance is collecting dangling pointers, pointers which points to deleted memory. I guess the system is destroying some character (monster i guess) without removing it from its sectree. Can't know more atm i m not at home.

Edited by Ikarus_
  • Love 1

My youtube channel  on which you can see my works here

Link to comment
Share on other sites

3 minutes ago, Ikarus_ said:

It looks the map instance is collecting dangling pointers, pointers which points to deleted memory. I guess the system is destroy some character (monster i guess) without removing it from its sectree. Can't know more atm i m not at home.

Thank you for the explanation you provided and for the help. However, it often happens that when I am facing other dungeons (such as Devoltower, Devils Catacombs, etc.), they crash and generate this .core file for me. Specifically, this has only been happening since I added this ShipDefense.

Link to comment
Share on other sites

  • 2 weeks later...
  • Active Member
On 10/23/2022 at 3:59 PM, bekolay1 said:
1023 16:55:22017 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/back_dot.prb

1023 16:55:22034 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/box04.prb

1023 16:55:22043 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/wall_lantern.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent06.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent04.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent03.prb

1023 16:55:22044 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/vent01.prb

1023 16:55:22045 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/ropeset03.prb

1023 16:55:22046 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/rope03.prb

1023 16:55:22046 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/right.prb

1023 16:55:22047 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/steerhandle.prb

1023 16:55:22047 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/rail_crack05.prb

1023 16:55:22048 :: CProperty::ReadFromMemory: File format error after FourCC: property/defensewave/rail_crack02.prb


error ploblem

The same problem, i think maybe is problem from eternexus

KH.jpg

Nicks: Nazox Krone Nagato Yahiko Yakiro
Proyecto: Trabajando en el.
Compañeros & firma: DreamHQ  - 2009-2015 [Nostalgia]

Link to comment
Share on other sites

  • Active Member
On 23/10/2022 at 15:59, bekolay1 said:













problema de error

Edit: Use this .eix .epk and you fix the problem

This is the hidden content, please

  • Metin2 Dev 6
  • Love 2

KH.jpg

Nicks: Nazox Krone Nagato Yahiko Yakiro
Proyecto: Trabajando en el.
Compañeros & firma: DreamHQ  - 2009-2015 [Nostalgia]

Link to comment
Share on other sites

  • 1 month later...

Hello, shortly after the Hydra eggs spawn I get a crash core. Help me fix this please. Here is the bt full output from gdb:

 

[New LWP 100075]
[New LWP 117616]
[New LWP 117617]
[New LWP 117621]
warning: File "/usr/local/lib/gcc10/libstdc++.so.6.0.28-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
Core was generated by `./game-ch1-core1'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x080dd12b in CHARACTER::FindAffect (wApply=0, dwType=500, this=0x3e5c3a80) at char_affect.cpp:82
82                      if (pkAffect && (pkAffect->dwType == dwType && (wApply == APPLY_NONE || wApply == pkAffect->wApplyOn))) // Nyx : Possible fix IsAffectFlag!
[Current thread is 1 (LWP 100075)]
(gdb) bt full
#0  0x080dd12b in CHARACTER::FindAffect (wApply=0, dwType=500, this=0x3e5c3a80) at char_affect.cpp:82
        pkAffect = 0x3e5c23
        it = @0x3e0b4109: 0x3e5c23
        __for_range = @0x3e5c7d30: {<std::__cxx11::_List_base<CAffect*, std::allocator<CAffect*> >> = {
            _M_impl = {<std::allocator<std::_List_node<CAffect*> >> = {<__gnu_cxx::new_allocator<std::_List_node<CAffect*> >> = {<No data fields>}, <No data fields>}, _M_node = {<std::__detail::_List_node_base> = {_M_next = 0x3e0b4101,
                  _M_prev = 0x3e0b4100}, _M_size = 1}}}, <No data fields>}
        __for_begin = {_M_node = <optimized out>}
        __for_end = {_M_node = <optimized out>}
#1  CHARACTER::ProcessAffect (this=0x3e5c3a80) at char_affect.cpp:346
        aff_idx = 500
        remain = <optimized out>
        i = 0
        bDiff = false
        pkAff = <optimized out>
        afOld = {bits = {<optimized out>, <optimized out>}}
        lMovSpd = <optimized out>
        lAttSpd = <optimized out>
        it = {_M_node = <optimized out>}
#2  0x080dd61c in CHARACTER::UpdateAffect (this=0x3e5c3a80) at char_affect.cpp:164
No locals.
#3  0x080dd81f in affect_event (event=..., processing_time=25) at char_affect.cpp:104
        info = <optimized out>
        __FUNCTION__ = "affect_event"
        ch = <optimized out>
#4  0x081a9034 in event_process (pulse=9614) at event.cpp:126
        pElem = <optimized out>
        the_event = {px = 0x3e5c22e0}
        processing_time = <optimized out>
        new_time = <optimized out>
        num_events = 2
#5  0x08382fac in heartbeat (ht=0x29446ff0, pulse=9614) at main.cpp:265
        t = 384358
#6  0x08383c49 in idle () at main.cpp:947
        pta = {tv_sec = 1701879113, tv_usec = 38646}
        process_time_count = 7
        now = {tv_sec = 0, tv_usec = 0}
        passed_pulses = 0
        t = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--Quit
(gdb) bt full
#0  0x080dd12b in CHARACTER::FindAffect (wApply=0, dwType=500, this=0x3e5c3a80) at char_affect.cpp:82
        pkAffect = 0x3e5c23
        it = @0x3e0b4109: 0x3e5c23
        __for_range = @0x3e5c7d30: {<std::__cxx11::_List_base<CAffect*, std::allocator<CAffect*> >> = {
            _M_impl = {<std::allocator<std::_List_node<CAffect*> >> = {<__gnu_cxx::new_allocator<std::_List_node<CAffect*> >> = {<No data fields>}, <No data fields>}, _M_node = {<std::__detail::_List_node_base> = {_M_next = 0x3e0b4101,
                  _M_prev = 0x3e0b4100}, _M_size = 1}}}, <No data fields>}
        __for_begin = {_M_node = <optimized out>}
        __for_end = {_M_node = <optimized out>}
#1  CHARACTER::ProcessAffect (this=0x3e5c3a80) at char_affect.cpp:346
        aff_idx = 500
        remain = <optimized out>
        i = 0
        bDiff = false
        pkAff = <optimized out>
        afOld = {bits = {<optimized out>, <optimized out>}}
        lMovSpd = <optimized out>
        lAttSpd = <optimized out>
        it = {_M_node = <optimized out>}
#2  0x080dd61c in CHARACTER::UpdateAffect (this=0x3e5c3a80) at char_affect.cpp:164
No locals.
#3  0x080dd81f in affect_event (event=..., processing_time=25) at char_affect.cpp:104
        info = <optimized out>
        __FUNCTION__ = "affect_event"
        ch = <optimized out>
#4  0x081a9034 in event_process (pulse=9614) at event.cpp:126
        pElem = <optimized out>
        the_event = {px = 0x3e5c22e0}
        processing_time = <optimized out>
        new_time = <optimized out>
        num_events = 2
#5  0x08382fac in heartbeat (ht=0x29446ff0, pulse=9614) at main.cpp:265
        t = 384358
#6  0x08383c49 in idle () at main.cpp:947
        pta = {tv_sec = 1701879113, tv_usec = 38646}
        process_time_count = 7
        now = {tv_sec = 0, tv_usec = 0}
        passed_pulses = 0
        t = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--ret
#7  0x08095bb5 in main (argc=1, argv=0xffbfec1c) at main.cpp:599
        sectree_manager = {<singleton<SECTREE_MANAGER>> = {_vptr.singleton = 0x867f6fc <vtable for SECTREE_MANAGER+8>,
            static ms_singleton = 0xffbfaecc}, static current_sectree_version = 768, m_map_pkSectree = {_M_t = {
              _M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, SECTREE_MAP*> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, SECTREE_MAP*> > >> = {<No data fields>}, <No data fields>}, <std::_Rb_tree_key_compare<std::less<unsigned int> >> = {
                  _M_key_compare = {<std::binary_function<unsigned int, unsigned int, bool>> = {<No data fields>}, <No data fields>}}, <std::_Rb_tree_header> = {_M_header = {_M_color = std::_S_red, _M_parent = 0x352634e0,
                    _M_left = 0x2c960020, _M_right = 0x2b38bea0}, _M_node_count = 13}, <No data fields>}}},
          m_map_pkArea = {_M_t = {
              _M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<int const, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, TAreaInfo, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, TAreaInfo> > > > > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<int const, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, TAreaInfo, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, TAreaInfo> > > > > >> = {<No data fields>}, <No data fields>}, <std::_Rb_tree_key_compare<std::less<int> >> = {
                  _M_key_compare = {<std::binary_function<int, int, bool>> = {<No data fields>}, <No data fields>}}, <std::_Rb_tree_header> = {_M_header = {_M_color = std::_S_red, _M_parent = 0x0, _M_left = 0xffbfaeec,
                    _M_right = 0xffbfaeec}, _M_node_count = 0}, <No data fields>}}},
          m_vec_mapRegion = {<std::_Vector_base<SMapRegion, std::allocator<SMapRegion> >> = {
              _M_impl = {<std::allocator<SMapRegion>> = {<__gnu_cxx::new_allocator<SMapRegion>> = {<No data fields>}, <No data fields>}, <std::_Vector_base<SMapRegion, std::allocator<SMapRegion> >::_Vector_impl_data> = {
                  _M_start = 0x36a27000, _M_finish = 0x36a29ca0,
                  _M_end_of_storage = 0x36a2a000}, <No data fields>}}, <No data fields>}, m_mapNPCPosition = {_M_t = {
              _M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::vector<npc_info, std::allocator<npc_info> > > > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::vector<npc_info, std::allocator<npc_info> > > > >> = {<No data fields>}, <No data fields>}, <std::_Rb_tree_key_compare<std::less<unsigned int> >> = {
                  _M_key_compare = {<std::binary_function<unsigned int, unsigned int, bool>> = {<No data fields>}, <No data fields>}}, <std::_Rb_tree_header> = {_M_header = {_M_color = std::_S_red, _M_parent = 0x364569c0, _M_left = 0x31555460,
                    _M_right = 0x3d4588c0}, _M_node_count = 11}, <No data fields>}}}, next_private_index_map_ = {
            _M_h = {<std::__detail::_Hashtable_base<long, std::pair<long const, int>, std::__detail::_Select1st, std::equal_to<long>, std::hash<long>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<false, false, true> >> = {<std::__detail::_Hash_code_base<long, std::pair<long const, int>, std::__detail::_Select1st, std::hash<long>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, false>> = {<std::__detail::_Hashtable_ebo_helper<0, std::__detail::_Select1st, true>> = {<std::__detail::_Select1st> = {<No data fields>}, <No data fields>}, <std::__detail::_Hashtable_ebo_helper<1, std::hash<long>, true>> = {<std::hash<long>> = {<std::__hash_ba--Type <RET> for more, q to quit, c to continue without paging--

 

Edited by officialteomusic
Link to comment
Share on other sites

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.