--- Log opened Fri Mar 21 00:00:07 2014 20140321 00:04:53-!- mjs-de [~mjs-de@f048101121.adsl.alicedsl.de] has quit [Remote host closed the connection] 20140321 00:22:34-!- A_Guy [925f62f1@gateway/web/freenode/ip.146.95.98.241] has quit [Quit: Page closed] 20140321 00:24:58< shadowm> Aishiko: Instead of a mixed reset you should've used git rebase -i or git commit --amend (the latter is easier since it was a change to the last commit), see the result: https://github.com/Aishiko/wesnoth/commit/c288fcb203ce6d51f59712055c6843b6a7442aeb 20140321 00:25:40< shadowm> The commit is correct but it's on top of the previous one with the same message. 20140321 00:26:15< Aishiko> ohh, well it was the last 2 actually 20140321 00:26:56< shadowm> Aishiko: In commit https://github.com/Aishiko/wesnoth/commit/b7ce5ffcf4cc76597c38e461ed0e0e31470d43b3 you are reversing the previous logic. 20140321 00:27:38< shadowm> The original logic is equivalent to !blank(), not blank(). 20140321 00:28:37< Aishiko> oops 20140321 00:29:12< shadowm> That one you can easily amend. 20140321 00:29:15< Aishiko> that might explain the bug I found 20140321 00:30:49< Aishiko> well that really needs to be an if else statement anyway 20140321 00:31:43< shadowm> Uh, actually, what's going on there? 20140321 00:32:21< shadowm> Looking at the original in the diff, you are assigning twice, the second time using the default value of 0 instead of -1. 20140321 00:32:26< Aishiko> I made a typo, it really should be if its blank give it -1 else give it whatever you found 20140321 00:32:44< shadowm> But you don't need to do that. 20140321 00:33:03< shadowm> cfg["foo"].to_int(-1) yields -1 if the attribute foo is not a valid integer, if it's empty, or it it's missing. 20140321 00:34:15< shadowm> However, the point is to check first whether the recall_cost attribute is specified and otherwise use the recall_cost of the unit_type. 20140321 00:34:43< shadowm> So if(cfg.has_attribute("foo")) { foo_ = cfg["foo]".to_int(-1); } 20140321 00:35:18< shadowm> s/foo/recall_cost/g 20140321 00:35:37< shadowm> This is assuming recall_cost_ was set to the unit_type's recall cost beforehand, otherwise yeah you need an else branch. 20140321 00:37:31-!- irker886 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20140321 00:40:01-!- spoffy [~spoffy@152.78.175.8] has quit [Ping timeout: 240 seconds] 20140321 00:40:35< Aishiko> I was noticing that and trying to figure out why I had done that, I wanted to figure it out before I pointed it out 20140321 00:43:27< Aishiko> Okay removing the first if and going with !cfg on the second totally fixed it 20140321 00:43:37-!- bagzie [~bag@85-76-148-7-nat.elisa-mobile.fi] has quit [] 20140321 00:46:40< shadowm> Uh, the second used the default argument to to_int(). 20140321 00:47:02-!- neXyon_ [~neXyon@85-127-52-220.dynamic.xdsl-line.inode.at] has quit [Quit: bye] 20140321 00:47:31-!- sachith500|2 [~kvirc@112.135.194.51] has joined #wesnoth-dev 20140321 00:47:45< shadowm> (Or more accurately, it used an implicit cast to int, which calls to_int() with the default argument.) And the point was to call to_int(-1)... 20140321 00:49:41< Aishiko> actually in this case it was to take whatever is in cfg["recall_cost"] if its not empty/blank otherwise just carry on. 20140321 00:50:10< shadowm> Okay, so you are still using blank(). 20140321 00:51:05< Aishiko> yes, removing the first if (not needed) and changing the logic back to !cfg will make it work correctly and use cfg[""] correctly as well 20140321 00:52:56< shadowm> I still think to_int(-1) should handle the case where the attribute is not missing/empty and is set to a value that isn't a valid integer. 20140321 00:53:49< shadowm> Probably. Maybe. The underlying implementation is a bit involved and I haven't ever used the Boost library it leverages. 20140321 00:58:03< shadowm> Using if(cfg.has_attribute("recall_cost")) { recall_cost_ = cfg["recall_cost"].to_int(-1); } as I suggested would then run the block only when the recall_cost attribute is missing, meaning the following: 20140321 00:58:41< shadowm> 1) Because the check is done at the config object, this approach is slightly more optimal in the event that the "recall_cost" attribute doesn't exist and cfg is n 20140321 00:58:55< shadowm> not const, which normally causes the attribute to be automatically created empty. 20140321 01:00:15< shadowm> 2) If recall_cost is empty, it defaults to -1 rather than copying the unit_type's recall_cost. This I'm not sure would fit with your design. 20140321 01:01:37< Aishiko> actually the idea was that the unit would inherit the recall_cost from the unit_type, but otherwise if given a specific recall_cost in a scenario keep that one 20140321 01:01:50-!- Youngoli [~Youngoli@97.65.103.250] has joined #wesnoth-dev 20140321 01:02:17< shadowm> (cfg["foo"].blank() causes the attribute "foo" to come into existence in some way because that's what the non-const version of config::operator[]() does; this before the call to config::attribute_value::blank() is made.) 20140321 01:03:00< Aishiko> which is why in advance_to() I check the current recall_cost with the old unit_type's before assigning, to determine if it should 20140321 01:03:26< Aishiko> ohh I think I know what your saying 20140321 01:03:41< shadowm> Aishiko: Doesn't recall_cost=-1 in [unit] achieve the same goal? 20140321 01:03:58-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 240 seconds] 20140321 01:04:03-!- stikonas_ [~gentoo@46.246.43.6] has joined #wesnoth-dev 20140321 01:04:03-!- stikonas_ [~gentoo@46.246.43.6] has quit [Changing host] 20140321 01:04:03-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140321 01:04:17< Aishiko> shadowm, you mean the unit's cfg file? 20140321 01:04:27< shadowm> I mean in [unit]. 20140321 01:05:03< Aishiko> it does 20140321 01:05:18< shadowm> [unit_type] is where you'll usually (but not always because Wesnoth does not enforce path conventions for WML like that) find the unit type definition, but single unit instances will usually (same as before) be found in a scenario. 20140321 01:05:59< shadowm> The [unit_type] tag used to be [unit] before 1.5.x; it was changed precisely so one could refer to either unambiguously. 20140321 01:06:55< shadowm> Oh god, it's been so long. 20140321 01:07:18< shadowm> Anyway that's a useless history fact. 20140321 01:08:25< Dugi> Goodbye, guys. 20140321 01:08:56< Aishiko> but I thought that by putting recall_cost_(cfg["recall_cost"].to_int(-1)), into the unit on line 228 that I had taken care of assigning -1 to anything that was blank or empty 20140321 01:09:01< Aishiko> bye Dugi 20140321 01:09:17< shadowm> Waaaaaaaait. 20140321 01:09:30< shadowm> This in the unit class constructor? 20140321 01:09:34< Aishiko> yes 20140321 01:10:03< Aishiko> is that the wrong place of it? 20140321 01:10:51< shadowm> No. 20140321 01:10:57< Aishiko> it looked to me to be the right place for it 20140321 01:11:13< shadowm> However, is it just me or you are assigning the value of cfg["recall_cost"] to recall_cost_ multiple times in the same constructor in different ways? 20140321 01:11:54< shadowm> https://github.com/Aishiko/wesnoth/blob/b7ce5ffcf4cc76597c38e461ed0e0e31470d43b3/src/unit.cpp#L228 <- line 228. 20140321 01:12:05< Aishiko> your right, how did I miss that 20140321 01:12:08< shadowm> Then line 359. 20140321 01:12:23< shadowm> Then 476. 20140321 01:12:43-!- Dugi [93fbd156@gateway/web/freenode/ip.147.251.209.86] has quit [Ping timeout: 245 seconds] 20140321 01:13:21< Aishiko> I think what happened is I forgot to remove something that didn't work 20140321 01:15:57< Aishiko> the block at line 359 needs to go 20140321 01:16:51< shadowm> If C++ didn't allow overriding type operators with functions that have side-effects, perhaps compilers would be able to warn about superfluous assignments. :p 20140321 01:18:08< Aishiko> that might be nice, sort of like the unused variable warning (that can be treated as an error) 20140321 01:18:22< Aishiko> but I hate that sometimes 20140321 01:19:00< Aishiko> OK fixed the logic in that one conditional and removed the other 2 that didn't need to be in there 20140321 01:20:02< Aishiko> compiling and retesting to make sure that I didn't do something silly like put a g on a line by itself again, though Q would be OK Q is always behind the inventions 20140321 01:21:03< shadowm> Q? 20140321 01:21:13< Aishiko> Bond, James Bond 20140321 01:21:38< Aishiko> you know the little old inventor that keeps coming up with the neat toys he has 20140321 01:24:10< shadowm> Yeah, I wouldn't know. 20140321 01:24:31< gfgtdf> what is the difference between game_state and game_data ? 20140321 01:24:57< gfgtdf> weh i want a new attibut i just place it randomly in one of them ? 20140321 01:25:00< gfgtdf> when* 20140321 01:25:13< shadowm> I don't know, but it reminds me we used to have gamestatus and game_state as wholly different things existing in the same context. 20140321 01:25:42< shadowm> I think they got merged into one game_state. 20140321 01:30:57-!- kex [~kex@89.205.75.19] has quit [Remote host closed the connection] 20140321 01:31:29-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 240 seconds] 20140321 01:31:32-!- stikonas__ [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has joined #wesnoth-dev 20140321 01:31:32-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 01:36:20-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 265 seconds] 20140321 01:36:24-!- sachith500 [~kvirc@112.135.60.244] has joined #wesnoth-dev 20140321 01:37:52-!- stikonas__ [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has quit [Quit: Konversation terminated!] 20140321 01:38:49-!- sachith500|2 [~kvirc@112.135.194.51] has quit [Ping timeout: 240 seconds] 20140321 01:49:17-!- Gaben [~quassel@killer.teteny.bme.hu] has quit [Remote host closed the connection] 20140321 01:56:07-!- Kevin_Xi [~kevin@223.72.182.173] has joined #wesnoth-dev 20140321 02:03:14-!- RiftWalker [~nathan@c-76-22-135-46.hsd1.tn.comcast.net] has joined #wesnoth-dev 20140321 02:03:41-!- Guest22113 is now known as Espreon 20140321 02:03:47-!- Espreon [~espreon@ai0867.net] has quit [Changing host] 20140321 02:03:47-!- Espreon [~espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20140321 02:08:35-!- Youngoli [~Youngoli@97.65.103.250] has quit [Quit: Leaving] 20140321 02:09:45< RiftWalker> wesbot: seen mordante 20140321 02:09:45< wesbot> RiftWalker: The person with the nick mordante last spoke 4h 22m ago. 4h 20m ago was here and on the channel #wesnoth-de with the message: Quit: Leaving 20140321 02:28:21-!- sachith500 [~kvirc@112.135.60.244] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 20140321 02:32:16-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 02:32:19< Espreon> 02:20 < Aishiko> compiling and retesting to make sure that I didn't do something silly like put a g on a line by itself again, though Q would be OK Q is always behind the inventions 20140321 02:32:23< Espreon> No, never. 20140321 02:32:32< Espreon> Q is always head. 20140321 02:32:33< Espreon> That is all. 20140321 02:32:40< Espreon> *always ahead 20140321 02:33:26< Aishiko> whatever you say 0012 whatever you say 20140321 02:34:36< Espreon> And... now I'm completely lost. I was just being overzealous in asserting the superiority of Qoppa and its descendants, so... yeah. 20140321 02:34:39< Espreon> Byez. 20140321 02:35:26< vultraz> you're crazy 20140321 02:35:31-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has quit [Quit: tomreyn] 20140321 02:36:00< Espreon> vultraz: You didn't think I already knew that? 20140321 02:36:48< Aishiko> yes sanity is over rated anyway 20140321 02:36:57< Espreon> Indeed. 20140321 02:37:23< shadowm> Aishiko: Any progress? 20140321 02:37:29-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 269 seconds] 20140321 02:38:31< Aishiko> shadowm, yes I think its ready I've addressed all the issues we talked about, I think 20140321 02:41:11< shadowm> Uh, okay... 20140321 02:41:43< shadowm> Aishiko: There's still a recall_cost assignment in line 470. 20140321 02:43:24< shadowm> In the constructor's initializer list: recall_cost_(cfg["recall_cost"].to_int(-1)) <- if !cfg["recall_cost"].blank(), recall_cost_ is first set to a valid value here (line 228). 20140321 02:43:44< shadowm> But then you go and do it again later down in line 470. 20140321 02:45:02< shadowm> Aishiko: Also, the commit message no longer accurately reflects its contents. 20140321 02:48:03< Aishiko> I forgot the 2 whitespace changes at the bottom didn't I? 20140321 02:48:38< shadowm> Well, that's a thing, but there's also the removal of the extra bogus code. 20140321 02:48:53< Aishiko> wait I thought I included that 20140321 02:49:04< shadowm> I mean it's not mentioned in the message. 20140321 02:49:18< Aishiko> in the summary 20140321 02:50:05< Aishiko> wait somehow the updated summary got dumped 20140321 02:50:42< shadowm> Plus the thing I said above. 20140321 02:52:03< Aishiko> the assignment at 470 is the magic =) 20140321 02:53:22< shadowm> Aishiko: Okay, if you say so, then could you explain how it works given line 228? 20140321 02:54:47< Aishiko> I just need to remove the -1 from line 228 and it'll be good with only one assignment 20140321 02:55:32< shadowm> But then it'll defalt to 0 instead of -1 when bogus/empty/missing. 20140321 02:56:10< shadowm> Won't that cause units to have a recall cost of 0 by default? 20140321 02:56:50< Aishiko> line 228 gets over written by the 470 line just like the max_hit_points_ gets over written. and apparently not it seems to be affected the same way the [side] recall_cost is 20140321 02:57:57< shadowm> And line 470 claims to rely on a default of -1. 20140321 02:59:53-!- irker133 [~irker@ai0867.net] has joined #wesnoth-dev 20140321 02:59:53< irker133> wesnoth: loonycyborg wesnoth:master d58589797bc4 / SConstruct: scons: relocate config.h and revision.h to build directory http://git.io/WqDheg 20140321 02:59:54< shadowm> So I'm not sure if you intend to have line 228 initialize recall_cost to -1 always and have line 470 call to_int(-1), or... 20140321 03:03:33< Aishiko> 228 was to initialize to -1 and 470 update it if it found a value in one of the config files (either unit_type or [unit] in a scenario) 20140321 03:03:57< Aishiko> it was suggested to me to do the -1 initialization so I did it 20140321 03:04:03< shadowm> Then 228 should just initialize it to -1 without calling the config stuff. 20140321 03:05:23< Aishiko> like I originally had it 20140321 03:05:29< Aishiko> well that line at any rate 20140321 03:06:07< shadowm> Right, but it's not like that in the last commit, hence the comments. 20140321 03:06:18-!- incredible_ [~incredibl@171.48.209.52] has joined #wesnoth-dev 20140321 03:06:35< shadowm> Also, if recall_cost is not empty and it's not a number, 470 will make it 0 instead of -1. Intended? 20140321 03:07:22< Aishiko> no not intended, I didn't try to put non-numeric values 20140321 03:07:40-!- varthx [807191d3@gateway/web/freenode/ip.128.113.145.211] has joined #wesnoth-dev 20140321 03:07:43-!- varthx [807191d3@gateway/web/freenode/ip.128.113.145.211] has quit [Client Quit] 20140321 03:08:02< Aishiko> I should have, users do the strangest things we don't always consider 20140321 03:08:11-!- varthx [807191d3@gateway/web/freenode/ip.128.113.145.211] has joined #wesnoth-dev 20140321 03:08:41< shadowm> One might conceivably type a non-number value by mistake; e.g., recall_cost=90'. 20140321 03:10:04< Aishiko> I think I need to add a test so that if its not numeric it doesn't assign a bad value and just lets the team.recall_cost take over 20140321 03:10:46< shadowm> It's as simple as giving to_int a suitable argument in line 470 as I said... 20140321 03:11:27< shadowm> I suggest sticking to the default of -1; since that's going to be the current value of recall_cost_ at that point, to_int(recall_cost_) would give the current value back if something goes wrong. 20140321 03:12:17< Aishiko> recall_cost_ = cfg["recall_cost"].to_int(recall_cost_); like that? 20140321 03:12:20-!- Ivanovic_ [~ivanovic@wesnoth/developer/ivanovic] has joined #wesnoth-dev 20140321 03:12:24< shadowm> Yes. 20140321 03:15:06-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has quit [Ping timeout: 264 seconds] 20140321 03:16:20-!- Ivanovic_ is now known as Ivanovic 20140321 03:17:07< Aishiko> OK done and tested (it works same as not passing it to to_int() however better to make sure then have weird errors later. 20140321 03:19:26< varthx> Hey, guys. I'm a prospective student for Google SoC and I realize I'm super late in the application process, but I was wondering if anyone could answer a couple questions I have about programming AI for wesnoth? 20140321 03:22:19-!- happygrue [~happygrue@wesnoth/developer/wintermute] has quit [Ping timeout: 246 seconds] 20140321 03:23:43< Aishiko> varthx, very late, but not too late if you had waited like 20 more hours you'd be sol (short on luck) as the hard application deadline would have passed and there is nothing anyone can do at that point. 20140321 03:24:05< Aishiko> varthx, that said, I know next to nothing about the AI and hope you can get some help 20140321 03:25:06< Aishiko> follow the directions on the wiki to create a project/proposal page and link it to your submitted proposal at google and you can up date the wiki afterwards. 20140321 03:25:17< Aishiko> but don't wait too long to do so 20140321 03:25:35-!- vorobeez [558e940c@gateway/web/freenode/ip.85.142.148.12] has joined #wesnoth-dev 20140321 03:27:13< Aishiko> shadowm, I know whats going on when I do the git commit --amend its not amending like I thought it was 20140321 03:27:42< shadowm> Uh, no, it is. 20140321 03:27:50-!- travis-ci [~travis-ci@ec2-50-19-155-123.compute-1.amazonaws.com] has joined #wesnoth-dev 20140321 03:27:50< travis-ci> [travis-ci] gfgtdf/wesnoth-old#38 (sync_2 - 8551b69 : gfgtdf): The build was broken. 20140321 03:27:51< travis-ci> [travis-ci] Build details : http://travis-ci.org/gfgtdf/wesnoth-old/builds/21226563 20140321 03:27:51-!- travis-ci [~travis-ci@ec2-50-19-155-123.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140321 03:28:20< shadowm> As long as you add the affected paths with `git add` or include them in the `git commit` command line like so: `git commit --amend changedpath1 changedpath2 [...]` 20140321 03:28:53< Aishiko> that explains that 20140321 03:29:26< Aishiko> I wasn't properly declaring the changed paths 20140321 03:29:50-!- goblinThing [44bd8c2c@gateway/web/freenode/ip.68.189.140.44] has joined #wesnoth-dev 20140321 03:29:57< shadowm> This is just like when you regularly use `git commit`. 20140321 03:30:06< varthx> Yea, I was only told about SoC literally today. :(( Yea, I'll make sure to get that proposal in on time, if I decide to apply. 20140321 03:30:46< Aishiko> varthx, I didn't give it the time and attention to detail I should have last year (if I had I'd know all the ins and outs of git by now) 20140321 03:31:38< varthx> What didn't you give attention to detail to? haha 20140321 03:39:43< Aishiko> my GSOC proposals, was told after the fact that if I'd had better proposal there was a chance I might have gotten in, I'm not making that mistake again... though I'm rustier at the C++ then I thought I would be after dealing with all the python and PHP 20140321 03:40:33-!- Kevin_Xi [~kevin@223.72.182.173] has left #wesnoth-dev [] 20140321 03:43:00< varthx> Oh, okay. How detailed should it be? I honestly don't know how I'm going to implement anything yet. Am I way over my head with this? 20140321 03:43:16< goblinThing> Ditto. -_- 20140321 03:44:38< Aishiko> I was shown one of the top 5% proposals sent in and well, it had me thinking mine looked terrible, but I'm not trying to pessmistic (yes I listen Ivanovic) only realistically comparing a high end to my own and drawing a conculsion, but that's not going to make me give up, it'll just make me try harder 20140321 03:45:14< goblinThing> good attitude. 20140321 03:45:47< Aishiko> http://wiki.wesnoth.org/User:Trademark/GSoC_2013/Addon_Server:_Create_a_new_and_shiny_one && http://wiki.wesnoth.org/SummerOfCodeProposal_AI_Improvement_Crab the first got in last year and the later is the one I was told was like in the top 5% ever submitted, see and judge for yourself 20140321 03:46:31< varthx> Okay I'm boned. 20140321 03:46:44< goblinThing> Good god! It's beautiful! It's hideous! :D 20140321 03:47:04-!- incredible_ [~incredibl@171.48.209.52] has quit [Quit: Leaving] 20140321 03:47:17< Aishiko> varthx, only if you don't try, those were both very good proposals 20140321 03:48:35< varthx> I didn't realize it was supposed to so extensive. I don't have time enough to research the AI dev to create something anything close to that. I was honestly just going to give a one paragraph rough outline of my thoughts thus far and fill out the questionnaire. 20140321 03:51:57< Aishiko> varthx, if you send that in and link to the wiki you can get a little more time to flesh it out. However, only you can make that call and do it, for there is no try, there is only do or do not, hmmm? 20140321 03:52:44< varthx> On a scale of one to yoda, I'm not even a jedi. :'( There's always next year! 20140321 03:53:22< Aishiko> if that is your choice then yes if they do it next year (and no signs they won't) then yes there is always next year 20140321 03:54:25< goblinThing> Yoda has supernatural powers with which to deal with the reality of maybe. As does delfador. 20140321 03:56:54< vultraz> and gandalf 20140321 03:57:31< goblinThing> Yeah, but he doesn't count. He doesn't even use his giant eagles when he needs to! 20140321 03:57:42< Aishiko> varthx, one of the best things you can do (and I failed to take my own advice on this) is to go join an open source project and contribute so that next year, you'll have a good idea of what needs to be done and how to do it, so you can make a killer proposal that is what Crab_ did and let me tell you it worked 20140321 03:57:51< shadowm> Aishiko: Okay, Im going to test it again... 20140321 03:57:56< shadowm> *I'm 20140321 03:58:12< Aishiko> thank you shadowm I'm hopeful that I got it finally right 20140321 03:58:15< goblinThing> That is eccelent advice. 20140321 03:58:51< goblinThing> exelent. 20140321 03:58:55< goblinThing> bleah. 20140321 03:59:08< shadowm> "Excellent". 20140321 03:59:12< varthx> I'm working on an open source project at the moment, at my university. But like, it's very small scale and not really that impressive. It's also not related at all. hahhah I don't know. But thank you for the advice and links and all. I appreciate it. 20140321 04:00:13< Aishiko> varthx, your welcome I'm just sorry it discouraged you from even trying. 20140321 04:00:54< vultraz> goblinThing: don't forget Dumbledore! 20140321 04:01:30< goblinThing> Ah, yes. I think he counts. Him and Dresden. 20140321 04:02:45-!- travis-ci [~travis-ci@ec2-54-227-219-180.compute-1.amazonaws.com] has joined #wesnoth-dev 20140321 04:02:45< travis-ci> [travis-ci] gfgtdf/wesnoth-old#39 (sync_2 - d19b130 : gfgtdf): The build was fixed. 20140321 04:02:45< travis-ci> [travis-ci] Build details : http://travis-ci.org/gfgtdf/wesnoth-old/builds/21226891 20140321 04:02:45-!- travis-ci [~travis-ci@ec2-54-227-219-180.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140321 04:04:29< Aishiko> or C3PO 20140321 04:04:36< vultraz> Dresden? No, Gandalf and Dumbledore would wipe the floor with Dresden 20140321 04:04:41< Aishiko> ohh wait wrong topic =P 20140321 04:04:48< goblinThing> C3p0? Lol! 20140321 04:04:49< shadowm> Aishiko: Oh yeah, the changelog entry belongs under WML Engine, not User Interface, but it doesn't matter since I have to fix that for merging anyway. 20140321 04:04:57< vultraz> Now, Delfador vs Gandalf, tho.. 20140321 04:05:23< shadowm> It's also good to mention the affected tag and attributes. 20140321 04:05:26< Aishiko> shadowm, ohhh I didn't know that, I thought that was right given it displayed values to the user 20140321 04:05:39< goblinThing> How far into Dresden have you gone? By 12, I'd put the odds 60/40 in favor of dresden. 20140321 04:06:26< shadowm> Aishiko: Sure, but that's only the front-end part of the feature. The back-end is the most important one in this case since it's the chicken to the UI's egg. 20140321 04:06:34< goblinThing> Especially if someone owed him a doughnut. 20140321 04:06:58< shadowm> Wait no, it's the egg to the UI's chicken. 20140321 04:07:09< vultraz> I dunno, I started watching the show but was disappointed (assuming we're talking about the same thing here). 20140321 04:07:24< Aishiko> shadowm, that makes alot of sense, I just took my best guess and well guess wrong 20140321 04:09:19< Aishiko> shadowm, did I at least get my name in the right spot in the about.cfg? 20140321 04:10:32< shadowm> Aishiko: Yes. 20140321 04:10:49< Aishiko> vultraz, we need to have a wesnoth "pirate vs ninja" thing like that tv show that was on and pitted people from different time periods against each other 20140321 04:11:04< goblinThing> ? 20140321 04:11:11< vultraz> EpicRapBattlesOfHistory? 20140321 04:11:21< Aishiko> vultraz, was that on TV? 20140321 04:11:35< vultraz> youtube 20140321 04:11:47< Aishiko> then no 20140321 04:12:20< Aishiko> they took actual tests from period weapons and then used a computer to simulate 1000 matches between the 2 opponents 20140321 04:12:40< vultraz> Oh 20140321 04:12:57< goblinThing> good greif. I can just see it: Kalenz and the main from SotBE in a rap-off. -_- bleah. 20140321 04:12:57< vultraz> Yeah ERB is just stuff like Darth Vader rapping against Hitler :P 20140321 04:13:12< vultraz> goblinThing: xDDD 20140321 04:13:30< Aishiko> Deadliest Warrior that was it! only have Wesnoth characters vs other fantasy characters imported to wesnoth 20140321 04:13:36< goblinThing> kalenz decked out in big, dumbfake gold... 20140321 04:13:48< goblinThing> Oh, THAT. Totally different! 20140321 04:13:55< Aishiko> yes totally different 20140321 04:14:04< shadowm> Hm. 20140321 04:14:20< vultraz> But has anyone recorded the power level of Delfador? 20140321 04:14:34< Aishiko> uhh ohhh, when shadowm goes Hm. that means bad things for me and my patches 20140321 04:14:53< Aishiko> vultraz, that is where best guess comes into play 20140321 04:14:57< goblinThing> @vultraz: over 4! 20140321 04:16:02< vultraz> xD 20140321 04:16:54< irker133> wesnoth: Aishiko wesnoth:master a723d5fa59da / / (6 files in 3 dirs): Add single unit instance recall_costs http://git.io/DuPdfA 20140321 04:16:56< irker133> wesnoth: Aishiko wesnoth:master c6d11a5f5e83 / src/ (actions/create.cpp actions/undo.cpp statistics.cpp statistics.hpp unit.cpp): Implement unit instance recall costs. http://git.io/Imy1Tg 20140321 04:16:58< irker133> wesnoth: Aishiko wesnoth:master d4896db78bf9 / src/ (dialogs.cpp dialogs.hpp menu_events.cpp): Show unit instance recall cost in Recall dialog http://git.io/38qkQw 20140321 04:17:00< irker133> wesnoth: Aishiko wesnoth:master 1469c39f1c19 / src/whiteboard/recall.cpp: Single unit instances work with whiteboard. http://git.io/mBGJnw 20140321 04:17:02< irker133> wesnoth: Aishiko wesnoth:master c288fcb203ce / src/whiteboard/recall.cpp: Single unit instances work with whiteboard. http://git.io/v7seHQ 20140321 04:17:04< irker133> wesnoth: Aishiko wesnoth:master c8346d344644 / changelog: Added line to changelog for adding single unit instance recall costs http://git.io/PplH6g 20140321 04:17:06< irker133> wesnoth: Aishiko wesnoth:master 0fe4a943f354 / src/dialogs.cpp: Changed recall cost in recall dialog to default colour http://git.io/1PXugQ 20140321 04:17:08< irker133> wesnoth: Aishiko wesnoth:master b979516e755e / data/core/about.cfg: Added Aishiko to about.cfg as requsted by shadowm http://git.io/FM3ymQ 20140321 04:17:10< irker133> wesnoth: Aishiko wesnoth:master 2a923b5a26d8 / src/unit.cpp: Corrected use of cfg["foo"], removed 2 assignments, and 2 whitespace fixes http://git.io/0J2PMQ 20140321 04:17:12< irker133> wesnoth: Ignacio R. Morelle wesnoth:master bbe8b7a816d0 / / (16 files in 7 dirs): Merge branch 'Add-unit-instance-recall-costs' of https://github.com/Aishiko/wesn http://git.io/2-1vnQ 20140321 04:17:15< irker133> wesnoth: Ignacio R. Morelle wesnoth:master d21988165601 / changelog: Improve a changelog entry http://git.io/OLqBcg 20140321 04:17:50< goblinThing> Is this the act of Wesnoth being updated to the next version? 20140321 04:18:06< goblinThing> *oops*. sorry. got to leave. 20140321 04:18:09-!- goblinThing [44bd8c2c@gateway/web/freenode/ip.68.189.140.44] has quit [Quit: Page closed] 20140321 04:18:11< shadowm> Huh? No, that'd be tagging. 20140321 04:18:46< shadowm> Although there's no such a thing as updating our branches to "the next version". They are actually continously updated and new versions come from them only on occasion. 20140321 04:19:11< shadowm> What I just did was merging a pull request with all the commits it includes. 20140321 04:20:08< shadowm> Aishiko: Which means your commits are in, congratulations! 20140321 04:20:29-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 04:20:41< Aishiko> shadowm, thank you. I was beginning to think it wouldn't happen 20140321 04:20:44< shadowm> Aishiko: And now you get to add the necessary documentation in the wiki! 20140321 04:20:48< shadowm> :D 20140321 04:21:19< Aishiko> yay me? 20140321 04:21:19< shadowm> Okay no, I think I should do it myself. 20140321 04:21:42< shadowm> Mostly because I want people adding 1.13.x documentation from this point onwards to follow my example with regards to the DevFeature1.13 template's intended use. 20140321 04:21:49< Aishiko> if you think that would be best, I'm logged into the wiki now, but I'll follow your judgement 20140321 04:22:13< shadowm> Well, are you familiarized with how we document WML features in there? 20140321 04:23:03< Aishiko> no I was going to follow the example of the 1.12 features added, but it might be best if you do this one and I can see exactly how its done for the 1.13? 20140321 04:24:49-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 04:27:11-!- varthx [807191d3@gateway/web/freenode/ip.128.113.145.211] has quit [Quit: Page closed] 20140321 04:31:20-!- travis-ci [~travis-ci@ec2-54-81-166-95.compute-1.amazonaws.com] has joined #wesnoth-dev 20140321 04:31:20< travis-ci> [travis-ci] gfgtdf/wesnoth-old#40 (sync_2 - 8cfad67 : gfgtdf): The build was fixed. 20140321 04:31:20< travis-ci> [travis-ci] Build details : http://travis-ci.org/gfgtdf/wesnoth-old/builds/21227518 20140321 04:31:20-!- travis-ci [~travis-ci@ec2-54-81-166-95.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140321 04:34:24-!- Gambit [~derek@wesnoth/developer/grickit] has quit [Remote host closed the connection] 20140321 04:37:11< shadowm> Aishiko: Added to and . 20140321 04:38:56-!- adityapande [ca4eaca2@gateway/web/freenode/ip.202.78.172.162] has joined #wesnoth-dev 20140321 04:39:19< adityapande> how to call damage_calculations from my own ai script? 20140321 04:39:51< shadowm> adityapande: Unfortunately, our AI experts Crab_ and mattsc aren't available at this time, but they will surely read the logs and see your question later. It's also possible someone else knows the answer here. 20140321 04:40:14< Aishiko> shadowm, thank you I'm going to look at it now 20140321 04:50:34-!- gfgtdf [~chatzilla@f054156092.adsl.alicedsl.de] has quit [Quit: ChatZilla 0.9.90.1 [Firefox 28.0/20140314220517]] 20140321 04:56:01-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has joined #wesnoth-dev 20140321 04:57:19< _8680_> Have I angered you, Travis, that you report gfgtdf’s builds but not mine? 20140321 04:59:14-!- RiftWalker [~nathan@c-76-22-135-46.hsd1.tn.comcast.net] has quit [Ping timeout: 245 seconds] 20140321 05:00:21< _8680_> aquileia: I’m finally filing pull requests for my commits in support of your function. My apologies for taking so long; I suppose I had forgotten how annoying (other people’s) C++ can be. 20140321 05:00:59< _8680_> (Though I certainly don’t mind C++ so much as many seem to.) 20140321 05:09:22< _8680_> That I delegated all building to Travis hardly helped with the annoyance. 20140321 05:12:04< _8680_> …I hope the Doxygen comments work. I didn’t check that, I’m afraid. 20140321 05:20:54-!- cib0 [~cib@p20030067CE5CD701267703FFFEE75B84.dip0.t-ipconnect.de] has quit [Ping timeout: 245 seconds] 20140321 05:28:59-!- vorobeez [558e940c@gateway/web/freenode/ip.85.142.148.12] has quit [Quit: Page closed] 20140321 05:32:00< Aishiko> shadowm, if your still around, for my asking the artist community for input on my spritesheet proposal which would be the best forum to ask in? I'm thinking either Art Contributions or Art Workshop 20140321 05:32:22< shadowm> Aishiko: Art Contributions. 20140321 05:32:36< Aishiko> thank you shadowm I'll put it there 20140321 05:50:13-!- adityapande [ca4eaca2@gateway/web/freenode/ip.202.78.172.162] has quit [Ping timeout: 245 seconds] 20140321 06:06:40-!- sachith500 [~kvirc@112.135.60.244] has joined #wesnoth-dev 20140321 06:08:35-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 06:08:37< sachith500> hehe Aishiko nice timing with the patch ;) 20140321 06:09:21< Aishiko> thank you sachith500 honestly I figured it would get in when it was ready, regardless of if that was before today 20140321 06:09:52< sachith500> yeah, I know :D 20140321 06:10:00< sachith500> but it's...auspicious somehow ^_^ 20140321 06:10:15< vultraz> how so? :P 20140321 06:10:54< Aishiko> it made it in barely before the deadline day, therefore I might get in if I keep up the work 20140321 06:12:03< sachith500> well today's the gsoc deadline, so ^_^ 20140321 06:12:37< sachith500> I wonder what happened to the phantom students 20140321 06:12:49< sachith500> the soc admins were looking for some of them yesterday 20140321 06:13:13-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 06:19:55-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20140321 06:21:49< Aishiko> well the forum post is up now I just have to wait for the flames to come rolling in.... then I can roast marshmellows! and make S'mores! 20140321 06:23:11< sachith500> ^^ 20140321 06:23:26< Aishiko> Jetrel, I'd love to hear your opinion of my proposal, at least as far as the artists are concerned about (IE the non code stuff), here is the link so you don't have to go looking for it: http://forums.wesnoth.org/viewtopic.php?f=9&t=40191 20140321 06:27:16< vultraz> Aishiko: you made a typo. "your all visual types" 20140321 06:27:26< shadowm> It's far from the only one. :p 20140321 06:27:59< Aishiko> english is not my best subject! ..... trust me on this! 20140321 06:28:24< vultraz> Is japanese your 1st language? 20140321 06:28:35< Aishiko> sadly no 20140321 06:28:40-!- ZubinKapadia [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 06:30:59< vultraz> Then what is 20140321 06:32:10< Aishiko> English, you can be a native speaker and still be bad at the written language 20140321 06:32:24< vultraz> Oh 20140321 06:32:25< vultraz> I see 20140321 06:33:33< ZubinKapadia> vultras: ping 20140321 06:34:56< Jetrel> Aishiko: hey, overall that proposal looks pretty nice 20140321 06:35:04< Jetrel> The only thing I'm confused by is: 20140321 06:35:16< vultraz> ZubinKapadia: me? 20140321 06:35:16< Jetrel> "The first 1 says "I'm a spritesheet!", the second says "I'm 72 pixels high.", and the third says "I'm 72 pixels wide." Other then changing the file name... that's it!" 20140321 06:35:28< vultraz> ^ yes, that confused me too 20140321 06:35:39< Jetrel> Aishiko: I don't understand why that first parameter is needed. 20140321 06:36:46-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140321 06:36:47< shadowm> Aishiko: Are you familiarized with the full animation WML syntax in 1.11.x/1.12.x/1.13.x? 20140321 06:37:01-!- exciton [chuck-the-@95.72.67.250] has joined #wesnoth-dev 20140321 06:37:12< vultraz> Aishiko: also, I think the first param should be the cell, not the last 20140321 06:37:21< shadowm> Brackets currently have a different meaning in animations: 20140321 06:37:32< shadowm> image="units/elves-wood/shyde-ftouch-attack[1~3].png:[100,200,100]" 20140321 06:38:07< shadowm> See . 20140321 06:39:17< shadowm> You might want to consider using a parenthetical character other than square brackets or curly braces (which are captured and substituted by the WML preprocessor). 20140321 06:40:11< Aishiko> well this is the sort of feed back I wanted to get 20140321 06:40:36< shadowm> Or alternatively some other kind of disambiguation marker. 20140321 06:41:01< Aishiko> Jetrel, at first It was going to on the end but after thinking about it your right its not really needed 20140321 06:41:22< shadowm> We have like a million characters to choose from. Or whichever subset of Unicode is the most broadly supported atm. 20140321 06:41:39< vultraz> Might I also propose making 72sq the default size, so you don't need to specify it every time 20140321 06:41:59< Aishiko> shadowm, I think so the [].png says which images to take (using a regex) and the one following [] is for the timing 20140321 06:42:37< shadowm> Aishiko: Kind of (it's not regexes), see the documentation, it's more nuanced than that. 20140321 06:43:27< vultraz> shadowm: well, it'd not be a good idea to use a character that can't be easily produced on keyboards 20140321 06:43:41< vultraz> eg, anything other than [] <> {} () or || 20140321 06:45:22< shadowm> vultraz: It was. A joke. 20140321 06:45:38< shadowm> Of course most people are Unicode-impaired. 20140321 06:46:14< Aishiko> shadowm, I didn't have the right word for it so I used the closest term I knew that most closely matched what I thought I understood it to do 20140321 06:48:08< vultraz> Including me. I have to google utf8 symbols and c/p them >_> 20140321 06:48:47< shadowm> I have kcharselect for that. 20140321 06:49:58< Aishiko> =P I know someone that's company took the ascii code stuck it into a number generator to generate passwords of 16 digits out of all the ascii characters..... and they were all input-able at the keyboard.... sometimes hitting like 3 or 4 keys 20140321 06:50:31< shadowm> Wait what. 20140321 06:50:53< shadowm> ASCII 0x00 through 0x1F aren't anywhere in my keyboard. 20140321 06:51:34< Aishiko> yeah, you have to hold down like shit or alt and then hit like 3 keys in a row to gets some of them 20140321 06:51:44< Aishiko> at least that is what he said 20140321 06:51:57< shadowm> OTOH you could argue that Enter is LF (0x0A). 20140321 06:52:01-!- ZubinKapadia [~shubham-p@14.139.122.114] has quit [Quit: Konversation terminated!] 20140321 06:52:06-!- exciton [chuck-the-@95.72.67.250] has quit [Read error: Connection reset by peer] 20140321 06:52:16-!- ZubinKapadia [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 06:52:21-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140321 06:52:39< shadowm> Or CR and LF if you are on a typewriter OS. 20140321 06:54:12< shadowm> Yes, I've just decided to call it that from now on. 20140321 06:54:35< shadowm> It seems fitting given the amount of work required for the simplest tasks nowadays. 20140321 06:59:10-!- ZubinKapadia [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 06:59:26-!- ZubinKapadia [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 06:59:48-!- ZubinKapadia [~shubham-p@14.139.122.114] has quit [Client Quit] 20140321 07:00:26-!- ZubinKapadia [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:00:46-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140321 07:01:00-!- exciton [chuck-the-@95.72.67.250] has joined #wesnoth-dev 20140321 07:01:20-!- ZubinKapadia [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 07:01:31-!- ZubinKapadia [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:05:15-!- shubham-pc [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:06:23-!- ZubinKapadia [~shubham-p@14.139.122.114] has quit [Read error: Operation timed out] 20140321 07:09:03-!- shubham-pc_ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:09:37-!- shubham-pc [~shubham-p@14.139.122.114] has quit [Ping timeout: 240 seconds] 20140321 07:11:48-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:12:24-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Client Quit] 20140321 07:12:41-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:13:07-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 07:13:18-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:13:19-!- shubham-pc_ [~shubham-p@14.139.122.114] has quit [Ping timeout: 246 seconds] 20140321 07:16:09-!- incredible [75d91889@gateway/web/freenode/ip.117.217.24.137] has joined #wesnoth-dev 20140321 07:16:25-!- exciton [chuck-the-@95.72.67.250] has quit [Read error: Connection reset by peer] 20140321 07:17:14-!- shubham-pc [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:17:20-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Client Quit] 20140321 07:19:56-!- shubham-pc_ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:19:56-!- shubham-pc [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 07:21:29-!- shubham-pc_ [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 07:21:31-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:21:40-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140321 07:23:44-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 07:23:59-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:26:31-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Client Quit] 20140321 07:26:48-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:27:37-!- Kevin_Xi [~kevin@223.72.182.158] has joined #wesnoth-dev 20140321 07:29:44-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Client Quit] 20140321 07:29:59-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:31:15-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Read error: Connection reset by peer] 20140321 07:31:26-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:33:56-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Client Quit] 20140321 07:34:06-!- shubham-pc__ [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:34:07-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has joined #wesnoth-dev 20140321 07:34:22-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has quit [Client Quit] 20140321 07:35:19-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has quit [Disconnected by services] 20140321 07:35:36-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has joined #wesnoth-dev 20140321 07:42:14-!- Gallaecio [~quassel@84.120.216.67.dyn.user.ono.com] has quit [Remote host closed the connection] 20140321 07:42:36-!- Crab_ [~Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20140321 07:44:21-!- shubham-pc__ [~shubham-p@14.139.122.114] has quit [Quit: Konversation terminated!] 20140321 07:44:46-!- ZubinKapadia [~shubham-p@14.139.122.114] has joined #wesnoth-dev 20140321 07:50:34< Aishiko> shadowm, hmm how about ? do you think that would work? or ? reusing the syntax already used for the image numbers? 20140321 07:54:06< Aishiko> no doing "image[].png[]<>" I think might be the best when processed goes, OK spritesheet and so instead of using the first[] in the file names, it instead uses them as the images to grab out of the spritesheet and then the timing block is left alone, and the <> (placeholder) gives the size of the images in the spritesheet. 20140321 07:55:36-!- ZubinKapadia [~shubham-p@14.139.122.114] has quit [Ping timeout: 252 seconds] 20140321 07:57:20-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 07:58:17-!- Crab_ [~Crab_@wesnoth/developer/crab] has quit [Quit: Crab_] 20140321 08:01:13-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 08:03:05< Ivanovic> shadowm: depends on the issue iceiceice mentioned 20140321 08:03:10< Ivanovic> would be nice to have that fixed 20140321 08:03:14< Ivanovic> iceiceice: any estimate? 20140321 08:03:24< Ivanovic> i would love to work on releasing today or early tomorrow... 20140321 08:18:36-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20140321 08:22:33-!- ykanarev [~ykanarev@212.55.118.222] has joined #wesnoth-dev 20140321 08:34:50< zookeeper> Aishiko, i think having the sprites simply numbered from 1 onwards would be kinda icky when you have a really big sheet, since it's not like you can immediately well what the number of the sprite somewhere around the lower right corner is, without doing math in your head 20140321 08:35:18< zookeeper> s/well/tell 20140321 08:37:27< Aishiko> zookeeper, what is your suggestion to make this easier? 20140321 08:37:39< zookeeper> index the sheet by row+column 20140321 08:38:07< Aishiko> so have 2 numbers to indicate a single image? 20140321 08:38:17< zookeeper> yeah 20140321 08:38:45-!- demiurgos [96d6cd3e@gateway/web/freenode/ip.150.214.205.62] has joined #wesnoth-dev 20140321 08:39:04< Aishiko> so if you have 4 images you have 8 numbers, that sounds a bit more icky 20140321 08:40:40< zookeeper> well, it'd also mean that you wouldn't need the sheet to be locked to a set width. let's say you wanted to replace the bow attack anim in your example sheet with a longer one; you can't just widen the sheet so the first row has space for the longer animation, because that'll change the numbers of all the following sprites as well, meaning you have to update all the animation WML accordingly 20140321 08:43:47< zookeeper> whereas if you index by row+column, you would/could generally put each animation on its own row, and wouldn't need to worry about changes to one row affecting anything else 20140321 08:43:49< Aishiko> or you could do what they do now and do say [2~5,13] like is currently done for animations that don't use consecutive numbered images 20140321 08:44:39< zookeeper> yeah but having consecutive frames not be consecutive in the sheet would be... very weird and confusing and more difficult to work with 20140321 08:44:50< Aishiko> I'm not saying its a bad idea, I'm trying to figure out a way to make it work without making the syntax very... complex or hard to follow 20140321 08:44:57< zookeeper> sure, sure 20140321 08:45:57< zookeeper> maybe in my method, the column index could often be omitted since usually you'd want to use the whole row as a consecutive series of frames 20140321 08:46:09< zookeeper> not that i have a suggestion for the specific syntax to use 20140321 08:46:10< Aishiko> I suppose we could do something like [1,2~6] and have that mean first row images 2,3,4,5,6 20140321 08:46:28< zookeeper> yeah 20140321 08:47:15< Aishiko> the downside is the possibility for lots of wasted space if every artist sticks theirs on the first row and we end up with 3 rows and rows 2&3 have 5 or less and 1 has like 20 20140321 08:47:44< zookeeper> sure, but wasted space compresses well with png so it's not really an issue 20140321 08:47:53< zookeeper> or at least it does according to my experience 20140321 08:48:20< zookeeper> i think visual clarity is pretty important 20140321 08:48:23< Aishiko> zookeeper, I'll bow to your experience in this regard, as I have no clue on the compression of png 20140321 08:49:30< Aishiko> zookeeper, I totally agree, I was thinking of suggesting using 10 wide, but only use the first 5-8 for current images 20140321 08:50:32< Aishiko> though using your idea we could stick each type of animation on its own row, and then put a code cap of some number to keep the sheet from growing out of control 20140321 08:50:58-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 240 seconds] 20140321 08:51:38< zookeeper> a really big cap, sure, but i don't think we really need to tell the artist that they can't have more than 16 on one row for instance 20140321 08:52:32< Aishiko> well I don't want to see the monster 96x96 one mentioned in the forum thread! 20140321 08:52:38< zookeeper> in some cases you'd have really tiny frames (say, 16x16 or something), in which case you could have dozens on one row 20140321 08:53:07-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20140321 08:54:36-!- sachith500 [~kvirc@112.135.60.244] has quit [Read error: Connection reset by peer] 20140321 08:54:47< zookeeper> yeah but if someone makes their sheet hard to look at, that's their problem 20140321 08:54:47< Aishiko> I'll have to look at some of the more image intensive animations,but if we can have all the images in an animation on the same row that might be doable 20140321 08:54:53-!- sachith500 [~kvirc@112.135.60.244] has joined #wesnoth-dev 20140321 08:55:24< Aishiko> zookeeper, no its becomes a problem inheritable to whomever gets stuck maintaining it. 20140321 08:57:58-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 240 seconds] 20140321 08:59:04-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20140321 08:59:49< zookeeper> yeah, but if they lack common sense then they'll just find other ways to mess it up :p 20140321 09:01:10< zookeeper> i just don't think there's row/column/dimension caps which would likely never get in the way 20140321 09:01:19< Aishiko> the only way to easily make your suggestion work is to limit an animation to 1 row and the rest of the values refer to images on that row like [2,5~7,3] which would translate to row 2 images (in this order) 5,6,7,3 20140321 09:01:22< zookeeper> unless you make them big enough that you might just as well not have any 20140321 09:02:53< Aishiko> I'll ask mordante, what he thinks 20140321 09:03:22< zookeeper> right. i'd be ok with that personally, since you could still use multi-row anims, you just couldn't index all of it together like that 20140321 09:04:23< Aishiko> no you'd have to do a separate set of calls, one for each row. 20140321 09:04:35< Aishiko> no as in I agree with you 20140321 09:04:55< zookeeper> btw... i don't have a strong opinion, but i wouldn't mind if the syntax was more immediately obvious, like [row 2 col 5~7,3] for instance... or just something that'd include the strings "row" and "col" for clarity and also for separating all those numerous numbers from each other a bit 20140321 09:06:23< zookeeper> the indexing is already something that you have to think about for a few seconds before you know what numbers you'll be putting in there, so it's not like people would be annoyed by having to type a few letters more 20140321 09:06:44< zookeeper> compared to everything else, the syntax would still be very compact 20140321 09:06:58< vultraz> what about just "r" and "c"? 20140321 09:08:22< vultraz> r=1 (no c would be implicit whole row), or r=1, c=2-7 20140321 09:09:33-!- neXyon [~neXyon@85-127-227-111.dynamic.xdsl-line.inode.at] has joined #wesnoth-dev 20140321 09:10:43< zookeeper> maybe 20140321 09:12:11< zookeeper> anyway, i did a simple png compression test. original 72x72 ghast is 1,5kb and various 300x300 versions are... http://imagebin.org/300735 20140321 09:12:19< Aishiko> I need a nap before my peer CS tutoring group, so I need to go now however, I'll grep the logs later today, and let you know what, I'm not saying no, not saying yes, it needs to simmer in the back of my mind for a bit, it has potential to let the artist have whatever sized spritesheet they want 20140321 09:12:28< zookeeper> so indeed i wouldn't worry about much having empty space in sheets 20140321 09:12:35< zookeeper> s/about much/much about 20140321 09:13:15-!- irker133 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20140321 09:14:10< Aishiko> that is a compelling argument 20140321 09:16:30< Aishiko> zookeeper, it also means duplicating an image wouldn't be a big issue either 20140321 09:16:32-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 09:35:44-!- demiurgos [96d6cd3e@gateway/web/freenode/ip.150.214.205.62] has quit [Quit: Page closed] 20140321 09:39:02-!- lipkab [~the_new_l@2001:738:5404:192:9e4e:36ff:fe7c:534c] has joined #wesnoth-dev 20140321 09:41:31< lipkab> thunderstruck: config's copy ctor does the same as replaced lines, so I'm not concerned the new implementation would be any slower. 20140321 09:41:46-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 252 seconds] 20140321 09:41:51< lipkab> *as the 20140321 09:43:04< lipkab> Other than having an additional function call. 20140321 09:46:13-!- irker134 [~irker@ai0867.net] has joined #wesnoth-dev 20140321 09:46:13< irker134> wesnoth: Nathan Walker wesnoth:master 5eee20be97ad / src/ (13 files in 5 dirs): clean up instances of std::copy http://git.io/dx63zQ 20140321 09:46:13< irker134> wesnoth: Nathan Walker wesnoth:master efec4735ed57 / src/ (6 files): (cosmetic) fix code tabs http://git.io/0tDzow 20140321 09:46:14< irker134> wesnoth: Nathan Walker wesnoth:master 923519d75ad3 / src/config.cpp: Change config assignment op to copy-and-swap http://git.io/TAhm0A 20140321 09:46:15< irker134> wesnoth: lipk wesnoth:master eb48917ce56f / src/ (13 files in 5 dirs): Merge pull request #122 from Rift-Walker/config_edits http://git.io/K1yQ0Q 20140321 09:46:20< lipkab> RiftWalker: ^ 20140321 10:03:24-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has joined #wesnoth-dev 20140321 10:03:24-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has quit [Changing host] 20140321 10:03:24-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140321 10:22:38-!- Kevin_Xi [~kevin@223.72.182.158] has left #wesnoth-dev [] 20140321 10:29:21-!- trademark [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has joined #wesnoth-dev 20140321 10:31:21-!- neXyon [~neXyon@85-127-227-111.dynamic.xdsl-line.inode.at] has quit [Quit: bye] 20140321 10:36:52-!- bagzie [~bag@85-76-32-203-nat.elisa-mobile.fi] has joined #wesnoth-dev 20140321 10:42:49-!- stikonas_ [~gentoo@46.246.47.198] has joined #wesnoth-dev 20140321 10:42:49-!- stikonas_ [~gentoo@46.246.47.198] has quit [Changing host] 20140321 10:42:49-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140321 10:43:00-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 265 seconds] 20140321 10:45:16-!- Duthlet [~Duthlet@wesnoth/mp-mod/Duthlet] has joined #wesnoth-dev 20140321 10:48:32-!- kex [~kex@89.205.75.19] has quit [Remote host closed the connection] 20140321 10:49:11-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 10:53:28-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 246 seconds] 20140321 10:55:06-!- lipkab [~the_new_l@2001:738:5404:192:9e4e:36ff:fe7c:534c] has quit [Remote host closed the connection] 20140321 11:00:59-!- sachith500 [~kvirc@112.135.60.244] has quit [Ping timeout: 240 seconds] 20140321 11:06:21-!- sachith500|2 [~kvirc@112.135.52.124] has joined #wesnoth-dev 20140321 11:09:33-!- mjs-de [~mjs-de@f048241023.adsl.alicedsl.de] has joined #wesnoth-dev 20140321 11:23:03-!- spoffy [~spoffy@2001:630:d0:ed05:7ccb:7b1b:6268:a705] has joined #wesnoth-dev 20140321 11:28:32-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20140321 11:47:31-!- Kevin_Xi [~kevin@223.72.182.187] has joined #wesnoth-dev 20140321 11:48:08-!- incredible [75d91889@gateway/web/freenode/ip.117.217.24.137] has quit [Ping timeout: 245 seconds] 20140321 11:50:34-!- neXyon [~neXyon@85-127-227-111.dynamic.xdsl-line.inode.at] has joined #wesnoth-dev 20140321 11:51:24-!- spoffy_ [~spoffy@2001:630:d0:ed05:caf7:33ff:fe0a:4542] has joined #wesnoth-dev 20140321 11:51:44-!- spoffy [~spoffy@2001:630:d0:ed05:7ccb:7b1b:6268:a705] has quit [Ping timeout: 245 seconds] 20140321 11:52:37-!- Kevin_Xi [~kevin@223.72.182.187] has quit [Quit: Leaving.] 20140321 11:52:52-!- Kevin_Xi [~kevin@223.72.182.187] has joined #wesnoth-dev 20140321 11:53:55-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has quit [Remote host closed the connection] 20140321 11:59:52-!- Kevin_Xi [~kevin@223.72.182.187] has quit [Read error: Connection reset by peer] 20140321 12:00:05-!- Kevin_Xi [~kevin@223.72.182.187] has joined #wesnoth-dev 20140321 12:02:00-!- incredible [75d91889@gateway/web/freenode/ip.117.217.24.137] has joined #wesnoth-dev 20140321 12:05:19-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20140321 12:06:09-!- happygrue [~happygrue@c-66-30-155-184.hsd1.ma.comcast.net] has joined #wesnoth-dev 20140321 12:06:09-!- happygrue [~happygrue@c-66-30-155-184.hsd1.ma.comcast.net] has quit [Changing host] 20140321 12:06:09-!- happygrue [~happygrue@wesnoth/developer/wintermute] has joined #wesnoth-dev 20140321 12:07:57-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 12:12:18-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 12:13:45-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140321 12:15:04-!- spoffy_ [~spoffy@2001:630:d0:ed05:caf7:33ff:fe0a:4542] has quit [Ping timeout: 245 seconds] 20140321 12:25:49-!- Kevin_Xi [~kevin@223.72.182.187] has quit [Quit: Leaving.] 20140321 12:25:50-!- Kevin_Xi1 [~kevin@223.72.182.187] has joined #wesnoth-dev 20140321 12:35:55-!- neXyon [~neXyon@85-127-227-111.dynamic.xdsl-line.inode.at] has quit [Quit: bye] 20140321 12:36:03-!- incredible [75d91889@gateway/web/freenode/ip.117.217.24.137] has quit [Ping timeout: 245 seconds] 20140321 12:46:17-!- irker134 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20140321 12:51:31-!- Kevin_Xi1 [~kevin@223.72.182.187] has quit [Quit: Leaving.] 20140321 12:51:41-!- Kevin_Xi [~kevin@223.72.182.187] has joined #wesnoth-dev 20140321 12:59:44-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has joined #wesnoth-dev 20140321 13:03:23-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has joined #wesnoth-dev 20140321 13:10:54-!- Kevin_Xi [~kevin@223.72.182.187] has quit [Read error: Connection reset by peer] 20140321 13:11:07-!- Kevin_Xi [~kevin@223.72.182.187] has joined #wesnoth-dev 20140321 13:11:14-!- Kevin_Xi [~kevin@223.72.182.187] has left #wesnoth-dev [] 20140321 13:33:38< happygrue> sachith500|2: regarding your asking if anything else needed to be done yesterday: Nope, it looks good. 20140321 13:33:51< sachith500|2> ok happygrue 20140321 13:33:52< sachith500|2> :D 20140321 13:33:57< sachith500|2> did you check melange as well? 20140321 13:34:00< happygrue> I do notice the end of the data analysis section looks like maybe you are still working on something or wanted to add something there 20140321 13:34:24< happygrue> I read it over once, I see the propsal and AFAIK that's really the important part for the deadline 20140321 13:34:33< sachith500|2> hmm let me check 20140321 13:34:50< sachith500|2> ah the visualization part 20140321 13:35:14< happygrue> I'm new to the mentoring, but as I understand it that is key step right now. Then some mentoring shin-dig happens and some feedback and adjustment follows in the comming weeks 20140321 13:35:38< sachith500|2> ok :P 20140321 13:35:58< sachith500|2> I'm new to the student thing so I'm pretty clueless ^^ 20140321 13:36:06< happygrue> :D 20140321 13:36:08< sachith500|2> haha :D 20140321 13:38:03< happygrue> and yes, I can see the proposal in melange 20140321 13:40:29-!- aquileia [4e2ad392@gateway/web/freenode/ip.78.42.211.146] has joined #wesnoth-dev 20140321 13:44:34< sachith500|2> oh ok then ^_^ 20140321 13:45:01< sachith500|2> are there any other students for this project? or am I not allowed to ask :P 20140321 13:47:57< aquileia> Because it's just a call to another function, I wanted to inline u8truncate(...) by defining it in the header string_utils.hpp instead of the cpp. Now I get several warnings (from files that include that header) that its definition was skipped because it already exists... 20140321 13:48:45< aquileia> shouldn't the #ifndef construct prevent that? 20140321 13:56:10-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 13:57:51< aquileia> _8680_: Thanks! No need to hurry, my part isn't ready either. And... "My apologies"? If anyone has to apologize it's me for not being able to do it myself! 20140321 14:00:25-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 14:01:23-!- Aishiko_laptop [~unknown@198.85.71.253] has joined #wesnoth-dev 20140321 14:03:40-!- RiftWalker [~nathan@c-76-22-135-46.hsd1.tn.comcast.net] has joined #wesnoth-dev 20140321 14:08:13-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 14:13:59-!- trademark [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has quit [Ping timeout: 240 seconds] 20140321 14:18:51< aquileia> _8680_: I didn't realize until now how much work such a simple function can be... https://github.com/8680-wesnoth/wesnoth/commit/960eb9bc86b47c64390d70fd47badd95a54b2499 20140321 14:20:51< aquileia> Sorry, if I had known that, I probably wouldn't have touched that function and just accepted byte_size_from_utf8_first as is... 20140321 14:21:03< iceiceice> aquileia: its probably less work to do it that way, as it would save us a lot of work if the test suite catches a subtle error 20140321 14:21:43-!- RiftWalker [~nathan@c-76-22-135-46.hsd1.tn.comcast.net] has quit [Ping timeout: 246 seconds] 20140321 14:22:00< aquileia> iceiceice: I don't mean the test part, I mean the extremely elaborate template code 20140321 14:22:28< aquileia> For my usecase, unsigned char would be enough... 20140321 14:22:47< iceiceice> oh hmm i didnt notice that 20140321 14:23:42< aquileia> So didn't realize how much work this 'little' function would produce for him 20140321 14:24:02< aquileia> (or her) 20140321 14:25:59< vultraz> pretty sure _8680_ is a guy, but ya never know 20140321 14:29:13-!- neXyon [~neXyon@85-127-227-111.dynamic.xdsl-line.inode.at] has joined #wesnoth-dev 20140321 14:30:53-!- spoffy_ [~spoffy@2001:630:d0:ed03:caf7:33ff:fe0a:4542] has joined #wesnoth-dev 20140321 14:36:25-!- RiftWalker [~nathan@c-76-22-135-46.hsd1.tn.comcast.net] has joined #wesnoth-dev 20140321 14:41:09-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has quit [Quit: Leaving] 20140321 14:41:09< Aishiko_laptop> unless they have used a pronoun in referring to themselves 20140321 14:42:15-!- incredible [75d91889@gateway/web/freenode/ip.117.217.24.137] has joined #wesnoth-dev 20140321 14:46:12-!- Kevin_Xi [~kevin@223.72.182.158] has joined #wesnoth-dev 20140321 14:50:40-!- adityapande [ca4eaca2@gateway/web/freenode/ip.202.78.172.162] has joined #wesnoth-dev 20140321 14:51:09< adityapande> is it possible to run ai vs ai (both using different ai engines)? 20140321 14:52:24< Soliton> yes. 20140321 14:59:03-!- cib0 [~cib@p20030067CE5CD701267703FFFEE75B84.dip0.t-ipconnect.de] has joined #wesnoth-dev 20140321 15:02:58-!- vorobeez [558e940c@gateway/web/freenode/ip.85.142.148.12] has joined #wesnoth-dev 20140321 15:03:01-!- thunderstruck [~zaibotren@cpc13-sgyl31-2-0-cust696.18-2.cable.virginm.net] has joined #wesnoth-dev 20140321 15:07:25< thunderstruck> lipkab: but then you also got a call to swap 20140321 15:08:09-!- trademark [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has joined #wesnoth-dev 20140321 15:08:27< thunderstruck> lipkab: which was not there before, so I'm not convinced that it's not slower 20140321 15:11:19-!- spoffy_ [~spoffy@2001:630:d0:ed03:caf7:33ff:fe0a:4542] has quit [Ping timeout: 245 seconds] 20140321 15:11:44< RiftWalker> Yay! thunderstruck you're here! 20140321 15:12:01-!- spoffy_ [~spoffy@2001:630:d0:ed03:caf7:33ff:fe0a:4542] has joined #wesnoth-dev 20140321 15:12:30< RiftWalker> thunderstruck: would you know an example of an add-on that works only on one game mode? 20140321 15:13:00< thunderstruck> RiftWalker: If by game mode you mean SP or MP, then any modification or era works only on MP. 20140321 15:15:19< incredible> thunderstruck: I also want to know that. 20140321 15:19:30-!- incredible_ [~incredibl@117.217.24.137] has joined #wesnoth-dev 20140321 15:19:37< RiftWalker> thunderstruck: What is the single-player equivalent of mp_game_settings, if there is one? 20140321 15:19:48-!- incredible [75d91889@gateway/web/freenode/ip.117.217.24.137] has quit [Ping timeout: 245 seconds] 20140321 15:20:36-!- incredible [~incredibl@117.217.24.137] has joined #wesnoth-dev 20140321 15:21:01-!- incredible_ [~incredibl@117.217.24.137] has quit [Client Quit] 20140321 15:22:07< thunderstruck> RiftWalker: There is no such for SP, but perhaps gamestatus.*pp could be considered relevant here. 20140321 15:26:06< adityapande> how can i set up an ai vs ai ? 20140321 15:29:13< RiftWalker> thunderstruck: Okay, so I'm a little lost here, but I'm figuring it out. What about if we could just insert an ai as a player in a multiplayer game? 20140321 15:30:50< thunderstruck> RiftWalker: Were you trying to answer adityapande question's above? 20140321 15:31:17< thunderstruck> If so, I think developers use command line arguments to set a multiplayer game ai vs ai. 20140321 15:31:32< thunderstruck> But it should also be possible to do using gui. 20140321 15:31:44< RiftWalker> thunderstruck: I feel like if we could treat human and ai similarly, maybe as related classes, we could just structure everything similarly. And no, I wasn't, but it is related 20140321 15:31:58< adityapande> ok thanks thunderstruck and riftwalker 20140321 15:32:34< adityapande> i don't know how it is implemented but mostly if designed properly changing the game engines for different players shall be very easy 20140321 15:32:51< adityapande> so it must be there 20140321 15:35:05< thunderstruck> RiftWalker: more or less, human and ai is treated similarly 20140321 15:35:40< thunderstruck> RiftWalker: I'm not exactly sure how that relates to SP and MP. 20140321 15:37:12-!- ykanarev [~ykanarev@212.55.118.222] has quit [Quit: Leaving] 20140321 15:37:37< thunderstruck> RiftWalker: http://wiki.wesnoth.org/Zaroth_Multiplayer_Improvements 20140321 15:38:04< thunderstruck> ^ thi was an attempt to make every game a multiplayer game 20140321 15:38:23< thunderstruck> So, SP would be just an MP with only one player 20140321 15:38:58< vultraz> I'm still disappointed that project was never completed 20140321 15:41:38-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20140321 15:42:50< RiftWalker> thunderstruck: I see. So when we talk about sp, are we specifically talking about sp campaigns, or also mp games against ai? 20140321 15:44:01< thunderstruck> RiftWalker: Basically, multiplayer if everything what comes after you select "Multiplayer" in the main menu. 20140321 15:44:13< thunderstruck> s/if/is 20140321 15:44:20< thunderstruck> Anything else is singleplayer. 20140321 15:44:42< thunderstruck> So, MP ai vs. ai, is technically a multiplayer. 20140321 15:45:40< thunderstruck> vultraz: just by looking at that proposal, I think there was way too many work involved for a summer 20140321 15:45:53< thunderstruck> and also some of these things were not directly related 20140321 15:46:00< RiftWalker> So our goal here is to extend add-on capability to single player campaigns and tutorials? 20140321 15:46:16< thunderstruck> RiftWalker: well, not exactly 20140321 15:46:51< thunderstruck> RiftWalker: the goal would be to extend game's engine so that all games initialisation for MP and SP would be done using the same code 20140321 15:47:16< thunderstruck> this would automatically result into eras, mods and anything else working for SP 20140321 15:48:18< thunderstruck> RiftWalker: so, perhaps extending SP game's initialisation would be a way to go 20140321 15:48:27< thunderstruck> i.e. moving MP features to SP 20140321 15:48:35< RiftWalker> thunderstruck: okay, and that's done by play_controller and subclasses? 20140321 15:48:55< RiftWalker> Here, could you give my proposal a read and see if I'm on the right track? 20140321 15:49:28< RiftWalker> http://wiki.wesnoth.org/SoC2014_RiftWalker_Unify_SP_MP#Details 20140321 15:49:29< thunderstruck> RiftWalker: unfortunately, the relevant code is spread across many files and classes 20140321 15:49:48-!- adityapande [ca4eaca2@gateway/web/freenode/ip.202.78.172.162] has quit [Ping timeout: 245 seconds] 20140321 15:50:19< thunderstruck> RiftWalker: I can't tell now how play_controller is relevant. Basically, that's what happens during an actual game. 20140321 15:50:39< thunderstruck> But for your, the bigger problem might be how the game is actually initialised. 20140321 15:51:49< thunderstruck> RiftWalker: And also note that it's not just about add-ons. It's a bit more genral than that. 20140321 15:51:59< thunderstruck> Even though add-ons are mostly affected by this. 20140321 15:54:21< thunderstruck> RiftWalker: I had a look at your proposal. 20140321 15:54:35< RiftWalker> I see. I misread when you said to look at game_controller 20140321 15:54:59< thunderstruck> Well, play_controllers are probably still relevant. 20140321 15:55:52< RiftWalker> any thoughts on my proposal? I know it's pretty sparse right now. 20140321 15:56:34< thunderstruck> I think that my comments above relate to your proposal. 20140321 15:56:55-!- Aishiko_laptop [~unknown@198.85.71.253] has quit [Ping timeout: 246 seconds] 20140321 15:57:45< thunderstruck> RiftWalker: Overall, you should think how you could prepare a game config correctly for both SP and MP with all the stuff needed (read eras, mods, etc) 20140321 16:00:07-!- gfgtdf [~chatzilla@f054156092.adsl.alicedsl.de] has joined #wesnoth-dev 20140321 16:00:34< thunderstruck> RiftWalker: Did you submit your proposal to Google? 20140321 16:01:12< RiftWalker> thunderstruck: Not yet. I have three hours left. 20140321 16:02:01< thunderstruck> RiftWalker: Yes. But as I said yesterday, it's enough just to put a link to your proposal on wiki. 20140321 16:02:02< RiftWalker> What should I put down for the content section? 20140321 16:02:10< RiftWalker> ah i see. 20140321 16:04:28< thunderstruck> RiftWalker: I think I can also enable editing after the deadline if you really fancy that. 20140321 16:05:15< thunderstruck> But generally, I think that mentors here look at proposals on our wiki, rather than on GSoC page. 20140321 16:06:05< RiftWalker> Does google even have any say in screening proposals? 20140321 16:06:49< thunderstruck> I don't think so. 20140321 16:07:03< thunderstruck> Well, I think they have some country restrictions. 20140321 16:07:29< thunderstruck> But they don't screen your proposal as far as I know. 20140321 16:10:11< incredible> how to submit proposal on wiki? 20140321 16:10:40< incredible> i have make wiki page and submitted it on google. 20140321 16:10:49< incredible> *made 20140321 16:12:15< thunderstruck> incredible: that's enough 20140321 16:12:35< thunderstruck> (for a submission) 20140321 16:13:42< RiftWalker> thunderstruck: game_config_manager seems quite relevant 20140321 16:13:59< thunderstruck> RiftWalker: yes, possibly 20140321 16:17:09-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140321 16:18:04-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has joined #wesnoth-dev 20140321 16:18:33< Soliton> thunderstruck: "However, there is still some WML content which is not available for both singleplayer and multiplayer due to being handled by different code paths." what content is that? 20140321 16:19:05< thunderstruck> Soliton: eras and mods 20140321 16:19:33< Soliton> what would i do with an era in single player? 20140321 16:20:01< Soliton> presumably single player here means campaigns? (which do not use eras) 20140321 16:21:15< thunderstruck> Soliton: I think some players would still might want to have selection of eras in MP. Although, yes, that's not very useful. 20140321 16:21:19< thunderstruck> But it's not just about eras. 20140321 16:21:38< Soliton> s/MP/SP/? 20140321 16:21:46< thunderstruck> yes 20140321 16:22:04< Soliton> well, i have no idea how that would work. 20140321 16:22:07< thunderstruck> It's also about any type of content which might be developed later on. 20140321 16:22:22< thunderstruck> And making engine modular and more flexible. 20140321 16:22:44< Soliton> that all sounds great and terribly vague. 20140321 16:24:27< thunderstruck> Soliton: alright. As an example, I implemented a small feature for controller= attribute. But that feature is only available in MP. 20140321 16:24:50< thunderstruck> For it to be available in SP, it functionality would have to be duplicated. 20140321 16:25:00< Soliton> what feature is that? 20140321 16:25:52< thunderstruck> You can use side id with controller attribute. Fabi wanted this for LoW. 20140321 16:26:52< Soliton> you mean i can use controller with side id? 20140321 16:27:11< Soliton> i.e. controller=? 20140321 16:27:54< thunderstruck> Soliton: yes 20140321 16:28:42< sachith500|2> is the wiki down? 20140321 16:28:43< Soliton> and that then means..? 20140321 16:29:03< Soliton> wiki works fine for me. 20140321 16:29:05< RiftWalker> thunderstruck: It seems the code we want is all in mp. the task then, is basically having sp follow the mp code path, therefore having access to all its glory, but still working as we expect it to 20140321 16:29:08< sachith500|2> hmm strange 20140321 16:29:16< thunderstruck> Soliton: that means you can give multiple sides to one player. 20140321 16:30:01< thunderstruck> Soliton: I think we got off the actual topic.. 20140321 16:30:28< thunderstruck> RiftWalker: yes, at least most of it 20140321 16:30:32< Soliton> maybe, i was trying to figure out what the topic is. :-P 20140321 16:31:06< thunderstruck> Soliton: I think it was "why do we need to unify SP and MP" in this way, wasn't it? 20140321 16:31:11< Soliton> incidentally because i may have some comments but i have trouble figuring out whether they're relveant. 20140321 16:31:44< Soliton> thunderstruck: more what it means exactly. 20140321 16:32:03< Soliton> once i know that i can figure out why or if it's needed. 20140321 16:32:27< Soliton> and whether the comments i have are relevant. 20140321 16:32:43< thunderstruck> Soliton: I think I would describe it as a single code path to initialise game config for both MP and SP 20140321 16:33:00< thunderstruck> And as a result of this, eras, mods and anything else would work for both MP and SP 20140321 16:33:47< thunderstruck> Of course, there's more to this. But that's the main thing. 20140321 16:33:55< thunderstruck> IMO. 20140321 16:34:09< Soliton> unfortunately i don't know much about mods so i can't comment there (though i would expect them to already work for both) but for eras that still does not make much sense to me. 20140321 16:35:03< Soliton> anyway, what i was really wondering was if that unification doesn't lead us back to the proper separation of add-ons we've talked about last year when you started. 20140321 16:35:14< Soliton> maybe you remember that. 20140321 16:35:21< thunderstruck> Soliton: not really 20140321 16:36:13< Soliton> well, the issue with (MP) add-ons is that they're all in the same namespace. 20140321 16:36:27< Soliton> how would that factor into the unification? 20140321 16:36:44-!- matthiaskrgr is now known as matthiaskrgr_ 20140321 16:36:44< sachith500|2> by the way could someone make me a member of the SoC forum group 20140321 16:37:08-!- matthiaskrgr_ is now known as matthiaskrgr 20140321 16:37:12< sachith500|2> thunderstruck, you have access, right? :) 20140321 16:37:22< thunderstruck> sachith500|2: yes 20140321 16:37:30< thunderstruck> sachith500|2: I'll add you soon 20140321 16:37:38< sachith500|2> all right thanks, No hurry ^_^ 20140321 16:37:42< thunderstruck> Soliton: Hmmm... 20140321 16:37:48< Soliton> since eras were mentioned... how would you bring them into the "namespace" of a campaign? 20140321 16:38:19< Soliton> without creating a huge mess that is. ;-) 20140321 16:38:52< Soliton> so IMO that leads us back to the need to separate add-ons in some way. 20140321 16:39:01< thunderstruck> I see your point 20140321 16:39:09< Soliton> maybe similar to the campaign defines or some other way... 20140321 16:39:37< thunderstruck> Yes, I think it would be in the scope of the project to take care of this 20140321 16:40:23< Soliton> good. i think the project can't work without it. :-) 20140321 16:40:56< Soliton> but maybe i don't fully understand it since there's only been vague comments as to its nature. :-P 20140321 16:41:33< thunderstruck> Soliton: Well, nobody discussed it with me when I first asked about it here 20140321 16:42:11< Soliton> sure, still i would expect you to have some ideas. 20140321 16:42:44< Soliton> but more importantly i'm surprised... there are two students apparently interested but i've not seen much discussion so far. 20140321 16:42:59< thunderstruck> Soliton: yes, I got ideas. But I expect that students would also try to come up with ideas of their own and this way we could work out the best solution. 20140321 16:43:05< Soliton> but maybe that'll change soon... :-) 20140321 16:43:38< RiftWalker> thunderstruck: So I'm trying to map out these code paths. 20140321 16:43:43< thunderstruck> If I would just go and solve all the problems, then why would we need a student? :) 20140321 16:44:02 * Soliton nods. 20140321 16:44:07< thunderstruck> Soliton: This project only recently received some attention. 20140321 16:44:20< RiftWalker> we start in game_controller, which is invoked from game.cpp. 20140321 16:44:32< RiftWalker> game.cpp selects tutorial, campaign, multiplayer from gui 20140321 16:44:59-!- matthiaskrgr is now known as matthiaskrgr_ 20140321 16:45:00< thunderstruck> Soliton: I think that "unifying MP and SP" doesn't sound nowhere as exciting as writing some AI stuff 20140321 16:45:12< RiftWalker> and calls one of three functions in game_controller: set_tutorial, new_campaign, or play_multiplayer 20140321 16:45:48-!- matthiaskrgr_ is now known as matthiaskrgr 20140321 16:47:12< RiftWalker> basically we want to merge that into one function that takes as argument.... something object oriented! 20140321 16:48:05< thunderstruck> RiftWalker: well, it may be so. But that's a small detail. Remember that there are some bigger problems with this. 20140321 16:48:18< thunderstruck> E.g. as we have discussed with Soliton 20140321 16:50:34< RiftWalker> thunderstruck: well, that's the beginning, at least. i'll have to deal with everything that arises. I'm curious as to how multiplayer handles campaigns, but I need to sign off for now. I'll be back on after class. 20140321 16:51:01< thunderstruck> RiftWalker: Yes, it's important to get familiar with the code. 20140321 16:53:17-!- RiftWalker [~nathan@c-76-22-135-46.hsd1.tn.comcast.net] has quit [Quit: Leaving.] 20140321 16:53:47-!- Dublew [1fdcf10d@gateway/web/freenode/ip.31.220.241.13] has joined #wesnoth-dev 20140321 16:53:49-!- adityapande [ca4eaca2@gateway/web/freenode/ip.202.78.172.162] has joined #wesnoth-dev 20140321 16:54:11< adityapande> how to use damage_calculations in your own cpp ai script 20140321 16:54:15< adityapande> ? 20140321 16:57:39-!- kex [~kex@89.205.75.19] has quit [Remote host closed the connection] 20140321 16:58:12-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 17:00:34< thunderstruck> Soliton: So you're not against this in general? 20140321 17:00:40< mattsc> adityapande: have you checked out how the combat (attack) candidate action of the default AI does it? You would do it in the same way. 20140321 17:01:41< gfgtdf> EliDupree: online ? 20140321 17:02:18-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 17:02:37< adityapande> thanks mattsc 20140321 17:03:26< mattsc> adityapande: you're welcome. Use that as a starting point, and let us know if you have follow-up questions. 20140321 17:03:45< adityapande> sure 20140321 17:05:07< EliDupree> gfgtdf: yeah 20140321 17:05:23-!- Dublew [1fdcf10d@gateway/web/freenode/ip.31.220.241.13] has quit [] 20140321 17:05:38< EliDupree> (multitasking, might be slow to respond) 20140321 17:06:20< gfgtdf> EliDupree: you noticed that there are lags when recruiting units and similar, do you think they are heavy? specialy when you dont run it on a localhost servr ? 20140321 17:07:32< incredible> thunderstruck: do we have to change in multiplayer.cpp ? 20140321 17:07:36< incredible> thunderstruck: do we have to change in multiplayer.cpp ? 20140321 17:07:47< EliDupree> I only ran it on localhost. I was only speculating about lags 20140321 17:08:26< incredible> thunderstruck: do we have to change in multiplayer.cpp ? 20140321 17:08:42< thunderstruck> incredible: please don't spam this channel 20140321 17:08:50< vultraz> please stop spamming 20140321 17:09:14< incredible> its due to my net problem...sorry 20140321 17:10:21< thunderstruck> incredible: that file has probably little relevance to my GSoC project if it's what you mean 20140321 17:12:05< incredible> yes i mean that for unify SP and MP i have to modify any part of it? 20140321 17:14:12< thunderstruck> incredible: I can't tell you exactly which files you'd need to modify 20140321 17:14:21< gfgtdf> thunderstruck: by unifying MP and SP you talk more about User experience/UI or codepaths ? 20140321 17:14:29< thunderstruck> gfgtdf: codepaths 20140321 17:15:09< Soliton> thunderstruck: no, i'm not against it. especially if a solution to the add-on issue comes of it. 20140321 17:16:39< thunderstruck> Soliton: that would probably be the first problem which project should solve 20140321 17:17:22< Soliton> i agree and it's a big one... 20140321 17:17:37< thunderstruck> Soliton: well, that depends very much on solution, I think 20140321 17:18:18< Soliton> well, IMO it's a big problem right now. no matter how it is solved. :-) 20140321 17:20:07< Soliton> i can not imagine an easy solution either though. and i doubt it's possible without significant changes to how (MP) add-ons work. 20140321 17:21:29-!- RiftWalker [~nathan@129.59.115.25] has joined #wesnoth-dev 20140321 17:22:59< RiftWalker> thunderstruck: so how are campaigns handled in multiplayer, and what's stopping us from using that code with one player? 20140321 17:23:38< thunderstruck> RiftWalker: The new multiplayer campaings are now basically handled similarly as singleplayer ones. 20140321 17:23:53< thunderstruck> I.e. each campaign has its own define 20140321 17:24:31< thunderstruck> RiftWalker: Nothing stops us to have one player playing them. 20140321 17:24:55< thunderstruck> Soliton: http://pastebin.com/ENTxkBp9 20140321 17:25:18< thunderstruck> might be a stupid idea, but maybe something like this could work? 20140321 17:25:25< RiftWalker> thunderstruck: from what i understand, there is no add-on capability for multiplayer campaigns? 20140321 17:25:41< thunderstruck> RiftWalker: there is 20140321 17:30:09< thunderstruck> RiftWalker: add-on code does not really know the difference between different types of add-ons. Add-on creator has to specify the add-on type in config file. 20140321 17:30:42< RiftWalker> so could we not have single player campaigns use the same code as multi campaigns, set to one player? we could edit the sp campaign selection to have an era, mod selection like the mp screen, but have the rest of the multiplayer options set to local, single player.... there must be more than that. 20140321 17:32:16< thunderstruck> RiftWalker: but you want different behaviour for MP and SP regarding sides and many other things 20140321 17:32:32< RiftWalker> thunderstruck: from a writing standpoint, what differentiates a sp campaign from an mp one? 20140321 17:32:36< thunderstruck> RiftWalker: I believe that's why there is sp and mp controllers 20140321 17:32:47< thunderstruck> s/there is/there are 20140321 17:33:32< thunderstruck> RiftWalker: on MP campaign, some additional initialisation stuff happens to prepare it for MP 20140321 17:34:00< thunderstruck> RiftWalker: oh, you said writing 20140321 17:34:05< thunderstruck> RiftWalker: So you mean WML? 20140321 17:34:21< RiftWalker> Yes. I guess ideally nothing should be different? 20140321 17:34:34< thunderstruck> RiftWalker: yes 20140321 17:35:06< thunderstruck> RiftWalker: but due to practical reasons there is type= and additionally, you can find such things as factions in MP campaign 20140321 17:35:14< RiftWalker> but there are things that simply don't work on sp because they aren't implemented? 20140321 17:35:29< incredible> thunderstruck: can we just pass single player game for a request of multiplayer by replacing ai by players?? 20140321 17:35:50< thunderstruck> RiftWalker: So, in LoW campaign, which is a hybrid campaign, you see lots of MULTIPLAYER defines to take car of this 20140321 17:35:54< thunderstruck> s/car/care 20140321 17:36:29< thunderstruck> RiftWalker: yes, some things don't work in SP, because MP games receive additional initialisation 20140321 17:36:41< thunderstruck> RiftWalker: e.g. applying eras 20140321 17:38:38< thunderstruck> incredible: that wouldn't make much sense, because single player game doesn't have a connection with server 20140321 17:39:09< thunderstruck> incredible: So, it would still be a one player game 20140321 17:39:43-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20140321 17:39:53< incredible> thunderstruck: only a connection is required and we can provide it from current multiplayer game.. 20140321 17:40:13< thunderstruck> thunderstruck: not only a connection. MP and SP have different logic. 20140321 17:40:19< thunderstruck> incredible: ^ 20140321 17:40:47< thunderstruck> incredible: so, you can't have exactly same code for MP and SP. There must be some differences. 20140321 17:41:13< RiftWalker> thunderstruck: for mp campaigns to work with sp, we need to be able to assign ai's to factions as we assign players in the mp lobby. 20140321 17:41:42-!- travis-ci [~travis-ci@ec2-107-20-8-227.compute-1.amazonaws.com] has joined #wesnoth-dev 20140321 17:41:42< travis-ci> [travis-ci] gfgtdf/wesnoth-old#43 (sync_2 - 3ba1134 : gfgtdf): The build was broken. 20140321 17:41:43< travis-ci> [travis-ci] Build details : http://travis-ci.org/gfgtdf/wesnoth-old/builds/21270702 20140321 17:41:43-!- travis-ci [~travis-ci@ec2-107-20-8-227.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140321 17:42:25< thunderstruck> RiftWalker: it should be possible to assign any side to faction (if it was intented by campaign author, of course) 20140321 17:43:11< RiftWalker> i propose a variant of the mp team select lobby where the single player could simply select a faction and the others would be auto-set to ai. 20140321 17:43:40< incredible> for singleplayer--- multiplayer(AI)(*no of scenarios) and for multiplayer --- multiplayer(AI/player)(*selected map) 20140321 17:44:03-!- ancestral [~ancestral@63.92.240.233] has joined #wesnoth-dev 20140321 17:44:11< incredible> thunderstruck: ^ 20140321 17:44:13< RiftWalker> the mp game config screen could also stay for sp 20140321 17:45:54< incredible> thunderstruck: we can define a call to different scenario files for single player and different call to map for multiplayer with AI 20140321 17:46:08< incredible> or with players.. 20140321 17:46:57< thunderstruck> incredible: you'll have to give me more information, because what you're saying is very abstract and I can't really relato to it 20140321 17:47:04< thunderstruck> s/relato/relate 20140321 17:48:13< thunderstruck> RiftWalker: Talking about actual GUI dialogs, I think that most developers wouldn't agree to drastically change them 20140321 17:48:28< thunderstruck> RiftWalker: And also, eras and mods should only be optional for SP 20140321 17:49:04< thunderstruck> RiftWalker: so, it would be up to campaigns author to decide whether players should use her campaign with eras and mods 20140321 17:50:14< thunderstruck> RiftWalker: and the solution for this would be to provide a button which would open a dialog with these additional settings only if campaign has the right flag set 20140321 17:50:17< thunderstruck> or something similar 20140321 17:50:51-!- matthiaskrgr is now known as matthiaskrgr_ 20140321 17:50:59-!- matthiaskrgr_ is now known as matthiaskrgr 20140321 17:51:19-!- spoffy_ [~spoffy@2001:630:d0:ed03:caf7:33ff:fe0a:4542] has quit [Ping timeout: 245 seconds] 20140321 17:51:20< RiftWalker> thunderstruck: are we concerned with playing sp campaigns in mp? are we even concerned with playing mp campaigns in sp? or are we only concerned with the way they're handled? 20140321 17:51:23< thunderstruck> RiftWalker: It might useful to create so mockups for this, but it's definitely not the most important thing for this project 20140321 17:51:47< thunderstruck> RiftWalker: we're concerned how they are handled 20140321 17:52:07< thunderstruck> RiftWalker: And if they are handled correctly, you should be able to play them whatever you want 20140321 17:53:18< thunderstruck> RiftWalker: By the way, it's not really a problem to play SP campaing in MP or vice-versa. 20140321 17:53:40< thunderstruck> The problem is that some features are missing for SP. 20140321 17:54:01-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has quit [Read error: Connection reset by peer] 20140321 17:57:20< thunderstruck> RiftWalker: I'm going AFK now, but you can still leave any questions here and I'll try to answer them later. 20140321 17:57:29< RiftWalker> thunderstruck: Okay. 20140321 17:57:43< thunderstruck> RiftWalker: And by the way, while I have some ideas how to solve this, it might be that you could come up with something better. 20140321 17:58:32< RiftWalker> thunderstruck: I'll see what I can come up. Expect plenty of questions when you get back! 20140321 17:59:20< aquileia> What is the lesser evil: Add a line to .gitignore or require Windows users to add it manually in their local .gitignore? I guess the former, but I prefer to ask 20140321 17:59:39< thunderstruck> RiftWalker: Okay. I recommend to play more with the code that you would get a better idea how things work and what are the possible problems. 20140321 18:00:01-!- ancestral [~ancestral@63.92.240.233] has quit [Quit: i go nstuf kthxbai] 20140321 18:00:39< aquileia> Currently only projectfiles/VC10 is ignored, but a user of a newer version like VC12 will have to exclude that folder 20140321 18:01:05< Soliton> aquileia: the latter makes little sense since you would use .git/info/exclude. 20140321 18:01:14-!- Gallaecio [~quassel@84.120.115.86.dyn.user.ono.com] has joined #wesnoth-dev 20140321 18:01:23-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 18:01:29< aquileia> Soliton: I mean the .gitignore inside the folder 20140321 18:01:32< incredible> thunderstruck: please look at this.. can we do it in this way?? https://gist.github.com/incr3dibl3/9691909#file-gistfile1-txt 20140321 18:01:40< aquileia> That's a possibility as well 20140321 18:01:53< sachith500|2> hey Soliton, how many students have applied for our project :D 20140321 18:02:01< Soliton> aquileia: you do not want to edit tracked files. 20140321 18:02:31< aquileia> But that file would exclude itself from being tracked: '*' 20140321 18:02:43< Soliton> sachith500|2: i've not registered as a mentor yet. no idea besides what you can see in the wiki. 20140321 18:02:52< sachith500|2> oh ok 20140321 18:03:11< aquileia> The whole VC12 folder is excluded in that case (it's my current local solution) 20140321 18:03:20-!- RiftWalker [~nathan@129.59.115.25] has quit [Ping timeout: 265 seconds] 20140321 18:03:37< Soliton> aquileia: you can't ignore checked in files. 20140321 18:03:49< aquileia> But I want to update the Wiki page for those Compiling on Windows, and in this case I'd like to request that addition 20140321 18:04:30< Soliton> anyway just add it to .gitignore. 20140321 18:04:31< aquileia> Soliton: My current structure is projectfiles/VC12/.gitignore with the content '*' 20140321 18:04:37< aquileia> ok, thanks 20140321 18:04:56< aquileia> That's easier for all sides 20140321 18:05:39< Soliton> aquileia: and projectfiles/VC12/.gitignore is a tracked file? 20140321 18:05:54-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 245 seconds] 20140321 18:06:03< aquileia> It would be tracked if it didn't exclude itself 20140321 18:06:20< Soliton> aquileia: and projectfiles/VC12/.gitignore is a checked in? 20140321 18:06:27< Soliton> s/a// 20140321 18:06:39 * aquileia doesn't know what that implies... 20140321 18:06:52< aquileia> It's only on my local PC 20140321 18:06:58< Soliton> tracked == checked in == committed 20140321 18:07:06< aquileia> no, it isn't 20140321 18:07:35< Soliton> ok, because otherwise that would not work. 20140321 18:08:16< gfgtdf> anyone knows the exact difference between game_state and game_data ? 20140321 18:08:31< aquileia> If you use Visual Studio, you'll copy the VC9 folder (which is tracked) to e.g. VC12 because you need an ignored folder where VC can play 20140321 18:09:16 * Soliton . o O (*Neuer Ordner* in .gitignore, really?) 20140321 18:09:42< gfgtdf> Soliton: yes i thought if someone commits something he can give it meaningfull name 20140321 18:10:11< Soliton> .gitignore is not there to prevent people from committing stuff. 20140321 18:10:43< gfgtdf> Soliton: hm then what is it for ? 20140321 18:11:13< Soliton> it's there to have existing, needed stuff that however should not be tracked show up in git status. 20140321 18:11:47< Soliton> like anything that is normally generated by building/running etc. 20140321 18:12:17< gfgtdf> Soliton: i used to generatoe a lot on Neuer Ordner while working 20140321 18:12:51< Soliton> that's your special work flow then. 20140321 18:12:54-!- RiftWalker [~nathan@129.59.115.25] has joined #wesnoth-dev 20140321 18:13:07< aquileia> Soliton: Not really, it's the Windows workflow 20140321 18:13:15< sachith500|2> pardon the interruption but what's a Neuer Ordner? 20140321 18:13:15< Soliton> if i happend to have a path involving *Neuer Ordner* in my checkout i certainly want to know about it. 20140321 18:13:25< aquileia> every folder is "Neuer Ordner" before you rename it 20140321 18:13:31< sachith500|2> oh new folder 20140321 18:13:34< sachith500|2> got it :P 20140321 18:14:22< Soliton> fine, it's windows "work flow" if you can't figure out how to name your directories when you create them. 20140321 18:15:03< gfgtdf> Soliton: well i i uded another name i had to add that name to gitignore, i dont see why that would be better 20140321 18:15:07< gfgtdf> used* 20140321 18:15:41< gfgtdf> s/i/if 20140321 18:15:59< Soliton> gfgtdf: why can't you use .git/info/exclude for your own special work flow needs? 20140321 18:16:14< Soliton> you don't need to force it on everyone. 20140321 18:16:47< gfgtdf> Soliton: i ca use .git/info/exclude just like .gitignore ? 20140321 18:16:50< gfgtdf> can* 20140321 18:17:21< Soliton> i believe in you. 20140321 18:17:52< sachith500|2> :D 20140321 18:18:25-!- Duthlet [~Duthlet@wesnoth/mp-mod/Duthlet] has quit [Quit: leaving] 20140321 18:19:20-!- Kevin_Xi [~kevin@223.72.182.158] has left #wesnoth-dev [] 20140321 18:21:09< happygrue> sachith500|2: I haven't read them all, but yours is the only one that shows in melange and is titled to make me think it's about the data analysis project 20140321 18:21:23< sachith500|2> oh ok 20140321 18:21:31< sachith500|2> glad I didn't try out for the AI project then :D 20140321 18:21:42< happygrue> there was some other interest, someone may have a placeholder in, as I understand it, and write up something still, but no one is telling me about it :D 20140321 18:21:53< sachith500|2> ^_^ 20140321 18:22:00< happygrue> yeah, there is a lot of interest in the AI :D 20140321 18:22:19< sachith500|2> yeah, this idea is just as cool though ;) 20140321 18:22:28< happygrue> There always is. But boy, it is hard to really do good things with the AI too ;) 20140321 18:22:29< sachith500|2> if not cooler ha! 20140321 18:22:34< sachith500|2> yeah 20140321 18:22:38< happygrue> right! Exactly! :D 20140321 18:22:52< sachith500|2> hehe 20140321 18:23:30-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has joined #wesnoth-dev 20140321 18:23:31-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has quit [Changing host] 20140321 18:23:31-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140321 18:24:47< adityapande> sachith500 why are you happy for not applying in AI project ? 20140321 18:25:19< adityapande> it is really challenging but fun at the same time 20140321 18:25:39< sachith500|2> well my plan was to let the devs decide the best project for me (if any) 20140321 18:25:55< sachith500|2> if the AI project has enough people there's really no need for me to apply 20140321 18:25:59< mattsc> sachith500|2: quick question: what's the definition (or whatever) of an evaluation function as you used the term a week or so ago when talking to Crab_? 20140321 18:26:15< sachith500|2> well it basically takes in the state of the game 20140321 18:26:20< sachith500|2> and outputs a value 20140321 18:26:25< sachith500|2> *a state of the game 20140321 18:26:29< mattsc> sachith500|2: I don't know if you saw the comment I made a few hours later while you were offline. 20140321 18:26:31< sachith500|2> of it's suitability 20140321 18:26:40< sachith500|2> oh no I must have missed it 20140321 18:26:53< sachith500|2> did you tag me? 20140321 18:27:06< sachith500|2> I'll check the log 20140321 18:27:08< mattsc> yes, but don't bother looking it up, I'll just repeat it. 20140321 18:27:12< sachith500|2> oh ok 20140321 18:27:39< mattsc> It just said that while I don't know what the definition of evaluation function is in CS, the way I understand the term my AIs use them all over the place. 20140321 18:27:54< sachith500|2> yeah they do 20140321 18:28:02< sachith500|2> the basic concept is just that 20140321 18:28:02< mattsc> It also said that that is FYI only, and no reply required. :) 20140321 18:28:20< sachith500|2> oh ok :D 20140321 18:28:24< sachith500|2> yeah they do use the basic idea 20140321 18:28:35< sachith500|2> but the beauty is that it can be extended 20140321 18:28:39< sachith500|2> for any number of features 20140321 18:28:49< sachith500|2> like some chess algos use about 40+ features 20140321 18:28:58< sachith500|2> since wesnoth is much much more complex 20140321 18:29:11< sachith500|2> I'd imagine the possibilities are huge 20140321 18:29:23< sachith500|2> but at it's core, they'd all be built using simple concepts 20140321 18:29:38< sachith500|2> it's just a matter of adjusting their weightage 20140321 18:29:45< adityapande> ya it is 20140321 18:30:56< mattsc> sachith500|2: yep - okay, thanks, that's how I understood what you were saying, just wanted to be sure. 20140321 18:31:08< sachith500|2> ^_^ 20140321 18:31:19< mattsc> And, of course, the "just" in your last sentence isn't all that easy to do in practice. :) 20140321 18:31:28< sachith500|2> of course 20140321 18:31:35< sachith500|2> generally some form of ML is used 20140321 18:31:43< sachith500|2> Machine Learning 20140321 18:32:00< adityapande> i would differ in opinion 20140321 18:32:08< sachith500|2> oh? 20140321 18:32:22< sachith500|2> how so? 20140321 18:32:45< adityapande> weight functions are a important part of the ai implementation 20140321 18:32:56-!- EdB [~edb@85.69.242.6] has joined #wesnoth-dev 20140321 18:33:05< adityapande> and using 'just' to describe it is not appropriate :p 20140321 18:33:30< adityapande> how you get it is a different issue though 20140321 18:34:47< sachith500|2> well you could use some Genetic Algorithms I think 20140321 18:34:50< adityapande> ml is one such option to train a system to get the value of the weight functions based on a lot of data and a reasonable cost function 20140321 18:36:37< adityapande> you made me wonder 20140321 18:36:50< sachith500|2> yeah shoot 20140321 18:37:07< adityapande> how are the values of chess pieces actually determined 20140321 18:37:25< adityapande> ml would just need too much data 20140321 18:37:28< sachith500|2> you mean the 1 for pawn etc? 20140321 18:37:37< adityapande> yes 20140321 18:37:47< sachith500|2> I think those were assigned by grandmasters 20140321 18:37:56< sachith500|2> at first 20140321 18:38:00< sachith500|2> but they are situational 20140321 18:38:02< adityapande> and ml would not be a viable choice 20140321 18:38:11< adityapande> can't provide a very large data set 20140321 18:38:17< sachith500|2> erm 20140321 18:38:20< sachith500|2> for chess? 20140321 18:38:24< adityapande> yes 20140321 18:39:10< sachith500|2> I think that's how most of the models work 20140321 18:39:25< sachith500|2> do you know the state space for chess 20140321 18:39:44< adityapande> ya it is more than the number of atoms in the universe 20140321 18:40:17< adityapande> source : i represent my college chess team 20140321 18:40:44< adityapande> however the state space of wesnoth is even larger 20140321 18:41:06< sachith500|2> well yeah 20140321 18:41:08< adityapande> so i rejected the ML idea for weight function assignment 20140321 18:41:50< sachith500|2> well bruteforce ML maybe 20140321 18:41:56< sachith500|2> bruteforce would obviously fail 20140321 18:42:00-!- incredible [~incredibl@117.217.24.137] has quit [Quit: Leaving] 20140321 18:42:01< adityapande> really? 20140321 18:42:25-!- incredible [~incredibl@117.217.24.137] has joined #wesnoth-dev 20140321 18:42:31< adityapande> ya it will obviously fail 20140321 18:42:59< sachith500|2> I have a feeling that with some GA optimizations it would stand a chance 20140321 18:43:00< sachith500|2> hmm 20140321 18:43:14< adityapande> GA is what? 20140321 18:43:22< sachith500|2> Genetic Algorithms 20140321 18:44:04-!- travis-ci [~travis-ci@ec2-107-20-8-227.compute-1.amazonaws.com] has joined #wesnoth-dev 20140321 18:44:04< travis-ci> [travis-ci] gfgtdf/wesnoth-old#44 (sync_2 - b53b86f : gfgtdf): The build was fixed. 20140321 18:44:04< travis-ci> [travis-ci] Build details : http://travis-ci.org/gfgtdf/wesnoth-old/builds/21273094 20140321 18:44:04-!- travis-ci [~travis-ci@ec2-107-20-8-227.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140321 18:44:04< adityapande> maybe but I am not sure 20140321 18:44:31< sachith500|2> hmm well the first step is coming up with enough interesting features 20140321 18:44:43< sachith500|2> if you're using evaluating functions anyway 20140321 18:44:59< sachith500|2> I guess I'll enjoy sitting on the sidelines and watching whoever tackles that particular problem ;) 20140321 18:45:05< mattsc> Just as a side comment, we have an AI in the AI-demos collection that tried to tackle recruiting (and recruiting only) using ML. 20140321 18:45:18< sachith500|2> oh akihara? 20140321 18:45:19< sachith500|2> was it? 20140321 18:45:28< adityapande> ya i plan to use it in my ai implementation 20140321 18:45:45< mattsc> No Seattledad. And he's not around any more, so it's not really finished. 20140321 18:45:59< adityapande> ohh 20140321 18:45:59< sachith500|2> oh interesting 20140321 18:46:20< mattsc> As far as he got in the time he had, it never really could stand up to Alarantalara's "hand-made" recruiter. 20140321 18:46:40< adityapande> anyways I ll try to implement something similar myself 20140321 18:46:50< sachith500|2> well the first step to the AI is (I feel) to play the game 20140321 18:46:53< sachith500|2> for a while 20140321 18:46:53< adityapande> it might not be as good though 20140321 18:46:59< vultraz> (what's ML?) 20140321 18:47:04< sachith500|2> machine learning 20140321 18:47:07< adityapande> machine learning 20140321 18:47:18< thunderstruck> incredible: But what exactly does launching SP from multiplayer.ccp solve? 20140321 18:47:21< adityapande> ohh 1 millisecond late 20140321 18:47:26< sachith500|2> actually 20140321 18:47:30< sachith500|2> 4 ;) 20140321 18:47:33< vultraz> 4 20140321 18:47:34< vultraz> :P 20140321 18:47:35< sachith500|2> but who's counting anyway ;) 20140321 18:47:47< adityapande> no problem 20140321 18:48:09< sachith500|2> mattsc what do you mean by handmade? 20140321 18:48:21< sachith500|2> you mean mostly motivated by game insights? 20140321 18:48:50< adityapande> i guess it would be like manually picking 20140321 18:48:58< adityapande> for particular map 20140321 18:49:02< incredible> thunderstruck: by using same cpp file for multiplayer and singleplayer our problem can be solved at some level. 20140321 18:49:03< mattsc> using intuition and tuning weighting functions by watching lots of games plus running AI vs AI batches and adjusting things based on that ... 20140321 18:49:13< sachith500|2> ah right 20140321 18:49:20< sachith500|2> yeah game experience is very important 20140321 18:49:28< incredible> thunderstruck: i think so... 20140321 18:49:30< RiftWalker> i think he's got something there 20140321 18:50:14< sachith500|2> you can't program (an efficient) chess ai without being good at chess 20140321 18:50:17< sachith500|2> that's what I feel 20140321 18:50:40< adityapande> it is not true 20140321 18:50:43< RiftWalker> thunderstruck: let me get a few things straight 20140321 18:50:44< mattsc> That's probably why my Wesnoth AIs aren'y worth anything. ;) 20140321 18:50:57< thunderstruck> incredible: If I understand you correctly, we already got game_controller.cpp which takes care of launching SP and MP games 20140321 18:51:00< mattsc> Well, that and the fact that I don't know anything about coding. :D 20140321 18:51:14< adityapande> can't you train a system to be better than you 20140321 18:51:22< RiftWalker> thunderstruck: a campaign is a collection of skirmishes 20140321 18:51:30< thunderstruck> RiftWalker: we call them scenarios 20140321 18:51:31< sachith500|2> LOL! 20140321 18:51:49< sachith500|2> wait did I just hear right 20140321 18:51:57< sachith500|2> the SP MP idea is already implemented? 20140321 18:51:57< adityapande> it is possible i don't know tic tac toe but 20140321 18:52:29< adityapande> train a system and use ai vs ai to train it long enough 20140321 18:52:35< adityapande> and it would be very goo 20140321 18:52:39< adityapande> good* 20140321 18:52:46< sachith500|2> problem is the state space 20140321 18:52:49< sachith500|2> and optimizations 20140321 18:52:52< adityapande> this is the basic concept of ML 20140321 18:53:01< RiftWalker> thunderstruck: RIght. Secondly, a campaign, whether sp or mp, has a set of factions which may (supposedly) be played by a human or ai 20140321 18:53:07< adityapande> ya in this case it is not applicable 20140321 18:53:18< adityapande> because of the game complexity 20140321 18:53:56< RiftWalker> thunderstruck: for sp campaigns, this is generally predetermined, but for mp campaigns, players choose their factions. 20140321 18:53:58< thunderstruck> sachith500|2: If you are reffering to the "unify SP and MP" then it's not already implemetned 20140321 18:54:07< sachith500|2> oh right sorry 20140321 18:54:14< sachith500|2> I guess I misread the context 20140321 18:54:20< sachith500|2> of your earlier message 20140321 18:54:30< happygrue> I have no formal AI training, but I would strongly doubt that a Wesnoth AI that is trying to train itself would turn out well. There are so many very slight factors that I think would just throw it all off. But I am no expert so I could be dead wrong. :D 20140321 18:54:38< incredible> thunderstruck: i think we have different files for running both SP and MP . 20140321 18:54:49< sachith500|2> yeah happygrue, true 20140321 18:54:58< sachith500|2> it would definitely need a human hand 20140321 18:55:01< adityapande> happygrue: i agree completely 20140321 18:55:03< happygrue> I was actually very impressed with the AI and it was one of the things that turned me onto the game 20140321 18:55:11< thunderstruck> RiftWalker: SP has no factions, only MP 20140321 18:55:23< sachith500|2> yeah, it's quite good as it currently is for the most part 20140321 18:55:24< happygrue> having played many games with truely bad AIs, it could handle the vast complexity with reasonable moves a lot of the time 20140321 18:55:28< happygrue> BUT 20140321 18:55:39< sachith500|2> there's a lot of room for improvement? 20140321 18:55:39< happygrue> what really kills it are the turns where it changes strategy at the wrong time 20140321 18:55:57< sachith500|2> hmm 20140321 18:55:58< adityapande> what does that mean 20140321 18:56:01< thunderstruck> RiftWalker: But in a way you are right. 20140321 18:56:04< sachith500|2> it attacks stupidly 20140321 18:56:07< sachith500|2> sometimes 20140321 18:56:07< adityapande> changing strategy at wrong time 20140321 18:56:09-!- EdB [~edb@85.69.242.6] has quit [Quit: Konversation terminated!] 20140321 18:56:10< happygrue> you give it some advantages with gold and such, and then it presses you well, but there will be some turn where it just stalls and decided to play timid and do ranged attacks, letting you off the hook 20140321 18:56:29< happygrue> when it should either press on or run away, it doesn't factor it's own losses in I guess 20140321 18:56:32< adityapande> ohh 20140321 18:56:34< sachith500|2> yeah I've seen that in the 5 player X map i think 20140321 18:56:37< happygrue> sure, lots of room to improve 20140321 18:56:40< thunderstruck> RiftWalker: Factions is just an abstraction for players recruit list. 20140321 18:56:58< adityapande> maybe its economy goes down 20140321 18:57:00< sachith500|2> you give it gold and it does pretty well 20140321 18:57:08< adityapande> so it can't sustain unit production 20140321 18:57:17< happygrue> many players actually struggelt against the AI in a fair fight when they first start out 20140321 18:57:19-!- EdB [~edb@85.69.242.6] has joined #wesnoth-dev 20140321 18:57:24< sachith500|2> yeah 20140321 18:57:27< sachith500|2> I know I did 20140321 18:57:28< adityapande> yes 20140321 18:57:29< happygrue> but people figure out a few things to do and not do 20140321 18:57:34< incredible> thunderstruck: can we do this for a single player we call MP with an AI?? 20140321 18:57:36< happygrue> and over the course of the game, they will win out on those 20140321 18:57:53< happygrue> the AI can play 80% of turns well in some game, but will lose on the few turns it does poorly on 20140321 18:58:01< thunderstruck> incredible: Do what? 20140321 18:58:02< happygrue> (just to pick a random number) 20140321 18:58:10< sachith500|2> one turn is enough to turn the whole game 20140321 18:58:15< happygrue> yep 20140321 18:58:20< sachith500|2> that's the beauty of wesnoth 20140321 18:58:29< sachith500|2> it's all so elaborate ^_^ 20140321 18:58:32< happygrue> so IMO, again as not an AI expert at all, just working on the worst cases would bring up the AI a lot 20140321 18:58:40< adityapande> for any strategy game for that matter 20140321 18:58:47< happygrue> not really making it smarter accross the board. But in practice I have no idea what that means :D 20140321 18:58:56< sachith500|2> hehe :D 20140321 18:59:04< incredible> thunderstruck: we call MP with AI.. (which changes maps according to scenarios). 20140321 18:59:12-!- Delfinisko [~Delfinisk@ip-85.163.128.192.o2inet.sk] has joined #wesnoth-dev 20140321 19:00:25< adityapande> how would a heuristic work that the ai mostly try to push forward and charge unless it is losing a lot of units/health without much progress? 20140321 19:01:01< incredible> thunderstruck: if i start SP which files are called?? 20140321 19:01:16< happygrue> I don't know adityapande. "progress" can be very hard to measure 20140321 19:01:24< thunderstruck> incredible: Did you try to look at the code yourself? 20140321 19:01:39< adityapande> ya i was a bit abstract 20140321 19:01:44< happygrue> you can lose twice as many units as your opponent and still crush him if you have all the villages... 20140321 19:02:08< adityapande> yes 20140321 19:02:09< happygrue> or maybe you win the battles but lose the war still on economics or letting your leader get hit 20140321 19:02:10< sachith500|2> also advancement 20140321 19:02:16< sachith500|2> plays a very important role 20140321 19:02:30< happygrue> if you start recruiting a certain unit, your opponent could counter 20140321 19:02:54< mattsc> happygrue: yeah, Fred does that too much (winning the overall battle but forgetting to protect the leader...) 20140321 19:02:55< happygrue> and then do you counter it? what if he switches back? Should you press by continuing to recruit burners, or switch to saurian? 20140321 19:03:04< gfgtdf> sachith500|2: you say choosing the correct unit advnacement is yery important for an AI? 20140321 19:03:21< incredible> yes i looked at game_controller.cpp, multiplayer.cpp 20140321 19:03:33< incredible> thunderstruck: ^ 20140321 19:03:33< adityapande> advancement is important 20140321 19:03:42< adityapande> especially to capture the villages 20140321 19:03:49< sachith500|2> not the correct advancement 20140321 19:03:56< sachith500|2> the concept of advancement rather 20140321 19:04:05< gfgtdf> adityapande: ghm i dont see why advancement is important for capturing villages 20140321 19:04:11< sachith500|2> generally the advancements are pretty balanced 20140321 19:04:26< mattsc> adityapande: are you talking about advancing forward on the map? 20140321 19:04:32< adityapande> yes 20140321 19:04:38< sachith500|2> >.> 20140321 19:04:38< mattsc> hehe 20140321 19:04:39< sachith500|2> erm 20140321 19:04:40< sachith500|2> lol 20140321 19:04:47< thunderstruck> incredible: so, if you do little debugging, you should be able to easily trace what classes or files are being used for SP 20140321 19:04:55< adityapande> if you think turn wise it is useful to advance and explore and increase your map control 20140321 19:05:11< mattsc> adityapande: that's not what people usually mean when they talk about "advancements" in Wesnoth 20140321 19:05:18< adityapande> ohh 20140321 19:05:30< incredible> thunderstruck: ok i try it now.. 20140321 19:05:31< adityapande> sorry i have used wrong terminology i guess 20140321 19:06:00< mattsc> Not really, just that the term is also used (more commonly) for something else. So it's not wrong so mach as confusing people. 20140321 19:06:15< adityapande> ohh 20140321 19:06:30< mattsc> advancing a unit to a different type, that is 20140321 19:06:30< sachith500|2> yeah, I still get races and factions messed up sometimes :P 20140321 19:07:15-!- incredible [~incredibl@117.217.24.137] has quit [Quit: Leaving] 20140321 19:07:22< happygrue> http://wiki.wesnoth.org/Glossary 20140321 19:07:30< sachith500|2> ^_^ 20140321 19:07:30< happygrue> useful to skim once :D 20140321 19:07:33< RiftWalker> thunderstruck: Is the single player campaign ai the same as the multiplayer ai? 20140321 19:07:50< sachith500|2> so proposal period is over ;D 20140321 19:07:53< adityapande> blocked site 20140321 19:07:56< sachith500|2> not that it changes much 20140321 19:08:18-!- EdB [~edb@85.69.242.6] has quit [Quit: Konversation terminated!] 20140321 19:08:19< adityapande> howcome 20140321 19:08:34< thunderstruck> RiftWalker: yes, as far as I know. 20140321 19:08:53< mattsc> RiftWalker: yes - unless you modify one or the other specifically 20140321 19:09:02< thunderstruck> RiftWalker: Just that for MP, the random seed is shared to make AI behave exactly the same etc. 20140321 19:09:14< thunderstruck> (for different players) 20140321 19:09:36< sachith500|2> gsoc proposal period is closed, I meant :P 20140321 19:10:01< adityapande> ohh 20140321 19:10:22< gfgtdf> thunderstruck: hm no the ai moves are just sended over teh network from teh host 20140321 19:10:30-!- EdB [~edb@85.69.242.6] has joined #wesnoth-dev 20140321 19:10:45< thunderstruck> gfgtdf: okay 20140321 19:10:54< thunderstruck> gfgtdf: so why random seed is shared? 20140321 19:11:06< gfgtdf> thunderstruck: for other thing liek attack results, recuit traits 20140321 19:11:13< gfgtdf> and set_variable rand= 20140321 19:11:17< thunderstruck> gfgtdf: I see. 20140321 19:11:26< RiftWalker> it makes sense that the host would control the ai 20140321 19:11:47< adityapande> regarding ai's in MP, how does it work in case of scenarios with fog of war 20140321 19:12:06< sachith500|2> well I'm off good night everyone :D 20140321 19:12:06< adityapande> without knowing opponent positions and moves 20140321 19:12:12< RiftWalker> I would guess that the ai factors in only what it can see 20140321 19:12:14< mattsc> It does - if you use a modified AI, it needs to be installed only on the host 20140321 19:12:14< adityapande> good night 20140321 19:12:15-!- vorobeez [558e940c@gateway/web/freenode/ip.85.142.148.12] has quit [Quit: Page closed] 20140321 19:12:22< gfgtdf> adityapande: fog is caluculates normaly just as for players 20140321 19:12:30-!- sachith500|2 [~kvirc@112.135.52.124] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 20140321 19:12:32< happygrue> the AI has "excellent" vision adityapande ;) 20140321 19:12:56< mattsc> (my reply was about Riftwalker's previous line, not the one right after which it came in) 20140321 19:12:56< gfgtdf> happygrue: your you sure ? 20140321 19:13:24< happygrue> no I am not. I remember being told it worked that way long ago 20140321 19:13:44< happygrue> It's possible I was wrong or that it has change, but I also can't think of why we would want to further hamper the AI with such things? 20140321 19:13:45< gfgtdf> happygrue: i think sighed event also fire for ai moves, but i tihnk the ai integiance calculation is independent form that. 20140321 19:13:47< mattsc> For the most part, the AI ignores fog, invisible units, etc. 20140321 19:13:50< adityapande> it would be unfair 20140321 19:14:03< adityapande> really unfair right 20140321 19:14:08< mattsc> adityapande: yes - so what? 20140321 19:14:33< mattsc> Any advantage the AI can get to make it a little more challenging makes the game more interresting. 20140321 19:14:34< adityapande> undue advantage 20140321 19:14:36< RiftWalker> thunderstruck: So let's take for example your standard sp campaign. you have one human player and any number of ai opponents. correct? 20140321 19:14:49< thunderstruck> yes 20140321 19:14:53< mattsc> Once we get to AIs that play about as good as a human player, we can talk about being fair 20140321 19:15:03< adityapande> ok 20140321 19:15:11< RiftWalker> thunderstruck: is there any way for the author to allow you to play as the opposition? 20140321 19:15:12< adityapande> i still find the ai pretty good 20140321 19:15:22< adityapande> though i am new to the game 20140321 19:15:31< adityapande> only 15 days or so 20140321 19:15:37< mattsc> adityapande: the more I work on my own AIs, the more impressed I am with the default AI. Meaning: I entirely agree. 20140321 19:16:07< mattsc> It has its flaws, but for a general purpose AI that needs to work in all kinds of different settings, it's really good. 20140321 19:16:31< thunderstruck> RiftWalker: I'm not sure I understand you. What do you mean by 'you' and 'opposition'? 20140321 19:16:32< adityapande> no i thought my perception is such because I am new to the game 20140321 19:16:53< adityapande> relatively new 20140321 19:17:18< mattsc> adityapande: it gets easier to beat the AI as you gain experience, but the fact that it is really quite good remains. 20140321 19:17:24< gfgtdf> how do i add a menu entry int the "Configure Game" Mp screen ? 20140321 19:18:24-!- Delfinisko [~Delfinisk@ip-85.163.128.192.o2inet.sk] has quit [Ping timeout: 245 seconds] 20140321 19:20:19< RiftWalker> thunderstruck: sorry, I'm pretty new to the game. In a sp campaign, can you have an option to select a different leader? 20140321 19:20:44< RiftWalker> thunderstruck: or will the ai's always be played by ai's 20140321 19:20:53< thunderstruck> RiftWalker: you mean when you are already in a game? 20140321 19:21:15< RiftWalker> thunderstruck: before you start, i would think. 20140321 19:21:38< thunderstruck> RiftWalker: It's possible to change some of the thing during the game using debug menu 20140321 19:21:38-!- fendrin_ [~fabi@88-134-21-163-dynip.superkabel.de] has quit [Quit: Konversation terminated!] 20140321 19:21:52< thunderstruck> RiftWalker: But before the game you don't have any options 20140321 19:22:16< adityapande> a suggestion, I was playing my first MP game yesterday with 6 players and was waiting for everyone's move 20140321 19:22:20< RiftWalker> thunderstruck: i mean similarly to how players can select Faction/Name for an mp campaign 20140321 19:22:27< thunderstruck> RiftWalker: Well, unless campaign's author implemented a campaign in a way that user is prompted with some selections 20140321 19:22:28< adityapande> i really wished there was some 20140321 19:22:35< thunderstruck> But that's a different thing, I think 20140321 19:22:39< adityapande> indication of whose turn it is 20140321 19:22:43< adityapande> at least 20140321 19:22:46< happygrue> there is 20140321 19:22:53< happygrue> the flag in the upper left changes color adityapande 20140321 19:22:54< adityapande> where? 20140321 19:23:04< thunderstruck> RiftWalker: There's no such thing, then 20140321 19:23:09< adityapande> ohh i didn't notice that 20140321 19:23:11< RiftWalker> thunderstruck: okay. are all mp campaigns co-op? 20140321 19:23:32< happygrue> RiftWalker: no 20140321 19:23:33< thunderstruck> RiftWalker: no 20140321 19:23:59< RiftWalker> thunderstruck: do all mp campaigns have some ai? 20140321 19:24:15< thunderstruck> RiftWalker: I recommend you to spend some time playing a game, looking at our wiki and code. 20140321 19:24:29< thunderstruck> I think then you'll have a lot clearler picture 20140321 19:24:38< RiftWalker> thunderstruck: I think you're right. Thanks. 20140321 19:24:50< adityapande> happygrue: but can you still make it more noticeable and display how many turns left before your next turn? 20140321 19:25:02< thunderstruck> RiftWalker: I don't really mind answering questions, but I expect GSoC students to be autonomous enough 20140321 19:25:31< happygrue> adityapande: this and much other info is very obvious to people who play a lot, there is some learning curve stuff for newer players but once you just play a few games that and some other common issues go away 20140321 19:25:41< happygrue> there is a hotkey to list the sides 20140321 19:25:53< happygrue> you can see the color of flags (and player order) there 20140321 19:25:53< RiftWalker> thunderstruck: Got it. 20140321 19:25:57< adityapande> ok 20140321 19:26:02< thunderstruck> RiftWalker: So for your last question: that depends 20140321 19:26:16< thunderstruck> RiftWalker: You can configure MP campaign as you like it 20140321 19:26:23< happygrue> adityapande: there is also a turn bell that you can sound to tell you when it is your turn 20140321 19:26:30< thunderstruck> RiftWalker: But you should play and see how things are for yourself 20140321 19:26:37< happygrue> so you can be afk or whatnot and come back to take your turn 20140321 19:26:42-!- fabi [~fabi@88-134-21-163-dynip.superkabel.de] has joined #wesnoth-dev 20140321 19:26:42-!- fabi [~fabi@88-134-21-163-dynip.superkabel.de] has quit [Changing host] 20140321 19:26:42-!- fabi [~fabi@wesnoth/developer/fendrin] has joined #wesnoth-dev 20140321 19:26:58< adityapande> ya the bell is what really helped me a lot :p 20140321 19:27:02< RiftWalker> thunderstruck: I guess what I was ultimately trying to figure out is whether we can treat AI's and humans the same across the board. 20140321 19:27:17< adityapande> it is more noob friendly 20140321 19:27:36< RiftWalker> I'll do some poking around and see what I can find. 20140321 19:27:50< happygrue> it could be improved somewhat, but it also isn't something that regular players ask to improve much 20140321 19:27:59< happygrue> so... a low priority ;) 20140321 19:28:37< adityapande> tell me how to do it... 20140321 19:28:47< adityapande> i may give it a shot :) 20140321 19:29:17< adityapande> or i ll just go through the documentation on wesnoth wiki 20140321 19:29:52< thunderstruck> RiftWalker: up to some extent, yes 20140321 19:30:07< fabi> thunderstruck: hi 20140321 19:30:13< thunderstruck> fabi: Hello 20140321 19:30:23< happygrue> well, I think there are some changes to the interface that might already address that, but I don't know if they are in in the current trunk or not, I'm actually updating my checkout now. They may have been put into the next cycle 20140321 19:30:38< fabi> thunderstruck: You implemented the controller=number syntax for me? 20140321 19:30:53< thunderstruck> fabi: hmmm... 20140321 19:31:02< thunderstruck> You don't remember? 20140321 19:31:11< fabi> I remember. 20140321 19:31:30< fabi> But I have difficulties to tell thunderstruck and trademark apart. 20140321 19:31:48< thunderstruck> fabi: :D 20140321 19:31:55< fabi> That was too literaly translated from German... 20140321 19:32:11< happygrue> hehe 20140321 19:33:19-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has joined #wesnoth-dev 20140321 19:34:59< thunderstruck> RiftWalker: I'm interested to ask, whether you understand that just putting another human into SP doesn't magically solve all the problems? 20140321 19:35:28< thunderstruck> RiftWalker: Or is there another reason why you ask about this? 20140321 19:37:21< adityapande> good night 20140321 19:37:24-!- adityapande [ca4eaca2@gateway/web/freenode/ip.202.78.172.162] has quit [Quit: Page closed] 20140321 19:39:19< RiftWalker> thunderstruck: The way i see it now, any campaign has a number of playable leaders, which can be assigned a human or ai control. For an sp campaign, there is generally only one playable leader, and your options are therefore more limited. However, I don't see why we can't treat sp campaigns, as they are now, as mp campaigns with one player. mp campaigns, then, could be loaded as sp campaigns by choosing a leader and assigning the rest to ai. 20140321 19:42:32< Ivanovic> iceiceice: any estimate on the issue you see as blocker? 20140321 19:43:15< vultraz> RiftWalker: some sp campaigns feature 2 playable sides in some scenarios 20140321 19:43:24< vultraz> and the player plays both 20140321 19:43:42< vultraz> After the Storm episode 3 scenario 2 and 4.1 come to mind 20140321 19:45:01< RiftWalker> vultraz: in which case, it seems, it could be played by two players? 20140321 19:45:29< thunderstruck> RiftWalker: Okay. I see what you mean now. You want to make SP special case of MP as was proposed by Zaroth. 20140321 19:45:46< vultraz> Well, in the aforementioned case the two sides are allies anyway 20140321 19:45:52< vultraz> fighting against the ai 20140321 19:46:17< thunderstruck> RiftWalker: hmmm... it should be easier to do this after SP and MP campaigns share the same syntax. 20140321 19:46:17< vultraz> So two people playing it would really do nothing since you have to coordinate them. 20140321 19:46:30< RiftWalker> thunderstruck: yes. since the add-on functionality we want is already present in the multiplayer code, it seems logical to adapt single player campaigns to use that code. 20140321 19:46:47< thunderstruck> RiftWalker: But I'd need to think about what this would really mean. 20140321 19:47:30< thunderstruck> RiftWalker: E.g. you'd have to extend MP codepath to handle SP as a special case and at the end, it might prove to be more complex than to unify how SP and MP games are initialised. 20140321 19:47:47< thunderstruck> RiftWalker: And what's more, you might just reinvent what we've got now. 20140321 19:48:22< RiftWalker> vultraz: how is that different from any co-op vs ai mp campaign, e.g. Troubled Times 20140321 19:48:51< vultraz> Um...I guess it isn't. 20140321 19:49:36-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 19:49:42< thunderstruck> Ivanovic: if you're talking about #21808, I'm planning to look into it this weekend 20140321 19:49:53< thunderstruck> (hopefully) 20140321 19:50:00< Ivanovic> thunderstruck: cool! 20140321 19:50:45< Ivanovic> wesbot: bug 21808 20140321 19:50:45< wesbot> Bug #21808 Assigned to: Andrius Silinskas Status: None Priority: 7 - High 20140321 19:50:48< wesbot> Summary: cannot join a reloaded game as an observer 20140321 19:50:50< wesbot> Original submission: Affects 1.13.0-dev, 1.12 branch,and 1.11.7 checkout (wi 20140321 19:50:53< wesbot> th localhost 1.11.7 server).If you make a reloaded game which had observers 20140321 19:50:56< wesbot> URL: http://gna.org/bugs/?21808 20140321 19:51:18< vultraz> Though speaking of which, I'm seeing a lot of opportunities for mp-like dynamic side control in sp. Eg, a player could play through a campaign alone, or allow someone else to come in and randomly take over a side...etc 20140321 19:51:45< vultraz> (if sp and mp were combined in a fashion like zaroth's proposed method) 20140321 19:52:42< RiftWalker> thunderstruck: I don't see there being much extension of the mp code, but rather changing the sp code and menus to instantiate a mp campaign with certain parameters, specifically, if there are unfilled playable sides, to fill them with ai's (in the case of loading a campaign written for mp) 20140321 19:52:58< vultraz> that's basically an mp campaign, and sp campaigns can work in mp now, but it's still not fully what I mean 20140321 19:53:58-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 19:54:12< RiftWalker> vultraz: yes, it is basically an mp campaign. 20140321 19:54:28< RiftWalker> tell me if i'm missing anything. maybe i'm not seeing the whole picture here. 20140321 19:54:51< thunderstruck> RiftWalker: You might be right. It would be good to do a quick hack to see how that works. 20140321 19:56:16< thunderstruck> RiftWalker: I'll try to think more about this during a weekend. 20140321 19:56:24< thunderstruck> RiftWalker: I've got to go now. 20140321 19:56:26< vultraz> Ok. A single campaign can now be played both in SP and MP if its type=hybrid. However, the two are still separated. You start a campaign in sp, with only you playing, and I don;t think you can suddenly reload it into mp, or vice versa. 20140321 19:56:59-!- thunderstruck [~zaibotren@cpc13-sgyl31-2-0-cust696.18-2.cable.virginm.net] has quit [Quit: leaving] 20140321 19:57:02< RiftWalker> thunderstruck: Thanks. I'll see if i can get a rough implementation hacked out. 20140321 19:57:12< vultraz> And in, say, in the sp campaign you run into two allied human controlled sides, and you want to invite a buddy to play the other one 20140321 19:57:17< vultraz> You can;t 20140321 19:57:33< RiftWalker> vultraz: Is it possible to reload an mp campaign with different players? 20140321 19:58:11< vultraz> I'm referring to loading an sp campaign into mp, which I believe is not possible, and even if it were, would also be tedious, and likely to cause problems once you returned to sp 20140321 20:00:26< vultraz> If I understand what you mean when you refer to making sp campaigns solo mp campaigns, would such a case be possible where you play solo, invite a friend to play an allied side for one scenario, and continue solo for the next, without any saving or reloading in different modes 20140321 20:00:28< RiftWalker> If they are implemented in the same way though, we could by default fill unfilled sides with ai's (sp mode). Then when we load something up in mp, whether it be originally an sp or mp campaign, we're presented with a lobby to add other players. 20140321 20:01:03< RiftWalker> So yes, I believe so. 20140321 20:01:48< RiftWalker> Are you excited about my proposal now? :D 20140321 20:02:21< RiftWalker> well 20140321 20:02:21< vultraz> I always did like the idea 20140321 20:03:23< RiftWalker> when you say without any saving or reloading, that would take a little extra icing on the cake, so to speak, but it could be implemented without much fuss 20140321 20:04:02< RiftWalker> I have an idea 20140321 20:05:07< RiftWalker> instead of having a multiplayer campaign / single player campaign, if it's that tightly integrated, why not just have one path for campaign, with multiplayer options built in? 20140321 20:05:43< RiftWalker> or rather, available if you want them 20140321 20:06:08< RiftWalker> I'll have to play some campaigns and see how it could be integrated 20140321 20:07:01< vultraz> I was imagining going so far as to remove the different dialogs for launching MP and SP and simply having a unified "game creation" screen relevant to both 20140321 20:08:08< vultraz> Internally allowing for a single "game has been created" code path with some switches to allow broadcast to the server, to allow people to watch, and even join if you want, your campaigns 20140321 20:08:21< RiftWalker> "Unifying mp and sp." I like it. 20140321 20:09:58-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has quit [Ping timeout: 246 seconds] 20140321 20:10:09< aquileia> Sorry to be off-topic, but... if I want to specify a version of the repo, should I use the SHA or is there a shorter identifier? Up until now there was a 'trunk revision', but I think that's SVN... 20140321 20:10:37< happygrue> Would this allow you to do such thing as throw an extra castle on every map of a single player campaign (and add a side) and allow our standard campaigns to be played co-op? I imagine there would be quite a market for that. 20140321 20:11:30< vultraz> I don;t think adding sides is a good idea, since the scenarios are balanced in a certain manner 20140321 20:11:38< happygrue> obviously it would be more work if you wanted it to be balanced and such, but that idea would probably open up a lot of new content 20140321 20:11:45< vultraz> However, allowing other players to take control of an enemy sides... 20140321 20:12:09< happygrue> sure, I'm not saying we put it in as mainline, but some user could take on rebalancing some campaign and uploading it with all the balance work done 20140321 20:12:15< Soliton> aquileia: usually the first 8 characters or so of the SHA are enough. 20140321 20:12:33< aquileia> ok 20140321 20:12:49< happygrue> well, allowing users to control enemy sides would take WAY more rebalancing than just adding a side and halving the gold for each player ;) 20140321 20:12:58< aquileia> Soliton: And it's ok to use that on a wiki page? 20140321 20:13:02< happygrue> but yes, another fun option :D 20140321 20:13:03< RiftWalker> happygrue: I think the changes we're proposing here would pave the way for something like that, but the implementation would be very campaign-dependent. 20140321 20:13:34< happygrue> I guess my question is if unifying it all would mean all SP WML and MP WML are going to play nicely with each other? 20140321 20:13:38< Soliton> aquileia: you could just use a link there? 20140321 20:13:57< aquileia> I'm feeling dumb... thanks 20140321 20:13:59< vultraz> happygrue: well, I assumed the idea would be there was only WML, no sp/mp distinction 20140321 20:14:00< RiftWalker> happygrue: Supposedly, yes. 20140321 20:14:04< vultraz> a/was/would be 20140321 20:14:06< happygrue> okay 20140321 20:14:22< happygrue> just making sure I understand it right :D 20140321 20:14:39< RiftWalker> happygrue: the only thing really differentiating them would be whether there are extra sides for humans to fill 20140321 20:14:52< RiftWalker> happygrue: and like you mentioned, it may be possible to create these sides 20140321 20:16:26< happygrue> I would imagine that if it were possible, there is a certain brand of user that would go crazy doing just that, and really enjoying hacking all the SP stuff to play it coop 20140321 20:16:31< happygrue> balanced or no! 20140321 20:16:46< vultraz> If other players were allowed to take control of enemy sides and play them, it would stand to reason there should be some key for content creators to specify sides only the ai may play, since it has a scripted role 20140321 20:17:48< RiftWalker> I was thinking the same thing. There should be a way for creators to set rules. 20140321 20:18:53< vultraz> For example, my campaign has a side in scenario 3 with a very specific role of guarding a unit and moving with it to a bride. A human player would likely screw that up 20140321 20:20:55< RiftWalker> In which case they would lose, I suppose. I guess all sides are technically playable, but the tricky part, in my opinion, would be defining (to the player) the objectives for any side. 20140321 20:22:07< RiftWalker> If we can manage that, then it's up to the player to accomplish those objectives or not, right? 20140321 20:23:33< vultraz> Well, in my case, it has to in order to fulfill the story 20140321 20:23:49-!- Delfinisko [~Delfinisk@ip-85.163.146.135.o2inet.sk] has joined #wesnoth-dev 20140321 20:23:56-!- iceiceice [~chris@207-237-132-90.ny.subnet.cable.rcn.com] has joined #wesnoth-dev 20140321 20:24:13< iceiceice> gfgtdf: going back to questions from yesterday: afaik there is no way for a player to make a side empty 20140321 20:24:38< vultraz> SO making sure only certain sides could be taken over would ensure that the creators can still set up parameters for the ai to regulate, if you will, the gameplay 20140321 20:24:48< RiftWalker> vultraz: Ah, I see. In that case, yes, it would be good to lock it into ai. 20140321 20:25:09< vultraz> Anyway I'm rambling and should be off 20140321 20:25:15< vultraz> :) 20140321 20:25:17< gfgtdf> iceiceice: ok ty :) 20140321 20:25:18< _8680_> aquileia: I’m afraid my pull request has been denied. 20140321 20:25:29< RiftWalker> vultraz: Later. :D 20140321 20:25:32< iceiceice> vultraz: i think there is an "allow_player = no" key 20140321 20:25:37< iceiceice> that does what you said 20140321 20:25:42< iceiceice> but maybe i misunderstood 20140321 20:25:43< _8680_> aquileia: My apologies if I made you hope you wouldn’t need to do this yourself. 20140321 20:25:45< vultraz> ^ yes, that exactly 20140321 20:26:43< vultraz> Really hope this comes a reality :) 20140321 20:27:02< aquileia> _8680_: Then I'll fall back to the less clear version I wrote before you offered to help. Sorry that your work wasn't accepted :( 20140321 20:27:32< gfgtdf> iceiceice: do you think you can help me with: https://github.com/gfgtdf/wesnoth-old/commit/de0c3efa229c63f9a3e01ca2cf690bfc29ebb8d9 (to implement the deterministic mode for mp) at some day? 20140321 20:27:37< _8680_> aquileia: I guess you could ask for it to be reconsidered. 20140321 20:29:05< _8680_> aquileia: This pull request was only in support of the pull request for the count_leading_ones function. I could just submit that, but I don’t know if that would be okay. 20140321 20:30:05< iceiceice> gfgtdf: sure i could try :) 20140321 20:30:26< aquileia> AI0867: Could you consider whether https://github.com/wesnoth/wesnoth/pull/124 is ok if it is necessary for your preferred version of byte_size_from_utf8_first ? 20140321 20:30:38< _8680_> (It might not be okay because if it was merged, it would bring the denied commits with it, which could be seen as trying to subvert or bypass mordante’s ruling.) 20140321 20:30:47< gfgtdf> iceiceice: :) 20140321 20:30:50< gfgtdf> i go eat 20140321 20:31:55< aquileia> _8680_: I think mordante closed it for lack of usecases 20140321 20:32:21< aquileia> Let's see what AI0867 says... 20140321 20:32:38< _8680_> Well, it doesn’t have any consumers yet. 20140321 20:34:02< aquileia> _8680_: Well, my code is currently http://ideone.com/RTUCUG and I just wait to uncomment the 'consumer' ;) 20140321 20:35:22-!- RiftWalker [~nathan@129.59.115.25] has quit [Ping timeout: 252 seconds] 20140321 20:36:03< aquileia> It'll work as is, but we all agreed that count_leading_ones would simplify that function. It's probably up to AI0867 to decide, though. 20140321 20:37:19< aquileia> Oh, and by the way... the commit message should be explicit enough for you this time 20140321 20:38:08< aquileia> _8680_: http://pastebin.com/dM0XdU4e 20140321 20:38:45< _8680_> I think it’s good. 20140321 20:39:12< aquileia> If it passes your standards, that's high praise! 20140321 20:39:44< _8680_> “This commit adds functions …” 20140321 20:39:56< _8680_> “This commit applies these functions …” 20140321 20:40:39< _8680_> But using present tense and such is relatively minor. 20140321 20:41:02< _8680_> s/relatively minor/a & issue/ 20140321 20:43:17< aquileia> corrected, thanks 20140321 20:44:54-!- ykanarev [~ykanarev@78.81.70.234] has joined #wesnoth-dev 20140321 20:46:49-!- Gambit [~derek@wesnoth/developer/grickit] has joined #wesnoth-dev 20140321 20:51:40-!- Delfinisko [~Delfinisk@ip-85.163.146.135.o2inet.sk] has quit [Quit: HydraIRC -> http://www.hydrairc.com <- s0 d4Mn l33t |t'z 5c4rY!] 20140321 21:19:27< mattsc> Should the change of the user data directory in OS X be mentioned in the changelog / players_changelog / release notes? 20140321 21:21:42< gfgtdf> mattsc: i think yes. 20140321 21:23:55< mattsc> gfgtdf: I'd tend to agree, it's a very user visible change, but I don't know which level of "advertising" it should get. 20140321 21:28:03< timotei> mattsc: It should be. 20140321 21:28:17< mattsc> timotei: in all three places? 20140321 21:28:29< timotei> There was once also a change for XDG systems or so and they were mentioned 20140321 21:30:12< mattsc> Oh, and just for reference, I am talking about updating the 1.11 in the path to 1.12/1.13 20140321 21:30:25< timotei> Well, look here: https://github.com/wesnoth/wesnoth/blob/master/changelog 20140321 21:30:29< timotei> And https://github.com/wesnoth/wesnoth/blob/master/players_changelog 20140321 21:30:33< timotei> Search for XDG 20140321 21:30:42< timotei> Also herE: http://forums.wesnoth.org/viewtopic.php?f=5&t=39850&p=565355&hilit=XDG#p565355 20140321 21:30:48< timotei> The forums news are from RELEASE_NOTES IIRC 20140321 21:31:49< mattsc> Yeah, they are. Thanks, timotei. 20140321 21:32:44< timotei> You're welcome. 20140321 21:37:43-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 21:38:43< timotei> aquileia: The ideone code snippet you showed, is that from wesnoth's code base? If you need those denied bit_width() functions and it's not apparent where they're to be used, 20140321 21:39:35< timotei> Then you should either 1) make both in the same commit (it's not that big), 2) make the two commits visible in the PR :) 20140321 21:42:30-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 252 seconds] 20140321 21:48:22< aquileia> timotei: There is already an implementation of byte_size_from_utf8_first, but I'd like to improve it as part of my patch. So the snippet would become part of Wesnoth's code base 20140321 21:49:19< aquileia> And the bit_width functions are not from me, that's the reason why they are separate 20140321 21:50:42< aquileia> In case they are accepted, there'd be three PR's: bit_width & count_leading_ones by 8680 and byte_size_from_utf8_first by me 20140321 21:59:29-!- ykanarev [~ykanarev@78.81.70.234] has quit [Quit: Leaving] 20140321 22:03:31-!- gfgtdf_ [~chatzilla@f054053086.adsl.alicedsl.de] has joined #wesnoth-dev 20140321 22:05:18-!- gfgtdf [~chatzilla@f054156092.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 20140321 22:05:25-!- gfgtdf_ is now known as gfgtdf 20140321 22:14:24-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: Computer's napping] 20140321 22:17:40-!- EdB [~edb@85.69.242.6] has quit [Quit: Konversation terminated!] 20140321 22:24:02-!- Duthlet [~Duthlet@wesnoth/mp-mod/Duthlet] has joined #wesnoth-dev 20140321 22:25:13-!- werlley [~werlley@179.124.130.66] has quit [Ping timeout: 240 seconds] 20140321 22:38:32-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-dev 20140321 22:51:10-!- bagzie [~bag@85-76-32-203-nat.elisa-mobile.fi] has quit [] 20140321 22:59:33-!- gfgtdf_ [~chatzilla@f054135125.adsl.alicedsl.de] has joined #wesnoth-dev 20140321 23:01:18-!- gfgtdf [~chatzilla@f054053086.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 20140321 23:01:28-!- gfgtdf_ is now known as gfgtdf 20140321 23:06:18-!- irker031 [~irker@ai0867.net] has joined #wesnoth-dev 20140321 23:06:18< irker031> wesnoth: Chris Beck wesnoth:master e6abd6d2c9e0 / src/multiplayer_connect_engine.cpp: fixup bugfix 21758 (commit 186e66cec6519606bca5e07209c9a557c78b5e71) http://git.io/VWN7Mw 20140321 23:06:57< irker031> wesnoth: Chris Beck wesnoth:1.12 9d81677789e2 / src/multiplayer_connect_engine.cpp: fixup bugfix 21758 (commit 186e66cec6519606bca5e07209c9a557c78b5e71) http://git.io/7tRB8g 20140321 23:11:46< iceiceice> Soliton: I think i'm going to end up rebasing the server tweaks thread, so i'm not sure what will happen to your comments on github after that. But I have seen them and will incorporate them, thanks for making them. 20140321 23:13:01< iceiceice> s/thread/branch 20140321 23:13:18< Aishiko> wesbot, seen zookeeper 20140321 23:13:18< wesbot> Aishiko: Queried user last spoke 6h 6m ago. zookeeper is currently here and on the channels #wesnoth and #wesnoth-umc-dev. 20140321 23:13:25< zookeeper> hmh? 20140321 23:13:47< Aishiko> zookeeper, I had an idea I wanted to run by you and see what you think if you have a moment 20140321 23:13:56< zookeeper> sure 20140321 23:14:59-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has quit [Ping timeout: 269 seconds] 20140321 23:15:11< Aishiko> new way of looking at the spritesheet problem, and an out of the box solution, what if the new spritesheet code looked like this: image="units/elves-wood/archer+female[1~4].png:[75*2,100,130]" 20140321 23:16:15< Aishiko> and on the back end when it doesn't find those files, it goes, and checks for archer+female.png and the [1~4] then become the image locations within and the timing block is left alone? 20140321 23:17:48 * zookeeper tries to understand 20140321 23:18:51< Aishiko> basically it eliminates the need any major changes to the WML code and all the work is on the back end 20140321 23:22:52< zookeeper> ok, but... 20140321 23:22:59< iceiceice> Aishiko: so the artist would have to generate these numbers [75*2, 100 130]? 20140321 23:23:05< iceiceice> or the wml programmer? 20140321 23:23:21< zookeeper> then the ss would have to be just the 4 bow frames 20140321 23:23:28< zookeeper> wouldn't it? 20140321 23:23:46< Aishiko> iceiceice, those numbers are already there for the existing animation 20140321 23:23:49< zookeeper> err, 4 whatever-they-are frames 20140321 23:24:10< Aishiko> zookeeper, no it could have been frames 12~18 20140321 23:24:12-!- vultraz [~chatzilla@wesnoth/developer/vultraz] has joined #wesnoth-dev 20140321 23:25:04< zookeeper> right, eliminates major changes, you'd just need to update the frame numbers 20140321 23:25:11< Aishiko> exactly~! 20140321 23:25:56-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140321 23:26:06< Aishiko> simple ideas, complex solutions simplified, maximum flexibility, well with in reason 20140321 23:27:05-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has joined #wesnoth-dev 20140321 23:27:28< Aishiko> I'm thinking of using a 10x5 grid, so if you need say one columns in and down two it would easy to go, "5... 15... 25! got it!" 20140321 23:28:37< Aishiko> none of the units I've looked at have much over 20 images (if they even have that many) so 50 image slots should be plenty for the time being 20140321 23:29:21< zookeeper> i checked some comprehensively animated ones and they had >100 frames 20140321 23:29:29< Aishiko> well you'd also need to update the file_name 20140321 23:29:55< Aishiko> ohh wow, well then that changes things a bit 20140321 23:30:08< zookeeper> dwarvish thunderer for instance 20140321 23:30:14< Coffee_irc> Aishiko: I might suggest to check the dwarf animations 20140321 23:30:18-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140321 23:30:33< zookeeper> dragonguard has 150 20140321 23:32:17< Aishiko> wow, I hadn't looked at the dwarves, I sort of did a random sampling 20140321 23:33:43< Coffee_irc> Aishiko: you could make a 3d spritesheet :P 20140321 23:34:59< Coffee_irc> 100 sprites at 72x72 pixels is potentially 720x720 sheet 20140321 23:35:14< zookeeper> that's not too bad 20140321 23:35:52< Aishiko> I know I worked it out and it would be roughly 3KiB (well a 753x753 with 3 pixel borders in place) 20140321 23:36:55< Aishiko> and that is blank just the borders in place 20140321 23:38:44< Aishiko> so if we doubled it would likely be under 6KiB and have space for 200 frames (me hopes that would be enough!) 20140321 23:38:47< zookeeper> was there some specific reason for this idea/suggestion? 20140321 23:39:23< Aishiko> no just me trying to think of a way to make it easier for the artists is all 20140321 23:40:04< zookeeper> right, okay 20140321 23:45:29< aquileia> Just an idea... the sprite <-> spritesheet conversion tool could help a lot. Let 'elf-archer+female-attack-1' be a frame. It could be aware that '+' is used for a variation, so 'elf-archer+female' should be the spritesheet name. For any nun-numeric suffix it displays the starting index, e.g. 'attack' frames begin at index 34 20140321 23:46:23< aquileia> Then if you wnat to change the number of frames, the tool would give you the updated numbers 20140321 23:46:27< aquileia> *want 20140321 23:48:28< aquileia> It could also output the necessary [sprite_sheet] tag or whatever you prefer to denote that it's a sprite sheet 20140321 23:48:52< Aishiko> aquileia, there is actually no conversion tool that's like a stretch goal. I mean I'm planning on making one whether or not I'm able to do it during the summer 20140321 23:49:15< Aishiko> we just won't have it at the beginning of the project at this point 20140321 23:49:19< aquileia> Like I said, jusst an idea 20140321 23:49:30< Aishiko> ohh its a good one 20140321 23:49:30< Coffee_irc> Aishiko: many games that use spritesheets make the sheets square 20140321 23:50:32< Aishiko> Coffee_irc, I've noticed that. 20140321 23:56:15 * zookeeper wonders how performance-costly it'd be to automatically search for the sprite locations and dimensions based on the ss border color, to allow different frame sizes to be mixed and matched and to give positioning a bit of leeway 20140321 23:56:57< zookeeper> that's what i've always wanted it to do but which is obviously a bit more intensive than just having stricter requirements for the sheets 20140321 23:58:28< zookeeper> (a non-ambiguous row/col layout would still be required, of course) 20140321 23:59:07< zookeeper> (for example frogatto sheets are not all non-ambiguous in that way) 20140321 23:59:23< Aishiko> right but they call each image with coordinates 20140321 23:59:28< zookeeper> yes 20140321 23:59:57< Aishiko> we're trying to avoid doing that --- Log closed Sat Mar 22 00:00:09 2014