Jump to content
  • 0

Summon Pking


Question

Posted

Hello guys, i need some help, if you summon pet in town and you try to use it to attack players its not working, if you first use the pet to attack npc and then a player its working and people are pking in town by using their pets.

My npcs are not attackable but i dont know why pets or summons can attack them.

I have to make npcs not attackable from pets too or fix this with another way. Any help?

9 answers to this question

Recommended Posts

  • 0
Posted

i am using l2jesios

 

	protected void doAttack(L2Character target)
{
	if (Config.DEBUG)
		_log.fine(getName() + " doAttack: target=" + target);

	if (!isAlikeDead() && target != null)
	{
		if (this instanceof L2Npc && target.isAlikeDead() || !getKnownList().knowsObject(target))
		{
			getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE);
			sendPacket(ActionFailed.STATIC_PACKET);
			return;
		}
		else if (this instanceof L2PcInstance)
		{
			if (target.isDead())
			{
				getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE);
				sendPacket(ActionFailed.STATIC_PACKET);
				return;
			}

			L2PcInstance actor = (L2PcInstance) this;
			// Players riding wyvern can only do melee attacks
			if (actor.isMounted() && actor.getMountNpcId() == 12621)
			{
				sendPacket(ActionFailed.STATIC_PACKET);
				return;
			}
		}
	}

	if (isAttackingDisabled())
		return;

	if (this instanceof L2PcInstance)
	{
		if (((L2PcInstance) this).inObserverMode())
		{
			sendPacket(SystemMessage.getSystemMessage(SystemMessageId.OBSERVERS_CANNOT_PARTICIPATE));
			sendPacket(ActionFailed.STATIC_PACKET);
			return;
		}

		// Checking if target has moved to peace zone
		if (target.isInsidePeaceZone((L2PcInstance) this))
		{
			getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE);
			sendPacket(ActionFailed.STATIC_PACKET);
			return;
		}
	}

  • 0
Posted

Soz, post me the onForcedAttack() method too, if u can :P

 

	public void onForcedAttack(L2PcInstance player)
{
	if (isInsidePeaceZone(player))
	{
		// If L2Character or target is in a peace zone, send a system message TARGET_IN_PEACEZONE a Server->Client packet ActionFailed
		player.sendPacket(SystemMessageId.TARGET_IN_PEACEZONE);
		player.sendPacket(ActionFailed.STATIC_PACKET);
		return;
	}

	if (player.isInOlympiadMode() && player.getTarget() != null && player.getTarget() instanceof L2Playable)
	{
		L2PcInstance target = player.getTarget().getActingPlayer();
		if (target == null || (target.isInOlympiadMode() && (!player.isOlympiadStart() || player.getOlympiadGameId() != target.getOlympiadGameId())))
		{
			// if L2PcInstance is in Olympia and the match isn't already start, send a Server->Client packet ActionFailed
			player.sendPacket(ActionFailed.STATIC_PACKET);
			return;
		}
	}

	if (player.getTarget() != null && !player.getTarget().isAttackable() && !player.getAccessLevel().allowPeaceAttack())
	{
		// If target is not attackable, send a Server->Client packet ActionFailed
		player.sendPacket(ActionFailed.STATIC_PACKET);
		return;
	}

	if (player.isConfused())
	{
		// If target is confused, send a Server->Client packet ActionFailed
		player.sendPacket(ActionFailed.STATIC_PACKET);
		return;
	}

	// GeoData Los Check or dz > 1000
	if (!GeoData.getInstance().canSeeTarget(player, this))
	{
		player.sendPacket(SystemMessageId.CANT_SEE_TARGET);
		player.sendPacket(ActionFailed.STATIC_PACKET);
		return;
	}

	// Notify AI with AI_INTENTION_ATTACK
	player.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, this);
}

  • 0
Posted

-beep-, I'm just sleepy as hell.

More than probably the 2 methods I told you to post, don't matter at all.

We need to check the canAttack() from L2Summon, if you have that file in that pack.

:rage: :rage: :rage:

  • 0
Posted

-beep-, I'm just sleepy as hell.

More than probably the 2 methods I told you to post, don't matter at all.

We need to check the canAttack() from L2Summon, if you have that file in that pack.

:rage: :rage: :rage:

haha okay, i dont have this method in l2summon

  • 0
Posted

And do you have this one?

 

/**
 * Performs an attack to the owner's target.
 */
public void doAttack()
{
	if (getOwner() != null)
	{
		final L2Object target = getOwner().getTarget();
		if (target != null)
		{
			setTarget(target);
			getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, target);
		}
	}
}

 

If yes, you could try with (not the best option but could work):

 

/**
 * Performs an attack to the owner's target.
 */
