When will bots get a brain?

Discuss everything related to Shootmania.

Moderator: English Moderator

Post Reply
novationx
Posts: 2723
Joined: 10 Aug 2013, 22:33

When will bots get a brain?

Post by novationx »

:/

As we all know by now the game has a small playerbase (yes its already a lot better since latest updates/demo :thumbsup: :thumbsup: ) so some fun gamemodes are just left alone because nobody wants to join an empty server and nobody wants to wait until finally some players have joined...It's normal.
So a good solution or a start would be "bots" because they make the waiting more fun/bearable.

BUT, currently bots are simply brainless. They run in water/offzone. They dont grapple. They dont slide. They dont dodge. They dont zigzag. They only run in straight lines... They are stuck... Its just absolutely no fun to play against a bot.
The minute you think a bot is doing smth normal, it decides to make an impossible shot on you.

My Counter Strike Condition Zero in 2002 had bots and when I launched a new map I got a progressbar : "Teaching the map to the bots."
After 1 minute the bots were 100x smarter then what we have now in ShootMania. And this is 12years later :oops:

All I'm trying to say is that bots could be a welcome improvement when a lot of servers/modes are empty. It gives us the chance to test out modes (even when there arent enough real players ) & it makes the waiting for real players easier.

Please move this a little bit up your priority list. Thank you :)
The neverending waiting game has to stop.
User avatar
plopp
Posts: 301
Joined: 12 Aug 2013, 15:39

Re: When will bots get a brain?

Post by plopp »

novationx wrote:My Counter Strike Condition Zero in 2002 had bots and when I launched a new map I got a progressbar : "Teaching the map to the bots."
After 1 minute the bots were 100x smarter then what we have now in ShootMania. And this is 12years later :oops:

How much sliding/grappling/dodging/zigzaging did these bots do? ;)
I think it's harder than you think to make "smart" bots in a game like this.

I admit it would be fun if they were a bit better though.

PS. Did you get an early copy of cz? :P
User avatar
Wabbitface
Posts: 224
Joined: 23 Jan 2013, 10:00
Location: South Wales, UK
Contact:

Re: When will bots get a brain?

Post by Wabbitface »

They also only shoot you perfectly in the center of your hitbox, which means when they see you partially behind cover, they don't even try to hit what is visible.

That's one thing and another is of their fascination with jumppads. "Ohhh a jumppad, I better use it, Ohhh a jumppad, I better use it again, Ohhh...."

As players, sound is our wallhack in the game, at least give the bots some sort of realisation of when you are closeby and make them change their movement to make themselves harder to hit from your position. This is one of the areas in which you can change their difficulty.


But hey bots took ages to get into the game, and after most recent updates they improve but only by a little.
Liam 'Wabbitface' Watson
ShootMania Shout-caster
Specs | Intel i5-3570k @ 3.80GHz | 16GB 2400MHz | Nvidia GTX 780 | Win10.1 64bit | Asus Maximus V Formula
User avatar
Acclement
Posts: 13
Joined: 08 Aug 2014, 09:30
Location: Berlin
Contact:

Re: When will bots get a brain?

Post by Acclement »

I had the same problems while devolping Bots for my TitlePack...
I had to create special Maps that are easy no navigate even without busters and stuff.
It is kinda sad that they don't even run, or realize "OH i got shot from behind maybe turn around?".
They get stuck easily and do not even realize it.
I am not saying, that they should use everything like a Pro Player would do, but they should have alteast some awareness of their surroundings.

If anyone is interested in my Mode or how i implemented the Bots:
http://forum.maniaplanet.com/viewtopic. ... 00#p226800
novationx
Posts: 2723
Joined: 10 Aug 2013, 22:33

Re: When will bots get a brain?

Post by novationx »

So you're limited in your mapping which results in "worse maps".
Again a good arguement to improve bot behaviour. Ty :thumbsup:


Also, I have absolutely no clue how you improve bot behaviour. I dunno if its hard or easy... but even small improvements would be already awesome.

"dont stuck a bot in a spawn"
"let them avoid water & offzone"
"let them take jumpers"
"teach them to zigzag"

Again, this looks "easy" to me, so I suggest it, but maybe its very hard. Anyways... any improvements are surely welcome :)
The neverending waiting game has to stop.
User avatar
Acclement
Posts: 13
Joined: 08 Aug 2014, 09:30
Location: Berlin
Contact:

Re: When will bots get a brain?

Post by Acclement »

Here is what i did to increase the "awareness" of them:

Initialization:

Code: Select all

_Player.Driver.AggroRadius = 100.;
_Player.Driver.DisengageDistance = 200.;
_Player.Driver.Accuracy = .9;
_Player.Driver.Agressivity = 100.;
_Player.Driver.Fov = 100.;
_Player.Driver.ShootPeriodMin = 100;
_Player.Driver.ShootPeriodMax = 500;
_Player.Driver.ReactionTime = 200;
_Player.Driver.RocketAnticipation = True;
_Player.Driver.Scripted_ForceAimInMoveDir = True;
_Player.Driver.AttackFilter = CSmPlayerDriver::ESmAttackFilter::AllOpposite;
As players, sound is our wallhack in the game, at least give the bots some sort of realisation of when you are closeby and make them change their movement to make themselves harder to hit from your position. This is one of the areas in which you can change their difficulty.
I don't know if I unterstood you correct but here is what i did:

Code: Select all

	else if(Event.Type == CSmModeEvent::EType::OnShoot)
	{
		Shoot(Event);
		PassOn(Event);
	}
	else if(Event.Type == CSmModeEvent::EType::OnNearMiss)
	{
		NearMiss(Event);
		PassOn(Event);
	}
	else if (Event.Type == CSmModeEvent::EType::OnHit) {
		if (Event.Victim == Null || Event.Shooter == Event.Victim) {
			Discard(Event);
		} else {
			//For Bots
			if (Event.Victim.Armor - Event.Damage > 0)	//Player still alive
			{
				if (Event.Victim.Driver != Null) // Victim is a Bot
				{
					ForceTarget(Event.Victim, Event.Shooter);
				}
			}
...

Code: Select all

Void ForceTarget(CSmPlayer Bot, CSmPlayer Target)
{
	if (Target.SpawnStatus == CSmPlayer::ESpawnStatus::NotSpawned) return;
	if (Bot.Driver.ForcedTarget != Null)
	{
		if (MathLib::Distance(Bot.Position, Bot.Driver.ForcedTarget.Position) > MathLib::Distance(Bot.Position, Target.Position) || (Bot.Driver.ForcedTarget.SpawnStatus == CSmPlayer::ESpawnStatus::NotSpawned))
		{
			Bot.Driver.ForcedTarget = Target;
		}
	}
	else
	{
		Bot.Driver.ForcedTarget = Target;
	}
}

Void Shoot(CSmModeEvent _Event)
{
	//Some constants you can change the way you like
	declare Real MaxRange = 50.;

	foreach (Player in Players) 
	{
		if (Player != _Event.Shooter && Player.Driver != Null)
		{
			if(MathLib::Distance(Player.Position, _Event.Shooter.Position) < MaxRange)
			{
				ForceTarget(Player, _Event.Shooter);
			}
		}	
	}
}

Void NearMiss(CSmModeEvent _Event) 
{
	// Catch invalid events
	if (_Event.Victim.Driver == Null) return;									// Victim is not a Bot
	if (_Event.Type != CSmModeEvent::EType::OnNearMiss) return;					// Wrong event type
	if (_Event.Shooter == Null || _Event.Victim == Null || _Event.Shooter == _Event.Victim) return;	// Invalid players
	
	ForceTarget(_Event.Victim, _Event.Shooter);
}
Sad but true, I did not find a way to let them move "zigzaging" or improve their navigation...
But at least they realise that someone is shooting them :thumbsup:
Last edited by Acclement on 28 Aug 2014, 16:13, edited 1 time in total.
User avatar
Dommy
Translator
Translator
Posts: 1866
Joined: 25 Aug 2011, 21:45
Location: Poland
Contact:

Re: When will bots get a brain?

Post by Dommy »

Nice work Acclement :thumbsup:

I got an idea to expand your functions to library, so all modes can benefit from it, what do you think? ;)
Ryzen 7 2700X, GTX 1070 Ti, 16 GB RAM, Windows 10 Insider Build
FORUM MODERATOR • CREATOR OF SHOOTMANIA GALAXY & TRACKMANIA² PURSUIT

Contact me via GALAXY & PURSUIT DISCORD
User avatar
Acclement
Posts: 13
Joined: 08 Aug 2014, 09:30
Location: Berlin
Contact:

Re: When will bots get a brain?

Post by Acclement »

domino54 wrote: I got an idea to expand your functions to library, so all modes can benefit from it, what do you think? ;)
Here is what I did: https://www.dropbox.com/sh/ua5kz39n0q50 ... o1HBa?dl=0
The Navigation of the Bots is still poor....
novationx
Posts: 2723
Joined: 10 Aug 2013, 22:33

Re: When will bots get a brain?

Post by novationx »

Acclement wrote:
domino54 wrote: I got an idea to expand your functions to library, so all modes can benefit from it, what do you think? ;)
Here is what I did: https://www.dropbox.com/sh/ua5kz39n0q50 ... o1HBa?dl=0
The Navigation of the Bots is still poor....
Why is it our job to do this...? :o

( but Thank you for doing this ofc )
The neverending waiting game has to stop.
Post Reply

Return to “Shootmania”

Who is online

Users browsing this forum: No registered users and 0 guests