Jump to content

Recommended Posts

Posted

I have removed the lyrics but still gives the same error, only instead of saying (For imput string: "x") I get (For imput string: ""), also try putting coordinates and I get the same.

 

anyone know where to locate the source to remove the option of pack?

 

Problem solved. :D

  • 1 month later...
  • 2 weeks later...
Posted

NPC don't work for me i can't see their menu... e.x. i can't make buff.... something wrong with multisel.... how i can fix that?

Posted

How to remove this fvcking block Zealt & Frenzy in olympiad? :P

Change Project many reasons to do it ;/ also baggoc its baned as i know so he cant Help you

 

one Mode Lock to avoid more spam

  • 2 months later...
Posted

How to remove this fvcking block Zealt & Frenzy in olympiad? :P

 

Just found out yesterday how  fix this freaking block

 

Here's the fixed file 

Credits goes to Sweets for telling me how to fix it

Copy this in to AbstractOlympiadGame.java find it in L2J-Server\java\com\l2jserver\gameserver\model\olympiad

/*
* This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version.
* 
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
* 
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.gameserver.model.olympiad;

import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.l2jserver.Config;
import com.l2jserver.gameserver.ai.CtrlIntention;
import com.l2jserver.gameserver.datatables.HeroSkillTable;
import com.l2jserver.gameserver.instancemanager.AntiFeedManager;
import com.l2jserver.gameserver.instancemanager.CastleManager;
import com.l2jserver.gameserver.instancemanager.FortManager;
import com.l2jserver.gameserver.model.L2ItemInstance;
import com.l2jserver.gameserver.model.L2Party;
import com.l2jserver.gameserver.model.L2Skill;
import com.l2jserver.gameserver.model.Location;
import com.l2jserver.gameserver.model.actor.L2Character;
import com.l2jserver.gameserver.model.actor.L2Summon;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.actor.instance.L2PetInstance;
import com.l2jserver.gameserver.model.entity.TvTEvent;
import com.l2jserver.gameserver.model.zone.type.L2OlympiadStadiumZone;
import com.l2jserver.gameserver.network.SystemMessageId;
import com.l2jserver.gameserver.network.serverpackets.ExOlympiadMode;
import com.l2jserver.gameserver.network.serverpackets.InventoryUpdate;
import com.l2jserver.gameserver.network.serverpackets.L2GameServerPacket;
import com.l2jserver.gameserver.network.serverpackets.SkillCoolTime;
import com.l2jserver.gameserver.network.serverpackets.SystemMessage;

/**
* 
* @author godson, GodKratos, Pere, DS
*
*/
public abstract class AbstractOlympiadGame
{
protected static final Logger _log = Logger.getLogger(AbstractOlympiadGame.class.getName());
protected static final Logger _logResults = Logger.getLogger("olympiad");

protected static final String POINTS = "olympiad_points";
protected static final String COMP_DONE = "competitions_done";
protected static final String COMP_WON = "competitions_won";
protected static final String COMP_LOST = "competitions_lost";
protected static final String COMP_DRAWN = "competitions_drawn";

protected long _startTime = 0;
protected boolean _aborted = false;
protected final int _stadiumID;

protected AbstractOlympiadGame(int id)
{
	_stadiumID = id;
}

public final boolean isAborted()
{
	return _aborted;
}

public final int getStadiumId()
{
	return _stadiumID;
}

protected boolean makeCompetitionStart()
{
	_startTime = System.currentTimeMillis();
	return !_aborted;
}

protected final void addPointsToParticipant(Participant par, int points)
{
	par.updateStat(POINTS, points);
	final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_GAINED_S2_OLYMPIAD_POINTS);
	sm.addString(par.name);
	sm.addNumber(points);
	broadcastPacket(sm);
}

protected final void removePointsFromParticipant(Participant par, int points)
{
	par.updateStat(POINTS, -points);
	final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_LOST_S2_OLYMPIAD_POINTS);
	sm.addString(par.name);
	sm.addNumber(points);
	broadcastPacket(sm);
}

/**
 * Function return null if player passed all checks
 * or SystemMessage with reason for broadcast to opponent(s).
 * @param player
 * @return
 */
