Jump to content

lexa

Community Members
  • Posts

    79
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by lexa

  1. Héhéhé, I told you it was a nasty bot... I am not sure that you would have ended dead or not, but I think so because once it attacks you, it never stops building new units and sending them by group...

    Anyway you are better than me because I can not keep my unit count above the AI's one good.gif

    For the lag, I have a plan.

    There will be another Agent class which is the AttackerAgent. The bot it will split in several attacker agents - that is why the bot is called Split Bot, it splits in many Agents, and each attacker will have something like 10 units. That is how we can avoid what happens now, which is an order to attack one building or go to one position, given to 150 units.

    Thank you for the test :)

  2. Hello

    I am about to release the 1st alpha version of the SplitBot AI bot, in haxe here

    It beats the other bots with 100% success (I tried about 5 times with each bot), but in fact the defense and attack are not implemented for now. It builds a decent village very quickly and grows a population of 200 workers before sending all "men" to the nearest enemy...

    And now I have a question: is it possible to accelerate time for testing the bot? I do not need the rendering during the "acceleration"..

    Thank you all,

    lexa.

  3. So far no changes to the scripting API that I'm aware of. For a rough date see: http://trac.wildfiregames.com/roadmap

    Great, thank you!

    (joke)So you are not angry against me anymore? Remember I defeated you a few months ago! :D

    I am working on a script debugger, but it turned out to be a HUGE task. I am still shooting for inclusion in Alpha 7, but it could possibly slip to Alpha 8. It will allow you to step through the AI scripts and look at variables, set breakpoints and watchpoints, etc. Standard debugger stuff.

    This seems very interesting to me!!! That would have ease my work a lot :)

    I felt like I almost had to reverse engineer some classes and types... And the debugging is a pain, but that is usual in js...

    You do this in C++ right?

  4. @Lexa Did you see our behaviour tree? I hope you can use some of our code so you don't have to start over :P

    Thanks, I'll look at it closely.

    I hope we will be able to do bot battles also :)

    We do plan on finishing ours, so it hopefully will be finished before Alpha 7 :)

    Ah ok... Do you know if there are changes in the scripting API in th alpha 7 ? And when it is planned to be ready ?


  5. if (pop limit reached) -> build houses
    if (need workers) -> create more workers
    if (need resources) -> if (need food) -> if (domestic animal near) -> hunt
    -> if (fruit tree near) -> forage
    -> if (farm near) -> farm
    -> else -> build farm

    -> else -> if (resource site near) -> gather
    -> else -> build dropsite

    if (idle workers) -> give orders

    else -> balance economy for higher level plans

    Although there may be a reason why the tree was arranged that way, this is just a programmer's point of view, and not an AI designer's :)

    Hey, this is good, I take it for my bot ;)

    If you have other "trees" like that, please do not hesitate to add them here, we discuss it and I will implement it soon since I have all the structure almost set for my bot

    http://code.google.com/p/split-bot/wiki/Behaviors

    I will test the RootBot tonight

    Bye!

  6. Hi

    Thank you very much for these tips! It seems ok to me the common-api for now... So far there is only one bug whoch is bothering me ;)http://trac.wildfiregames.com/ticket/897

    I would be glad to help improving it. I believe, the haxe "extern" classes are at least a fully typed version of the api. It is easyier to understand I guess.

    http://code.google.com/p/split-bot/source/browse/#svn%2Ftrunk%2Fsrc%2Forg%2Fzeroad%2Fcommon_api

    I will keep you informed, bye!

  7. Hi gudo, thank you for your interest

    If you want my two cents, I'd suggest avoiding modifying the common API files (common-api/base.js class.js, etc) You see, there's no way to be sure that your changes will make it into the source. There's a ton of problems with this. Mainly the risk that your changes will break other bots and incompatibility with other common-api changing bots (RootBot for example.)

    I did not modify it, I did haXe extern classes, which is like an import at runtime, but it gives you auto completion and type checking.

    Note though, those common-api's could still use a bit of development. If you want to make changes to the source, go ahead and register on trac and submit a ticket/patch.

    I just did! :)

    There is a mistake in the common api I think: http://trac.wildfire....com/ticket/897

    Are there any pre-compiled files that I could just throw into my install so I can try your bot out?

    It is just a bit too early, for now it only traces some data...

    Thank you for your advice, bye!

    And my question remains:

    Do you know a place where these javascript classes are documented?

    • Template
    • State
    • Player
    • Map

  8. Hi

    Thank you for your answer :)

    I am very happy with haxe. It is really something you know...

    And I already have an AI Bot running. So now is the part where I am trying to look into Entity objects, I make them move or build and when I'll be comfortable, this will be the time to implement my logic!

    Bye!

  9. I feel a bit lonely here... dry.gif

    But here is the google code project for my AI Bot, which I have called the Split Bot, read the description to understand why.

    I choose to develop in haXe which is a very structured language which can be "compiled" in javascript code.

    Here are the javascript common-api classes in haXe :

    http://code.google.com/p/split-bot/source/browse/#svn%2Ftrunk%2Fsrc%2Forg%2Fzeroad%2Fcommon_api

    These are haXe "extern"s which will link to the actual javascript classes of 0 A.D. at runtime.

  10. Hi

    I try to make my 1st contribution in AI scripting.

    1. Would you have some tips and tricks? Especially for testing, reproducing scenarios?
    2. I am looking for more examples of use of all the methods of the Entity class
    3. And like to know more about the difference of the methods Entity:setMetaData and the methods like Entity::move

    Thank you in advance,

    Bye

×
×
  • Create New...