Hello mxc , im new to java i have 2 months , i can't do nothing from scrath but is not that hard to edit , so i tought why not make elfocrash robots to go tvt ..
so first i tryed to make them register tvt , i found in voice command .register this:
public boolean useVoicedCommand(String command, Player activeChar)
{
if (command.equals("register"))
EventManager.getInstance().registerPlayer(activeChar);
else if (command.equals("leave"))
EventManager.getInstance().removePlayer(activeChar);
return true;
}
so i go to fakeplayers and searched where i can add this: "EventManager.getInstance().registerPlayer(activeChar);"
i found this:
if (isInsidePeaceZone(this, this.getTarget()))
{
return;
}
and made it look like this
if (isInsidePeaceZone(this, this.getTarget()))
{
EventManager.getInstance().registerPlayer(this);
return;
}
now if they are in town , they are registering to event (remember im not programmer , i never did something from scrath ) , so everything was fine until i was teleported to event location , but they were all invisible , i tryed alt+g to teleport to them , they were walking , but they are all invisible .. so i guess it didin't work well..
after this i checked to make //recall (charname) on fakeplayer to check if this works , so i tryed recall one from aden to giran , i had same problem , they were there but invisible somehow...
after this i check that when they die , they are teleporting to nearest village so i found this
protected void teleportToLocation(int x, int y, int z, int randomOffset) {
_fakePlayer.stopMove(null);
_fakePlayer.abortAttack();
_fakePlayer.abortCast();
_fakePlayer.setIsTeleporting(true);
_fakePlayer.setTarget(null);
_fakePlayer.getAI().setIntention(CtrlIntention.ACTIVE);
if (randomOffset > 0)
{
x += Rnd.get(-randomOffset, randomOffset);
y += Rnd.get(-randomOffset, randomOffset);
}
z += 5;
_fakePlayer.broadcastPacket(new TeleportToLocation(_fakePlayer, x, y, z));
_fakePlayer.decayMe();
_fakePlayer.setXYZ(x, y, z);
_fakePlayer.onTeleported();
_fakePlayer.revalidateZone(true);
}
and this :
public FakePlayer spawnPlayer(int x, int y, int z) {
FakePlayer activeChar = FakeHelpers.createRandomFakePlayer();
World.getInstance().addPlayer(activeChar);
handlePlayerClanOnSpawn(activeChar);
activeChar.spawnMe(x, y, z);
activeChar.onPlayerEnter();
if (!activeChar.isGM() && (!activeChar.isInSiege() || activeChar.getSiegeState() < 2)
&& activeChar.isInsideZone(ZoneId.SIEGE))
activeChar.teleToLocation(TeleportType.TOWN);
activeChar.heal();
return activeChar;
}
so i guess that solution is somewhere here:
_fakePlayer.broadcastPacket(new TeleportToLocation(_fakePlayer, x, y, z));
_fakePlayer.decayMe();
_fakePlayer.setXYZ(x, y, z);
_fakePlayer.onTeleported();
_fakePlayer.revalidateZone(true);
i go to eventmanager again i found this:
protected void start()
{
state = EventState.TELEPORTING;
announce("The registrations have closed. The event has started.", true);
announce("You will be teleported in 20 seconds. Get ready!", false);
preparePlayers();
schedule(() -> teleportPlayers(), 20);
}
and this :
protected void teleportPlayers()
{
state = EventState.RUNNING;
if (!teams.isEmpty())
for (EventTeam team : teams)
team.teleportTeam();
else
for (Player player : players)
player.teleToLocation(getRandomLocation(), 40);
paralizePlayers();
announce("You have been teleported to the event.", false);
announce("The event will begin in 20 seconds!", false);
schedule(() -> begin(), 20);
}
now , im far by knowing java programming , but my intuition tell me that i need to add something like "fakeplayer.revalidatezone" here but i really dont know how , that why i came here to ask you guys for help ?
Im not here for beg i can send you guys via paypal money for a beer if you know what i mean (10-20)E.
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
🔥 Looking for a powerful, clean, and player-friendly Auction House system for your Lineage 2 server?
This fully-featured module is ready to plug into your project and provide your players with a modern, centralized marketplace!
💼 What is it?
A complete Auction House system designed for fixed-price item sales between players. Forget about private stores and spammed zones—this system offers a smooth, secure, and offline-friendly way to buy and sell items across your server.
Photo Library: https://imgur.com/a/zLlUQbW
✅ Main Features:
🔹 Fixed-Price Listings Only:
Players list items at a set price. No bidding, no delays—just fast, clean trades.
🔹 Multi-Currency Support:
Works with Adena, event coins, custom currencies—fully configurable.
🔹 Dynamic Interface:
Players can filter items by name, type, and price. Easy-to-use HTML layout with smooth pagination.
🔹 Sell While Offline:
Post items and receive payments even if you're not online—true passive trading.
🔹 Safety First:
Full validation: no equipped/augmented/restricted items unless allowed.
Prevents scams, mispricing, and listing errors.
🔹 Expiration Timer (Optional):
Set listing time limits. Expired items go to warehouse/mail automatically.
🔹 Spam & Duplication Protection:
Prevents multiple listings of identical items and unnecessary database load.
🔹 Performance Optimized:
Clean, indexed SQL structure. No lag or bloating even with thousands of listings.
⚙️ Plug & Play
Clean Java code (compatible with aCis & derivatives).
Easy setup with full instructions and sample configurations.
Includes SQL, HTML files, and all Java classes – fully working out of the box.
💰 Pricing & Contact
📦 50 euro - One-time purchase with full support for setup & basic customization.
💬 Contact me here via PM or on Discord: @Luminous
🔐 Serious buyers only – source is clean, secure, and tested on live servers.
Give your server the next-level economy it deserves.
No more chaotic trade zones. No more confusion. Just clean, efficient, server-wide trading.
We are certainly not an ambulance, but we will definitely cure you of blacklists and empty pockets. Live freely with SX!
Each of you will receive a trial version of SX to familiarize yourself with the product, all you have to do is post in this thread
Question
arm4729
Hello mxc , im new to java i have 2 months , i can't do nothing from scrath but is not that hard to edit , so i tought why not make elfocrash robots to go tvt ..
so first i tryed to make them register tvt , i found in voice command .register this:
public boolean useVoicedCommand(String command, Player activeChar) { if (command.equals("register")) EventManager.getInstance().registerPlayer(activeChar); else if (command.equals("leave")) EventManager.getInstance().removePlayer(activeChar); return true; }
so i go to fakeplayers and searched where i can add this: "EventManager.getInstance().registerPlayer(activeChar);"
i found this:
if (isInsidePeaceZone(this, this.getTarget())) { return; }
and made it look like this
if (isInsidePeaceZone(this, this.getTarget())) { EventManager.getInstance().registerPlayer(this); return; }
now if they are in town , they are registering to event (remember im not programmer , i never did something from scrath ) , so everything was fine until i was teleported to event location , but they were all invisible , i tryed alt+g to teleport to them , they were walking , but they are all invisible .. so i guess it didin't work well..
after this i checked to make //recall (charname) on fakeplayer to check if this works , so i tryed recall one from aden to giran , i had same problem , they were there but invisible somehow...
after this i check that when they die , they are teleporting to nearest village so i found this
protected void teleportToLocation(int x, int y, int z, int randomOffset) { _fakePlayer.stopMove(null); _fakePlayer.abortAttack(); _fakePlayer.abortCast(); _fakePlayer.setIsTeleporting(true); _fakePlayer.setTarget(null); _fakePlayer.getAI().setIntention(CtrlIntention.ACTIVE); if (randomOffset > 0) { x += Rnd.get(-randomOffset, randomOffset); y += Rnd.get(-randomOffset, randomOffset); } z += 5; _fakePlayer.broadcastPacket(new TeleportToLocation(_fakePlayer, x, y, z)); _fakePlayer.decayMe(); _fakePlayer.setXYZ(x, y, z); _fakePlayer.onTeleported(); _fakePlayer.revalidateZone(true); }
and this :
public FakePlayer spawnPlayer(int x, int y, int z) { FakePlayer activeChar = FakeHelpers.createRandomFakePlayer(); World.getInstance().addPlayer(activeChar); handlePlayerClanOnSpawn(activeChar); activeChar.spawnMe(x, y, z); activeChar.onPlayerEnter(); if (!activeChar.isGM() && (!activeChar.isInSiege() || activeChar.getSiegeState() < 2) && activeChar.isInsideZone(ZoneId.SIEGE)) activeChar.teleToLocation(TeleportType.TOWN); activeChar.heal(); return activeChar; }
so i guess that solution is somewhere here:
_fakePlayer.broadcastPacket(new TeleportToLocation(_fakePlayer, x, y, z)); _fakePlayer.decayMe(); _fakePlayer.setXYZ(x, y, z); _fakePlayer.onTeleported(); _fakePlayer.revalidateZone(true);
i go to eventmanager again i found this:
protected void start() { state = EventState.TELEPORTING; announce("The registrations have closed. The event has started.", true); announce("You will be teleported in 20 seconds. Get ready!", false); preparePlayers(); schedule(() -> teleportPlayers(), 20); }
and this :
protected void teleportPlayers() { state = EventState.RUNNING; if (!teams.isEmpty()) for (EventTeam team : teams) team.teleportTeam(); else for (Player player : players) player.teleToLocation(getRandomLocation(), 40); paralizePlayers(); announce("You have been teleported to the event.", false); announce("The event will begin in 20 seconds!", false); schedule(() -> begin(), 20); }
now , im far by knowing java programming , but my intuition tell me that i need to add something like "fakeplayer.revalidatezone" here but i really dont know how , that why i came here to ask you guys for help ?
Im not here for beg i can send you guys via paypal money for a beer if you know what i mean (10-20)E.
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.