--- Log opened Thu Sep 26 00:00:06 2013 --- Day changed Thu Sep 26 2013 20130926 00:00:05< mattsc> So you can completely ignore that :) 20130926 00:01:08< mattsc> flix: one of the main lessens I have learned in my own amateurish attempts is that having an AI play against another AI is very different (not just quantitatively, but also qualitatively) than against a human. 20130926 00:01:14< mattsc> *lessons 20130926 00:01:41< flix> mattsc: I'll set 'begin' to 1.1 and 'end' to 0.9. Then I'll play some scenarios :) 20130926 00:02:28< mattsc> So I'll keep these things in mind for scenarios I'll play from now on and give you feedback when I find something. 20130926 00:02:45-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 252 seconds] 20130926 00:03:24< mattsc> flix: I have to be off now. Will be back in a couple hours and read the logs then. 20130926 00:04:44-!- H-Hour [~H-Hour@cpc7-sgyl35-2-0-cust428.18-2.cable.virginmedia.com] has joined #wesnoth-dev 20130926 00:04:45< flix> mattsc: btw: My AI has beaten rushers recruitment. But the difference is 0.3% or something :) 20130926 00:04:58< flix> mattsc: okay ciao 20130926 00:05:06< mattsc> Nice. Out of how many games? 20130926 00:05:28< flix> 1000 me vs. rusher, 1000 rusher vs. me 20130926 00:06:10< mattsc> So the expected error bar is something like 3%. I'd call that pretty even. :) 20130926 00:06:19< flix> mattsc: but I had to tweak some hardcoded constants for doing this. 20130926 00:06:33< mattsc> flix: still, nice to see that improvement. 20130926 00:06:49-!- mjs-de [~mjs-de@d189237.adsl.hansenet.de] has quit [Remote host closed the connection] 20130926 00:07:13< mattsc> flix: now here's something for you to shoot for: Fred currently wins more than 98% against the default AI. 20130926 00:07:30< mattsc> That's a lot more than just recruiting though. ;) 20130926 00:07:54< mattsc> And the bad thing is that he still sucks against human players ... 20130926 00:08:00< flix> mattsc: Tonight i'll do some tests on another map. Then I will most likely do something with the aspect "recruitment_diversity", to let an editor make my AI as strong 20130926 00:08:25< flix> okay, let's talk again tomorrow 20130926 00:08:29< flix> see you 20130926 00:08:40< mattsc> cheers 20130926 00:09:06-!- mattsc [~mattsc@fw.hia.nrc.ca] has quit [Quit: Ciao] 20130926 00:13:28-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Remote host closed the connection] 20130926 00:15:28-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20130926 00:17:45-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20130926 00:20:19-!- ancestral [~ancestral@63.92.240.233] has joined #wesnoth-dev 20130926 00:29:43-!- molgrum [~molgrum@h-94-220.a230.priv.bahnhof.se] has quit [Read error: Connection reset by peer] 20130926 00:30:07-!- molgrum [~molgrum@h-94-220.a230.priv.bahnhof.se] has joined #wesnoth-dev 20130926 00:47:15-!- H-Hour [~H-Hour@cpc7-sgyl35-2-0-cust428.18-2.cable.virginmedia.com] has quit [Quit: Leaving] 20130926 01:15:36-!- ancestral [~ancestral@63.92.240.233] has quit [Quit: i go nstuf kthxbai] 20130926 01:17:49-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20130926 01:33:01-!- Turuk [~Turuk@cpe-65-29-217-233.cinci.res.rr.com] has joined #wesnoth-dev 20130926 01:34:40-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has quit [Quit: Bye] 20130926 01:38:44-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20130926 01:48:29-!- irker057 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20130926 01:50:44-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 01:50:45-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Read error: Connection reset by peer] 20130926 01:51:42-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20130926 01:54:07-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20130926 01:57:12< justinzane> bug: button.cpp[~165] image_.assign(scale_surface(button_image,button_image->w,button_image->h)); 20130926 01:57:28< justinzane> Anyone know what this *should* be? 20130926 01:58:16-!- noy [~Noy@wesnoth/developer/noy] has quit [Client Quit] 20130926 02:01:58< justinzane> `image_.assign(scale_surface(button_image,location().w,location().h));` possibly? 20130926 02:02:38-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has quit [Ping timeout: 264 seconds] 20130926 02:03:14< justinzane> And why call location() multiple times instead of just putting those two value on the stack? 20130926 02:07:46-!- mattsc [~mattsc@154.20.32.246] has joined #wesnoth-dev 20130926 02:16:15-!- Samual [diotecktec@xonotic/core-team/Samual] has quit [Ping timeout: 245 seconds] 20130926 02:16:28-!- Samual [diotecktec@c-71-195-88-69.hsd1.pa.comcast.net] has joined #wesnoth-dev 20130926 02:16:28-!- Samual [diotecktec@c-71-195-88-69.hsd1.pa.comcast.net] has quit [Changing host] 20130926 02:16:28-!- Samual [diotecktec@xonotic/core-team/Samual] has joined #wesnoth-dev 20130926 02:31:39-!- Samual_ [~dioteckte@xonotic/core-team/Samual] has joined #wesnoth-dev 20130926 02:35:30-!- Samual [diotecktec@xonotic/core-team/Samual] has quit [Ping timeout: 264 seconds] 20130926 02:35:59-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20130926 02:45:08-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has quit [Quit: tomreyn] 20130926 03:03:08-!- justinzane [~justinzan@tiny.justinzane.com] has quit [Remote host closed the connection] 20130926 03:03:22-!- justinzane [~justinzan@tiny.justinzane.com] has joined #wesnoth-dev 20130926 03:05:42< justinzane> relating to the various surface_foo functions, what is the project's policy on introducing library dependencies? 20130926 03:06:53< shadowm> Only when absolutely necessary with prior discussion and consensus in the developers mailing list. (And IIRC, the dependencies should be easily available on Debian stable (and preferably oldstable right now, too).) 20130926 03:06:58-!- irker714 [~irker@ai0867.net] has joined #wesnoth-dev 20130926 03:06:58< irker714> wesnoth: flix wesnoth-old:master d3e24eef3a82 / data/ai/utils/default_config.cfg src/ai/recruitment/recruitment.cpp: Change behavior of recruitment_save_gold. http://git.io/fxyopg 20130926 03:08:23< flix> mattsc: I changed all things like discussed and played the first scenario of SotBE. It's better now. 20130926 03:10:09< justinzane> wesbot: mailint list 20130926 03:10:13< justinzane> wesbot: mailing list 20130926 03:11:04< justinzane> shadowm: any idea on the mentioned bug in button.cpp? 20130926 03:13:31< shadowm> src/widgets/button.cpp:165 for me is: disabledImage_.assign(scale_surface(disabled_image,location().w,location().h)); 20130926 03:13:41< shadowm> I don't see what the problem is. 20130926 03:15:02< shadowm> Oh, 167? image_.assign(scale_surface(button_image,button_image->w,button_image->h)); 20130926 03:15:18< shadowm> What is the bug, again? 20130926 03:25:24-!- cjhopman__ [cjhopman@nat/google/x-shvnubvjefhtevkn] has quit [Remote host closed the connection] 20130926 03:26:50-!- Samual [diotecktec@xonotic/core-team/Samual] has joined #wesnoth-dev 20130926 03:27:33-!- Samual_ [~dioteckte@xonotic/core-team/Samual] has quit [Ping timeout: 248 seconds] 20130926 03:42:57< justinzane> well, we are rescaling the button to the button's widht and the button's height. 20130926 03:43:20< justinzane> currently wasteful, and quite possibly wrong 20130926 03:44:33< justinzane> as I mentioned earlier, about half of all calls to scale_surface are pointless. 20130926 03:45:02< justinzane> playing HttT, that means that about 2.5% of used cycles are wasted. 20130926 03:45:32< justinzane> I'm presuming that that makes a difference on Android and other mobile platforms. 20130926 03:48:26< mattsc> flix: sounds good. I've thought about it some more also. Let's talk sometime tomorrow. 20130926 03:53:17-!- happygrue [~happygrue@wesnoth/developer/wintermute] has quit [Ping timeout: 268 seconds] 20130926 03:53:42< justinzane> so, shadowm, any clue whether the fix is to simply remove the redundant line or to change the 2md and 3rd arguments? 20130926 03:53:43< shadowm> justinzane: The first Android port does not use that code path AFAIK. No idea about the second, or the iOS port. They are all unofficial and developed independently. 20130926 03:54:11< justinzane> ok. 20130926 03:54:19< shadowm> scale_surface() is essentially a no-op when the target dimensions are identical to the source. 20130926 03:55:54< justinzane> from a logical perspective, yes... but then so is for(int i=0; i Only overhead I could see in that case is the construction of a new surface wrapper (which is essentially a special case of a reference-counting pointer type) and a redundant copy done if the compiler doesn't optimize the function's return operation. 20130926 03:57:02< justinzane> so you are sure that the intent is **really** not to scale the button at all? 20130926 03:57:17< justinzane> just a copy-paste error? 20130926 03:57:20< shadowm> The intent is surely to scale the button. 20130926 03:57:40< shadowm> Oh right, button_image's dimensions. 20130926 03:57:40< justinzane> So, then the bug is that the button is not being scaled, right? 20130926 03:58:10< shadowm> Yeaaaaah, my bad. There might be a bug there, or there might not be. 20130926 03:58:42< shadowm> No idea who last modified that code, but I bet it was at least 6 years ago back when GUI1 was a more prominent citizen. 20130926 03:59:14< justinzane> Since I'm both a newb and a lousy programmer, I thought someone else might want to take a look. :) 20130926 03:59:26 * shadowm checks git log -p. 20130926 03:59:38< shadowm> Or git blame, really. 20130926 04:00:01< shadowm> Last changed in 2005, yeah, that's really old. 20130926 04:00:59< shadowm> That path is for TYPE_CHECK, TYPE_IMAGE, TYPE_RADIO. None of those cases are broken atm, so I'd assume the intention is to not scale at all. 20130926 04:01:58< shadowm> So yeah, old code, that also explains why it's using the assign() method directly instead of the more readable = operator. 20130926 04:05:19< justinzane> Thanks. 20130926 04:16:21-!- Turuk [~Turuk@cpe-65-29-217-233.cinci.res.rr.com] has quit [Quit: Turuk] 20130926 04:23:48< justinzane> shadowm: I was just wondering if using a library like MagickCore/MagickWand, via a thread pool for pixmap manipulation operations might not give both better performance and better quality. And slightly shrink the codebase, possibly. 20130926 04:30:29-!- flix [~flix@37-5-10-145-dynip.superkabel.de] has left #wesnoth-dev [] 20130926 04:33:52-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20130926 04:34:09< shadowm> We generally prefer to keep dependencies to a minimum and do things our own way whenever possible. 20130926 04:36:04< justinzane> Would anyone be offended if I tried? 20130926 04:46:32< shadowm> You might want to discuss it in the mailing list first to avoid wasting efforts if the idea isn't approved. 20130926 04:47:49< shadowm> Also, don't be surprised if some of us sound extremely suspecting of optimization ideas. The last person who went overboard with optimizations left quite a mess to revert. 20130926 04:49:06< shadowm> The kind of mess that hurts maintainability and readability in favor of negligible performance gains. 20130926 05:00:42< justinzane> Right now, I'm not trying to "rice", rather just using gprof as a way to learn the codebase. And the Magick++ thing is just kinda for fun. 20130926 05:00:52 * justinzane brb, wife just came home 20130926 05:04:12-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 268 seconds] 20130926 05:23:31-!- Samual_ [diotecktec@xonotic/core-team/Samual] has joined #wesnoth-dev 20130926 05:26:14-!- Samual [diotecktec@xonotic/core-team/Samual] has quit [Ping timeout: 240 seconds] 20130926 05:28:17-!- Gambit [~derek@wesnoth/developer/grickit] has quit [Remote host closed the connection] 20130926 05:29:33-!- Samual_ [diotecktec@xonotic/core-team/Samual] has quit [Quit: The person who said nothing is impossible obviously never tried to slam a revolving door.] 20130926 05:31:03< justinzane> anyway, shadowm, I appreciate the feedback. 20130926 05:41:31-!- Samual [diotecktec@xonotic/core-team/Samual] has joined #wesnoth-dev 20130926 05:43:10-!- Samual is now known as Samunator 20130926 05:59:58-!- ancestral [~ancestral@174-20-209-41.mpls.qwest.net] has joined #wesnoth-dev 20130926 06:27:21-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20130926 06:40:00-!- Upth [~ogmar@c-71-193-56-99.hsd1.ca.comcast.net] has joined #wesnoth-dev 20130926 06:44:46-!- ancestral [~ancestral@174-20-209-41.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20130926 06:46:50-!- ancestral [~ancestral@174-20-209-41.mpls.qwest.net] has joined #wesnoth-dev 20130926 07:00:35-!- mattsc [~mattsc@154.20.32.246] has quit [Quit: Ciao] 20130926 07:04:52-!- EliDupree [~quassel@66-189-34-122.dhcp.oxfr.ma.charter.com] has quit [Ping timeout: 246 seconds] 20130926 07:23:38< irker714> wesnoth: Ignacio R. Morelle wesnoth-old:master 830867f51ff2 / images/icons/action/ (copy_25-active.png copy_25-pressed.png copy_25.png): Add placeholder icons of my own for a generic copy-to-clipboard action https://github.com/wesnoth/wesnoth-old/commit/830867f51ff2ca221a00afbbf3050470e166ff00 20130926 07:23:41< irker714> wesnoth: Ignacio R. Morelle wesnoth-old:master ea4788e0cfb8 / data/gui/default/widget/button_25x25.cfg: gui2/tbutton: Add 25x25 variants for browse/go and copy-to-clipboard actions http://git.io/6RtS-w 20130926 07:23:44< irker714> wesnoth: Ignacio R. Morelle wesnoth-old:master 78db17b89619 / src/ (CMakeLists.txt SConscript desktop_util.cpp desktop_util.hpp): Add functionality to launch the platform's file manager for a path http://git.io/2jd7BA 20130926 07:23:47< irker714> wesnoth: Ignacio R. Morelle wesnoth-old:master 1c414a30d65d / / (7 files in 3 dirs): gui2/tgame_paths: New dialog for displaying game paths in Preferences http://git.io/blyDhg 20130926 07:24:34< shadowm> Re 1c414a30d65d, whoever finds a better location and reports back to me wins a prize. 20130926 07:36:28-!- Ivanovic [~nils@wesnoth/developer/ivanovic] has joined #wesnoth-dev 20130926 07:53:15-!- Gallaecio [~quassel@84.120.112.34.dyn.user.ono.com] has joined #wesnoth-dev 20130926 08:14:23-!- Ivanovic [~nils@wesnoth/developer/ivanovic] has quit [] 20130926 08:14:52-!- rei4dan [~reinis@95.68.108.79] has quit [Ping timeout: 246 seconds] 20130926 08:15:43-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Quit: ____________________] 20130926 08:15:47-!- rei4dan [~reinis@95.68.108.79] has joined #wesnoth-dev 20130926 08:33:36-!- LordBob_ [~LordBob_@2a01:e34:ee82:47e0:21e:c2ff:fe01:261f] has joined #wesnoth-dev 20130926 08:46:37-!- boucman_work [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20130926 08:48:24-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20130926 09:21:33-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20130926 09:27:33-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 248 seconds] 20130926 09:43:06-!- ancestral [~ancestral@174-20-209-41.mpls.qwest.net] has quit [Quit: And that’s the end of THAT chapter.] 20130926 09:44:32-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has joined #wesnoth-dev 20130926 09:56:16-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20130926 10:23:52-!- irker714 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20130926 10:24:49-!- mjs-de [~mjs-de@d189237.adsl.hansenet.de] has joined #wesnoth-dev 20130926 10:26:09-!- H-Hour [~H-Hour@cpc7-sgyl35-2-0-cust428.18-2.cable.virginmedia.com] has joined #wesnoth-dev 20130926 10:41:58-!- markus_ [~mjs-de@g224187213.adsl.alicedsl.de] has joined #wesnoth-dev 20130926 10:46:04-!- mjs-de [~mjs-de@d189237.adsl.hansenet.de] has quit [Ping timeout: 264 seconds] 20130926 10:49:51-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 10:57:56-!- irker134 [~irker@ai0867.net] has joined #wesnoth-dev 20130926 10:57:56< irker134> wesnoth: Ignacio R. Morelle wesnoth-old:master 5d401b3b27b4 / changelog players_changelog: Update changelogs http://git.io/RVt8Gg 20130926 10:58:13-!- markus_ is now known as mjs-de 20130926 11:20:12< irker134> wesnoth: Ignacio R. Morelle wesnoth-old:1.4 087699509641 / configure.ac: configure: Don't require game-specific cruft when using --disable-game http://git.io/R0947A 20130926 11:20:15< irker134> wesnoth: Guillaume Melquiond wesnoth-old:1.4 c096793f087a / m4/boost.m4: Avoided usage of forward incompatible test. (Fix for bug #16693.) http://git.io/9p1dWQ 20130926 11:23:59-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has joined #wesnoth-dev 20130926 11:38:36-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20130926 11:56:28-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 240 seconds] 20130926 11:56:35-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 11:58:29-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Client Quit] 20130926 12:01:58-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 12:08:42-!- Octalot [~noct@host86-145-94-181.range86-145.btcentralplus.com] has joined #wesnoth-dev 20130926 12:15:58-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Remote host closed the connection] 20130926 12:17:19-!- DCW [~Thunderbi@cpc1-finc14-2-0-cust12.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20130926 12:20:56-!- vultraz [~chatzilla@124.109.10.167] has joined #wesnoth-dev 20130926 12:21:03-!- vultraz [~chatzilla@124.109.10.167] has quit [Changing host] 20130926 12:21:03-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20130926 12:43:25-!- happygrue [~happygrue@c-66-30-155-184.hsd1.ma.comcast.net] has joined #wesnoth-dev 20130926 12:43:25-!- happygrue [~happygrue@c-66-30-155-184.hsd1.ma.comcast.net] has quit [Changing host] 20130926 12:43:25-!- happygrue [~happygrue@wesnoth/developer/wintermute] has joined #wesnoth-dev 20130926 12:45:08-!- Kostic [~marko@85.202.113.216] has joined #wesnoth-dev 20130926 12:47:24-!- horon [~horon@nttkyo176024.tkyo.nt.ngn2.ppp.infoweb.ne.jp] has joined #wesnoth-dev 20130926 12:50:00-!- DCW [~Thunderbi@cpc1-finc14-2-0-cust12.4-2.cable.virginmedia.com] has quit [Quit: DCW] 20130926 13:02:51-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has quit [Ping timeout: 248 seconds] 20130926 13:54:30-!- DCW [~Thunderbi@cpc1-finc14-2-0-cust12.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20130926 13:56:17-!- esr [~esr@wesnoth/developer/esr] has quit [Quit: WeeChat 0.4.0] 20130926 14:05:57-!- Turuk [~Turuk@cpe-65-29-217-233.cinci.res.rr.com] has joined #wesnoth-dev 20130926 14:20:00-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has joined #wesnoth-dev 20130926 14:20:00-!- esr [~esr@static-71-162-243-5.phlapa.fios.verizon.net] has quit [Changing host] 20130926 14:20:00-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20130926 14:20:18-!- irker134 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20130926 14:27:16-!- flix [~flix@37-5-10-145-dynip.superkabel.de] has joined #wesnoth-dev 20130926 14:38:50-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 14:38:51-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Read error: Connection reset by peer] 20130926 14:43:22-!- DCW [~Thunderbi@cpc1-finc14-2-0-cust12.4-2.cable.virginmedia.com] has quit [Remote host closed the connection] 20130926 14:53:31-!- horon [~horon@nttkyo176024.tkyo.nt.ngn2.ppp.infoweb.ne.jp] has quit [Read error: Connection reset by peer] 20130926 14:54:01-!- horon [~horon@nttkyo176024.tkyo.nt.ngn2.ppp.infoweb.ne.jp] has joined #wesnoth-dev 20130926 15:06:49-!- Ard0nik [~ardonik@adsl-75-28-101-230.dsl.irvnca.sbcglobal.net] has quit [Ping timeout: 246 seconds] 20130926 15:15:41-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has joined #wesnoth-dev 20130926 15:19:09-!- Ard0nik [~ardonik@adsl-75-28-98-225.dsl.irvnca.sbcglobal.net] has joined #wesnoth-dev 20130926 15:28:05-!- Ganrao [Ganrao@cpe-65-189-245-210.woh.res.rr.com] has joined #wesnoth-dev 20130926 15:28:31-!- Vandal [Ganrao@cpe-65-189-245-210.woh.res.rr.com] has quit [Ping timeout: 246 seconds] 20130926 15:29:13-!- ToBeFree [ToBeFree@unaffiliated/tobefree] has quit [Ping timeout: 246 seconds] 20130926 15:31:12-!- mattsc [~mattsc@207.230.251.234] has joined #wesnoth-dev 20130926 15:35:58-!- ToBeFree [ToBeFree@unaffiliated/tobefree] has joined #wesnoth-dev 20130926 15:59:45-!- irker700 [~irker@ai0867.net] has joined #wesnoth-dev 20130926 15:59:45< irker700> wesnoth: mattsc wesnoth-old:master 7ad252e814a8 / data/campaigns/The_South_Guard/scenarios/ (06a_Tidings_Good_and_Ill.cfg 07b_Pebbles_in_the_Flood.cfg): The South Guard: fix missing ellipse issue for Sir Gerrick in 2 scenarios http://git.io/wsa5aQ 20130926 16:02:01-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20130926 16:03:31-!- horon [~horon@nttkyo176024.tkyo.nt.ngn2.ppp.infoweb.ne.jp] has quit [Quit: Leaving...] 20130926 16:09:26< irker700> wesnoth: flix wesnoth-old:master b08afe2f1a72 / / (4 files in 3 dirs): Change behavior of aspect recruitment_diversity. http://git.io/bvU52w 20130926 16:17:49< irker700> wesnoth: mattsc wesnoth-old:master 6f20df53aef4 / projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj: Update Xcode projectfile http://git.io/q7Jchw 20130926 16:18:35-!- Rhonda [~rhonda@anguilla.debian.or.at] has quit [Changing host] 20130926 16:18:35-!- Rhonda [~rhonda@wesnoth/developer/rhonda] has joined #wesnoth-dev 20130926 16:19:44-!- mattsc [~mattsc@207.230.251.234] has quit [Quit: Computer's napping] 20130926 16:39:40-!- mattsc [~mattsc@fw.hia.nrc.ca] has joined #wesnoth-dev 20130926 16:40:22-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has joined #wesnoth-dev 20130926 16:46:25< mattsc> flix: hi 20130926 16:51:51-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20130926 16:52:24< flix> mattsc: hi 20130926 16:52:32< mattsc> flix: I haven't replayed the scenario yet, but I have a couple thoughts that I'd like to run by you (for you to disagree with) 20130926 16:52:49< mattsc> flix: just a second ... 20130926 16:54:39-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20130926 16:56:24< mattsc> flix: so, after thinking some more about this I was wondering whether that threshold should be much higher (around 2 or so) or whether gold saving should maybe be entirely disabled by default against human players. 20130926 16:56:45< mattsc> I base this one two things: 20130926 16:57:53< mattsc> 1. When playing against the AI on an open map with mixed but broken terrain, I use it as a rule of thumb that I can win against an AI side that has roughly twice the gold I have. 20130926 16:58:48< mattsc> 2. The difficulty of playing against the AI on such maps is dealing with everybody arriving at the same time. It's usually much harder to play against opponents with large keeps. 20130926 17:00:01< mattsc> This is different, of course, on maps with bottlenecks or with clear dividing lines between good and bad terrain, but I'd say more maps fit that sort of description than not. 20130926 17:01:37< mattsc> Thus, on average, I'd say delayed recruiting by the AI would make playing a scenario easier for me rather than harder. 20130926 17:02:27< flix> mattsc: I see. It would be useful then to play such a scenario where the AI have a large amount of units and a big keep, to see if things got easier with save_gold activated. I can imagine though, that as long the AI has at least enough units to counter our 'wave' it could still be hard to play against it. 20130926 17:02:37< flix> mattsc: Do you have a specific scenario in mind? 20130926 17:04:20< mattsc> flix: not really. But, lots of mainline scenarios fit that description. S1 of IftU also is a prime example of a map where there isn't quite a clear line between terrains. 20130926 17:05:03< mattsc> flix: yes, if the AI has so many units that it cannot attack with all or most of them, I'd agree that saving gold would be an advantage. 20130926 17:05:28< mattsc> But I'd argue that that doesn't happen more than 50% of the time. 20130926 17:06:38< mattsc> Also: "as long the AI has at least enough units to counter our 'wave' it could still be hard to play against it" I agree also, but my first point up there is that this means 2 times as many units, at least. 20130926 17:07:34< mattsc> One of the main differences between playing against the AI and a human player is that the human does not throw units at you mindlessly, so the concept of a "first wave" is not quite the same. 20130926 17:08:22< mattsc> ... which is one reason why Fred does so much better against the AI than against human players. :P 20130926 17:08:31< Turuk> Delayed recruiting would make the scenario easier if there is one AI, but it could be beneficial to help stagger in scenarios with multiple enemy leaders. 20130926 17:09:02< mattsc> Turuk: agreed that there are cases when it would make it harder.My argument was 20130926 17:09:20< flix> mattsc: I definitely got your point and in general I have nothing against deactivating save_gold by default. But before I'd like to play such a scenario to see if and how much it gets easier. 20130926 17:09:38< mattsc> ... that the default should be with a high threshold for saving gold. There are already ways of changing this for specific scenarios. 20130926 17:09:53< Turuk> mattsc: Yup, I know you had it on average :P 20130926 17:10:05< Turuk> High threshold as in the AI will not save gold unless instructed otherwise? 20130926 17:10:41< mattsc> Turuk: yes - or not until it has "twice as many units" as the human player or something. 20130926 17:10:51< flix> Turuk: "High threshold" means that the AI will only save gold when it has much more units then the enemy. 20130926 17:11:19< Turuk> Gotcha, just trying to make sure I'm following correctly. :) 20130926 17:11:44< flix> Turuk: If you are interested, read this: http://wiki.wesnoth.org/AI_Recruitment#Aspect_recruitment_save_gold 20130926 17:11:47< mattsc> flix: from the top of my head, try S1of IfTU and use debug mode to change the gold of the AI to go through different "Scenarios" 20130926 17:12:16< flix> mattsc: okay, I'll do it (but not today) 20130926 17:12:34< mattsc> flix: that's a long complicated scenario though, I can probably come up with a better solution ... 20130926 17:12:58< Turuk> Interesting 20130926 17:13:11< mattsc> flix: actually, one of the MP maps with large amounts of starting gold might be better. Freelands is my favorite, of course. :) 20130926 17:14:00< flix> mattsc: But keep also in mind that "the threshold is high -> the AI has more units -> the income may be negative -> the AI won't switch to SAVE_GOLD" 20130926 17:14:48< mattsc> flix: yes, I know. I think that's what I would prefer. (As in, I think it's harder that way) 20130926 17:15:02< mattsc> ... on more maps than not. 20130926 17:15:34< mattsc> For the cases where it's different, I'd say the scenario author should modify the recruiting parameters by hand. 20130926 17:16:38< mattsc> flix: and just to compare, by "long and complicated scenario" up there I mean as compared to a typical MP map, not in absolute terms. :) 20130926 17:16:45< flix> mattsc: So setting the begin threshold to 2.0 should be equivalent to deactivate save_gold in most cases. (But again, in general I have nothing against it) 20130926 17:16:48< mattsc> s/compare/clarify 20130926 17:17:12< mattsc> flix: yes, I'd expect that to be true. 20130926 17:17:44< mattsc> flix: and keep in mind that this is an entirely theoretical discussion so far. Nothing beats actually trying it ... (which I will do, I just haven't had time yet) 20130926 17:18:33< mattsc> flix: how much experience playing Wesnoth do you have? 20130926 17:20:11< flix> mattsc: Well, during SoC I haven't played so much. But before SoC I played 5 campaigns on hard through (LoW for example). 20130926 17:21:40< mattsc> LoW isn't bad. :) I think it's indeed harder than some of the expert level campaigns. 20130926 17:22:17< mattsc> flix: I'm just asking because I know my playing skills have significantly improved in time (over a long time). 20130926 17:22:29< flix> mattsc: This one scenario with the 6 orc enemies is super hard. (I cheated a lot there ;) ) 20130926 17:22:42< mattsc> Scenarios that I used to find almost impossible to beat without cheating have become not just doable but easy ... 20130926 17:23:09< mattsc> flix: yes, that scenario is unreasonable, IMO, and should be changed. 20130926 17:23:45< mattsc> But the rest is also harder on average than, say, Sceptre of Fire. 20130926 17:25:12< flix> btw: I think this 6orc scenario could become more fun (and easier?) with save_gold activated. 20130926 17:27:05< mattsc> flix: that's probably true, but isn't the goal to make the AI play better, and therefore make it harder? (And then the scenario(s) should be balanced to adjust for that?) 20130926 17:28:26< flix> mattsc: no, making the AI harder was only one of 3 goals of mine: make it harder, make it more fun to play against, make it easy to configure 20130926 17:29:03< mattsc> I agree that "more fun" is the real goal, but in almost all cases I know, making it harder to play against will accomplish that goal. :) 20130926 17:29:20< mattsc> Make the AI better (=harder) and then adjust the scenario to make it more fun. 20130926 17:31:33< mattsc> flix: I think that LoW scenario can be made much more fun (in my very personal opinion, as everything I have said here) with a few easy WML changes. No need to adjust the AI at all (but a better AI is always a good thing). 20130926 17:31:45< flix> mattsc: Yes I agree. Under "more fun" I usually associate "recruit a big diversity of units". But having balanced scenarios against a good AI is "more fun" as well. 20130926 17:32:49-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 17:32:54< mattsc> flix: looks like we agree on all of this. And don't get me wrong, I think the new recruiting functionality is great. I'm just making a point that the save_gold threshold default should likely be higher than what we said last night. 20130926 17:35:14< flix> mattsc: No worries I got your point :) 20130926 17:35:18< mattsc> flix: btw, I think this should absolutely go into the release notes, with a (bold-faced) line that we need feedback from people about things that got better and things that need to be improved. 20130926 17:35:48< flix> mattsc: I note this on my todo-list. 20130926 17:36:37< mattsc> flix: in my experience with this, there's nothing like play testing by real people. A million games against another AI don't give you the same kind of feedback. 20130926 17:37:34< mattsc> flix: From what I have seen, the concepts are all good, they just need a bit of fine tuning. 20130926 17:39:22< flix> mattsc: I think one of the biggest improvements are those recruitment_instructions. They are really powerful and a scenario editor could completely control recruitment via WML now. 20130926 17:41:14< mattsc> flix: yes, absolutely. I think the default probably needs a higher threshold than we thought yesterday, then people should figure out which scenarios should get non-default instructions. 20130926 17:41:52< mattsc> The problem is going to be to find enough people who are interested and have the time... 20130926 17:42:07< flix> mattsc: true... 20130926 17:42:18< mattsc> I'd be willing to do it for one campaign, but I don't have the time to go through all of mainline. 20130926 17:42:50< flix> mattsc: I have to go in a minute. Anything else we should talk about? 20130926 17:43:19< mattsc> flix: anyways, I think this is great and that it will eventually increase the fun of playing at least some scenarios. But there will be some birthing pains... 20130926 17:43:23< flix> mattsc: I will play S1 of IftU tomorrow. 20130926 17:43:29< mattsc> flix: no, that's all I had. 20130926 17:43:54< mattsc> flix: I think it would be more efficient to use a smallish MP map to start with. 20130926 17:44:14< flix> mattsc: okay. I'll do. Bye! 20130926 17:44:30< mattsc> I think that scenario is a good one for testing this, but it takes quite some turns to test things. 20130926 17:44:39< mattsc> flix: Ciao 20130926 17:44:43-!- flix [~flix@37-5-10-145-dynip.superkabel.de] has left #wesnoth-dev [] 20130926 17:48:52< Turuk> mattsc: The problem is going to be to find enough people who are interested and have the time... 20130926 17:48:55< Turuk> Ding ding ding 20130926 17:48:56< Turuk> Need help? 20130926 17:55:59-!- thunderstruck [~thunderst@cpc5-sgyl29-2-0-cust174.sgyl.cable.virginmedia.com] has joined #wesnoth-dev 20130926 17:56:36< mattsc> Turuk: yes, that would be great! (hold on for a couple minutes though) 20130926 17:56:54< Turuk> Okay 20130926 18:00:59-!- boucman_work [~rosen@wesnoth/developer/boucman] has quit [Quit: Leaving.] 20130926 18:02:53-!- skyfaller [~skyfaller@wikipedia/Skyfaller] has quit [Remote host closed the connection] 20130926 18:03:58< crimson_penguin> anyone have an easy way to contact thespaceinvader? 20130926 18:04:06< crimson_penguin> his twitter account seems to have been hijacked 20130926 18:04:16< bumbadadabum> crimson_penguin: I suggest you email him 20130926 18:04:26< bumbadadabum> I think it's on his profile somewhere 20130926 18:07:36< Turuk> Sent him an email 20130926 18:08:37< crimson_penguin> thanks 20130926 18:11:03< zookeeper> crimson_penguin, what makes you think that it's hijacked? 20130926 18:13:01< crimson_penguin> zookeeper: he sent @frogatto a DM with just a link to a weightloss page 20130926 18:13:01< zookeeper> oh. 20130926 18:13:01< Turuk> I got a similar email 20130926 18:13:01< Turuk> well, email letting me know I had a "direct message" 20130926 18:13:01< zookeeper> so how does one hijack a twitter/whatever account anyway? 20130926 18:13:36-!- Samunator [diotecktec@xonotic/core-team/Samual] has quit [Read error: Connection reset by peer] 20130926 18:13:48-!- Samual [diotecktec@xonotic/core-team/Samual] has joined #wesnoth-dev 20130926 18:16:54-!- esr [~esr@wesnoth/developer/esr] has quit [Ping timeout: 264 seconds] 20130926 18:18:00-!- Ivanovic [~nils@frnk-590d9a42.pool.mediaWays.net] has joined #wesnoth-dev 20130926 18:18:00-!- Ivanovic [~nils@frnk-590d9a42.pool.mediaWays.net] has quit [Changing host] 20130926 18:18:00-!- Ivanovic [~nils@wesnoth/developer/ivanovic] has joined #wesnoth-dev 20130926 18:20:55-!- jetrel_laptop [~jetrel_la@184-100-95-129.mpls.qwest.net] has quit [Quit: jetrel_laptop] 20130926 18:21:11< mattsc> Turuk: hi, sorry, that was a lot more than a couple minutes... 20130926 18:22:19< mattsc> Turuk: so, flix's GSoC project was to replace the default recruiter by one that is better and more configurable. That's been done now. 20130926 18:23:01< bumbadadabum> mattsc: Has it been merged? 20130926 18:23:07< bumbadadabum> I can't wait to look into it 20130926 18:23:08< mattsc> The "problem" is that it has mostly been tested against the default AI and urgently needs human play testing. Also, some of the mainline scenarios might need to be rebalanced. 20130926 18:23:16< mattsc> bumbadadabum: yes, as of a few days ago. 20130926 18:23:23< bumbadadabum> oh sweet 20130926 18:23:25< mattsc> Turuk: are you set up to compile Wesnoth? 20130926 18:23:43< bumbadadabum> mattsc: What are some scenarios in particular? 20130926 18:24:01< mattsc> bumbadadabum: we don't know, that's the problem. :) 20130926 18:24:03< Turuk> mattsc: That sounds like an awesome project, and I can be 20130926 18:24:10< Turuk> It's been a while since I've done it 20130926 18:25:26< mattsc> bumbadadabum, Turuk: I played one scenario and immediately found a problem. But that's normal and it was easy to fix. What would be great is to have many people play as many different scenarios or MP maps as possible and send us feedback. 20130926 18:25:47< Turuk> mattsc: I can certainly power through some campaigns 20130926 18:26:05< bumbadadabum> I can certainly fail at getting through campaigns 20130926 18:26:28< mattsc> Turuk: well, if you could compile, you could test new changes right away, but if you don't want to, that's not really a problem either. 20130926 18:26:58< Turuk> mattsc: I don't mind, it would just take me a bit to get set up again 20130926 18:27:28< mattsc> Turuk, bumbadadabum: the easiest way to start is probably to try a couple MP maps, just because they are set up to be balances for both players (and it's easy to "get to the action"). 20130926 18:27:36< mattsc> Turuk: great! 20130926 18:27:50< bumbadadabum> mattsc: Just AI vs AI? 20130926 18:28:02< mattsc> But then, as I said, we also need to go through campaigns to see if there are any specific issues. 20130926 18:28:18< mattsc> bumbadadabum: no, specifically _not_ AI vs. AI. flix has done tons of that. 20130926 18:28:23< bumbadadabum> ok 20130926 18:28:45-!- jetrel_laptop [~jetrel_la@184-100-95-129.mpls.qwest.net] has joined #wesnoth-dev 20130926 18:28:46< bumbadadabum> Eh, I might not be the best person for this 20130926 18:28:59< bumbadadabum> Perhaps a more skilled player could do it better 20130926 18:29:02< mattsc> Turuk, bumbadadabum: I am going to start with SotBE, since that's "next on my list" anyway. 20130926 18:29:19-!- esr [~esr@wesnoth/developer/esr] has joined #wesnoth-dev 20130926 18:30:05< mattsc> bumbadadabum: One of the problems with the Wesnoth AI is that it should be fun for players of all skills. So no matter what your skill level is (I doubt that it's that bad anyway), it's important to get input from lots of people. 20130926 18:30:15< bumbadadabum> ok 20130926 18:30:28< Turuk> mattsc: what would be the challenge in not compiling? 20130926 18:30:37< mattsc> In fact, I had my AIs tested by some of the top ladder players at the beginning, and those guys are about the worst AI play testers you can imagine. :) 20130926 18:30:38-!- EliDupree [~quassel@66.189.34.122] has joined #wesnoth-dev 20130926 18:31:06< mattsc> Turuk: well, in that case you'd have to wait for 1.11.7. 20130926 18:31:08< bumbadadabum> Turuk: Resisting the urge to compile :p 20130926 18:31:28< Turuk> bumbadabum: Yes, only because then I'd have to wait until tonight :P 20130926 18:32:41< mattsc> Turuk: also, if changes were made to the source code (rather than to parameters in the data/ directory), you couldn't test those until the next release comes out. But it would still be useful. 20130926 18:35:34< Turuk> Hmm, an excellent point 20130926 18:35:37< Turuk> A compiling I will go 20130926 18:35:56< bumbadadabum> this is very weird 20130926 18:36:06< mattsc> Turuk, bumbadadabum: in any case, nothing beats human play testing for these kinds of things. (And don't get me wrong, having those top players test Ron and Fred was great, but they are just too good at finding the main weakness and pounding on them.) 20130926 18:36:25< bumbadadabum> I tried running my campaign, when I got a missing directory error because I forgot to add that 20130926 18:36:36< bumbadadabum> and after restarting wesnoth after adding it it wouldn't work 20130926 18:36:47< bumbadadabum> but it does after trying to load it on a different difficulty 20130926 18:37:35< mattsc> bumbadadabum: hmm ... 20130926 18:38:30< bumbadadabum> I suspect I might have made a mistake involving an #ifdef somewhere 20130926 18:38:39< bumbadadabum> but it should still give me an error 20130926 18:38:45< mattsc> Turuk: Great! And as I said, just going through mainline campaigns looking for problems or need for rebalancing would be very useful too. 20130926 18:38:48< bumbadadabum> and not just "Unknown Scenario: 00_Prologue"" 20130926 18:39:38< bumbadadabum> even weirder 20130926 18:39:46< mattsc> bumbadadabum: have you started it from the CL? There's almost always some sort of error message in the terminal in those cases. 20130926 18:39:53< bumbadadabum> when I run it from the terminal, it does work even on that difficulty 20130926 18:40:00< mattsc> ah. 20130926 18:40:45< Turuk> mattsc: I can do that, or seeing if it's now impossibly hard :P 20130926 18:41:29< mattsc> Turuk: well, the first scenario I tried (S1 of SotBE) had become trivially easy. So it can go both ways. :) 20130926 18:42:41< Turuk> Interesting, I'll have to remember that as well 20130926 18:42:58< bumbadadabum> Got it to work 20130926 18:43:06< bumbadadabum> by launching another campaign 20130926 18:43:11< bumbadadabum> then launching mine again 20130926 18:45:03< mattsc> Turuk: cool, thanks! 20130926 18:46:02< bumbadadabum> Wow 20130926 18:46:17< bumbadadabum> I ended my turn and now there are white X'es everywhere! 20130926 18:46:22< bumbadadabum> mattsc: What have you done? 20130926 18:46:50< mattsc> bumbadadabum: those are flix's Xes, not mine :) 20130926 18:46:57< bumbadadabum> ok 20130926 18:47:49< mattsc> bumbadadabum: that's debug output he has in his code. It doesn't happen if you're not in debug mode. And it needs to be turned off altogether before the next release, I'd say. 20130926 18:47:59< bumbadadabum> ok 20130926 18:48:16< bumbadadabum> Ok 20130926 18:48:23< bumbadadabum> I usually have debug mode on 24/7 20130926 18:48:25< bumbadadabum> so that explains 20130926 18:58:31-!- flash1900 [54a2ce4f@gateway/web/freenode/ip.84.162.206.79] has joined #wesnoth-dev 20130926 19:03:53-!- flash1900 [54a2ce4f@gateway/web/freenode/ip.84.162.206.79] has quit [Quit: Page closed] 20130926 19:15:44-!- happygrue [~happygrue@wesnoth/developer/wintermute] has quit [Ping timeout: 241 seconds] 20130926 19:19:59-!- anonymissimus [~chatzilla@HSI-KBW-149-172-228-192.hsi13.kabel-badenwuerttemberg.de] has joined #wesnoth-dev 20130926 19:22:16< anonymissimus> shadowm: serious problem here: std::vector::data() is apparently C++ 11 only (said here http://stackoverflow.com/questions/6485496/how-to-get-stdvector-pointer-to-the-raw-data) 20130926 19:29:56< anonymissimus> shadowm: MinGw knos it but MSVC 2008 doesn't yet (seems 2012 does) 20130926 19:30:23< anonymissimus> perhaps use wchar_t* ... = new ... 20130926 19:31:37-!- happygrue [~happygrue@wesnoth/developer/wintermute] has joined #wesnoth-dev 20130926 19:38:57-!- DCW [~Thunderbi@cpc1-finc14-2-0-cust12.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20130926 19:39:29-!- flash1900 [54a2ce4f@gateway/web/freenode/ip.84.162.206.79] has joined #wesnoth-dev 20130926 19:39:39-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has quit [Ping timeout: 248 seconds] 20130926 19:40:04-!- flash1900 [54a2ce4f@gateway/web/freenode/ip.84.162.206.79] has quit [Client Quit] 20130926 19:49:57-!- DCW [~Thunderbi@cpc1-finc14-2-0-cust12.4-2.cable.virginmedia.com] has quit [Ping timeout: 248 seconds] 20130926 19:56:25-!- gfgtdf [~chatzilla@c228097.adsl.hansenet.de] has joined #wesnoth-dev 20130926 19:56:47-!- Kostic [~marko@85.202.113.216] has quit [Quit: Kostic] 20130926 20:11:22< Espreon> Who deals with deleting wiki spam nowadays? 20130926 20:18:44< shadowm> anonymissimus: OK, I'll just generalize the windows_tray_notification.cpp method instead. 20130926 20:21:33< shadowm> Espreon: zookeeper, probably. 20130926 20:22:28< shadowm> I probably should update the registration questions list since Crab_ hasn't done any wiki admin stuff for a while AFAIK... 20130926 20:23:11-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20130926 20:25:37< Espreon> shadowm: OK, 'cause I did find some delicious wiki spam the other day. 20130926 20:26:04< Espreon> http://wiki.wesnoth.org/Lower_price_New_Orleans_Motels (it seems jamit found it too) ... http://wiki.wesnoth.org/On-line_Lodge_Concerns_Service 20130926 20:26:15< Espreon> zookeeper: ^ ... if you do indeed handle this. 20130926 20:28:01< irker700> wesnoth: Ignacio R. Morelle wesnoth-old:master bd2062c7d179 / projectfiles/CodeBlocks/wesnoth.cbp: CodeBlocks project update http://git.io/HPIueA 20130926 20:31:03< shadowm> Or maybe not, I don't want to rebuild everything. 20130926 20:31:32< shadowm> Sigh, the whole point of not constructing a std::wstring separately was to avoid a superfluous copy. :p 20130926 20:37:36< shadowm> I am _guaranteed_ that std::vector is always implemented using contiguous storage, right? 20130926 20:38:19< zookeeper> Espreon, deleted and banned 20130926 20:38:26< Espreon> Thanks. 20130926 20:39:43-!- Elvish_Hunter [6d3474ee@gateway/web/freenode/ip.109.52.116.238] has joined #wesnoth-dev 20130926 20:39:50< Elvish_Hunter> Hi all 20130926 20:40:21< Espreon> Hello, Elvish_Hunter. 20130926 20:40:52< Elvish_Hunter> Hi, Espreon 20130926 20:42:35< irker700> wesnoth: fendrin wesnoth-old:master 3c636c3163e9 / src/dialogs.cpp: Show the unit profile based on the variation_id. http://git.io/GU2Mfg 20130926 20:42:37< irker700> wesnoth: fendrin wesnoth-old:master 1679b4382f0e / src/ (unit_types.cpp unit_types.hpp): variation_id replaces the former variation_name. http://git.io/wLFf8Q 20130926 20:42:39< irker700> wesnoth: fendrin wesnoth-old:master c145247ba429 / src/mouse_events.cpp: Don't show active "disable" special weapons in the gui1 attack dialog. http://git.io/S4wjhQ 20130926 20:42:41< irker700> wesnoth: fendrin wesnoth-old:master 669f2d58fe18 / src/help.cpp: Show siblings and base units in the unit profile dialog. http://git.io/4JLxqw 20130926 20:42:43< irker700> wesnoth: fendrin wesnoth-old:master 88d8547caff9 / src/mouse_events.cpp: Insert some scopes to make the code more easy to read. http://git.io/fr_27w 20130926 20:42:45< irker700> wesnoth: fendrin wesnoth-old:master 5aa89dcd97bf / src/help.cpp: Basic support for base_unit sections. http://git.io/cCbItA 20130926 20:42:47< irker700> wesnoth: fendrin wesnoth-old:master a4f6249627a1 / src/actions/ (attack.cpp attack.hpp): Support for the disable weapon special. http://git.io/y4rbIg 20130926 20:42:49< irker700> wesnoth: fendrin wesnoth-old:master deda49a0d7e1 / src/help.cpp: Updates to the unit help browser. http://git.io/2lhYSg 20130926 20:42:51< irker700> wesnoth: fendrin wesnoth-old:master 41cb9ec3d04d / changelog: Changelog updates, related to help browser and unit variants. http://git.io/u0_oOQ 20130926 20:43:12< Elvish_Hunter> shadowm: I corrected my wmllint patch, by adding warnings for custom ellipses, as well as a magic comment # wmllint: no ellipsecheck 20130926 20:43:28< Elvish_Hunter> You can find it here: http://pastebin.com/3hcCD0Kq 20130926 20:43:32-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20130926 20:44:03< Elvish_Hunter> If it's OK for you, I'll push it. 20130926 20:44:54-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20130926 20:48:02< irker700> wesnoth: Ignacio R. Morelle wesnoth-old:master 671a57181cff / src/desktop_util.cpp: desktop_util: Use pointer to vector front() instead of data() result http://git.io/ssHA2w 20130926 20:48:42< shadowm> anonymissimus: I don't have a working VC++ 2008 or 2010 environment here, so I'll leave the build testing to you. ^ 20130926 20:49:01< shadowm> It really shouldn't fail. 20130926 20:51:09< shadowm> Elvish_Hunter: I don't know the wmllint codebase enough offer further critique, so I'll assume it's good. 20130926 20:51:15< shadowm> *enough to 20130926 20:51:55-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 20:52:14< shadowm> The directive addition is a good idea. 20130926 20:52:32< shadowm> Assuming it wasn't I who suggested it first. 20130926 20:52:43< shadowm> *me 20130926 20:53:01< Elvish_Hunter> OK then. I'll push it. Should any issue arise, I'll correct it. ;-) 20130926 20:54:10-!- lipkab [~the_new_l@host-91-147-212-174.biatv.hu] has joined #wesnoth-dev 20130926 20:55:05< shadowm> I still think unit types having a non-default default variation is a sign of poor WML-wise design. 20130926 20:55:30< shadowm> The sole fact that "non-default default" variations are now a thing is a big warning sign. 20130926 20:59:27< shadowm> fabi: Okay, so. 20130926 20:59:38< fabi> hi shadowm 20130926 20:59:56< shadowm> fabi: Why do we need a separate ~RS() function instead of merely making non-multiple-of-90 angles a special case of ~ROTATE()? 20130926 21:00:51-!- flix [~flix@37-5-10-145-dynip.superkabel.de] has joined #wesnoth-dev 20130926 21:00:52< fabi> Hmmm, that is just me who got the function name wrong. I used the already existing. Let me update the changelog. 20130926 21:01:17< shadowm> OK, you should update http://wiki.wesnoth.org/ImagePathFunctionWML#Rotate_Function too in that case. 20130926 21:02:00< shadowm> Since it already has the DevFeature1.11 template, just mention the changes as specific to 1.11.7 and later. 20130926 21:02:33< shadowm> Ah, the term in English is "right angle". 20130926 21:03:40< shadowm> No idea whether that can be applied to arbitrary 90n angles, though. 20130926 21:07:01< shadowm> fabi: Okay, so from the changelog I gather that variation_name -> variation_id doesn't have a compatibility path implemented. :/ 20130926 21:07:34< shadowm> Did you update wmllint to handle it? 20130926 21:08:02-!- Upth [~ogmar@c-71-193-56-99.hsd1.ca.comcast.net] has quit [Ping timeout: 264 seconds] 20130926 21:08:03< fabi> zookeeper proposed to take the variation_name when variation_id is missing. 20130926 21:08:28< fabi> To provide backwards compatibility. 20130926 21:08:31< shadowm> But that hasn't been committed yet, has it? 20130926 21:08:37< irker700> wesnoth: Elvish_Hunter wesnoth-old:master 257c8aec8837 / data/tools/wmllint: wmllint: implemented new sanity check for leader and nozoc ellipses http://git.io/MbFVkQ 20130926 21:09:12< fabi> shadowm: It is commited. It might even work :-) 20130926 21:09:21< shadowm> It isn't mentioned in the changelog. 20130926 21:10:12< shadowm> Also, do variations work with hide_help=yes? I use technical variations for non hide_help=yes units a lot in my campaign and I absolutely do not want to see those in the game help when not in debug mode. 20130926 21:11:17< shadowm> *does hide_help=yes work with variations? I [...] 20130926 21:11:33< fabi> I don't think so. 20130926 21:12:49< shadowm> Well that'd be extremely important for me. 20130926 21:13:40< fabi> Okay, but I am a little confused now. 20130926 21:14:05< fabi> There was no possibility to do so all the years? Or did I broke something? 20130926 21:14:51< shadowm> Variation support in the game help is new in 1.11.x. 20130926 21:15:33< fabi> I see. So you request a new feature? 20130926 21:16:01< shadowm> I'm not entirely sure what it is I am requesting yet because I'm looking at the in-game results. 20130926 21:16:30< shadowm> Ah right, I _did_ add hide_help=yes to technical variations in my campaign before. 20130926 21:17:01< fabi> That should have had no effect, or did it? 20130926 21:17:16< shadowm> And it _mostly_ works. The problem is that the help system will make the unit type entry a category even if no visible variations have been discovered: https://dl.dropboxusercontent.com/u/21371130/screenshots/wesnoth-help-variations-example.png 20130926 21:18:32-!- lipkab [~the_new_l@host-91-147-212-174.biatv.hu] has quit [Ping timeout: 268 seconds] 20130926 21:18:50< fabi> Okay, so you need me to check for "visible variants" when deciding if a unit will get a section or be a topic, right? 20130926 21:19:48< shadowm> Yes. 20130926 21:20:44< shadowm> "Visible variants" in this case refers to encountered variations (assuming we are tracking that already) that are not hide_help=yes. 20130926 21:21:14< fabi> no 20130926 21:21:26< shadowm> No? 20130926 21:21:32< fabi> variants are not tracked in the encountered list so far if irc 20130926 21:21:52< shadowm> Then that needs to be added (somehow?) too. 20130926 21:22:02< fabi> huh 20130926 21:22:08< fabi> I thought it was fine. 20130926 21:22:23-!- lipkab [~the_new_l@host-91-147-212-174.biatv.hu] has joined #wesnoth-dev 20130926 21:22:39< shadowm> Well, it breaks symmetry with the unit types discovery mechanism. 20130926 21:23:03< fabi> Good point. 20130926 21:23:28< fabi> I will have a look at it. 20130926 21:23:28< shadowm> For people who do not like the discovery system, there's always the advanced preferences option to disable it. 20130926 21:24:25< fabi> Sure. 20130926 21:24:51< fabi> My understanding of the variant concept just differs. 20130926 21:25:13< fabi> I thought that variants should be discovered together with the base unit. 20130926 21:25:47< fabi> And that would be my suggestion to fix the symmetry problem. 20130926 21:26:15< shadowm> I don't think that has to always be the case, e.g. if the unit type was implemented in such a way every variation is almost a completely different unit type. 20130926 21:26:56< fabi> Then you should use [base_unit] instead. 20130926 21:27:00< shadowm> Walking corpses in mainline are generally very different from each other. 20130926 21:27:17< shadowm> Not stat-wise, but rather in appearance and origins. 20130926 21:27:45< fabi> Yes 20130926 21:28:04< fabi> The walking corpses are a good example of a bad usage of the concept. 20130926 21:28:40< fabi> variants are meant to be used if you transform a unit between several "appearances" around. 20130926 21:28:51< fabi> But that is not the case with walking corpses. 20130926 21:29:07< fabi> You die and your unit changes into a completely different thing. 20130926 21:29:09-!- lipkab [~the_new_l@host-91-147-212-174.biatv.hu] has quit [Ping timeout: 248 seconds] 20130926 21:29:14< shadowm> I think it's a perfectly good implementation. It allows us WML coders to filter on a single unit type instead of having to enumerate a lot of different unit types. As I said, they are _almost_ the same in gameplay terms. 20130926 21:29:46< fabi> That is also possible with the base_unit concept. 20130926 21:30:14< shadowm> No, it is not. That would require them to be a lot of different unit types with distinct ids, which we would have to enumerate every time we wanted to filter on walking corpses. 20130926 21:30:54-!- lipkab [~the_new_l@host-91-147-212-174.biatv.hu] has joined #wesnoth-dev 20130926 21:31:59< fabi> shadowm: I am not sure if I have commited that yet. But I have a working filter for a units ancestors. Every waling corpse type would be based on walking corpse and thus can be filtered. 20130926 21:32:55< shadowm> We don't need to have "Surname Walking Corpse" units in the game UI either. 20130926 21:34:08< fabi> hide_help=yes? 20130926 21:34:28< shadowm> Then you'd be going back to the status quo from 1.10.x and wasting everyone's time. 20130926 21:35:00< shadowm> Help support for variations was suggested with the walking corpses case in mind. 20130926 21:35:53< fabi> hide_help=yes would only disable the extra "Surname Walking Corpse" entry. 20130926 21:36:28< fabi> You can still reach them from the base unit which is not the 1.10.x status quo but the one from 1.11 before my last commit. 20130926 21:37:01< shadowm> Derivative units shouldn't be lumped together in the help system either. 20130926 21:37:31-!- lipkab [~the_new_l@host-91-147-212-174.biatv.hu] has quit [Ping timeout: 248 seconds] 20130926 21:37:36< shadowm> I have my own use cases for that where they are similar yet different enough to warrant completely separate help entries. 20130926 21:38:03-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 248 seconds] 20130926 21:38:25< fabi> lumped together? 20130926 21:38:47< shadowm> That's what you are suggesting. "You can still reach them from the base unit". 20130926 21:38:58< fabi> Can you be more specific? http://www.youtube.com/watch?v=PusCpQIbmCw 20130926 21:39:32< shadowm> I think I am the one who should be asking that question, not you. 20130926 21:40:07< shadowm> You suggested "you can still reach them from the base unit". I can only assume this means you intend to lump derivative units together in the same way that variations are currently handled in the help system. 20130926 21:40:35< fabi> Indeed. But that feature is still not implemented. 20130926 21:40:46< fabi> What I already implemented is a link to the base unit. 20130926 21:40:57< shadowm> Then you are just being silly and you want to duplicate the variation mechanism under a different name for no reason at all. 20130926 21:41:18< shadowm> zookeeper, help me. 20130926 21:41:25< zookeeper> what 20130926 21:41:34< zookeeper> i need a brief 20130926 21:41:39< zookeeper> too much to read 20130926 21:42:24< fabi> shadowm: Calm down :-) 20130926 21:42:57< shadowm> Maybe once you can explain why you can't use [variation] for this instead. 20130926 21:43:01< fabi> I have a rough idea about the different concept of [base_unit] and [variant]. 20130926 21:43:34< shadowm> Just to make things clear, every time you said "variant" you meant [variation], not a new [variant] tag I somehow never heard of before, right? 20130926 21:43:47< fabi> right 20130926 21:44:14< fabi> We talk about [variation]. 20130926 21:44:19< fabi> And [base_unit]. 20130926 21:44:31-!- stikonas_ [~gentoo@cpc19-sgyl27-2-0-cust58.18-2.cable.virginmedia.com] has joined #wesnoth-dev 20130926 21:44:32-!- stikonas_ [~gentoo@cpc19-sgyl27-2-0-cust58.18-2.cable.virginmedia.com] has quit [Changing host] 20130926 21:44:32-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 21:45:03< shadowm> So why do you want two separate mechanisms to _the same thing_? 20130926 21:46:37< fabi> I am not right aware that do so. 20130926 21:46:43< fabi> I do so. 20130926 21:47:05-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Client Quit] 20130926 21:47:24< shadowm> I'm not sure what that's supposed to mean. 20130926 21:47:31-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 245 seconds] 20130926 21:47:46< fabi> variation and base_unit are not the same thing. 20130926 21:48:00< fabi> Nor are the mechanisms around them. 20130926 21:48:03< shadowm> But you implied you want both to group units together in the help system. 20130926 21:48:34< fabi> I want to implement a link to the parents. 20130926 21:48:34< shadowm> OK, so I had a look at the help system right now and I found this example of a derivative unit https://dl.dropboxusercontent.com/u/21371130/screenshots/wesnoth-help-derivative-unit.png 20130926 21:48:49< shadowm> Here's the big problem with it. [base_unit] should be an implementation detail and not a user-facing feature. 20130926 21:49:51< shadowm> What is the user supposed to understand as a "base unit" in cases where the units are different enough? (This particular usage of base_unit is merely to avoid copy-pasting a heap of image paths and animations.) 20130926 21:50:25< fabi> Oh yes. Now I get what you are telling me. 20130926 21:51:21< fabi> I agree that the base unit link makes only sense of the unit_base system is used in a special way. 20130926 21:51:24-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 21:51:40< fabi> s/of/if 20130926 21:52:29< fabi> It will be made optional, that code is not quite ready yet. 20130926 21:53:12< fabi> But in the case of the Errant Sould I think the link is not misleading. 20130926 21:53:58< shadowm> It is not misleading but it doesn't make sense. 20130926 21:54:28< shadowm> Ghosts and Errant Souls appear together in the same scenario, except that ES are only controlled by an AI player and Ghosts by the human player. 20130926 21:55:21< shadowm> They are completely different units (except for the graphics because I didn't want to go and make cheap static graphics for an L0 Ghost that is only used for one scenario) with no obvious game-wise relationship. 20130926 21:55:33< shadowm> Except for that link that exposes an implmentation detail to the user. 20130926 21:55:52< fabi> Yeah, you do not like the base unit link in your use case. I was aware from the start of the implementation that this link system must be made optional. 20130926 21:56:38< shadowm> We have three systems for linking units together in the help system already: race, advancements, and variations. 20130926 21:57:08< shadowm> Adding another one (that I'll insist is merely an implementation detail for coders) is just excessive. 20130926 21:58:45< fabi> I have a perfect fine use case. 20130926 22:00:35< fabi> some show_base_unit_help=no attribute can guard it nicely. 20130926 22:00:57< shadowm> I'm holding my breath awaiting a description of this "perfect (sic) fine use case". 20130926 22:01:58< shadowm> Yes, I know we can spam additional help-controlling options forever if necessary, and increase code and usage (for WML coders) complexity this way. 20130926 22:03:13< fabi> Indeed. 20130926 22:03:55< shadowm> Proper API design requires establishing certain limits. 20130926 22:06:00< shadowm> I'm sure you know that and that I don't need to spell it out, but somehow you still seem to want to blur the lines delimiting standalone unit types, derivative unit types, and variations further? 20130926 22:06:03< fabi> The [base_unit] system can be used in ways which make the link to the parent be useful. 20130926 22:06:58< fabi> I think making variations discoverable by themselves spoils the lines you speak about. 20130926 22:07:21< fabi> The link is just a link that you can make appear when it makes sense. 20130926 22:07:34< shadowm> How so spoil? And how is that different from making them all visible by default? 20130926 22:07:53< shadowm> (And why aren't races and advancements (or variations) sufficient for your ends? I am still holding my breath.) 20130926 22:07:53< fabi> We speak about concepts. 20130926 22:08:37< fabi> Okay, you remember that I introduced recursion in the unit building process? I have a complex unit tree. 20130926 22:09:20< shadowm> Yes, but please assume that I'm Jane the User for this discussion and that I do not know or care about the underlying WML (yet). 20130926 22:09:20< fabi> variations, advancements can only be leaves in that tree. 20130926 22:09:35< Elvish_Hunter> Well, now I have to go. Bye! 20130926 22:09:38< shadowm> (I probably also don't know any programming concepts yet.) 20130926 22:09:45-!- Elvish_Hunter [6d3474ee@gateway/web/freenode/ip.109.52.116.238] has quit [Quit: Ciao!] 20130926 22:09:47< shadowm> (I'm here to play a game, after all.) 20130926 22:10:28-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20130926 22:10:37< fabi> Well, if you are Jane and the campaign Jane plays does not have a unit tree system she will not see any base unit link. 20130926 22:11:06< shadowm> We are clearly interested in the case where it does. 20130926 22:11:28< fabi> Okay, then please have a look at my codebase. 20130926 22:11:33< shadowm> ... noting that races and advancements are a pre-existing tree system. 20130926 22:11:49< shadowm> Oh, no, no, I clearly said I do not know or care about the underlying WML. 20130926 22:12:55< fabi> I guess a proper use case is pretty obvious. 20130926 22:14:13-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 22:14:20< fabi> Titan --> Heavy_Aircraft_Carrier --> Heavy Ship. 20130926 22:14:43< fabi> A simple one dimensional unit tree. 20130926 22:15:09< shadowm> I don't really know what the first and last ones are, but it looks like an advancement ((advance_to)) progression to me? 20130926 22:15:18< fabi> No. 20130926 22:15:26< shadowm> What is it then? 20130926 22:15:42< fabi> The unit "Titan" is a heavy aircraft carrier which is a heavy ship. 20130926 22:16:06< shadowm> What. ((Said Jane the User.)) 20130926 22:16:22< shadowm> How is this relevant to me as a player? 20130926 22:18:13< fabi> Do I really have to explain that? 20130926 22:18:19< fabi> Come on. 20130926 22:18:26< shadowm> Well, alternatively you could explain why using [race] isn't an option. 20130926 22:19:08< fabi> race does not provide a tree. 20130926 22:19:14< fabi> With multiple inheritance. 20130926 22:19:37< fabi> you can just use it to build a group. 20130926 22:20:25< shadowm> So I take it that you are abusing [base_unit] to build groups and it's just by sheer coincidence that your units are programatically related. (If they are at all.) 20130926 22:21:08< shadowm> Wouldn't a [see_also] section or such be a much more general and convenient method? 20130926 22:21:43< shadowm> (Bonus points if that allows linking to custom help topics that aren't units.) 20130926 22:22:12< shadowm> I mean, instead of shoehorning [base_unit] et al's semantics to do pretty much the same thing. 20130926 22:22:33< fabi> I do not agree. 20130926 22:22:45< fabi> You got something wrong there. 20130926 22:24:05< shadowm> I'm holding my breath again. 20130926 22:24:14< fabi> I really want a link system between parent and child units in the [base_unit] system. 20130926 22:24:41< fabi> I have a really good use case and it is not a big deal being optional and disabled by default. 20130926 22:25:05< fabi> The [base_unit] tag only features a single id= attribute, another one won't hurt. 20130926 22:25:10-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20130926 22:25:14-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20130926 22:25:58< shadowm> Hm, yes, you want that for your mod. I also want GL shaders and real-time events for my add-on's sequel. :/ 20130926 22:26:06< fabi> You should hold your breath, for discussing with me the more game spoiling features I plan to introduce soon, this one is only little thing not worth the effort. 20130926 22:26:33< shadowm> "Game-spoiling" sounds incredibly negative and I hope you are not being serious. 20130926 22:27:02< shadowm> Or that you are misusing a word. Either one would be reassuring. 20130926 22:27:09< fabi> Well, I had to do some stuff to the unit_map class for my cargo system. 20130926 22:27:32< fabi> I guess that is the most critical change to Wesnoth I ever attempted. 20130926 22:27:36< shadowm> Whoah whoah, there, I'm Jane the User again. I don't know what unit_map is and I don't care about it. 20130926 22:27:52< fabi> That is the right spirit. 20130926 22:28:01< shadowm> (Although shadowm the Wesnoth Developer and shadowm the Wesnoth Content Creator don't know or care either.) 20130926 22:28:15< fabi> I love your attitude problem. 20130926 22:28:27< shadowm> (Unless we end up facing an O(n^n) situation or something.) 20130926 22:29:07< fabi> The whole thing concentrates around allowing only one unit per hex field. 20130926 22:29:40< shadowm> If you are trying to say "hey I decided Wesnoth should be an anything engine", please reconsider. 20130926 22:30:28< fabi> anything hex field related 20130926 22:30:32< fabi> engine 20130926 22:30:35< shadowm> I'm sure you'd find it more worthwhile to start a new and more flexible game engine (or reuse anura) for that end instead of having these long and tedious discussions with me and everyone else. 20130926 22:31:24< shadowm> Wesnoth right now needs more problem solving rather than creating new problems. 20130926 22:31:50< zookeeper> that's what i always try to tell him. 20130926 22:32:01< fabi> No, I like our little debates. 20130926 22:32:54< fabi> zookeeper: By the way, I have implemented your feature request. 20130926 22:33:21< fabi> zookeeper: [specials] [disable] is now a new weapon special. 20130926 22:33:52-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has joined #wesnoth-dev 20130926 22:34:30< fabi> shadowm: What kind of problems do you want to get fixed? 20130926 22:37:30< fabi> shadowm: I guess fixing the incomplete support for variants is a nice attempt on solving some Baustellen. 20130926 22:39:14< shadowm> Various chronic usability and UX issues (including, but not limited to poor WML error reporting support, poor UI design consistency, missing obvious features, subpar support for higher marketshare platforms, incomplete or broken platform integration), inflexibilities revolving around the add-ons infrastructure (both in the networking and local management fronts), missing or incomplete commonly used WML features, stability and ... 20130926 22:39:20< shadowm> ... performance issues in general... 20130926 22:39:45< shadowm> I could go on, but that's a pretty substantial list already. 20130926 22:40:01< shadowm> A meta issue would be the project's lack of organization and direction. 20130926 22:40:07< fabi> Indeed. 20130926 22:40:16< fabi> That was the next thing I wanted to say. 20130926 22:40:41< fabi> It as a political problem. 20130926 22:40:44< shadowm> Then there's the lack of incentive for players for trying out development versions or new stable versions (i.e. no new game content besides art updates). 20130926 22:41:57< shadowm> But yeah, while we are concerned about stability and performance you decide that the game engine should no longer be specifically designed for Wesnoth, without considering all the ramifications of breaking the one-unit-per-location guarantee. 20130926 22:42:17< fabi> I did consider it. 20130926 22:42:49< fabi> The invariant of only one unit per hex field is a big value. 20130926 22:44:05< fabi> The trick is to not break it but still allow transported units to live on. 20130926 22:44:34< shadowm> Oh, we are going back to _that_? I though we last had that conversation around early 2012. 20130926 22:45:40< shadowm> I remember saying at the end that making the theme UI more easily manipulated by WML/Lua and allowing WML/Lua to take care of storing units as aggregates of other units (amongst a lot of other possible patterns for that and other use cases) would be much more appreciated than serving a single use case. 20130926 22:45:57< shadowm> *easier to be manipulated 20130926 22:46:54< shadowm> And that of course would go along the way of modernizing/replacing the theme UI, which would do a service to even _more_ people. 20130926 22:47:00< shadowm> Ah, how great all that would be. 20130926 22:47:28< fabi> Hmmm yes. 20130926 22:47:43< fabi> Sounds like a time far in the future. 20130926 22:48:01< fabi> For now a lua implementation is just difficult. 20130926 22:48:02< shadowm> Imagine if we could integrate inventory systems too for that 90% of the content creation community who isn't interested in making mods with rideable units or vehicles. 20130926 22:48:16< zookeeper> fabi, oh, that's cool. 20130926 22:48:43< shadowm> So yeah, why does this require changing unit_map instead of units themselves? 20130926 22:48:45< fabi> zookeeper: But I lost the bug report. Should have mentioned him fixed in the commit. 20130926 22:49:59< fabi> shadowm: Transported units need to considered for game events, they need to count for upkeep and so on. The best solution to that is making them part of the unit_map. 20130926 22:50:04< shadowm> I am asking just out of curiosity. As far as I'm concerned, unit_map is a blackbox associative container mapping locations to single units. 20130926 22:50:54< shadowm> Riiight, that'd be the 'best' solution for people who can hack in the game engine. Everyone else would consider side income adjustments in WML/Lua the best solution. 20130926 22:51:51< fabi> Poor people. 20130926 22:52:01< shadowm> Oh, hey, I just remembered I currently do something ugly in WML/Lua because I acknowledge it violates game rules: overriding the amount of XP granted from attacks. 20130926 22:52:52< shadowm> I wish I could ignore my conscience and go and implement an combat_success_xp_factor,combat_failure_xp_factor attribute pair or something instead of doing that. 20130926 22:53:07-!- ancestral [~ancestral@174-20-209-41.mpls.qwest.net] has joined #wesnoth-dev 20130926 22:53:14< fabi> I think you should. 20130926 22:54:06< shadowm> I also made unkillable-except-when-they-are units using ugly WML/Lua. I should probably add an immortal= attribute to units too. 20130926 22:54:32< fabi> sounds good 20130926 22:54:39< zookeeper> no. 20130926 22:54:49< fabi> :-) 20130926 22:55:04< shadowm> (Well, it is more reasonable, I don't care what zookeeper says, but I have to do without it because the unit class is horrible and I'd rather gouge my eyes out than hack in there.) 20130926 22:56:08< ancestral> …would be kinda fun if I could do HP=∞ 20130926 22:56:11< ancestral> :-P 20130926 22:56:40< shadowm> It's kind of important for my use case that the current hitpoints are an integer value and not a non-number. 20130926 22:56:46< fabi> I like to have regeneration working with % instead of total amounts. Or can that already be done? 20130926 22:57:10< shadowm> Not AFAIK without auxiliary events. 20130926 22:58:53< fabi> zookeeper: I am not quite sure about the syntax. Are you fine with just [disable] being a subtag of [specials]? 20130926 22:59:10< zookeeper> fabi, sure, works for me. 20130926 23:00:14< fabi> zookeeper: Cool, can you give me the link to the FR again, please? Then I can take care about closing it. 20130926 23:01:11< zookeeper> http://gna.org/bugs/?8813 20130926 23:06:16< fabi> Thank you. 20130926 23:07:08< shadowm> Unless $this_unit works in the ability tag. In that case something like $($(this_unit.max_hitpoints) * 0.8) would work. 20130926 23:07:24< shadowm> I mean $($this_unit.max_hitpoints * 0.8). 20130926 23:08:13-!- ancestral [~ancestral@174-20-209-41.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20130926 23:10:13< gfgtdf> shadowm: so the abilities use vconfigs? i thought they dont. 20130926 23:11:51< fabi> gfgtdf: Yes, I think you are right. 20130926 23:16:45-!- gfgtdf_ [~chatzilla@f054142180.adsl.alicedsl.de] has joined #wesnoth-dev 20130926 23:19:43-!- gfgtdf [~chatzilla@c228097.adsl.hansenet.de] has quit [Ping timeout: 245 seconds] 20130926 23:19:55-!- gfgtdf_ is now known as gfgtdf 20130926 23:27:56< shadowm> gfgtdf: Yeah, I have no idea how they are implemented. 20130926 23:28:39< shadowm> Hence I was speaking in conditionals. 20130926 23:29:45-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [] 20130926 23:40:07-!- thunderstruck [~thunderst@cpc5-sgyl29-2-0-cust174.sgyl.cable.virginmedia.com] has quit [Quit: Leaving] 20130926 23:40:31< irker700> wesnoth: fendrin wesnoth-old:master cd69ae8e9597 / changelog: Fixed wrong reference to a unit path function. http://git.io/14Fguw 20130926 23:42:45-!- Turuk [~Turuk@cpe-65-29-217-233.cinci.res.rr.com] has quit [Quit: Turuk] 20130926 23:42:51-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has quit [Quit: Bye] 20130926 23:43:18-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has joined #wesnoth-dev 20130926 23:47:31-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 245 seconds] 20130926 23:47:36-!- stikonas__ [~gentoo@46.246.47.34] has joined #wesnoth-dev 20130926 23:50:13-!- Gambit [~derek@wesnoth/developer/grickit] has joined #wesnoth-dev 20130926 23:53:08-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has quit [Ping timeout: 240 seconds] --- Log closed Fri Sep 27 00:00:50 2013