Jump to content

classic (Private Platform) L2 ENDURE X10 RETAIL LIKE SERVER


Recommended Posts

Posted

WEBSITE: http://www.lineage2endure.com/

Forum: http://lineage2endure.com/forum/index.php?sid=ca761217ae7ea4bcba76d0bacd433752

 

open2o.jpg

 

 

Your x10 will open the 28/01/13 at 21:00 GMT +2, Endure will keep all retail classic gameplay with some "custom" like NO sub-class quest and NO profession quest for make your gameplay experience AWESOME

 

Endure Can Garantee:

* Legendary OFFICIAL HIGH FIVE PART 5 PLATFORM [NOT JAVA];

* Unrivaled security and safety;

* Exceptional quality and stability

* Active Staff

* Daily Events

 

 

Client Supported:

High Five

Game Rates:

XP/ SP/ Adena/: x10

Drop/ Spoil: x5

Party XP/ SP: x1.2

Manor Drop: x2

Epic Jewels Drop Chance: x1

Mercenary Guard Price: x4

Weight Limit: x4

Quest Rates:

XP/ SP/ Adena Reward: x4

Item Reward: x2

Quest Item Drop Rate: x2

Buff Duration:

Buff duration are totally retail like

Retail enchant success rate, safe +3 / +4 on one-part armor

Auto Loot (Auto Pickup) enabled.

Gameplay Security:

Anti-Hack System.

Box limitation currently to 2 clients per PC.

Custom Addons:

Olympiad Anti-Feeding Protection which doesn’t affect gameplay.

Offline Private Stores: Set your private store and click “Exit”.

Wedding Event.

Blacksmith of Mammon & Merchant of Mammon announcement.

Voice command .cfg to enable or disable EXP gaining.

Shift+Click to see droplist in game.

Daily Events.

NPC class changer (no quest for change class)

NO SUBLCASS QUEST

 

Posted

so is "classic" low rate server?

if you keep it well can be a great server

dear whirlwind

Endure is classic low rate server without any customs but there are some things more easy to do for avoid the boring part of the game like NO class quests NO sub quest

server goal is to become an important point for European low rate server

if you have some question feel free to join your forum and we will answer

have a good day  ;)

Posted

dualbox allowed?

Box limitation currently to 2 clients per PC.

Currently we think is the best choise for a low rate server  ;)

for more info you can read the website or join in your forum

 

L2 Endure Staff

Posted

Legendary OFFICIAL HIGH FIVE PART 5 PLATFORM [NOT JAVA] thats sounds so cool, but i guess this will be just another server with overworld.su files.Mid rates failed hardly last time, cuz no one wont play anymore on servers on this ru files with alt +b.So lets try server w/o buffs ?  :y u no?:

Posted

Legendary OFFICIAL HIGH FIVE PART 5 PLATFORM [NOT JAVA] thats sounds so cool, but i guess this will be just another server with overworld.su files.Mid rates failed hardly last time, cuz no one wont play anymore on servers on this ru files with alt +b.So lets try server w/o buffs ?  :y u no?:

Endure files are private and not shared  ;D

btw Endure is based on old styles server and not mid rates with npc buffer (server with npc buffer are not l2)

This game is based between cooperation of person and classes at last is how NCSFOT make it and we want to offer the same thing with more confortable rates

Server is full protected against ddos and main goal is to become a reference point of European people about low rate server

 

Guest
This topic is now closed to further replies.



  • 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
  • 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