Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 2014-02-13 in all areas

  1. Dear 0 A.D. community, This is just to let you know that we've had something of a revolution in the modding section of Age of Mythology Heaven. Tasev created a file converter (ABE) that allows you to export models from 3ds Max into AoM directly, without facing any of the constraints we previously had (number of frames/materials, attachpoints, etc.). I thought you guys might be interested since a lot of you have their roots in AoM modding. Most of you will be fine with the instructions you can find in ABE's readme but there's also a beginner's guide in case you need it. Best Android
    2 points
  2. Can we at least have a config toggle to turn off the ships behaviour when they are about to receive garrison units? If they already are in place, they do an unrealistic shaky dance and seem to complicate garrison rather than help. I'd prefer to be responsible of properly positioning them.
    1 point
  3. I currently tend to implement behaviours like this: C.behaviour = { start: "whiteflag", whiteflag: ["economy", "attack", "defense", "victory"], economy: ["populate", "gather", "hunt", "expand", "research", "fortify", "mobilize", "defense", "victory"], mobilize: ["parade", "analyze"], attack: [...], defense: [...], victory: [], };The AI initializes on the start frame and on each call it checks the frames listed for their entry conditions. If at least one frame qualifies the AI switches to this new frame. The frames also have exit conditions, which let it fall back to the calling frame. So, for example if economy has an entry conditions like canTrain it directly changes on startup, the exit conditions are e.g. noPopulation && noBuilding. If the enemy destroys all, the AI falls back to whiteflag and the game is over. Or there is nothing left to fight and the AI enters victory. Some frames have tasks listed having no behaviour entry, e.g. fortify, these just get executed. The idea is each difficulty has its own behaviour with certain features. That way the AI does what it does in a convincing way. Maybe on an easy level the AI doesn't build towers, but on a hard level I don't want the towers placed in a random fashion.
    1 point
  4. I highly doubt this is probable at the current development state, but I've always wanted to see a RTS AI that had the same interface for every difficulty, and each difficulty had different implementation. In pseudocode, the AI would look like this for every game difficulty: assesResources(); planDefences(); if(animalsAround) huntForFood(); else buildFarms(); (...) And the implementation would be as follows for each difficulty: EASY: void huntForFood(){ moveMouse(womanClosestToAnimal,(pixelsPerSecond)30); //This mouse would be virtual and invisible to the player, of course mouse.click(); moveMouse(animalClosestToWoman,(pixelsPerSecond)30); mouse.rightClick(); (...) } MEDIUM: void huntForFood(){ moveMouse(womanClosestToAnimal,(pixelsPerSecond)60); mouse.click(); moveMouse(animalClosestToWoman,(pixelsPerSecond)60); mouse.rightClick(); (...) } HARD: void huntForFood(){ for each Woman in WomenCloseToAnimal womanClosestToAnimal.issueOrder(animal); } If this is combined with a genetic AI algorithm (especially one that's reactive to time elapsed and plans their city based on a random number), a human player wouldn't notice that it's the same algorithm with each difficulty. It would appear simply better. Is such an AI already in existence?
    1 point
  5. Surely there is a way to make it so ships behave more like AoE ships when trying to garrison troops, i.e. ships go to the nearest point on the shoreline and wait for the troops to come to them.
    1 point
  6. sanderd17: The problem is with agentx. I think he proposes a tournament where only AI players take part. The double-computation check will probably not get that cheat since the same AI code is executed on any machine. Hephaestion: I got curious about my statement myself and created a simple demo bot to show the "code injection attack" (attached to the post - if forum mods remove it for being offensive, i have no problem with it). Actually it was very easy to build once you know all players reside in the same JS runtime. RetroBot does not command its own units in any way - but it injects a trojan into the enemy aegis player. Currently the AEGIS name is hardcoded, but i'm sure this can be 'fixed'. A demonstration of the bot can be obtained by installing the .zip and running pyrogenesis.exe -quickstart -autostart="Oasis 10" -autostart-ai=1:retrobot -autostart-ai=2:aegis(i succeeded with SVN rev. 14760). After player 1 has sent its chat "Injected patch into AEGIS ai", nothing happens at his site anymore, but player 2 (aegis) starts to randomly kill its own units, while the aegis start-up sequence is running 'normally'. It would look better on the Sicilia map i presume, but unfortunately that map is NLA. agentx: I'm afraid a 'real' AI tournament (possibly with prizes to win?) would require manual review of each participant to find such dirty tricks. Edit: Attachment got lost during preview. retrobot.zip
    1 point
  7. Foot units are mid poly because it was created for Civilization 3 where you can use spirit animations. The same with ships. City was designed in Blender game engine nowhere near that good like 0AD engine. Buildings are low polygonal (between few hundred up to few thousands polygons) http://imageshack.com/a/img33/3066/jgni.jpg http://imageshack.com/a/img30/4844/oz7z.jpg http://imageshack.com/a/img844/931/qje7.jpg Long building on third image has 6000 poly, I thing that's the biggest number. I know that people use Blender here, you can quite easily low down polygons number about 40% by use decimate modifier.
    1 point
×
×
  • Create New...