You last visited: Today at 19:38
Advertisement
AI Help
Discussion on AI Help within the CO2 Private Server forum part of the Conquer Online 2 category.
12/04/2013, 03:16
#1
elite*gold: 0
Join Date: Mar 2010
Posts: 183
Received Thanks: 74
AI Help
To start off, I don't consider this too special. Its not AI either.
This is based off of a guard.
--------------------------------------------------------------
Alright, so here's the video of what it does:
Two questions I have that hopefully someone here can help me with:
1. How can I make the fastblade level 4 instead of level 1?
2. How can I make him jump like a guard would?
#EDIT Got it xD Thanks guys.
12/04/2013, 03:33
#2
elite*gold: 0
Join Date: May 2011
Posts: 648
Received Thanks: 413
1. Send the Skill Packet with level 4 instead of 0
2. Send the Jump Packet instead of the walk packet
12/04/2013, 04:01
#3
elite*gold: 0
Join Date: Mar 2010
Posts: 183
Received Thanks: 74
"I don't know anything about newer sources"
Thanks Yuki, you did just fine xD
12/04/2013, 06:37
#4
elite*gold: 0
Join Date: Oct 2006
Posts: 557
Received Thanks: 76
how did u made it automatically fb any players?
12/04/2013, 07:28
#5
elite*gold: 130
Join Date: Oct 2007
Posts: 1,655
Received Thanks: 706
Quote:
Originally Posted by
.Light
"I don't know anything about newer sources"
That had nothing to do with "newer" sources but common sense.
12/04/2013, 07:34
#6
elite*gold: 0
Join Date: Oct 2006
Posts: 557
Received Thanks: 76
yeah common since in database called "navicat" by others. thx
12/04/2013, 09:05
#7
elite*gold: 0
Join Date: Mar 2010
Posts: 183
Received Thanks: 74
Quote:
Originally Posted by
marcbacor6666
how did u made it automatically fb any players?
Its based off of a guard. In the database you can set what skill your guard uses, I just edited that.
Quote:
Originally Posted by
turk55
That had nothing to do with "newer" sources but common sense.
It was a joke... xD
12/04/2013, 09:11
#8
elite*gold: 0
Join Date: Oct 2006
Posts: 557
Received Thanks: 76
nice thanks
i think u can make it jump by changing something in the database located inside ur navicat or any sql client ur using.
12/04/2013, 09:40
#9
elite*gold: 0
Join Date: Mar 2010
Posts: 183
Received Thanks: 74
Yeah, I figured. I just have to look into it and see what each of the values mean.
12/04/2013, 16:01
#10
elite*gold: 0
Join Date: Oct 2006
Posts: 557
Received Thanks: 76
i think the jump is located in the database,, im not sure though.
did u made it jump ?
This might help you.
add this to ur screen.cs or to anywhere u place ur alivemonstercallback "timercallback"
Quote:
change the name cloudstrife to ur monster name that u want to jump
Quote:
this one will follow the character who he wants to attack but he will jump if this what u wanna do.
Code:
if (monster.Name == "cloudstrife")
{
if (distance >= monster.MonsterInfo.ViewRange)
{
TwoMovements jump = new TwoMovements();
jump.X = client.Entity.X;
jump.Y = client.Entity.Y;
monster.X = client.Entity.X;
monster.Y = client.Entity.Y;
jump.EntityCount = 1;
jump.FirstEntity = monster.UID;
jump.MovementType = TwoMovements.Jump;
client.SendScreen(jump, true);
}
}
add this code to ur map.cs this one is a nice combination or dress and weapons
ur guard or the one u want to.
Quote:
<--- i use 3 for costume thing. guard normal type is 2
Code:
#region Squal{God}
if (mt.Type == 3)
{
entity.UID += 0xc3500 + 0xc3500;
Network.Writer.WriteUInt32(139223, 52 + 4, entity.SpawnPacket); // Armor.
Network.Writer.WriteUInt32(421299, 60 + 4, entity.SpawnPacket); // right hand weapon
Network.Writer.WriteUInt32(900259, 56 + 4, entity.SpawnPacket); // left hand weapon
Network.Writer.WriteUInt32(1364459570, 227 + 4, entity.SpawnPacket); //flags
Network.Writer.WriteUInt32(12, 133 + 4, entity.SpawnPacket); //rank
Network.Writer.WriteUInt32(16384, 26, entity.SpawnPacket); //PKPoints
Network.Writer.WriteUInt32(430, 98 + 4, entity.SpawnPacket); //hair
Network.Writer.WriteUInt32(3000, 100 + 4, entity.SpawnPacket); //action
}
#endregion
im still working on how to make him missed an fb/ss skill
i used that to add spell in the monster.
Code:
if (attacker.Name == "Squal{God}")
{
attacker.MonsterInfo.SpellID = 1046;
}
#endregion
12/04/2013, 18:36
#11
elite*gold: 0
Join Date: May 2011
Posts: 648
Received Thanks: 413
Quote:
Originally Posted by
marcbacor6666
i think the jump is located in the database,, im not sure though.
did u made it jump ?
This might help you.
add this to ur screen.cs or to anywhere u place ur alivemonstercallback "timercallback"
Code:
if (monster.Name == "cloudstrife")
{
if (monster.MonsterInfo.InSight == 0)
{
if (monster.X != monster.MonsterInfo.BoundX || monster.Y != monster.MonsterInfo.BoundY)
{
monster.X = monster.MonsterInfo.BoundX;
monster.Y = monster.MonsterInfo.BoundY;
Network.GamePackets.TwoMovements jump = new Network.GamePackets.TwoMovements();
jump.X = monster.MonsterInfo.BoundX;
jump.Y = monster.MonsterInfo.BoundY;
jump.EntityCount = 1;
jump.FirstEntity = monster.UID;
jump.MovementType = Network.GamePackets.TwoMovements.Jump;
monster.MonsterInfo.SendScreen(jump);
}
}
}
add this code to ur map.cs this one is a nice combination or dress and weapons
ur guard or the one u want to.
<--- i use 3 for costume thing. guard normal type is 2
Code:
#region Squal{God}
if (mt.Type == 3)
{
entity.UID += 0xc3500 + 0xc3500;
Network.Writer.WriteUInt32(139223, 52 + 4, entity.SpawnPacket); // Armor.
Network.Writer.WriteUInt32(421299, 60 + 4, entity.SpawnPacket); // right hand weapon
Network.Writer.WriteUInt32(900259, 56 + 4, entity.SpawnPacket); // left hand weapon
Network.Writer.WriteUInt32(1364459570, 227 + 4, entity.SpawnPacket); //flags
Network.Writer.WriteUInt32(12, 133 + 4, entity.SpawnPacket); //rank
Network.Writer.WriteUInt32(16384, 26, entity.SpawnPacket); //PKPoints
Network.Writer.WriteUInt32(430, 98 + 4, entity.SpawnPacket); //hair
Network.Writer.WriteUInt32(3000, 100 + 4, entity.SpawnPacket); //action
}
#endregion
im still working on how to make him missed an fb/ss skill
i used that to add spell in the monster.
Code:
if (attacker.Name == "Squal{God}")
{
attacker.MonsterInfo.SpellID = 1046;
}
#endregion
every single time you attempt to help someone, you render yourselfe completely useless. How would that help him?
12/04/2013, 18:36
#12
elite*gold: 0
Join Date: Jul 2008
Posts: 874
Received Thanks: 239
Quote:
Originally Posted by
marcbacor6666
Code:
if (monster.Name == "cloudstrife")
{
if (monster.MonsterInfo.InSight == 0)
{
if (monster.X != monster.MonsterInfo.BoundX || monster.Y != monster.MonsterInfo.BoundY)
{
monster.X = monster.MonsterInfo.BoundX;
monster.Y = monster.MonsterInfo.BoundY;
Network.GamePackets.TwoMovements jump = new Network.GamePackets.TwoMovements();
jump.X = monster.MonsterInfo.BoundX;
jump.Y = monster.MonsterInfo.BoundY;
jump.EntityCount = 1;
jump.FirstEntity = monster.UID;
jump.MovementType = Network.GamePackets.TwoMovements.Jump;
monster.MonsterInfo.SendScreen(jump);
}
}
}
using monster.MonsterInfo.BoundX make it/him jump only to one point BoundX
u should use ur curent point+ rnd no.
(ushort)monster.MonsterInfo.X + Kernal.RND.Next(7); ... etc
this make it keep moving/jumping
@Topic Owner
take a look at P4N Source (albertos)
or SuperAids Source (ProjectX)
u will find what u want.
12/04/2013, 19:11
#13
elite*gold: 0
Join Date: Oct 2006
Posts: 557
Received Thanks: 76
Quote:
using monster.MonsterInfo.BoundX make it/him jump only to one point BoundX
u should use ur curent point+ rnd no.
(ushort)monster.MonsterInfo.X + Kernal.RND.Next(7); ... etc
this make it keep moving/jumping
yes it will keep him moving just like someone is using them. and attack if someone is near
Quote:
Originally Posted by
Y u k i
every single time you attempt to help someone, you render yourselfe completely useless. How would that help him?
oke help him pinpoint what to do where to go things like that
Quote:
this one will follow the character who he wants to attack but he will jump if this what u wanna do.
Code:
if (monster.Name == "cloudstrife")
{
if (distance >= monster.MonsterInfo.ViewRange)
{
TwoMovements jump = new TwoMovements();
jump.X = client.Entity.X;
jump.Y = client.Entity.Y;
monster.X = client.Entity.X;
monster.Y = client.Entity.Y;
jump.EntityCount = 1;
jump.FirstEntity = monster.UID;
jump.MovementType = TwoMovements.Jump;
client.SendScreen(jump, true);
}
}
12/04/2013, 21:32
#14
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,383
Quote:
Originally Posted by
marcbacor6666
oke help him pinpoint what to do where to go things like that
He did, he linked to two public sources that contain properly working AI duelist bots to use as reference material.
Sorry but pretty much everything you posted was inaccurate so while we appreciate the effort... accuracy would be more preferred lol
12/04/2013, 22:08
#15
elite*gold: 0
Join Date: Dec 2012
Posts: 1,761
Received Thanks: 950
Quote:
Originally Posted by
abdoumatrix
@Topic Owner
take a look at P4N Source (albertos)
or SuperAids Source (ProjectX)
u will find what u want.
This^
I think I even included some of the tournament bot ai I was working on for implementing bots into tournaments. It was unfinished, but should give an idea of it. Duelbot works flawless.
All times are GMT +2. The time now is 19:39 .