@Override
    public void onEnable() {
        if (setupEconomy()) {
            FreeForAll.instance = this;
            FreeForAll.ffaconfig = new FFAConfig(this);
            ffaconfig.load();
            
            loadArenas();
            new Queue().runTaskTimer(this, 20, 20);
            
            System.out.println("[FreeForAll] arenas loaded.");
            try {
                DB = new MySQLc(this);
                usingDataBaseLeaderBoards = true;
                
                try {
                    engineManager.registerEngine(new LeaderboardEngine(DB));
                } catch (EngineException ex) {
                    System.out.println(ex.getMessage());
                }
            } catch (Exception ex) {
                System.out.println(ex.getMessage());
                System.out.println("Can't load database");
            }
            System.out.println("[FreeForAll] Starting base engines...");
            try {
                engineManager.registerEngine(new InventoryEngine());
            } catch (EngineException ex) {
                System.out.println(ex.getMessage());
            }
            try {
                engineManager.registerEngine(new OfflineStorageEngine());
            } catch (EngineException ex) {
                System.out.println(ex.getMessage());
            }
            try {
                engineManager.registerEngine(new StorageEngine());
            } catch (EngineException ex) {
                System.out.println(ex.getMessage());
            }

            try {
                engineManager.registerEngine(new KillStreakEngine());
            } catch (EngineException ex) {
                System.out.println(ex.getMessage());
            }
            try {
                engineManager.registerEngine(new DebugEngine());
            } catch (EngineException ex) {
                System.out.println(ex.getMessage());
            }
            System.out.println("[FreeForAll] Done starting base engines.");
            ffapl = new FFAPlayerListener(this);
            System.out.println("[FreeForAll] has been enabled.");
            
            if (this.getDescription().getVersion().contains("EB")) {
                Bukkit.getConsoleSender().sendMessage(ChatColor.RED + "[FreeForAll] YOU ARE USING AN EXPERIMENTAL BUILD. USE AT YOUR OWN RISK.");
            }
        } else {
            System.out.println("[FreeForAll] unable to load vault.");
            getServer().getPluginManager().disablePlugin(this);
        }
    }