MASSIVE like AI program
Moderators: jesterKing, stiv
hi sorry to not write here, i have write directly to mr_rob
but any help is welcome
kino
but any help is welcome
kino
kino3d.com italian site
Wow!!
things are going fast and this thread is becoming more and more interesting!!
I see the competition in Padua last year ....
Building what is commonly known as "architecture" is one of the most difficult topic when dealing with projects whith such an ambition.
Evaluating what is the state of the art is a good thing. I have taken beyond as an example for the clean design and versatility.
btw, I think that one effort could be intregating the existing tools into ARLS and Blender ...
but it is quite early to decide things like these..
harkyman thanks for the link and the pseudocode and idea too ...
I think that this kind of project have to be faced with a twofold strategy: top-down/bottom-up ... (taking care that they meet somewhere in the middle
) ..
kino ... it will be great to have your knowledge on ARLS ....

andrea
things are going fast and this thread is becoming more and more interesting!!
yes thornae, we don't have to reinvent the wheel ... I agree on the fact that this requires a lot of studying and researche especially in the first steps.The first thing to do here is some research, so as not to reinvent the wheel. AI is a popular subject, as is games and game theory. So I figure the first place to look would be at the AI in some games
there is also the robocup rescue simulator that deals with the coordination and collaboration of rescue unit in a disaster scenario ... very impressive.There's also Narval and the Robocup Soccer Simulator for perusal
I see the competition in Padua last year ....
Building what is commonly known as "architecture" is one of the most difficult topic when dealing with projects whith such an ambition.
Evaluating what is the state of the art is a good thing. I have taken beyond as an example for the clean design and versatility.
btw, I think that one effort could be intregating the existing tools into ARLS and Blender ...
but it is quite early to decide things like these..
harkyman thanks for the link and the pseudocode and idea too ...
this is what I call achitecture ... letting different people working on the same interfaces and putting logic/math/behaviours inside a common structure.... that it ... blender ...The nice thing about an algorithm like this is that you can tackle it piecemeal, extending functionality once you have each stage working. One team member can work on the code for moveweight(), having their math push around dots on a screen. Someone else can simultaneously work on personalstrategy(), building that trickier logic on it's own with single actors. Another coder can be working on pathfinding/object avoidance. Or a single person could tackle each one as a discreet project.
I agree...The toughest part is the combat logic, which would include the actual character animation
I think that this kind of project have to be faced with a twofold strategy: top-down/bottom-up ... (taking care that they meet somewhere in the middle

kino ... it will be great to have your knowledge on ARLS ....

andrea
Thank you everyone for your ideas and suggestions! Since ARLS is still in planning, ideas are needed. Harkyman I liked what you posted those were some good ideas.
I wrote up this page to explain the basic structure:
http://home.mchsi.com/~sje/basicprogramstructure.htm
If you read that document:
I'm planning on using a simple script like language for the nodes only. Or I could go all out and use lexx & yacc to make a more powerful, general use language. The second choice would be harder to make but much more rewarding in the long run. I need some opinions on that.
Once again, thank you all!
I wrote up this page to explain the basic structure:
http://home.mchsi.com/~sje/basicprogramstructure.htm
If you read that document:
I'm planning on using a simple script like language for the nodes only. Or I could go all out and use lexx & yacc to make a more powerful, general use language. The second choice would be harder to make but much more rewarding in the long run. I need some opinions on that.
Once again, thank you all!
-
- Posts: 24
- Joined: Wed Oct 16, 2002 12:45 am
- Location: Mumbai, India
- Contact:
Hi.
I haven't looked at the article yet. Regarding the scripting language, give Lua [ http://www.lua.org ] a glance. Its an extensible language.
- Satish.
I haven't looked at the article yet. Regarding the scripting language, give Lua [ http://www.lua.org ] a glance. Its an extensible language.
- Satish.
language
Nothing against Lua ... I don't know (downloading now something ..) .. but as jonobacon says we have to think that Blender is the target ... so Python it is a natural choice to me.
Future extension maybe will see other language for extension ...
andrea
Future extension maybe will see other language for extension ...
andrea
Ion_Pulse, why don't you just join ARLS? It will be easier for both of us if we work together. I have already started programming it, I'm figuring out how to use the CVS on sourceforge but when I finally figure it out, I'll post what code I have written.
We will have a website up soon, thanks to Kino.
We will have a website up soon, thanks to Kino.
Sorry I haven't really read what you're planning, and I haven't even planned anything yet. I may not even have time to plan/start at all.
So what I'm saying is I don't want to lead anyone on
I might read up on what you guys are doing and if I see something I can contribute/add then I will let you know
So what I'm saying is I don't want to lead anyone on

I might read up on what you guys are doing and if I see something I can contribute/add then I will let you know

Ok I've read the whole thread now, getting kind of excited 
I've been programming in C++ for over a year, made several games for windows with direct3d (blah) and OpenGL (yay) as well as sound and other unrelated programming
I did a bit of python scripting within blender way back when... but anyhow I'm up for it, but I think we need to decide....
How is this going to integrate with Blender? As far as I know, there is no compiled module support for blender (other than compiled python) so doing it in python looks like the way to go, unless we were after coding it directly into blender, which could be messy. Well a python script could be messy too
I'm just not sure where to start
But I have some ideas:
1) Figure out how we are going to hook into blender
2) Make a tiny super-simple test using that hook (test viability of that hook)
3) Start designing at a high-level how everything is supposed to work..
4) GO for it!
Do you have some sort of IM account mr_rob? I prefer IM-ing for fast idea sharing...I have MSN/AIM/ICQ/Jabber... (Miranda IM ==
)

