Against bots

This is not a Support area! Discuss about the Server here. Non-Server related discussion goes in Off-Topic Discussion.
Forum rules
READ NOW: L2j Forums Rules of Conduct
Locked
odisey
Posts: 15
Joined: Sun Feb 21, 2010 8:18 pm
Location: ru
Contact:

Re: Against bots

Post by odisey »

denser wrote:already told... guru-boters cant sopped via this way. only lamers...
so if you need to kill all over bots - you need to hire assassins or
or just coding GS trafic by changes algorithm the formation of keys, but it needs client-side decoder.
When I finish my version of the such protector, maybe I will share the sources as an example ..
. translate.google.com .
User avatar
denser
Posts: 1392
Joined: Wed May 30, 2007 9:13 pm
Location: Russia
Contact:

Re: Against bots

Post by denser »

any combination with client-modding are forbidden here. about transistor for client via hosts or whatever(w/o modding) are in my post before
Tiger, once tasted human flesh, will want to taste it again
L2J - the place where glad to see you any time!
odisey
Posts: 15
Joined: Sun Feb 21, 2010 8:18 pm
Location: ru
Contact:

Re: Against bots

Post by odisey »

denser wrote:any combination with client-modding are forbidden here. about transistor for client via hosts or whatever(w/o modding) are in my post before
ok, sorry, my bad.

offtop: I will not use transistors, I'll take the thyristor mu-ha-ha-ha ( :lol: ).
. translate.google.com .
User avatar
Minutis
Posts: 56
Joined: Thu Feb 22, 2007 2:01 pm

Re: Against bots

Post by Minutis »

Ok, what about invisible drop? Let's say you create item that each monster drops, but since you don't client modify anything, it's invisible/unpickable to player, but bots still should pick it up right?
User avatar
poltomb
L2j Veteran
L2j Veteran
Posts: 225
Joined: Wed Jul 13, 2005 7:13 am
Location: USA

Re: Against bots

Post by poltomb »

As it was said before, that may be a great temporary solution, but bots could create a script to only pick up items that it knows what it is. I have made one of those before, not to get around this, but to keep a char's weight low (no I wont share it). Temporary, not permanent. Similar to the invis npc mobs.
User avatar
Gnacik
L2j Veteran
L2j Veteran
Posts: 925
Joined: Tue Dec 16, 2008 3:49 pm
Location: Wąchock ٩(̾●̮̮̃̾•̃̾)۶ Polska
Contact:

Re: Against bots

Post by Gnacik »

Minutis wrote:Ok, what about invisible drop? Let's say you create item that each monster drops, but since you don't client modify anything, it's invisible/unpickable to player, but bots still should pick it up right?
I use that metod on my server. L2Net dev's already fix that. In latest version is option to not pickup items without mesh (texture ground) in client.
User avatar
RiZe
Posts: 122
Joined: Mon Mar 24, 2008 12:44 am
Location: Czech Republic
Contact:

Re: Against bots

Post by RiZe »

Nowadays it's like tilting at windmills... you know Don Quixote, don't you? :cry: You can stop the botters but only the inexperienced ones.
User avatar
Minutis
Posts: 56
Joined: Thu Feb 22, 2007 2:01 pm

Re: Against bots

Post by Minutis »

Gnacik wrote:
Minutis wrote:Ok, what about invisible drop? Let's say you create item that each monster drops, but since you don't client modify anything, it's invisible/unpickable to player, but bots still should pick it up right?
I use that metod on my server. L2Net dev's already fix that. In latest version is option to not pickup items without mesh (texture ground) in client.
Ok, then how about this: some existing item (stem FOR EXAMPLE) is droped from each mob, but it's randomly visible to player or not, item id is the same, but if player picks up invisible one, then "IT'S ON" :D Or is it still possible with bot to detect if this item is visible to player or not. Or is it immposible to do such a thing?
Lupu1
Posts: 335
Joined: Wed Nov 04, 2009 7:51 am

Re: Against bots

Post by Lupu1 »

once at 1 hour to appear a code on the screen and need to type it if not take kick ;)
User avatar
janiii
L2j Veteran
L2j Veteran
Posts: 4269
Joined: Wed May 28, 2008 3:15 pm
Location: Slovakia

Re: Against bots

Post by janiii »

Lupu1 wrote:once at 1 hour to appear a code on the screen and need to type it if not take kick ;)
very disturbing for players and very inconvenient for them when taking a raid or other action. a "good" idea how to get rid of bots BUT also normal players.
DO NOT EVEN TRY TO MESS WITH ME!
forum flOOder dancing dEVILoper
I don't give private support - PM will be ignored!
User avatar
LasTravel
Posts: 888
Joined: Tue Jan 05, 2010 12:08 am
Location: Spain

Re: Against bots

Post by LasTravel »

On my opinion is better write one warning if player don't answer the anti bot request on console or on any other log than auto kick/ban/jail player.
User avatar
poltomb
L2j Veteran
L2j Veteran
Posts: 225
Joined: Wed Jul 13, 2005 7:13 am
Location: USA

Re: Against bots

Post by poltomb »

