Jump to content

Recommended Posts

Posted

 

Opening April 26 at 19:00 (UTC +3)  https://lineage2dex.com/en/sign-in
Open Beta Test from April 22

4580

This is pre-announcing of NEW season server, so we want to share some key points of it.
Full details with road map, patch notes we will announce a bit latter

Main features

  • Modern Classic client (less lags, smoother gameplay, a lot of useful interface features).
  • Anti-bot protection - we use our own system in combine with popular solutions like AAC, so in the end our project have one of the best anti-bot shield exists.
  • Buff book to buff yourself or your summon/pet. With regular buff book you can create only 1 buff profile, if you need more - get the modern buff book and create up to 10 profiles!
  • Daily rewards - login to the game every day and get rewards.
  • Expanded subclass slots - you can have subclasses from the beginning and expand up to 10.
  • Class/Gender change - you can change your main class and gender if you want.
  • Masterwork items (can be obtained by crafting or farming RBs, have better bonuses than regular items).
  • Item Broker Auctions in towns can sell some epic jewelry and other useful goods for adena (3 times per week).
  • Giran Harbor Fair - daily event which allows you to get temporary epic jewelry a lot of other rare items for adena.
  • Talents - special tree with passive skills which will help you to tune your class better.
  • Team vs Team event.
  • Episodes - we open new content step by step to keep you engaged, bring more fun and extend the game. Episodes reveal following features:
    • Hellbound Island
    • Isle of Preyer, with new content, new Dynasty gear
    • PvP item improvement allows you to improve your items with additional bonuses.
    • Charms can be equipped in one of the special slots that open when wearing a bracelet. Each type of charm grants the wearer certain bonuses
    • Instance Zones
    • New Epic Bosses - Freya, Beleth, Tiat, Trasken
    • Cyclic macros (macros restarts when finishes)


Why choose Dex?
We have destroyed the stereotypes that PvP servers live for a couple of weeks.
Our Union x50 server proves it (working from April 2020 with good online).
We have enough high-end content that will allow you to maintain interest in the game all the time!
And we are always working on improving the game and adding new interesting activities and content.

Seasonal servers have a road map with planned list of changes to keep you engaged.
When the time comes the server will be merged with the Union server.
So if you're new on Dex, you can start from zero like all othe players on NEW (seasonal) server.
All your items and characters will be safe, and you can continue play when season over on our main server - UNION.

High-end content (unlocked over episodes)
Hellbound Island

Spoiler

Hellbound is an endgame location mostly for parties, but if you will be well geared you can farm most spots solo.
You can get to Hellbound with help of gatekeepers.
Hellbound contains multiple raid bosses and entrance to new epic boss Beleth. Drop from raid bosses and from entire island in general is very valuable.
Monsters at Hellbound can drop special Hellbound Coins which can be exchanged to some useful goods at the Hellbound Trader Joseph.

Isle of Prayer

Spoiler

Isle of Prayer is a high-end location, divided into several areas, each tailored for different classes and playstyles. By completing quests and farming mobs on IoP, you can obtain Dynasty equipment.

You can read more about specific features and spots from our wiki:

The most popular Lineage 2 classic server waiting for you. Download L2 client and play! You expect grandiose battles and incredible siege. The adrenaline just rolls!

The most popular Lineage 2 classic server waiting for you. Download L2 client and play! You expect grandiose battles and incredible siege. The adrenaline just rolls!

image.png.e029f1ed571c8ac231fd84e793b9a221.png lineage2dex.com



We will be glad to hear any comments and suggestions on our discord channel, join it we have very friendly community there 
- Join discord

 

  • 4 weeks later...
Posted
Lineage2Dex Interlude+ x50 Server launches TODAY!
   
 
Lineage2Dex Grand Opening

The wait is over – the Lineage2Dex Interlude+ x50 Server launches TODAY!

Grand Opening - April 26 at 19:00 (UTC+3)
Over 10,000 registered accounts are ready to dive in!

Beta with massive activity over, thx all who participate on it!
It's time to begin your real Jorney!


👉 Read full roadmap

👉 Full server description

👉 Download and registration


The server will be split into 3 stages, each featuring multiple content episodes.

Stage 1: April 26 – May 18

Welcome to the Classic Interlude Phase.
This stage is built with minimal custom content, focused on delivering that pure Interlude experience. It’s perfect for both new players unfamiliar with our project and veterans who enjoy a traditional start.
Expect a smooth and nostalgic journey with familiar mechanics.

Stage 2: May 19 – June 22

Time to expand the world!
As most Interlude content gets completed, we gradually introduce new elements. Hellbound will open first, followed by weekly content updates.
Midway through this stage, the Isle of Prayer will become available — a new zone featuring Dynasty Gear and fresh challenges.

Stage 3: From June 23

Welcome to full content access!
Some location become to High-level location, offering great reward!
Once this phase concludes, a full merge with Union server will take place — and yes, all your characters and items will carry over safely.


We wish everyone a smooth start, fair play, and tons of fun on the new x50 server!
See you in-game!

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