Intense Ai: Free Pathfinding

Posted By: LarryLaffer

Intense Ai: Free Pathfinding - 04/13/06 06:39

Hello everyone!

I have been taking a look at the forums lately and I started wondering how many people would be interested in having Intense Ai's Pathfinding for free, as a thank you for waiting more than a year for Intense Ai to come out..

I know there's George's Perfect Ai pathfinding code out already and normally I wouldn't consider contributing yet another pathfinding system, but I've seen a number of threads about only 100 nodes available and no Z supported etc so I thought my contribution may actually be of some help.


Here's a feature list on Intense Ai's Pathfinding..
---------------------------------------------------

Points Of Visibility Pathfinding (node based)
Pure Dijkstra Search Algorithm (fast)
999 Max Nodes per level
999 Max Pathfinding-Entities per level
Three Dimensional (can handle floors, slopes, stairs, rough terrain, etc)
String Pulling (no zig zag paths)
Runtime Search(handles dynamic enviroments like doors, bridges and demolished walls)
Volume Raycasting(Size of entity is considered, making sure the path is wide and tall enough)
Gravity RayCasting(Making sure there's ground below the path. See here )
Polygon Precise RayCasting(Supports model-only levels and terrains)
Graph Generating Tool (automatically link nodes to each other. You just need to place them in the level)
Open Source C-script (no dlls)
Debuging Tools (Visually seeing the Graph and every c_trace made at runtime)


And here's a pic to prove I'm not lying



This is what I have to offer. However, I will only contribute if I see there's a popular demand for it. Ripping it from Intense Ai and writting a help file will take some time from me so I won't bother if people don't really need it. That's the reason of this first post. I'm waiting for your response...

Cheers all,
Aris
Posted By: ello

Re: Intense Ai: Free Pathfinding - 04/13/06 07:32

oh yes! what more to say:)
Posted By: msl_manni

Re: Intense Ai: Free Pathfinding - 04/13/06 07:40

Would be a Great Contribution.
Posted By: ulf

Re: Intense Ai: Free Pathfinding - 04/13/06 07:42

very nice work!
Posted By: Samb

Re: Intense Ai: Free Pathfinding - 04/13/06 08:18

oh my god... give it to me NOW!
so realtime search means you can use entity levels too? levels without blocks?
Posted By: XNASorcerer

Re: Intense Ai: Free Pathfinding - 04/13/06 08:42

YES! Give it to us!
Posted By: Damocles

Re: Intense Ai: Free Pathfinding - 04/13/06 08:53

String pulling
(a rubberband function?)
Posted By: William

Re: Intense Ai: Free Pathfinding - 04/13/06 09:08

Yeah, is the string pulling like a rubber band movement? So lets say you have 3 points and it will "guide" the model thru to points in a realistic fashion?
Posted By: beegee

Re: Intense Ai: Free Pathfinding - 04/13/06 09:21

Cool, very nice constribution! Hope this will be released soon...

Regards,
#benny#

--------
GenuineMotors.de
Posted By: Damocles

Re: Intense Ai: Free Pathfinding - 04/13/06 09:28

I guess this works (a bit similar) like B-Slines. To smooth the movement.

Do you extrapolate into the moving direction, Or is the function just dragging behind, like on
a rubberband?
Posted By: Matt_Coles

Re: Intense Ai: Free Pathfinding - 04/13/06 09:47

This would be an excellent contribution Aris
Posted By: Silent_Assassin

Re: Intense Ai: Free Pathfinding - 04/13/06 09:53

you know what ill be using this for Aris
Posted By: frazzle

Re: Intense Ai: Free Pathfinding - 04/13/06 09:58

That would be great if the bot could do that !!
All those features, WOW...
If you contribute it, that would be amazing, brillant...
What more to say , you get the point

Nice one !!!!
Posted By: Excessus

Re: Intense Ai: Free Pathfinding - 04/13/06 12:37

Please please please!
Posted By: Pappenheimer

Re: Intense Ai: Free Pathfinding - 04/13/06 13:23

Dito!
Posted By: Hellcrypt

Re: Intense Ai: Free Pathfinding - 04/13/06 13:43

This would be a nice contribution,
Posted By: JimFox

Re: Intense Ai: Free Pathfinding - 04/13/06 14:29

I agree with everyone else. It would be a great contribution. I know how elegantly you code, and so I'm sure it will work well.
I wonder though, if you might do better right now to push hard and finish the Intense AI. Once that is out and available for those who want the complete package, you will have more time to carve this out as a free sample.
Just a thought.
Regards,
Posted By: Serlink

Re: Intense Ai: Free Pathfinding - 04/13/06 16:26

Yes Please and Thanks
Sam
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 04/13/06 16:36

I'd be interested...it would be nice to test in a point & click environment. The Z support and string pulling is especially welcomed.
Posted By: Superku

Re: Intense Ai: Free Pathfinding - 04/13/06 22:49

This would be great !!!

Felix
Posted By: Lion_Ts

Re: Intense Ai: Free Pathfinding - 04/13/06 23:41

LarryLaffer!
What number of messages we have to post in this thread ? (How big response ?)

Contribute this, please! and thank you.
Posted By: testDummy

Re: Intense Ai: Free Pathfinding - 04/14/06 00:22

