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
Virion
Competition winner
Posts: 2148
Joined: Mon Dec 18, 2006 5:04 am

Post by Virion »

An article for your reference:

Fixing Pathfinding Once and For All
http://www.ai-blog.net/archives/000152.html#more
joshua1091
Posts: 23
Joined: Thu Aug 09, 2007 5:16 pm

is there any other link/mirror

Post by joshua1091 »

please bear with me...the link you provided for irrai actually worked...after completion of around 5mb..my flashget showed something like 'maximum error'..the download stopped...now whenever i click the download link in the mediafire page..it reloads and the provides me with a link telling 'click here to start download'...when i click on it..it reloads and shows the same link...
my internet speed is slower...does this have anything to do with the download stopping...is there any other mirror sites....torrents...please help me.....
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Excellent article Virion. I'd seen NavMesh articles before but they never explained how you created them or how you found paths through them etc. This article looks much better and actually explains why they're good and they're not bad, so i'll have to have a good look into this.

Joshua, is it IrrAI 0.4 for Irrlicht 1.4.1 you want?
Image Image Image
joshua1091
Posts: 23
Joined: Thu Aug 09, 2007 5:16 pm

hi got it already..thanks

Post by joshua1091 »

hi..i wanted irrai...not irrlicht....however i got it...some kind of problem with my internet connection..thank u for the response...
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Glad you managed to get it joshua, don't hesitate to ask any questions!

I thought i'd also just add that i'll probably use the forum for any info updates now really, though big updates like new versions will get posted here still.

I've just started a thread on the forum about an IrrAI file format which will be part of 0.5 and will replace the current way of storing waypoints in the .irr file: http://www.freepowerboards.com/irrai/irrai-about5.html
Image Image Image
kingdutch
Posts: 76
Joined: Tue Sep 02, 2008 7:01 am

Post by kingdutch »

Yay go JP! I'm really looking forward to more updates of IrrAI :o

I like how it has an editor but I'd also like it if you could make dynamic waypoints in C++ like using coordinates etc. since it'd allow for dynamic maps and stuff like that!

Really nice project, keep on going! :D
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Thanks for the support kingdutch, appreciate it :)

IrrAI 0.5 is slowly approaching.. it's had quite an overhaul and the Editor has come along quite a way too so should be some good stuff in the next release, though i don't know exactly when that will be unfortunately!

By dynamic waypoints do you mean ones created by you within your own code? That's totally possible as there's a function in the manager which creates a waypoint at a specified location so you can just call that in your own code. The dynamic environments thing i had a good idea for how to handle that but i'm also considering moving to Nav Meshes (or at least adding them as an option alongside waypoints) for 0.6 and they could handle that too as far as i can see and would be much better than waypoint graphs.
Image Image Image
joshua1091
Posts: 23
Joined: Thu Aug 09, 2007 5:16 pm

hi,is this a bug..or lack of a feature

Post by joshua1091 »

hi....JP..i was using irrai editor....
just palying with it..
i added like 12 waypoint nodes...then linked them the way i liked...
and then i saved the file....
and closed the editor...
no problem so far..
now when i open the editor and load the irr scene (from three steps behind)
all the waypoints and links are gone..except for few white boxes....
the command prompt (displayed with the editor)also shows
Could not create scene node of unknown type: text
i didnt go through this forum to know if this was already brought to your notice...
in case it isnt...i think this should help with the development of editor version 0.5...
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Interesting...

Well the white boxes would be the waypoints, are there 12 of them? Are they positioned as you positioned them in the editor?

Text nodes are exported by Irrlicht to .irr files but for some reason it doesn't load them back in, maybe i should raise this as a bug as it sounds like they should be loaded if they're exported!

If you send me your .irr scene you created with the editor and any resources required to use it then i'll have a look at it for you.

The editor in 0.5 will be quite different to the one in 0.4, lots of new features and much more robust!
Image Image Image
joshua1091
Posts: 23
Joined: Thu Aug 09, 2007 5:16 pm

think of this...

Post by joshua1091 »

can i send the scene to your mail id specified in the profile


the scene has just one component....
a terrain designed with ms3d in ms3d format

and what about the "set" text box provided in open and save dialogs...in AI editor
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Yeah, not my hotmail address though, i don't check that these days. If there's no other email address then check my website for an email address or upload it to somewhere like mediafire/rapidshare and post the link here.

The set box was a quick hack to get Drive switching working, so if you start on the C drive you can switch to other drives. Got a better way of doing it now in the latest version, works much more like a normal file dialog.
Image Image Image
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Post by christianclavet »

Hi, JP.

Seen that you done a lot of goodies for the community! Thanks a lot!

I don't have time to write code these day, too busy at school doing level design.