I've been programming in C++ for over a year, made several games for windows with direct3d (blah) and OpenGL (yay) as well as sound and other unrelated programming

How is this going to integrate with Blender? As far as I know, there is no compiled module support for blender (other than compiled python) so doing it in python looks like the way to go, unless we were after coding it directly into blender, which could be messy. Well a python script could be messy too

I'm just not sure where to start

1) Figure out how we are going to hook into blender
2) Make a tiny super-simple test using that hook (test viability of that hook)
3) Start designing at a high-level how everything is supposed to work..
4) GO for it!
Do you have some sort of IM account mr_rob? I prefer IM-ing for fast idea sharing...I have MSN/AIM/ICQ/Jabber... (Miranda IM ==

Well, I would suggest to actually not start doing some "warrior" behaviour and such but start with simple rules ... simple objects with very simple behaviours - using blenders sense and action system could be one solution to think about --- including some sort of plugin for replacing sensors and actions with complex c++ coded stuff (speed=c++!) to be able to code AI-like behavior, which is FAST and reliable.
Again: I would not suggest to take Python or whatever - such equations are veeerry intense and need a lot of calculation!!! The best way, is to do it in C++ directly! It might be a pain in the ass but only with this solution, you'll get the results you want to have!!! Really!!
You know ThinkingParticles ?? That's similar to what you wanna do - everything is about Sensors and Action.
Again: I would not suggest to take Python or whatever - such equations are veeerry intense and need a lot of calculation!!! The best way, is to do it in C++ directly! It might be a pain in the ass but only with this solution, you'll get the results you want to have!!! Really!!
You know ThinkingParticles ?? That's similar to what you wanna do - everything is about Sensors and Action.
ARLS is a C++ program. In it the decisions for action is made. No AI decisions of any type will be done in blender, the only thing done in blender will be rendering. A python script will import ARLS's custom data format into blender which will render it.
I'll post some a document on the decision making process sometime soon.
Hopefully that will clear up any confusion.
Ion_Pulse, please email me:
ARLS_Programmer@yahoo.com
Thanks for all the support
I'll post some a document on the decision making process sometime soon.
Hopefully that will clear up any confusion.
Ion_Pulse, please email me:
ARLS_Programmer@yahoo.com
Thanks for all the support
I'd have to agree here. I think harkyman really has the right idea, splitting development up into modules is the way to go.kniffo wrote:Well, I would suggest to actually not start doing some "warrior" behaviour and such but start with simple rules ...
As such, as he (gender inferred from name) said, the thing to start with would be gross interaction of individual "actors", i.e. movement across terrain, grouping, clustering, and so forth. Actual battle mechanics would follow from this.
mr_rob, as a trained (read, useless =) software engineer, I tend to start projects with a design document - and not get much further. However, my own lack of inertia notwithstanding, some sort of reference documentation can be very useful to direct the project - just look at the Blender UI re-design. Have you any thoughts in this direction?
BTW, if you need help writing up long winded, thoroughly anally-retentive specifications, I'm your man... (=
(P.S. - you want to watch it with that logo - George Lucas has a pack of rabid lawyers that will sue at the drop of a vaguely-similar-to-something-in-Star-Wars hat...)
...because I can!