As you probably already know by now Aris, I've been writing a plugin .dll (pv) which contains some of the pathfinding functionality of Perfect AI. The primary purposes of writing such a thing were to improve my C++ skills, and gain experience in writing plugins for 3D GameStudio. Simultaneously, the secondary purposes were to produce something that might be useful to myself and others. If there was a demand great enough, I was going to contribute pv (open source) to the community, as I have done with eLL. Given the lack of interest in eLL (I am mainly at fault here), and the fact that you are now offering a superior (to what I have written, assumed to be at least given the descriptions of features and the assumption that your experience is much greater) path finding solution, I can only predict that the community would now widely dismiss a contribution such as pv, and that attempts to provide adequate details, explanations and documentation for such a plugin would be a waste of time. I suppose the fact that a potential contribution would probably no longer hold the meaning to the community it would have, is unimportant and irrelevant.

I think that, for as long as I work with 3D GameStudio, I will welcome any examples of pathfinding for 3D GameStudio, and certainly those with examples of more features. (Of course, I don't believe that generally, as a whole, the community is like-minded, welcoming inferior, weaker, less feature-rich, unnecessary examples.) I welcome what you offer. If you decide to make the contribution, I will thoroughly enjoy studying the source, and learning, if I am able.

The abbreviated version: I vote "yea".
Posted By: raiden

Re: Intense Ai: Free Pathfinding - 04/14/06 00:46

Would be very much interested in your AI.

Thank you

-raiden
Posted By: Grafton

Re: Intense Ai: Free Pathfinding - 04/14/06 01:02

Very generous offer, I could use such pathfinding. I hope you decide to
contribute it in some form. Thanks!
Posted By: snake67

Re: Intense Ai: Free Pathfinding - 04/14/06 03:49

Yea, this would be a very helpful contribution!
Posted By: Anonymous

Re: Intense Ai: Free Pathfinding - 04/14/06 07:27

That is a generous offer indeed, I'd be very interested. I'm struggling with AI at the moment, myself, so this could be good even to look over and see how it's done.
Posted By: Gafgar

Re: Intense Ai: Free Pathfinding - 04/14/06 09:02

i was first not planning on having nod path fining in my game but maybe i just changed my mind ;D

please give! ^^
Posted By: Christian__A

Re: Intense Ai: Free Pathfinding - 04/15/06 14:04

This would be a really great help for our project!
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 04/15/06 15:44

wow... I guess there IS a need for it..

ok, cool, keep an eye on this thread. It should be ready by tomorrow, or maybe the day after


Quote:

so realtime search means you can use entity levels too? levels without blocks?




No, realtime search means that the paths are generated on the fly, so if there's any change in the level, it will reflect on the path made(doors open and closing, etc). But you can use level without blocks as well


Quote:

String pulling
(a rubberband function?)

I guess this works (a bit similar) like B-Slines. To smooth the movement.




no, it's nothing like that. String pulling helps when you try to reduce the number of waypoints in a path so it will look a little nicer. Here.(pdf)


Quote:

I wonder though, if you might do better right now to push hard and finish the Intense AI.




Hi JimFox, how's the game going on? I managed to download the demo some time now but forgot to let you know. I really liked what I saw and I really enjoyed seeing Intense Dialogues in it being put into good use.

Anyway, it's cool, I got a few days free since the ball's at the animator hands right now. And It won't take me too long anyway


Quote:

LarryLaffer!
What number of messages we have to post in this thread ?




much less than what you did I didn't expect that much of a response..


Quote:

As you probably already know by now Aris, I've been writing a plugin .dll (pv)




I had no idea.. But I suggest you keep working on it and release it when it's done, there's hardly only one best way to do something. Your solution could be better at something that mine is not so the community could benefit from both(some people might prefer DLLs for example..)


Cheers,
Aris
Posted By: Damocles

Re: Intense Ai: Free Pathfinding - 04/15/06 16:12

As I have read from the document on string pulling,
the path is smoothed by trying to reach a node up the path if it is visible,
This works well on a pure 2D enviroment.
But using a trace wold not be enough, as the
bot might try to reach a node, he can see, but a crack in the floor
or a close edge might make him fall down.
So do you check on the floor, if there is some kind of drop?
Again, it a good sollution for 2D Pathfinding, but
might cause a lot of trouble in a 3D Arena.

Here another interesting page from valve:

http://developer.valvesoftware.com/wiki/Navigation_Meshes#Introduction
Posted By: slacker

Re: Intense Ai: Free Pathfinding - 04/15/06 18:19

sweet.
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 04/16/06 19:55

That document just explains the theory, u don't actually do a c_trace to determine a path between two points. I've talked about that before in this thread.

In detail, I've used a method explained in this site and looks a bit like this:



What you do is, simulate the NPC actually walking along the path, using c_traces with use_box of course. If there's an obstacle, you try again a bit higher to simulate the NPC's ability to climb, and if there's a gap below, more c_traces are used to drop the virtual 'npc' on the ground. The NPC's actual forward movement in pixels is used as well as it's MinMoveZ value(climb ability), to give accurate results.



Of course, a less accurate simulated walk is made in runtime checks for links. Runtime checks include:

Npc-->Target Point (check for direct link, to avoid engaging pathfinding)
Npc-->Closest Waypoint(find nearest point to pathfind from)
Target Point-->Closest Waypoint(same here)
String pulling:Npc-->2nd Waypoint(Try to eliminate 1st waypoint)
String pulling:2nd to last-->Target Point(Try to eliminate last waypoint)

Every other Waypoint in the path is pre-checked and pre-optimized(no string pulling) using Dijkstra on a pre-compiled automatically generated graph.


For these 5 functions, an optimized and more lose version of the simulated walk costs about 1000 microseconds on my machine (2.4ghz, 512mb, ati radeon 7500 mobility). So all 5 of them for each Pathfind take 5000 microseconds plus 10000ms to do Dijkstra in a huge level with about 250 waypoints(the bigger the search space the slower the algorithm). 15000ms is a pretty good speed and moves 30 NPCs simutaneously with no problems in my machine..

Here's a String Pulling example



The Npc has already made it to the Target Spot. The original path generated is illustrated with the thick red line(Red Waypoint-->Blue Waypoint-->Target Point).

Before attempting to move on path, it tried to do some StringPulling and remove the blue waypoint altogether. So a check for the link between the Red Waypoint and the Target Point was attempted. You can see the simulated walk drawn in the blue lines, making step by step and dropping to the ground every step. At some point it fell down the bridge, kept going on the ground below and collided with the gray box(if you observe you see an additional blue line a little higher also colliding to the gray box which is an extra raised attempt to check if the obstacle is climbable(it wasn't, it's a really tall gray box). So the String Pulling is discarded and the original path was taken(or the Npc would fall off the bridge)

I hope I made some sense...

The Wikipedia link you sent me was about NavMeshes and is a whole different thing. NavMeshes are by far superior to my approach(Points of Visibility). I made a go on NavMeshes some time ago, in co-operation with Dr. Scott Goodwin from CIDER, for an implementation on GameStudio, but it proved very hard. (Support for terrains and model-only levels would be overwhelmingly hard). Maybe some time in the future, I could give it another go. If you or anyone else is interested in helping in this, send me a PM, it would be a nice experience.


Btw, the contribution is ready. I'll get some sleep and then write some documentation and upload it when I wake up.

Cheers,
Aris
Posted By: Damocles

Re: Intense Ai: Free Pathfinding - 04/16/06 22:03

Ok, sounds reasonable to check it that way.
You should (but I guess you already have)
include the option to switch off the string pulling calculations
for performance issues in large levels.

I still go for pure node to node movement
to avoid situations, where the bot might get stuck on
corners and other obstacles. It looks more "on rails",
but the movement of the bot is smoothed by some other means to,
so he does not have a choppy movement.
(similar to watersking with a rubberband)

Realizing a nav-mesh would work out really cool in
a game, but of course the creation of such a mesh
would be very hard to realize by an automated script.
A very skilled level-mapper could do that by hand,
(but lots of work of course)
Posted By: Kotakide

Re: Intense Ai: Free Pathfinding - 04/17/06 09:59

i just can't wait any longer, c'mon wake up ! and give me your nice code.
Posted By: xXxGuitar511

Re: Intense Ai: Free Pathfinding - 04/17/06 18:08

WOW dude... If you would give out your pathfinding dll for free!, with documentation!, you'd be the coolest dude in this forum. Thats an amazing pathfinding plugin. PLEASE post it man. More than half of the people that use 3dgs need that. I believe in posting things for free, such as I do with everything i make. Like Kotakide sayed, "We can't wait..."
Posted By: Hellcrypt

Re: Intense Ai: Free Pathfinding - 04/17/06 23:54

Ella malaka, Grigora
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 04/18/06 00:31

hello everybody,

Today was a busy day for me so I haven't even started on the documentation, but I did promised to publish this today, so here it is.

Intense Pathfinding - 2.6MB

Post all your questions here so I'll know what to include in the documentation. I'll start on it first thing tomorrow morning..

In the meantime, I have a question myself to all Standard and Extra users. Do you see a red line which draws the Path that the Npc takes, like there is one in my screenshots above, when you run it from WED?

And here's some quick info on the controls:


I J K L: Moves the camera around.
Right Mouse button Pressed: Rotates the camera
Left Click Anywhere: Orders the Npc to walk there
Enter: Switches through the 3 Debug modes
ESC: Exits


Running the Graph Maker bat file lets you re-create and examine the Graph


Thanks to DexSoft for their theme park models


Aris
Posted By: xXxGuitar511

Re: Intense Ai: Free Pathfinding - 04/18/06 01:52

DUDE!!!! THANK YOU!!!!!!!!!!!

Going to go test it out right now.................

THANKZ DUDE...................... SERIOUSLY..................
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 04/18/06 02:44

It seems to be quite indestuctible. The only hiccup was when the player got stuck under the stairs. Also, if you continuously click the left mouse button, it will increase the function count by one for each click. So, if I press the button 50 times before the player gets to the spot, there will be 50 functions running on top of whatever runs all the time. If you click a null spot, it zeros out(except for those 6-7 always running functions), and the player stops moving.

Anyway, congratulations...this is perfect for a point & click game..adventure or otherwise.
Posted By: Kotakide

Re: Intense Ai: Free Pathfinding - 04/18/06 02:57

Finally, You're awake
your contribution is very nice and very useful for me, and the red line when I click the ground is remind me to Command And Conquer game, yeah it's good...
but I have a little complain about these...

http://i56.photobucket.com/albums/g182/obinkmalmsteen/Clip_2.jpg

When I click the ground bellow
Why he pick the straight line and jump, instead the stairs?

http://i56.photobucket.com/albums/g182/obinkmalmsteen/Clip_3.jpg

he's not takes the shorter way!

the rest is nice and very good contribution.
Posted By: ello

Re: Intense Ai: Free Pathfinding - 04/18/06 07:13

THANK YOU!! what an easter egg
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 04/18/06 12:46

Hiya,

Glad you all liked it.. Now about your 'little complains'..

Quote:

The only hiccup was when the player got stuck under the stairs.




Yeah I got that once as well. In your game, a layer above the Pathfinding should detect this(I set the is_bIsStuck flag of the Npc when he gets stuck by any reason) and attempt to get him unstuck and do to pathdfind again


Quote:

Also, if you continuously click the left mouse button, it will increase the function count by one for each click. So, if I press the button 50 times before the player gets to the spot, there will be 50 functions running on top of whatever runs all the time. If you click a null spot, it zeros out(except for those 6-7 always running functions), and the player stops moving.




Good catch.. I fixed it.


Quote:

Anyway, congratulations...this is perfect for a point & click game..adventure or otherwise.




Thanks


Quote:

http://i56.photobucket.com/albums/g182/obinkmalmsteen/Clip_2.jpg

When I click the ground bellow
Why he pick the straight line and jump, instead the stairs?




Because falling down makes a shorter path than going down the stairs. In a game like Quake3 would you jump directly off a platform or try to find the stairs?

Anyhow, I hear what u say.. Sometimes it might be preferable for the NPCs to take the longer but safer route.(might take damage if they fall down big distances). So I made an is_ai_MaximumFall constant that you can define the maximum that your NPCs are ready to fall down.

Graph re-made with is_ai_MaximumFall==100 pixels (instead of 500)



And here's a path



However, I like it better when the NPC takes the shortest route in this level, so is_ai_MaximumFall is originally set to 500, but feel free to change it to whatever, it's in the is_IPathfinding.wdl(don't forget to re-build the graph, when you do). More on this on the Documentation coming up..



Quote:

http://i56.photobucket.com/albums/g182/obinkmalmsteen/Clip_3.jpg

he's not takes the shorter way!




That's a case where String Pulling (responsible for making smoother paths) fails due to tricky ground(bridges and all), exactly like we talked with Damocles a few posts ago. You can usually overcome this by re-arranging the waypoints in the level.

I fixed that for the case you found. But maybe it can happen somewhere else as well. I'll give out some good tips on laying out your waypoints in the Documentation.




And a new version with the new fixes.. The original link a few posts ago is updated as well though.

Intense Pathfinding 1.01

Code:
 
Fixes from 1.0
------------------
Fixed function leakage when attempting to take a new path before the old one is finished.
Added functionality to choose between falling from big distances to take the shortest path, or take a longer but safer(no falls) path.
Rearranged the Waypoints of the level for smoother paths.





Thanks all for your comments. Keep ep coming!

Aris
Posted By: immersionfx

Re: Intense Ai: Free Pathfinding - 04/18/06 14:37

Ari,

very generous contribution indeed! THANK YOU man.

P.S. Xathikame alla xairomai pou to project sou zei kai basileuei. Tous exeis kanei na paramiloun, twra oloi perimenoun th synexeia! Na'sai kala kai filia apo thn patrida, opou kai na'sai..
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 04/18/06 17:25

Here's a weird one:

http://www.geocities.com/hainesrs/game/ai1.jpg
http://www.geocities.com/hainesrs/game/ai2.jpg
http://www.geocities.com/hainesrs/game/ai3.jpg
http://www.geocities.com/hainesrs/game/ai4.jpg

Sometimes, if you click on the side of a block, the player will try to move there and sometimes it won't. Ideally, you're going to want it to never do it or do it everytime(unless certain conditions are met...see below).

I think it would be nice to be able to toggle this behavior. If it's turned on then when a wall(or any object) is clicked, the player will move to the closet "legal" spot to the point. Of course, it won't be able to get to the clicked spot, but it should be smart enough to stop short of it if it can reach anywhere near that area. If an area is truly off limits, then the AI should know this and then a null function could activate(the red "X" stuff).
Posted By: Pappenheimer

Re: Intense Ai: Free Pathfinding - 04/18/06 17:26

That's very very generous!!!

Perhaps, only a small step for you, but surely a big step for the community!!!!
Posted By: frazzle

Re: Intense Ai: Free Pathfinding - 04/18/06 19:03

Nice contribution !!
This looks very promicing
You are comming closer and closer
to the perfect AI, keep it up !!
Posted By: beegee

Re: Intense Ai: Free Pathfinding - 04/18/06 19:04

Hey, very much thanks for this nice constribution!

Regards,
#benny#

---------
GenuineMotors.de
Posted By: Excessus

Re: Intense Ai: Free Pathfinding - 04/18/06 19:42

Thanks alot Aris!

I've been learning about pathfinding lately, and this will hopefully help me understand it better. The code seems to be documented/commented pretty good so that's great.

PS. why did you choose the dijkstra algorithm? What are the advantages over say, A*? Is it faster? Easyer to implement? How is performance for long and short paths compared to other algorithms?
Posted By: Damocles

Re: Intense Ai: Free Pathfinding - 04/18/06 19:52

A* is the better sollution for RTS type of 2D Pathfinding, with thousands of nodes.
It would not be the optimal sollution for 3D "Shooter" Type of games,
as it is unnessicarily complicated too for this purpose.
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 04/18/06 20:57

Hello!

thank you for your comments everyone.

I'm glad I've published this already, cause I've yet to start on that stupid documentation. Hopefully, I'll get some free time tomorrow. You get some idea from the comments anyway, but I also want to give you some good tips that would save you a couple of hours looking around.. So, tomorrow then... sorry


Quote:

Sometimes, if you click on the side of a block, the player will try to move there and sometimes it won't. Ideally, you're going to want it to never do it or do it everytime(unless certain conditions are met...see below).




You're a hell of a beta tester.. I'll see what I can do about that, probably drop the target spot to the ground and attempt to pathfind there, if there is a path. Nice catch again..


Quote:

PS. why did you choose the dijkstra algorithm? What are the advantages over say, A*?




There aren't any. A* is better, it's as simple as that. The reason I haven't upgraded from Dijkstra to A* yet(it won't be more than 3-4 extra lines of code), is that Dijkstra is doing ok. You won't get any decrease in the performance from running that algorithm several times per frame, so I put my effort into optimizing other things instead.

