Jump to content

How to use guild skills everywhere?


Recommended Posts

  • Replies 8
  • Created
  • Last Reply

Top Posters In This Topic

  • 3 weeks later...
On 10/4/2023 at 9:52 AM, silvabl said:

Okay I have made some progress... Now I can use skill, animation works but still I receive no bonuses and game sends me messeage on the chat that I can use this skill only during a guild war.

guild.cpp - game/src

void CGuild::UseSkill(DWORD dwVnum, LPCHARACTER ch, DWORD pid)

remove / comment this:
if (!UnderAnyWar())
{
 	ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±ćµĺ> ±ćµĺ ˝şĹłŔş ±ćµĺŔü Áßżˇ¸¸ »çżëÇŇ Ľö ŔÖ˝Ŕ´Ď´Ů."));
 	return;
}

you can also try to edit this in skilldesc - guild skills:

ONLY_FOR_GUILD_WAR
to STANDING_SKILL or STANDING_SKILL|CAN_USE_FOR_ME

for affects - game/src - char_affect.cpp 
search: 

function: void CHARACTER::ComputeAffect

		if (!GetGuild()->UnderAnyWar())
			return;

function: int CHARACTER::ProcessAffect()

if (!GetGuild() || !GetGuild()->UnderAnyWar())
				bEnd = true;

you need to remove or comment this i think. " !GetGuild()->UnderAnyWar() " // not tested
this is propably a function to check if guild is under war

guild.h:
bool        UnderWar(DWORD guild_id);
DWORD        UnderAnyWar(BYTE bType = GUILD_WAR_TYPE_MAX_NUM);
Edited by Vasto187
Link to comment
Share on other sites

22 hours ago, Vasto187 said:

guild.cpp - game/src

void CGuild::UseSkill(DWORD dwVnum, LPCHARACTER ch, DWORD pid)

remove / comment this:
if (!UnderAnyWar())
{
 	ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±ćµĺ> ±ćµĺ ˝şĹłŔş ±ćµĺŔü Áßżˇ¸¸ »çżëÇŇ Ľö ŔÖ˝Ŕ´Ď´Ů."));
 	return;
}

you can also try to edit this in skilldesc - guild skills:

ONLY_FOR_GUILD_WAR
to STANDING_SKILL or STANDING_SKILL|CAN_USE_FOR_ME

for affects - game/src - char_affect.cpp 
search: 

function: void CHARACTER::ComputeAffect

		if (!GetGuild()->UnderAnyWar())
			return;

function: int CHARACTER::ProcessAffect()

if (!GetGuild() || !GetGuild()->UnderAnyWar())
				bEnd = true;

you need to remove or comment this i think. " !GetGuild()->UnderAnyWar() " // not tested
this is propably a function to check if guild is under war

guild.h:
bool        UnderWar(DWORD guild_id);
DWORD        UnderAnyWar(BYTE bType = GUILD_WAR_TYPE_MAX_NUM);

Okay so after testing your suggestions here's what came out. I can use skill and I get bonus from this spell but just for a second and then it disappears. I've been trying to solve this but I don't know how does skill work.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • 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.