I was wondering if on a later version you could try to implement some kind of NAVMESH for the navigation of the NPC. (I'm learning level design using VALVE SOURCE engine, and learning the way they do it)

The navmesh is really simple, it's a standard mesh. AS a standard mesh each vertices are connected to each other and have unique id.

So the way the AI would pick up is that the user create a mesh (preferably subdivided) that cover the area that the NPC would have access to. So the AI navigation would look witch vertice is the nearest of the NPC and check for the next interconnected vertice on the mesh for a proper direction (as it's doing now, but on a vertice level instead of a node level). So a user of the AI would only have to hide the mesh from rendering but still be used for the AI. This will allow level designers and modeler to create their map and specifically tell the AI where the NPC can move. [EDIT] Cool, I just saw that you are evaluating this for release 0.6!

I don't know how difficult and long the implementation would be, I'm just proposing this.

From what I saw so far, they define "classes" for NPC that refer to a AI script defining the character ability. For that to work effectively, I suppose we would have to have basic functions for AI and create external files (such as a SQUIRREL or PYTHON scripts that would define the conditions of the NPC)

One interesting thing I saw on the AI is the "relationship" we can define for each NPC as states:
- Hate (Character would attack)
- Neutral (Character will continue what it's doing)
- love (Character will follow) (Nice for have reinforcment and squads)
- fear (Character will run away)

Setting these with a NPC (As the HL Citizen) will define how the character will behave. They call this "AI_RELATIONSHIP" and you can set each NPC to another NPC or player. Using this, I was able to set battles between NPC

As for the NODE system you've created, they use a similar system for "hinting" the NPC about specifics of the map as:
- Visually interesting (Characters will look there and even walk there if they are not interupted)
- Crouch (When battling, the NPC will know they can crouch there for cover)
- Dangerous (For example, a exploding barrel is there, this will signal the NPC that it's dangerous to stay near the node)
- Door "pinch" This will signal the NPC that a door is there, some character with defined capability can even open the door and enter the area.

- Jump, tell the NPC there is a way up if he jump (if the AI class has the capability to jump)

And much more...

I'm not asking for all this, just hope to give you some more ideas for future releases...

I just want to congratulate you again! The libraries that you've given (IRRAI and IRRPHYSX). You give not only the libraries but working examples with the source. That is giving everybody a chance to pick it up and apply to their project fast and easily!
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

Yep I decided that Navmesh support was a bit much to include in 0.5 so figured it would be something nice to consider for 0.6. Navmesh support would indeed be so much better than just waypoints, but as you say they can still have their uses for marking points on the map and marking out rough patrol routes as well.

I had some horrible problems with 0.5 with breakages and bugs but it's come back together nicely now so it shouldn't be too long before it's finished (*fingers crossed*!!).

I should point out that I'm going to be in a new job by January so my time available to work on my personal projects is going to plummet. I'll still want to support and expand them but it could get pretty darned slow... Maybe I'll have to get some extra help onboard or something.

Scripting is actually something I don't have experience with but is said to be useful to AI so it could be something I could look into at the future. At the job i'm open to start in January they talked about my AI skills and scripting so they may want me to learn it which would no doubt be useful.

This is, of course, assuming that I'll be allowed to continue my projects whilst at this new company... They may deem it unsuitable for me to be working on open source projects that could be linked closely to my professional work and hence leaking code from the company...

What I've done in 0.5 is pretty much expose the NPC code so that you can completely and easily code up your own version so if I had to halt development or it just slowed down then you'd be able to code in the necessary behaviour yourself if my vanilla NPCs didn't do the job quite right.
Image Image Image
christianclavet
Posts: 1638
Joined: Mon Apr 30, 2007 3:24 am
Location: Montreal, CANADA
Contact:

Post by christianclavet »

Hi, JP.

Yes, your nodes could serve as patrol routes, path nodes for moving platforms (trains, elevators, etc)

Yeah... My time has plummetted already... Developpement progress is very-very sloooow now. I put all I have to be ready for the industry here as a good level designer.

It would be great if others that have time and knowledge would help you out on those 2 great projects (IRRai and IRRPhysX)

You could discuss with your new compagny about coding for your own project outside work. The things you learn and develop will come back to them anyway, so it's a definitive plus!
JP
Posts: 4526
Joined: Tue Sep 13, 2005 2:56 pm
Location: UK
Contact:

Post by JP »

It's so good to know that your development is going slow too :twisted:

In two ways! One because it means my lack of time isn't holding you back and two because it means you must really be getting somewhere with your level designing, which is great news!

The latest news on my job is that i'm accepting one of the two offers i was given which will mean i'll be starting sometime in january, so i've got until then to make the most of my free time at Sony! The other job was within Sony in one of the studios and would have seen me starting next week probably which would have really put a spanner in the works a lot quicker!
Image Image Image
Post Reply