Don't forget though, that the actual search algorithm(breadth-first, depth-first, Floyd, Dijkstra, A*) is only half the picture. The underlying data structure is also critical, if not the most important part. The first pathfinding I made for 3dgs was inspired by Philipp Walser's tutorial and did a run-time A* search on a dynamic square-grid search space around the NPC. Needless to say, all these useless nodes that were being placed in stupid positions and flooded the whole level made up for a terrible search space and it's no wonder that no real game ever used this kind of technique. Intense Pathfinding is at least 100 times faster than my earliest attempt because of it's improved Search Space, even though it uses a slower search algorithm(Dijkstra instead of A*).

Hope I made some sense. I never know for sure when I ramble like that.. Good luck in your research on pathfinding anyway. It's hell.. you're gonna love it


immersionfx, geia sou file mou (ksexasa to onoma sou, lol ), pos paei to paixnidi?? Eides vlakeia, tora eimoun 1 mhna ellada, kai de sinenoi8ikame na pame kamia volta. Prox8es gurisa pali skotia alla ama einai kanonizoume kati gia to kalokairi Ego esy kai o Hellcrypt


Cheers all,

Aris
Posted By: Lion_Ts

Re: Intense Ai: Free Pathfinding - 04/18/06 22:22

Thank You, LarryLaffer!
What kind of credits I have to write on a game title ?
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 04/19/06 00:42

