Jump to content

Recommended Posts

Posted

Hello guys,i wonna share a guide with you. Its based on pvp stategies..

 

Quests

 

1st Quest: Change to Human Knight

2nd Quest: Change to Paladin

3rd Quest: Change to Phoenix Knight

 

Buffs

 

Improved combat

Improved condition

Improved movement

Improved shield defense

Improved critical attack

Improved magic

Acumen

Haste

Greater shield

Resist shock

Unholy resistance

Holy Resistance

Mental Shield

Divine Protection

Elemental Protection

Chant of Protection

Chant of Revenge

Resist Fire

Resist Aqua

Resist Wind

 

Song of Warding

Song of Vitality

Song of Wind

Song of Renewal

Song of Champion

Song of Earth

Song of Storm Guard

Song of Elemental

 

Dance of Concetration

Dance of Warrior

Dance of Fury

Dance of Protection

Dance of Alignment

Dance of Earth Guard

Dance of Aqua Guard

 

Equipment

 

You need Vorpal Heavy set and a acumen weapon.

For olympiad you need Elegia heavy set and vesper cutter foundation focus.

Also you can pvp with moirai heavy MW too,just to avoid stun effects.

 

Jewellery

 

Frintezza's necklase (A grade)

Zaken's Earring (S grade)

Earring of Antharas (S grade)

Ring Of Baium (S grade)

Beleth Ring Ant (S grade)

 

Dyes

 

Greater Dye of WIT <wit+4 int-4>

Greater Dye of CON <con+4 str-4>

Greater Dye of WIT <wit+1 int-1>

 

Attributes

 

Attributes its allways depends your server.

(if u want to know inform me about your server with a reply and we ll speak about it)

 

Certifications

 

Enchanter Class (Prophet, Warcryer, Inspector, Swordsinger, Bladedancer)

Counter_Barrier.jpgCounter Barrier : 3% chance to become temporarily invincible to damage (but not debuffs) when under attack for 5 seconds.

 

Warrior Class (Gladiator, Warlord, Bounty Hunter, Tyrant, Destroyer, Soul Breaker, Berserker)

Resist_Mental.jpgResist Triat : Increase resistance to Sleep, Hold, Paralize and Shock attacks by 5%

 

Summoner Class (Warlock, Elemental Summoner, Phantom Summoner)

Counter_Spirit.jpgCounter Spirit : 3% chance to increase M.Atk, P.atk by 7% and Cst.Spd, Atk.Spd by 8% when under attack for 15 seconds.

 

That certifications are based on pvp,now if u wonna go oly you can change Resist_Mental.jpgResist Triat to Counter_Haste.jpgChance Haste

 

Auguments

 

I suggest you  Agression active,or Shield passive.

 

Pvp Strategies

 

Dont forget that you are a tank,you are allways near your bishop and helping him by targeting the ppl that they are attacking him.

If you see that they are many close rangers near him you are using aura hate or vegeance if u see him that he goes down fast.

When your pt is getting attack from more than 1 pt you are using Shield Of Faith imediatelly.

Also you are allways using agressive to the ppl that make most dmg on your bishop.

Now if your bishop doesnt have many problems with the enemies ,you should agro the enemie's bishop so he can goes down faster.

 

Olympiad stategies

 

In Olympiad you should change the Beleth Ring to Ring Of Queen Ant.

Also, when you start buffing you should sacrifice your pet or the olympiad manager (you should let 1 empty buff to do this) ,then you use Angelic icon and Touch Of Life..

You are allways spamming agressive to your opponents ( remember ,it cost 0 mana)

Also when you are playing versus fighters dont forgot to use Spirit Of Phoenix,also when it goes lv3 you use Flame Of Icon.

 

Vs Mages

You should change your Frintezza's necklase to Necklase of Valakas.

 

Vs Daggers and Warrior classes

You are playing with Frintezza's necklase so you should stun them easy,most of the daggers got -str dyes.

 

Vs domi.

Buffs: ww,haste,last

whisper,might,conversation.

You start with rsk. Focus blunt and

angelic icon,you should be low hp and

not using tol at beggin. When your hp

is going down you use faith,when it goes down again, use TOL and change

