Jump to content

Recommended Posts

Posted (edited)

V_st_i_ek.jpg


 


L2Progressive Project


(Lindvior, Ertheia)


 


Website


https://www.facebook.com/pages/L2-Progressive-Team/1479179225688315


 


Email


l2jprogressive@gmail.com


 


On Facebook page you can contact us, check screenshots and updates.


 


 


Hello and welcome in this topic. In this topic you will be familiar with our team and our works.


 


First, a few words before the performance.


Pack is recommended for low rates, medium and PvP server. With our configuration you can configurate almost all.


 


We are private team! There are 6 developers developing our core and datapack part. Our pack is based on Java 8. No custom features like customizing raids, npc, skills. Our source code for our project is L2Off.


 


Ertheia client is still in testing !


 


So now I will talk about core side.


* Our core is based on Java 8 and there not exist any warnings (all fixed)


* Our core is fully configurable for your customization


Easy configurations like L2jservers


Minimum memory usage 1GB


* Community server is implemented in core


Our core is stable for 3000-5000 players


 


Now I write something about datapack part.


* All scripts are wrote in Java


* Our htm text are optimized for minimum storage usage


* All features done up to Lindvior last features


* All static data moved from SQL to XML format for better stability of server


* Our skills formulas are based on L2Off, so there not exist custom skills!


Our NPC, RAIDs, MONSTERs are detail work. Stats, drop are confirmed by L2Off


* We have implelemted Spawn Zoner, so we using random spawn for monsters.


 


Some customs works


There exist some customs works like some events and voiced commands. Your server will be custom if you set some custom configuration in configs !


 


Price


Price is only 40 Euro. (Source code)


We accept PayPal or Skrill payment


Geodata files are for 10 Euro


 


 


 


Screenshot from testing server


10481988_1479195429020028_46821450129416


 


 


If you want quallity server developed by professional team with support, just contact us on Facebook page.


We make your server better !


Edited by L2Progressive
Posted (edited)

"We are private team! There are 6 developers developing our core and datapack part. Our pack is based on Java 8. No custom features like customizing raids, npc, skills. Our source code for our project is L2Off."

 

What do you mean "Our source code for our porject is L2OFF" ?

And it seems a bit to cheap.. for such a files.. 40 eur. lol.
 

Edited by Laguna
Posted

"We are private team! There are 6 developers developing our core and datapack part. Our pack is based on Java 8. No custom features like customizing raids, npc, skills. Our source code for our project is L2Off."

 

What do you mean "Our source code for our porject is L2OFF" ?

And it seems a bit to cheap.. for such a files.. 40 eur. lol.

 

 

For check how works quests or ai. We using L2Off server.

Posted

For check how works quests or ai. We using L2Off server.

Am I the only one who doesnt understand ? LOL.

Your pack is based on JAVA but using L2OFF(l2j) project as a base ?

Posted (edited)

Am I the only one who doesnt understand ? LOL.

Your pack is based on JAVA but using L2OFF(l2j) project as a base ?

Nop, you don't get it .. It's java based project but they check on l2off files/servers the behavior and they code the same way on their pack ;)

Edited by SweeTs
Posted (edited)

Nop, you don't get it .. It's java based project but they check on l2off files/servers the behavior and they code the same way on their pack ;)

And selling his source for 40 eur ? Seems like a scam.

 

Plus what L2OFF files they are comparing ? lol..

 

Is it even possible to code JAVA like C++ ? I dont think so.

Edited by Laguna
Posted

And selling his source for 40 eur ? Seems like a scam.

 

Plus what L2OFF files they are comparing ? lol..

 

Is it even possible to code JAVA like C++ ? I dont think so.

 

We just started to works on Ertheia client

answer us the question Plus what L2OFF files they are comparing ? lol..

Posted

And selling his source for 40 eur ? Seems like a scam.

 

Plus what L2OFF files they are comparing ? lol..

 

Is it even possible to code JAVA like C++ ? I dont think so.

Who knows. Maybe "official" server :troll:

 

Yeah, it is. You can code the AI like it's on off, if you got the file / tested various opportunities. Anyway :happyforever:

 

40 euro ? It's not that big price, so ppl would buy it. More like a marketing trick :not bad:

Posted

We running on Java, but we official informations for developing our code.

Like Mobius - its a custom pack - old features Dragon Valley is customized and others location

 

So, we reworked these location to most retail.

 

And about core side, we totally debug it and fix most warning, connections and decrepted methods.

Optimized and improved some functions (custom features for disabled/enable)

Posted

We running on Java, but we official informations for developing our code.

Like Mobius - its a custom pack - old features Dragon Valley is customized and others location

 

So, we reworked these location to most retail.

 

And about core side, we totally debug it and fix most warning, connections and decrepted methods.

Optimized and improved some functions (custom features for disabled/enable)

price are to damn low for this, so i guess........maybe the 50% of what you say arent implemented

 

@sweets well he gives source too what a marketing trick? if someone shares them? the trick is gone

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Posts

    • Verify if following is supposed to be the way to handle movement npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(point.getX(), point.getY(), point.getZ())); For me, it's not enough. And if it's the case, whole AI system is probably buggy.
    • 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
  • Topics

×
×
  • Create New...