Quote:

You're a hell of a beta tester.. I'll see what I can do about that, probably drop the target spot to the ground and attempt to pathfind there, if there is a path. Nice catch again..




Thanks...I try.

If you want to checkout first hand what I'm talking about(although you know what I'm talking about but showing is better than explaining), then check out one of the Bone demos(Out of Boneville is a smaller d/l but The Great Cow Race is a better example). Another would be Ankh. Those are good examples of full, realtime 3D games that are set up exactly like your demo. I'm not sure if the Ankh has Starforce included, so if that's a problem then it's something to avoid.

http://www.telltalegames.com/
Ankh English demo: http://www.gamershell.com/download_12202.shtml
Posted By: slacker

Re: Intense Ai: Free Pathfinding - 04/20/06 15:34

Thanks for this contribution - it is awesome. I can't wait to see Intense AI in action.

I am sure documemtatition must be a pain - I was wondering if you or another member could post a quick guide on the forum, as to how you could implement this into a project.

Really well done though, and looks to be really tight and well programmed.

THX!!!
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 04/20/06 16:27

Quote:

What kind of credits I have to write on a game title ?




You don't have to write anything. You may as well claim you did it yourself, I don't mind. But if you want to write something, the plugin is called "Intense Pathfinding" and the company that made it is "Intense Illusions". (I may be the only guy programming this, but there's a real company called Intense Illusions located in USofA and there's people besides me that deserve credit for this plugin as well)