to sword. Try to be with FI and deal

some more dmg. But just2know,you cant kill a decent

Domi. Your only hope is to make max

dmg with your icons,cleanse his

debuff if your pet is still alive,and keep

your hp up by spamming sacri. If u

manage to do that you may win by dmg.

 

As a tank your anti-class is only Soulhounds but if shackle lands you can win them easy.

 

If u want to be more specific for olympiad strategies reply me with his class.

Posted

What about dyes ??

 

Already posted.

 

Greater Dye of WIT <wit+4 int-4>

Greater Dye of CON <con+4 str-4>

Greater Dye of WIT <wit+1 int-1>

 

for Olympiad you change the 2nd one and you take the opposite.

  • 2 weeks later...
Posted

Its kinda based on pvp server? Cause its kinda hard to get valakas+tezza + such a equip at low rates.

 

Ye,oly neck makes good job too else take elegia one.

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



  • Posts

    • what pack you use  send me on discord for it
    • package custom.events.RandomZoneEvent; import java.io.File; import java.util.ArrayList; import java.util.List; import java.util.Random; import java.util.concurrent.ScheduledFuture; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.l2jmobius.commons.threads.ThreadPool; import org.l2jmobius.commons.time.SchedulingPattern; import org.l2jmobius.commons.time.TimeUtil; import org.l2jmobius.commons.util.IXmlReader; import org.l2jmobius.gameserver.managers.ZoneManager; import org.l2jmobius.gameserver.model.StatSet; import org.l2jmobius.gameserver.model.actor.Creature; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.quest.Event; import org.l2jmobius.gameserver.model.zone.ZoneId; import org.l2jmobius.gameserver.model.zone.ZoneType; import org.l2jmobius.gameserver.model.zone.type.RandomZone; import org.l2jmobius.gameserver.util.Broadcast; /** * Random Zone Event - Activates one random PvP zone temporarily. No modifica la clase de la zona: usa flags PvP en runtime. * @author Juan */ public class RandomZoneEvent extends Event { private static final String CONFIG_FILE = "data/scripts/custom/events/RandomZoneEvent/config.xml"; private static int EVENT_DURATION_MINUTES = 15; private static boolean _isActive = false; private ScheduledFuture<?> _eventTask = null; private final List<ZoneType> _availableZones = new ArrayList<>(); private ZoneType _activeZone = null; public RandomZoneEvent() { loadConfig(); loadZones(); registerZoneListeners(); } /** * Registra listeners a TODAS LAS ZONAS random */ private void registerZoneListeners() { for (ZoneType zone : _availableZones) { addEnterZoneId(zone.getId()); addExitZoneId(zone.getId()); LOGGER.info("[RandomZoneEvent] Registered listener for zone: " + zone.getName()); } } private void loadConfig() { new IXmlReader() { @Override public void load() { parseDatapackFile(CONFIG_FILE); } @Override public void parseDocument(Document doc, File file) { forEach(doc, "event", eventNode -> { final StatSet att = new StatSet(parseAttributes(eventNode)); final String name = att.getString("name"); for (Node node = eventNode.getFirstChild(); node != null; node = node.getNextSibling()) { if ("schedule".equals(node.getNodeName())) { final StatSet attributes = new StatSet(parseAttributes(node)); final String pattern = attributes.getString("pattern"); final SchedulingPattern schedulingPattern = new SchedulingPattern(pattern); final StatSet params = new StatSet(); params.set("Name", name); params.set("SchedulingPattern", pattern); final long delay = schedulingPattern.getDelayToNextFromNow(); getTimers().addTimer("Schedule_" + name, params, delay + 5000, null, null); LOGGER.info("[RandomZoneEvent] Event " + name + " scheduled at " + TimeUtil.getDateTimeString(System.currentTimeMillis() + delay)); } } }); } }.load(); } private void loadZones() { for (ZoneType zone : ZoneManager.getInstance().getAllZones(RandomZone.class)) { if ((zone.getName() != null) && zone.getName().toLowerCase().startsWith("random_zone")) { _availableZones.add(zone); LOGGER.info("[RandomZoneEvent] Loaded zone: " + zone.getName() + " (id=" + zone.getId() + ")"); } } LOGGER.info("[RandomZoneEvent] Total random zones loaded: " + _availableZones.size()); } @Override public void onTimerEvent(String event, StatSet params, Npc npc, Player player) { if (event.startsWith("Schedule_")) { eventStart(null); final SchedulingPattern schedulingPattern = new SchedulingPattern(params.getString("SchedulingPattern")); final long delay = schedulingPattern.getDelayToNextFromNow(); getTimers().addTimer(event, params, delay + 5000, null, null); LOGGER.info("[RandomZoneEvent] Rescheduled for " + TimeUtil.getDateTimeString(System.currentTimeMillis() + delay)); } } @Override public boolean eventStart(Player eventMaker) { if (_isActive) { if (eventMaker != null) { eventMaker.sendMessage("RandomZoneEvent already active."); } return false; } if (_availableZones.isEmpty()) { Broadcast.toAllOnlinePlayers("[RandomZoneEvent] No zones configured."); return false; } _isActive = true; Broadcast.toAllOnlinePlayers("⚔️ Random Zone Event has started!"); _eventTask = ThreadPool.schedule(this::activateRandomZone, 5_000); return true; } private void activateRandomZone() { _activeZone = _availableZones.get(new Random().nextInt(_availableZones.size())); _activeZone.setEnabled(true); Broadcast.toAllOnlinePlayers("🔥 Random Zone Event: " + _activeZone.getName() + " is now PvP for " + EVENT_DURATION_MINUTES + " minutes!"); _eventTask = ThreadPool.schedule(this::eventStop, EVENT_DURATION_MINUTES * 60 * 1000L); } @Override public boolean eventStop() { if (!_isActive) { return false; } _isActive = false; if (_eventTask != null) { _eventTask.cancel(true); _eventTask = null; } if (_activeZone != null) { _activeZone.setEnabled(false); Broadcast.toAllOnlinePlayers("🏁 Random Zone Event ended. " + _activeZone.getName() + " is back to normal."); _activeZone = null; } else { Broadcast.toAllOnlinePlayers("🏁 Random Zone Event ended."); } return true; } @Override public void onEnterZone(Creature creature, ZoneType zone) { if (!_isActive || (_activeZone == null)) { return; } if ((zone == _activeZone) && creature.isPlayable()) { creature.setInsideZone(ZoneId.PVP, true); if (creature.isPlayer()) { creature.sendMessage("Esta zona está en modo PvP temporalmente."); } } } @Override public void onExitZone(Creature creature, ZoneType zone) { if (!_isActive || (_activeZone == null)) { return; } if ((zone == _activeZone) && creature.isPlayable()) { creature.setInsideZone(ZoneId.PVP, false); if (creature.isPlayer()) { creature.sendMessage("Abandonaste la zona PvP temporal."); } } } @Override public boolean eventBypass(Player player, String bypass) { return true; } @Override public String onEvent(String event, Npc npc, Player player) { return super.onEvent(event, npc, player); } @Override public String onFirstTalk(Npc npc, Player player) { return null; } public static void main(String[] args) { new RandomZoneEvent(); } } i have this but its not working
    • ZonePvPSpawnBossRadio=0 ZonePvPSpawnBossBarakiel=0 at the Customs.ini in L2Server folder. Im prety sure this is it because i had the same problem with you in cruma 1 floor for example and i couldn't fix it but i fixed it finally by changing these 2 lines
    • Siege Reward Start PM Msg Rework Config root BossDieAnnounce and BossDieSound in the L24Team.properties and Config.java files for global raid boss death notifications and sounds. Adds a new reward_list table to the DB.sql file to track castle rewards. Improves character creation logic for thread safety and validation. Adds extensive state checks to the RequestEnchantItem method to prevent enchantments during inappropriate player states. Fixed auto-attack animation bug (there was no attack animation, only damage animation) Clean Code Other fixes I forgot to list! Java 14 Fixed issue where deleting a character would prevent it from leaving the screen or being removed, or even after a delete CD (it would only exit when re-logging in or creating a new character). Added Premium System from the other C2 project (Needs testing and improvement). Added the "Improved" Community Board (incomplete).
  • 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