protected static SystemMessage checkDefaulted(L2PcInstance player)
{
	if (player == null || !player.isOnline())
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_ENDS_THE_GAME);

	if (player.getClient() == null || player.getClient().isDetached())
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_ENDS_THE_GAME);

	// safety precautions
	if (player.inObserverMode() || TvTEvent.isPlayerParticipant(player.getObjectId()))
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_DOES_NOT_MEET_THE_REQUIREMENTS_FOR_JOINING_THE_GAME);

	SystemMessage sm;
	if (player.isDead())
	{
		sm = SystemMessage.getSystemMessage(SystemMessageId.C1_CANNOT_PARTICIPATE_OLYMPIAD_WHILE_DEAD);
		sm.addPcName(player);
		player.sendPacket(sm);
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_DOES_NOT_MEET_THE_REQUIREMENTS_FOR_JOINING_THE_GAME);
	}
	if (player.isSubClassActive())
	{
		sm = SystemMessage.getSystemMessage(SystemMessageId.C1_CANNOT_PARTICIPATE_IN_OLYMPIAD_WHILE_CHANGED_TO_SUB_CLASS);
		sm.addPcName(player);
		player.sendPacket(sm);
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_DOES_NOT_MEET_THE_REQUIREMENTS_FOR_JOINING_THE_GAME);
	}
	if (player.isCursedWeaponEquipped())
	{
		sm = SystemMessage.getSystemMessage(SystemMessageId.C1_CANNOT_JOIN_OLYMPIAD_POSSESSING_S2);
		sm.addPcName(player);
		sm.addItemName(player.getCursedWeaponEquippedId());
		player.sendPacket(sm);
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_DOES_NOT_MEET_THE_REQUIREMENTS_FOR_JOINING_THE_GAME);
	}
	if (!player.isInventoryUnder80(true))
	{
		sm = SystemMessage.getSystemMessage(SystemMessageId.C1_CANNOT_PARTICIPATE_IN_OLYMPIAD_INVENTORY_SLOT_EXCEEDS_80_PERCENT);
		sm.addPcName(player);
		player.sendPacket(sm);
		return SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_HAS_BEEN_CANCELLED_BECAUSE_THE_OTHER_PARTY_DOES_NOT_MEET_THE_REQUIREMENTS_FOR_JOINING_THE_GAME);
	}

	return null;
}

protected static final boolean portPlayerToArena(Participant par, Location loc, int id)
{
	final L2PcInstance player = par.player;
	if (player == null || !player.isOnline())
		return false;

	try
	{
		player.setLastCords(player.getX(), player.getY(), player.getZ());
		if (player.isSitting())
			player.standUp();
		player.setTarget(null);

		player.setOlympiadGameId(id);
		player.setIsInOlympiadMode(true);
		player.setIsOlympiadStart(false);
		player.setOlympiadSide(par.side);
		player.olyBuff = 5;
		player.setInstanceId(0);
		player.teleToLocation(loc, false);
		player.sendPacket(new ExOlympiadMode(2));
	}
	catch (Exception e)
	{
		_log.log(Level.WARNING, e.getMessage(), e);
		return false;
	}
	return true;
}

protected static final void removals(L2PcInstance player, boolean removeParty)
{
	try
	{
		if (player == null)
			return;

		// Remove Buffs
		player.stopAllEffectsExceptThoseThatLastThroughDeath();

		// Abort casting if player casting
		player.abortAttack();
		player.abortCast();

		// Force the character to be visible
		player.getAppearance().setVisible();

		// Remove Hero Skills
		if (player.isHero())
		{
			for (L2Skill skill : HeroSkillTable.getHeroSkills())
				player.removeSkill(skill, false);
		}


		// Heal Player fully
		player.setCurrentCp(player.getMaxCp());
		player.setCurrentHp(player.getMaxHp());
		player.setCurrentMp(player.getMaxMp());

		// Remove Summon's Buffs
		final L2Summon summon = player.getPet();
		if (summon != null)
		{
			summon.stopAllEffectsExceptThoseThatLastThroughDeath();
			summon.abortAttack();
			summon.abortCast();

			if (summon instanceof L2PetInstance)
				summon.unSummon(player);
		}

		// stop any cubic that has been given by other player.
		player.stopCubicsByOthers();

		// Remove player from his party
		if (removeParty)
		{
			final L2Party party = player.getParty();
			if (party != null)
				party.removePartyMember(player);
		}
		// Remove Agathion
		if (player.getAgathionId() > 0)
		{
			player.setAgathionId(0);
			player.broadcastUserInfo();
		}

		player.checkItemRestriction();

		// Remove shot automation
		player.disableAutoShotsAll();

		// Discharge any active shots
		if (player.getActiveWeaponInstance() != null)
		{
			player.getActiveWeaponInstance().setChargedSoulshot(L2ItemInstance.CHARGED_NONE);
			player.getActiveWeaponInstance().setChargedSpiritshot(L2ItemInstance.CHARGED_NONE);
		}

		// enable skills with cool time <= 15 minutes
		for (L2Skill skill : player.getAllSkills())
		{
			if (skill.getReuseDelay() <= 900000)
				player.enableSkill(skill);
		}

		player.sendSkillList();
		player.sendPacket(new SkillCoolTime(player));
	}
	catch (Exception e)
	{
		_log.log(Level.WARNING, e.getMessage(), e);
	}
}