Orange Brat, I got it.. When I'm done with the documentation I'll try to work something out. I realise how important this is in an Adventure game


Quote:

I am sure documemtatition must be a pain - I was wondering if you or another member could post a quick guide on the forum, as to how you could implement this into a project.




Well I was about to finish this today, but if you can't wait you can download a half-ass version from here. Instruction on how to use it on your project are already there, but if I were you I'd wait a bit longer for the finished version.

Cheers,
Aris


PS: slacker, or anyone else trying the half-assed version, while you're at it, be kind enough to give me some feedback on how you like the documentation. If there's anything else that you feel I should include, or something comfusing you, or whatever, let me know and I'll fixie..
Posted By: LarryLaffer

Intense Pathfinding: Get it while it's hot! - 04/25/06 01:00

Hello everyone!

I'm pleased to announce that Intense Pathfinding is now officially completed. Here's the final link:

Intense Pathfinding v1.02 (5.4mb)


And here's a cool logo that I just made for it




The increase in the size to 5.4mb is from the Documentation which believe it or not reached the 3mb.

I recommend to everyone who downloaded older versions to update since besides the documentation I've also orginised the files so you can transfer it to your projects much more conveniently and made a couple of other improvements as well.


For any help you might need, I'll keep a close eye on this thread for a while. Hope you all enjoy and make some use of it in your projects. Any screenshots with your projects using Intense Pathfinding would be more than welcome and could may as well be posted here(shame for this thread to die now that I.P. is completed)


Cheers,
Aris
Posted By: Orange Brat

Re: Intense Pathfinding: Get it while it's hot! - 04/25/06 01:16

Again, thanks for sharing this for free. Disenfranchised features 4-5 different direct control modes, however I'm going to be including a point & click option for it since IP is so good.

If I run across anymore quirks or bugs, I'll be sure to pass them along.
Posted By: testDummy

Re: Intense Pathfinding: Get it while it's hot! - 04/25/06 05:59

@LarryLaffer
Thank you. I think that this donation of your hard work and time, is a very generous gesture, and I very much appreciate it.

I have downloaded an older version already, and I have examined the code briefly.

I noticed that in the version I downloaded, the "unofficial" documentation was in a format that no program on the machine it was downloaded to, could accurately interpret. It was in a .doc format, which suggests that the documentation was either in Microsoft Office Word format or in a format used in a later version of Wordpad. I do not wish to install Microsoft Office, nor do I wish to update the version of Wordpad on this machine. Should I assume that the documentation for the new download is also in this .doc format? It seemed that documentation for the Intense AI character animations was also in this format, and I could not view the information. No other user has mentioned a conflict with the formats, so I suppose I should assume I am the only user with this issue. It is not my intention to complain about the format, nor do I expect you to offer documentation in alternate formats, but I am merely indicating, that not every user can easily view the documentation when it is provided in this format .
Posted By: Mondivirtuali

