Jump to content

Recommended Posts

Posted

Yeah I hope so to  :D

 

I keep getting asked about the site since the downtime has been longer than anticipated. We had been using our planned production web server as a dev server and just had the site on shared hosting. Once the CMS was ready we moved to our production server (VPS) and noticed almost instantly performance issues. After troubleshooting and some tweeking I decided it was on the providers end and most likely they had our node oversold. After talking to them a few times it quickly became clear that they were not real experienced. I asked them to check the disk IO on the hardware node and their reply was "There are no errors everything is fine" which shows they are pretty much clueless...time to get out. I didn't need to talk to support for anything in the 2 months before that so had no way to know that they would be that inexperienced.

 

So I have moved to another provider which has the added bonus of being on a ddos protected network. I did a few benches this time right away and performance looks good. we are also going with a little different setup (nginx + Varnish) and completely hardened the entire server. That combo is amazingly fast and efficient.

 

The site will be up in the next 24 hours. It is bad timing but better now than on live. Sorry for the wall oftext I just wanted everybody to know the full story on the downtime.

 

//50foottextwall off

 

Dradden

 

 

Posted

The forums are back up >> http://l2nostalgia.com/forumpvp/index.php

 

We are fixing a few things on the CMS so it is offline atm. If you have a hard time seeing the forums the DNS may not have resolved in your area. Or you may need to clear your cache and/or flush your dns.

 

 

Posted

Nice server, i hope to over 1,5k online!!

 

Hah lol I m expecting somewhere around 3k tbh.

Judging by the forum activity it should surpass 1.5k when it goes live like its nothing.Rpg-Club servers had like 1200 members (on the Eu forums )when they opened and reached 7-9k ppl , while nostalgia has 1080 record!

Posted

if you dont add some fake online like all "big"servers  your server mby fail

 

cuz ppls always played on servers with x3 x4 x5 fake online ,well all server used :)

 

on most this pro servers online counter shows 10k but its like 2k

 

so, if the noobs see 2k, they will think its low cuz they think the "10k" was real

 

kids dont know about fake online and they trust always the number you add on sited:)

Posted

if you dont add some fake online like all "big"servers  your server mby fail

 

cuz ppls always played on servers with x3 x4 x5 fake online ,well all server used :)

 

on most this pro servers online counter shows 10k but its like 2k

 

so, if the noobs see 2k, they will think its low cuz they think the "10k" was real

 

kids dont know about fake online and they trust always the number you add on sited:)

 

Facepalm urself. U think ppl are stupid? If u port around towns u can tell if its 200,2000,10000. We dont need a counter to tell us online number.

Posted

I will not bullshit people about online numbers. In my opinion people are way too obsessed with online counts. Go in server see if there are enough people to have fun. If not than leave, if so then stay. I will never inflate online counts because I will not lie to people. When you will see our online count it will be real and if it is not enough for you then play on another server.  :)

Posted

I will not bullshit people about online numbers. In my opinion people are way too obsessed with online counts. Go in server see if there are enough people to have fun. If not than leave, if so then stay. I will never inflate online counts because I will not lie to people. When you will see our online count it will be real and if it is not enough for you then play on another server.  :)

 

Agreed.

Posted

I will not bullshit people about online numbers. In my opinion people are way too obsessed with online counts. Go in server see if there are enough people to have fun. If not than leave, if so then stay. I will never inflate online counts because I will not lie to people. When you will see our online count it will be real and if it is not enough for you then play on another server.  :)

 

agree

Guest
This topic is now closed to further replies.



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