Skip to content

Custom Instance Farm Zone

Featured Replies

Hi! 


I need some help again. I'd like to create a farm zone.
I think the best to do it in an instace with a limited time, but i dont really know how is it working.

I find GoldBergsRoom to be a good place form me. I made a copy from the .xml and also the script.

 

I changed some conditions, i hope its ok.
The spawnlist is the default. If i made a list in here its working? I mean do the mobs respawn in to zone again until time ends?
I deleted some unused lines from script but is thinks its not correct.

 

So im just want a zone where mobs spawn for 60 minutes then player teleported out and can re-enter after 180.

 

 

My xml:

 

<?xml version="1.0" encoding="UTF-8"?>
<instance id="900203" maxWorlds="80" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/instance.xsd">
    <time duration="60" empty="0" />
    <locations>
        <enter type="FIXED">
            <location x="11712" y="-84973" z="-10965" />
        </enter>
        <exit type="ORIGIN" />
    </locations>
    <conditions>
        <condition type="GroupMin">
            <param name="limit" value="1" />
        </condition>
        <condition type="GroupMax">
            <param name="limit" value="9" />
        </condition>
        <condition type="Level">
            <param name="min" value="80" />
            <param name="max" value="86" />            
        </condition>    
        <condition type="Distance" />
        <condition type="Reenter" />
    </conditions>
        <reenter apply="NONE">
        <reset time="180" />
    </reenter>    
    <spawnlist>
        <group>
            <npc id="18359" x="11700" y="-87948" z="-10948" heading="16383" /> <!-- Golberg -->
        </group>
    </spawnlist>
</instance>


 

 

 

and this is my script:

 

/*
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
package instances.BeerFarm;

import org.l2j.gameserver.model.Party;
import org.l2j.gameserver.model.actor.Npc;
import org.l2j.gameserver.model.actor.instance.PlayerInstance;
import org.l2j.gameserver.model.instancezone.Instance;
import org.l2j.gameserver.network.serverpackets.ExShowScreenMessage;

import instances.AbstractInstance;

public class Farm extends AbstractInstance
{
    // NPCs
    private static final int Black = 34091;
    // Items

    // Misc
    private static final int TEMPLATE_ID = 900203;
    
    public Farm()
    {
        super(TEMPLATE_ID);
        addStartNpc(Black);
        addInstanceLeaveId(TEMPLATE_ID);
    }
    
    @Override
    public String onAdvEvent(String event, Npc npc, PlayerInstance player)
    {
        switch (event)
        {
            case "ENTER":
            {
                enterInstance(player, npc, TEMPLATE_ID);
                final Instance world = player.getInstanceWorld();
                if (world != null)
                {
                    for (PlayerInstance member : party.getMembers())
                    {
                        if (member == player)
                        {
                            continue;
                        }
                        member.teleToLocation(player, 10, world);
                    }
                }
                break;
            }
        }
        return null;
    }
    
    
    public static void main(String[] args)
    {
        new Farm();
    }
}


 

 

 

 

And what is your problem exactly? Your script is fine, your xml looks good.

@Ilusioner

 

Give us the chance to understand your problem so we can help you.

Have a nice day.

  • Vision locked this topic
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.