Re: Intense Pathfinding: Get it while it's hot! - 04/26/06 02:04

Aris, I am not sure to understand, but the Intese Ai will be released or not?
Posted By: JazzDude

Re: Intense Pathfinding: Get it while it's hot! - 04/26/06 04:37

A beautiful piece of work!! Thank you, you're a prince.
Posted By: Orange Brat

Re: Intense Pathfinding: Get it while it's hot! - 04/26/06 05:49

Quote:

Aris, I am not sure to understand, but the Intese Ai will be released or not?




It has been released for two weeks. LL's last post contains the link to the final version.
Posted By: Machinery_Frank

Re: Intense Pathfinding: Get it while it's hot! - 04/26/06 08:09

testDummy. You can install OpenOffice for free and then you can read every MS Office document. I also do not have any MS Office Tool and I run a software business and can read every document of my customers.

Orange Brat: Are your sure that the AI is released. I thought this release is the pathfinding and is for free. And after that the AI will be released to be purchased from customers.

LarryLaffer: I shortly looked into your documentation and it is well written, easy to understand and even a bit enternaining. Fantastic work with the overall project.
Posted By: Orange Brat

Re: Intense Pathfinding: Get it while it's hot! - 04/26/06 08:20

Quote:

Orange Brat: Are your sure that the AI is released. I thought this release is the pathfinding and is for free. And after that the AI will be released to be purchased from customers.




Yeah, I confused the two, so disregard my last post.
Posted By: D3D

Re: Intense Pathfinding: Get it while it's hot! - 05/16/06 02:28

@ testDummy:

Maybe this will help you read those documents without having to install Office itself on your workstation. Word Viewer 2003

Brief Description
View, print and copy Word documents, even if you don't have Word installed. This download is a replacement for Word 97 Viewer and all previous Word Viewer versions.

All the best,


Dusty
Posted By: lostclimate

Re: Intense Pathfinding: Get it while it's hot! - 05/16/06 17:59

im gonna get flamed for this but, I started reading this thread and it was talking about getting intense ai for free, and up clicking page 7 the thread seems to have changed to being about word processing?????????
Posted By: Aaron

Re: Intense Pathfinding: Get it while it's hot! - 05/16/06 19:52

Hi what's really good about Intense Patfinding? I mean I don't fully understand what you can do with it? I know it's a pathfinding thing but does it do AI fuctions like shoot an enemy?
Posted By: Orange Brat

Re: Intense Pathfinding: Get it while it's hot! - 05/16/06 19:59

It's the pathfinding component of the larger Intense AI package. It's ideal for point & click games such as adventures, RPGs, or RTSs.
Posted By: LarryLaffer

Re: Intense Pathfinding: Get it while it's hot! - 05/23/06 16:17

Hello everyone,

There seems to be a small comfusion here.. partly my blame for using "Intense" in everything i make.. but that's cause I intend to make a big "Intense Series" collection for Gamestudio.. so, so far we have..

Intense Dialogues: Create your own dialogues for NPCs. Multiple questions, multiple answers and lots of cool features. I'll improve it some time soon to include customizable WED panels.

Intense Pathfinding: The ability to have an NPC move from any point of your level to any other one. You may use this to order the player to go somewhere by clicking with the mouse, or you can implement it to your Ai code to make your life easier(move FROM where you are TO enemy's position. IF you see enemy, stop and start shooting).

Intense Ai: Full Ai with lots and lots of features. It will be using Intense Pathfinding for movement of course. It's almost completed apart from the documentation and a few models that I need in order to release a final showcase demo.

So, that's everything I've done until now. When I'm done with that, I'll make a new poll where you can vote what you'd like to see next as a plugin for GameStudio.

Btw, if you liked Intense Pathfinding, please help me win the coding contest by voting for it here. I will use the prize money to pay Andvari for the missing models I need and release Intense Ai asap.

Thank you,
Aris
Posted By: Stansmedia

Re: Intense Pathfinding: Get it while it's hot! - 05/23/06 19:00

This is really cool. You could do alot of neat things with this.. But looking at the code just makes me think about how many moons will be spent at this computer lol.
Posted By: 3Dski

Re: Intense Ai: Free Pathfinding - 01/14/07 20:53

This is ATF, since you've already made it available, but want to thank you for this contribution! Fortunately, I ran across a reference to your work while reading other posts describing how one might implement pathfinding from scratch!
Posted By: mbmSOG

Re: Intense Ai: Free Pathfinding - 01/17/07 17:32

This would be WONDERFUL!!
Posted By: proteK

Re: Intense Ai: Free Pathfinding - 01/17/07 19:43

Thanks a lot - very useful Free Pathfinding :-)
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 01/18/07 07:40

Thanks everyone..

It's actually quite funny how i get props for a year old thread:) Nevertheless, IP should still work great, and i fully support it. Let me know, if anyone runs into any problems with it..

I guess I should post this somewhere at the wiki, or conitec's download section, since it quickly gets buried here. I'm just lazy sometimes.. if anyone else wants to write a wiki entry on it, feel free

Aris
Posted By: lostclimate

Re: Intense Ai: Free Pathfinding - 01/19/07 01:06

doing it right now.

edit: someone might want to fix it, cuz it looks really bad, but its up there
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 10/13/07 15:44

