Jump to content

Recommended Posts

Posted

Really great work !

 

Is someone able get to "server choose" screen like on movie ? Seems mine l2.ini or walker wont work like that :(

Posted

bro nice video i understand with that quality but... i rly dont understand the steps.(maybe make a step by step guide if you want). and btw thx for your great ideea.

Posted

bro nice video i understand with that quality but... i rly dont understand the steps.(maybe make a step by step guide if you want). and btw thx for your great ideea.

More detail explanation would be great, becouse i trying already full 2 days and stack at this step:

===========================================

18:54:07 - Debug build

18:54:07 - Using Proxy: False

18:54:07 - Starting... SOCKS[1999] LOCAL[2106] OOG[2107]

18:54:15 - ~proxy_port 1999

18:54:15 - SOCKS out port: 1999

18:54:28 - ~proxy_ip 77.247.166.172

18:54:28 - SOCKS out IP: 77.247.166.172

18:54:35 - New local connection[2106]

18:54:36 - Local LS connection->Handle

===========================================

Posted

So, if i understand it correctly it's very similar of I did on my last server I proxificate the conection with Proxifier to 127.0.0.1::1777 SOCKS 5 and in this proxy i setted the WPC of Sauron with the scripts and then i run l2walker IG and login in the server with the connection kept proxificate in the sauron's wpc so i can pass the login, it's the same thing but u mustn't use any kind of script only u must run the program to reproxificate the connection to walker client no? But for this u must use a Proxifier program or something like that no?

Well in other order of things THANKS U FOR UR TIME AND KNOWLEDGE!

Posted

So, if i understand it correctly it's very similar of I did on my last server I proxificate the conection with Proxifier to 127.0.0.1::1777 SOCKS 5 and in this proxy i setted the WPC of Sauron with the scripts and then i run l2walker IG and login in the server with the connection kept proxificate in the sauron's wpc so i can pass the login, it's the same thing but u mustn't use any kind of script only u must run the program to reproxificate the connection to walker client no? But for this u must use a Proxifier program or something like that no?

Well in other order of things THANKS U FOR UR TIME AND KNOWLEDGE!

Me too was using WPC of Sauron and script at OOG, now as far as i understood, we need use L2Fork and program to proxing to l2Fork, for example proxifier. But i still not got success :/

Posted

More detail explanation would be great, becouse i trying already full 2 days and stack at this step:

===========================================

18:54:07 - Debug build

18:54:07 - Using Proxy: False

18:54:07 - Starting... SOCKS[1999] LOCAL[2106] OOG[2107]

18:54:15 - ~proxy_port 1999

18:54:15 - SOCKS out port: 1999

18:54:28 - ~proxy_ip 77.247.166.172

18:54:28 - SOCKS out IP: 77.247.166.172

18:54:35 - New local connection[2106]

18:54:36 - Local LS connection->Handle

===========================================

 

why do you change the out-proxy info? proxy_port and proxy_ip are for proxying the resulting gameserver connection.

 

You stop at 18:54:36 - Local LS connection->Handle

can you select the server in the walker client?

Posted

As i see it can be easier, if you save the login packets, and when you log in with walker you replace the walker's login packets with the saved one. Walker proxy did the same thing when was c4, but it can't understand the il packets :(

Posted

1 question. what version of walker u use ?

i found one oog wlk but i didn't done anything...

i dwn and the l2fork and i follow the instructions...

if u can help i will apreciate it :)

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