Minutis wrote:
Gnacik wrote:
Minutis wrote:Ok, what about invisible drop? Let's say you create item that each monster drops, but since you don't client modify anything, it's invisible/unpickable to player, but bots still should pick it up right?
I use that metod on my server. L2Net dev's already fix that. In latest version is option to not pickup items without mesh (texture ground) in client.
Ok, then how about this: some existing item (stem FOR EXAMPLE) is droped from each mob, but it's randomly visible to player or not, item id is the same, but if player picks up invisible one, then "IT'S ON" :D Or is it still possible with bot to detect if this item is visible to player or not. Or is it immposible to do such a thing?
If there is a way to make an item visible to the client or not, then the bot is going to have the same information. If a bot is perfectly coded, then there is no technical way to determine if the player is botting or not (since it does exactly what the client does). Only the 'gut feeling' of a good GM staff can determine whether someone is botting or not. But that method is not without its flaws. There is only one 100% accurate method of determining if the player is botting or not, and that is to be physically next to the player's computer looking at his/her screen. My opinion is a bit pessimistic, but it is the truth. There are some good, practical ways to determine if a player is botting, but the main problem with those is that once they reach the public svn here at L2J, then the bot creators (l2walker, l2net) can see what is broken and fix it.
User avatar
Minutis
Posts: 56
Joined: Thu Feb 22, 2007 2:01 pm

Re: Against bots

Post by Minutis »

poltomb wrote:If there is a way to make an item visible to the client or not, then the bot is going to have the same information. If a bot is perfectly coded, then there is no technical way to determine if the player is botting or not (since it does exactly what the client does). Only the 'gut feeling' of a good GM staff can determine whether someone is botting or not. But that method is not without its flaws. There is only one 100% accurate method of determining if the player is botting or not, and that is to be physically next to the player's computer looking at his/her screen. My opinion is a bit pessimistic, but it is the truth. There are some good, practical ways to determine if a player is botting, but the main problem with those is that once they reach the public svn here at L2J, then the bot creators (l2walker, l2net) can see what is broken and fix it.
First of all i'm newbie in developing and especialy in bots, don't use/test them. So if the points made below are nonsence just please answer normaly. I want to learn.

Code: Select all

 /**     * Init a dropped L2ItemInstance and add it in the world as a visible object.<BR><BR>     *     * <B><U> Actions</U> :</B><BR><BR>     * <li>Set the x,y,z position of the L2ItemInstance dropped and update its _worldregion </li>     * <li>Add the L2ItemInstance dropped to _visibleObjects of its L2WorldRegion</li>     * <li>Add the L2ItemInstance dropped in the world as a <B>visible</B> object</li><BR><BR>     *     * <FONT COLOR=#FF0000><B> <U>Caution</U> : This method DOESN'T ADD the object to _allObjects of L2World </B></FONT><BR><BR>     *     * <B><U> Assert </U> :</B><BR><BR>     * <li> _worldRegion == null <I>(L2Object is invisible at the beginning)</I></li><BR><BR>     *     * <B><U> Example of use </U> :</B><BR><BR>     * <li> Drop item</li>     * <li> Call Pet</li><BR>     *     */	public class ItemDropTask implements Runnable	{		private int _x,_y,_z;		private final L2Character _dropper;		private final L2ItemInstance _itm; 		public ItemDropTask(L2ItemInstance item, L2Character dropper, int x, int y, int z)		{			_x = x;			_y = y;			_z = z;			_dropper = dropper;			_itm = item;		} 		public final void run()		{			assert _itm.getPosition().getWorldRegion() == null; 			if (Config.GEODATA > 0 && _dropper != null)			{				Location dropDest = GeoData.getInstance().moveCheck(_dropper.getX(), _dropper.getY(), _dropper.getZ(), _x, _y, _z, _dropper.getInstanceId());				_x = dropDest.getX();				_y = dropDest.getY();				_z = dropDest.getZ();			} 			if(_dropper != null)				setInstanceId(_dropper.getInstanceId()); // Inherit instancezone when dropped in visible world			else				setInstanceId(0); // No dropper? Make it a global item... 			synchronized (_itm)			{				// Set the x,y,z position of the L2ItemInstance dropped and update its _worldregion				_itm.setIsVisible(true);				_itm.getPosition().setWorldPosition(_x, _y ,_z);				_itm.getPosition().setWorldRegion(L2World.getInstance().getRegion(getPosition().getWorldPosition())); 				// Add the L2ItemInstance dropped to _visibleObjects of its L2WorldRegion			} 			_itm.getPosition().getWorldRegion().addVisibleObject(_itm);			_itm.setDropTime(System.currentTimeMillis());			_itm.setDropperObjectId(_dropper != null ? _dropper.getObjectId() : 0); //Set the dropper Id for the knownlist packets in sendInfo 			// this can synchronize on others instancies, so it's out of			// synchronized, to avoid deadlocks			// Add the L2ItemInstance dropped in the world as a visible object			[color=#FF0000]L2World.getInstance().addVisibleObject(_itm, _itm.getPosition().getWorldRegion());[/color]			if (Config.SAVE_DROPPED_ITEM)				ItemsOnGroundManager.getInstance().save(_itm);			_itm.setDropperObjectId(0); //Set the dropper Id back to 0 so it no longer shows the drop packet		}	} 
Talking about this part. What happens if we comment that line? Bot should not notice this change despite he's flawlesly codded.
User avatar
poltomb
L2j Veteran
L2j Veteran
Posts: 225
Joined: Wed Jul 13, 2005 7:13 am
Location: USA

Re: Against bots

Post by poltomb »

What that method (essentially) does, is puts the item in a list of objects that the character supposedly can see. This list is then periodically sent to the client (we call it updating the knownlist). If it is not put in that list, meaning you comment out that line, the client will not be able to see the item either.

[Other devs, please correct me if I am wrong]
User avatar
JIV
L2j Veteran
L2j Veteran
Posts: 1882
Joined: Sun Jan 06, 2008 8:17 pm
Location: Slovakia
Contact:

Re: Against bots

Post by JIV »

still wil see it thx to

Code: Select all

_itm.getPosition().getWorldRegion().addVisibleObject(_itm);
changing that part - not a good idea
Locked