Hello all!

There's a new Intense Pathfinding update, making this version 1.03! I made sure everything still works for both A6 and A7 latest versions and re-compiled the demo with A7.5. I've also fixed a feature where if you're to click on a vertical surface, the player will now move to the nearest legal point instead. Useful for adventure games and the sort..

Grab the new version from here!

Btw, I've changed domains from intenseillusions.com to intense-i.com so most of the pictures in this thread don't work anymore. If you're new, you're just gonna have to download the file to see what this is all about.

Cheers all,
Aris
Posted By: Helghast

Re: Intense Ai: Free Pathfinding - 10/13/07 16:42

Quote:

Hello all!

There's a new Intense Pathfinding update, making this version 1.03! I made sure everything still works for both A6 and A7 latest versions and re-compiled the demo with A7.5. I've also fixed a feature where if you're to click on a vertical surface, the player will now move to the nearest legal point instead. Useful for adventure games and the sort..

Grab the new version from here!

Btw, I've changed domains from intenseillusions.com to intense-i.com so most of the pictures in this thread don't work anymore. If you're new, you're just gonna have to download the file to see what this is all about.

Cheers all,
Aris




AWESOME NEWS!!!! i am gonna test this right away.
does it create the nodes on the fly, or is it calculated from a look-up table ?

regards,

EDIT:

i tested this, but was wondering, does it work with terrain? cuz right now it's being showcased only on a flat surface, and what about more then 1 onstance, like a squad, is that supported?

regards,
Posted By: frazzle

Re: Intense Ai: Free Pathfinding - 10/13/07 16:44

Indeed, great work again !!
I can only rate you once

Cheers

Frazzle
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 10/13/07 19:05

Quote:



AWESOME NEWS!!!! i am gonna test this right away.
does it create the nodes on the fly, or is it calculated from a look-up table ?

regards,

EDIT:

i tested this, but was wondering, does it work with terrain? cuz right now it's being showcased only on a flat surface, and what about more then 1 onstance, like a squad, is that supported?

regards,




All the answers you need are in the documentation and in the current thread. In a sum, Intense Pathfinding uses preplaced nodes and an automatic graph generator, so you could say it uses a look up table. Terrain should work fine although I've never actually tested it. In the demo you can walk around a model-only maze level, and terrains are essentialy models.. There's also ramps, steps, bridges, abstract models, and everything you could find in an actual level.. Finally, there are instructions in the documentation, to let you have as many as 999 pathfinding agents.
Posted By: Puppeteer

Re: Intense Ai: Free Pathfinding - 10/13/07 19:36

