--- Log opened Tue Mar 01 00:00:14 2016 20160301 00:00:24-!- Greg-Bog_ [~greg_bogg@74.92.168.145] has quit [Ping timeout: 250 seconds] 20160301 00:08:32-!- irker829 [~irker@uruz.ai0867.net] has quit [Quit: transmission timeout] 20160301 00:16:23-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 00:18:51-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 00:23:03-!- mjs-de [~mjs-de@wh.Uni-Dortmund.DE] has quit [Remote host closed the connection] 20160301 00:39:45-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160301 00:39:51-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160301 00:41:31< ancestral> vultraz: Hmm: https://gna.org/bugs/?13947 20160301 00:51:27-!- wedge010 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160301 00:52:32-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 00:52:33< travis-ci> wesnoth/wesnoth#8683 (master - 84ae04a : Charles Dang): The build is still failing. 20160301 00:52:33< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112678501 20160301 00:52:33-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 00:52:45-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 00:53:51-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 00:53:52< travis-ci> wesnoth/wesnoth#8682 (master - be5164d : Charles Dang): The build was broken. 20160301 00:53:52< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112676953 20160301 00:53:52-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 00:55:27-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Ping timeout: 250 seconds] 20160301 00:55:27-!- wedge010 is now known as wedge009 20160301 00:55:30-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 01:09:11-!- gfgtdf [~chatzilla@f054168028.adsl.alicedsl.de] has quit [Quit: ChatZilla 0.9.92 [Firefox 44.0.2/20160210153822]] 20160301 01:09:59-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 01:20:21-!- mjs-de [~mjs-de@x4db5c9a3.dyn.telefonica.de] has joined #wesnoth-dev 20160301 01:22:10-!- travis-ci [~travis-ci@ec2-50-17-47-241.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 01:22:11< travis-ci> wesnoth/wesnoth#8684 (master - 7f5fe8c : Charles Dang): The build is still failing. 20160301 01:22:11< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112683436 20160301 01:22:11-!- travis-ci [~travis-ci@ec2-50-17-47-241.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 01:28:52-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160301 01:33:53-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160301 01:33:59-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160301 01:42:51-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160301 02:03:18< celticminstrel> A huge number of scenarios use recruitment_ignore_bad_{combat,movement} liberally... 20160301 02:04:35< fabi> celticminstrel: I may be mistaken... But I think that recruiting has gained much better during the ages and this is just a leftover from times in which recruiting was not working well enough. 20160301 02:04:51< celticminstrel> I believe they do nothing now, as well. 20160301 02:05:50< fabi> In some scenarios the recruiting algo deceided to ignore 80% of the recruit lists... 20160301 02:06:09< celticminstrel> Grepping the source doesn't appear to reveal any places where their values are actually accessed. 20160301 02:06:34< celticminstrel> So I'm wondering if I should a) remove the aspects and all references to them or b) make the recruiting algorithm honour them. 20160301 02:06:47< fabi> hmmm 20160301 02:07:04< celticminstrel> (Of course there's also c) do nothing.) 20160301 02:07:28 * celticminstrel would also like zookeeper's opinion, though I guess he's not around right now. 20160301 02:08:19< fabi> celticminstrel: recruitment_pattern 20160301 02:08:23< fabi> what about that? 20160301 02:08:56< celticminstrel> I'll check that too. The wiki claims that it's converted to a recruitment_instructions aspect. 20160301 02:10:48< fabi> by the engine or by wmllint? 20160301 02:11:14< celticminstrel> By the engine, I assume. 20160301 02:12:32-!- Jetrel_bot is now known as Sanic_Hdghg 20160301 02:12:51-!- Sanic_Hdghg is now known as Jetrel_bot 20160301 02:14:23-!- louis94 [~~louis94@91.178.240.127] has quit [Quit: Konversation terminated!] 20160301 02:14:29-!- travis-ci [~travis-ci@ec2-50-17-47-241.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 02:14:30< travis-ci> wesnoth/wesnoth#8685 (master - 073188f : Charles Dang): The build is still failing. 20160301 02:14:30< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112687947 20160301 02:14:30-!- travis-ci [~travis-ci@ec2-50-17-47-241.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 02:14:48< fabi> so the recruitment_patterns filters the next recruit to a "usage=" type while the ignore_bad_* attributes should make the decission 20160301 02:15:13-!- travis-ci [~travis-ci@ec2-54-159-59-176.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 02:15:14< travis-ci> wesnoth/wesnoth#8686 (master - cc8b2d0 : Charles Dang): The build is still failing. 20160301 02:15:14< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112690151 20160301 02:15:14-!- travis-ci [~travis-ci@ec2-54-159-59-176.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 02:15:20< fabi> more of a random thing inside the remaining set. 20160301 02:15:30< celticminstrel> I think the recruitment_instructions supports patterns with specific unit types or levels as well as usages. 20160301 02:15:41< celticminstrel> Not sure if that extends to recruitment_pattern. 20160301 02:16:01< celticminstrel> Somewhere is still trying to define the recruitment aspect that I removed... 20160301 02:17:47< fabi> Half of all the ai configuration options have either not worked at all or resulted in unexpected behaviour. 20160301 02:18:00< fabi> Since 10 years. 20160301 02:18:31< fabi> And whenever someone wanted to repair or enhance the ai things got worse. 20160301 02:19:49-!- Waste [~Cracker@blk-138-75-91.eastlink.ca] has joined #wesnoth-dev 20160301 02:19:55-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20160301 02:20:06 * celticminstrel isn't sure why you're saying this. 20160301 02:20:51< fabi> My point is that the ai code like other aspects of Wesnoth is somehow... 20160301 02:21:27< fabi> ... in a state that it should better be redisigned and replaced. 20160301 02:22:06< celticminstrel> I think its overall design isn't all that bad, honestly. 20160301 02:22:14< fabi> I have seen similar issues with the mp setup and mp campaign things. 20160301 02:22:30< celticminstrel> The AI specifically, at least. 20160301 02:22:42< fabi> Whenever you change something a lot breaks. And fixing a bug opens 5 more. 20160301 02:22:48< fabi> The ai is indeed a good one. 20160301 02:23:08< celticminstrel> That's not what I meant (though it's true). 20160301 02:23:24< fabi> I have seen a lot hex turn games with an ai that is just ugly compared to wesnoth's. 20160301 02:24:52< fabi> But all the configuration of the ai 20160301 02:24:57< fabi> is just frustrating. 20160301 02:25:06< celticminstrel> What's frustrating about it? 20160301 02:25:13< fabi> I mean, the ai is either good for a scenario as it is. 20160301 02:25:29< fabi> Or it drives you mad while trying to tune it with the parameters. 20160301 02:25:57< celticminstrel> So it's frustrating because... 20160301 02:26:46< fabi> grouping=offensive 20160301 02:26:54< fabi> or devensive 20160301 02:26:58< fabi> never worked 20160301 02:27:16< fabi> all the caution= aggression= 20160301 02:27:19< fabi> they do something 20160301 02:27:27< fabi> but changing them is seldomly a good idea 20160301 02:27:30< celticminstrel> So it's frustrating because some parameters don't seem to work as you expect? 20160301 02:28:17< fabi> Well, I tried several times to enhance the gameplay of the campaigns I maintained by adjusting the ai paramaters. 20160301 02:28:47< fabi> In most cases I just went with the unmodified default ai. 20160301 02:30:03< fabi> I once tried to adjust the ai of the northern troll force in LoW's Elves last stand to not commit suicide by running against wood over open fields. 20160301 02:30:13< fabi> That never worked. 20160301 02:30:56< celticminstrel> I don't know the context there, so not sure what you're talking about. 20160301 02:31:26< fabi> suididal ais is a general problem 20160301 02:31:30< fabi> not bound to that scenario 20160301 02:31:42< fabi> especially when you deal with an ai ally that must not get killed 20160301 02:32:49< fabi> A scenario that works surprisingly well is "The siege of Elensefar" in httt. 20160301 02:39:30-!- irker891 [~irker@uruz.ai0867.net] has joined #wesnoth-dev 20160301 02:39:30< irker891> wesnoth: Charles Dang wesnoth:master cc87fcbb58dd / src/hotkey/hotkey_preferences_display.cpp: Further cleanup, hopefully fixed build https://github.com/wesnoth/wesnoth/commit/cc87fcbb58dd64a392f86afe59910214b04a1f41 20160301 02:41:34 * vultraz pings wedge009 20160301 02:44:52-!- travis-ci [~travis-ci@ec2-54-159-59-176.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 02:44:53< travis-ci> wesnoth/wesnoth#8687 (master - 05b0d47 : Charles Dang): The build is still failing. 20160301 02:44:53< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112694050 20160301 02:44:53-!- travis-ci [~travis-ci@ec2-54-159-59-176.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 02:44:54-!- mjs-de [~mjs-de@x4db5c9a3.dyn.telefonica.de] has quit [Remote host closed the connection] 20160301 02:47:40< vultraz> wedge009, gfgtdf: I'm not sure if it's related to the new dialog or something, but hotkeys don't seem to be preserved when you close and relaunch wesnoth 20160301 02:58:20-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 03:00:17-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 03:03:38< celticminstrel> Best way to view Wesnoth manpage: 'man doc/man/wesnoth.6' 20160301 03:03:44< celticminstrel> (From source dir, of course.) 20160301 03:07:57< irker891> wesnoth: Charles Dang wesnoth:master 0bcd76867f24 / data/gui/default/window/preferences/ (01_general.cfg 05_multiplayer.cfg): tpreferences: some layout tweaks https://github.com/wesnoth/wesnoth/commit/0bcd76867f24df1a4a60c6a9dd837cfc6c8c69e0 20160301 03:08:35< celticminstrel> Found it. Needed to remove the definition from data/ai/utils/default_config.cfg 20160301 03:08:49< celticminstrel> So, does anyone have any opinions on what to do with the recruitment_ignore_* aspects? 20160301 03:08:57< celticminstrel> a) Remove them (and all references to them in campaigns etc) 20160301 03:09:09< celticminstrel> b) Tweak the recruiting algorithm to check them 20160301 03:09:15< celticminstrel> c) Do nothing 20160301 03:10:54-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 03:16:44< celticminstrel> What the heck was "number_of_possible_recruits_to_force_recruit" for? 20160301 03:17:40< vultraz> sounds like "number of recruits needed to force a recruit of some unit" 20160301 03:18:26< celticminstrel> I was thinking maybe "number of recruits out of the possible list to ensure at least one is recruited". 20160301 03:19:02< vultraz> either way, sounds unnecessary 20160301 03:19:26< celticminstrel> Any opinion on recruitment_ignore_bad_{combat,movement}? 20160301 03:20:03< vultraz> could... be useful 20160301 03:20:15< vultraz> but not...really 20160301 03:20:20< vultraz> unless you wanted a stupid AI 20160301 03:21:11< celticminstrel> Well, sometimes you might want to dumb down the AI to make a scenario a little easier, but... I think in practice they were used for different reasons. 20160301 03:21:56< vultraz> then maybe replace them with ai_is_stupid = yes :P 20160301 03:22:03< celticminstrel> Ha ha. 20160301 03:22:04-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 03:26:21-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 248 seconds] 20160301 03:30:29< celticminstrel> Does anyone know what attack_depth was for? 20160301 03:30:36< fabi> yes 20160301 03:31:48< fabi> The number of units going for a single target. 20160301 03:31:56< fabi> iirc 20160301 03:32:08< fabi> has it been removed from the api? 20160301 03:34:10< celticminstrel> I think it's still there but does nothing. 20160301 03:35:08< celticminstrel> Although the concept of attack depth seems to exist in src/ai/testing/aspect_attacks.cpp. 20160301 03:35:18< celticminstrel> if(cur_analysis.movements.size() >= size_t(default_attack_depth)) 20160301 03:35:31< celticminstrel> (In do_attack_analysis) 20160301 03:35:41< celticminstrel> But it doesn't check the attack_depth aspect. 20160301 03:35:53< celticminstrel> (The next line is simply "return".) 20160301 03:36:41< fabi> https://wiki.wesnoth.org/AiWML 20160301 03:36:56< fabi> The text after "Removed AI Aspects" 20160301 03:36:57< celticminstrel> Yes, I have that open already. 20160301 03:38:06-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 03:38:07< travis-ci> wesnoth/wesnoth#8689 (master - cc87fcb : Charles Dang): The build is still failing. 20160301 03:38:07< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112758841 20160301 03:38:07-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 03:42:03-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 03:48:20< vultraz> blagh! 20160301 03:48:29< vultraz> the old 'crash if not enough space to place grid' 20160301 03:52:34< vultraz> celticminstrel: didn't you say that should not happen 20160301 03:52:40< vultraz> in general 20160301 03:53:08< celticminstrel> Not sure, did I say that? 20160301 03:53:14< celticminstrel> I'm not sure why I would say that. 20160301 03:53:36< vultraz> you said wesnoth shouldn't crash just because it doesn't have enough space for a dialog 20160301 03:53:37< celticminstrel> Unless I was stating something about how things should be (but aren't). 20160301 03:53:49< vultraz> yes 20160301 03:53:51< vultraz> that's what I mean 20160301 03:53:55< celticminstrel> I might have said that. 20160301 04:02:06-!- pydsigner [~pydsigner@unaffiliated/pydsigner] has quit [Ping timeout: 276 seconds] 20160301 04:02:25< vultraz> Still, not sure why that's happening... 20160301 04:02:45-!- travis-ci [~travis-ci@ec2-50-17-47-241.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 04:02:46< travis-ci> wesnoth/wesnoth#8690 (master - 0bcd768 : Charles Dang): The build is still failing. 20160301 04:02:46< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112762410 20160301 04:02:46-!- travis-ci [~travis-ci@ec2-50-17-47-241.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 04:02:47< vultraz> in the unit tests, that is 20160301 04:03:02< irker891> wesnoth: Charles Dang wesnoth:master 475b710f73ce / src/gui/widgets/grid.cpp: tgrid: don't assert when failing to place grid https://github.com/wesnoth/wesnoth/commit/475b710f73ce4b4a87a6805bdf94fc54b231fee3 20160301 04:05:09< vultraz> possibly something to do with moving the listbox headers out of the content grid 20160301 04:05:30< celticminstrel> What happens when you remove the assert? 20160301 04:05:47< vultraz> well it should just return 20160301 04:06:42< celticminstrel> Oh. 20160301 04:06:49< celticminstrel> I didn't look at the commit, sorry. 20160301 04:08:04< vultraz> travis was failing on a dialog we don't even use.. 20160301 04:13:46-!- pydsigner [~pydsigner@unaffiliated/pydsigner] has joined #wesnoth-dev 20160301 04:18:05< celticminstrel> Why are the source files for GUI1 preferences and GUI1 hotkeys not deleted? 20160301 04:18:27< vultraz> they still have some stuff in them 20160301 04:18:38< celticminstrel> That stuff could be moved. 20160301 04:18:42< vultraz> for hotkeys, the setter prompt is still gui1 20160301 04:18:51< celticminstrel> Oh, is it? 20160301 04:18:54< vultraz> yes 20160301 04:18:56< celticminstrel> I see. 20160301 04:33:26-!- ancestral_ [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 04:33:30-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has joined #wesnoth-dev 20160301 04:33:31< travis-ci> wesnoth/wesnoth#8691 (master - 475b710 : Charles Dang): The build was fixed. 20160301 04:33:31< travis-ci> Build details : https://travis-ci.org/wesnoth/wesnoth/builds/112769052 20160301 04:33:31-!- travis-ci [~travis-ci@ec2-54-147-13-163.compute-1.amazonaws.com] has left #wesnoth-dev [] 20160301 04:36:02-!- ancestral_ [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Client Quit] 20160301 04:42:21-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 04:56:09< vultraz> would be nice if I could figure out where this 'crash on placing units in the editor' crash came from beside unit_id >_> 20160301 05:01:04-!- fabi [~quassel@wesnoth/developer/fendrin] has quit [Quit: No Ping reply in 180 seconds.] 20160301 05:02:31-!- fabi [~quassel@176.7.89.11] has joined #wesnoth-dev 20160301 05:02:31-!- fabi [~quassel@176.7.89.11] has quit [Changing host] 20160301 05:02:31-!- fabi [~quassel@wesnoth/developer/fendrin] has joined #wesnoth-dev 20160301 05:04:21< vultraz> alright, this is the problem line 20160301 05:04:22< vultraz> unit new_unit(ut, disp.viewing_side(), true, gender); 20160301 05:04:24< vultraz> hmmmm 20160301 05:11:32-!- fendrin [~quassel@wesnoth/developer/fendrin] has joined #wesnoth-dev 20160301 05:13:25-!- fabi [~quassel@wesnoth/developer/fendrin] has quit [Read error: Connection reset by peer] 20160301 05:19:15-!- fendrin [~quassel@wesnoth/developer/fendrin] has quit [Quit: No Ping reply in 180 seconds.] 20160301 05:21:12-!- fabi [~quassel@wesnoth/developer/fendrin] has joined #wesnoth-dev 20160301 05:46:05< celticminstrel> Uhh. The gamestate inspecter is now broken. 20160301 05:46:10< celticminstrel> vultraz: ^ 20160301 05:46:16-!- shadowm [~ignacio@wesnoth/developer/shadowm] has joined #wesnoth-dev 20160301 05:48:10< celticminstrel> The top left listbox is missing. 20160301 05:55:58-!- iceiceice [~chris@wesnoth/developer/iceiceice] has joined #wesnoth-dev 20160301 05:56:34< Aginor> I should try to write an AI at some point 20160301 05:56:47< Aginor> it'd be fun to try to make it a proper learning one 20160301 05:57:06< celticminstrel> I think someone was trying that and gave up. 20160301 05:57:20< Aginor> wouldn't surprise me 20160301 05:57:58< Aginor> I've got a friend who's into game development and does machine learning, I'd try to lure him into being interested 20160301 06:01:14-!- Waste [~Cracker@blk-138-75-91.eastlink.ca] has quit [Quit: Leaving] 20160301 06:07:44< mattsc> Aginor: https://wiki.wesnoth.org/Machine_Learning_Recruiter 20160301 06:08:20< mattsc> and with that, good night 20160301 06:10:08-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: So long and thanks for all the fish.] 20160301 06:17:06< vultraz> celticminstrel: what O_O 20160301 06:21:06< vultraz> celticminstrel: what are you talking about 20160301 06:21:10< vultraz> it's right therer 20160301 06:21:30< vultraz> unless... 20160301 06:21:43< vultraz> celticminstrel: try reverting the commit that removes that assert and try again 20160301 06:22:22-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 06:25:32< shadowm> https://googleprojectzero.blogspot.com/2016/02/the-definitive-guide-on-win32-to-nt.html <- Fun stuff about how path parsing works in Windows under the hood (and the implications for people trying to sandbox the filesystem like us). 20160301 06:26:27< vultraz> ah, hello shadowm! 20160301 06:26:30-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 250 seconds] 20160301 06:26:40< vultraz> you have returned 20160301 06:26:45< vultraz> much has happened 20160301 06:27:39< shadowm> Tell me more. 20160301 06:28:54< wedge009> vultraz, gfgtdf: Looks like preferences are not being saved with the new menu. I have to work this evening, but will try to see what's been changed. 20160301 06:28:56< shadowm> https://dl.dropboxusercontent.com/u/21371130/Screenshots/zzzzz15.png 20160301 06:29:48< vultraz> wedge009: I hope it's a simple fix 20160301 06:30:02< shadowm> I can only guess what kind of ridiculous stuff is going on between Mingw coreutils and Windows when you pass a device path like that, that causes file attribtes to be completely wrong and random. 20160301 06:31:38< celticminstrel> vultraz: So does that mean you tried it and it works fine for you? 20160301 06:31:42< vultraz> celticminstrel: yes 20160301 06:31:47< celticminstrel> :| 20160301 06:32:11< celticminstrel> Well, I'm using 800x600, maybe that makes a difference. 20160301 06:32:33< vultraz> I'm using a maximized window 20160301 06:33:17< celticminstrel> My window in 1.12 is larger, but I figure I should keep it minimal sized for testing things. 20160301 06:33:42< vultraz> shadowm would approve :P 20160301 06:33:50< vultraz> I never do that because I'm a shitty UX designer 20160301 06:33:53< vultraz> well 20160301 06:33:55< celticminstrel> Reverting the commit produces an assert. 20160301 06:33:55< vultraz> tester 20160301 06:34:16< vultraz> celticminstrel: ok, so the inspector doesn't work on that resolution... 20160301 06:34:27< vultraz> celticminstrel: try removing the horizontal_scrollbar_mode = "never" keys 20160301 06:34:30< celticminstrel> It did until recently. 20160301 06:34:47< celticminstrel> When you first made it fullscreen, it was working at that resolution. 20160301 06:35:00< vultraz> hmmmmmm 20160301 06:35:16< vultraz> celticminstrel: then try to revert the listbox header hack 20160301 06:36:11< celticminstrel> Is there a vertical_scrollbar_mode too? 20160301 06:36:36< vultraz> yes 20160301 06:37:13< vultraz> shadowm: will you be available for release on friday 20160301 06:37:39< shadowm> Hard disk partitions register as character devices to Mingw for some reason: 20160301 06:37:44-!- iceiceice [~chris@wesnoth/developer/iceiceice] has left #wesnoth-dev ["Leaving"] 20160301 06:38:06< celticminstrel> Works now. 20160301 06:39:12< celticminstrel> What are the possible values for *_scrollbar_mode? 20160301 06:40:05< celticminstrel> In unrelated news, the Lua console actually seems to be useable now. 20160301 06:40:11< shadowm> https://dl.dropboxusercontent.com/u/21371130/Screenshots/zzzzz16.png 20160301 06:40:48< shadowm> ('c' is supposed to denote a character device, 'b' a block device, which is what you'd expect a storage medium partition to be on a POSIX system.) 20160301 06:42:45< celticminstrel> So, vultraz, it's fixed if I revert 475b710f - the listbox commit. The assert commit did not need to be reverted for it to work. 20160301 06:42:58< celticminstrel> What did the listbox commit do and why? 20160301 06:43:12< Aginor> if we're planning a release on friday we should probably put a freeze in place 20160301 06:43:20< Aginor> with only critical blockers being fixed 20160301 06:43:50< celticminstrel> Also, the gamestate inspector works better with vertical_scrollbar_mode=never, but I have a feeling that that wouldn't continue to be the case with more than 2 sides. 20160301 06:43:59-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 06:44:06< celticminstrel> What other values are allowed? 20160301 06:44:12< celticminstrel> Aginor: An excellent idea. 20160301 06:45:12< celticminstrel> Though the Lua console is useable, it's a bit weird that it has scrollbars. 20160301 06:46:31< vultraz> celticminstrel: shit :| 20160301 06:46:38< celticminstrel> ? 20160301 06:46:55< vultraz> that the revert fixes things 20160301 06:46:59< vultraz> that workaround is necessary 20160301 06:47:04< celticminstrel> Ah. 20160301 06:47:04 * vultraz fumes 20160301 06:47:09< vultraz> GAHHHHHHHHHHH 20160301 06:47:11< vultraz> :| 20160301 06:47:20< celticminstrel> Okay, so, before you fume too much, what are the other values for vertical_scrollbar_mode? 20160301 06:47:36-!- Kwandulin [~Miranda@p200300760F0BD4370CAF0BA7E05A6E4B.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160301 06:47:44< vultraz> always, never, and auto 20160301 06:48:01< celticminstrel> Hm, I was hoping it'd be a bit more helpful. 20160301 06:48:13< celticminstrel> I'll try a random map with max players. 20160301 06:48:32< shadowm> https://wiki.wesnoth.org/GUIWidgetInstanceWML#Listbox -> https://wiki.wesnoth.org/GUIVariable#scrollbar_mode 20160301 06:48:42< vultraz> Aginor: all blockers are fixed 20160301 06:49:24< Aginor> vultraz: testing and stability. do a freeze, do lots of testing, fix any blockers arising 20160301 06:49:31< vultraz> Aginor: it'd be nice if we could fix the bad backgrounds behind transient dialogs in come cases 20160301 06:50:03< celticminstrel> Yeah, okay, it looks bad now. 20160301 06:50:18< celticminstrel> Is there no way to force each listbox to take at most half the vertical space? 20160301 06:50:22< vultraz> no 20160301 06:50:34< vultraz> I've tried in the past 20160301 06:50:45< vultraz> and the layout fuckery is strong 20160301 06:51:37< celticminstrel> I think I see why the Lua console has the terrible scrollbars - line 78. 20160301 06:51:44< shadowm> ancestral: Have you seen this? https://forums.wesnoth.org/viewtopic.php?f=4&t=43851 20160301 06:53:20< ancestral> Hmm 20160301 06:53:37< celticminstrel> "In order to force widgets to be the same size inside a listbox, the widgets need to be inside a linked_group." 20160301 06:54:11< shadowm> Obviously in the first log Wesnoth is trying to run wesnothd from a path that doesn't exist, but the second shouldn't happen unless wesnothd was built for the wrong architecture. 20160301 06:54:40< shadowm> (e.g. x86_64 on x86) 20160301 06:54:55< shadowm> Or with an incompatible -march/-mtune option. 20160301 06:57:45< celticminstrel> vultraz: Why is the listbox workaround necessary? 20160301 06:58:15< vultraz> celticminstrel: because shadowm is absolutely adamant that we can't keep the 'listbox headers get scrolled with the list' behavior 20160301 06:58:45< shadowm> Yep, that's definitely something I came up with and not a established industry standard. 20160301 06:58:45< celticminstrel> Well, obviously we can't do that. 20160301 06:59:23< vultraz> right 20160301 06:59:30< vultraz> this is a workaround that works in 95% of the cases 20160301 06:59:33< vultraz> obviously, not all of them 20160301 06:59:37< vultraz> :| 20160301 06:59:59< celticminstrel> vultraz: I added grow_factor=1 to both of the rows containing listboxes in the inspector. It seems to work better. 20160301 07:00:39< vultraz> celticminstrel: does it still not show up? 20160301 07:01:01< celticminstrel> Give me a minute, I'll try reverting the revert and see if it changes anything. 20160301 07:01:20< Aginor> vultraz: do yuo have an example? 20160301 07:02:14< vultraz> Aginor: https://www.dropbox.com/s/4m2kbporr1viez7/badtraisientdialog.PNG?dl=0 20160301 07:03:17< Aginor> vultraz: is it only like that over GUI2 elements? 20160301 07:03:38< vultraz> as far as I can tell 20160301 07:03:38< ancestral> shadowm: It’s possible it’s not 32-bit 20160301 07:03:41< celticminstrel> Okay so, I reverted the revert and now "team 2" is missing. :| 20160301 07:03:51< vultraz> there's also this bug https://gna.org/bugs/?24478 20160301 07:03:53< ancestral> I’m not sure otehrwise 20160301 07:03:56< vultraz> possibly similar 20160301 07:04:00< ancestral> *otherwise 20160301 07:04:01< celticminstrel> ie, there should be a scrollbar, but it's not shown. 20160301 07:04:56< celticminstrel> More importantly though, the listbox is there - just not showing its scrollbar when it's 1 item overflowing. 20160301 07:05:42< Aginor> vultraz: please don't just assign bugs to me without talking to me first, if you keep doing that I'll just assign them back to you. 20160301 07:06:07< vultraz> I assigned that to you? 20160301 07:06:09< vultraz> Oh right 20160301 07:06:11< vultraz> I did.. 20160301 07:06:24< celticminstrel> Okay, I think when it's deciding whether to show a scrollbar, it uses one less than its actual number of elements. 20160301 07:06:31< celticminstrel> vultraz: ^ 20160301 07:06:45< vultraz> fun! 20160301 07:07:11< ancestral> :wesnoth 1.13 martinproud$ file /Volumes/Wesnoth\ 1.12.5/Wesnoth.app/Contents/MacOS/wesnothd 20160301 07:07:18< celticminstrel> Add grow_factor=1 at lines 80 and 144, and fix that issue, and the listbox header commit can stay without breaking the inspector. 20160301 07:07:34< ancestral> /Volumes/Wesnoth 1.12.5/Wesnoth.app/Contents/MacOS/wesnothd: Mach-O executable i386 20160301 07:07:40< celticminstrel> Or as a temporary workaround you could add vertical_scrollbar_mode=always to both listboxes, I suppose. 20160301 07:07:45< ancestral> i386 means it’s 32-bit 20160301 07:10:13< celticminstrel> vultraz: 'git grep -l listbox data/gui/default/window' produces 23 files - it shouldn't be too hard to verify none of them are broken, right? And you can probably skip the addon and lobby ones since they're not actually used. 20160301 07:10:25< vultraz> I hate the listbox widget 20160301 07:10:50< vultraz> celticminstrel: well, at least one is.. 20160301 07:10:56< vultraz> that's what caused that error in travis 20160301 07:10:59< vultraz> data_manage 20160301 07:11:04< vultraz> a dialog that isn't even used 20160301 07:11:06< vultraz> >_> 20160301 07:11:15< celticminstrel> I have no idea what that is. 20160301 07:11:22< vultraz> because it's nowhere 20160301 07:11:44< celticminstrel> It's actually nowhere? As opposed to somewhere that no-one ever goes? 20160301 07:11:47< shadowm> ancestral: Assuming you've not instructed the compiler to use/optimize for a specific microarchitecture (e.g. Ivy Bridge vs. the original Intel 80386), no clue then. 20160301 07:11:55< vultraz> actually nowhere 20160301 07:12:02< celticminstrel> Huh. 20160301 07:12:29< shadowm> ancestral: Maybe tell them to try reinstalling/redownloading in case the executable got corrupted somehow. 20160301 07:12:37< ancestral> shadowm: The way the person words it makes me wonder how s/he started wesnothd 20160301 07:13:06< ancestral> And I’m curious, maybe the path got changed to it for some reason? 20160301 07:13:18< shadowm> wesnothd; exit; 20160301 07:13:21< ancestral> Maybe the first line isn’t a false negative 20160301 07:13:22< vultraz> also, it's not simple to fix the issue you described 20160301 07:13:42< celticminstrel> Then, use the temporary workaround of vertical_scrollbar_mode=always. 20160301 07:14:03< shadowm> That's shell for "run wesnothd from PATH and then exit this shell". 20160301 07:14:10< vultraz> I'd have to delve into the fun interior of the scrollbar container 20160301 07:14:20< celticminstrel> Though... I should actually try that and see if it really works as I'd hope... 20160301 07:14:28< vultraz> I have no idea what mordante was thinking when he designed that 20160301 07:14:36< shadowm> I don't know if that's literally what they typed or whether OS X includes . in PATH explicitly or implicitly (like Windows). 20160301 07:14:49< vultraz> celticminstrel: try "auto" 20160301 07:14:53< Aginor> shadowm: it doesn't 20160301 07:14:56< celticminstrel> I thought that was the default. 20160301 07:15:02< vultraz> er.. 20160301 07:15:04< Aginor> shadowm: in the shell OS X is just like any other *NIX 20160301 07:15:07< vultraz> hm 20160301 07:15:07< vultraz> then try Initial_auto 20160301 07:15:16< celticminstrel> I'll try both! 20160301 07:15:21< vultraz> :D 20160301 07:15:53< ancestral> Okay, I can run it fine here 20160301 07:15:59< ancestral> (No surprise) 20160301 07:16:20< celticminstrel> Works fine with "always". 20160301 07:17:15-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 07:18:14< celticminstrel> Works fine with "auto", too. 20160301 07:19:09< celticminstrel> Doesn't work with "initial_auto", so that must've been the default. 20160301 07:19:12< vultraz> ok 20160301 07:19:16< vultraz> use auto 20160301 07:19:54 * Aginor swears at the undraw-code 20160301 07:20:02< celticminstrel> That'll cause it to usually have scrollbars. 20160301 07:20:23< Aginor> people have been hijacking it in too many places too. 20160301 07:20:26< celticminstrel> But I guess if you were to fix whatever causes initial_auto to fail, then maybe auto would use the scrollbars less. 20160301 07:20:40< celticminstrel> Oh. 20160301 07:20:51-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 07:21:12< vultraz> Aginor: what do you mean? 20160301 07:22:04< Aginor> vultraz: the transparent background on transient messages is done by hooking into the undrawing-pattern 20160301 07:22:32< vultraz> Aginor: not by drawing an semi-transparent texture? 20160301 07:22:35< Aginor> so when I disabled the undrawing in dialogs I also broke the transparent background 20160301 07:22:59< Aginor> because it never takes a copy of the screen surface to any longer 20160301 07:23:13< vultraz> :( 20160301 07:23:14< irker891> wesnoth: Celtic Minstrel wesnoth:master a72afff440ef / data/gui/default/window/gamestate_inspector.cfg: Fix gamestate inspector dialog https://github.com/wesnoth/wesnoth/commit/a72afff440efc50f703fe1b3a02fb0492146894c 20160301 07:23:25< shadowm> Anyone here familiarized with tmux? 20160301 07:23:45< shadowm> Oh never mind, just figured out my problem. 20160301 07:24:51< vultraz> shadowm: BTW, do you approve of my fix for the truncated savegame names? 20160301 07:25:07< shadowm> I've not seen or heard of it. 20160301 07:25:20< shadowm> Although let me say that the "fix" is to not truncate them in the first place. 20160301 07:25:28< vultraz> yes 20160301 07:25:29< vultraz> I did that 20160301 07:25:47< vultraz> and instead imposed a 127 character maximum input length for the save game text box 20160301 07:29:31< shadowm> That's a sane number. I assume you also took care of preventing the Load Game dialog from being stupid and trying to display the full file names above a certain length. 20160301 07:29:42< vultraz> I'm trying 20160301 07:30:02< vultraz> I think I just remembered the solution 20160301 07:30:03< shadowm> (It's a sane number because full paths in Windows can't be more than 260 characters long unless you do something special and non-obvious.) 20160301 07:30:17< vultraz> It's also the sane number you suggested in the bug report 20160301 07:30:30< ancestral> 260? More than 2^8? 20160301 07:30:38< ancestral> Curious 20160301 07:30:41< vultraz> 127 20160301 07:32:10< shadowm> ancestral: Drive letter, colon, root delimiter, and null character. 20160301 07:33:03< shadowm> The limit for fully-qualified paths (which you normally won't see in the wild) is 32767 characters. 20160301 07:33:08< celticminstrel> Why does the null character count as part of the length... 20160301 07:33:52< ancestral> Office has all sorts of weird full path length issues on the Mac. Not sure why. 20160301 07:34:00< shadowm> celticminstrel: Then it's 259 if it bothers you that much. 20160301 07:41:39-!- ancestral_ [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 07:41:59-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: Smell ya later] 20160301 07:42:31-!- ancestral_ is now known as ancestral 20160301 07:42:49-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Client Quit] 20160301 07:43:09-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 07:46:04-!- celticminstrel is now known as celmin|sleep 20160301 07:52:23-!- boucman_work [~jrosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20160301 08:01:05< shadowm> elias: https://forums.wesnoth.org/viewtopic.php?p=594435#p594435 20160301 08:02:09-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: Mutter: www.mutterirc.com] 20160301 08:02:10< shadowm> elias: Also, what I told you about wesnoth_addon_manager (which might in fact be the cause of this as well?) 20160301 08:02:34-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 08:03:01< shadowm> Oh who am I kidding, I'm going to have to look into this myself anyway. 20160301 08:05:01< shadowm> !math 1138939/1024/1024 20160301 08:05:02< shikadibot> shadowm: 1.086176872253 20160301 08:06:14< Aginor> oh :D 20160301 08:06:22< Aginor> !math 0.3 - 0.2 20160301 08:06:22< shikadibot> Aginor: .1 20160301 08:06:26< Aginor> oh :/ 20160301 08:06:30< Aginor> too much rounding 20160301 08:06:43< shadowm> Huh? That looks correct to me. 20160301 08:07:08< Aginor> it's a rounded result though 20160301 08:07:24< shadowm> It's 0.1 in that silly format some people use. 20160301 08:07:34< shadowm> !math 1.3 - 1.2 20160301 08:07:34< shikadibot> shadowm: .1 20160301 08:07:41< shadowm> !math 2.3 - 1.2 20160301 08:07:41< shikadibot> shadowm: 1.1 20160301 08:08:41< Aginor> shadowm: try this: int main() { while (0.3 - 0.2 != 0.1) { } } 20160301 08:08:47< Aginor> compile without optimisation 20160301 08:08:59< Aginor> tell me when the program finishes :D 20160301 08:09:39< shadowm> Yeah, I've had that kind of thing happen to me in the past. 20160301 08:09:58< shadowm> It didn't do much to encourage me to get over my allergy to maths. 20160301 08:10:00< Aginor> good lesson in floating point arithmetics 20160301 08:11:37< shadowm> Bleh, it doesn't look like the WAM infinite recursion bug is a regression (or at least it's not from around the time the trigger popped up). 20160301 08:17:18< shadowm> Oh gods what. 20160301 08:17:57< shadowm> It's choking on WML-encoded JSON. 20160301 08:24:38< shadowm> Ugh, Internet, don't fail me now, I need a JSON formatter. 20160301 08:25:12< shadowm> Well, trying to select that made my text editor go comatose. 20160301 08:26:34-!- aeonchild [enchilado@defocus/yummy/enchilado] has quit [Quit: Lost terminal] 20160301 08:26:44-!- aeonchild [enchilado@defocus/yummy/enchilado] has joined #wesnoth-dev 20160301 08:34:55-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20160301 08:35:01-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-dev 20160301 08:37:05< shadowm> Actually, maybe it's not because the logic is wrong. 20160301 08:38:15< shadowm> Maybe it's precisely because the logic is right. 20160301 08:38:41-!- Kwandulin [~Miranda@p200300760F0BD4370CAF0BA7E05A6E4B.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20160301 08:39:03< shadowm> It's just that it assumes that Python can recurse as many times as necessary. 20160301 08:44:01-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20160301 08:45:13< shadowm> Yep, prettifying all the JSON so it's not a single-line sludge in each file prevents WAM from exploding, so it's not that the quote unescaping logic is bugged. 20160301 08:45:34< shadowm> It just pushes Python to its limits with sufficiently complex input. 20160301 08:46:38< zookeeper> celmin|sleep, recruitment_ignore_bad_{combat,movement} is mainly used to make sure the enemy recruits in a varied manner, because it's boring to only fight 1-2 types. 20160301 08:47:15< shadowm> So I guess I can increase Python's maximum recursion depth as a workaround and hope we don't start getting website VM processes killed as a result. 20160301 08:47:22< shadowm> Sigh. 20160301 08:47:33< zookeeper> celmin|sleep, it's _not_ (mainly, anyway) used to make the AI recruit _better_ 20160301 08:47:59 * shadowm throws the squeaky mallet in elias' general direction. 20160301 08:48:13< shadowm> Actually, did you write this... 20160301 08:49:19-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 08:49:54< shadowm> Too many people involved prior to the file rename where it became Python 3 code, so maybe not. 20160301 08:50:35< shadowm> I wonder if it's possible to have Python SIGSTOP itself or something when bailing so I can at least look at the resulting RSS. 20160301 08:51:02< shadowm> I'd rather have add-ons.w.o and units.w.o broken forever than risk DoSing ourselves with this. 20160301 08:53:03< ancestral> Is Balrog the server that does CI. 20160301 08:53:05< ancestral> . 20160301 08:53:19< ancestral> Is that a different server than the web server? 20160301 08:53:25< shadowm> Who is Balrog? 20160301 08:53:36< ancestral> A name of a server 20160301 08:53:43< shadowm> Maybe you mean baldras (lowercase because it's a hostname from this millenium). 20160301 08:53:56< ancestral> Perhaps 20160301 08:53:57-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 276 seconds] 20160301 08:54:30< ancestral> Sounded too similar to https://en.m.wikipedia.org/wiki/Balrog 20160301 08:54:36< ancestral> to me anyway 20160301 08:54:40< shadowm> We normally do CI building and testing with Travis externally, but there's also a Jenkins instance running on baldras that's managed by loonycyborg. 20160301 08:55:00< shadowm> Baldras is the protagonist of the Liberty campaign. 20160301 08:55:19< ancestral> shadowm: The web server does the addons and units processing? 20160301 08:55:23< loonycyborg> Isn't Balrog deamon from lotr? :P 20160301 08:55:54< shadowm> baldras is our current magic do-everything server, yes, replacing our previous server, asheviere. 20160301 08:55:56< loonycyborg> While Baldras is merely a rebellious villager 20160301 08:56:06< ancestral> loonycyborg: I believe so 20160301 08:56:38< ancestral> So baldras does the addons and units? 20160301 08:56:58< shadowm> And by do-everything I mean it literally does everything that's associated with the wesnoth.org domain, save a few exceptions (the alternate MP servers, server2 and server3). 20160301 08:57:16< shadowm> It even does DNS! In a way. Sort of. 20160301 08:57:35< ancestral> Wouldn't it make sense to have a separate web server from 20160301 08:57:42< ancestral> I don't know, everything else? 20160301 08:58:07< shadowm> Whatever you say makes sense, trust me. It's just that we are a silly bunch and can't team up to do anything better together. 20160301 08:58:19< shadowm> (This extends to backups, but don't tell anyone I said that.) 20160301 08:58:47< ancestral> If you're worried about DoSinf 20160301 08:58:53< ancestral> DoSing 20160301 08:59:09< shadowm> OTOH it's not possible for the web infrastructure to DoS the database server or wesnothd on server.wesnoth.org or the campaignd instances, because they are all containerized using a VM-like mechanism. 20160301 08:59:32< shadowm> But the metal it all runs on is still a massive single point of failure. 20160301 08:59:53< loonycyborg> Also connection from that metal to rest of the net 20160301 09:00:12< loonycyborg> can be taken out with a good DDoS 20160301 09:00:16< loonycyborg> on the other hand 20160301 09:00:27< loonycyborg> pretty much anything can be taken down with good DDoS 20160301 09:00:28< shadowm> The VM that generates units.wesnoth.org DoSes itself all the time when it gets to work each Thursday and Friday night. 20160301 09:00:31< ancestral> Maybe this is too hypothetical but 20160301 09:00:47< shadowm> It's very annoying but it doesn't cause harm beyond knocking out my shell sessions. 20160301 09:00:57< ancestral> If Wesnoth gets on Steam… 20160301 09:01:06< shadowm> That has to run wesnoth_addon_manager, the script that's causing me a headache right now. 20160301 09:01:09< shadowm> BUT. 20160301 09:01:18< shadowm> The website container also runs wesnoth_addon_manager for a different purpose. 20160301 09:01:31< ancestral> Servers are going to have a heavier load. Maybe 20160301 09:01:57< shadowm> I don't remember why, I only remember I tried to delegate that responsibility to the campaignd container before going live and had to revert that for some reason. 20160301 09:03:02< shadowm> Doing so won't do anything to solve my dilemma now, though. 20160301 09:04:12< shadowm> Oh man it's worse than I thought for sure. 20160301 09:05:49< shadowm> But still below the 100 MiB mark, so... 20160301 09:09:46< shadowm> Well, a recursion limit of 10,000 doesn't solve the problem. 20160301 09:10:06< shadowm> elias: I give up. You need to make wmlparser3 non-recursive. 20160301 09:10:48< shadowm> Uh, okay, actually, it seems to be still limited to 1,000 for some reason. 20160301 09:11:31< shadowm> Maybe that's Python's way of telling me that what I'm trying to do is ridiculous and crazy and I shouldn't be doing it. 20160301 09:12:26< shadowm> I'll file a proper bug report later if I can manage to produce a more isolated test case that doesn't involve downloading an add-on over and over. 20160301 09:14:22< zookeeper> vultraz, Aginor, so i do actually think that since we don't have a magic bullet to solve the water performance issue with, it would be appropriate to have a toggle for the animatedness in the display options, in addition to the animate map option. 20160301 09:14:37< shadowm> I probably should've checked the offending file's bytecount before trying to guess a random recursion limit. 20160301 09:14:48< zookeeper> it's not like there's anything unusual for a game to have a switch like that for particularly intensive graphical features. 20160301 09:15:03< shadowm> 66657 bytes in a single line. 20160301 09:15:34< shadowm> Looking at the parser code, that means at least 66657 recursion levels. 20160301 09:16:06< shadowm> Or maybe that's the average-worst case? It really depends on the number of quotes present in the line. 20160301 09:17:17-!- danni [~quassel@203-206-161-81.perm.iinet.net.au] has joined #wesnoth-dev 20160301 09:19:02< shadowm> It has 5310 quotes, so that's approximately 5310 recursion levels. 20160301 09:19:28-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Remote host closed the connection] 20160301 09:19:29< shadowm> Oh wait, we need to double that when WML quote escaping gets involved. 20160301 09:20:06< shadowm> Is it 2n quotes or n^2 quotes? Not sure. 20160301 09:20:30< shadowm> It's a much bigger number regardless so I'm abandoning the recursion limit increase plan. 20160301 09:21:25< shadowm> I guess I should thank mattsc for unwittingly creating the most interesting test case for our WML tools yet. 20160301 09:23:16< shadowm> zookeeper: I agree. Feel free to add the switch! 20160301 09:23:43< vultraz> zookeeper: we certainly have the space, now :P 20160301 09:23:47< shadowm> (And have fun figuring out how to make the special case needed for this in the terrain graphics WML syntax.) 20160301 09:23:57< zookeeper> shadowm, oh that shouldn't be hard. 20160301 09:24:05< vultraz> shadowm: you still haven't said if you're free on friday 20160301 09:27:03< irker891> wesnoth: ln-zookeeper wesnoth:master 1a70c37a468e / src/game_events/action_wml.cpp: Made "unit placed" events respect [unstore_unit] fire_event= https://github.com/wesnoth/wesnoth/commit/1a70c37a468ee3b617f82f63df3f3674b1e52975 20160301 09:27:03< shadowm> I thought it was already scheduled. 20160301 09:27:52< vultraz> It is 20160301 09:28:02< shadowm> In that case why are you asking me? 20160301 09:28:03< vultraz> But if you're not free I have to do it 20160301 09:28:12< shadowm> Then do it. 20160301 09:28:40< vultraz> If you are free I can rest easy knowing I don't have another important thing that has to be dealt with 20160301 09:29:31< shadowm> I did not schedule this, so it's not my responsibility. 20160301 09:29:54< vultraz> So you won't do it? 20160301 09:31:12< shadowm> I'm going to be sincere with you: I no longer have the motivation to keep working on Wesnoth (especially not when people are going to make irreversible decisions on my behalf in my absence anyway). 20160301 09:31:49< shadowm> Furthermore, I cannot guarantee that I will be in physical condition to keep the release process going even days from now. 20160301 09:32:09< shadowm> I hinted at this back in January but nobody really seemed to pay attention. 20160301 09:32:16< vultraz> Alright 20160301 09:32:22< vultraz> I'll take over release duties then 20160301 09:32:26< shadowm> If you want to take over then that's fine with me and I updated the wiki guide in advance back then. 20160301 09:32:43< zookeeper> :| 20160301 09:33:23< shadowm> If you want to hand the release process back to Ivanovic that's also fine with me and I can give him a summary of the changes since he last did this so that he doesn't have to read the whole page over. 20160301 09:33:31< shadowm> But for you, this is your homework: https://wiki.wesnoth.org/ReleasingWesnoth 20160301 09:33:46< shadowm> I will be around to answer all your questions. 20160301 09:34:04< shadowm> Some of which I probably don't have the answer to. 20160301 09:34:26< shadowm> (e.g. "how do i do this on windows" automatically gets a "no idea" in response.) 20160301 09:35:25< vultraz> I will be frank. I don't know how long I can do this 20160301 09:35:46< vultraz> On top of the million other things I'm doing. 20160301 09:35:53< vultraz> But I don't know of anyone else who could 20160301 09:37:53< loonycyborg> what scheduling decision you're talking about? 20160301 09:38:51< shadowm> Oh and vultraz. 20160301 09:39:14< shadowm> You are supposed to practice doing it, in advance. Don't wait until the last minute and hope you will get everything in order then. 20160301 09:39:58< celmin|sleep> zookeeper: So, considering that it no longer does anything... is it actually still needed? 20160301 09:40:34< celmin|sleep> ie, are the scenarios using it currently sufficiently varied in their recruiting? 20160301 09:40:56< zookeeper> celmin|sleep, i don't know. when was it that it stopped working? 20160301 09:41:31< celmin|sleep> I'm not sure... 20160301 09:43:51-!- zombah [~zombah@2a02:28:3:1:214:4fff:fe47:5920] has joined #wesnoth-dev 20160301 09:44:10< celmin|sleep> I suspect it's already not working in 1.12? Perhaps mattsc would know. 20160301 09:45:42< zookeeper> if it's not worked in 1.12 then i wouldn't worry about it. if it's just in 1.13 then one would need to take a look at a few of those scenarios and see if the enemy recruits in a too monotonous way. 20160301 09:49:57< celmin|sleep> 'kay 20160301 09:50:01 * celmin|sleep goes back to bed. 20160301 10:05:21< loonycyborg> I could do release management too. I can easily handle all technical aspects. Though writing announcements/sifting though changelogs would be hard task for me.. 20160301 10:17:15< zookeeper> well, those are luckily pretty separate tasks and can be done by different people, at least as long as the writing people do what they're supposed to in time 20160301 10:27:11< loonycyborg> true 20160301 10:28:47< Aginor> this isn't a great week for me, but let's make it a team effort 20160301 10:29:02< Aginor> I'll try to chip in too 20160301 10:29:10< Aginor> do we have a list of tasks that need to be done? 20160301 10:33:52 * Aginor goes to bed 20160301 10:36:06< loonycyborg> Aginor: you mean tasks wrt release? They're listed in ReleasingWesnoth wikipage 20160301 10:39:22< loonycyborg> shadowm: I could merge commands to make/upload tarball and checksums into my existing upload_wesnoth script. But I would want to change to scons :P 20160301 10:46:53< vultraz> loonycyborg: I can write the announcements 20160301 10:47:01< vultraz> in fact it's my job as Community Manager to do so 20160301 10:48:23< loonycyborg> ok, I can handle the technical part then 20160301 10:59:15< irker891> wesnoth: Charles Dang wesnoth:master 6ae882838be1 / src/gui/dialogs/game_load.cpp: tgame_load: manually truncate displayed name if too long https://github.com/wesnoth/wesnoth/commit/6ae882838be16f8e1ab91e89a5322ad209944a0e 20160301 11:16:09-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 11:20:51-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 276 seconds] 20160301 12:00:13< wedge009> vultraz: I'm not going to do too much more tonight because I've effectively been staring at the screen for 16 hours today. But I notice that in your commit 05b0d478ee9a156307a2c3a1dfad165154a9ff4c, Cleaned out old GUI1 hotkeys dialog implementation, you removed the only instances of preferences::save_hotkeys(). 20160301 12:01:02< wedge009> vultraz: As a result save_hotkeys() never gets called any more and so hot-keys remains at default settings (if you've already wiped them all out with the reset button). 20160301 12:01:53< vultraz> ahh 20160301 12:06:02< vultraz> ok I think I know the fix then 20160301 12:06:04< vultraz> thanks 20160301 12:12:26-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 12:22:07< zookeeper> nooooooo 20160301 12:22:30< zookeeper> again i missed "build" and misclicked on "rebuild" instead -.- 20160301 12:23:02< zookeeper> seems irreversible, too 20160301 12:34:49< vultraz> :D 20160301 12:38:38< irker891> wesnoth: Charles Dang wesnoth:master 3d3541cd0dbc / src/gui/dialogs/preferences_dialog.cpp: tpreferences: fixed hotkeys not being saved across game sessions https://github.com/wesnoth/wesnoth/commit/3d3541cd0dbce6ec1cd57567d638e78b802aebab 20160301 12:38:40< vultraz> wedge009: ^ 20160301 12:38:44< vultraz> thanks :) 20160301 12:51:15-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 12:51:27-!- wedge010 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has joined #wesnoth-dev 20160301 12:54:30< wedge010> Stupid momentary disconnects. 20160301 12:54:42-!- wedge009 [~Thunderbi@60-241-236-92.static.tpgi.com.au] has quit [Ping timeout: 246 seconds] 20160301 12:54:42-!- wedge010 is now known as wedge009 20160301 12:54:48< wedge009> vultraz: Yep, that seemed to do the trick. 20160301 12:55:38< vultraz> It's nice when things can be fixed that simply 20160301 13:38:56-!- mjs-de [~mjs-de@x4db64805.dyn.telefonica.de] has joined #wesnoth-dev 20160301 13:39:30-!- celmin|sleep is now known as celticminstrel 20160301 13:44:49< zookeeper> adding an "animate water" option was indeed pretty easy. 20160301 13:48:00< zookeeper> well, mostly anyway. i still have to waffle with what the right place and way is for it to do its thing in terrain_builder, but... 20160301 14:03:49-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160301 14:04:26< vultraz> zookeeper: will this be separate from Animate map? 20160301 14:04:26-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Read error: Connection reset by peer] 20160301 14:04:38< vultraz> zookeeper: or will Animate Map be the toggle that enables a bunch of options 20160301 14:04:40< zookeeper> yes 20160301 14:04:41< vultraz> such as Animate Water 20160301 14:04:45< vultraz> etc 20160301 14:05:00< vultraz> so if animate map is off, all those options are disabled and unchecked 20160301 14:05:06< vultraz> but enabled if they're on a 20160301 14:05:07< vultraz> nd 20160301 14:05:13< zookeeper> of and of course i didn't yet figure out how to make toggling animate map off disable animate water 20160301 14:05:13< vultraz> you can choose which ones you want 20160301 14:05:34< vultraz> in the gui? 20160301 14:05:36< zookeeper> there's no need for more options, yet anyway. 20160301 14:05:40< zookeeper> yes, obviously 20160301 14:05:43 * zookeeper is afk 20160301 14:05:49< vultraz> it's easy 20160301 14:06:37< vultraz> just set the button.set_value() and set_active() functions 20160301 14:07:06-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160301 14:13:18-!- zombah [~zombah@2a02:28:3:1:214:4fff:fe47:5920] has quit [Quit: Leaving] 20160301 14:16:44< mattsc> zookeeper, celticminstrel: what might I know? 20160301 14:17:03< celticminstrel> When recruitment_ignore_bad_{combat,movement} stopped doing anything. 20160301 14:21:48< mattsc> It’s been a while in the RCA, certainly not only in 1.12; but they might actually still work with the old recruiting CA/stage/aspect,I don’t know for sure. 20160301 14:22:16< mattsc> In any case, I don’t think many tears will be cried after them if they go. 20160301 14:22:30< celticminstrel> I think the old recruit aspect is also unused, so you'd have to explicitly use the recruitment stage to get that. 20160301 14:22:43< celticminstrel> Or, I suppose, replace the new recruit CA with the old one... 20160301 14:23:11< celticminstrel> Anyway, I went ahead and removed all three of those plus number_of_whatever_blah_blah_to_force_recruit 20160301 14:23:38< vultraz> celticminstrel: are strongly types enums better than plain enums? 20160301 14:23:41< celticminstrel> But I just wanted to verify whether scenarios would need any updating. 20160301 14:23:44< celticminstrel> vultraz: Hmm? 20160301 14:24:02< vultraz> 'enum class foo {}' vs 'enum foo {}' 20160301 14:24:06< celticminstrel> Oh that. 20160301 14:24:32< celticminstrel> "enum class" doesn't inject its constants into the global scope. I think that's the only difference. 20160301 14:24:41< mattsc> celticminstrel: they’re probaby all over the place (those aspects), but as long as the AI doesn’t crash by them being there, there shouldn’t be a problem. 20160301 14:24:57< celticminstrel> So, if you have "enum class foo {bar};" you need to refer to foo::bar. 20160301 14:25:24< celticminstrel> mattsc: Do you mean as long as it doesn't crash by them not being there? Or are you saying there's no point in removing them? 20160301 14:25:28< celticminstrel> Oh, wait. 20160301 14:25:56< celticminstrel> I did go ahead and remove them all from the scenarios, but the AI would merely print an error to the log (invisible to the user) if I hadn't done so. 20160301 14:26:13< celticminstrel> I actually got that with "recruitment" since I forgot to remove the default setting for it. 20160301 14:26:16< mattsc> I mean: as long as them being in the WML code, but not in C++ any more doesn’t cause trouble. 20160301 14:26:27< celticminstrel> Right. It won't cause trouble. 20160301 14:26:48< mattsc> I am sure that they are in a lot of UMC scenarios, as UMC authors often just copy what used to be in mainline; esp. for the AI, which few people actually understand 20160301 14:26:55< celticminstrel> Heh. 20160301 14:27:16< celticminstrel> I dunno if it would've crashed in master, but it doesn't crash on my branch. 20160301 14:27:34< mattsc> ok, good then 20160301 14:28:27< mattsc> Lots of the AI aspects are quite subtle anyway, which is why people often claim that they are not doing anything 20160301 14:28:37< celticminstrel> I'm kind of wondering if Lua aspects really work. Given that the default aspects are injected into every config, it might be that that would override any Lua aspect you attempt to add. 20160301 14:28:49< mattsc> or, don’t know that they aren’t doing anything because they added them incorrectly 20160301 14:29:04< celticminstrel> I'm also wondering if you could define Lua facets with the same syntax. 20160301 14:29:08 * celticminstrel intends to try that later. 20160301 14:29:25< mattsc> I’m pretty sure I have tested that Lua aspects show up in the ‘AI overview’ page in the inspector correctly 20160301 14:29:31< celticminstrel> Okay. 20160301 14:29:51< celticminstrel> I also sort of wonder if you can have an [aspect] (non-Lua) that has value= or [value] instead of having facets. 20160301 14:29:58< celticminstrel> Though there'd really be no point in doing so. 20160301 14:29:58< mattsc> But I have not tried using them back and forth with WML aspects; as I said, I do not use aspects a lot in general 20160301 14:30:18< celticminstrel> There are, basically, three kinds of aspects, as I understand it. 20160301 14:30:41< celticminstrel> "Standard aspects" generally contain value= or [value], or in the case of the attacks aspect, a pair of filters. 20160301 14:31:23< celticminstrel> "Composite aspects" contain a sequence of [facet]s, each of which is a standard aspect (though, I wonder, could you nest composite aspects...?). 20160301 14:31:33< celticminstrel> And "Lua aspects" contain Lua code. 20160301 14:32:38< celticminstrel> I've been thinking about the whole location_set thing. The C++ engine has no knowledge of it, which I think is a little unfortunate. 20160301 14:32:49< celticminstrel> ^I've also 20160301 14:36:45< mattsc> celticminstrel: ok (I have no comments on this) 20160301 14:41:27< celticminstrel> It'd be nice to have some AI unit tests. 20160301 14:41:36< celticminstrel> I might write a few. 20160301 14:42:10< mattsc> no complaints from my side if you do 20160301 14:43:27< celticminstrel> I'm a little worried that I may have broken the experimental AI somehow, too. Though I did get it to run without raising Lua errors, when it did so the AI didn't recruit at all, just moved its leader to a village. (I didn't play any further though, so maybe that was just a weird fluke.) 20160301 14:46:08< mattsc> That would be … unfortunate. 20160301 14:48:30< mattsc> celticminstrel: the last section at Lua_AI is ready now. 20160301 14:48:37< mattsc> One section to go … 20160301 14:48:38< celticminstrel> Okay. 20160301 14:48:43< mattsc> (on a different page) 20160301 14:49:43< mattsc> celticminstrel: I pretty much just kept that section as nephro had written it, but with some (well, a lot) of cleanup. 20160301 14:49:50< celticminstrel> If I did break the experimental AI, I don't think it should be hard to fix. 20160301 14:49:57< mattsc> I have other testing mechanism, so I don’t use that method very much. 20160301 14:50:13< mattsc> okay — on the ExpAI 20160301 14:50:52< celticminstrel> Basically, I changed how data is passed to AI code. 20160301 14:51:23< mattsc> celticminstrel: did you change the structure/syntax too, or just the internal mechanism? 20160301 14:52:41< celticminstrel> Well, previously all AI code was simply passed the result of evaluating the engine code, and that's it. 20160301 14:53:01< celticminstrel> Plus the [state] as a second parameter, though I guess no-one ever used that. 20160301 14:53:18< vultraz> are you guys actually cleaning up the AI code or just drafting standards 20160301 14:53:30< celticminstrel> For external CAs, the "self" argument was the result of evaluating the engine code. 20160301 14:54:45< celticminstrel> I'm no longer passing the ai table to the code. Instead, I'm passing two (or potentially three) separate pieces of data - the [params] in the individual component, the [data] from the engine, and whatever the engine code returned (which by default is nothing). 20160301 14:55:15< celticminstrel> For the ai table, I've instead injected it into the global scope (and then removed it again after calling the code). 20160301 14:55:20< mattsc> celticminstrel: so does that change the syntax how the eval/exec functions need to be defined? 20160301 14:55:26< celticminstrel> Yes. 20160301 14:55:51< mattsc> celticminstrel: then that will not only break the ExpAI, but also most or all of the Micro AIs and lots of UMC. 20160301 14:56:02< celticminstrel> Though I have a sort of backwards-compatibility hook for that - if you're using exec_parms and eval_parms, it should still work as it did before. 20160301 14:56:16< mattsc> ah, okay then 20160301 14:56:17< celticminstrel> Whereas if you use [params], the new format is used. 20160301 14:56:46< celticminstrel> (I haven't tested in any detail, but my dummy CA that does nothing except print messages seems to work just fine.) 20160301 14:57:22< celticminstrel> (Certainly I need more testing to ensure it really does still work as before.) 20160301 14:58:13< zookeeper> vultraz, maybe easy if you have a place to call those from. 20160301 14:58:13< celticminstrel> I didn't include backwards compatibility for non-external CAs because I figured, given your recommendations, that most people wouldn't be using them... but the experimental AI does use them, so I had to edit the WML definition to fix that. 20160301 14:58:23< mattsc> celticminstrel: you can use the Micro AIs for that; they use pretty much all of the current (1.12) functionality and each of them has a test scenario. 20160301 14:58:27< celticminstrel> vultraz: Cleaning up the AI code, yes. 20160301 14:58:35< vultraz> zookeeper: callback function for Animate Map 20160301 14:58:36< vultraz> add one 20160301 14:58:41< celticminstrel> mattsc: Are the test scenarios unit-test-worthy? 20160301 14:58:44< vultraz> i can help you 20160301 14:58:47< mattsc> celticminstrel: no idea 20160301 14:59:07< celticminstrel> Do they have human players? 20160301 14:59:16< mattsc> some do, some don't 20160301 14:59:24< celticminstrel> I see. 20160301 14:59:32< celticminstrel> Probably not unit-test-worthy, then. 20160301 14:59:39< celticminstrel> But I guess I can try each of them out. 20160301 14:59:46< mattsc> and you can usually select if you want human or AI player in those that do 20160301 15:00:03< celticminstrel> Unit tests can't have any kind of interaction though. 20160301 15:00:16< mattsc> but you do need a way of figuring out if the units actually do what they are supposed to, and that’s often not just a “did it get to a certain hex” thing 20160301 15:00:24< celticminstrel> They have to automatically end in either victory or defeat without any interaction from the user. 20160301 15:00:36< zookeeper> vultraz, if i write all the rest of the feature, will you write that callback thingy? :p 20160301 15:00:36< mattsc> right 20160301 15:00:48< mattsc> see my previous comment, it’s not that easy 20160301 15:01:07< celticminstrel> I think the micro AIs should be updated to use [params], mind you, but I'll verify they still work first, then consider updating them (or let you do it). 20160301 15:01:41< vultraz> zookeeper: yes 20160301 15:01:44< vultraz> it's very simple, actually 20160301 15:01:49< vultraz> I'll deal with it 20160301 15:01:52< zookeeper> vultraz, okay, perfect. because that code looks super awkward. 20160301 15:02:23< celticminstrel> I think you'd define the functions as "function ca.evaluation(cfg, data)" instead of "function ca:evaluation(ai, cfg, self)". 20160301 15:02:37< celticminstrel> And use "data" everywhere you currently use "self.data". 20160301 15:02:50< vultraz> zookeeper: awkward, you say? :| 20160301 15:03:10< mattsc> celticminstrel: let me just be devil’s advocate for a moment. Why are you doing this? 20160301 15:03:13< zookeeper> vultraz, err, did you write it or something? :P 20160301 15:03:25< vultraz> if you're looking at preferences_dialog.cpp, then yes 20160301 15:03:36< mattsc> From what I know right now, you’re just adding yet another method of doing something to a system that already has too many. 20160301 15:03:46< zookeeper> whoops. 20160301 15:03:48-!- pydsigner [~pydsigner@unaffiliated/pydsigner] has quit [Ping timeout: 276 seconds] 20160301 15:04:23< zookeeper> vultraz, well, to be fair it's probably because i'm completely unfamiliar with it and prefer my GUI code to be of the form "a button. it calls this function. done." 20160301 15:05:28< mattsc> celticminstrel: if this is followed in, say, 1.15, by doing a clean cut and throwing out all the old crap (including AI access to Formula, lua stages, the old Lua method requiring engines, etc.), I’m fine with it. But adding yet another method because we feel it’s more elegant while keepin around all the old ones seems … undesirable to me. 20160301 15:07:16< vultraz> mattsc, celticminstrel: I support any motion that replaces several old crappy methods with a shiny new elegant one 20160301 15:07:39< celticminstrel> Well, I intend this partly as an improvement to the existing Lua external CAs, so throwing away the old external CA way is intended. Also this means that any Lua AI component takes the same three arguments in the same order. 20160301 15:07:49< celticminstrel> I still disagree with scrapping Lua stages, though. 20160301 15:08:20< celticminstrel> I've also made the [data] element more "first-class" - it's now available everwhere within the Lua AI, not just in external CAs. 20160301 15:09:06< celticminstrel> (This includes non-external CAs. I'm divided about whether they should be removed, but not as opposed as I am to removing Lua stages.) 20160301 15:09:52< celticminstrel> (Non-external CAs may actually be quite a nice option if your evaluation/execution happens to be a one-liner or something.) 20160301 15:10:36< celticminstrel> (And they don't require an [engine] anymore.) 20160301 15:10:52< celticminstrel> (Though the experimental AI still does require one.) 20160301 15:12:47< celticminstrel> I'm not especially opposed to throwing out formula AI, either. Of course, LoW needs to be changed to not use it first, though. 20160301 15:13:40< celticminstrel> I actually tried throwing out the pre-composite-AI way of registering custom AIs, but the fallout proved to be to extensive, so I gave up. 20160301 15:14:09< celticminstrel> (This is a way to register custom AIs written in C++. Currently, the only ones registered are the composite AI and the idle AI.) 20160301 15:15:26< mattsc> hey; sorry was afk for a little 20160301 15:15:44< celticminstrel> (Until it was removed, there was presumably also default_ai. I think the ai_algorithm key used to select from those registered, but now I've made it select from the named ones available in MP.) 20160301 15:16:51< mattsc> okay on all that 20160301 15:16:56-!- aeonchild [enchilado@defocus/yummy/enchilado] has quit [Quit: Lost terminal] 20160301 15:16:59< celticminstrel> (So now the only way to get at an AI other than the composite AI is through the fallback stage. Since the only other AI is the idle AI, the fallback stage is useless at the moment and likely to remain so in the foreseeable future, since I doubt many people will be writing new AIs in C++ that replace the composite AI - they're more likely to write a stage for the composite AI.) 20160301 15:17:08< mattsc> although I don’t understand why you are so opposed to throwing out the Lua stage. 20160301 15:17:13< celticminstrel> Actually, we could probably drop the idle AI, too. 20160301 15:17:34< mattsc> yes, we could 20160301 15:17:40< celticminstrel> It does nothing and can only be used through the fallback stage. 20160301 15:17:52< celticminstrel> And there's an idle AI defined as a composite AI as well. 20160301 15:19:00< celticminstrel> I just think that if you're doing something outside the candidate evaluation cycle, it makes more sense to use a custom stage rather than a main_loop stage with a single candidate action. 20160301 15:19:06-!- pydsigner [~pydsigner@unaffiliated/pydsigner] has joined #wesnoth-dev 20160301 15:19:51< mattsc> celticminstrel: and my take on that is that, why keep two parts of code around that do essentially the same thing, with one much more limited than the other. 20160301 15:20:15< mattsc> Anyway, as we said before, let’s just agree to disagree and whoever makes the changes to the actual C++ code gets to decide. 20160301 15:20:26< mattsc> And we both know who that is not going to be. :) 20160301 15:20:57< celticminstrel> I don't think the Lua stage requires any significant maintenance, either - it uses the exact same mechanism as candidate actions for calling its code. 20160301 15:21:25< celticminstrel> (Goals and aspects also use the same mechanism. Candidate actions are slightly different in that they use the mechanism twice, once for evaluation and once for execution.) 20160301 15:21:49< mattsc> It’s still duplicate code for the same purpose. 20160301 15:21:55< celticminstrel> Anyway, yes, we can agree to disagree. 20160301 15:22:07 * celticminstrel also disagrees that it's for the same purpose. 20160301 15:22:49< mattsc> Okay. That’s fine. As in, I have no issues with out disagreement. 20160301 15:22:57< mattsc> s/out/our 20160301 15:23:51< celticminstrel> I do want to scrap the C++ AI registration mechanism, and when that goes the fallback stage will naturally follow. However, I'm not going to do that in this branch. 20160301 15:24:04< celticminstrel> It's quite a big undertaking. 20160301 15:26:39< celticminstrel> Maybe it should wait for 1.15. I dunno. 20160301 15:27:02< celticminstrel> I think the only things I've scrapped so far are deprecated aspects (and the old recruitment stage/ca). 20160301 15:27:24< celticminstrel> (Oh right, also [goal]name=protect_my_unit) 20160301 15:28:54< mattsc> That all sounds good to me. 20160301 15:31:54< mattsc> celticminstrel: and now the last section is added also: https://wiki.wesnoth.org/Creating_Custom_AIs#On_the_Fly_Candidate_Action_Testing 20160301 15:32:27< celticminstrel> By last section on LuaAI, you mean the debug access thing? 20160301 15:32:33< mattsc> But that made me realize that something is wrong in the last section at LuaAI. 20160301 15:32:34< mattsc> yes 20160301 15:33:19< mattsc> Because I am certain that you do not need the CL option to access wesnoth.debug_ai(). So I do not currently know what that CL option actually does. 20160301 15:33:24< mattsc> But besides that: 20160301 15:33:47< mattsc> celticminstrel, vultraz and anybody who might care: the AI wiki pages overhaul is done. 20160301 15:33:53< celticminstrel> I've just been exiting to the menu and restarting the game to reload my external CAs. 20160301 15:34:07< celticminstrel> By "game" I mean "click Multiplayer etc etc". 20160301 15:34:16< celticminstrel> Not quit and relaunch. 20160301 15:34:17< mattsc> celticminstrel: that sounds like a pain 20160301 15:34:27< celticminstrel> Not F5 either. 20160301 15:34:46< celticminstrel> (That's only when I change WML or something that's not an external Lua CA.) 20160301 15:34:54< celticminstrel> It's a bit of a pain, I suppose. 20160301 15:34:59< mattsc> I have test scenarios in which all I need to do is hit hotkeys to test the functionality that I just changed. 20160301 15:35:08< celticminstrel> I should probably set controller=computer or whatever in my test scenario. 20160301 15:35:25< mattsc> See the section on Creating_Custom_AIs, not the one in LuaAI 20160301 15:35:26< vultraz> mattsc: I can now delete everything marked as such? 20160301 15:35:34< celticminstrel> Then I won't need to manually switch that each time. 20160301 15:35:37< celticminstrel> Yeah, I see that. 20160301 15:35:44< mattsc> vultraz: yes (you could have done so already when I moved them there) 20160301 15:35:56< mattsc> celticminstrel: and I do that with human-controlled sides 20160301 15:36:06< mattsc> for the most part 20160301 15:36:25< celticminstrel> My test scenario has two human-controlled sides, though. Fine for testing random WML stuff, not so great for AI stuff. 20160301 15:36:49< mattsc> celticminstrel: so does mine 20160301 15:37:02< mattsc> depends what AI stuff you need to test 20160301 15:37:10< celticminstrel> How do you test AI with no computer-controlled sides? 20160301 15:37:46< mattsc> I use this when setting up AIs to make sure the eval/exec functions actually do what they are supposed to do; once you need to test what they actual do in context, that’s not good enough any more. 20160301 15:38:06< mattsc> but you can do _a lot_ by setting up artifical situations in debug mode 20160301 15:38:21< celticminstrel> I'm not sure I understand. 20160301 15:38:46< mattsc> e.g, you put one of your units out there and two enemies 20160301 15:38:58< celticminstrel> My test scenario won't really be used for testing actual AIs though, only for testing that the general AI mechanisms work. 20160301 15:39:05-!- irker891 [~irker@uruz.ai0867.net] has quit [Quit: transmission timeout] 20160301 15:39:06< mattsc> then you call the CA eval function, and see which of the enemies it chooses for the attack 20160301 15:39:27< mattsc> that’s a different purpose then from what I do 20160301 15:39:31< celticminstrel> Ah. Hmm. 20160301 15:39:43< celticminstrel> Then I need to add a function to the wesnoth table. 20160301 15:39:47< celticminstrel> Or, wait. 20160301 15:39:48< mattsc> and btw, for testing Fred, I have a much more complex testing setup than anything described on the wiki 20160301 15:39:53< celticminstrel> Maybe that's what debug_ai does. 20160301 15:40:02< celticminstrel> In which case I need to fix that, because I think I broke it. 20160301 15:40:30< mattsc> If you broke that, I’ll have to hunt you down and beat you with something else than a squeaky mallot 20160301 15:40:42< celticminstrel> I think I have a TODO comment somewhere in the source to remind me to fix it. 20160301 15:41:09< mattsc> There’s a reason why I do my AI development in 1.12 :) 20160301 15:41:25< celticminstrel> Well, this isn't even master, though. :P 20160301 15:41:26< vultraz> mattsc: you want this gone too? https://wiki.wesnoth.org/User:Mattsc 20160301 15:41:31< celticminstrel> But, fair enough. 20160301 15:41:35< mattsc> vultraz: yes 20160301 15:42:09< mattsc> celticminstrel: if you could figure out what the --debug-lua CL option does and fix that LuaAI section accordingly, that would be much appreciated. 20160301 15:42:11< vultraz> mattsc: done 20160301 15:42:17< mattsc> vultraz: thanks 20160301 15:42:22< celticminstrel> I'll try to remember that... 20160301 15:42:45< mattsc> celticminstrel: because I am pretty sure that the description currently in that section is wrong 20160301 15:42:58-!- esr [~esr@wesnoth/developer/esr] has quit [Ping timeout: 244 seconds] 20160301 15:43:26< mattsc> My guess is that the dynamic changes without reload only work when this is set, but that the debug_ai() function per se works without it too 20160301 15:43:30< mattsc> but I am just guessing here 20160301 15:44:14< mattsc> celticminstrel: I’ll be generally offline for the next 10ish days then. 20160301 15:44:25< celticminstrel> Well, that just loads the file and executes it. It doesn't do anything with the AI set in the scenario. 20160301 15:44:42< mattsc> I’ll still check the logs, but don’t know if/when I’ll have time to be online. 20160301 15:44:43< celticminstrel> The code on that page, I mean. 20160301 15:45:26< mattsc> celticminstrel: which of the two pages? 20160301 15:45:35< celticminstrel> Creating custom AIs. 20160301 15:45:42< celticminstrel> The sample debugging code. 20160301 15:46:09< mattsc> Sure it does. 20160301 15:46:22< mattsc> The lines containing :evaluation and “execution do. 20160301 15:46:29< mattsc> In the last block of code. 20160301 15:46:43-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has joined #wesnoth-dev 20160301 15:46:43-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has quit [Changing host] 20160301 15:46:43-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20160301 15:46:46< celticminstrel> What I mean is, if you have a CA in the current AI which uses that external CA, then that CA (probably) won't be updated with the revised code. 20160301 15:46:52< vultraz> mattsc: I found this orphaned page: https://wiki.wesnoth.org/AI_Refactoring2009Crab 20160301 15:46:54< vultraz> delete? 20160301 15:46:56< celticminstrel> Which I'm assuming you don't expect it to. 20160301 15:47:22< mattsc> celticminstrel: right, I don't 20160301 15:47:37< celticminstrel> vultraz: Looks pretty useless to me. 20160301 15:47:42< mattsc> All I want to do is test the code that I just changed, and why I broke it. 20160301 15:47:49 * celticminstrel nods. 20160301 15:47:56< celticminstrel> And that, it does well enough. 20160301 15:48:39< celticminstrel> Incidentally, do any of the MicroAIs use parameters that wouldn't be a valid WML table? 20160301 15:49:08< mattsc> vultraz: that looks like the status page of Crab’s GSoC project which was updated frequently if you look at the history. 20160301 15:49:24< mattsc> Maybe it should be kept for “historical” (GSoC participation) reasons? 20160301 15:49:48 * vultraz shrugs 20160301 15:50:05< mattsc> celticminstrel: for the eval_parms and exec_parms attributes? 20160301 15:50:09< celticminstrel> Yeah. 20160301 15:50:18< mattsc> No. Since they are set using WML. 20160301 15:50:24< celticminstrel> Ah, makes sense. 20160301 15:50:56< mattsc> Will be back in 30 min or so. 20160301 15:51:02-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: mattsc] 20160301 15:51:31< vultraz> https://wiki.wesnoth.org/TheGreatWikiGarbageVortex 20160301 15:51:39< vultraz> mattsc has taken the torch 20160301 15:52:03< celticminstrel> What. 20160301 15:52:15< vultraz> :D 20160301 15:52:42< vultraz> iceiceice did that back in early 2014 when I first started my wiki cleanup 20160301 15:53:02< celticminstrel> Cleanup of what exactly? 20160301 15:53:08< vultraz> everything 20160301 15:53:17< vultraz> shit used to be a lot worse :P 20160301 15:53:22< vultraz> still is pretty bad 20160301 15:53:24< vultraz> but not so much 20160301 15:53:33< celticminstrel> So... we're not talking about spam? 20160301 15:53:59< vultraz> no we're talking about basically what mattsc is doing now 20160301 15:54:04< celticminstrel> I see. 20160301 15:54:21< celticminstrel> I might launch a minor one related to the formula engine at some point. 20160301 15:54:38< celticminstrel> A completely new page, and move some of the stuff from FormulaAI there. 20160301 15:55:00< celticminstrel> I still want to make up a new meaning for the FAI acronym, but I still can't think of anything. 20160301 15:55:51< vultraz> Feudal Anonymous inquisition 20160301 15:56:03< celticminstrel> Nothing about that says "formula". 20160301 15:57:16< vultraz> Fast Auto Interpreter 20160301 15:57:31< celticminstrel> Hmm. Not bad, I suppose. 20160301 15:57:55< celticminstrel> Doesn't quite say "formula", but does sort of have an implication towards it with "interpreter". 20160301 16:03:26-!- louis94 [~~louis94@91.178.240.123] has joined #wesnoth-dev 20160301 16:05:41-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160301 16:05:54< vultraz> maybe Functional 20160301 16:07:52< zookeeper> fabulous? 20160301 16:08:00< celticminstrel> Heh. 20160301 16:08:21< zookeeper> funky, fancy, fantastic, flabbergasting 20160301 16:09:08< celticminstrel> Fancy Arithmetic Interpreter? :P 20160301 16:12:27-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20160301 16:12:34< zookeeper> FAI acronymical infinity 20160301 16:12:43< celticminstrel> XD 20160301 16:14:21< vultraz> hehe 20160301 16:14:52 * celticminstrel will stick with Fancy Arithmetic Interpreter unless something better is proposed. 20160301 16:16:14< zookeeper> uh... so what was the reason why you need to come up with a new name? 20160301 16:16:18-!- Kwandulin [~Miranda@p200300760F0BD4ADD903EC1B19F6F3CD.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160301 16:16:46< celticminstrel> Because we're talking about dropping FormulaAI, so I think it would be good if the formula language doesn't reference AI. 20160301 16:17:01< celticminstrel> (By "FormulaAI" here I mean the AI engine that uses the formula language.) 20160301 16:18:38< zookeeper> ok so what does FAI mean in addition to "FormulaAI"? 20160301 16:18:56< celticminstrel> It's a language which is also used in other places - in unit filters, in GUI2, and a few others. 20160301 16:19:14< zookeeper> i thought that's what "the formula language" is 20160301 16:19:18< celticminstrel> Yes. 20160301 16:19:29< zookeeper> so who's calling the formula language FAI? 20160301 16:20:15< celticminstrel> Well, on the wiki it's generally not distinguished from the AI engine, and "fai" is also baked into its syntax. 20160301 16:20:28< celticminstrel> (Though admittedly that's a feature that probably only AI programmers actually ever used.) 20160301 16:21:25< celticminstrel> (So I suppose an alternative might be to drop that feature from the language.) 20160301 16:21:33< zookeeper> if you need to make a separation between FormulaAI and the formula language in general, then using "FAI" as the name for the latter seems a good idea if you want to maximize confusion :p 20160301 16:22:39< zookeeper> if there's no good reason to use that acronym then just name it WFL or something 20160301 16:22:55< zookeeper> s/good/strong, if you prefer 20160301 16:24:40< celticminstrel> The language contains "faifile" (or maybe it's just "fai") and "faiend" keys which are used to improve error messages. However, "git grep faiend" returns only results related to FormulaAI (the AI engine), so dropping the keywords from the language could be an alternate possibility. 20160301 16:25:37< celticminstrel> It's basically something like, you write "fai 'my-file-name.fai'" and then all error messages will include that filename along with a line number. 20160301 16:26:31< zookeeper> not to mention that if practically no one's actually using it in UMC, it could just be changed 20160301 16:27:36< celticminstrel> Change it to just be a different keyword? Yeah, that's a possibility, but I don't know if anyone is using it in UMC... though, if anyone is, it's most likely for FormulaAI and not for unit filters or GUI2 formulas 20160301 16:29:26< mattsc> I use formula in filters in UMC 20160301 16:29:56< celticminstrel> But do you use the fai keyword in them? 20160301 16:30:31< mattsc> Oh, that’s what you meant. No, I don't. 20160301 16:32:16< celticminstrel> Formula filters are usually quite simple, especially in comparison to some of the FormulaAI files available in Wesnoth mainline. 20160301 16:32:29< celticminstrel> So they have no need of the keyword. 20160301 16:33:17< zookeeper> or you can just silently support both the old and new keyword. 20160301 16:33:39< celticminstrel> Maybe. I'm not sure how flexible the formula parser is, but I can look into that method. 20160301 16:33:57< celticminstrel> I wanted to add a string concatenation operator, but it was kinda unclear how I would do such a thing. 20160301 16:34:21< celticminstrel> (Then I discovered the undocumented string substitution syntax, which while not a concatenation operator can produce the same effects.) 20160301 16:34:59< celticminstrel> (Though has the disadvantage of requiring <<>> quotes. Maybe that's why it was undocumented - I imagine the <<>> quotes weren't added until Lua was brought in.) 20160301 16:35:22< celticminstrel> (Since it's undocumented, I could silently change it to be [] instead of {}..) 20160301 16:38:13-!- frainz [~Frainz@mmisc.de] has joined #wesnoth-dev 20160301 16:43:49< celticminstrel> Why can I drag the "Local Player" dropdown around on the screen? That doesn't make any sense whatsoever. 20160301 16:44:14< celticminstrel> Also, personally, I think menus should appear on mousedown rather than mouseup. Maybe that's because I'm a Mac user. 20160301 16:44:31< celticminstrel> Ohh, I see, dragging it allows changing the order of players. 20160301 16:44:41< celticminstrel> Still, it's not telegraphed very well. 20160301 16:45:02< celticminstrel> For starters, it should only allow you to drag it vertically. 20160301 16:47:05-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 16:47:10-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 16:48:10-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 16:49:08< celticminstrel> I may have come up with a way to make non-external CAs backwards compatible. 20160301 16:51:02< vultraz> celticminstrel: in mp? 20160301 16:51:09< vultraz> celticminstrel: to order them 20160301 16:51:19< celticminstrel> Yeah, I managed to figure that out. 20160301 16:51:25< celticminstrel> But it's kinda unclear. 20160301 16:54:58-!- louis94 [~~louis94@91.178.240.123] has quit [Quit: Konversation terminated!] 20160301 16:55:15< celticminstrel> mattsc: Do you have any idea what this "self.data" is that the experimental AI uses? Since the experimental AI uses an [engine] tag, I'm fairly sure it can't be the same thing as the "self.data" in external Lua CAs, but nowhere in the experimental AI is it actually initialized (as far as I can see). 20160301 17:01:50< celticminstrel> Speaking of self.data, with this change I just made and the other change I made as an alternative path to fixing the ExpAI, the only changes needed to switch an external Lua CA from {exec,eval{_parms= to [params] is now changing the arguments from (ai,cfg,self) to just (cfg) - the self is then implicit. (But for new external CAs I would still recommend using params (cfg, data) and accessing data instead of self.data.) 20160301 17:03:18< celticminstrel> (That also makes them more robust - with just (cfg) and accessing self.data it'll break if someone tries to combine your AI with a custom [engine] tag, but with (cfg,data) and accessing data directly, it won't.) 20160301 17:04:40< celticminstrel> Actually, this makes me wonder if the MicroAIs actually work in conjunction with the ExpAI - since the latter does have its own [engine] tag, it may interfere with the mechanism that allows external Lua CAs to work. 20160301 17:05:17< celticminstrel> Anyway, I can easily fix the self.data issue in the ExpAI just like I did before (by passing data to init()), but I'm confused at why I would need to do that. 20160301 17:07:12-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20160301 17:07:12-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Read error: Connection reset by peer] 20160301 17:19:39< mattsc> celticminstrel: it is the same thing; it used to exist already in the Lua engine, that’s not new 20160301 17:19:52< mattsc> It only is new that it got added to the external CAs after the fact 20160301 17:20:03< celticminstrel> Hmm. 20160301 17:22:06< celticminstrel> The thing is, in the ExpAI, "self" appears to refer to table created entirely by the ExpAI, so I don't get why data suddenly shows up there... 20160301 17:22:13< mattsc> celticminstrel: I do not remember whether external CAs and engine CAs work together; I thought they would, but not sure 20160301 17:22:35< mattsc> The engine adds it, as far as I know 20160301 17:22:53< celticminstrel> Well, the dummy engine does, certainly. 20160301 17:23:05< celticminstrel> But ExpAI does not use the dummy engine. 20160301 17:23:09< mattsc> celticminstrel: in principle, the ExpAI should be switched to external CAs at some point also. 20160301 17:23:18< mattsc> I just haven’t bothered doing so yet. 20160301 17:23:28< mattsc> For the same reason, Fred still uses engine CAs. 20160301 17:23:34< celticminstrel> Probably, but I'm not exactly keen on the idea of doing it. 20160301 17:23:48< mattsc> Well, in that case it is because I’d have to change my whole debugging mechanism also, and I am too lazy for that for the time being. 20160301 17:24:49< celticminstrel> So that sample code is not actually how you debug Fred? 20160301 17:24:50< mattsc> celticminstrel: that (switching the ExpAI to external CAs) is something I will do eventually, so you don’t need to. But I cannot tell you when “eventually” is. 20160301 17:25:16< celticminstrel> Right, and in the meantime I'd like to at least make sure that it continues to work with non-external CAs. 20160301 17:25:58< mattsc> I think that’s good anyway because I am sure there’s at least some UMC out there using that syntax 20160301 17:26:05< celticminstrel> Yeah. 20160301 17:27:42< celticminstrel> I'm not really making this fully backwards compatible, but I'd like it to be fixable by just tweaking the [engine] code and nothing else. 20160301 17:28:36< mattsc> sounds good 20160301 17:29:27< mattsc> Most UMC authors don’t really understand how the AI works and is set up. They add AI code by copying something from mainline, or other UMC, tweaking it a bit until it works, and then never touch it again. 20160301 17:29:38< mattsc> Which is how I got started too, of course. 20160301 17:29:47< mattsc> Except for the “never touching it again” bit ;) 20160301 17:30:30< mattsc> But the point is, if we break compatibility, we need to make sure we give people detailed instructions on how to update; or do it for them. 20160301 17:30:50< celticminstrel> I'll make sure to include instructions in the release notes. 20160301 17:31:02< celticminstrel> For most people, it'll just be something like removing "local ai = ...". 20160301 17:31:30< celticminstrel> The ExpAI is a bit more complicated because of this self.data thing, but I think I have something that should work now, apart from the fact that the data appears to somehow be initially nil. 20160301 17:31:30< mattsc> sounds good 20160301 17:32:00< celticminstrel> (Which should be impossible, so I'm probably using the wrong param or something.) 20160301 17:33:58< celticminstrel> Okay, so, uh... hmm... did I forget to recompile to implement the parameter reordering? 20160301 17:34:08< celticminstrel> No, I'm pretty sure I didn't... 20160301 17:34:12< mattsc> celticminstrel: when are you planning to push all this into master? 20160301 17:34:17< celticminstrel> Because I had that indexing a function error... 20160301 17:34:27< celticminstrel> mattsc: I'll probably open a PR next week. 20160301 17:34:33< celticminstrel> Or this weekend. 20160301 17:34:44< celticminstrel> Let people review/test it for a week, then merge it. 20160301 17:35:32< mattsc> I’ll be gone at least through Thu next week, and from experience I’ll likely not have much time at all for at least a week after I am back. Too many things to catch up with. 20160301 17:35:52< celticminstrel> I can wait until you have time to review it before I merge. 20160301 17:36:18< celticminstrel> Depending on how many tangents I go off on, I might not get the PR open until late next week anyway. >_> 20160301 17:36:57< mattsc> okay; (just cautioning that reviewing might take me a while even after I am back) 20160301 17:37:24< mattsc> I’ve really spent too much time on this wiki update over the last couple weeks and neglected some other things 20160301 17:37:34< mattsc> but I wanted to get that done before I take off 20160301 17:38:17< mattsc> some other things = real-life stuff, not Wesnoth 20160301 17:38:56< celticminstrel> I have at least two other Wesnoth things I want to work on, so that'll occupy my time while waiting for people to review it. 20160301 17:39:18-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 17:39:30< mattsc> good (and I figured; finding stuff to do is usually not a problem) 20160301 17:40:09< celticminstrel> (That and non-Wesnoth stuff, of course.) 20160301 17:40:39< mattsc> you have that too? ;) 20160301 17:40:52< celticminstrel> Plenty of it. 20160301 17:49:18< celticminstrel> Ooh. I think I get it. 20160301 17:50:07< celticminstrel> Or... not? 20160301 17:50:25< celticminstrel> At the very least, for whatever reason, data is param 2 instead of 3 as it should be... 20160301 17:51:14-!- Nobun [~nobun@host226-19-dynamic.52-82-r.retail.telecomitalia.it] has joined #wesnoth-dev 20160301 17:56:53< celticminstrel> Oh, right. I forgot, the engine code is only passed two parameters, not three like every other component. 20160301 17:58:40-!- Aginor [~andreas@unaffiliated/aginor] has quit [Remote host closed the connection] 20160301 18:01:32-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 18:07:17< mattsc> celticminstrel: are you making any changes in data/ai as well? 20160301 18:07:22< mattsc> or just in the C++ code? 20160301 18:07:38< celticminstrel> I changed the dummy Lua engine. I think that's about all. 20160301 18:08:12< mattsc> My next project is going to be to clean up data/ai and the AI macros 20160301 18:08:28< mattsc> It probably makes sense to wait with that until after your PR will have been merged. 20160301 18:08:30-!- Kwandulin [~Miranda@p200300760F0BD4ADD903EC1B19F6F3CD.dip0.t-ipconnect.de] has quit [Ping timeout: 250 seconds] 20160301 18:08:49< mattsc> Plus, I’ll likely not get around to it before then anyway. 20160301 18:09:07< mattsc> Of course, if you beat me to it, I won’t complain either! 20160301 18:10:46< celticminstrel> Yeah, I made a few other changes in data/ai too. 20160301 18:11:10< celticminstrel> That was the only Lua change, but some config changes. 20160301 18:12:00< mattsc> celticminstrel: I’m going to sign out sometime in the next hour. I’ll still be around later today, but likely won’t have time to hang out here. 20160301 18:12:12< celticminstrel> 'kay 20160301 18:12:45< mattsc> So please use my nick, or shoot me a forum PM, if you specifically need/want me for something. 20160301 18:13:26< mattsc> It’s great to see somebody actually paying attention to the AI code, btw! 20160301 18:15:38< celticminstrel> ExpAi works without any Lua errors now, though somehow I suspect it's not supposed to seize a village before recruiting... 20160301 18:16:08< celticminstrel> Maybe I'm wrong, I dunno. 20160301 18:16:13< celticminstrel> I thought the gamestate inspector was fixed... 20160301 18:17:15< celticminstrel> But now it's missing the top left listbox again... :( 20160301 18:21:28-!- Aginor [~andreas@unaffiliated/aginor] has joined #wesnoth-dev 20160301 18:23:07< vultraz> GAAAAAAAAAAAAAH 20160301 18:23:11< vultraz> :| 20160301 18:23:38< celticminstrel> Oh, wait. I might've accidentally dropped the commit that supposedly fixed it. 20160301 18:23:43< celticminstrel> Wait, no. 20160301 18:23:55< celticminstrel> I have the vertical_whatever, so it must be in there somewhere. 20160301 18:24:07< celticminstrel> Ah, yeah, there it is. 20160301 18:24:21< celticminstrel> I thought that fixed it, was my testing environment muddled? :| 20160301 18:24:43< celticminstrel> For some reason, I'm actually not seeing the effects of that change right now. 20160301 18:24:51< celticminstrel> Even though the code clearly shows it. 20160301 18:28:02< celticminstrel> The experimental AI does not seem to recruit at all. 20160301 18:28:11< celticminstrel> Can anyone check if this is the case in master? 20160301 18:33:21< mattsc> I have no working version of master at the moment 20160301 18:33:52< celticminstrel> ExpAI does seem to have some other errors. I added the default recruitment to it, and eventually found an error about indexing a nonexistent local variable. 20160301 18:39:25-!- fabi [~quassel@wesnoth/developer/fendrin] has quit [Ping timeout: 248 seconds] 20160301 18:43:09< celticminstrel> vultraz: It works for you though, right? 20160301 18:43:17< celticminstrel> The gamestate inspector. 20160301 18:43:26-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 18:45:22< celticminstrel> Someone said that the Lua console supports history, but this does not appear to be the case on my build. 20160301 18:46:10< celticminstrel> The Lua interpreter scrolls to the top (instead of the bottom) every time a command is executed. 20160301 18:46:24< celticminstrel> pretty_print isn't very pretty at all. :( 20160301 18:47:05-!- esr [~esr@wesnoth/developer/esr] has quit [Ping timeout: 250 seconds] 20160301 18:47:24-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has joined #wesnoth-dev 20160301 18:47:24-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has quit [Changing host] 20160301 18:47:24-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20160301 18:49:18< celticminstrel> wesnoth.debug_ai() now works and produces a table containing update_state, data, args, self, components, ai, and engine. 20160301 18:49:57< celticminstrel> I should probably rename those to update_self and params. 20160301 18:55:40-!- Waste [~Cracker@blk-138-75-91.eastlink.ca] has joined #wesnoth-dev 20160301 18:56:37< vultraz> celticminstrel: i haven't tested at small res 20160301 18:56:47< celticminstrel> But it does work at your res. 20160301 18:58:23-!- quentinp_ [~quentin@ns363174.ip-91-121-196.eu] has quit [Ping timeout: 268 seconds] 20160301 18:58:29-!- quentinp [~quentin@ns363174.ip-91-121-196.eu] has joined #wesnoth-dev 20160301 18:58:48-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: So long and thanks for all the fish.] 20160301 19:07:00-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 19:13:00-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Read error: No route to host] 20160301 19:13:00-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 19:13:00-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 19:13:00-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 19:24:23-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 19:25:46-!- Netsplit *.net <-> *.split quits: new_one, matthiaskrgr, Lohengramm 20160301 19:27:18-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 19:31:34-!- Netsplit over, joins: new_one, Lohengramm, matthiaskrgr 20160301 19:39:09-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160301 19:44:14-!- Waste [~Cracker@blk-138-75-91.eastlink.ca] has quit [Quit: Leaving] 20160301 19:45:29-!- gfgtdf [~chatzilla@f054054178.adsl.alicedsl.de] has joined #wesnoth-dev 20160301 19:46:18< gfgtdf> wedge009: threr is some preferences::save_htkeys function that should be called, maybe in post_show of the gui2 referencese dialog. 20160301 19:52:07-!- Kwandulin [~Miranda@p200300760F0BD4ADD927FCC01D7ECB13.dip0.t-ipconnect.de] has joined #wesnoth-dev 20160301 19:53:37-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 19:55:11< gfgtdf> wedge009: ok after reding the logs further i noticed that this was already done 20160301 19:57:14-!- nurupo [~nurupo.ga@unaffiliated/nurupo] has quit [Quit: nurupo] 20160301 19:57:52-!- nurupo [~nurupo.ga@unaffiliated/nurupo] has joined #wesnoth-dev 20160301 20:02:04-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 20:02:06-!- gfgtdf [~chatzilla@f054054178.adsl.alicedsl.de] has quit [Quit: ChatZilla 0.9.92 [Firefox 44.0.2/20160210153822]] 20160301 20:06:53-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 248 seconds] 20160301 20:14:26-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 20:19:55-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20160301 20:20:12-!- ToBeCloud [uid51591@wikimedia/ToBeFree] has joined #wesnoth-dev 20160301 20:29:12-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 20:32:12-!- Kwandulin [~Miranda@p200300760F0BD4ADD927FCC01D7ECB13.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20160301 20:33:56-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 20:38:27-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Ping timeout: 246 seconds] 20160301 20:42:46-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 21:15:50-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 21:24:03< wedge009> gfgtdf: Yep, vultraz took care of it. 20160301 21:57:15-!- Nobun [~nobun@host226-19-dynamic.52-82-r.retail.telecomitalia.it] has quit [Quit: Salve a tutti] 20160301 22:02:12-!- Appleman1234 [~Appleman1@KD106161144077.au-net.ne.jp] has quit [Ping timeout: 260 seconds] 20160301 22:23:53-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20160301 22:25:47-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20160301 22:41:08-!- horrowind [~Icedove@2a02:810a:8380:834:21b:fcff:fee3:c3ff] has joined #wesnoth-dev 20160301 22:41:55-!- Waste [~Cracker@blk-138-75-91.eastlink.ca] has joined #wesnoth-dev 20160301 22:42:32-!- ancestral [~ancestral@97-116-184-84.mpls.qwest.net] has joined #wesnoth-dev 20160301 22:58:07-!- Appleman1234 [~Appleman1@KD106161154196.au-net.ne.jp] has joined #wesnoth-dev 20160301 23:07:48-!- irker956 [~irker@uruz.ai0867.net] has joined #wesnoth-dev 20160301 23:07:48< irker956> wesnoth: Ignacio R. Morelle wesnoth:master d8f302f7c9d0 / / (1221 files in 29 dirs): pot and documentation update https://github.com/wesnoth/wesnoth/commit/d8f302f7c9d03354077a2adeefe841a72b5f5476 20160301 23:10:04-!- fabi [~quassel@wesnoth/developer/fendrin] has joined #wesnoth-dev 20160301 23:11:49-!- fabi is now known as fendrin 20160301 23:16:50-!- mjs-de [~mjs-de@x4db64805.dyn.telefonica.de] has quit [Remote host closed the connection] 20160301 23:20:21-!- louis94 [~~louis94@91.178.240.123] has joined #wesnoth-dev 20160301 23:21:18-!- Waste [~Cracker@blk-138-75-91.eastlink.ca] has quit [Quit: Leaving] 20160301 23:22:58-!- Greg-Boggs [~greg_bogg@173.240.241.83] has quit [Remote host closed the connection] 20160301 23:32:04< celticminstrel> I have to wonder, what's the use of having a BCA that only filters based on location... 20160301 23:32:13-!- Greg-Boggs [~greg_bogg@173.240.241.83] has joined #wesnoth-dev 20160301 23:32:41< celticminstrel> Oh, I guess it's really starting location. Still. 20160301 23:37:53< celticminstrel> I think I possibly figured out why ExpAI wasn't recruiting. For some reason the return value from CA evaluation is being lost somewhere. 20160301 23:47:50< celticminstrel> Hmm. So, even though turns and time_of_day appear in standard aspects, they're actually a feature of composite aspects - a standalone standard aspect ignores them. 20160301 23:51:13-!- louis94 [~~louis94@91.178.240.123] has quit [Quit: Konversation terminated!] 20160301 23:57:27-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 276 seconds] --- Log closed Wed Mar 02 00:00:15 2016