Jump to content

Recommended Posts

Posted (edited)

As i see your gameplay is interesting.!
Emphasize on balancing classes, so pvp/oly be more interesting!

Edited by Papakwtsos
Posted (edited)

As i see your gameplay is interesting.!

Emphasize on balancing classes, so pvp/oly be more interesting!

 

As we mentioned on our features list, We emphasize more on gameplay rather than fancy addons and etc. Everything will be flawless. Server Features list will be updated!

Edited by L2Mytheon
Posted

Hello people today we brought  you bunch of updates! 

 

`Updated Raid&Grandboss Droplists. Raid and Grandbosses now drops retail sealed equipment, And Sailren, Frintezza, Van Halter, Now drops retail S-Grade Weapons with SA. Raid's Candy item added on every single boss! You can exchange Raid's Candy for exclusive items.

 

`Added Clan Reputation Scroll: Exclusive Item, Player must be clan leader and his clan must be atleast 5 level in order to use this item. Clan Reputation Scroll grants clan reputation points.

 

`Added Sign of Nobility Item: Players can become Vip by using the item! Nobility sign boost players Xp rate to x1,5 Sp rate 1,5 Adena drop rate x2 Drop item rate x2

 

`New special npc buffer has been added.

 

`Noblesse Quest has been modified. More details about what is modified will be posted later.

 

`Abandoned Camp now is a Multifiction (Flag zone)

 

`Added Market Stone item on every starter class inventory! You can open your Private/Offline shops by clicking on it.

 

More is about to come!

Posted (edited)

alot of brazilian people are waitin eagerly to join this server mate 10-15 clans + are waitin you or more :D :)

 

I appreciate your kind words brother, Alot of people are waitin thats the truth, We will not fail our players :)

 

 

`Update. Expertise penalty: Players can equip whatever they like but theres expertise penalty for armors! If Adventurer wears heavy there will be grady penalty. Theres no penalty for Weapons you can use whatever fits more to your gameplay.

 

`Update. .Stat command has been added. Now you can see other players stats detailed by targetin them.

 

 

Well our old man is ready!

 

 

uNdBkO8.png

 

Edited by L2Mytheon
Posted

nice features. think more about the rates. you need a lot of advertise if u want people on that 75x server. good luck.

 

Thanks brother, We will do our best! There's one truth that this is not a cheap project nothing will be easy but we will overcome every obstacle!

Posted

Glad to see server like this...all other server's its the same shit :D

 

Thanks for your kind words!

 

 

 

`Update

Players now can buy 60% S-Grade Weapon Recipes from Coin-Convertions section of our Event&Pvp store Npc `Alaric!

Players can upgrade 60% S-Grade Weapon Recipes to 100% If they own the required items for the transaction.

 

60% Recipes cost some ancient adenas and Palladium! Ancient adenas can be found only by joining Seven Signs!

1st way: Ancient Adenas can be exchanged with: Wind,Earth,Water Soulmantras at coin exchanger!

2nd way: Ancient Adenas can be exchanged with: Retail Wind,Water,Fire Sealstones. 

Never underestimate Dwarfs Again! A Huge change in Warsmith and Scavenger Class is coming!

 

Players can do the Vanquish the Remnants quest and gather Red,Blue,Golden Crystal Fragments in order to get Platinum coin!

With platinum coin you can buy Sealed S-Grade Armor and Weapons from our Special Equipments Vendor `Isis`

This is the common way to get geared up with S-Grade equipment! Recipes are the second way. Both methods seems easy but you have to farm Wind,Earth,Water,Fire Soulmantras from Elven Ruins! You can enter Elven Ruins by giving the required item `Passage Scroll` to gatekeeper `Siff`

Soul Crystals are required to SA Weapons! Players can buy stage 10 Soul Crystals from our Common Marketplace `Theodor` Life Crystals can be upgraded anywhere, Its up to you! Every Raidboss can level up the the Soul Crystals. Tyrannosaurus and Anakazel is Reccomenden for this process.

 

More is about to come!

 

 

jW56ufA.jpg

 

 

Pvp Dark Crystal Robe armor set is done!

 

Theres not a big difference between A grade retail and S grade pvp (which is retail too) Dark Crystal Robe armor! Mage classes always had a problem between major arcana robe and dark crystal robe now the problem is solved! 

 

 

P26ghHR.jpg

 

`Update

 

