Exercises in Formula and Lua AI and AI-demos add-on feedback
Moderator: Forum Moderators
Re: Exercises in Formula and Lua AI
Thanks for testing and posting the replays, Coffee & Anonymissimus! Even though you crushed Fred, I do see a lot of things he does better than he used to. But, of course, there are still plenty of serious problems. The biggest ones I see are:
PS: Coffee: I know I told you to check out Fred "in a couple weeks" several months ago. Unfortunately, that couple of weeks of work has not happened yet...
- Distribution of units over the three areas of the Freelands map. He emphasizes attacking on the right, which is good, but (still) doesn't protect the left (which is where the player should attack) correctly. And from my own tests: he doesn't protect the middle very well either, if you rush up through there.
- Staying away from the map borders. The reason for that creep down the side is that the AI tries to minimize counter attack danger from the enemy, which is usually lowest at the edges (because, often, fewer units can attack there and because there are fewer hexes to attack from).
- I actually think Fred's a little too scared at the moment...
- Finally, the turns taking so long needs, of course, be fixed.
PS: Coffee: I know I told you to check out Fred "in a couple weeks" several months ago. Unfortunately, that couple of weeks of work has not happened yet...
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Ron seems to be broken in 1.11.6, at least in part due to file/directory changes to micro ai(s) it depends on.
In addition to not recruiting, Ron spits out a number of lua errors:
Regarding the file not found error, line 15 of generic_rush_engine.lua is:
This directory doesn't seem to exist anymore in 1.11.6, in fact I don't think ca_healer_move.lua exists anymore (as a separate file).
In addition to not recruiting, Ron spits out a number of lua errors:
Code: Select all
20131108 14:02:13 warning config: add-on 'AI-demos' has no _info.cfg; cannot read version info
20131108 14:02:48 error scripting/lua: ...erdata/data/add-ons/AI-demos/lua/generic_rush_engine.lua:15: bad argument #1 to 'require' (file not found)
stack traceback:
[C]: in function 'require'
...erdata/data/add-ons/AI-demos/lua/generic_rush_engine.lua:15: in function <...erdata/data/add-ons/AI-demos/lua/generic_rush_engine.lua:2>
(...tail calls...)
20131108 14:02:48 error ai/engine/cpp: side 2 : UNABLE TO CREATE engine[lua]
20131108 14:02:48 error scripting/lua: [string "return (...):stats_eval()"]:1: attempt to call method 'stats_eval' (a nil value)
stack traceback:
[string "return (...):stats_eval()"]:1: in main chunk
20131108 14:02:48 error scripting/lua: [string "return (...):recruit_rushers_eval()"]:1: attempt to call method 'recruit_rushers_eval' (a nil value)
stack traceback:
[string "return (...):recruit_rushers_eval()"]:1: in main chunk
20131108 14:02:48 error scripting/lua: [string "return (...):castle_switch_eval()"]:1: attempt to call method 'castle_switch_eval' (a nil value)
stack traceback:
[string "return (...):castle_switch_eval()"]:1: in main chunk
20131108 14:02:48 error scripting/lua: [string "return (...):retreat_injured_units_eval()"]:1: attempt to call method 'retreat_injured_units_eval' (a nil value)
stack traceback:
[string "return (...):retreat_injured_units_eval()"]:1: in main chunk
20131108 14:02:48 error scripting/lua: [string "return (...):grab_villages_eval()"]:1: attempt to call method 'grab_villages_eval' (a nil value)
stack traceback:
[string "return (...):grab_villages_eval()"]:1: in main chunk
20131108 14:02:48 error scripting/lua: [string "return (...):spread_poison_eval()"]:1: attempt to call method 'spread_poison_eval' (a nil value)
stack traceback:
[string "return (...):spread_poison_eval()"]:1: in main chunk
20131108 14:02:48 error scripting/lua: [string "return (...):place_healers_eval()"]:1: attempt to call method 'place_healers_eval' (a nil value)
stack traceback:
[string "return (...):place_healers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):stats_eval()"]:1: attempt to call method 'stats_eval' (a nil value)
stack traceback:
[string "return (...):stats_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):recruit_rushers_eval()"]:1: attempt to call method 'recruit_rushers_eval' (a nil value)
stack traceback:
[string "return (...):recruit_rushers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):castle_switch_eval()"]:1: attempt to call method 'castle_switch_eval' (a nil value)
stack traceback:
[string "return (...):castle_switch_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):retreat_injured_units_eval()"]:1: attempt to call method 'retreat_injured_units_eval' (a nil value)
stack traceback:
[string "return (...):retreat_injured_units_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):grab_villages_eval()"]:1: attempt to call method 'grab_villages_eval' (a nil value)
stack traceback:
[string "return (...):grab_villages_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):spread_poison_eval()"]:1: attempt to call method 'spread_poison_eval' (a nil value)
stack traceback:
[string "return (...):spread_poison_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):place_healers_eval()"]:1: attempt to call method 'place_healers_eval' (a nil value)
stack traceback:
[string "return (...):place_healers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):village_hunt_eval()"]:1: attempt to call method 'village_hunt_eval' (a nil value)
stack traceback:
[string "return (...):village_hunt_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):stats_eval()"]:1: attempt to call method 'stats_eval' (a nil value)
stack traceback:
[string "return (...):stats_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):recruit_rushers_eval()"]:1: attempt to call method 'recruit_rushers_eval' (a nil value)
stack traceback:
[string "return (...):recruit_rushers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):castle_switch_eval()"]:1: attempt to call method 'castle_switch_eval' (a nil value)
stack traceback:
[string "return (...):castle_switch_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):retreat_injured_units_eval()"]:1: attempt to call method 'retreat_injured_units_eval' (a nil value)
stack traceback:
[string "return (...):retreat_injured_units_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):grab_villages_eval()"]:1: attempt to call method 'grab_villages_eval' (a nil value)
stack traceback:
[string "return (...):grab_villages_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):spread_poison_eval()"]:1: attempt to call method 'spread_poison_eval' (a nil value)
stack traceback:
[string "return (...):spread_poison_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):place_healers_eval()"]:1: attempt to call method 'place_healers_eval' (a nil value)
stack traceback:
[string "return (...):place_healers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):village_hunt_eval()"]:1: attempt to call method 'village_hunt_eval' (a nil value)
stack traceback:
[string "return (...):village_hunt_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):stats_eval()"]:1: attempt to call method 'stats_eval' (a nil value)
stack traceback:
[string "return (...):stats_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):recruit_rushers_eval()"]:1: attempt to call method 'recruit_rushers_eval' (a nil value)
stack traceback:
[string "return (...):recruit_rushers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):castle_switch_eval()"]:1: attempt to call method 'castle_switch_eval' (a nil value)
stack traceback:
[string "return (...):castle_switch_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):retreat_injured_units_eval()"]:1: attempt to call method 'retreat_injured_units_eval' (a nil value)
stack traceback:
[string "return (...):retreat_injured_units_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):grab_villages_eval()"]:1: attempt to call method 'grab_villages_eval' (a nil value)
stack traceback:
[string "return (...):grab_villages_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):spread_poison_eval()"]:1: attempt to call method 'spread_poison_eval' (a nil value)
stack traceback:
[string "return (...):spread_poison_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):place_healers_eval()"]:1: attempt to call method 'place_healers_eval' (a nil value)
stack traceback:
[string "return (...):place_healers_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):village_hunt_eval()"]:1: attempt to call method 'village_hunt_eval' (a nil value)
stack traceback:
[string "return (...):village_hunt_eval()"]:1: in main chunk
20131108 14:02:49 error scripting/lua: [string "return (...):move_to_enemy_eval()"]:1: attempt to call method 'move_to_enemy_eval' (a nil value)
stack traceback:
[string "return (...):move_to_enemy_eval()"]:1: in main chunk
Code: Select all
local HS = wesnoth.require "ai/micro_ais/cas/ca_healer_move.lua"
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Thanks for the report, Cold Steel. You didn't say which version of AI-demos you are using, but based on the error message I assume it's a very recent version taken from the github site?
I just made a couple commits that should make Ron and Fred work again in 1.11.6. If you get the last version from github and you still get errors, please let me know. I didn't think anybody was interested in Ron or Fred at the moment given the lack of recent progress, so this is nice to know.
PS: Fred isn't worth checking out quite yet. I just made a major change to how defensive unit placement is done. I hope that this will mean some real improvement in the end, but at the moment the rating system is so out of whack that he barely manages to win against the RCA AI. I hope to have this sorted out by the time 1.11.7 comes out and will then also release a new version of AI-demos for the add-ons server.
Actually, it's the other way around. This directory does not yet exist in 1.11.6. As you say, I've been making a lot of changes to the Micro AIs (the biggest one being that no engine definitions are needed any more and MAIs can be combined at will without extra code) and, believe it or not, also to Fred. But in the process I made some changes to Ron that are incompatible with 1.11.6. Sorry for that, I didn't think about that.Cold Steel wrote:This directory doesn't seem to exist anymore in 1.11.6, in fact I don't think ca_healer_move.lua exists anymore (as a separate file).
I just made a couple commits that should make Ron and Fred work again in 1.11.6. If you get the last version from github and you still get errors, please let me know. I didn't think anybody was interested in Ron or Fred at the moment given the lack of recent progress, so this is nice to know.
PS: Fred isn't worth checking out quite yet. I just made a major change to how defensive unit placement is done. I hope that this will mean some real improvement in the end, but at the moment the rating system is so out of whack that he barely manages to win against the RCA AI. I hope to have this sorted out by the time 1.11.7 comes out and will then also release a new version of AI-demos for the add-ons server.
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Bah, how could I forget to mention the version. But you are correct, I did use the latest from github. For some reason, it hadn't occurred to me to look on the add-on server for stable releases of the AIs instead. I should probably post the error log for my brain next...
Ron works fine now on 1.11.6 with your latest changes, thanks!
Ron works fine now on 1.11.6 with your latest changes, thanks!
Cool, I very much look forward to it. It is so great finally having work done on an AI that aims to do more than always rushing in and attacking regardless of the conditions.mattsc wrote: I didn't think anybody was interested in Ron or Fred at the moment given the lack of recent progress, so this is nice to know.
PS: Fred isn't worth checking out quite yet. I just made a major change to how defensive unit placement is done. I hope that this will mean some real improvement in the end, but at the moment the rating system is so out of whack that he barely manages to win against the RCA AI. I hope to have this sorted out by the time 1.11.7 comes out and will then also release a new version of AI-demos for the add-ons server.
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
I wouldn't use the version that is currently on the add-ons server, it's really old. I haven't updated it in a long time because I don't feel that I had made sufficient progress. I think that I am getting close though. And I just need to remember to test that the current github version also works with the latest Wesnoth release, not just with trunk, whenever I make any significant changes.Cold Steel wrote:For some reason, it hadn't occurred to me to look on the add-on server for stable releases of the AIs instead.
Well, don't expect too much. The more I work on this, the harder it seems to get -- and the more I appreciate how good the default AI actually is as a general purpose AI. But I'll keep trying...Cold Steel wrote:Cool, I very much look forward to it. It is so great finally having work done on an AI that aims to do more than always rushing in and attacking regardless of the conditions.
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Well you have done a fine job already. Even in what you say is a crippled state, I saw Fred beat Ron in 13 turns by encircling, capturing villages and perhaps even by playing more defensively and retreating the injured a bit more reliably (it seemed like). And Ron in turn beats RCA with equal efficiency.mattsc wrote: Well, don't expect too much. The more I work on this, the harder it seems to get -- and the more I appreciate how good the default AI actually is as a general purpose AI. But I'll keep trying...
Further, skimming through Fred's lua script, I see a wider array of deeper 'evaluations' that previously only human players would consider (leaving AI players to make quite frequent, obvious blunders) as well as what looks like strategic spacial thinking (defined by 'zones' and perhaps also 'corridors' if I am not misreading it). Strategic spacial thinking is major because this enables effective defensive play.
It doesn't matter that the strategic regions have to be hand-defined per map. Because once you have this working well on a few maps, it will be a stepping stone to having these defined in the map editor. This will allow maps to quickly be outfitted, tested and refined for Fred and his successors.
That in turn could be a stepping stone to a procedural strategy mapper, because there will be a good set of well designed man-made AI mapping to inspire the rules and test the output of this procedural mapper against, visually.
So long story short, I believe you are heading down the right path with this.
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Hello again and thanks for the comments and encouragement. Yes, that is all pretty much how we're imagining it happening. Start by making it work for one map (Freelands) for Side 1 and Northerners only, and then generalize it piece by piece until it is able to play any map by itself, but with the option of providing map-specific instructions by the user if desired. Unfortunately, I am still stuck on the first step, but I do think that we're making progress, even if very slowly. The next step, I think, is to have Fred consider more than one unit at a time when setting up defensive positions. Unfortunately, playing through all possible combinations takes too long, so I am currently trying to see if I can come up with an approximate method that does almost as good a job.
Well, so much for now, I'll check back in if/when there's progress on this ... In any case, thanks again for the comments, it's very motivating to know that people are still interested in this.
Well, so much for now, I'll check back in if/when there's progress on this ... In any case, thanks again for the comments, it's very motivating to know that people are still interested in this.
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
well of course we are. everybody wants to see the AI play smartassly and own noob&intermediate players, especially where human map knowledge is used to its utmost advantage. i dont see a problem telling the AI where good spots are when the humans playing the map do. generic map building might be a too hard rock to lift, for now lets see hwo fast matt will program whatever he can in his spare time. ur alone at the moment i gather correctly? gj for what uve managed already!
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Thanks, Rigor. And you're right of course, I was pretty certain that people are still interested in this in general, but there's just been so little perceptible progress in almost a year now, that things feel kind of ... dormant. Yeah, I am pretty much alone in this at the moment. Alarantalara is around and helps out on and off, but he has even less time than I do. As for me, I think I am done with most of the Micro AI development work, so I have a little more time for Fred again.
I do hope that all the refactoring I have done will eventually pay of, but this defensive unit positioning thing is still something I have not figured out. Looking around on the Internet, nobody really seems to be doing this (which probably means that it is difficult). When people talk about AI formations, they usually mean advancing units in formation. And "defensive play" simply means not attacking. If anybody has any pointers to articles, blog post, whatever dealing with actual defensive line formation (while taking terrain into account), please let me know. In the meantime, I'll continue with trial and error...
I do hope that all the refactoring I have done will eventually pay of, but this defensive unit positioning thing is still something I have not figured out. Looking around on the Internet, nobody really seems to be doing this (which probably means that it is difficult). When people talk about AI formations, they usually mean advancing units in formation. And "defensive play" simply means not attacking. If anybody has any pointers to articles, blog post, whatever dealing with actual defensive line formation (while taking terrain into account), please let me know. In the meantime, I'll continue with trial and error...
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Have you looked into Edge Detection? Because what you are describing sounds basically the same. Consider the map as an image; each coordinate is a pixel with a value representing the tenability of the terrain at that point. Then edge detection techniques are used on it to find lines of strong contrast between high defense and low defense terrain. Any lines that are not close to perpendicular to the direction of conflict are thrown out.mattsc wrote: If anybody has any pointers to articles, blog post, whatever dealing with actual defensive line formation (while taking terrain into account), please let me know.
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Yes, I have, though that was quite some time ago, so I should revisit this. Thanks for the reminder.Cold Steel wrote:Have you looked into Edge Detection? Because what you are describing sounds basically the same. Consider the map as an image; each coordinate is a pixel with a value representing the tenability of the terrain at that point. Then edge detection techniques are used on it to find lines of strong contrast between high defense and low defense terrain. Any lines that are not close to perpendicular to the direction of conflict are thrown out.
If you check out the "Prune Cart" scenario in AI-demos (choose "let AIs fight it out" and "stationary cart"), that does pretty much that. Unfortunately, it doesn't quite work that well on small MP maps with much fewer units for a variety of reasons (which I'm happy to discuss if you're interested, but don't have time for right now). Btw, if you'd like to discuss these kinds of things interactively, we usually do so on the #wesnoth-umc-dev irc channel. It's been sadly quiet there lately and I always learn something from those discussions, so it would be great to have those again occasionally.
Thanks again!
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
Nice! I didn't expect to see dynamic defensive positioning work this well.mattsc wrote: If you check out the "Prune Cart" scenario in AI-demos (choose "let AIs fight it out" and "stationary cart"), that does pretty much that.
Is there a test scenario for this defense AI on a smaller map with fewer units like you said? It would be interesting to see how it operates in its worst circumstances.
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
There isn't. I tried it and it simply didn't work. That's also the reason why I never really finished the Prune Cart scenario, the method used in it is simply to rigid, even for a scenario with such clear lines between good and bad terrain. My hope is that, at some point, I will come back with what I learn through Fred and make this scenario work well (enough) with a moving cart as well.Cold Steel wrote:Is there a test scenario for this defense AI on a smaller map with fewer units like you said? It would be interesting to see how it operates in its worst circumstances.
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
I figured that with Wesnoth 1.11.7 being released this weekend, I should publish an AI-demos version that works with that. So:
AI-demos v0.12.4 has been released on the add-ons server. This is a work-in-progress update, so there aren't any super exciting changes. I guess it is worth noting that Ron and Fred are now available as an MP modification and that the Micro AIs have been removed from AI-demos as they are now all in mainline and the main development work on them is done. Lots of other smaller (or at least less visible) changes have been made since the last release, the full changelog is attached below.
Note that v0.12.4 requires Wesnoth 1.11.7, but that I tagged a version (v0.4.12-1.11.6) that still works with Wesnoth 1.11.6 and has identical functionality. You can get v0.4.12-1.11.6 from here if you cannot or do not want to update to 1.11.7 yet.
As for Fred: I've done a lot of internal changes to Fred's algorithms and I do believe that at least some of them are improvements, but he's still not playing as well or stably as I would like him to. The main issues I want to concentrate on next are:
AI-demos v0.12.4 has been released on the add-ons server. This is a work-in-progress update, so there aren't any super exciting changes. I guess it is worth noting that Ron and Fred are now available as an MP modification and that the Micro AIs have been removed from AI-demos as they are now all in mainline and the main development work on them is done. Lots of other smaller (or at least less visible) changes have been made since the last release, the full changelog is attached below.
Note that v0.12.4 requires Wesnoth 1.11.7, but that I tagged a version (v0.4.12-1.11.6) that still works with Wesnoth 1.11.6 and has identical functionality. You can get v0.4.12-1.11.6 from here if you cannot or do not want to update to 1.11.7 yet.
As for Fred: I've done a lot of internal changes to Fred's algorithms and I do believe that at least some of them are improvements, but he's still not playing as well or stably as I would like him to. The main issues I want to concentrate on next are:
- Defensive positioning is still not working as desired. There's some improvement in some areas, but going along with apparently worse positioning in others.
- Attack selection, esp. poisoning, needs some work. E.g. don't kill off trapped and poisoned units if there are other targets that are just as good. But that's not the only issue.
- Village grabbing is a bit too "predictable"
- When there are many enemies getting close to Fred's leader, he still gets very, very slow.
Complete changelog for AI-demos 0.12.4 and 0.12.4-1.11.6
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
Re: Exercises in Formula and Lua AI and AI-demos add-on feed
At long last, AI-demos v0.13.0 is out, featuring a completely reworked Freelands AI “Fred”.
Well, the way how Fred works in general is still the same, but pretty much all parts have been rewritten (at least) twice. Once to (I hope) improve behavior, and once for speed. I cannot say that I am super happy with everything I am seeing now, but I am certainly happier than I have been, so I uploaded the new version to the 1.12 and 1.13 add-on server.
The biggest caveat right now is that, simply for time reasons, I do almost all of my testing against the default (RCA) AI. Fred does very well in that case (see below), but we all know that that has limited applicability to playing against human players. So, we’re at the point where some help with play testing by others would be really helpful.
Version requirement: I tested yesterday that Fred works with Wesnoth 1.11.7 (the minimum requirement), but there was some problem with the resultant replay file. If possible, I’d suggest always using the most recent version (that is, 1.11.15 or 1.13.0-dev at the moment).
I’ll leave it at that for the general text and put all of the rest into sections, so that you can pick and choose the bits you’re interested in. Thanks in advance for any feedback and help with the testing!
Well, the way how Fred works in general is still the same, but pretty much all parts have been rewritten (at least) twice. Once to (I hope) improve behavior, and once for speed. I cannot say that I am super happy with everything I am seeing now, but I am certainly happier than I have been, so I uploaded the new version to the 1.12 and 1.13 add-on server.
The biggest caveat right now is that, simply for time reasons, I do almost all of my testing against the default (RCA) AI. Fred does very well in that case (see below), but we all know that that has limited applicability to playing against human players. So, we’re at the point where some help with play testing by others would be really helpful.
Version requirement: I tested yesterday that Fred works with Wesnoth 1.11.7 (the minimum requirement), but there was some problem with the resultant replay file. If possible, I’d suggest always using the most recent version (that is, 1.11.15 or 1.13.0-dev at the moment).
I’ll leave it at that for the general text and put all of the rest into sections, so that you can pick and choose the bits you’re interested in. Thanks in advance for any feedback and help with the testing!
Batch testing against the RCA AI
Reminder: How to use Fred
If you want to do some playtesting
What’s next for Fred?
v0.13.0 changelog
SP campaigns: Galuldur's First Journey (1.12 & 1.14) & Grnk the Mighty (1.10 & 1.12)
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on
AI experiments: Micro AIs (wiki, forum thread, known/fixed bugs), Fred, AI-demos add-on