protected static final void cleanEffects(L2PcInstance player)
{
	try
	{
		// prevent players kill each other
		player.setIsOlympiadStart(false);
		player.setTarget(null);
		player.abortAttack();
		player.abortCast();
		player.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);

		if (player.isDead())
			player.setIsDead(false);

		player.stopAllEffectsExceptThoseThatLastThroughDeath();
		player.clearSouls();
		player.clearCharges();
		if (player.getAgathionId() > 0)
			player.setAgathionId(0);
		final L2Summon summon = player.getPet();
		if (summon != null && !summon.isDead())
		{
			summon.setTarget(null);
			summon.abortAttack();
			summon.abortCast();
			summon.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
			summon.stopAllEffectsExceptThoseThatLastThroughDeath();
		}

		player.setCurrentCp(player.getMaxCp());
		player.setCurrentHp(player.getMaxHp());
		player.setCurrentMp(player.getMaxMp());
		player.getStatus().startHpMpRegeneration();
	}
	catch (Exception e)
	{
		_log.log(Level.WARNING, e.getMessage(), e);
	}
}

protected static final void playerStatusBack(L2PcInstance player)
{
	try
	{
		if(player.isTransformed())
			player.untransform();

		player.setIsInOlympiadMode(false);
		player.setIsOlympiadStart(false);
		player.setOlympiadSide(-1);
		player.setOlympiadGameId(-1);
		player.sendPacket(new ExOlympiadMode(0));

		// Add Clan Skills
		if (player.getClan() != null)
		{
			player.getClan().addSkillEffects(player);
			if (player.getClan().getHasCastle() > 0)
				CastleManager.getInstance().getCastleByOwner(player.getClan()).giveResidentialSkills(player);
			if (player.getClan().getHasFort() > 0)
				FortManager.getInstance().getFortByOwner(player.getClan()).giveResidentialSkills(player);
		}

		// Add Hero Skills
		if (player.isHero())
		{
			for (L2Skill skill : HeroSkillTable.getHeroSkills())
				player.addSkill(skill, false);
		}
		player.sendSkillList();

		// heal again after adding clan skills
		player.setCurrentCp(player.getMaxCp());
		player.setCurrentHp(player.getMaxHp());
		player.setCurrentMp(player.getMaxMp());
		player.getStatus().startHpMpRegeneration();

		if (Config.L2JMOD_DUALBOX_CHECK_MAX_OLYMPIAD_PARTICIPANTS_PER_IP > 0)
			AntiFeedManager.getInstance().removePlayer(AntiFeedManager.OLYMPIAD_ID, player);
	}
	catch (Exception e)
	{
		_log.log(Level.WARNING, "portPlayersToArena()", e);
	}
}

protected static final void portPlayerBack(L2PcInstance player)
{
	if (player == null)
		return;

	if (player.getLastX() == 0 && player.getLastY() == 0)
		return;

	player.teleToLocation(player.getLastX(), player.getLastY(), player.getLastZ());
	player.setLastCords(0, 0, 0);
}

public static final void rewardParticipant(L2PcInstance player, int[][] reward)
{
	if (player == null || !player.isOnline() || reward == null)
		return;

	try
	{
		SystemMessage sm;
		L2ItemInstance item;
		final InventoryUpdate iu = new InventoryUpdate();
		for (int[] it : reward)
		{
			if (it == null || it.length != 2)
				continue;

			item = player.getInventory().addItem("Olympiad", it[0], it[1], player, null);
			if (item == null)
				continue;

			iu.addModifiedItem(item);
			sm = SystemMessage.getSystemMessage(SystemMessageId.EARNED_S2_S1_S);
			sm.addItemName(it[0]);
			sm.addNumber(it[1]);
			player.sendPacket(sm);
		}
		player.sendPacket(iu);			
	}
	catch (Exception e)
	{
		_log.log(Level.WARNING, e.getMessage(), e);
	}
}

public abstract CompetitionType getType();

public abstract String[] getPlayerNames();

public abstract boolean containsParticipant(int playerId);

public abstract void sendOlympiadInfo(L2Character player);

public abstract void broadcastOlympiadInfo(L2OlympiadStadiumZone stadium);

protected abstract void broadcastPacket(L2GameServerPacket packet);

protected abstract boolean needBuffers();

protected abstract boolean checkDefaulted();

protected abstract void removals();

protected abstract boolean portPlayersToArena(List<Location> spawns);

protected abstract void cleanEffects();

protected abstract void portPlayersBack();

protected abstract void playersStatusBack();

protected abstract void clearPlayers();

protected abstract void handleDisconnect(L2PcInstance player);

protected abstract void resetDamage();

protected abstract void addDamage(L2PcInstance player, int damage);

protected abstract boolean checkBattleStatus();

protected abstract boolean haveWinner();

