rendered paste bodyIndex: /home/jru199/trunk/L2_GameServer_c4/java/net/sf/l2j/Config.java
===================================================================
--- /home/jru199/trunk/L2_GameServer_c4/java/net/sf/l2j/Config.java (revision 1898)
+++ /home/jru199/trunk/L2_GameServer_c4/java/net/sf/l2j/Config.java (working copy)
@@ -157,6 +157,7 @@
public static boolean ALT_PRIVILEGES_ADMIN;
public static boolean ALT_PRIVILEGES_SECURE_CHECK;
public static int ALT_PRIVILEGES_DEFAULT_LEVEL;
+ public static String EXTENSION_CLASS;
/***************************************************************************
* GM CONFIG General GM AccessLevel *
@@ -950,6 +951,7 @@
ALT_GAME_FREE_TELEPORT = Boolean.parseBoolean(altSettings.getProperty("AltFreeTeleporting", "False"));
ALT_GAME_SUBCLASS_WITHOUT_QUESTS = Boolean.parseBoolean(altSettings.getProperty("AltSubClassWithoutQuests", "False"));
ALT_GAME_VIEWNPC = Boolean.parseBoolean(altSettings.getProperty("AltGameViewNpc", "False"));
+ EXTENSION_CLASS = altSettings.getProperty("ExtensionClass");
}
catch (Exception e)
{
Index: /home/jru199/trunk/L2_GameServer_c4/java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- /home/jru199/trunk/L2_GameServer_c4/java/net/sf/l2j/gameserver/GameServer.java (revision 1898)
+++ /home/jru199/trunk/L2_GameServer_c4/java/net/sf/l2j/gameserver/GameServer.java (working copy)
@@ -22,6 +22,7 @@
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Calendar;
+import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.Logger;
@@ -49,6 +50,7 @@
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEditChar;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEditNpc;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEffects;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEventEngine;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminExpSp;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminFightCalculator;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminGm;
@@ -57,7 +59,6 @@
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminHelpPage;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminInvul;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminKick;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminEventEngine;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminKill;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminLevel;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminLogin;
@@ -65,8 +66,8 @@
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMenu;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMobGroup;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminMonsterRace;
+import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPForge;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPathNode;
-import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPForge;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPetition;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPledge;
import net.sf.l2j.gameserver.handler.admincommandhandlers.AdminPolymorph;
@@ -142,8 +143,8 @@
import net.sf.l2j.gameserver.instancemanager.Manager;
import net.sf.l2j.gameserver.model.AutoChatHandler;
import net.sf.l2j.gameserver.model.AutoSpawnHandler;
+import net.sf.l2j.gameserver.model.L2PetDataTable;
import net.sf.l2j.gameserver.model.L2World;
-import net.sf.l2j.gameserver.model.L2PetDataTable;
import net.sf.l2j.gameserver.taskmanager.TaskManager;
import net.sf.l2j.status.Status;
@@ -447,6 +448,15 @@
ForumsBBSManager.getInstance();
_log.config("IdFactory: Free ObjectID's remaining: " + IdFactory.getInstance().size());
+ if (Config.EXTENSION_CLASS != null)
+ try {
+ Class extension = Class.forName(Config.EXTENSION_CLASS);
+ Object extensionObject = extension.newInstance();
+ extension.getMethod("init", new Class[0]).invoke(extensionObject, new Object[0]);
+ } catch (Exception ex) {
+ _log.log(Level.WARNING, "extension could not be loaded and initialized", ex);
+ }
+
System.gc();
// maxMemory is the upper limit the jvm can use, totalMemory the size of the current allocation pool, freeMemory the unused memory in the allocation pool
long freeMem = (Runtime.getRuntime().maxMemory()-Runtime.getRuntime().totalMemory()+Runtime.getRuntime().freeMemory()) / 1024 / 1024;