-
Posts
248 -
Joined
-
Last visited
-
Days Won
2 -
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by Williams
-
did not solve I was using VS Code to compile
-
I went to compile with MinGW and it gave errors
-
did not work
-
Hello, I'm having this error after I modify my system's dsetup, I don't know if I'm compiling wrong, can someone help me? Here my unpacked dsetup.dll -> dsetup
-
Source aCis - another CRAPPY interlude server
Williams replied to Tryskell's topic in Server Shares & Files [L2J]
I use the Free 401 version he must have already fixed it how am I going to share something he has already done? -
Source aCis - another CRAPPY interlude server
Williams replied to Tryskell's topic in Server Shares & Files [L2J]
Is the latest version suitable for live servers? Have you heard stories that aren't what you tell me? Na 401 tem travamentos bug or auto consumption of memory and CPU usage is constant. I fixed those things in my aCis. -
I updated for you Restore Effects toggle by LordPanic (github.com)
-
Exception in thread "IPv4Filter" Exception in thread "pool-2-thread-2" java.lang .OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space Exception in thread "pool-2-thread-4" Exception in thread "pool-2-thread-5" java .lang.OutOfMemoryError: Java heap space Exception in thread "MariaDB-pool-1-appender-8" java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-1" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-6" Exception in thread "pool-2-thread-6" Exception in thread "MariaDB-pool-1-append er-9" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "MariaDB-pool-1-appender-9" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "MariaDB-pool-1-appender-10" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "SelectorThread-25" Exception in thread "SelectorThread-25" Exception in thread "pool-2-thread-7" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-8" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-9" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-7" Exception in thread "pool-2-thread-8" java.lang.OutOfMemoryError: Java heap spac e Exception in thread "pool-2-thread-10" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-10" Exception in thread "pool-2-thread-11" java.lang.OutOfMemoryError: Java heap spa ce Exception in thread "pool-2-thread-13" Exception in thread "pool-2-thread-12" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-13" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-12" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-15" Exception in thread "pool-2-thread-19" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-19" Exception in thread "pool-2-thread-21" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-21" java.lang.OutOfMemoryError: Java heap space Exception in thread "pool-2-thread-24" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-24" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-27" Exception in thread "pool-2-thread-28" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-28" Exception in thread "pool-2-thread-29" Exception in thread "pool-1-thread-3" jav a.lang.OutOfMemoryError: Java heap space Exception in thread "pool-1-thread-2" Exception in thread "pool-2-thread-31" Exc eption in thread "pool-1-thread-1" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-1" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-3" java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space Exception in thread "pool-1-thread-4" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-4" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-33" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-32" Exception in thread "pool-1-thread-5" Exception in thread "pool-1-thread-8" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-5" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-8" Exception in thread "pool-1-thread-7" Exception in thread "pool-1-thread-9" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-7" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-9" Exception in thread "pool-2-thread-35" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-36" Exception in thread "pool-1-thread-6" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-35" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-6" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-34" Exception in thread "pool-2-thread-37" Exception in thread "pool-1-thread-13" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-13" java.lang.OutOfMemoryError: Java heap space Exception in thread "pool-1-thread-10" Exception in thread "pool-2-thread-38" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-10" Exception in thread "pool-1-thread-12" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-11" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-1-thread-12" Exception in thread "pool-1-thread-15" Exception in thread "pool-2-thread-40" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-38" java.lang.OutOfMemoryError: Java heap space Exception in thread "pool-2-thread-41" java.lang.OutOfMemoryError: Java heap spa ce java.lang.OutOfMemoryError: Java heap space Exception in thread "pool-2-thread-42" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i n thread "pool-2-thread-42" I recently had this error does anyone have any light? Apparently you are running out of memory
-
LF which package that shows these details?
Williams posted a question in Request Server Development Help [L2J]
-
I found this engine and it is very good it was created based on the TvT L2jServer make the most of it I just adapted the author is (nuLL) Code : Engine aCis - Pastebin.com
-
- 3
-
-
-
Do I need an experienced Dev to do a job for someone I can trust?
-
WTS services of aLzhite - geodata, codes and client
Williams replied to aLzhite's topic in Marketplace [L2Packs & Files]
your discord doesn't work what's your contact? -
I redid my system and it is now working perfectly. code : if (getCharacters().stream().filter(creature -> creature.getActingPlayer().getClient().getConnection().getInetAddress().getHostAddress().equals(player.getClient().getConnection().getInetAddress().getHostAddress())).count() >= 1 + _maxPlayers) { player.teleportTo(TeleportType.TOWN); return; }
-
package net.sf.l2j.gameserver.data.manager; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicInteger; import net.sf.l2j.Config; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.network.GameClient; public class AntiFeedManager { public static final int GAME_ID = 0; public static final int OLYMPIAD_ID = 1; public static final int EVENT_ID = 2; private final Map<Integer, Long> _lastDeathTimes = new ConcurrentHashMap<>(); private final Map<Integer, Map<Integer, AtomicInteger>> _eventIPs = new ConcurrentHashMap<>(); /** * Set time of the last player's death to current * @param objectId Player's objectId */ public void setLastDeathTime(int objectId) { _lastDeathTimes.put(objectId, System.currentTimeMillis()); } /** * Check if current kill should be counted as non-feeded. * @param attacker Attacker character * @param target Target character * @return True if kill is non-feeded. */ public boolean check(Creature attacker, Creature target) { if (!Config.ANTIFEED_ENABLE) return true; if (target == null) return false; final Player targetPlayer = target.getActingPlayer(); if (targetPlayer == null) return false; // Players in offline mode should't be valid targets. if (targetPlayer.getClient().isDetached()) return false; if ((Config.ANTIFEED_INTERVAL > 0) && _lastDeathTimes.containsKey(targetPlayer.getObjectId()) && ((System.currentTimeMillis() - _lastDeathTimes.get(targetPlayer.getObjectId())) < Config.ANTIFEED_INTERVAL)) return false; if (Config.ANTIFEED_DUALBOX && (attacker != null)) { final Player attackerPlayer = attacker.getActingPlayer(); if (attackerPlayer == null) return false; final GameClient targetClient = targetPlayer.getClient(); final GameClient attackerClient = attackerPlayer.getClient(); if ((targetClient == null) || (attackerClient == null) || targetClient.isDetached() || attackerClient.isDetached()) return !Config.ANTIFEED_DISCONNECTED_AS_DUALBOX; // unable to check ip address return !targetClient.getConnection().getInetAddress().equals(attackerClient.getConnection().getInetAddress()); } return true; } /** * Clears all timestamps */ public void clear() { _lastDeathTimes.clear(); } /** * Register new event for dualbox check. Should be called only once. * @param eventId */ public void registerEvent(int eventId) { _eventIPs.putIfAbsent(eventId, new ConcurrentHashMap<>()); } /** * @param eventId * @param player * @param max * @return If number of all simultaneous connections from player's IP address lower than max then increment connection count and return true.<br> * False if number of all simultaneous connections from player's IP address higher than max. */ public boolean tryAddPlayer(int eventId, Player player, int max) { return tryAddClient(eventId, player.getClient(), max); } /** * @param eventId * @param client * @param max * @return If number of all simultaneous connections from player's IP address lower than max then increment connection count and return true.<br> * False if number of all simultaneous connections from player's IP address higher than max. */ public boolean tryAddClient(int eventId, GameClient client, int max) { if (client == null) return false; // unable to determine IP address final Map<Integer, AtomicInteger> event = _eventIPs.get(eventId); if (event == null) return false; // no such event registered final Integer addrHash = client.getConnection().getInetAddress().hashCode(); final AtomicInteger connectionCount = event.computeIfAbsent(addrHash, k -> new AtomicInteger()); int whiteListCount = Config.DUALBOX_CHECK_WHITELIST.getOrDefault(addrHash, Integer.valueOf(0)).intValue(); if (whiteListCount < 0 || connectionCount.get() + 1 <= max + whiteListCount) { connectionCount.incrementAndGet(); return true; } return false; } /** * Decreasing number of active connection from player's IP address * @param eventId * @param player * @return true if success and false if any problem detected. */ public boolean removePlayer(int eventId, Player player) { return removeClient(eventId, player.getClient()); } /** * Decreasing number of active connection from player's IP address * @param eventId * @param client * @return true if success and false if any problem detected. */ public boolean removeClient(int eventId, GameClient client) { if (client == null || client.getConnection() == null) return false; // unable to determine IP address final Map<Integer, AtomicInteger> event = _eventIPs.get(eventId); if (event == null) return false; // no such event registered final Integer addrHash = Integer.valueOf(client.getConnection().getInetAddress().hashCode()); return (event.computeIfPresent(addrHash, (k, v) -> (v.decrementAndGet() == 0) ? null : v) != null); } /** * Remove player connection IP address from all registered events lists. * @param client */ public void onDisconnect(GameClient client) { if ((client == null)) return; _eventIPs.forEach((k, v) -> removeClient(k, client)); } /** * Clear all entries for this eventId. * @param eventId */ public void clear(int eventId) { final Map<Integer, AtomicInteger> event = _eventIPs.get(eventId); if (event != null) event.clear(); } /** * @param player * @param max * @return maximum number of allowed connections (whitelist + max) */ public int getLimit(Player player, int max) { return getLimit(player.getClient(), max); } /** * @param client * @param max * @return maximum number of allowed connections (whitelist + max) */ public int getLimit(GameClient client, int max) { if (client == null) return max; final Integer addrHash = client.getConnection().getInetAddress().hashCode(); int limit = max; if (Config.DUALBOX_CHECK_WHITELIST.containsKey(addrHash)) limit += Config.DUALBOX_CHECK_WHITELIST.get(addrHash); return limit; } public static AntiFeedManager getInstance() { return SingletonHolder.INSTANCE; } private static class SingletonHolder { protected static final AntiFeedManager INSTANCE = new AntiFeedManager(); } } I use L2jMobius AntiFedd, it works perfectly in other places except in the zone Register Event: public FarmZone(int id) { super(id); AntiFeedManager.getInstance().registerEvent(id); } Check onEnter : @Override protected void onEnter(Creature character) { character.setInsideZone(ZoneId.FARM, true); if (character instanceof Player) { final Player player = (Player) character; if ((_maxPlayers > 0) && !AntiFeedManager.getInstance().tryAddPlayer(getId(), player, _maxPlayers)) { player.sendPacket(new ExShowScreenMessage(player.getName() + " maximum "+ AntiFeedManager.getInstance().getLimit(player, _maxPlayers) +" connection(s) per IP address allowed.", 5000, SMPOS.TOP_CENTER, true)); player.teleportTo(TeleportType.TOWN); return; } Clear Players onExit: @Override protected void onExit(Creature character) { character.setInsideZone(ZoneId.FARM, false); if (character instanceof Player) { final Player player = (Player) character; AntiFeedManager.getInstance().removePlayer(getId(), player);
-
I'm limiting players from the same IP in a zone, but I'm not having much success, I'm using AntiFeed to do this action. Code: if ((_maxPlayers > 0) && !AntiFeedManager.getInstance().tryAddPlayer(getId(), player, _maxPlayers)) { player.sendPacket(new ExShowScreenMessage(player.getName() + " maximum "+ AntiFeedManager.getInstance().getLimit(player, _maxPlayers) +" connection(s) per IP address allowed.", 5000, SMPOS.TOP_CENTER, true)); player.teleportTo(TeleportType.TOWN); return; } on the first try when I go to the zone I am moved out with no (Boot) inside the zone. On the second attempt I remain and if I log a boot the same procedure happens and I am allowed to keep 2. What is an ideal solution to block multiple players with the same IP?
-
Help Loop for class
Williams replied to Williams's question in Request Server Development Help [L2J]
I created a task to calculate the end of time @Override public final void run() { if (_players.isEmpty()) return; for (Map.Entry<Integer, Long> entry : _players.entrySet()) { final Player player = World.getInstance().getPlayer(entry.getKey()); if (player == null) continue; final VipType type = player.getVip().getType(); if (player.getMemos().getLong(type.toString(), 0) < System.currentTimeMillis()) { player.deleteVip(type); remove(player.getObjectId()); } } } removed the loop to check vips when entering Vip vip = VipData.getInstance().getVip(VipType.BRONZE); if (vip != null) { if (player.getMemos().getLong(vip.getType().toString(), 0) > 0) { long now = Calendar.getInstance().getTimeInMillis(); long endDay = player.getMemos().getLong(vip.getType().toString()); if (now > endDay) player.deleteVip(vip.getType()); else { player.setVip(vip); if (!vip.getMessage().isEmpty()) World.announceToOnlinePlayers(player.getClan() != null ? vip.getMessageClan().replace("%player%", player.getName()).replace("%clan%", player.getClan().getName()) : vip.getMessage().replace("%player%", player.getName()), true); player.broadcastUserInfo(); } } } -
Hello, I recently created a model to edit my config in xml, but I have a doubt, to restore the status of the players after restart you will have to create a loop? Because I don't think it would be a good idea to do that, I would like your opinion. for (Vip vip : VipData.getInstance().getVip()) { if (player.getMemos().getLong(vip.getType().toString(), 0) > 0) { long now = Calendar.getInstance().getTimeInMillis(); long endDay = player.getMemos().getLong(vip.getType().toString()); if (now > endDay) player.deleteVip(vip.getType()); else { player.setVip(vip); if (!vip.getMessage().isEmpty()) World.announceToOnlinePlayers(player.getClan() != null ? vip.getMessageClan().replace("%player%", player.getName()).replace("%clan%", player.getClan().getName()) : vip.getMessage().replace("%player%", player.getName()), true); player.broadcastUserInfo(); } } }
-
Help Genre switching without relogin
Williams replied to Williams's question in Request Server Development Help [L2J]
use the admin panel -
Help Genre switching without relogin
Williams replied to Williams's question in Request Server Development Help [L2J]
this didn't work anymore it opened a light how can it be fixed when you remove the object and put a delay it gives critical some time ago I did it this way and it didn't work -
Help Genre switching without relogin
Williams replied to Williams's question in Request Server Development Help [L2J]
I redid all the code on l2jmobius c6 and yes there it is perfect but on acis when you remove the object it does not add when you use spawnme and on mobius it works perfect -
Help Genre switching without relogin
Williams replied to Williams's question in Request Server Development Help [L2J]
This won't work for aCis as you need to reformulate the World and WorldObject the error is there -
Help Genre switching without relogin
Williams replied to Williams's question in Request Server Development Help [L2J]
I'm using a clean c6 client I'm working on it the way I found to fix it was using aCis templates soon I'll post the result. -
Help Genre switching without relogin
Williams posted a question in Request Server Development Help [L2J]
recently i redid my code and i change gender and update for the other players and not for me which package needs to be updated? View from another player: my vision: -
I would like to know how I get the value of a list, for example I configured a list like this 100;100;100;30;30, I just want to retrieve the values 100 and get the value of 3 as would be done by an int[ ] ?