protected abstract void validateWinner(L2OlympiadStadiumZone stadium);

protected abstract int getDivider();

protected abstract int[][] getReward();
}

Guest
This topic is now closed to further replies.

  • Posts

    • @Mobius I only asked you one question! All your previous versions are sh*t and the last version is the best ? Because this is what you said.
    • Close that LOLserver. And change name to L2Wipe&Money.
    • Open Beta January 17th & 21:00 UTC +2 Launch Date January 24th & 21:00 UTC +2 Click Here to Explore Vanilla Gracia Final Low-Rate Server. Join our Discord Community     Following the success of our Vanilla project, we decided to launch it again as Last PlayINERA’s Server! Core Settings *Vanilla will have Strict Botting & Client Limitation Rules and Chronicle Progression from Gracia Final to Gracia Epilogue to H5 in Long term! XP: x4 SP: x4 Adena: x2 Drop: x2 Spoil: x3 Manor: x0.4 (60% reduction) - Festive sweeper enabled! Seal Stones: x2 Herbs: x1 Safe Enchant: +3 Maximum Enchant: Retail Enchant Rate: Dynamic General Settings Auto-loot Can be toggled Buffs Adventurer Guide buffs are free, retail level limit removed. Buff Slots: 20 (+ 4) Summon buffs will remain on re-summoning & on death while Noblesse blessing is applied! (Olympiad excluded) Pet buffs will be saved on relog but not during summon/unsummon. Event Buffer [NEW] Event Buffer is enabled and will spawn randomly between 18:00 ~ 23:00 in Giran for 10 minutes, it will apply Farm Only buffs that are cancelled in PvP, Siege / Epic PvP zones & while in a chaotic state! Duration: 1-hour! Territory Wars every two weeks on Saturday. Castle sieges every two weeks on Sunday Class Transfer 1st Class Transfer: Available for purchase with either Adena or iCoin 2nd Class Transfer: Available for purchase with either Adena or iCoin 3rd Class Transfer: Quest or iCoin (the 3rd class transfer will become available for purchase with iCoin as soon as someone has entered the Hall of Fame for completing the 3rd class transfer quest for the class in question) Hellbound Hellbound Lv. 0-6: ATOD x1 Hellbound Lv. 7-12: ATOD x2 Tiat & Ekimus will become available at Stage 12 Hellbound can only be leveled up by killing monsters. No quests or raids are needed To open Hellbound, a party must kill Baylor in the Crystal Caverns The following items are now tradable: Ancient Tome of the Demon  Hidden First Page  Hidden Second Page  Demon Contract Fragment INERA Hub Library Clan Recruitment System Options Services Milestone Rewards Earn rewards for reaching various daily/one-time goals Client Limit: 1 (+1 with Standard Premium) Shift + Click Information on Monsters SP are required to learn new skills Offline shops Lasts for 15 days Olympiad Olympiad period: 1st and 15th day of the month (14th & Last day of month is the last day) 3 Vs. 3 match disabled Class-based matches will be held over the weekends One registration per HWID (PC) Minimum participants: 9 Party Matching System Earn bonuses for finding a group via the Party Matching system Vote Reward System World Chat No limits for first day! Available from level 20 Raid Bosses Epic Raid Boss zones will turn into a PvP zone while the Epic Raid Boss is alive ( + means Random) Server will start with all grand raids dead. Normal Raids: 12h (+6 hours random). Subclass raids, respawn 12h (+6 hours random). Noblesse Barakiel 12h (+6 hours random, PvP zone). Anakim & Lilith are static 24 hours respawn. Queen Ant: 24 hours (+2 hours random). Core: 40 hours (+2 hours random). Orfen: 32 hours (+2 hours random). Antharas Respawn: 8 Days. Randomly spawns at 19:00 ~ 21:00 Boosted to level 83 on Hellbound stage 7. Valakas Respawn: 10 Days. Randomly spawns at 19:00 ~ 21:00 Baium Respawn: 5 Days. Randomly spawns at 21:00 ~ 23:00 Boosted to level 83 on Hellbound stage 7. Frintezza Respawn: 2 Days. Randomly spawns at 21:00 ~ 23:00 Instanced Zaken Zaken (Day): Monday, Wednesday, Friday at 6:30. Zaken (Day): 9 players, LvL 55-65, 1hr max. Zaken (Night): Wednesday at 6:30 Zaken (Night): 18-45 players, LvL 55-65, 6hr max. Tiat: Saturday at 6:30, 18-36 players, 2 hrs max. Boosted to level 85. Ekimus: 24h at 6:30, 18-27 players, 1hr max. Tully’s Workshop (Darion & Tully): 24h +-1h. Tower of Naia (Beleth): 5 days, 18 min. & 36 max.
  • Topics

×
×
  • Create New...