Page 2 of 5

Re: New Ai Ideas

Posted: 16 Sep 2008, 10:55
by kLabMouse
sli wrote:The AI should be written in C.
Agrrrrrrr....
The only thing that we could use now, is
Inline::C
Inline::CPP.

But that is nothing good.

Re: New Ai Ideas

Posted: 16 Sep 2008, 11:59
by isieo
sounds like a huge change, are we going to ditch the current ai and change it to a new one?

Re: New Ai Ideas

Posted: 16 Sep 2008, 12:52
by kali
If that's the case, we can branch out a version that is *completely* ai-less (all it does is connect and stay connected).

Then maybe use plugins to start filling up the AI (like vend mode, routing, etc.)

Re: New Ai Ideas

Posted: 16 Sep 2008, 13:34
by abt123
kali wrote:If that's the case, we can branch out a version that is *completely* ai-less (all it does is connect and stay connected).

Then maybe use plugins to start filling up the AI (like vend mode, routing, etc.)
Interesting idea.

Re: New Ai Ideas

Posted: 16 Sep 2008, 15:15
by sli
kali wrote:If that's the case, we can branch out a version that is *completely* ai-less (all it does is connect and stay connected).

Then maybe use plugins to start filling up the AI (like vend mode, routing, etc.)
Wow, I was thinking the exact same thing today in class, but for Erok.

Re: New Ai Ideas

Posted: 17 Sep 2008, 03:22
by kLabMouse
kali wrote:If that's the case, we can branch out a version that is *completely* ai-less (all it does is connect and stay connected).

Then maybe use plugins to start filling up the AI (like vend mode, routing, etc.)
I was thinking about it too.
But. Ended on this:
We write A simple AI Manager that will Load AI Modules and Ask them what AI should DO. (Don't forget: Module priority, Exclusive control, and mutexes).

So now. OpenKore will be somehow without AI. Because there will be no Modules yet (May-be a sample one).

Also We should Decide about Module Design. Because all the AI Modules must have STRICT Design (Like Tasks but a bit other).

In this way, When we add the first working Module, We could write Tasks for it. So it can be functional.

P.S. Later I'll add some Sheme how all this system should work.

Re: New Ai Ideas

Posted: 17 Sep 2008, 03:42
by kLabMouse
Diagram for Bibian

Re: New Ai Ideas

Posted: 17 Sep 2008, 07:07
by isieo
edit:
we should just make use of the current branch, remove the ai modules from it.


now its officially NO messing with the AI in trunk,
this is to ease the merging of trunk and this branch.
when its ready we will release 2.1 and 2.0.7 together

2.0.7 will be on optimizing openkore leaving out AI
2.1 new Experimental AI

Re: New Ai Ideas

Posted: 17 Sep 2008, 07:40
by kLabMouse
isieo wrote:ok i guess we should branchout an ailess branch
there is a branch called "AI 2008". I think, that it's good choice to made all the modifications there (AI less).

We also need some Spec's to work out. How all thing must look like.

BTW. I think, that with AIless OpenKore we finally could make it MultiThread.

Re: New Ai Ideas

Posted: 17 Sep 2008, 08:33
by kLabMouse
isieo wrote:edit:
we should just make use of the current branch, remove the ai modules from it.


now its officially NO messing with the AI in trunk,
this is to ease the merging of trunk and this branch.
when its ready we will release 2.1 and 2.0.7 together

2.0.7 will be on optimizing openkore leaving out AI
2.1 new Experimental AI
First. WE need to lose all Nesty Calls to AI from other modules. But Et, left some way for AI to see those states.
Second: No messing With Protocol from other Modules. (Example: Actor::Item).
Third: All the Functionality of console commands must be registered and added by AI Modules. (Exception is only for those that don't deal with AI)


edit:
Some Restrictions:
1) Only Task allowed to Send Packets. (Exception is: only for User control, and xKore)
2) All xKore code must be placed in one or two packages (Now it's in 10 or more pieces)
3) All Console Commands that don't use AI must be placed out of Commands.pm (Only code responsible for Registering/Calling user/core cmd's must be there).
4) Login/Char Select/Map Change/Exit are Exclusive AI States. (They Block all other AI functions while they are not Done).