irrAI 0.50 - AI module for Irrlicht [Updated 28/11/09]

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
xtayxkjy
Posts: 13
Joined: Sun Nov 16, 2008 8:41 am
Location: China

Re: irrAI - AI module for Irrlicht [Updated 21/7/08]

Post by xtayxkjy »

Hi ,JP,I can`t download irrAI from your link, Can you send it to my mailbox.Thank you very much!
My mailbox:xtayxkjyhh@163.com
fmx

Post by fmx »

xtayxkjy (talk about unpronouncable :P)

JP has said before that he's working on a new updated version of irrAI (v0.5) which will be VERY different to the old irrAI (v0.4, the version you are asking for)

You should wait until he releases the new version and use that instead.
:)
xtayxkjy
Posts: 13
Joined: Sun Nov 16, 2008 8:41 am
Location: China

Post by xtayxkjy »

But I need it now.
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

xtayxkjy, how can you not download it? What problems are you having?

I would certainly advise waiting for the 0.5 release as it will be much easier for you to use.
Image Image Image
xtayxkjy
Posts: 13
Joined: Sun Nov 16, 2008 8:41 am
Location: China

Post by xtayxkjy »

OK,I will wait for you!Thanks.
xtayxkjy
Posts: 13
Joined: Sun Nov 16, 2008 8:41 am
Location: China

Post by xtayxkjy »

I come from China, the web site of the irrAI restrictions in China Open, I asked other people in China, they also can`t open.
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Very interesting! Is that mediafire.com which is restricted or my googlepages website?
Image Image Image
Virion
Competition winner
Posts: 2148
Joined: Mon Dec 18, 2006 5:04 am

Post by Virion »

不明白, why China gov keeps blocking websites. :s
Halifax
Posts: 1424
Joined: Sun Apr 29, 2007 10:40 pm
Location: $9D95

Post by Halifax »

JP wrote:I would certainly advise waiting for the 0.5 release as it will be much easier for you to use.
I am eagerly awaiting that. I would like to test out some things. Would you mind if I messaged you about some ideas later on JP?

By the way, I was fooling around with your IrrAI editor, and it is a great tool. Definitely makes placing waypoints loads easier and more efficient. It's very intuitive as well. Once I got the hang of it I went waypoint crazy! :lol:
TheQuestion = 2B || !2B
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

The new editor will be even better! It's been so long since i've updated i'm unsure what's new and what isn't now... but it'll be good anyway!

Message away Halifax :)
Image Image Image
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Just thought i'd leave a quick message saying that IrrAI 0.5 is coming along well. I've been slowed down quite a lot in the past week or so due to some rather nasty stress to do with sorting out my new job, finding a new flat, getting out of my current flat without pishing off the landlord so much that he keeps my £750 deposit and sorting out a car to get me to my new job...

Anyway, i start my new job in mid January and i aim to get IrrAI 0.5 done by then, after that i'll be unsure as to how much more development i'll be able to do, at least at any useful rate!
Image Image Image
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Post by rogerborg »

New job? I'm thinking pirate, or perhaps a pirate's moll.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
IrrNoob
Posts: 110
Joined: Sun Nov 16, 2008 8:01 pm
Location: Fort Collins, Us

Post by IrrNoob »

Well, that kind of stinks JP, concidering how cool this is.
Could irrEdit incorperate irrAI and irrPhysx?
Is anyone thinking along the path of improvement like that?
Who is going to do maintainance on this project? I'm too
poor of a coder to consider this myself. :oops:
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

I really don't want to abandon these projects entirely... They've been great experience for me and have been fun (most of the time anyway ;)) and it does seem that there are people who want to use them and so will require ongoing development and support.

I think i'll have to see how it goes with my new job and everything. To be honest I reckon I can probably pull my finger out a bit and do some work in the evenings and weekends instead of sitting in front of the TV watching soaps with the missus... It's just habit now instead of being interested.. the missus watches and I just collapse there after a long days work! Instead I can collapse in from of the PC :lol:

Incidentally my new job will be working for a studio under Activision, obviously on games programming, so it's not going to be too bad leaving Sony as Activision are a pretty big publisher! Currently I can't tell you what project i'll be working on as it hasn't been announced to the public yet ;)
Image Image Image
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Phew 0.5 is finally done and uploaded... See the first post for the download link.

