--- Log opened Thu Sep 06 00:00:23 2012 20120906 00:15:36-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 00:38:13-!- fendrin_ [~fabi@88-134-46-58-dynip.superkabel.de] has joined #wesnoth-umc-dev 20120906 00:41:44-!- fendrin [~fabi@wesnoth/developer/fendrin] has quit [Ping timeout: 260 seconds] 20120906 00:42:26-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-umc-dev 20120906 01:04:31< Alarantalara> skyfaller: If you're around, I've posted a replay I'd like you to comment on in the thread. Especially comments on how you might have avoided running into the same amount of opposition on the right so quickly. Should we be biasing the attack more to the right? 20120906 01:29:04-!- mattsc [~mattsc@fw.hia.nrc.ca] has joined #wesnoth-umc-dev 20120906 01:30:39< mattsc> Alarantalara: hi 20120906 01:30:45< Alarantalara> Hello 20120906 01:31:08< mattsc> I only have a couple minutes right now, just logging in specifically to make one comment on your last line to skyfaller. 20120906 01:31:28< mattsc> Did you read what he and I discussed about refactoring the "rush CAs"? 20120906 01:33:22< mattsc> My goal of that approach is specifically so that it will be easier to change what priority the attacks on either side are given. (Well, besides making them work better in the first place and in combination with other CAs) 20120906 01:34:07< mattsc> So if you have any comments on whether that's a good idea or not, or whether I should do it differently, let me know. 20120906 01:35:25< Alarantalara> I read that earlier, so will wait until afetr you refactor before making changes 20120906 01:35:43< Alarantalara> however, when I said more to the right, I meant within the right rush 20120906 01:36:20< Alarantalara> Right now it often moves close to the keep on the attack, allowing freshly recruited units/the leader to immediately participate in the defense 20120906 01:36:36< Alarantalara> Which gives the defender a signficant numerical advantage 20120906 01:38:11< mattsc> Oh, I see. Yeah, that makes sense. 20120906 01:39:00< mattsc> And I hope that what's going on on the left there in your replay will be much improved by the changes following the refactoring. 20120906 01:43:11-!- mattsc [~mattsc@fw.hia.nrc.ca] has quit [Quit: bye] 20120906 01:59:36< AI0867> wesnoth is GPLv2+, not just v2 20120906 02:12:42-!- fabi [~fabi@88-134-46-58-dynip.superkabel.de] has joined #wesnoth-umc-dev 20120906 02:12:43-!- fendrin_ [~fabi@88-134-46-58-dynip.superkabel.de] has quit [Read error: Connection reset by peer] 20120906 02:12:47-!- fabi [~fabi@88-134-46-58-dynip.superkabel.de] has quit [Changing host] 20120906 02:12:47-!- fabi [~fabi@wesnoth/developer/fendrin] has joined #wesnoth-umc-dev 20120906 02:28:25-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 02:39:14-!- mattsc [~mattsc@d50-92-210-201.bchsia.telus.net] has joined #wesnoth-umc-dev 20120906 02:41:17< CIA-59> Wesnoth-AI-Demos: mattsc master * rb7ab1a2 / README.md : Change GPL version to v2+ in README.md - http://git.io/44-wcQ 20120906 02:41:39< mattsc> Thanks, AI0867. ^ 20120906 04:12:21-!- Alarantalara [~Adium@CPEc0c1c09e8055-CM00252eac6d62.cpe.net.cable.rogers.com] has quit [Quit: Leaving.] 20120906 04:20:32< CIA-59> Wesnoth-AI-Demos: mattsc master * r567233f / lua/grunt-rush-Freelands-S1_engine.lua : Set up area_rush_eval() for use with hold_left - http://git.io/80tQmg 20120906 04:21:42< mattsc> skyfaller, Alarantalara: be aware the Fred might be playing quite a bit worse after some of these commits until I am done reworking everything 20120906 04:23:22< mattsc> I won't commit anything that will crash the game, but it might temporarily result in some rather bad mistakes. I prefer to make a bunch of smaller commits rather than a couple huge ones, as it will be easier to revert those if needed. 20120906 04:30:02-!- loonybot [~loonybot@wesnoth/bot/loonybot] has quit [Remote host closed the connection] 20120906 04:32:56< CIA-59> Wesnoth-AI-Demos: mattsc master * ra873fb9 / lua/grunt-rush-Freelands-S1_engine.lua : Make sure rush attackers only attack targets inside the rush area - http://git.io/0jfURQ 20120906 04:49:40-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [] 20120906 05:13:50-!- hulavuta [~Justin@68.204.185.132] has joined #wesnoth-umc-dev 20120906 05:46:05-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 05:59:09< CIA-59> Wesnoth-AI-Demos: mattsc master * r1a2494c / (2 files in 2 dirs): Combined 'hold_left' and 'rush_right' into single CA 'rush' - http://git.io/rcwk6g 20120906 06:42:06-!- csarmi [csarmi@195-38-105-37.pool.digikabel.hu] has quit [] 20120906 06:57:23-!- mattsc [~mattsc@d50-92-210-201.bchsia.telus.net] has quit [Quit: bye] 20120906 07:11:27-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-umc-dev 20120906 07:20:06-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 07:39:12-!- skyfaller_ [~skyfaller@ool-43551e75.dyn.optonline.net] has joined #wesnoth-umc-dev 20120906 07:39:13-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has quit [Read error: Connection reset by peer] 20120906 10:13:25-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20120906 10:49:26-!- skyfaller_ is now known as skyfaller 20120906 10:49:26-!- skyfaller [~skyfaller@ool-43551e75.dyn.optonline.net] has quit [Changing host] 20120906 10:49:26-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has joined #wesnoth-umc-dev 20120906 10:54:54-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has quit [Remote host closed the connection] 20120906 10:55:09-!- skyfaller [~skyfaller@ool-43551e75.dyn.optonline.net] has joined #wesnoth-umc-dev 20120906 10:55:10-!- skyfaller [~skyfaller@ool-43551e75.dyn.optonline.net] has quit [Changing host] 20120906 10:55:10-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has joined #wesnoth-umc-dev 20120906 11:54:46< vultraz> gahh this must be the simplest of lua functions and I can't even do it -___- 20120906 12:46:39-!- skyfaller_ [~skyfaller@ool-43551e75.dyn.optonline.net] has joined #wesnoth-umc-dev 20120906 12:46:40-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has quit [Read error: Connection reset by peer] 20120906 13:23:04-!- loonybot [~loonybot@46.138.72.79] has joined #wesnoth-umc-dev 20120906 13:23:04-!- loonybot [~loonybot@46.138.72.79] has quit [Changing host] 20120906 13:23:04-!- loonybot [~loonybot@wesnoth/bot/loonybot] has joined #wesnoth-umc-dev 20120906 13:23:07-!- mode/#wesnoth-umc-dev [+v loonybot] by ChanServ 20120906 13:56:31< Espreon> vultraz: What're you trying to do? 20120906 14:04:23-!- Alarantalara [~Adium@CPEc0c1c09e8055-CM00252eac6d62.cpe.net.cable.rogers.com] has joined #wesnoth-umc-dev 20120906 14:24:24< fabi> hi Espreon, Alarantalara, vultraz 20120906 14:32:09-!- Alarantalara [~Adium@CPEc0c1c09e8055-CM00252eac6d62.cpe.net.cable.rogers.com] has quit [Quit: Leaving.] 20120906 14:35:03< vultraz> Espreon: make a loop that creates certain units if they haven't been yet 20120906 14:35:29< vultraz> hey fabi 20120906 14:38:33< vultraz> Espreon: but despite my best efforts, and crend's, it won't work -__- 20120906 14:46:58< vultraz> *sobs* 20120906 14:49:42< vultraz> janebot: !yuno work @stupid function 20120906 14:49:43< janebot> STUPID FUNCTION! ლ(ಠ益ಠლ) Y U NO WORK? 20120906 15:09:48-!- mattsc [~mattsc@216.123.55.165] has joined #wesnoth-umc-dev 20120906 15:12:05< mattsc> Hi, vultraz 20120906 15:12:49< mattsc> You mean that you want to check whether a unit with a certain ... id (type, ...?) is on the map and if not, create it? 20120906 15:45:35-!- mattsc_ [~mattsc@216.123.55.165] has joined #wesnoth-umc-dev 20120906 15:45:35-!- mattsc [~mattsc@216.123.55.165] has quit [Read error: Connection reset by peer] 20120906 15:45:35-!- mattsc_ is now known as mattsc 20120906 15:51:29< vultraz> mattsc: http://pastebin.com/FXSF7GMs 20120906 15:54:09< mattsc> vultraz: which part does not work? The condition does not kick in or the unit is not created? 20120906 15:54:23< vultraz> no unit 20120906 15:54:46< mattsc> But the dbms shos you the correct entry? 20120906 15:54:56< mattsc> shows 20120906 15:57:13< vultraz> My usecase is supposed to create 2 units (hence 2 subtags). The dbms comes up twice,, once with the correct vars, the second time empty 20120906 15:58:42< mattsc> That sounds like you have two problems. 1. Going through the cfg for both units; 2. creating a unit if an entry is found. 20120906 15:59:03< mattsc> I really cannot say more without also seeing cfg and wesnoth.unit 20120906 15:59:16< mattsc> sorry, scratch the latter... 20120906 15:59:36< mattsc> I assume you have wml-actions set so that it calls the [unit] tag? 20120906 16:00:03< vultraz> eh... 20120906 16:00:09< mattsc> No, wait... 20120906 16:00:23< mattsc> Hmm, not enough information. :) 20120906 16:01:23< mattsc> How's wml_actions defined? 20120906 16:01:57< vultraz> it's shorthand for wesnoth.wml_actions 20120906 16:02:38< mattsc> And you're trying to create a tag [check_for_character]? 20120906 16:02:47< vultraz> yes 20120906 16:03:02< mattsc> Ah. Sorry, haven't had enough coffee yet. :D 20120906 16:03:47< vultraz> :P 20120906 16:04:04 * vultraz gives mattsc a barrel of coffee 20120906 16:04:50< mattsc> Can you show me a dbms of cfg and/or entry? 20120906 16:05:40< vultraz> https://dl.dropbox.com/u/95558676/dbms_output.png 20120906 16:06:32< mattsc> Does [unit] require x,y= to be set? I forgot? 20120906 16:08:24< vultraz> placement="leader" is included when I call the tag, as I can't get it to set that internally 20120906 16:10:41< mattsc> What do you mean you cannot get it to set it internally? And I don't see placement = 'leader' in that screen grab you sent. 20120906 16:11:02< mattsc> Oh, placement='leader' is commented out 20120906 16:11:18< vultraz> er, the screen shot was from yesterday, before I added it 20120906 16:11:39< mattsc> Ok. But the code you paste-binned has the placement line commented out 20120906 16:11:57< vultraz> it's there in the WML 20120906 16:12:34< mattsc> Btw, I just tried calling wml-actions.unit and it works if you either give x,y or placement. 20120906 16:12:46< vultraz> huh... 20120906 16:13:00< mattsc> So, you're missing something. And you're not giving me all the information... :P 20120906 16:13:01< vultraz> ya know I think this function worked before I added the loop 20120906 16:17:19< vultraz> hm 20120906 16:17:40-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 16:17:45< mattsc> There's no reason why the loop shouldn't work if done correctly, but I cannot help you with outdated information. :) 20120906 16:24:35< vultraz> dafaq it suddenly works and I didn't change anything o_O 20120906 16:26:11< mattsc> Magic via IRC! 20120906 16:33:37< CIA-59> Wesnoth-AI-Demos: mattsc master * r48134ba / lua/grunt-rush-Freelands-S1_engine.lua : Disabled the turn-wide self.data.RR_attack_y variable - http://git.io/eDX1oA 20120906 16:33:45-!- mattsc [~mattsc@216.123.55.165] has quit [Quit: I'm asleep] 20120906 16:53:02-!- mattsc [~mattsc@fw.hia.nrc.ca] has joined #wesnoth-umc-dev 20120906 16:54:02< vultraz> mattsc: ok now the weird part: it STOPS working if I uncomment 'entry.placement="leader"' 20120906 16:54:17< vultraz> (and comment out respective lines in WML_ 20120906 16:54:20< vultraz> )* 20120906 16:55:47< mattsc> You'll really have to show me the whole thing at this point, or all I can do is guess... 20120906 16:59:33< vultraz> mattsc: http://pastebin.com/5MEUgF1M 20120906 16:59:38< vultraz> all related code 20120906 17:01:00< vultraz> mattsc: it works fine if line 16 isn't there, and lines 30 and 34 are 20120906 17:02:47< mattsc> Thanks - give me a few minutes ... 20120906 17:09:38< CIA-59> wesnoth-umc-dev: tatzelwurm * r15898 /trunk/Era_of_Myths/translations/de/LC_MESSAGES/wesnoth-Era_of_Myths.mo: EoM: updated German translation. 20120906 17:18:23< mattsc> vultraz: ok, figured out what the problem is, but my non-wiz-ness is getting into the way here ... :P 20120906 17:18:59< mattsc> The problem is that 'entry' is userdata, not a table, and can therefore not be manipulated like a table. 20120906 17:20:24< vultraz> ahhh 20120906 17:20:48< vultraz> so what do I do 20120906 17:21:32< mattsc> Yep, working on that. :) 20120906 17:22:07< mattsc> I'm sure there's an elegant way, but I am too stupid for that at the moment. 20120906 17:25:30< AI0867> mattsc: there are basically two ways to take grunt_rush_FLS1:should_have_gold_next_turn 20120906 17:25:45< AI0867> -Check if you'll have enough to recruit that unit *next turn* 20120906 17:25:54< AI0867> -Check if your income is positive 20120906 17:26:41< AI0867> also, there are currently two places where you set recruit_bank_gold 20120906 17:26:59< mattsc> AI0867: hold on. Alarantalara wrote that function. Let me check... 20120906 17:27:02< AI0867> both after maybe recruiting archers and trolls 20120906 17:29:21< mattsc> AI0867: sorry, I'm confused. Are you suggesting that that's the two things the function should do, or that it is ambiguous what it does? 20120906 17:29:41< mattsc> vultraz: I'll get back to you in a moment... 20120906 17:30:37< vultraz> k 20120906 17:40:16-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-umc-dev 20120906 17:40:25< mattsc> vultraz: http://pastebin.com/sYhXqkNL 20120906 17:40:38-!- loonybot [~loonybot@wesnoth/bot/loonybot] has quit [Remote host closed the connection] 20120906 17:40:55< mattsc> This makes a copy of the userdata into a table that you can then manipulate at will 20120906 17:41:32< mattsc> I don't know if there's a more elegant way to do that, I'm not enough of a lua expert, but this does work 20120906 17:42:51< mattsc> Oh, and you should delete the wesnoth. in front of wml_actions 20120906 17:46:06< vultraz> mattsc: yayyy it works :D thanks 20120906 17:48:29< CIA-59> wesnoth-umc-dev: vultraz * r15899 /trunk/NX-RPG/lua/debug.lua: NX: refactored [check_for_character] to take multiple subtags, 1 for each unit being checked. (Thanks to mattsc for getting it to completely work) 20120906 17:49:42< mattsc> AI0867: about the double occurrence of bank_gold, you only want to bank gold if you either want to counter-recruit archers or trolls and don't have the money, but you do want to do so in both cases 20120906 17:49:59< mattsc> So I think it is correct that way. Or am I misunderstanding what you're saying? 20120906 17:50:25< CIA-59> wesnoth-umc-dev: vultraz * r15900 /trunk/NX-RPG/episode1/scenarios/01_Awakening.cfg: NX: used new [check_for_character] format 20120906 17:52:29< CIA-59> wesnoth-umc-dev: vultraz * r15901 /trunk/NX-RPG/ (2 files in 2 dirs): NX: ran umcpropfix 20120906 18:00:37< AI0867> there's two possible implementations, I'm just not sure which one I should pick =P 20120906 18:01:25< AI0867> as for the bank_gold. If the function returns true for archers and then false for trolls, bank_gold becomes false, even though you want to save up to buy an archer 20120906 18:01:35< AI0867> (nevermind that trolls are cheaper and this will never happen) 20120906 18:04:41< mattsc> AI0867: Oh, I see. Right. Doh! So adding a 'return' after each of those should do the trick... 20120906 18:05:36-!- loonybot [~loonybot@46.138.72.79] has joined #wesnoth-umc-dev 20120906 18:05:36-!- loonybot [~loonybot@46.138.72.79] has quit [Changing host] 20120906 18:05:36-!- loonybot [~loonybot@wesnoth/bot/loonybot] has joined #wesnoth-umc-dev 20120906 18:05:39-!- mode/#wesnoth-umc-dev [+v loonybot] by ChanServ 20120906 18:05:44 * vultraz is now trying to figure out how to stick his inventory gui2 dialog in a loop, generating a table at the end of eac sycle... 20120906 18:05:50< mattsc> AI0867: Thanks for going through the code !!! Would you like me to add you as a contributor, so that you can make changes yourself? 20120906 18:06:27< mattsc> 'collaborator', or whatever it's called ... 20120906 18:07:11< vultraz> return { return_value = return_value } 20120906 18:07:21< vultraz> hm 20120906 18:07:34< vultraz> I thought return exited the loop/conditional 20120906 18:08:37< AI0867> mattsc: I can just file pull requests for the time being 20120906 18:08:40< vultraz> blagh I think this means...another forum post on my long topic of questions 20120906 18:19:15< vultraz> mattsc: is it possible to call a function from inside itself? 20120906 18:19:49< mattsc> vultraz: sure 20120906 18:19:58< vultraz> hmm 20120906 18:20:10 * vultraz goes to try 20120906 18:21:05< CIA-59> Wesnoth-AI-Demos: mattsc master * r3105596 / (2 files in 2 dirs): Split 'rush' and 'hold' into separate CAs - http://git.io/v8mD3w 20120906 18:23:58< vultraz> ohmygod I think it's working @.@ 20120906 18:25:58< CIA-59> wesnoth-umc-dev: vultraz * r15902 /trunk/NX-RPG/lua/gui/inventory.lua: NX: calling the entire function instead of just reshowing the dialog works 20120906 18:26:16< vultraz> ok now for some cleanup 20120906 18:26:40< vultraz> since the entire function is being recalled, that means some stuff is being reassigned that doesn't need to be 20120906 18:26:46-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 18:26:58< vultraz> like the local functions 20120906 18:29:43< vultraz> ok I guess moving all local functions into toplevel and keeping the actual stuff that shows the dialog in another function... 20120906 18:30:09< vultraz> meh I'll just keep it this way until later 20120906 18:35:04-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20120906 18:37:08< CIA-59> Wesnoth-AI-Demos: mattsc master * r868a764 / lua/grunt-rush-Freelands-S1_engine.lua : Cleaning up rush CA - http://git.io/RU3_Aw 20120906 18:52:31< CIA-59> Wesnoth-AI-Demos: mattsc master * r830b1db / lua/grunt-rush-Freelands-S1_engine.lua : Cleaning up hold CA - http://git.io/JYqSkQ 20120906 18:59:14< skyfaller_> mattsc: I'm having a little trouble following all of the refactoring going on. Could you give me a rundown of what's going to happen and where we are in the process? 20120906 18:59:18-!- skyfaller_ is now known as skyfaller 20120906 18:59:19-!- skyfaller [~skyfaller@ool-43551e75.dyn.optonline.net] has quit [Changing host] 20120906 18:59:19-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has joined #wesnoth-umc-dev 20120906 19:00:47< mattsc> skyfaller: Yeah, I can imagine... There's a load of changes going on and it seems like a waste of time to comment on all the intermediate steps. 20120906 19:00:54< mattsc> Are you going to be around for a little? 20120906 19:00:59< skyfaller> yeah, sure 20120906 19:01:27< mattsc> Ok, let me finish what I am doing atm, and I'll get back to you within the next hour. 20120906 19:05:00< CIA-59> Wesnoth-AI-Demos: mattsc master * r1d62033 / lua/grunt-rush-Freelands-S1_engine.lua : Set rush CA up to work with arbitrary number of rush areas - http://git.io/UYCfnA 20120906 19:09:18< CIA-59> wesnoth-umc-dev: vultraz * r15903 /trunk/NX-RPG/lua/gui/inventory.lua: NX: set use_button value back to default if selecting non-applicable items 20120906 19:14:36-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-umc-dev 20120906 19:27:56-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20120906 19:28:27< CIA-59> Wesnoth-AI-Demos: mattsc master * r26ef561 / lua/grunt-rush-Freelands-S1_engine.lua : Set hold CA up to work with arbitrary number of hold areas - http://git.io/te8MgA 20120906 19:28:52< mattsc> skyfaller: still around? 20120906 19:35:04-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 19:38:50< skyfaller> mattsc: yup 20120906 19:40:46< mattsc> So, I think you know that there were previously 3 different CAs dealing with the left, center and right 20120906 19:41:08< skyfaller> yes 20120906 19:41:09< mattsc> Also, each of them dealt with both attacks and with defensive positioning 20120906 19:41:20< skyfaller> ok 20120906 19:41:59< mattsc> The reason for that is "historical" because at the beginning I really didn't know where all of this was going, and it was clear from the start that that would have to be restructured at some point. 20120906 19:42:29< mattsc> So, now I have two CA's, one for rush attacking, one for position holding. 20120906 19:42:43< skyfaller> what about retreating? :P 20120906 19:42:57< skyfaller> we need teach Fred to flee in terror 20120906 19:43:14< mattsc> That's part of position holding. Defensive PH is retreat, aggressive PH is support of the rush. 20120906 19:43:25< skyfaller> ok :) 20120906 19:43:44< mattsc> The reason why I wanted to do this restructuring is that all of this is now completely configurable. 20120906 19:44:23< mattsc> Both of the CAs take an arbitrary number of areas to which they can be applied, plus a config table that tells it what to do in that area. 20120906 19:45:05< mattsc> Have a look at the code and find one of the places where it says 'local cfgs = {}' 20120906 19:45:43< skyfaller> ok... 20120906 19:45:49< skyfaller> line 2056 20120906 19:46:02< mattsc> ok 20120906 19:46:28< mattsc> So there's a config for attacks on the left, and one for attacks on the right (I've not had time to include the center yet) 20120906 19:46:53< mattsc> Left gets put into cfgs first, the right, which means they get executed in that order (which is how it has been all along) 20120906 19:47:14< skyfaller> what are these cfgs? 20120906 19:47:29< mattsc> They just tell Fred where to attack, with what units etc. 20120906 19:47:44< skyfaller> I see code for them right above 20120906 19:47:57< mattsc> yes 20120906 19:48:09< skyfaller> is there an etc.? I only see a unit filter and rush area 20120906 19:48:25< mattsc> etc? 20120906 19:48:35< skyfaller> you said, "They just tell Fred where to attack, with what units etc." 20120906 19:48:40< skyfaller> implying there is more than those two things 20120906 19:48:59< mattsc> oh the etc. meant that, since they are table, we can add whatever other information we want trivially. 20120906 19:49:09< skyfaller> ah, OK, are we planning to add anything else? 20120906 19:49:39< mattsc> Well, if you're 100% happy with how Fred does his attacks, then we don't need to. 20120906 19:49:49< skyfaller> hahhaahaha 20120906 19:50:14< mattsc> But if we either already know something to change now, or find something in the future, it's easy to do. 20120906 19:50:26< skyfaller> ok 20120906 19:50:46< mattsc> That's what I wanted to do, have this as configurable as possible, because who knows what we come up with next week. 20120906 19:50:51< skyfaller> right :) 20120906 19:51:13< skyfaller> OK, I guess the first step is getting the right rush working properly, while defending the left and center without losing rush power 20120906 19:51:20< mattsc> So, the other thing is that rush left is done before rush right at the moment (as I said, it's always been that way) 20120906 19:51:21-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 19:51:52< mattsc> But by making this elements in the cfgs array, we can change that in any way we want. Either hard coded or dynamically. 20120906 19:52:20< skyfaller> rushing on any front really requires some planning... you have to send all of your units that direction and leave yourself weak in other areas, but not so weak that enemy scouts can take your villages for free 20120906 19:52:56< mattsc> right, that's now easy to do (well, the coding is; coming up with the conditions might be harder) 20120906 19:53:07< mattsc> Go down to hold_eval(), where cfgs is defined in there 20120906 19:54:28< skyfaller> ok 20120906 19:54:54< mattsc> There you can see one of those conditions implemented. 20120906 19:55:09< skyfaller> what we should start doing is intentionally leaving villages open where the enemy can be trapped/killed during our powerphase, and abort the rush if any units fall for it, as Rigor suggested again 20120906 19:56:41< skyfaller> I think we need to calculate the ctk for a unit if it were to village steal, and if we can trap and have a good ctk just leave the village open 20120906 19:57:48< skyfaller> or if we trap and can buy a unit that counters its resistances so we can kill it next turn 20120906 19:59:46< skyfaller> mattsc: OK, I guess we need to figure out what the next steps are to get the right rush working properly again, followed by fine-tuning the retreat on the right 20120906 20:00:07< skyfaller> once we have attacking and retreating working well on one front, we can look at the other fronts 20120906 20:00:38< mattsc> yes 20120906 20:00:42< skyfaller> then we can work on our strategies for holding the center and left during the attack and retreat on the right 20120906 20:00:58< skyfaller> THEN at long last we can work on attack/retreat on the other fronts 20120906 20:01:26< skyfaller> so I guess I'll test the current behavior of the right rush? will it even rush on the right at the moment? 20120906 20:01:54< mattsc> It will. The behavior on the right is entirely unchanged. 20120906 20:02:30< mattsc> The behavior on the left now uses the same functions as the rush on the right, which changes its behavior somewhat. 20120906 20:02:39< skyfaller> ok, I'll try a game right now 20120906 20:03:10< mattsc> As I said, there might be some weird stuff going on on the left, that's to be expected. 20120906 20:03:22< mattsc> It's a step along to way to making it better. 20120906 20:04:47< mattsc> So if you post a replay on the forum, please make sure you point that out. :D 20120906 20:32:29< skyfaller> I'm having trouble figuring out exactly what is wrong with Fred's rush on the right 20120906 20:32:35< skyfaller> it fails against me pretty consistently 20120906 20:33:15< skyfaller> I think that maybe we need to bias it towards attacking the outer enemies, i.e. the furthest from my castle 20120906 20:34:16< skyfaller> even if that means it is less likely to get a village, because I have defending the village too heavily to be taken until he kills/damages/poisons some units 20120906 20:34:52< skyfaller> the rush is not only get a village, it is supposed to give you numerical advantage (or at least equal numbers) at a favorable time of day, so you should be able to get kills 20120906 20:49:49-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 20:55:13< skyfaller> I see plenty of ways that Fred screws up after the rush, but the initial rush seems decently executed and I don't know how to improve it. 20120906 20:55:28< skyfaller> I guess I can focus on improving everything else first :) 20120906 20:55:36< skyfaller> mattsc: replay at http://forum.wesnoth.org/viewtopic.php?f=10&t=34976&p=537223#p537223 20120906 20:57:04-!- skyfaller_ [~skyfaller@ool-43551e75.dyn.optonline.net] has joined #wesnoth-umc-dev 20120906 20:57:04-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has quit [Read error: Connection reset by peer] 20120906 20:57:13-!- skyfaller_ is now known as skyfaller 20120906 20:57:14-!- skyfaller [~skyfaller@ool-43551e75.dyn.optonline.net] has quit [Changing host] 20120906 20:57:14-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has joined #wesnoth-umc-dev 20120906 21:02:36-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 21:15:37< skyfaller> mattsc: a replay against Ron: http://forum.wesnoth.org/viewtopic.php?f=10&t=34976&p=537227#p537227 20120906 21:30:28-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 21:39:38< mattsc> skyfaller: so what's the first thing to work on? 20120906 21:40:21< mattsc> Once I am done with refactoring, I mean. I'm getting close, but not quite there yet. 20120906 21:45:41-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 21:47:09< skyfaller> it's so hard to know :/ But according to the plan I just laid out, we should focus on getting the attack and retreat on the right correct first, then deal with holding the other fronts 20120906 21:47:31< skyfaller> so let's figure out what is going wrong with the attack on the right 20120906 21:48:14< mattsc> You tell me ;) 20120906 21:48:45< skyfaller> it seems like generally Fred doesn't know when to abort the right rush 20120906 21:49:07< skyfaller> can we work on that? 20120906 21:49:30< mattsc> Sure 20120906 21:49:46< mattsc> Can you give me some (quantifiable) suggestions for what to try? 20120906 21:50:36< skyfaller> OK, I think we should focus on attacking nearby units first (nearby meaning close to the friendly castle). 20120906 21:51:00< mattsc> Are you just talking about the right here, or in general? 20120906 21:51:11< skyfaller> I guess we're going to have to figure this out in general 20120906 21:51:24< skyfaller> it's just that our starting point is trying to fix the right rush :P 20120906 21:51:49< mattsc> Right, but that's not independent on everything else going on, of course. 20120906 21:52:03< mattsc> So let me ask a really basic question: 20120906 21:52:07< skyfaller> so if an enemy comes into the center village, Fred should try to trap and kill it, and abort the right rush 20120906 21:52:38< mattsc> Ah, so that wouldn't be "working on the rush on the right" in my terminology :) 20120906 21:52:58< skyfaller> well, one of the main problems with the right rush is that it goes forward at stupid times 20120906 21:53:15< skyfaller> e.g. with inadequate forces 20120906 21:53:22-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has joined #wesnoth-umc-dev 20120906 21:53:51< mattsc> ok, so what we should really work on first is the balancing of the forces on the map w.r.t. the current situation? 20120906 21:53:52< skyfaller> he should also leave the center village open in order to send more units to the rushing front, so long as the center village is only threatened by a lone scout 20120906 21:54:21< skyfaller> I guess? I want to make sure that the rush only goes forward at a good time of day with overwhelming force 20120906 21:54:45< mattsc> Right. Which is what my refactoring is for (in part). :) 20120906 21:55:10< mattsc> So let me just ask/tell you a few things, please 20120906 21:55:15< skyfaller> k 20120906 21:55:29< mattsc> I want to make sure we're talking about the same things 20120906 21:55:54< mattsc> Could you bring up the strategy narrative on the wiki? 20120906 21:56:06< skyfaller> ok 20120906 21:56:23< skyfaller> looking at it, is it up to date? 20120906 21:56:41< mattsc> No, it's not, but that doesn't matter for what I want to ask you about 20120906 21:57:22< mattsc> So let's just look at the CAs that have to do with attacking and ignore everything else for now... 20120906 21:57:32< skyfaller> ok.... 20120906 21:57:42-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-umc-dev 20120906 21:57:57< skyfaller> is that just attack with high ctk and attack leader threat? 20120906 21:57:58< mattsc> And we'll ignore high-CTK and posion attacks as well, to keep it simple ... 20120906 21:58:25< skyfaller> oh, I guess it is rush right too 20120906 21:58:37< mattsc> So, what's left if attack leader threats, and the three "area rushes" (left, center, right) 20120906 21:58:45< mattsc> s/if/is 20120906 21:58:57< mattsc> in fact s/if/are ;) 20120906 21:59:02< skyfaller> I don't even see poison attacks here, FWIW 20120906 21:59:17< mattsc> 380,000 20120906 21:59:25< skyfaller> oh, I'm blind 20120906 21:59:36< mattsc> (which isn't the correct value any more either, but that's a detail) 20120906 21:59:38< skyfaller> ok 20120906 21:59:52< skyfaller> so what about these 2 CAs? 20120906 22:00:04< mattsc> Ok, so let me tell you how my thinking went when I set this up... 20120906 22:00:16< mattsc> 2? There's 4. leader threats, left, center, right 20120906 22:00:23< skyfaller> oh, right 20120906 22:00:26< skyfaller> ok 20120906 22:01:00< mattsc> So: If there's a threat to the leader, that's the highest priority and we need to take care of it immediately. 20120906 22:01:06< mattsc> That why it has the highest priority 20120906 22:01:13< skyfaller> yes. 20120906 22:01:29< mattsc> 2. We need to set up a defensive line in the center, to make sure Ron doesn't rush up there 20120906 22:01:46< mattsc> 3. Make sure the enemy doesn't take away the western villages 20120906 22:01:47< skyfaller> But there can be units in your territory that are not an immediate threat to your leader, which is a higher priority for killing than units in enemy territroy 20120906 22:02:45< mattsc> yes, this is getting into "how" to set the priorities though, let's talk about that after we outline the overall strategy 20120906 22:02:50< skyfaller> k 20120906 22:03:08< mattsc> 4. Whatever units are left, use for the rush on the right. 20120906 22:03:21< skyfaller> I also don't agree with 2. necessarily, you should be able to see a Ron-style assault coming up the center and only set up defense there if an attack is coming 20120906 22:03:32< mattsc> So, that's the overall thought process going into this. 20120906 22:03:35< mattsc> Let me finish :D 20120906 22:04:11< skyfaller> k 20120906 22:04:12< mattsc> As I said, that's the overall thought process. That doesn't mean that we _always_ do all of those 4 steps. 20120906 22:04:28< skyfaller> also I think 4 is misconceived 20120906 22:04:47< skyfaller> If we have any units drawn off from our planned grunt rush, we should cancel the rush 20120906 22:04:55< mattsc> The hard part is figuring out when to do each of them, and how many units to devote to each of them, and which of them to skip 20120906 22:05:05< mattsc> given the current situation on the map. 20120906 22:05:24< mattsc> (as for 4, well, you cannot devote more units to them than there are left :)) 20120906 22:05:44< skyfaller> I think a rush should be planned, with a certain number of units designated for the rush 20120906 22:05:57< skyfaller> and if any of them are drawn off to deal with a more important threat, the attack is off 20120906 22:06:02< mattsc> I don't see how that is in contradiction to what I said 20120906 22:06:13< skyfaller> ok 20120906 22:06:25< mattsc> So let's recap breifly: 20120906 22:06:42< mattsc> There are those 4 CAs. You understand what each of them is supposed to deal with, right? 20120906 22:06:47< skyfaller> yes. 20120906 22:07:10< skyfaller> they shouldn't be in hard-coded priority over one another, except for leader threats which must come first 20120906 22:07:33< mattsc> Ok, so the strength of the CA formalism is that I can have any of them return a score of 0, and not be executed, and I can even change there scores w.r.t. each other so that the order gets changed 20120906 22:07:52< mattsc> See, we really don't disagree... 20120906 22:07:59< skyfaller> :) 20120906 22:08:34< skyfaller> we also haven't discussed the possibility of rushing the center or right yet, but we'll get to that much later 20120906 22:09:11< mattsc> Correct. But that'll be very easy with the new code structure :) 20120906 22:09:14< skyfaller> so what do you want to discuss now? 20120906 22:09:18< mattsc> Well, assuming that we know how to rush 20120906 22:09:35< mattsc> Ok, we also seem to agree that leader threats have to come first. So maybe we should get that right first. 20120906 22:09:50< mattsc> Because that will determine what units we can or cannot devote to the rush. 20120906 22:09:57< skyfaller> well, usually you don't have leader threats until you've screwed up the other CA's, right? 20120906 22:10:21< skyfaller> so maybe fixing the other CAs is higher priority :P 20120906 22:10:39< mattsc> We can do that, but then you need to change your testing method :P 20120906 22:11:03< skyfaller> how do we currently test for a threat to the leader? 20120906 22:11:44< mattsc> Well, to me it seems that we need to test things in isolation. Playing through full games with full (pro) strategy never accomplishes that 20120906 22:11:51< skyfaller> wait, I still want to back up 20120906 22:12:10< mattsc> ok 20120906 22:12:54< skyfaller> bleh 20120906 22:13:26< skyfaller> If you want to test things in isolation, we should probably go back to ABCDE 20120906 22:13:44< mattsc> uh ... 20120906 22:13:55< mattsc> Yes, in a way, but that's not quite qhat I am talking about. 20120906 22:14:22< mattsc> Personally, I don't care much whether you want to test the leader threat CA or the rush on the right CA first. 20120906 22:15:04< mattsc> But if you distract Fred from the rush on the right by also simultaneously attacking up the center and the left, you'll never be able to figure out what's wrong with the rush 20120906 22:15:12< skyfaller> yes 20120906 22:15:20< skyfaller> forget I mentioned attacking up the center and left 20120906 22:15:29< mattsc> That's what I mean with changing the testing method. 20120906 22:16:00< mattsc> Rather than playing a full-strategy game, only move a few units up the right and see how Fred reacts. 20120906 22:16:14< skyfaller> I want to start with the rush on the right CA, I'm proposing we have a plan with certain units reserved for the plan, and if any get drawn off by another CA, abort 20120906 22:16:25< mattsc> Then go back a turn, change something (including spamming or changing units in debug mode), try it again, etc. 20120906 22:16:50< mattsc> For a test like that, we can also simply turn off the other CAs. 20120906 22:16:59< mattsc> It's as simple as changing 2 or 3 lines in the code 20120906 22:17:01< skyfaller> I think I will need your help doing such tests for a while, I'm good at playing games and bad at testing 20120906 22:17:46< mattsc> You're good at overall strategy testing, we just need to teach you the tricks of single-move testing :) 20120906 22:18:22< mattsc> So what does Rigor write there ... ? 20120906 22:18:35< skyfaller> he tells me to think more like Fred :P 20120906 22:18:52< mattsc> yeah, dammit, think like a computer! :D 20120906 22:19:17< skyfaller> As I've said, I think the rush right is doing well, I just want to dedicate more units to it so it hits with more force, and make sure it aborts when conditions are bad 20120906 22:19:33< mattsc> agreed 20120906 22:19:37< skyfaller> so can we start with dedicating units to it, and abort if a unit gets drawn off? 20120906 22:19:51< mattsc> That actually means to work on the other CAs first, because those draw units from the rush 20120906 22:20:18< skyfaller> does it? the other CAs are already drawing off units, and that's not necessarily incorrect 20120906 22:20:33< skyfaller> I just want the right rush to abort when that happens 20120906 22:20:46< mattsc> you're right, let me rephrase that... 20120906 22:20:58< mattsc> Two questions: 20120906 22:21:06< mattsc> 1. Do the other CAs draw off too many units? 20120906 22:21:12< mattsc> 2. When do we abort the rush 20120906 22:21:23< mattsc> Which of those do you wnt to work on first? 20120906 22:21:25< skyfaller> 1. Yes, they do sometimes, but please ignore that for the moment 20120906 22:21:30< mattsc> ok 20120906 22:21:51< skyfaller> 2. For now, I want to test aborting the rush when one of our planned rush units is drawn off 20120906 22:22:00< skyfaller> there are other situations when I want to abort the rush 20120906 22:22:16< skyfaller> but that's one of the first signs that we should abort our initial rush 20120906 22:23:11< mattsc> Ok. That's not exactly how the CAs work (doing it in exactly that way would not be easy), but you can ask the question the other way around and would get the same result, I think: 20120906 22:23:51< mattsc> When we get to the rush (because everything that's been deemed higher priority), do we have enough units left for a good rush? 20120906 22:24:27< skyfaller> for the initial rush, anything less than the maximum units is a bad rush 20120906 22:24:33< skyfaller> but OK, let's think of it that way 20120906 22:24:54< mattsc> How do you define the maximum number of units? 20120906 22:25:08< skyfaller> hold on 20120906 22:25:08< mattsc> You never have all units on the map. They are off grabbing villages etc. 20120906 22:26:06< skyfaller> ok, let's look at my latest game against Fred, start on turn 4 20120906 22:27:28< skyfaller> every unit that is not involved with holding the left front should be in the right rush 20120906 22:27:30< mattsc> ok, it's up 20120906 22:27:45< mattsc> But that is "exactly" what I was saying 20120906 22:28:13< mattsc> Every unit that does not do something else, should rush on the right 20120906 22:28:32< mattsc> Just a detail what "doing something else" means. 20120906 22:28:34< skyfaller> well, I'm defining a good rush (maximum units) for you 20120906 22:28:37< mattsc> The computer doesn't care. 20120906 22:28:52< mattsc> But you cannot think that way, I think 20120906 22:29:05< mattsc> If maximum # of units is one, that doesn't make a good rush. 20120906 22:29:12-!- ancestral [~ancestral@75-168-42-97.mpls.qwest.net] has quit [Quit: i go sleeps kthxbai] 20120906 22:29:13< skyfaller> you said we could test whether we have enough units for a good rush 20120906 22:29:18< mattsc> Whereas if you have 20 available, you don't need all of them 20120906 22:29:25< skyfaller> heh, good point 20120906 22:29:34< skyfaller> well, can we just talk about the special case of the initial rush? 20120906 22:30:01< skyfaller> we know exactly how many units we're getting with the default settings on Freelands 20120906 22:30:19< mattsc> ok 20120906 22:30:29< mattsc> 5 20120906 22:30:46< skyfaller> and even minor tweaks to Fred's starting gold / income wouldn't change it much 20120906 22:31:16< skyfaller> the fact is still that we have to hold the left because the right rush can come back to reclaim the center if the enemy takes the center 20120906 22:31:33< skyfaller> but the right rush cannot make it all the way over to the left front without leaving the right dangerously vulnerable 20120906 22:31:36< mattsc> Ron's already there at this time :) 20120906 22:31:40< mattsc> sorry ... 20120906 22:32:09< skyfaller> do you mean Ron is already literally in Fred's village? 20120906 22:32:44< mattsc> If I let him, yes... (but let's ignore that, I don't want to derail you) 20120906 22:33:07< mattsc> So let's assume I'm playing against nelson, and there's nobody coming up the middle 20120906 22:33:25< skyfaller> yes, that is what we are testing now 20120906 22:33:48< skyfaller> I want to make sure Fred responds correctly to this opening of mine, we can test Ron's opening later 20120906 22:34:03< mattsc> yep 20120906 22:34:21< skyfaller> OK, so I have a fencer threatening the center village 20120906 22:34:40< skyfaller> for some reason in this game Ron put the grunt on the keep into the village, rather than his leader 20120906 22:34:52< skyfaller> I thought it was b/c the leader had just moved and was not available, but that's not the case 20120906 22:35:20< skyfaller> so first of all, the leader should have jumped in the village, not the grunt, the grunt should have headed east for the right rush 20120906 22:35:41< skyfaller> and in that case, the rush should have gone forward as expected 20120906 22:35:44< mattsc> ok - that's no about the rush on the right though... 20120906 22:35:55< skyfaller> yes, I'm just making a remark 20120906 22:36:00< mattsc> ok 20120906 22:36:05< skyfaller> so for this test, let's take away the leader's MP 20120906 22:36:19< skyfaller> so he has to put the grunt in the village to prevent the village steal 20120906 22:37:09< skyfaller> at that point I want to abort the rush, b/c you have 5 units available for the rush and no reinforcements on the way 20120906 22:37:42< skyfaller> can we count the grunt on the keep as part of the rush, even though it won't reach for 3 turns? 20120906 22:38:09< mattsc> That's a question for you, not for me. (Coding-wise that's possible, of course) 20120906 22:38:26< mattsc> As in, you tell me, I'll do the grunt work ;) 20120906 22:38:38< skyfaller> OK, yes, I want to consider him part of the rush, at least for the initial rush 20120906 22:38:50< skyfaller> we can worry about rushes later in the game at another point 20120906 22:39:12< skyfaller> this is because he can reach the enemy village by 2nd watch 20120906 22:39:19< skyfaller> and he is not occupied with holding the left front 20120906 22:40:09< skyfaller> if he could not reach by 2nd watch (the last time during our powerphase) I would not consider him part of the rush 20120906 22:40:26< skyfaller> time = turn 20120906 22:40:46< mattsc> ok 20120906 22:41:33< skyfaller> don't think about this yet, but eventually I will actually want Fred to leave the center village open to allow village steals under certain circumstances 20120906 22:41:49< skyfaller> but right now we are just practicing aborting the rush when the situation is bad 20120906 22:42:00< mattsc> good 20120906 22:42:46< skyfaller> so what are we doing now? 20120906 22:42:59< mattsc> I need an equation 20120906 22:43:52< mattsc> Also we need a clearer definition of what "going ahead with the rush means" 20120906 22:43:56< skyfaller> ok, so we're testing whether we have enough units for the initial right rush to go forward 20120906 22:43:59< mattsc> Let me give you an example: 20120906 22:44:24< mattsc> Let's assume all the units on that Turn except for the 20120906 22:44:41< mattsc> assassin are right on or next to the keep (however that happened) 20120906 22:44:43< skyfaller> I want all units that can hit the target village by 2nd watch and are not involved with the left front to be part of the rush, if any of those units are distracted, abort. 20120906 22:44:56< mattsc> No, that's not enuogh 20120906 22:45:38< mattsc> you get the same number count as before of units that can get there by second watch, but you don't want to charge ahead with the assassin 20120906 22:46:16< mattsc> So the condition needs to be more complex than just units that can get there by second watch 20120906 22:46:56< skyfaller> hm.... 20120906 22:47:04< mattsc> Hmm, but again, I think I can deal with that. 20120906 22:47:23< mattsc> Ok, let's assume the situation is exactly as in your replay, beginning of Turn 4 20120906 22:47:36< skyfaller> with the leader having no MP 20120906 22:47:37< mattsc> If you were Fred, where would you move each unit 20120906 22:48:00< mattsc> let's also assume there is no fencer in the center 20120906 22:48:08< skyfaller> ah 20120906 22:48:36< mattsc> so you have 4 grunts, an archer and an assassin available, but they are spread out like that. 20120906 22:48:42< mattsc> what should they do? 20120906 22:48:43< skyfaller> well, that's actually a little tricky, because we need to decide whether to attack this turn, or wait one turn 20120906 22:48:57< skyfaller> as you can see when we run this replay, his attack turns out badly 20120906 22:49:04< mattsc> yes ... 20120906 22:49:07< skyfaller> but I'm not sure it was a bad initial attack 20120906 22:49:14< mattsc> that's why I'm asking. what should he do instead 20120906 22:49:49< skyfaller> did Fred have a ctk on the spearman in the village this turn? 20120906 22:50:09< skyfaller> yes, he did. 20120906 22:50:42< mattsc> sure, the grunts alone could theoretically kill it, but very unlikely 20120906 22:50:49< skyfaller> I think if all of the rushing units were on their way, it would have been worth the risk 20120906 22:51:09< skyfaller> I think what really made it a bad play was the lack of reinforcement 20120906 22:51:19< mattsc> so tell me specifically, where would you move each unit? 20120906 22:51:24< skyfaller> it succeeded in drawing loyalists into a battle at night 20120906 22:51:55< skyfaller> I think moving them exactly as Fred moved them is acceptable, except that the grunt on the keep should move to 23,8 instead of the village 20120906 22:52:38< mattsc> ok. 20120906 22:53:02< mattsc> nother question: 20120906 22:53:25< mattsc> Let's assume moving that grunt to that village is the right thing to do (again for whatever reason) 20120906 22:53:32< skyfaller> ok 20120906 22:53:41< mattsc> would you still go ahead with the rush with only 5 instead of 6 units? 20120906 22:53:46< skyfaller> no. 20120906 22:53:54< mattsc> ok 20120906 22:54:02< mattsc> next question: 20120906 22:54:39< mattsc> Let's go to the beginning of Turn 5 20120906 22:54:54< skyfaller> k 20120906 22:55:26< mattsc> And let's assume the grunt on the village were at the mountain hex at 25,12 instead 20120906 22:55:39< skyfaller> ok 20120906 22:55:44< mattsc> so, the leader had taken the village, and the grunt followed the rush 20120906 22:55:48< skyfaller> ok 20120906 22:55:55< mattsc> two part question :) 20120906 22:56:22< mattsc> a. assuming nobody is coming up the middle, I'd assume I push on with the rush? 20120906 22:56:48< skyfaller> yes, but I have qualifications for HOW I would continue the rush 20120906 22:56:58< mattsc> ok. how? 20120906 22:57:43< skyfaller> (a) I want to shield injured units (b) I want to form a line so I can't be easily trapped 20120906 22:58:12< skyfaller> (c) I want to be as far from the enemy castle as possible, to avoid defenders such as the leader 20120906 22:58:18< skyfaller> (d) I want kills 20120906 22:59:23< skyfaller> so with those caveats in mind, I continue the rush, i.e. trying to deal damage at night. 20120906 22:59:43< skyfaller> I want to try to take out the cavalry first, see if the archer can get enough hits to give the grunts a good ctk 20120906 22:59:54< mattsc> right... some of those are much easier to calculate than others though 20120906 23:00:25< skyfaller> if not, use grunts on the injured spearman. I think you have to give up on taking the village, and you definitely don't want to attack units that are close to the enemy castle 20120906 23:01:09< mattsc> ok ... 20120906 23:01:17< mattsc> I understand what you are saying. 20120906 23:01:25< mattsc> That doesn't mean that that's easy to do. 20120906 23:01:32< mattsc> I'm running out of time here though. 20120906 23:01:39< skyfaller> OK, what was the second part of your question? 20120906 23:01:54< mattsc> I really need to move on to other things, or I won't be able to afford my Wesnoth addiction any more soon. :) 20120906 23:01:59< skyfaller> lol 20120906 23:02:04< mattsc> yes, second part. 20120906 23:02:21< mattsc> So let's assume again that same situation, those 4 units plus the grunt on the mountain hex. 20120906 23:02:51< mattsc> So now there are suddenly a couple horsies coming out of the fog in the center 20120906 23:03:01< mattsc> what does Fred do? 20120906 23:03:32< skyfaller> hm, I guess they can cut off Fred's retreat 20120906 23:03:56< skyfaller> I think Fred has to abort 20120906 23:04:31< mattsc> so, the three units around the castle hexes move to the center? 20120906 23:04:43< mattsc> And the two units near the village move back to the castle hexes? 20120906 23:04:46< skyfaller> nooo, shield injured units during retreat 20120906 23:04:59< mattsc> Ok. 20120906 23:05:15< mattsc> So everybody gathers together around the castle hexes? 20120906 23:05:29< skyfaller> healthy units form a line on good terrain, and injured units get behind them so they can't be hit 20120906 23:05:48< mattsc> where, exactly? 20120906 23:05:59< skyfaller> well, depends on where the horses in the center are 20120906 23:06:17< skyfaller> but I'd put a grunt on 22,10 to block the center horses 20120906 23:06:50< skyfaller> archer on the mountain at 25,12 20120906 23:07:09< skyfaller> grunt on castle at 27,11 20120906 23:07:49< skyfaller> the slightly less-injured grunt (Grag) behind him at 27,10 20120906 23:08:09< skyfaller> and the most injured grunt on the hill at 25,11, where nothing should hit him 20120906 23:08:53< skyfaller> this should result in a line that can't be trapped, and where the injured grunts are relatively safe 20120906 23:08:57< mattsc> Ok, cool 20120906 23:09:28< skyfaller> if the cavalry can somehow get around on the right or horses get around them on the left, then you'd have to form some other line, or just flee in terror 20120906 23:10:05< mattsc> Ok - as I said, line forming is one of the hardest things to do in this business, but I have something to go by now. 20120906 23:10:10< skyfaller> ok 20120906 23:10:34< mattsc> Let me think about this a little (and finish the refactoring) 20120906 23:10:38< skyfaller> ok 20120906 23:11:10< mattsc> After that, I think I'll need you to do some "isolation testing" of the different parts of the CAs. 20120906 23:11:14< skyfaller> k 20120906 23:11:22< mattsc> Let's talk tonight or tomorrow somehow on how to do that. 20120906 23:11:22< skyfaller> just let me know how I can help :) 20120906 23:11:25< skyfaller> k 20120906 23:11:31< mattsc> Great, thanks! 20120906 23:11:49< mattsc> Bye for now. 20120906 23:12:23< mattsc> (I'll stay logged on, but will mostly not be at the computer) 20120906 23:28:40-!- Alarantalara [~Adium@CPEc0c1c09e8055-CM00252eac6d62.cpe.net.cable.rogers.com] has joined #wesnoth-umc-dev 20120906 23:31:43< CIA-59> Wesnoth-AI-Demos: Alarantalara master * rb04e88f / lua/grunt-rush-Freelands-S1_engine.lua : Do not unset the choice to bank gold - http://git.io/kcVhEQ 20120906 23:40:26< Alarantalara> skyfaller, mattsc: I'm wondering if it would be useful for us to play a few games of northerners vs loyalists on freelands with skyfaller as side 1 so we can see just what a rush on the right should look like 20120906 23:41:15< Alarantalara> Then we can ask questions like "Why did you choose to attack that unit instead of this one?" 20120906 23:42:17< mattsc> Alarantalara: good idea. I really don't have time until quite late (9pm PDT or so) today though. 20120906 23:42:43< mattsc> However, if you had time, the two of you could play and comment with messages that I can read later. 20120906 23:43:09< mattsc> Rigor might also be interested in joining (in fact, he told me so in a PM), and he's often on the MP server this time of the day 20120906 23:44:45< Alarantalara> I don't see him there at the moment 20120906 23:45:17< mattsc> Oh, if you do so, one request: could you play without fog? 20120906 23:45:39< mattsc> Since that's what Fred sees, I think it'd be good to play it that way also. 20120906 23:46:03< Alarantalara> That makes sense, though I suppose we'd ideally have fog for only the defender 20120906 23:47:48< mattsc> True. On the other hand, you can't really ask skyfaller about what he's doing if you can't see his move. 20120906 23:49:15< mattsc> Either way, I'd be happy to join maybe tomorrow, or sometime on the weekend, but today won't work 20120906 23:49:45< Alarantalara> I'm actually gone most of the weekend for my sister's wedding 20120906 23:50:12< Alarantalara> so it's basically today or Monday or later for me 20120906 23:50:27< mattsc> Ok. (and congrats to her) We'll figure it out. Fred won't go away... 20120906 23:50:44< mattsc> I'm traveling Mon-Fri next week, so likely can't do then. :P 20120906 23:59:03-!- mattsc [~mattsc@fw.hia.nrc.ca] has quit [Quit: bye] --- Log closed Fri Sep 07 00:00:23 2012