Jump to content

Recommended Posts

  • 2 weeks later...
Posted

ep filos ice lathos nomizw dyes int + 4  men -4 auto to dyes dn benei ston bishop

 

Αυτό λέμε 2 σελίδες περίπου...

  • 2 weeks later...
Posted

1on H bara sou ine gia tn xomateri ;P 2on kala ta exis ftiaksi ta buff dn mporo na po ala gia na peksis me bishop prepi na sou aniksi h tripa gia na piasis skill na varas kai se staff sigekrimena ara dn simferi poli to class :/

Posted

Ο bishop exparei αρκετά εύκολα όταν φτάσει 73 ;)

 

Από αυτό το lvl και έπειτα μπορεί να κάνει το quest και να μπει pagan. Εκείνο το μέρος είναι γεμάτο undead με x4 ή x5 HP ( δε θυμάμαι ακριβώς), το οποίο συνεπάγεται σε τρελό exp, καλά drops (mj boots/gloves/ helmet, nm boots/gloves/helmet) και καλά adena αλλά ολίγον άθλιο sp. Βέβαια τα undead με τόσο hp δεν τα τρως με might of heaven αλλά με turn undead. Μόλις δεις και πιάσει lethal το turn undead χώνεις ένα might of heaven και τελείωσε. Στα 73 lvl οι πιθανότητες να πιάσεις turn undead στο Pagan είναι κοντά στις 1/3 (αρκετά καλές, δηλαδή). Όσο ανεβαίνεις lvl, φυσικά, οι πιθανότητες να πιάσει το lethal αυξάνονται. Τέλος, όταν ο bishop γίνει τελικά cardinal μπορείς να κάνεις +1 attack το turn undead. Όταν γίνει + στο attack σκάει και λίγο damage. Συνεπώς τα mobs θα πέφτουν με 1 hit. (lethal + το λίγο damage από το +1 attack. )

 

@darkslayer O Bishop πάντα παίζει με acumen όπλο σε pvp. Σε farm ίσως χρησιμοποιήσει και κανά conversion...

 

Επίσης ο Bishop και γενικά τα healer και buffer class δε μπορούν να βάλουν dyes για - INT. Τα καλύτερα dyes για bishop imo είναι...

 

wit+ 3 / men - 3

wit+ 2 / men - 2

con +4 / str - 4

 

Συμφωνώ.

Posted

Συμφωνώ.

Συμφωνείς με τον εσωτερικό σου αριστερό ; Πας και εσύ χάλασες !

Posted

Συμφωνείς με τον εσωτερικό σου αριστερό ; Πας και εσύ χάλασες !

 

Δεξιός είναι. Φαίνεται από το name του. Ένας αριστερός θα έβαζε απλά "Φλύαρος"...

Posted

Δεξιός είναι. Φαίνεται από το name του. Ένας αριστερός θα έβαζε απλά "Φλύαρος"...

Τώρα που το λες έχεις απόλυτο δίκιο , εσύ είσαι ο εσωτερικός του αριστερός.

Posted

Τώρα που το λες έχεις απόλυτο δίκιο , εσύ είσαι ο εσωτερικός του αριστερός.

 

Ε ναι, εγώ είμαι με τους Ρωμαίους, όχι με τους Έλληνες.

Posted

Ε ναι, εγώ είμαι με τους Ρωμαίους, όχι με τους Έλληνες.

Μαλακίες λες Ολλανδός είσαι με Ρωμαϊκές ρίζες.

Posted

Μαλακίες λες Ολλανδός είσαι με Ρωμαϊκές ρίζες.

 

Ολλανδοϊταλός...

Posted

Ξέχασες κάτι πολύ σημαντικό αγαπητέ συμπαίκτη και αναγνώστη αυτού του forum.

Καλό θα ήταν το άτομο που θα ήθελε να παίξει με ένα τέτοιο class να είχε από πριν αρκέτες lifestones, διότι χωρίς active skill ο συγκεκριμένος παίκτης είναι ποlύ αδύναμος και συνάμα άχρηστος.

 

Ευχαριστώ εκ των προτέρων και με συγχωρείτε για τα ελληνικά και τους τόνους, απλά ένιωσα πολύ γαμάτος όταν πρωτοδιάβασα αυτό το εξαιρετικό guide που έκρυβε τόσες ανεξερεύνητες και ασύλληπτες αλήθειες.

Interlude player?

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

    • im using l2jmobius
    • 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
  • 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