There's a new example showing how to make custom entities so you can basically write your own NPCs or whatever as necessary if my basic implementations aren't up to scratch.

The IrrAI Editor has had a complete overhaul and is much better now. It uses its own .irrai file format now instead of piggybacking the .irr scene format which should make it much more flexible. There's waaaay too many updates to the editor for me to say here so just check out the PDF manual for it in the irrai/doc folder and feel free to post if you're confused at all! One addition i will note is that the editor can now create entities, see the rpg example for an example of how to handle entities which have been created in the editor.

I've dropped devc++ support a little as i've now switched to MSVC (much better!). Though after seeing all the people trying to convert IrrPhysx to devc++ or similar i've taken pity on you and provided a GCC library so you don't need to recompile IrrAI yourself. (note that the lib is completely untested i just compiled it up, didn't get any warnings and hopefully that's enough!)

This version of 0.5 is for Irrlicht 1.4.2... My next task will be to make sure i can get it working with Irrlicht 1.5 and then i'll release that version too.

Some of the examples have changed names... the pathfinding & fov example is now called 'simple example' and the chasing & fleeing example is called 'fps example'. The new 'custom entity example' shows how to create your own entities without needing to recompile IrrAI. It also shows the new AI sensors used as checkpoints and powerups. The powerups were placed in the editor as a special group of unlinked waypoints which are basically used as markers, that's an idea from FMX, clever chap!

In the FPS example you can now choose which map you'd like to play on (only the 0th waypoint group is used by the NPCs though). I've also added a toggle so that you can see how it works with field of view occlusion on and off. The example is compiled to use IrrPhysx for the occlusion raycasting but can be changed to just use standard irrlicht raycasting instead by commenting a #define (just like in the irrlicht demo app). An 'Under Attack' event has been added to the NPCs so that they can react if they're attacked by an unseen enemy. NPCs can also alert their allies when they see an enemy so they can converge on that enemy, or flee from it.

The horrible thing about 0.5 is that i've completely broken the API so it'll be rather hard to update to from 0.4... i'm really sorry about that but it really had to be done and i figured sooner was better than later! so feel free to have a rant at me but i only did it for your own good! cruel to be kind and all that! If you are updating from 0.4 then feel free to ask me for advice on it, most of the changes are name changes so could be quite easy to spot and fix.

Here's a list of some more changes:

CNPC split into CPathFindingNPC (INPC) and CCombatNPC (INPC->ICombatNPC)
Combat NPC's FOV dimensions are now 3D rather than 2D to allow for ease of expansion to different FOV types.
NPC AT_GOAL is an event rather than a state now
Calling smgr->clear() will really screw up the AI manager so you should clear the AI manager first, then call smgr->clear() and then call reinit() on the AI manager to recreate necessary nodes used by the manager
IrrAI now has its own namespace, namely IrrAI... easy fix when updating from 0.4 is to just add using namespace IrrAI to your files.
You can specify whether an NPC should check its FOV for enemies, allies or both, the default is to check for enemies but not for allies which to me seems the most common requirement so will save unecessary checks and events. This can easily be changed though with the descriptor structs or functions in ICombatNPC.
Acki's SimpleSteering AStar search implementation has been added and is the default search algorithm, you can revert back to using breadth first search if you wish by commenting the #define in CPathFindingNPC/CCombatNPC
IPathFinder interface has been added to implement multiple search algorithms and for search to be available outisde of NPCs if necessary
Added an interface for field of views to allow different ones to be implemented. One gripe some people had with the FOVs and waypoints in 0.4 was that they were all scene nodes and so clogged up the scene graph etc. Now they're not scene nodes at all but special debug scene nodes are provided if you wish to visualise the FOVs and waypoints. The waypoint debug node is actually a single node containing all the waypoints so is much better for rendering efficiency.
An occlusion callback has been added to allow you to use physics engines for occlusion checking instead of standard Irr collision. The standard irrlicht implementation (or an IrrPhysx implementation) is provided in the examples and should be easy to add to your own projects if need be.

Next job, other than getting it working with irr1.5 i think will be to update the 'About' page on the IrrAI website to be a bit more useful!
Image Image Image
Post Reply