Jump to content


Community Members
  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by agentx

  1. It would be helpful to know if you're more interested to work on C++ or JavaScript data structures. What would you consider as meaningful? And is there a deadline? Something that comes to my mind is a data structure that allows story telling on trigger maps. It should be easy to edit for map designer / story teller not knowing how to code, nevertheless machine readable - maybe a JSON/XML layout - and can deal with an event driven environment, models preferably a tree like time line moving forward based on a set of specific conditions combinable by boolean operations. If you now think push based functional reactive programming might be an applicable paradigm, well, then go ahead.
  2. Wonderful, I got it. I can now edit maps with SVN atlas and run them with Hannibal as mod in release. Thanks.
  3. I use it all the time to verify Hannibal, so yes it works with 0AD 17 and current SVN. There is only an issue with games shorter than a minute or so, because lack of data to visualize.
  4. If you assume the AI uses the gathered resources to train units only, you could define difficulty the other way around in amount of barracks. E.g athen_infantry_spearman: It needs 50 food and 50 wood and trains in 10 seconds. So one CC + 4 barracks train 5 spearmen in 10 seconds or 300 in 10 minutes consuming 3000 food and 3000 wood. Does that qualify as nightmare?
  5. I now think it might have to do with the fact the bot mod also has a a map folder, will check. I tested svn and release both behave the same. Btw. is there a trick to have both svn and release, atlas and pyrogenesis use same scenario folder?
  6. > Please create your new AI in a mod of your own rather than in the public mod... I tried this with Hannibal, but something goes wrong with loading maps: > /usr/games/0ad -quickstart -autostart="scenarios/Arcadia 02" -mod=public -mod=charts -mod=hannibal -autostart-ai=1:hannibal...file_system.cpp(122): Function call failed: return value was -110301 (Error during IO)Function call failed: return value was -110301 (Error during IO)Location: file_system.cpp:122 (GetDirectoryEntries)Call stack:(0x8498c4c) /usr/games/pyrogenesis() [0x8498c4c](0x844256c) /usr/games/pyrogenesis() [0x844256c](0x84428b7) /usr/games/pyrogenesis() [0x84428b7](0x844fd21) /usr/games/pyrogenesis() [0x844fd21](0x846c0bf) /usr/games/pyrogenesis() [0x846c0bf](0x8467ea9) /usr/games/pyrogenesis() [0x8467ea9](0x846c4cd) /usr/games/pyrogenesis() [0x846c4cd](0x8467ea9) /usr/games/pyrogenesis() [0x8467ea9](0x8466075) /usr/games/pyrogenesis() [0x8466075](0x845e47e) /usr/games/pyrogenesis() [0x845e47e](0x82506b3) /usr/games/pyrogenesis() [0x82506b3](0x8253c06) /usr/games/pyrogenesis() [0x8253c06](0x821ad20) /usr/games/pyrogenesis() [0x821ad20](0x820f58e) /usr/games/pyrogenesis() [0x820f58e](0x8211004) /usr/games/pyrogenesis() [0x8211004](0x8213a64) /usr/games/pyrogenesis() [0x8213a64]errno = 0 (Error during IO)OS error = ?It is possible to continue after the dialog appears, but it comes back every time I click single player. Is there a more special configuration needed to run bots as mods. I like the idea as it probably allows a custom aiconfig dialog.
  7. I think the pairing with cheap techs asks the player to answer an easy A/B question. With unpaired and expensive techs you have yes/no questions which involve at least an estimate whether and when a tech is worth the investment. Also that decision sits on any tech not only on pairs. In short there are now more and even more difficult decisions to be made.
  8. > I beat two AIs at medium level. Yeah, that's fun when both choose you as enemy for their first attack. I think most importantly one needs to master the economy. If you have 2 barracks training units in non-stop mode while the centre researches phase.town and keep that going, you'll win. The chart mod is helpful and shows which player trains units the fastest.
  9. Great use of SVG, quickens the appetite for an additional layout to compare civs by phase.
  10. You can do something like this: var data = new Uint8ClampedArray(width * height);Engine.DumpImage(filename, data, width, height, 255); // writes pngor print(sometext) and capture that output from StdOut on Linux or dbgView on Windows.
  11. > EDIT: It works! This was just the beginning of a long and rewarding journey Welcome to the bot club!
  12. I've set myself a target of beating Petra in half an hour. Basically I can now build a ranged cavalry mass producing economy. Also needed are three towers as trap. When Petra starts building the first civic centre I start attacking and do not stop. Since I'm pretty sure a human player would easily find a defense I'm very fond of the new balancing, especially the lack of paired technologies, but that's probably my personal view.
  13. New version for current SVN here: https://dl.dropboxusercontent.com/u/354885/0ad/charts-0.0.17.zip Will re-check after release.
  14. { "name": "charts", "label": "0 A.D. Charts Extension", "url": "http://www.wildfiregames.com/forum/index.php?showtopic=18763", "description": "Visualizes resource consumption, units, etc", "dependencies": ["0ad"], "type": "content addon"}Looks good?
  15. Could anybody - Rada, I'm looking at you - walk me through how to make this work with the new mod selector in SVN? -mod=charts is apparently not enough.
  16. If you activate the developer overlay with alt-d, you'll find an option to give the cam more freedom.
  17. > Anyway, it seem to be a hack to use js::NotifyAnimationActivity to prevent JIT code GC during such a long period of time. Definitely, especially while more and more full apps move into the browser. However, if it even allows to run Unreal Engine 3 in FireFox...
  18. > GC of JIT code could happen again if there's only a single lag spike of more than a second Does this imply GC of all code and possibly full re-compilation of the source tree (GUI, bots, simulation, ...) or just parts? And if re-compilation takes longer than second, does it it trigger another GC and enters a loop?
  19. Well, if you prefer simple and fast over wasting a few kb, I'd agree.
  20. SpiderMonkey even ion-compiles and inlines functions created via the Function() constructor (Google's Chrome doesn't). These shouldn't get garbage collected, because they are very useful (and avoid lots of boilerplate code) to create hot functions on the fly.
  21. > so I will take a look at it. Thanks, that's great news!
  22. > with a proper bug report instead of a rambling forum post Sorry, the first post is as exact as I can describe it. And experience tells me trac entries are postponed without any comment so I figure forum posts are more effective. Looking at trac right now i see the issue has already been reported yesterday. It is very probably an autostart issue, otherwise I would expect more feedback. All I want to know is whether the command line interface is fix-worthy and if yes will it happen before release of A17? If I can provide a test case for autostart to make it never break again, I'd be happy to work on that.
  23. > Does Hannibal really need to know about the Civilization? In principle no. In practice yes. The engine expects an exact template name to build/train/research things, example "structures/athen_house". The API delivers template names with wildcards: "structures/{civ}_house" So a bot has to string replace the wildcard with its own civ. That's the purpose of applyCiv() pasted above. Without knowing its own civ a bot is stuck to whatever entities the designer has put on the map.
  • Create New...