New skill has been added! Craft: Moonstone, This is a special crafting skill for Maestro Class! Creates 5 Moonstones and consumes 200 palladium! 

Guest
This topic is now closed to further replies.



  • Posts

    • hello, i want to wtt my charracter in l2elmorelab 1x harbor for 1.5kkk adena in l2reborn 10x new. Or if you interested tell me your offer. :)) Clean Mail 30 lvl Cleric Naked   Updated.
    • package ai.npc.NFWalker; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Random; import l2r.gameserver.enums.CtrlIntention; import l2r.gameserver.model.Location; import l2r.gameserver.model.actor.L2Npc; import l2r.gameserver.model.quest.Quest; import l2r.gameserver.network.clientpackets.Say2; import l2r.gameserver.network.serverpackets.NpcSay; public class NFWalkerAI extends Quest { private static final int WALKER_NPC_ID = 20116; private final Map<String, Route> routes = new HashMap<>(); private final Map<Integer, Integer> npcIndexes = new HashMap<>(); private final Map<Integer, Boolean> npcReverse = new HashMap<>(); private final Map<Integer, String> npcCurrentRoute = new HashMap<>(); public NFWalkerAI() { super(-1, NFWalkerAI.class.getSimpleName(), "ai/npc/NFWalker"); loadRoutes(); addSpawnId(WALKER_NPC_ID); } private void loadRoutes() { // Route 1 Data Route route1 = new Route("route1"); route1.addPoint(new RoutePoint(0, 149363, 172341, -941, 0, false, "")); route1.addPoint(new RoutePoint(1, 148568, 172328, -980, 5, true, "Puff")); route1.addPoint(new RoutePoint(2, 148536, 172792, -980, 0, false, "")); // Route 2 Data Route route2 = new Route("route2"); route2.addPoint(new RoutePoint(0, 149363, 172341, -941, 0, false, "")); route2.addPoint(new RoutePoint(1, 150248, 172328, -980, 5, true, "Rise my children! Bring me the servants of the god! Let them be offered to our god Bifrons!")); route2.addPoint(new RoutePoint(2, 150248, 172776, -980, 0, false, "")); // Add routes to the map routes.put("route1", route1); routes.put("route2", route2); } @Override public String onSpawn(L2Npc npc) { if (npc.getId() == WALKER_NPC_ID) { selectInitialRouteForNpc(npc); } return super.onSpawn(npc); } @Override public String onAdvEvent(String event, L2Npc npc, l2r.gameserver.model.actor.instance.L2PcInstance player) { if (event.equalsIgnoreCase("move")) { moveNpc(npc); } else if (event.equalsIgnoreCase("check_reached")) { checkIfReached(npc); } return null; } private void moveNpc(L2Npc npc) { String routeName = npcCurrentRoute.get(npc.getObjectId()); Route route = routes.get(routeName); Integer pointIndex = npcIndexes.get(npc.getObjectId()); if (route != null && pointIndex != null) { RoutePoint point = route.getPoints().get(pointIndex); if (point.isRun()) { npc.setRunning(); } else { npc.setWalking(); } if (!point.getChat().isEmpty()) { npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), point.getChat())); } npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(point.getX(), point.getY(), point.getZ())); // Log movement intention System.out.println("NPC " + npc.getObjectId() + " moving to " + point.getX() + ", " + point.getY() + ", " + point.getZ()); // Schedule a check to see if the NPC has reached its destination startQuestTimer("check_reached", 1000, npc, null); } } private void checkIfReached(L2Npc npc) { String routeName = npcCurrentRoute.get(npc.getObjectId()); Route route = routes.get(routeName); Integer pointIndex = npcIndexes.get(npc.getObjectId()); if (route != null && pointIndex != null) { RoutePoint point = route.getPoints().get(pointIndex); Location currentLocation = npc.getLocation(); Location targetLocation = new Location(point.getX(), point.getY(), point.getZ()); // Check if the NPC has reached the target location if (currentLocation.equals(targetLocation)) { // Log that the NPC has reached the target System.out.println("NPC " + npc.getObjectId() + " reached target " + targetLocation); // Schedule the next movement startQuestTimer("move", point.getDelay() * 1000, npc, null); if (!npcReverse.get(npc.getObjectId())) { pointIndex++; if (pointIndex >= route.getPoints().size()) { npcReverse.put(npc.getObjectId(), true); pointIndex = route.getPoints().size() - 1; } } else { pointIndex--; if (pointIndex < 0) { npcReverse.put(npc.getObjectId(), false); pointIndex = 0; // Choose a new route after completing the current one in both directions switchRouteForNpc(npc); return; } } npcIndexes.put(npc.getObjectId(), pointIndex); } else { // Check again after 1 second startQuestTimer("check_reached", 1000, npc, null); } } } private void selectInitialRouteForNpc(L2Npc npc) { // Randomly select either route1 or route2 String selectedRouteName = "route" + (new Random().nextInt(2) + 1); npcCurrentRoute.put(npc.getObjectId(), selectedRouteName); npcIndexes.put(npc.getObjectId(), 0); npcReverse.put(npc.getObjectId(), false); startQuestTimer("move", 5000, npc, null); // Log initial route selection System.out.println("NPC " + npc.getObjectId() + " selected initial route " + selectedRouteName); } private void switchRouteForNpc(L2Npc npc) { String currentRoute = npcCurrentRoute.get(npc.getObjectId()); String newRoute = currentRoute.equals("route1") ? "route2" : "route1"; npcCurrentRoute.put(npc.getObjectId(), newRoute); npcIndexes.put(npc.getObjectId(), 0); npcReverse.put(npc.getObjectId(), false); startQuestTimer("move", 5000, npc, null); // Log route switching System.out.println("NPC " + npc.getObjectId() + " switched to route " + newRoute); } private static class Route { private List<RoutePoint> points = new ArrayList<>(); public Route(String name) { } public void addPoint(RoutePoint point) { points.add(point); } public List<RoutePoint> getPoints() { return points; } } private static class RoutePoint { private int id; private int x, y, z, delay; private boolean run; private String chat; public RoutePoint(int id, int x, int y, int z, int delay, boolean run, String chat) { this.id = id; this.x = x; this.y = y; this.z = z; this.delay = delay; this.run = run; this.chat = chat; } public int getId() { return id; } public int getX() { return x; } public int getY() { return y; } public int getZ() { return z; } public int getDelay() { return delay; } public boolean isRun() { return run; } public String getChat() { return chat; } } } I looking for help, with this, the npc not start to move. Im trying to create, an NPC wich have multiple walk routes basic logic is  random pick a route complite the route  like Route 1 start form zero (0 -> 1 -> 2(or more) -> 1 -> 0) When the npc return to 0, the script should pic the other route and start again.  And if there is a message like point 1 here     "route1.addPoint(new RoutePoint(1, 148568, 172328, -980, 5, true, "Puff"));" The npc should display the chat message. Currently my problem is the npc not moving, but if I manage it to start moving its randomly move between the route 1 and 2 set of coordinates. Currently for me its  a nightmare. I hope anyone can help somhow.
    • We are certainly not an ambulance, but we will definitely cure you of blacklists and empty pockets. Live freely with SX! Each of you will receive a trial version of SX to familiarize yourself with the product, all you have to do is post in this thread
    • qual e o valor pra atualizar o java da soucer ?
  • Topics

×
×
  • Create New...