Jump to content

Relish

Community Members
  • Posts

    8
  • Joined

  • Last visited

Everything posted by Relish

  1. What you say it's true, resources are centralized, it is for that reason that all my agents take the informations they want from gamestate in their "perceptions" cycle, after that they only use their internal belief system; I haven't used the metadata field to store anything so far. Centralization is partly present: you're correct in saying that centralization is needed, in fact at the moment I'm working on emergent behaviours in that area. Some units act as military leaders, assembling armies and leading them in a centralized manner; other units, while maintaining their independence, follow orders into battle. What I'm trying to do at the moment is to make units emerge as leaders; so far I've tried a hierarchical structure (heroes on top) where, based on the unit's type, it gets recognized as leader by the others.
  2. In my AI I've tried a very simple approach (mainly to test how efficient my agent system was), making units escape a fight if engaged in an unfair fight (by number of enemy units) or if severely injured. The agent's plan was to escape into a safe location like a base, a tower or a regroup point with another group of units. In all the tests I did once the units escaped a difficult fight with minimal losses and their retreat to buildings or friendly units not only scattered my army but also turned the fight in their favour. What you are saying may be right in a clean contest where no other factors come into play, but in a game like this, where you can exploit buildings and movement, I think it could work.
  3. exactly! Thanks Feneur and Pureon, these are precisely the kind of videos I am looking for.
  4. what do you think about adding a couple of external interface functions to UnitAI.js to let the entity object know which entity it is attacking and which are attacking it? to enable something like this: entity.underAttackByEntities() that returns an array with the ids of the entity attacking it and entity.attackingEntity() that returns the id of the entity that it it is trying to attack this would make it a lot easier to develop any kind of morale system
  5. Developing my AI bot I've come up with the problem that I'm still bad at playing this game and I don't know if any of the tactics I use are any good. I've looked at how the other bots play but I would like to see some strategy from a good player. There is a thread about 0ad videos sticked but the matches are using an outdated version or are just too short to have an idea about how to play. If anyone, who reputes himself to be a good player, could record a video of a match, where the actions he takes are clear and the camera is not too zoomed in, it would help me a lot. I know that different civilizations have different playstyles and I will make my bot act differently based on the civ it is assigned to in the future, but a match with any civ you want would be good to me to at least get the basics. Thanks!
  6. yes I'm using the svn to keep on par, but my bot only uses the common AI api (and not in a intesive way): so it should be very easy to port and adapt to any new version. I'm male. In Italy Andrea is a male name (like it was originally since it means "Man" in ancient greek ). I forgot in other parts of the world it is used by both genders, I should have used Andrew
  7. I know about the other AIs and I read most of their code to see how they accessed game data and sent commands to the engine; my work will probably overlap in the "decision making" part, but not in regard of map analysis or entity collection access which I will probably leave as it is. I also plan to develop a parser to let people (even non programmers) write behaviours for the agents, that way anyone could try to find the best way to handle that little community of intelligent ants About the mentoring: I'm pretty much free to take the direction I want and when I have some hard decisions to make I ask for opinions; I'm being followed by experts in multi agent systems so I usually ask advice about choices in the infrastructure and common agent interaction problems. So I'm digging myself through the code, but so far I've managed to find what needed (thanks also to the good AIs already present); in case I'll need some info about parts of the codebase I'll ask here
  8. Hi! I'm Andrea and I'm a student from Italy (University of Bologna). I'm developing an AI for 0ad as my thesis for my Master in Computer Engineering and I wanted to introduce myself in your forums since I thought it would be nice to start posting here some of what I was doing. The main theme of my work is to use BDI Agents to govern the behaviours of the AIPlayer's units and buildings: in essence every unit (and building) is an intelligent agent with his own beliefs, desires and goals and they all interact to achieve different objectives. Instead of having a single mind like the other AIs, this one aims to reach the main goal by having multiple simple minds interact. I've already developed the underlying framework and I'm now adding the agent's behaviours, so I'll soon start to share the Bot to see how it goes against better players than myself ( since I've always loved RTSs but I was never very good at them ). Since I'm very interested in game development I'll also try to help if needed with other parts of the project; I've used Java, C++, PHP, javascript and other languages in the past but I'll need to refresh a bit my C++ since I've mostly programmed in Java in the last 2-3 years. See you in the forums and probably in your dev chat too (if it is open for everyone).
×
×
  • Create New...