public void doAttack()
{
	if (getOwner() != null)
	{
		final L2Object target = getOwner().getTarget();
		if (target != null)
		{
			if(target instanceof L2Npc /* or u can try with target instanceof L2PcInstance too, if u want NPC attackables */ && isInsidePeaceZone(target)
			{
				return;
			}
			setTarget(target);
			getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, target);
		}
	}
}

 

  • 0
Posted

Stupid me i didnt even had a doattack method...

 

I used this one

	protected void doAttack(L2Character target)
{
	if(getOwner() != null && getOwner() == target && !getOwner().isBetrayed())
	{
		sendPacket(new SystemMessage(SystemMessageId.TARGET_IS_INCORRECT));
		return;
	}
	if(isInsidePeaceZone(this, target))
	{
		getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE);
		return;
	}
	if(!target.isAttackable())
	{
		if (!(this instanceof L2SiegeSummonInstance))
		{
		getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE);
		return;
		}
	}

	super.doAttack(target);
}

 

Thx for helping anyway Wyatt ;)

Guest
This topic is now closed to further replies.


  • Posts

    • Which part is a scam exactly? Please explain me. My project, my rules. I don't ask that much. I'm not some charity. And it's not my problem if the customer ruins his server pack by himself and refuses pay for updates. I don't work just for fun. The most important thing he had the only one problem that told me and it was about boss stat, because he felt it's wrong.... He did not have anything to compare, he just felt it's wrong. Smart? Yeah it's very smart...  More info here:  This guy doesn't understand how the server works and changed many things without understanding/knowledge what he is actually doing. He changed random configs, tried add stats by himself. He mixed files, server pack updates without the right server core. These customers like him are just a severe headache... However, I tried to help him every time and never disappeared, but he did many times. Now I see why. It's weird like people acts, one day he says thanks and in next, he calls me a scammer.  What he needed to do, just a get membership that costs 5GBP/week... Just 5GBP 😐  It's even ridiculously small. So, he needed just update his server pack up to the latest or ask me to do it and that's all, but no, he worked on his own and ruined the server. End of story. And now I'm a scammer? Why? I work my job and I'm not charity. If you can't pay just 5GBP then sorry, but server is not for you, because you won't be available to pay your bills for his own server's website, VDS, guard and so on. This screenshot also proves that I never disappeared until he did. 🙂   and this one about - he never talked to me about any other problem and when I asked about his friend comments here at this forum I didn't get any answer, but this post. Thanks a lot 🙂  You're like a rabid dog that needs to be put to sleep. Everywhere every time  where you see me or my project name you always finds what to say bad. Please don't forget visit your doctor, because something really wrong with you.
    • When I try to log in, I get this error. https://imgur.com/a/dcs9DnK https://imgur.com/a/p8Mw7xI       [CliExt_Files] Enabled=1 MostrarMensajesConsola=1 File_1={{[ALAudio.dll];{9BBF6199558AE72F3CB8C54D4A09009F}} File_2={{[Core.dll];{B519540B5F7F5B9153263ECB492E88CC}} File_3={{[D3DDrv.dll];{8AB869364379486F220259FA1C6C7D90};{F99D13D552D2E19F5EFD195B264BC2F8}} File_4={{[defopenal32.dll];{ECAB7CB66244BFB9FD926ADBDEEB0412}} File_5={{[dsetup.dll];{230173F19C0AD3648B455F50C9088EA2}} File_6={{[encvag.dll];{DC48574DC8C7B4DF5708A53AF50AFE8A}} File_7={{[engine.dll];{BD3F551F5F942CABF7457084E810FD62}} File_8={{[Fire.dll];{961D0C1622CC7D41682BA3E2600E62FE}} File_9={{[ifc23.dll];{3A1970D3E997B018FBC776560740B95E}} File_10={{[IpDrv.dll];{4DCD3F45A05B962B458B13969C5F906B}} File_11={{[LineageCreature.dll];{B212DACDECBAB47CC09DB633C232CF18}} File_12={{[lineageenv.dll];{3C2506853038560AA66D5DA32DFC795F}} File_13={{[msxml4.dll];{7851D6CFA3AA0B41444978F2EAC40FE1}} File_14={{[msxml4a.dll];{31AF8904D926B6EDF664E420E0E58865}} File_15={{[msxml4r.dll];{644031676F66BC9DBC1989D2F73044E6}} File_16={{[nosleep.dll];{E70AFA303842DBA60FF0E8CEFEA3E513}} File_17={{[npkcrypt.dll];{A89A8D11CD3C9D8C75B91EA40E3A38FF}} File_18={{[npkpdb.dll];{755F8B8BEBC46D524ED232FB46F44575}} File_19={{[nwindow.dll];{4AD629893C278777987DA63A2792C6AD};{6C1B532F8FB48657D5BAC6B2944E83B8}} File_20={{[ogg.dll];{DB3A7B14F42EE908B966D3E03FB31A44}} File_21={{[openal32.dll];{432204FEE4A5CF3D9AF1D518CF135DEF}} File_22={{[orc.dll];{292658615568B670CA54CDF0C7F05DA1}} File_23={{[vorbis.dll];{991B6CEBEC143D42E2E837A85A67FBC1}} File_24={{[vorbisfile.dll];{79DC3FB2408AAFB15A0C7432C3498256}} File_25={{[Window.dll];{769B7A97B3EF8693DCEDEF0916005767}} File_26={{[WinDrv.dll];{A01CA9CBE89CE9AB665BA4D64CF15865}} File_27={{[wrap_oal.dll];{3F4A774BE86425D0FE098F9D82C12DE9}} File_28={{[Core.u];{16FC24769D23435B7F25C7B93B7396D3}} File_29={{[Editor.u];{1FF6A7867E913AB658D2AB9CEC5A3A19}} File_30={{[Engine.u];{F3CD3D4BFF79246C6D54AB381DE8E7CA}} File_31={{[Fire.u];{D3627A58A9339565EF9A313C58130C24}} File_32={{[GamePlay.u];{F0CFF07EB8318E45AAFDB8FDD32ABE44}} File_34={{[IpDrv.u];{E37822CA6BD9DED36858EBBE91F5A6BA}} File_35={{[LineageCreature.u];{4DAFE33542B9E86519A2931EEA1B0244}} File_36={{[LineageDeco.u];{F71E69C0F16A285DC860F63BFDF93747}} File_37={{[lineageeffect.u];{65F0DBB83A8DC7C859FD990D7B2DED0E};{17D901593A7B3042084E2A0A0ACCEE36}} File_38={{[lineageenv.u];{8982D65168E1319770237EFC3D0FD4E4}} File_39={{[LineageMonster.u];{512232DBC8DF6D027363C9925D86D0CD}} File_40={{[LineageMonster2.u];{74BEC9C4E3384885CACA83590EF240CC}} File_41={{[LineageMonster3.u];;{2838C03A1D38A218F68B7101BD6A5B76}} File_42={{[lineagenpc.u];{A5DE036E6C69FFDDD386FB7F33BB699E}} File_43={{[lineagenpc2.u];{4D603979200EFCC17BE4DBF342358799}} File_44={{[lineagenpcev.u];{A569BA469C17DB6FE5DBD9E5B6170AF6}} File_45={{[LineageVehicle.u];{51764074182854077DB32528223E2678}} File_46={{[LineageWarrior.u];{CCF42641F30C4639ED8D316B9A4E1F42};{FA89E977FD204296FC0E9D59F0E9A272}} File_47={{[nwindow.u];{360DFAFDCD0509E48B09CD491242FD54}} File_48={{[udebugmenu.u];{8195778FB290CCD62C5DEF2F6671C11C}} File_49={{[UWindow.u];{5D7CAF94751BF1FCDEBB9B2BEF502B02}} File_50={{[L2.exe];{379A0AD30E300AD8BB5DD8A149EBC515}} File_33={{[interface.u];{014A36E6A55EE1A7F9C3D37B5B877613};{F191D538FCEA5E4B3038B428E04C7ECD};{1B4DD48DEC6F97B6C8D3255B1147E9EC}} File_51={{[interface.xdat];{078434CCE990486A1D7B41835E69FABB};{8B6090820C7B32204BE5AA9ABABDEFF3}} File_53={{[_Interface.u];{00000000000000000000000000000000}} File_54={{[CliExx.dll];{00000000000000000000000000000000}} File_55={{[l2ui.dll];{00000000000000000000000000000000}} File_56={{[npkscrypt.dll];{5908C3EE24B40F6F08F1500723B1A41D}} ;File_52={{[chatfilter.ini];{363E6F64AABB21A81C61E9C89737B84F}} ;File_53={{[Client.ini];{1906F536DB0890BA89AEB12A81A44876}} ;File_54={{[l2.ini];{F1C1441E187AC18A0473F8D6C7E3F90D}} ;File_55={{[Lineage2us.ini];{DF2166EAD1F750E22F8EBC18DC1FA14C}} ;File_56={{[Localization.ini];{FBA90399D006FF4A842D1EF832BFB5DF}} ;File_57={{[Option.ini];{626C690FF12E4AB1BA974FB2E4A3C1BD}} ;File_58={{[s_info.ini];{D34E9E0B34595812A72AABA13997F097}} ;File_59={{[ttfontinfo.ini];{CBEB6D54158002449958B24DFB13BFFD}} ;File_60={{[user.ini];{325704B1149A55CDA0B52B01329AC3F6}}   [CliExt_Files] Enabled=1 MostrarMensajesConsola=1     lf l put 0 no work, l have messager again https://imgur.com/a/p8Mw7xI
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock