Beginners first steps in AI

For questions about using Classic.

Post » Thu Jun 26, 2008 7:36 am

AI stands for Artificial intelligence.

Wah! you say ? i dont use that ?

Oh sure you do. Construct is not at the point yet to implement Multiplayer.

So all your games are puzzles or the player fights against enemys that you create.

Every, Any, Each enemy is driven by AI. Simple or complicated. But its AI.

We have a saying, roughtly translated: Pictures say so much more then words.
So Allow me to trow you in a commercial.
http://nl.youtube.com/watch?v=AYC8fTv2jp4

There are 3 messages that i would like to give by this.

Level 1 message:
KEEP ON WALKING !!!
If you at first do not are succesfull in the creation of your game. Dont give up.
Bring it to the forum is you feel completely stuck.
But keep on walking.

level 2 message:
Do you see how hard it is to take the Android as a machine ?
The player will do the same towards the enemys you create for him/her.
They are not machine in the players eyes, middle in the fire of the battle,
and you should try not to let them act as machines.

level 3 message:
Its easy to make the Enemys smarter then the player.
Its easy to make the Enemys this dumb, that they are beatable in a blink of an eye.

Its not so easy to make make the Enemys in a way that they are beatable, but only after a BAttle.

But rule number one is: the Enemys can NOT be smarter, faster, better then the player.
B
3
S
2
G
4
Posts: 322
Reputation: 2,119

Post » Thu Jun 26, 2008 7:02 pm

A prototype of an enemy being boring and way more dumb then the players object could be this.

download/file.php?id=60

The enemy is not moving, not interacting, not anticipating, and its no puzzle to reach him.
The enemy is no challenge at all.

Of course this is 1 side of the universe. One extreme side. But i have seen the other side a lot too, and in these forums.

Next post will be a another example.

Notice also how i bridged between the "every" condition executing its sub events and actions instantly, and the need for it to act as a timer.
If you use an "every" ..
the first execution is instantly, ..
the second execution is defined in the every parameters. Ticks or seconds.
B
3
S
2
G
4
Posts: 322
Reputation: 2,119

Post » Thu Jun 26, 2008 9:02 pm

And this,

download/file.php?id=61

Must be the most smart enemy ever made.
I did not even bother to give Coffee Cup Hero a weapon.

If i did, you probably could manage to shoot the enemy. But i have seen .caps with 50 enemy's as smart as this one.

It is a temptation though,
we know the position of the players object.
Why not let that big scary enemy move towards the players object.
And shoot him/her to elllllllllllllllllllllllllllll

But. Is it a challenge to play ? No sir. There must be ways in between.
B
3
S
2
G
4
Posts: 322
Reputation: 2,119

Post » Thu Jun 26, 2008 9:38 pm

Yes you can do things like ..

Give Player 1000 hit points, so it dies after 1000 times been hit by a bullet.
And give the enemy only 3 hit points.

Give the Player weapons that do more damage then the enemy does.

Give the Player Lives.

Give the player a shield.

And all those little aids invented to smooth a game.

But, you should see those as *fine tuning* the power relation between Player and Enemy.
Thats all they do anyway, increase or decrease the power of the player/ enemy.
They do not tune the *smartness* of an enemy.

The real challenge is to make enemy's that act as they are steered by humans. The next step is to fine tune with speeds, lives, health, hit points, damage control .. and so on.

Is it easy to do ? No. But you can do an effort. Bring AI in the enemy's. Take the game at least 1 step beyond the obvious.

Do we have tools to do this ? Ah yes we do. One tool are the conditions.
If the Player is not shooting at the me, then dont approach the player. Thats a simple condition, and if i remember right, used in Ghost shooter tutorial.

Do we have more tools ? Ah yes we do. Anything that lets the Enemy sense the Players object, in stead of just moving it towards the players object is a tool in this.
A lot of behaviors have things that we can use to construct a strategy.
Like the turret that can track Objects.
The Line Of Sight ....
The RTS movements ...
The Physics ...

I am not an expert in this. At the moment i just want you to shake you awake.
Telling you that moving the Enemy towards the Players object is not gonna do it.
I am not an expert in Construct anywayz.

I have not idea yet what next post in this will be.
B
3
S
2
G
4
Posts: 322
Reputation: 2,119

Post » Thu Jul 10, 2008 6:36 am

Lol, from your other tutorials, I expected you to give a CAP with a solution in the end :P Well, yeah, I guess this means I should get back to writing that tutorial on AI :)
B
2
G
4
Posts: 26
Reputation: 1,102

Post » Thu Jul 24, 2008 5:59 am

Instance, nice tutorial idea! How about some examples, like:

Floating enemy chases player











:oops: .........not.......that...I.....need......that.....
B
13
S
3
G
5
Posts: 286
Reputation: 3,193


Return to Help & Support using Construct Classic

Who is online

Users browsing this forum: No registered users and 7 guests