I think you have the same problem as in the old thread...
[img=http://img524.imageshack.us/img524/3843/unbenanntcg9.th.jpg]
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 10/13/07 20:11

Quote:


I think you have the same problem as in the old thread...
[img=http://img524.imageshack.us/img524/3843/unbenanntcg9.th.jpg]





What happened there, I can't really tell.. If he didn't made it where you clicked, I've seen it happen too in that part of the map. It's mostly the way i've placed the waypoints in that area, maybe they could use some tweaking. But since it didn't happen too often, I've let it go..


Btw, if anyone wants to see how Intense Pathfinding behaves in a real game, you can find Mother's Den here (108MB). You can have up to three sidekicks following you around a complex level, or even having them lead the way. All paths are calculated dynamically using I.P.
Posted By: Ghost

Re: Intense Ai: Free Pathfinding - 10/13/07 20:57

Thanks Larry.
Posted By: Puppeteer

Re: Intense Ai: Free Pathfinding - 10/13/07 21:48

He simply missed the way up...
So there are 2 possibilities:
1. The waypoints are not perfectly seated (but i think the points are really well setted)
2. The Bot goes to the next waypoint before he reachs the first point maybe to act more natural (I solved this problem with using curves instead of straight lines for the pathfinding algorithm)
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 10/18/07 16:21

Hey DerOmega,

No I'm not doing any curving for turns or not letting it go all the way towards waypoints.. Corner graphs in conjuction with using the target position as a real node makes up for pretty smooth movement.

The actual problem there would be that some parameters need a liiittle more tweaking to match the player model that i've used. There's a variable that tells the engine, how high the player can climb. That variable should be a bit lower, so a different path would be planned, making sure that the player can climb up the steps. However, it would be a lot simplier just to move those two waypoints at the end of the steps a little.

If someone has similar problems when using I.P. in their game, drop me a PM; although most stuff are explained through in the documentation

Cheers,
Aris
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 10/19/07 22:49

Thanks for the update. The vertical surfaces "fix" makes this pretty much perfect for point and click style games. I've yet to find a problem except for that weird one that I PM'd you about.
Posted By: badapple

Re: Intense Ai: Free Pathfinding - 10/25/07 11:26

super contribution , will this work with a6 extra?
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 10/26/07 03:43

Quote:


super contribution , will this work with a6 extra?





yeah
Posted By: erbismi

Re: Intense Ai: Free Pathfinding - 01/01/08 15:42

(i am a noob) will this work with lite-c. Would the plugin still work if the wdl scripts were converted?
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 01/01/08 17:38

only one way to find out

let me know how it goes and if you're kind enough contribute back
Posted By: erbismi

Re: Intense Ai: Free Pathfinding - 01/02/08 11:40

Okey Dokey
Posted By: erbismi

Re: Intense Ai: Free Pathfinding - 01/04/08 10:27

Well ive had a go at converting, but the compiler locks up on startup, it just sits their sayin "compiling IntensePathfinding.c". Anyboby had this sort of problem before? I am happy to contribute it, but there isn't much point at the moment, unless someone wants to have a look at it to find out where ive gone horribly wrong.
Posted By: Gandalf

Re: Intense Ai: Free Pathfinding - 01/04/08 15:22

Thanks you for this work.
How y can use your AI with a ladder in a tower and not a stair?
Posted By: lordbeorn

Re: Intense Ai: Free Pathfinding - 01/05/08 21:53

Hello.
First of all I would like to thanks Larry for all his work. It's great and it would be very usefull in my projects. In second place I must say that my english is quite poor so I'm sorry I've I commit any mistake.
I've been reading the sourcecode and I've understood most of it. It's quite interesting when you read all the comments and you discover that you can do something that aren't explained in the docs.
But now I'm having a problem with pathfindg in order to evade other entities. I've checked all the comments is_POV_Pathfind.wdl and in especial the TestWalkLinkBetweenTwoPoints function. I've been testing it for a while and I've seen that the program doesn't evade allways other entities. Sometimes it discovered the right path and sometimes id didn't. So I've been investigating a bit and I think that the pathfind only checks if there are other entities in the first movement because it evaded other entities when there was a direct path between starting point and the end point and it didn't work when there it had to follow more than one node.
I attach a snapshot where you can check what I say. If you see the followed path.



The moving guard went backwards in order to evade the other guards. But when it reached the first node the program didn't recognize that the guards were there and it tried to go directly to the end point.
I'm doing anything wrong? It's may be a bug? Can you help me?
Thanks for all
Beorn
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 02/24/08 23:46

Hello Beorn,

Sorry for taking so long to reply, i didn't see your post until now

Intense Pathfinding is meant to give you a way to navigate around static environment, and therefore will not act on any dynamic entities blocking the path. In the industry, pathfinding is seperated into long-term and short-term, and both are used in games, with the one complementing the other. Long-term(such as Intense Pathfinding) only considers static environment, and Short-term(such as an obstacle avoidance method) will only consider dynamic environment. Both algorithms are used to navigate the Npc, with the long-term giving out the route to the destination, and the short-term to make him stray away from that route whenever a small dynamic obstacle comes in its way.


From my comments in is_POV_Pathfind.wdl
Code:

//You will effeciently make use of this mode, if you first build a collision avoidance layer in addition to your long-term pathfinding
//The Longer Term Pathfinding should only consider STATIC level blocks or MDLs
//The Obstacle Avoidance should only consider DYNAMIC models
//With the absence of an obstacle avoidance algorithm, this mode now considers all models when pathfinding
//To Have Long-Term Pathfinding ignore other dynamic entities, restore the comments in the if clause below)




and then in is_ai_subactions.wdl

Code:

//Enforce A Obstacle Avoidance Method

//Obstacle Avoidance Using c_traces and Recursion (disabled)
//AngleToWayPoint=is_SubAction_ObstacleAvoidanceCtrace(AngleToWayPoint,DistanceToWayPoint,0);

//Obstacle Avoidance Using Repulsive Vectors (disabled)
//AngleToWayPoint=is_SubAction_ObstacleAvoidanceRepulsionVecs(AngleToWayPoint);



Obstacle Avoidance has been disabled in Intense Pathfinding, so you'll have to create your own function, which will return a value to AngleToWayPoint that controls the direction of the pathfinding entity. For simple obstacle avoidance methods, look inside the AUMs, for entites avoiding things ahead of them by using c_traces.


If there's enough demand for it, I'll add an obstacle avoidance method to Intense Pathfinding and upgrade it to Lite-C, but for the time being, i'm a bit busy working on IntenseX. If you need any more help implementing your own OA algorithm, let me know and i'll try to help


Cheers,
Aris
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 02/25/08 06:31

Quote:

f there's enough demand for it, I'll add an obstacle avoidance method to Intense Pathfinding and upgrade it to Lite-C




I demand.
Posted By: JustOneOldMan

Re: Intense Ai: Free Pathfinding - 02/25/08 20:34

That would be great, Aris...
Posted By: D3D

Re: Intense Ai: Free Pathfinding - 02/25/08 22:28

I want to demand, but would like to see basic edition launched before xmas ^^
Posted By: RAFU

Re: Intense Ai: Free Pathfinding - 02/26/08 01:31

When u say xmas, you mean of 2008 correct? You have to be more specific with these things
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 03/02/08 19:21

Ok, I'll give it a go today.. It shouldn't take more than a few days to convert to Lite-C i guess(hope)

I'll keep u all updated
Posted By: Salva

Re: Intense Ai: Free Pathfinding - 03/05/08 12:09

Hi Larry!

I wanted to download your path finding system but the links seems not work more..

? http://www.intenseillusions.com/Intense_Pathfinding.zip

greet
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 03/06/08 14:43

There's a new link at: http://www.intense-i.com/files/IntensePathfinding_v103.zip, but you should wait until the newer version comes out later today
Posted By: Salva

Re: Intense Ai: Free Pathfinding - 03/06/08 16:28

Thank you Larry, then i will wait,




greet
Posted By: Orange Brat

Re: Intense Ai: Free Pathfinding - 03/07/08 01:47

@Larry: Will the new version only feature a Lite-C port or will it contain the dynamic obstacle avoidance? Is DOA even on the table?
Posted By: LarryLaffer

Re: Intense Ai: Free Pathfinding - 03/07/08 06:29

Intense Pathfinding 2 is now released! Download and Discuss it in its Showcase thread here.

It supports Lite-C and Dynamic obstacle avoidance, along with many new features

Cheers,
Aris
© 2024 lite-C Forums