--- Log opened Mon Mar 03 00:00:06 2014 20140303 00:00:07< shadowm> jamit: Not yet. 20140303 00:02:38< shadowm> So, the unit type name etc. are from the base's female variation, it seems, and the baseframe and animations are from the variation's base variation... 20140303 00:03:43< shadowm> But the type name and baseframe (image) are handled together in unit_type::build_help_index()... 20140303 00:04:11-!- aquileia [52d4193f@gateway/web/freenode/ip.82.212.25.63] has quit [Quit: Page closed] 20140303 00:04:16< shadowm> So, maybe the problem is in the unit class and not the unit type code. 20140303 00:05:50< shadowm> And somehow I can't find in unit.cpp how it deals with variations outside of advance_to(). 20140303 00:06:26< shadowm> Oooo, advance_to() is used as an implementation detail of the WML-based constructor, okay. 20140303 00:06:41< shadowm> And the unit_type-based constructor. 20140303 00:07:02< shadowm> And there we have const unit_type & new_type = u_type.get_gender_unit_type(gender_).get_variation(variation_); 20140303 00:07:12< shadowm> Which doesn't acknowledge that the variation may have genders too. 20140303 00:09:21< shadowm> But changing it to u_type.get_gender_unit_type(gender_).get_variation(variation_).get_gender_unit_type(gender_) didn't help, so maybe the problem is actually twofold? 20140303 00:11:05< shadowm> This gives me an idea, though. 20140303 00:14:00< shadowm> It works to define the [variation] for the base's [female] variation! 20140303 00:15:19< shadowm> So unit_type (gender=male,female) -> female (gender=female) -> variation (gender=female) and unit_type (gender=male,female) -> variation (gender=male) 20140303 00:17:01< shadowm> But the variation still displays as having only one gender in the help system, even with gender=male,female. 20140303 00:17:20< shadowm> And even if I go and give it a redundant [female] variation. 20140303 00:18:08< shadowm> Now, if I did the WML the right way and changed the unit type expression to u_type.get_variation(variation_).get_gender_unit_type(gender_) ... 20140303 00:19:25< shadowm> Then it breaks even worse. 20140303 00:29:30< jamit> shadowm: From http://wiki.wesnoth.org/UnitTypeWML under [variation]: "All keys and tags of [unit_type], except [advancefrom], [base_unit], [female], [male], and [variation]." <-- This is what you are running into? 20140303 00:30:12< jamit> You are trying to do [unit_type] [variation] [female] instead of [unit_type] [female] [variation]? 20140303 00:30:34< shadowm> Wait. 20140303 00:30:56 * shadowm facepalms. 20140303 00:31:17< shadowm> I had read that page this morning several times but I didn't see that note. 20140303 00:31:30< jamit> Hmm.... can we support both without risking infinite recursion... 20140303 00:32:29< jamit> I know that note is newish, but older than this morning. :) 20140303 00:32:32< shadowm> I always assumed [variation] > [], but I guess it was the other way around. 20140303 00:33:01< shadowm> So now I just need to figure out why the female variation's variation isn't shown in the help system. 20140303 00:33:39< shadowm> Even though for my use case I actually want both variations... the whole variation... to not be displayed. 20140303 00:33:54< jamit> I don't know why its one way instead of the other. Maybe ask zookeeper? If it should be flipped, I think that's doable. 20140303 00:34:14< jamit> Hmm... think I'm about to leave. I'll check back later. 20140303 00:34:41-!- jamit [~jamit@wesnoth/developer/jamit] has quit [Quit: Leaving.] 20140303 00:50:59< iceiceice> shadowm: i think that this thing about dead units being null is enforced by unit_map 20140303 00:51:20< iceiceice> as i understand now, the ordered map of underlying ids -> units 20140303 00:51:24< iceiceice> actually points to a pod data type 20140303 00:51:38< iceiceice> which is a pointer to a unit, and an int which is used to count the references 20140303 00:52:07< iceiceice> and all of the delete functions work by, if the number of references is 0, then free the memory, otherwise make the pointer null, as a "soft" extraction 20140303 00:52:11< iceiceice> that keeps the other iterators valid 20140303 00:53:06< iceiceice> it seems like the whole thing was designed so that we would use unit_map::iterators as pointers to units throughout the code 20140303 01:06:39< iceiceice> idk i think i will make a topic branch where i change it to hold iterators, and we can test it and see what happens 20140303 01:08:01-!- mjs-de [~mjs-de@f049178011.adsl.alicedsl.de] has quit [Ping timeout: 240 seconds] 20140303 01:08:31-!- mjs-de [~mjs-de@f049034055.adsl.alicedsl.de] has joined #wesnoth-dev 20140303 01:14:03-!- mjs-de [~mjs-de@f049034055.adsl.alicedsl.de] has quit [Quit: On the road again] 20140303 01:20:54-!- sachith500 [~kvirc@112.134.185.101] has joined #wesnoth-dev 20140303 01:27:11-!- wesbot changed the topic of #wesnoth-dev to: released 1.11.11, announcing "soon" | string+feature freeze active on master | 212 bugs, 349 feature requests, 28 patches | Logs: http://irclogs.wesnoth.org | Alternate logs: http://wesnoth.debian.net | Don't paste on IRC! Use a pastebin: http://pastebin.com | http://imagebin.org 20140303 01:36:19< fabi_> shadowm: Oh sorry, I thought to have read from you that you tried the other way around already and that did not work as well. 20140303 01:38:01-!- spoffy [~spoffy@152.78.175.8] has quit [Ping timeout: 240 seconds] 20140303 01:38:18-!- sachith500|2 [~kvirc@112.134.255.33] has joined #wesnoth-dev 20140303 01:38:24-!- sachith500|2 [~kvirc@112.134.255.33] has quit [Client Quit] 20140303 01:38:33-!- sachith500|2 [~kvirc@112.134.255.33] has joined #wesnoth-dev 20140303 01:39:36-!- justinzane [~justinzan@tiny.justinzane.com] has joined #wesnoth-dev 20140303 01:40:01-!- sachith500 [~kvirc@112.134.185.101] has quit [Ping timeout: 240 seconds] 20140303 01:46:08-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has quit [Ping timeout: 240 seconds] 20140303 01:47:17-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has joined #wesnoth-dev 20140303 01:49:50< iceiceice> hmm i am running into a problem on the unit animation thing: 20140303 01:50:01< iceiceice> so i guess that there are "fake" units 20140303 01:50:04< iceiceice> that aren't in the unit map? 20140303 01:50:07< iceiceice> but still get animated? 20140303 01:57:05-!- sachith500|2 [~kvirc@112.134.255.33] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 20140303 01:58:49< iceiceice> i'm not sure what is the right thing to do for them... 20140303 02:04:37< irker106> wesnoth: Ignacio R. Morelle wesnoth:master 52107698fb8f / changelog: Expand tabs in the changelog http://git.io/9d_d_g 20140303 02:04:40< irker106> wesnoth: Ignacio R. Morelle wesnoth:master 3135c7b92abf / changelog: Bump changelog version again http://git.io/OgWiUQ 20140303 02:05:35-!- stikonas__ [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has quit [Quit: Konversation terminated!] 20140303 02:09:23-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has quit [Quit: tomreyn] 20140303 02:15:08-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has quit [Ping timeout: 240 seconds] 20140303 02:15:55-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has joined #wesnoth-dev 20140303 02:21:11-!- exciton_ [chuck-the-@95.72.231.220] has joined #wesnoth-dev 20140303 02:23:44-!- exciton_ [chuck-the-@95.72.231.220] has quit [Read error: Connection reset by peer] 20140303 02:24:38-!- exciton [chuck-the-@89.208.170.132] has quit [Ping timeout: 240 seconds] 20140303 02:26:09-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 02:29:54< shadowm> Yay, sourceforge! I can't see anything here: http://sourceforge.net/projects/wesnoth/files/wesnoth/wesnoth-1.11.11/ 20140303 02:30:31< shadowm> Assuming Ivanovic didn't do something weird to the folder. 20140303 02:32:38< iceiceice> hmm so heres the design dilemma about the unit animations 20140303 02:32:59< iceiceice> i think theres only two kinds of units we animate, the real units in unit_map, 20140303 02:33:04< iceiceice> and the fake_units from game_display 20140303 02:33:24< iceiceice> when we animate, we pass the animation object a naked pointer 20140303 02:33:27< iceiceice> because we want it to be fast 20140303 02:33:40< iceiceice> i think it would be better to pass some kind of smart pointer 20140303 02:34:16< iceiceice> we could implement by having, the unit_map has one collection of smart pointers... 20140303 02:34:25< iceiceice> and the fake_units have their own type of smart pointers... 20140303 02:34:33< iceiceice> and the animation system has its own collection of smart pointers, 20140303 02:34:35< iceiceice> but that seems terrible 20140303 02:35:43< iceiceice> so i think maybe the fake units and the real units should be brought under the same roof 20140303 02:35:53< iceiceice> like they both inherit from a common place 20140303 02:36:19< iceiceice> and we can pass that to the animation object 20140303 02:38:45< iceiceice> or just create two different pipelines i geuss 20140303 02:38:52< iceiceice> add_fake_unit and add_unit 20140303 02:39:15< iceiceice> i guess the fake units dont cause a problem so much as we dont pass copies of them around 20140303 02:39:55-!- Youngoli [~Youngoli@97.65.103.250] has joined #wesnoth-dev 20140303 02:44:18< happygrue> shadowm: I don't see anything there either, but it does *say* there are 5 items that take up 1.2 GB 20140303 02:44:49< happygrue> which is... strange? 20140303 02:46:06< happygrue> an unrelated question: There is an objective that is missing (a unit that if it dies you lose but it isn't listed in the objectives) of THoT scenario #11. 20140303 02:46:35< happygrue> does that count as a typo for string freeze purposes? Or does that wait? 20140303 02:48:47< shadowm> happygrue: If the string already exists in the campaign, it can be reused. 20140303 02:49:09< happygrue> ah, he does show up in the next scenario, let me check 20140303 02:50:16< happygrue> okay, so if I copy and paste the exact wording from another scenario, I can commit it and it won't cause a problem? 20140303 02:50:45< shadowm> Yes. 20140303 02:50:49< happygrue> okay, thanks 20140303 02:50:51< iceiceice> anyone: is there a good reason why "fake" units are not stored in the unit map? it seems that the current implementation in game_display is a bit bizarre 20140303 02:51:07< happygrue> no idea, sorry. 20140303 02:51:28< shadowm> iceiceice: Are those the ones used for move_unit_fake? 20140303 02:51:32< iceiceice> yes 20140303 02:52:05< iceiceice> so i understand why we dont want to necessarily give them map locations, as inserting them to that part would take alot of time 20140303 02:52:09< shadowm> Well, I don't know in any case. 20140303 02:52:14< iceiceice> but it seems to me that they should get underlying ids 20140303 02:52:28< iceiceice> and get inserted into the hash table like all other units, if possible 20140303 02:52:42< iceiceice> maybe that adds too much complexity to unit_map... 20140303 02:53:10< iceiceice> idk how many fake units do we really draw? 20140303 02:53:56< iceiceice> maybe i will just change how things are implemented in game_display so that it uses the unit_map::iterator types 20140303 02:54:09< iceiceice> and a hash table rather than a queue as it currently does... 20140303 02:56:36< shadowm> AI0867: You have an off-by-one error in your code: https://dl.dropboxusercontent.com/u/21371130/screenshots/wesnoth-1.11.11-13.png 20140303 02:56:59< shadowm> AI0867: Maybe. What I included was "./test". 20140303 02:57:42< iceiceice> i'm going to try to write something tonight... bbl 20140303 02:57:43-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has quit [Quit: Leaving] 20140303 02:58:17< mattsc> iceiceice: I don't know if this has anything to do with this, but in Lua there are normal units and private units ... 20140303 02:58:22< mattsc> Oh, too late ... 20140303 03:00:16< shadowm> AI0867: Also, uh , -1? Huh. 20140303 03:01:33< mattsc> shadowm: 20140302 19:14:28< Ivanovic> looks as if sf.net is slow propagating the downloads today 20140303 03:01:34< mattsc> 20140302 19:14:39< Ivanovic> it only lists "will be available for download shortly" 20140303 03:02:28< mattsc> It's seems to have been a problem for a while today. I haven't seen my OS X package there yet since I upload it ... whenever that was. 20140303 03:03:07-!- bumbadadabum_ [~bumbadada@d155109.upc-d.chello.nl] has quit [Quit: Ik ga weg] 20140303 03:03:40< shadowm> I would make sure to compare the checksums reported by SourceForge.net (the 'i' icon next to the download in the directory listing) with your own later. 20140303 03:04:38< shadowm> Hm, no way to know whether they are working on it since they strictly follow a work day schedule. 20140303 03:04:40< mattsc> sounds like a good idea ... 20140303 03:06:00-!- happygrue [~happygrue@wesnoth/developer/wintermute] has quit [Ping timeout: 240 seconds] 20140303 03:12:12-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20140303 03:15:07-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has joined #wesnoth-dev 20140303 03:15:14-!- werlley [~werlley@187-41-155-232.user.veloxzone.com.br] has joined #wesnoth-dev 20140303 03:16:16-!- Ivanovic_ [~ivanovic@x2f4c582.dyn.telefonica.de] has joined #wesnoth-dev 20140303 03:18:53-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has quit [Ping timeout: 252 seconds] 20140303 03:20:10-!- Ivanovic_ is now known as Ivanovic 20140303 03:22:56-!- Gambit [~derek@wesnoth/developer/grickit] has quit [Remote host closed the connection] 20140303 03:23:45-!- vorobeez [~quassel@85.142.148.12] has joined #wesnoth-dev 20140303 03:24:01-!- vorobeez [~quassel@85.142.148.12] has quit [Remote host closed the connection] 20140303 03:26:21-!- iceiceice [~chris@pool-108-21-12-72.nycmny.east.verizon.net] has joined #wesnoth-dev 20140303 03:32:43-!- Youngoli [~Youngoli@97.65.103.250] has quit [Quit: Leaving] 20140303 03:39:23< iceiceice> well the plot seems to ever thicken here... we have at least 4 different kinds of unit pointers being passed around in the source code when I think we really only need one 20140303 03:40:23< iceiceice> 1) we pass a bunch of unit *'s around, which causes bugs like the double kill bug 20140303 03:40:36< iceiceice> 2) the unit_map gives us a nice unit_map::iterator object which appears to be a safe, shareable pointer 20140303 03:41:13< iceiceice> 3) the game_display has a class "game_display::fake_unit" which derives from unit but adds itself / removes itself from a queue built into game_display when it is created / destroyed 20140303 03:41:28< iceiceice> 4) the whiteboard uses boost::shared_ptr's to "fake_units" which are already themself a safe pointer??? 20140303 03:45:43< mattsc> iceiceice: well, I am glad that you are looking into this and not I. I barely know what half of those words mean ... :P 20140303 03:48:21< iceiceice> i mean tbh, i am learning a great deal from trying to figure this out... this is not like related to my day job or anything, i learned C++ well before all this boost craziness 20140303 03:49:03< iceiceice> however i think i want to propose to refactor as much as possible so we only use one type of 'safe' pointer 20140303 03:49:17< iceiceice> and then the interfaces for all this stuff can be alot simpler 20140303 03:49:35< mattsc> Do you think that this is a task for before 1.12.0? 20140303 03:49:57< mattsc> Sounds like the potential for breakage is quite high. 20140303 03:51:18< iceiceice> i think the breakage would be at compile time 20140303 03:51:19< iceiceice> in the sense that 20140303 03:51:29< iceiceice> i mean i would only be changing types of pointers around hopefully 20140303 03:51:46< iceiceice> if i cant figure out how it can be a true refactor i dont think i would do it 20140303 03:52:33< iceiceice> theres not actually that many places where fake units are used... 20140303 03:52:37< iceiceice> i guess it is lua and the white board 20140303 03:52:45< iceiceice> at least thats what grep says 20140303 03:53:07< iceiceice> i'm not sure if there are other places where there's other wierd unit pointers, but thats not relevant to the bug 20140303 03:53:31< iceiceice> i might not actually have to change anything in the white board, it might be that it can all be changed in the game_display implemeentation of it 20140303 03:53:35< mattsc> Are Lua private units what counts as fake units in this context? 20140303 03:54:24< iceiceice> there's about 6 places in lua.cpp where the fake_unit class is refered to 20140303 03:54:37< iceiceice> i imagine it has more to do with lua commands to animate a fake unit 20140303 03:54:48< iceiceice> rather than just a being a privately stored unit 20140303 03:55:18< mattsc> okay, that would be good. 20140303 03:55:57< mattsc> And are you still talking about adding fake units to the unit_map? (sorry, I'm having a hard time following all of this) 20140303 03:55:59< iceiceice> do you know what this unit_animation::matches function does? 20140303 03:56:19< iceiceice> yeah i think its potentially to complicated to add fake units to the unit map 20140303 03:56:28< iceiceice> i'm not sure why it wasn't done that way, but i'm going to trust whoever made that decision 20140303 03:56:32< iceiceice> what i'm thinking of now is 20140303 03:56:44< mattsc> Well, there is this, for example: https://gna.org/bugs/?func=detailitem&item_id=20322 20140303 03:56:46< iceiceice> instead of having a std::deque in game_display 20140303 03:56:49< iceiceice> which holds all the fake units 20140303 03:57:14< iceiceice> i want it to be the same thing, but such that i can get unit_map::iterator's from it basically 20140303 03:57:24< mattsc> That's the kind of thing that makes me nervous about all this, even though it might not have anythign to do with this topic specifically. 20140303 03:57:31< iceiceice> so like, the std::map that maps unit_underlying ids to units 20140303 03:57:36< mattsc> But there's just a lot of interconnected stuff ... 20140303 03:57:39< iceiceice> i want the fake_units list to be similar 20140303 03:57:47< iceiceice> because intuitively it is 20140303 03:59:07< iceiceice> idk how interconnected is the list of fake units? 20140303 03:59:18< iceiceice> other than like wml / lua tags, 20140303 03:59:19< iceiceice> and the white board 20140303 03:59:33< iceiceice> do we routinely create fake_units by any other means? 20140303 04:00:06< iceiceice> idk this fake_unit implementation is really goofy... 20140303 04:00:17< iceiceice> its like instead of making a proper data structure, 20140303 04:00:25< iceiceice> we have this wrapper class that intimately ties the object to the game display 20140303 04:00:51< iceiceice> but instead of having the game_display be responsible for managing the data structure, there are methods of the wrapper class that ask to insert or delete the fake unit.... 20140303 04:01:25< iceiceice> when we already had functionality to make a nice unit storage object in the unit_map 20140303 04:01:44< iceiceice> so i can see why whoever made the animations wanted to just take a unit* as argument, and have the unit animations tied to a unit* 20140303 04:02:07< iceiceice> but we really should go back and make it a safe pointer, and in fact the same safe pointer we use everywhere else 20140303 04:02:12< iceiceice> i think we would be much better off then 20140303 04:02:58-!- vorobeez [~quassel@85.142.148.12] has joined #wesnoth-dev 20140303 04:03:17< iceiceice> besides this, everyone besides the guy who made the fake_unit class is deeply suspicious of it, 20140303 04:03:24< mattsc> iceiceice: okay - as I said, I really can't contribute anything meaningful to this. 20140303 04:03:28< iceiceice> otherwise why are they putting inside boost::shared_ptrs 20140303 04:03:41-!- vorobeez [~quassel@85.142.148.12] has quit [Remote host closed the connection] 20140303 04:04:17< iceiceice> idk i feel like it might be possible to redo the shared pointer thing 20140303 04:04:21< iceiceice> *the fake_unit thing 20140303 04:04:27< iceiceice> in a limited way 20140303 04:04:33< iceiceice> that would only introduce compile time errors if any 20140303 04:04:51< iceiceice> but i'm not sure if i will know that until i try to implement it 20140303 04:05:01< iceiceice> and it seems like the more i look the bigger it becomes 20140303 04:07:03< iceiceice> do you know anything about where this "unit_animation::matches" function is used? 20140303 04:07:48< iceiceice> its not clear to me that its actually used anywhere 20140303 04:09:40-!- iceiceice [~chris@pool-108-21-12-72.nycmny.east.verizon.net] has quit [Quit: Leaving] 20140303 04:09:57-!- iceiceice [~chris@pool-108-21-12-72.nycmny.east.verizon.net] has joined #wesnoth-dev 20140303 04:15:58< mattsc> No, don't know anything about that function, sorry. 20140303 04:16:55< iceiceice> i'm trying to compile with it commented out, we'll see if anything breaks :) 20140303 04:17:01< iceiceice> i seriously didnt find any matches with grep 20140303 04:17:02< mattsc> :) 20140303 04:18:52< iceiceice> hey does anyone remember what the command was to change scons to use clang? 20140303 04:19:01< iceiceice> "scons -CXXtools=clang++" maybe? 20140303 04:19:06< iceiceice> i'm going to add a note to the wiki i think 20140303 04:19:17< iceiceice> its a seriously good tip imo 20140303 04:21:13< mattsc> iceiceice: btw, just putting this down for the record: the one bug I really care about is the double-kill crash, because that trips me up frequently. And I do know how to put in a work-around fix for that. 20140303 04:21:28< mattsc> So if you want to wait with the rest until 1.13, that's fine with me. 20140303 04:22:32< iceiceice> alright, i wont spend too much time on it 20140303 04:22:47< iceiceice> but if i can get an easy refactor i think it is worth it 20140303 04:23:06< mattsc> sure, not arguing that 20140303 04:23:33< mattsc> Anyways, thanks much for looking into that. I am pretty much out of Wesnoth time for today now though. 20140303 04:24:50-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has quit [Quit: End Transmission.] 20140303 04:29:29< iceiceice> ok i'll let you know where i finish with this 20140303 04:30:49-!- kex [~kex@89.205.75.19] has quit [Remote host closed the connection] 20140303 04:31:24-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140303 04:36:13-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 264 seconds] 20140303 04:36:40-!- iceiceice [~chris@pool-108-21-12-72.nycmny.east.verizon.net] has quit [Ping timeout: 265 seconds] 20140303 04:37:49-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has joined #wesnoth-dev 20140303 04:38:27< shadowm> Ahhh, the whiteboard fake units. I had completely forgotten about them -- mostly because I always forget that whiteboard exists as a matter of daily routine. 20140303 04:38:55< shadowm> Then I accidentally press 'p' and get all confused by the large words on the screen. 20140303 04:43:06-!- nyzuul [~joey@68.205.55.114] has joined #wesnoth-dev 20140303 04:44:48< iceiceice> the whiteboad looks good, but it definitely has this musty, up in the attic quality to it... 20140303 04:45:05< iceiceice> theres lots of weird graphical glitches i remember as well 20140303 04:46:24< iceiceice> idk i guess its a good idea but it seems like its not working in excellent condition 20140303 04:50:07-!- Aishiko_laptop [~unknown@cpe-065-191-176-226.nc.res.rr.com] has joined #wesnoth-dev 20140303 04:52:19< shadowm> Yeah, put me to work on gamemap stuff and I can 100% guarantee you I'll break the whiteboard in record time. 20140303 04:52:50< shadowm> I don't use it or understand it at any level, so I'd be unable to tell exactly how whatever I'm doing it supposed to interact with it. 20140303 04:53:02< shadowm> *is 20140303 04:53:38-!- knotwork [~markm@unaffiliated/knotwork] has quit [Ping timeout: 240 seconds] 20140303 04:53:44< iceiceice> i know that it gets confused easily if you start like planning recruits and then cancelling the 20140303 04:54:04< iceiceice> and then your fake units show up as completely different units 20140303 04:54:16< iceiceice> i assume because the game display fake_units list gets messed up somehow? 20140303 04:54:19< iceiceice> i really have no idea 20140303 04:54:29< iceiceice> i dont have a test case either, but i remember this happening in 1.10.6 20140303 04:54:34< iceiceice> when i was beginning 20140303 04:55:24< iceiceice> it is very useful for showing your ally how you want to position, 20140303 04:55:51< iceiceice> but as for like actually planning or recruiting, iirc it is rumored to cause oos and so most players dont use those 20140303 04:55:57< iceiceice> *planning attacks or recruits 20140303 04:56:02< Aishiko_laptop> what is the whiteboard? is it like a planning stage? 20140303 04:56:50< Aishiko_laptop> it sounds like a MP part 20140303 04:57:10< iceiceice> its in sp too i think 20140303 04:57:30< iceiceice> you can activate "planning mode" and then plan hypothetical moves 20140303 04:57:33< shadowm> It is intended to cater to the Crazy MP People™, but yes, it's also available in single-player scenarios. 20140303 04:58:16< shadowm> The UI name is "Planning Mode", but it's internally known as the Whiteboard. 20140303 04:58:44< Aishiko_laptop> ahhh I have used it and I've not really liked it enough to use at again 20140303 04:58:46< shadowm> You can plan ahead of time and stuff. In MP I think allied players are even able to plan moves together before their turns. 20140303 05:00:27< Aishiko_laptop> that could be useful 20140303 05:02:07< shadowm> But again, I'm not part of that crowd, so I'd be like "oops, did I just hear something break? nah it must have been my imagination". 20140303 05:02:39< shadowm> And since players aren't interested enough in participating in the development process, I'd only find out on the next .0 stable release. 20140303 05:04:05< shadowm> I don't know how many people here who've actually done work with the gamemap user interface may be in the same situation. 20140303 05:05:04< shadowm> The ideal solution? Unit tests. 20140303 05:05:12< Aishiko_laptop> unit tests? 20140303 05:05:18< shadowm> Yep, unit tests. 20140303 05:05:38< Aishiko_laptop> thats a new term to me, how does that work? 20140303 05:05:40< shadowm> C++ programmers love those: http://en.wikipedia.org/wiki/Unit_test 20140303 05:05:50< fabi_> java programmers as well 20140303 05:06:25< shadowm> Basically, we have a way to build a small program that depends upon all of Wesnoth's functionality, and runs isolated snippets that test that functionality and check that it yields results within certain expectations. 20140303 05:06:55< shadowm> For example, we have a test for a version_info class type that defines a version number and comparisons between those. 20140303 05:06:59< fabi_> Well, in most case a unit tests just tests a single class. 20140303 05:07:18< shadowm> The unit test includes checks for things like "1.1.2a < 1.1.3" and "1.1.2 < 1.1.2a". 20140303 05:07:50< shadowm> In an ideal world, if I went and changed something in the version_info class' implementation, I could run the test suite and if I accidentally broke version_info, one or more such checks would fail. 20140303 05:08:06< shadowm> This would be reported to me and I would be able to go and pinpoint the cause of the regression. 20140303 05:08:32< shadowm> Now, the reality: we have unit tests (using Boost.test). 20140303 05:08:35< Aishiko_laptop> however those tests have to be written and designed as well 20140303 05:08:50-!- Youngoli [~Youngoli@2601:8:9800:361:dc6a:d49:cfe5:b6c2] has joined #wesnoth-dev 20140303 05:08:52< shadowm> However, we do a terrible job at maintaining and using them. 20140303 05:09:10< shadowm> Now we have a situation like this: http://pastebin.com/9BdYaYrX (see line 26, how does that even happen). 20140303 05:09:40< shadowm> Well, 24 and 26. 20140303 05:09:44< fabi_> shadowm: Do you mind if I introduce a dependency to Boost.Test? 20140303 05:09:58< shadowm> fabi_: Uh, we already depend on it. 20140303 05:10:02< fabi_> cool 20140303 05:10:13< shadowm> I mean, it's what our test suite uses, so, yeah. 20140303 05:10:36-!- mattsc [~mattsc@154.20.32.245] has quit [Quit: Ciao] 20140303 05:10:55< shadowm> Now, figuring out when and how these tests broke and what to do from there? ... I'll pass. 20140303 05:10:55< fabi_> Ah okay. I am used to use the unit tests from within the IDE, each pick-able on its own. 20140303 05:11:23< fabi_> This works pretty well when coding java in eclipse. 20140303 05:11:54< shadowm> Something that was being discussed the other day is that even with unit tests, testing things like unit rendering for possible regressions is easier said than done. 20140303 05:11:58< fabi_> I would like to use the unit tests more often (and code my own) if this can work with the boost.test as well. 20140303 05:12:20< fabi_> Sure, unit tests are not the solution for every problem out there. 20140303 05:12:39< Aishiko_laptop> no but they can help narrow down the problem area, maybe 20140303 05:13:07< shadowm> Certainly. 20140303 05:13:32-!- knotwork [~markm@142.68.215.102] has joined #wesnoth-dev 20140303 05:13:32-!- knotwork [~markm@142.68.215.102] has quit [Changing host] 20140303 05:13:32-!- knotwork [~markm@unaffiliated/knotwork] has joined #wesnoth-dev 20140303 05:13:33< fabi_> Well, technically unit tests are checkers for the dynamic semantic which is defined in prose. 20140303 05:13:55< fabi_> of a class 20140303 05:14:12< shadowm> Actually, I _may_ be able to track down some of those regressions: http://pastebin.com/M4U0gAJR 20140303 05:14:14< iceiceice> yeah so i have no experience with unit testing 20140303 05:14:24< iceiceice> but it seems like a great idea 20140303 05:14:35< fabi_> So you use the ide's semantic checker and the compiler for static semantic errors and the unit tests to catch the dynamic ones. 20140303 05:14:36< iceiceice> and it does seem like at least some of the pieces of wesnoth were designed this way 20140303 05:14:51< iceiceice> when i was looking at the :give_control dialog, 20140303 05:14:59< iceiceice> it looks like whoever made that did an extremely rigorous testing job 20140303 05:15:13-!- Youngoli_ [~Youngoli@c-98-247-35-244.hsd1.wa.comcast.net] has joined #wesnoth-dev 20140303 05:16:42< Aishiko_laptop> iceiceice, well I'd like to include that sort of work, I'd like to make my contributions, not only stable but less likely to be the cause of errors. 20140303 05:19:12-!- Youngoli [~Youngoli@2601:8:9800:361:dc6a:d49:cfe5:b6c2] has quit [Ping timeout: 265 seconds] 20140303 05:19:28 * fabi_ just found an eclipse plugin "C/C++ Unit Testing Support" 20140303 05:20:05-!- Youngoli_ is now known as Youngoli 20140303 05:20:57-!- nyzuul [~joey@68.205.55.114] has quit [Quit: Konversation terminated!] 20140303 05:21:57-!- vorobeez [~quassel@85.142.148.12] has joined #wesnoth-dev 20140303 05:22:05-!- vorobeez [~quassel@85.142.148.12] has quit [Remote host closed the connection] 20140303 05:28:02-!- Youngoli is now known as youngoli 20140303 05:33:41< fabi_> shadowm: It works! 3 errors, 2 failures. All manageable from within eclipse. Just beautiful. I could cry. 20140303 05:43:58-!- goblinThing [44bd8c2c@gateway/web/freenode/ip.68.189.140.44] has quit [Ping timeout: 245 seconds] 20140303 05:45:54-!- sachith500_ [c0f80841@gateway/web/freenode/ip.192.248.8.65] has joined #wesnoth-dev 20140303 05:48:59< Aishiko_laptop> hi sachith500_ 20140303 05:49:40< sachith500_> hey Aishiko_laptop :D 20140303 05:49:45< sachith500_> how's it going ^_^ 20140303 05:50:17< Aishiko_laptop> you don't want to ask that question, as I'll be honest and that won 20140303 05:50:21< Aishiko_laptop> t help anyone 20140303 05:52:39-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has quit [Quit: this quit message is 100% guaranteed not to contain obscenity.] 20140303 05:52:56-!- Upth [~ogmar@108-85-91-228.lightspeed.frokca.sbcglobal.net] has joined #wesnoth-dev 20140303 05:52:58< Aishiko_laptop> fabi_, where did you find that plugin for eclipse? 20140303 05:53:36< fabi_> Aishiko_laptop: It is part of the cdt distribution. Just go to the install dialog and search for "unit". 20140303 05:56:59-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 240 seconds] 20140303 05:58:30< fabi_> shadowm: How many unit tests do we have? Currently it seems to quit the suit after 94 runs with only 89 successful. 20140303 05:59:03< fabi_> Meaning 2 tests fail but 3 throw exceptions, which terminates the run. 20140303 05:59:10-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20140303 05:59:17< shadowm> From http://pastebin.com/9BdYaYrX it seems like the total is 126. 20140303 06:02:37< shadowm> _8680_: Have you taken a look at http://forums.wesnoth.org/viewtopic.php?p=567626#p567626 yet? 20140303 06:03:10< _8680_> I’ve seen it, I haven’t reviewed it yet. 20140303 06:04:30< shadowm> mordante: It'd be nice to know the intended title for that post too... 20140303 06:06:04< fabi_> AI0867: Can you teach that building bot to run the test binary? 20140303 06:12:14-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140303 06:15:23-!- trademark_ [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has joined #wesnoth-dev 20140303 06:16:58-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 252 seconds] 20140303 06:22:08< fabi_> shadowm: Is it okay to disable the tests which cause exceptions to make the suit continue with the rest of the tests and fill bug reports? 20140303 06:23:38< shadowm> I guess. 20140303 06:27:46-!- trewe [~trewe@65.160.54.77.rev.vodafone.pt] has quit [Quit: quit] 20140303 06:35:58-!- trademark_ [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has quit [Ping timeout: 240 seconds] 20140303 06:47:31< fabi_> shadowm: Who is able to add an "Item Group" to the gna bug tracker? 20140303 06:51:00< shadowm> Administrators listed in the gna.org project's front page. 20140303 06:51:47< fabi_> shadowm: "Ignacio R. Morelle" 20140303 06:51:53< shadowm> Ask Ivanovic! 20140303 06:52:09 * shadowm hides. 20140303 06:52:25< fabi_> Is it that much work? 20140303 06:53:40< shadowm> Maybe not. 20140303 06:54:06< shadowm> Dunno, this primitive tracker interface looks confusing and frightening. What new IG is needed? 20140303 06:54:38< fabi_> "Tests" or "Test Suite" or "unit tests" 20140303 06:54:41< fabi_> I am not sure. 20140303 06:55:12< fabi_> And there is unit test support for travis. 20140303 06:55:46< fabi_> Meaning it will not only check if the "test" binary still compiles but also run it and report about failing tests. 20140303 06:57:52< fabi_> We should torture the gsoc students to write unit tests for all their stuff :-) 20140303 06:57:57< shadowm> Added as "Unit Tests". 20140303 06:58:03< fabi_> Cool, thanks. 20140303 06:59:10< shadowm> 1141 "None of the Others" bugs, 1102 "User Interface" bugs. 20140303 06:59:25< shadowm> Oh right, those aren't open bug counts. 20140303 06:59:45< shadowm> It'd be nice to see how many open bugs have the wrong group assigned. 20140303 07:00:25< shadowm> For example, this https://gna.org/bugs/?21724 should really be WML... maybe. It's kind of a gray area. 20140303 07:07:28< irker106> wesnoth: fendrin wesnoth:master d3814b84412c / src/tests/test_sdl_utils.cpp: Disable every unit test for the sdl utils, they don't run anymore. http://git.io/KuMtww 20140303 07:07:30< irker106> wesnoth: fendrin wesnoth:master 8f6e7e1e5455 / src/tests/test_unit_map.cpp: Disabled every test for the unit_map class, they don't run anymore. http://git.io/y9g5EA 20140303 07:08:42< fabi_> mordante: https://gna.org/bugs/?21745 20140303 07:12:10< fabi_> wesbot: seen libk? 20140303 07:12:11< wesbot> fabi_: Sorry, I don't know of libk. 20140303 07:12:17< fabi_> wesbot: seen lipk? 20140303 07:12:17< wesbot> fabi_: Sorry, I don't know of lipk. 20140303 07:12:25< fabi_> wesbot: seen lipkab? 20140303 07:12:25< wesbot> fabi_: The person with the nick lipkab 10h 28m ago was here and on the channel #wesnoth with the message: Read error: Connection reset by peer 20140303 07:12:45< fabi_> lipkab: https://gna.org/bugs/?21746 20140303 07:16:54< fabi_> mordante: https://gna.org/bugs/?21747 20140303 07:17:23-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has joined #wesnoth-dev 20140303 07:19:49< fabi_> Andrius Silinskas == lipkab? 20140303 07:21:02< fabi_> ah no, it's thunderstruck 20140303 07:21:50< fabi_> thunderstruck: https://gna.org/bugs/?21748 20140303 07:23:53< fabi_> AI0867: https://gna.org/bugs/?21749 20140303 07:27:11-!- wesbot changed the topic of #wesnoth-dev to: released 1.11.11, announcing "soon" | string+feature freeze active on master | 216 bugs, 350 feature requests, 28 patches | Logs: http://irclogs.wesnoth.org | Alternate logs: http://wesnoth.debian.net | Don't paste on IRC! Use a pastebin: http://pastebin.com | http://imagebin.org 20140303 07:41:31< fabi_> shadowm: http://forums.wesnoth.org/viewtopic.php?p=567601#p567601 :-) 20140303 07:46:04-!- boucman_work [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20140303 07:56:09< shadowm> iceiceice: I'm getting the "this is a multiplayer scenario yadda yadda" warning even for local hotseat games... 20140303 07:56:32< iceiceice> are you using back to level? 20140303 07:56:36< iceiceice> *back to turn 20140303 07:58:05< iceiceice> here's my thoughts on the whole thing: 20140303 07:58:13< iceiceice> ivanovic is right, we should make it just "do the right thing" 20140303 07:58:18< iceiceice> but right now we have two separate code paths 20140303 07:58:29< iceiceice> i think it is good for the user to know when we are using one or the other 20140303 07:58:40< iceiceice> as it is not at all obvious otherwise that there are two code paths 20140303 07:59:02< shadowm> I'm using Load Game -> (autosave), which is equivalent. 20140303 07:59:04< iceiceice> if you use the wrong one you can get subtle bugs 20140303 07:59:41< iceiceice> i have only a poor understanding of exactly which code path is used for each different load mechanism 20140303 08:00:12< iceiceice> i guess it is good for us in the sense that if we get the message when we didnt expect it, maybe it tells us something should be changed 20140303 08:00:17-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140303 08:00:31< iceiceice> but im not sure if the answer is, the warning should go away 20140303 08:00:35< iceiceice> maybe you disagree 20140303 08:04:29-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140303 08:05:08< shadowm> What kind of subtle bugs? 20140303 08:05:20-!- ancestral [~ancestral@75-161-229-57.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20140303 08:07:50< iceiceice> all the things stickied in the mp forum i think are still correct 20140303 08:08:04< iceiceice> i guess most of it was to do with mp campaigns 20140303 08:08:12< iceiceice> or much of it 20140303 08:09:07< iceiceice> http://forums.wesnoth.org/viewtopic.php?f=15&t=34363 20140303 08:15:31< shadowm> Hm, I lost my second game with Khalifate because of a stupid last-minute move with my leader. I was sooooo close to taking down that orc. 20140303 08:36:14< shadowm> http://sourceforge.net/projects/wesnoth/files/wesnoth/wesnoth-1.11.11/ <- Still broken. 20140303 08:41:57-!- Gneiss [d31a07cd@gateway/web/freenode/ip.211.26.7.205] has joined #wesnoth-dev 20140303 08:45:35-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20140303 08:45:50-!- matrixMinion [67157e4c@gateway/web/freenode/ip.103.21.126.76] has joined #wesnoth-dev 20140303 08:49:55< matrixMinion> Hi. I am a student interested in improving the AI. although I have experience in AI, I don't know lua. I know C, C++, Python, Java and Lisp. Any advice? 20140303 08:55:48< vultraz> best talk to mattsc and Crab_ when they're around 20140303 08:57:21< shadowm> Ivanovic: Announcement draft is up: http://forums.wesnoth.org/viewtopic.php?f=16&t=40115 The downloads in SF.net still don't work and the file sizes are similarly unavailable. 20140303 08:58:43< shadowm> matrixMinion: In my experience, Lua is not too hard to learn if you have an existing programming background, even without reading the whole reference that's freely available at lua.org. 20140303 08:59:54< shadowm> That said, as vultraz said, our AI experts are Crab_ and matssc. 20140303 09:00:23-!- matrixMinion_ [67157e4c@gateway/web/freenode/ip.103.21.126.76] has joined #wesnoth-dev 20140303 09:00:50< shadowm> matrixMinion_: Missed our responses? 20140303 09:01:20< matrixMinion_> @shadowm: yeah. net connection can be such a pain 20140303 09:01:49< shadowm> matrixMinion_: In my experience, Lua is not too hard to learn if you have an existing programming background, even without reading the whole reference that's freely available at lua.org. That said, as vultraz said, our AI experts are Crab_ and matssc. 20140303 09:01:53-!- matrixMinion [67157e4c@gateway/web/freenode/ip.103.21.126.76] has quit [Ping timeout: 245 seconds] 20140303 09:02:14< shadowm> Regarding timezones, Crab_ lives in Eastern Europe I believe, no idea about mattsc. 20140303 09:03:15< vultraz> Mattsc is usually around 6 hours or so from now 20140303 09:03:31< matrixMinion_> @vultraz: Thanks. 20140303 09:04:26< matrixMinion_> @shadowm: what time is Crab_ usually around? I am +6 UTC 20140303 09:05:03< shadowm> I'm not completely sure, I think Eastern Europe is +2 or +3 UTC? 20140303 09:07:28< shadowm> Hm, +2 it seems. 20140303 09:07:44< shadowm> In any case, either of them should be able to answer your questions. 20140303 09:10:53< matrixMinion_> @shadowm: Thanks. btw, you are an admin of the forums, right? Can you provide me SoC membership? my login user name is recycler 20140303 09:11:40< shadowm> Hm. 20140303 09:12:10< shadowm> matrixMinion_: Done. 20140303 09:12:46< matrixMinion_> @shadowm: Thanks 20140303 09:17:21< shadowm> No problem. 20140303 09:26:25-!- Ivanovic [~ivanovic@x2f4c582.dyn.telefonica.de] has quit [Changing host] 20140303 09:26:25-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has joined #wesnoth-dev 20140303 09:29:12< Ivanovic> shadowm: thanks for writing the announcement 20140303 09:29:20< Ivanovic> no idea what is up with sf.net 20140303 09:29:27< Ivanovic> and i am lying in bed today, caught a cold 20140303 09:32:18-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has joined #wesnoth-dev 20140303 09:32:18-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has quit [Changing host] 20140303 09:32:18-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140303 09:33:13< irker106> wesnoth: fendrin wesnoth:master de53e651878e / src/minimap.cpp: Fix bug #21467: end iterator deref when launching test scenario http://git.io/umo77A 20140303 09:36:56-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Client Quit] 20140303 09:48:32-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140303 09:52:25-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 264 seconds] 20140303 09:52:58-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 240 seconds] 20140303 10:00:35-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 10:00:38-!- matrixMinion_ [67157e4c@gateway/web/freenode/ip.103.21.126.76] has quit [Ping timeout: 245 seconds] 20140303 10:00:49-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 10:06:43-!- travis-ci [~travis-ci@ec2-54-205-212-13.compute-1.amazonaws.com] has joined #wesnoth-dev 20140303 10:06:43< travis-ci> [travis-ci] wesnoth/wesnoth#1922 (master - de53e65 : fendrin): The build was broken. 20140303 10:06:43< travis-ci> [travis-ci] Build details : http://travis-ci.org/wesnoth/wesnoth/builds/19961780 20140303 10:06:43-!- travis-ci [~travis-ci@ec2-54-205-212-13.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140303 10:19:46-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140303 10:20:50-!- stikonas [~gentoo@maths-pgs-002.maths.ed.ac.uk] has joined #wesnoth-dev 20140303 10:20:50-!- stikonas [~gentoo@maths-pgs-002.maths.ed.ac.uk] has quit [Changing host] 20140303 10:20:50-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140303 10:29:06-!- mjs-de [~mjs-de@g228201071.adsl.alicedsl.de] has joined #wesnoth-dev 20140303 10:34:49< fabi_> Hmmm, maybe changing to clang was not a good idea. 20140303 10:41:56< Coffee_irc> fabi_: I think the problem is that whilst clang can find the .pot files, the .pan files are missing :P 20140303 11:00:00-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 11:00:14-!- exciton [chuck-the-@95.72.231.220] has joined #wesnoth-dev 20140303 11:00:59< Coffee_irc> a question about translations 20140303 11:01:28< Coffee_irc> for the new lobby game advertisements, the translations of "scenario:", etc. seem to be missing from most languages 20140303 11:02:00< Coffee_irc> should I put a forum thread on the translation area of the forums for this? 20140303 11:03:17< Coffee_irc> I suspect the translations are all there for "scenario", but don't match because of the colon... 20140303 11:08:51< Coffee_irc> these were the changes to allow for campaigns to be advertised in the lobby as well as scenarios and also modifications 20140303 11:13:00< Soliton> what's special about those strings? they'll get translates like the rest, no? 20140303 11:15:47-!- exciton [chuck-the-@95.72.231.220] has quit [Read error: Connection reset by peer] 20140303 11:16:01-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 11:17:26< Coffee_irc> Soliton: they are specified in a c++ file 20140303 11:17:45< Coffee_irc> and it just seems strange to me that they haven't been translated 20140303 11:18:04< Coffee_irc> given that they've been sitting there for a while and there have been a number of translation updates since 20140303 11:20:38< Soliton> well, are they in the po[t] files? maybe they aren't properly marked translatable. 20140303 11:21:00< Coffee_irc> Soliton: I don't know how to check? 20140303 11:21:12< Coffee_irc> thye have the underscore before them in the file 20140303 11:21:32< Soliton> grep? translate them and check in game? 20140303 11:22:05< Coffee_irc> Soliton: there are only .mo files 20140303 11:24:49< Soliton> no. 20140303 11:25:30< Coffee_irc> Soliton: so how would I check? 20140303 11:27:38< Soliton> i mentioned that above. you responded with a non-sensical statement. i can't help you further unless you explain. 20140303 11:28:33< Coffee_irc> Soliton: doing a general grep -r in the wesnoth-old directory for "scenario:" only brings up other instances which don't look like the correct one 20140303 11:28:45< Coffee_irc> it looks like it is missing from the list of translations 20140303 11:30:14< Coffee_irc> doing a 'grep -r "modifications:"' confirms it 20140303 11:31:05< Coffee_irc> oh 20140303 11:31:13< Coffee_irc> it should be "Modifications:" 20140303 11:31:18< Coffee_irc> now it matches 20140303 11:31:33< Coffee_irc> I guess they will be translatied in time then 20140303 11:31:39< Coffee_irc> *translated 20140303 11:38:31-!- spoffy [~spoffy@152.78.175.8] has joined #wesnoth-dev 20140303 11:43:49-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20140303 11:51:10-!- aquileia [52d4193f@gateway/web/freenode/ip.82.212.25.63] has joined #wesnoth-dev 20140303 11:52:27< aquileia> Coffee_irc: Another option might be to split it in _ "Scenario" + ":" I guess, then the existing translation could be used 20140303 11:53:09< aquileia> At least I think so (I'm relatively new here) 20140303 11:53:13< Coffee_irc> aquileia: the modifications and different types of scenario/campaign/etc. still need be translated 20140303 11:53:51< Coffee_irc> I figure it will be fine if they are slated to be translated still 20140303 11:53:59< aquileia> ok 20140303 11:59:33-!- sachith500_ [c0f80841@gateway/web/freenode/ip.192.248.8.65] has quit [Quit: Page closed] 20140303 12:01:48-!- matrixMinion [67157e4c@gateway/web/freenode/ip.103.21.126.76] has joined #wesnoth-dev 20140303 12:13:38-!- youngoli [~Youngoli@c-98-247-35-244.hsd1.wa.comcast.net] has quit [Quit: Leaving] 20140303 12:16:18-!- Aishiko_laptop [~unknown@cpe-065-191-176-226.nc.res.rr.com] has quit [Read error: Operation timed out] 20140303 12:16:59-!- Aishiko_laptop [~unknown@cpe-065-191-176-226.nc.res.rr.com] has joined #wesnoth-dev 20140303 12:19:21< Aishiko_laptop> Coffee_irc, could we just do a regex on that so that "senerio"+";:,etc will match, and then translate and add the whatever on the end back on? 20140303 12:21:02< Aishiko_laptop> could be as simple as that, compare that way, then strip the last char of into temp var translate, and concatenate the : back on the end 20140303 12:21:12< zookeeper> aquileia, you can't deduce anything from the ss size alone, as individual sprites/animations can be of any size. 20140303 12:21:54< aquileia> zookeeper: shadowm had the same objection 20140303 12:22:51< aquileia> but non-square frames are rare (even most haloes comply with the convention) 20140303 12:24:17< aquileia> Not having to add two parameters for 95% of the animations seems handy 20140303 12:24:30< Aishiko_laptop> aquileia, and then converting the rare into squares should hopefully not be too hard 20140303 12:24:42< zookeeper> sure, i think we could live with square frames being mandatory 20140303 12:24:51< zookeeper> not so much with forced dimensions 20140303 12:24:57< zookeeper> s/dimensions/size 20140303 12:25:41< Aishiko_laptop> what about using an optional parameter? that way we only need to send it in that 5% of cases 20140303 12:25:47< aquileia> Aishiko_laptop: Take a look at data/core/images/halo/holy/light-beam-7.png 20140303 12:25:58< aquileia> Aishiko_laptop: That was my suggestion 20140303 12:26:11< aquileia> But you were faster... 20140303 12:26:42-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has joined #wesnoth-dev 20140303 12:27:48< zookeeper> i also think it's a bad idea to simply have the frames tiled next to each other without any magic-color padding; it's harder to edit when you don't _see_ where the frame boundaries lie 20140303 12:28:34-!- spoffy [~spoffy@152.78.175.8] has quit [Ping timeout: 244 seconds] 20140303 12:28:36< aquileia> zookeeper: But would you work on the spritesheets at all? Single frames are one click away 20140303 12:28:54< zookeeper> uh, what click where? 20140303 12:28:59< Aishiko_laptop> hmmm can we use the colours to to determine each frame's boundaries? 20140303 12:30:01< aquileia> If Aishiko_laptop implements a conversion script it would handle both directions I guess 20140303 12:30:13< aquileia> Aishiko_laptop: Correct me if I'm wrong 20140303 12:30:14< Aishiko_laptop> aquileia, part of the plan =) 20140303 12:30:36< aquileia> zookeeper: So one click and you don't have to worry of any boundaries 20140303 12:31:28< Aishiko_laptop> the idea is that the scripts will be there, might require a third party piece of software that I would think that if your a artist you'd have already 20140303 12:31:53< Coffee_irc> aquileia: you could have a ~SS for general spritesheets and another function for general dimension spritesheets, or something similar 20140303 12:31:59< zookeeper> i have great doubts that you could make the extract/repack process work so well. to work on all platforms, really be that easy to use (how could it?), easy to install, etc 20140303 12:32:11-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has quit [Ping timeout: 244 seconds] 20140303 12:32:33< Aishiko_laptop> aquileia, actually, I was considering that the script could ask you what frame(s) you want to work with, remove only those frames and then add them back when your done keeping the order right 20140303 12:32:50< zookeeper> like, let's say i'm looking at images/units/merfolk/fighter.png. i want to edit the third attack frame. what do i do? 20140303 12:33:16-!- irker106 [~irker@ai0867.net] has quit [Quit: transmission timeout] 20140303 12:34:12< aquileia> Another possibility would be to drag fighter.png on the application icon and have all frames as fighter-n.png 20140303 12:34:33< aquileia> No user interface required 20140303 12:34:39< Aishiko_laptop> ideally I'd have the script convert the image to many number the frame taken out 20140303 12:34:46< Aishiko_laptop> what she said 20140303 12:35:04< aquileia> No user interface would be required 20140303 12:35:37< aquileia> If you want a single frame, a) add the number via command line b) don't bother, take them all 20140303 12:35:39< Aishiko_laptop> I might have a console come up and ask which image 20140303 12:35:41< Coffee_irc> the way frogatto seems to do it is group attacks by one horizontal line, defense anims by another, idle by another, etc. 20140303 12:36:00< zookeeper> how could the application know how to split the ss? 20140303 12:36:14< zookeeper> where does it get the size and number of frames? 20140303 12:36:21< Aishiko_laptop> Coffee_irc, that was the idea I had, but different units have different numbers of those 20140303 12:36:34< Aishiko_laptop> zookeeper, I think they all have the same numbers 20140303 12:37:05< zookeeper> uh, no, animations can and do have any number of frames 20140303 12:37:17< aquileia> For square ones in linear sprite sheets it'd be easy, for other cases... well, there's a reason we discuss things 20140303 12:37:53< aquileia> Oh... nice idea 20140303 12:38:10< aquileia> drag the UNIT on the app 20140303 12:38:19< aquileia> there all information is available 20140303 12:38:45< zookeeper> what's the unit for the abovementioned lightbeam? 20140303 12:38:46< aquileia> Aishiko_laptop: But that would make it harder for you... 20140303 12:38:47< Coffee_irc> aquileia: you'll doubtless find an existing app that converts images into spritesheets 20140303 12:39:13< aquileia> zookeeper: Take e.g. a white mage 20140303 12:39:15< Aishiko_laptop> aquileia, your hitting on the issue, I was having last night, going "hey some of these buttons are a different and odd shapes how can I handle them?" 20140303 12:39:24< zookeeper> aquileia, what if it uses the ss differently than some other unit? 20140303 12:39:28< zookeeper> which is a very real possibility 20140303 12:40:20< aquileia> If you want to modify non-square frames not used in any unit... make one yourself 20140303 12:40:29< Coffee_irc> an example of an oversidezed image are the fire dragon sprites 20140303 12:40:39< Coffee_irc> *oversidzed 20140303 12:40:42< Coffee_irc> *oversized 20140303 12:40:47< Aishiko_laptop> Coffee_irc, square frame right 20140303 12:40:49< Aishiko_laptop> ? 20140303 12:40:54< aquileia> yes 20140303 12:40:59< aquileia> 100x100 IIRC 20140303 12:41:10< Coffee_irc> Aishiko_laptop: they are all square frames AFAICT 20140303 12:41:11< Aishiko_laptop> aquileia, we covered this right? 20140303 12:41:37< zookeeper> for the record, this is the kind of sheets i'd recommend: https://github.com/frogatto/frogatto/blob/master/images/characters/nene-spritesheet1.png 20140303 12:41:41< aquileia> oh no... the dragon is 160x200 ? 20140303 12:42:08< zookeeper> and i'd definitely rather edit such a sheet directly, than have to go through an unpack/repack procedure when i want to edit something. 20140303 12:42:12< aquileia> optional parameter 20140303 12:42:57< Coffee_irc> I figure the layout would be artist dependent and you just need to provide a way to index by row and column 20140303 12:43:01< Aishiko_laptop> Coffee_irc, I thought so for the units and that is easy, I was going to set it to take do math to get the dimensions, but if that is the case.... 20140303 12:43:46< Coffee_irc> Aishiko_laptop: you could have 2 functions -- one for 72x72 sprites and one that takes 2 extra parameters that specifies the dimensions of single sprites 20140303 12:44:05< Aishiko_laptop> Coffee_irc, I was considering having a metafile(s) of some kind at one point where, it would look up things like size and location on the sheet 20140303 12:44:09< Coffee_irc> 72 is just from memory, it might be adifferent number 20140303 12:44:35< zookeeper> Coffee_irc, but then you have to know the dimensions if you want to edit the ss. so you have to effectively open the ss in your image editor and try to figure out the sprite size, which would be excruciatingly annoying 20140303 12:44:37< Aishiko_laptop> Coffee_irc, I came to that conclusion 20140303 12:44:39< aquileia> Coffee_irc: most non-72x72 cases are square (e.g. 90x90) 20140303 12:44:45< Aishiko_laptop> 72 is the default size yes 20140303 12:44:49-!- tomreyn [~tomreyn@megaglest/team/tomreyn] has joined #wesnoth-dev 20140303 12:44:57< Coffee_irc> this is why the idea of padding came up before 20140303 12:45:12< Coffee_irc> so you could easily show the borders of each sprite 20140303 12:46:26< aquileia> but if Wesnoth has to analyze the file to find borders on run-time... where's the advantage to single images? 20140303 12:46:32< zookeeper> yeah, i support padding because it eliminates the need to pass _any_ metadata from WML. you just specify which row and column you want, and the game can figure out all the rest, assuming you organize your ss in a somewhat grid-like fashion which i think is a very reasonable requirement. 20140303 12:46:48< Aishiko_laptop> Coffee_irc, I'm looking into using the borders as a way to determine the boundaries, at that point function could handle both single sprite images, regular sized sprite sheets, and odd sized ones 20140303 12:47:06< zookeeper> there's mostly two gains from use of ss's: improve performance and memory use, and to make things more convenient for artists. 20140303 12:47:18< Coffee_irc> Aishiko_laptop: KISS is a good principle for some things 20140303 12:47:20< Aishiko_laptop> I count them as 3 =) 20140303 12:47:37< zookeeper> doing the former on the expense of the latter would be a... bad thing 20140303 12:48:47< aquileia> tell that to a smartphone user (yes, I know that staff is more important than the user base) 20140303 12:49:04< aquileia> the best thing would be to please both 20140303 12:49:04< Coffee_irc> if an artist wants one sprite bigger all of a sudden they can always resize all the other images in the spritesheet to match 20140303 12:49:11< Aishiko_laptop> I was already planing a optional Spritesheet parameter (saying this is a spritesheet and needs to be processed differently) so a second one for odd--sizes would be doable I think and maybe easier 20140303 12:49:36< zookeeper> having to use an external tool to unpack/repack ss's whenever you edit them adds another point of failure and a step that needs to be documented and taught and maintained for anyone who does anything with the sprites... whereas if you do padding, then there's no explanation required, it all becomes kinda obvious by just looking at an existing sheet 20140303 12:50:07< aquileia> zookeeper: wesnoth-optipng is an aditional step as well 20140303 12:50:16< Aishiko_laptop> and adding the math to deal with that padding at runtime shouldn't be that hard to do 20140303 12:50:18< zookeeper> we don't expect artists to use it 20140303 12:50:34< Coffee_irc> aquileia: artists shouldn't use optipng 20140303 12:50:57< Coffee_irc> this can remove indexing of colors and other things 20140303 12:50:59< zookeeper> optipng is something that some of the maintainers run every now and then and/or before a release, artists don't need to think about it 20140303 12:51:34< aquileia> sprite sheets could work the same if you want 20140303 12:52:01< aquileia> but I defer to those actually doing art 20140303 12:52:14 * zookeeper raises a hand 20140303 12:52:48< zookeeper> not that i do a lot of art (especially anymore), but still i've made plenty of unit animations and worked with effects and stuff 20140303 12:52:49< aquileia> so I'm just trying to add a different aspect to the discussion 20140303 12:53:13< aquileia> zookeeper: I know 20140303 12:53:33< aquileia> A bit of discussion can't hurt 20140303 12:53:34< Coffee_irc> spritesheets would make it easier to use palletes across lines 20140303 12:53:37< zookeeper> sure 20140303 12:53:40< Aishiko_laptop> if padding helps the artist I'm for it and will make it work 20140303 12:54:13< zookeeper> Coffee_irc, yeah, that's true 20140303 12:54:50< Aishiko_laptop> if its a constant size, like 3 in the froggta example that is easy to code in and the only issues is making sure the artists follow that convention 20140303 12:55:29< Coffee_irc> I've tried my hand at editing unit lines for a custom era, but not published it (mainly a rip off unless I get a campaign for it as well one day finished) 20140303 12:56:23< zookeeper> Aishiko_laptop, "like 3 in the..." referring to what? the third row? 20140303 12:57:05< Aishiko_laptop> by the way the froggta sends an upper and lower corner pixel to get their images out 20140303 12:57:14< zookeeper> ah, right 20140303 12:57:58< Aishiko_laptop> so we could do that have [upperx,uppery,lowerx,lowery] be part of the call and be done with it 20140303 12:58:01< aquileia> new rules and workflows for artists might be an issue though, so single sprites should still be possible 20140303 12:58:34< zookeeper> aquileia, yeah, absolutely. ss's would just be an additional option (even if all core animations were converted to ss's) 20140303 12:58:56< Aishiko_laptop> no math to determine at any time the right frame if those [upperx,uppery,lowerx,lowery] are not given, its treated as a single image file 20140303 12:59:13< Coffee_irc> remember that we are also talking about animated terrains as well I hope 20140303 12:59:28< Aishiko_laptop> Coffee_irc, we are I think 20140303 12:59:42< Aishiko_laptop> I was planning on have it handle whatever you throw at it 20140303 12:59:45< Coffee_irc> this is where the loading will shine 20140303 13:00:09< Coffee_irc> people complain about animated terrains and such being jerky sometimes (although I never see it) 20140303 13:00:21< zookeeper> Aishiko_laptop, that's the thing i don't like about frogatto ss's; you have to mess with pixel coordinates WML-side and that can get messy (even if you only have to only provide the coords of the first frame, and the engine can look to the right to find the next ones) 20140303 13:00:47-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has quit [Ping timeout: 252 seconds] 20140303 13:00:54< Coffee_irc> yeah, why not a generic grid for each? 20140303 13:00:59< Coffee_irc> what could be simpler 20140303 13:01:13< zookeeper> i don't mean it's absolutely terrible or anything, just that it'd prefer to simply be able to index rows and columns 20140303 13:01:29< zookeeper> s/it'd/i'd 20140303 13:01:47< Aishiko_laptop> I need to go I'll read the logs when I get back on in an 90 min or so 20140303 13:03:35< Coffee_irc> I don't see the point in frogatto's spritesheets of different sizes for the Nene frames 20140303 13:03:54< Coffee_irc> considering there is transparent space of different lengths on the sides anyway 20140303 13:04:30< zookeeper> yeah i don't know if there's a point to that, except maybe being used to adjust centering 20140303 13:04:30< Coffee_irc> maybe it has to do with the way that frogatto positions the "units" of that game 20140303 13:05:04< Coffee_irc> we postion from the centre 20140303 13:05:06< Coffee_irc> *position 20140303 13:05:23< Coffee_irc> which makes it easy enough 20140303 13:06:29-!- Aishiko_laptop [~unknown@cpe-065-191-176-226.nc.res.rr.com] has quit [Ping timeout: 269 seconds] 20140303 13:08:04-!- exciton_ [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 13:08:05-!- exciton_ [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 13:08:57< Coffee_irc> I suppose another option to consider would be to have a spritesheet for each type of animation, attack, defense, idle, etc. and all horizontal/vertical only 20140303 13:09:53< Coffee_irc> looks like fat-frogatto has its own spritesheet :P 20140303 13:10:27-!- trademark_ [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has joined #wesnoth-dev 20140303 13:10:43< aquileia> But then there are those animations that grab sprites in orders like [1~5,4,5,4,5~1] 20140303 13:11:07< aquileia> or [-idle,-attack-2] 20140303 13:11:08-!- exciton [chuck-the-@89.208.170.132] has quit [Ping timeout: 240 seconds] 20140303 13:11:17< Coffee_irc> aquileia: you don't want to change that much 20140303 13:11:28< Coffee_irc> or you will have the same picture twice in the sheet 20140303 13:11:57< aquileia> What I want to say is that - at the moment - people prefer to have a picture only once 20140303 13:12:27< Coffee_irc> aquileia: yes, or it becomes inefficient 20140303 13:12:34< Coffee_irc> see the thief animations for example 20140303 13:12:38< zookeeper> horizontal single-anim-only sheets would surely be a possibility, but that seems rather crippled to me. it'd basically work just like normal sheets, except that you'd be able to have one row only, and you could count on there not being empty space on the right side 20140303 13:12:59-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 13:13:09< Coffee_irc> but you'd need only one parameter to specify the location 20140303 13:13:11< Coffee_irc> just an idea 20140303 13:13:18< zookeeper> sure, that's the advantage 20140303 13:13:27< Coffee_irc> just tossing it in there 20140303 13:13:59< Coffee_irc> I suppose it's up to the GSoCs to figure out the best way to do it 20140303 13:14:00< aquileia> Converting old animations would be easy with linear sheets, because the old syntax would be recycled 20140303 13:14:29< aquileia> but it's about who should have the least work, I guess 20140303 13:14:41< aquileia> I'm out, bye 20140303 13:15:15 * zookeeper needs to go as well 20140303 13:15:35< Coffee_irc> I need some sleep here 20140303 13:15:40-!- lipkab [~the_new_l@2001:738:5404:192:9e4e:36ff:fe7c:534c] has joined #wesnoth-dev 20140303 13:15:55-!- spoffy [~spoffy@2001:630:d0:ed05:2c8e:57d5:9ece:991e] has joined #wesnoth-dev 20140303 13:15:58< aquileia> We all aren't here, it's just a dream 20140303 13:16:05< Coffee_irc> night, and good luck :) 20140303 13:16:15< aquileia> We are sleeping on our keyboars :p 20140303 13:16:31-!- sachith500 [~kvirc@112.134.58.173] has joined #wesnoth-dev 20140303 13:16:44-!- molgrum [~molgrum@212.85.89.43] has quit [Ping timeout: 252 seconds] 20140303 13:17:36< zookeeper> keyboars don't like being slept on 20140303 13:18:08< sachith500> :D 20140303 13:18:52< vultraz> keyboar? Is that a thing from Kingdom Hearts? 20140303 13:19:12< zookeeper> could be 20140303 13:19:14< zookeeper> keys for tusks 20140303 13:21:19-!- molgrum [~molgrum@212.85.89.43] has joined #wesnoth-dev 20140303 13:22:25< lipkab> fabi_: I have nothing against fixing random bugs. I'd like indicate, however, that I have nothing to do with unit_map. 20140303 13:23:25< loonycyborg> Ivanovic: 1.11.11 windows installer is uploaded :P 20140303 13:24:19< fabi_> lipkab: Oh sorry, git blamed you for doing a change in the test's file, thus my assignment. 20140303 13:24:36< lipkab> Hm. 20140303 13:24:55< lipkab> Which file is that? 20140303 13:25:40< fabi_> tests/test_unit_map.cpp 20140303 13:26:33-!- happygrue [~happygrue@c-66-30-155-184.hsd1.ma.comcast.net] has joined #wesnoth-dev 20140303 13:26:33-!- happygrue [~happygrue@c-66-30-155-184.hsd1.ma.comcast.net] has quit [Changing host] 20140303 13:26:33-!- happygrue [~happygrue@wesnoth/developer/wintermute] has joined #wesnoth-dev 20140303 13:27:11-!- wesbot changed the topic of #wesnoth-dev to: released 1.11.11, announcing "soon" | string+feature freeze active on master | 215 bugs, 350 feature requests, 28 patches | Logs: http://irclogs.wesnoth.org | Alternate logs: http://wesnoth.debian.net | Don't paste on IRC! Use a pastebin: http://pastebin.com | http://imagebin.org 20140303 13:27:13< sachith500> hey happygrue :) 20140303 13:28:02< happygrue> hello 20140303 13:28:50< lipkab> git is lying. I've never modified that file. 20140303 13:38:19-!- boucman_work [~rosen@wesnoth/developer/boucman] has quit [Ping timeout: 244 seconds] 20140303 13:38:35-!- EdB [~edb@85.69.242.6] has joined #wesnoth-dev 20140303 13:40:13-!- spoffy [~spoffy@2001:630:d0:ed05:2c8e:57d5:9ece:991e] has quit [Quit: Leaving] 20140303 13:47:24< happygrue> regarding the whiteboard and Crazy MP People™, I actually don't think many Crazy MP People™ use the whiteboard, but that's just a guess. It would be interesting to see usage information on it sometime. 20140303 13:49:17< vultraz> I personally have never used the Whiteboard 20140303 13:49:56< happygrue> If it is the sort of thing that is causing problems and holding back regular interface changes, I would be suspect if it is worth keeping tbh. 20140303 13:50:38-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 13:51:21< happygrue> I have tried it a bit, and it is quite a fun little feature, but it's also something that I would never actually use in a game - because my moves are based on what the opponent does and also what happens on my turn... I can hold possibilities in mind but actually programing them in while the opponent hasn't finished moving is something I would never be tempted by. 20140303 13:52:38-!- boucman_work [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20140303 13:53:40< happygrue> It does look nice, and maybe there are some folks who get good use out of it. I just don't know any of them. 20140303 13:55:22< sachith500> hey happygrue quick question 20140303 13:55:26< sachith500> regarding the data analysis part 20140303 13:55:38< sachith500> it would happen before the replay data is sent to the server right? 20140303 13:55:53-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 13:56:33< sachith500> whoops* 20140303 13:56:38< sachith500> i meant after 20140303 13:57:26< happygrue> yes, after 20140303 13:58:20< sachith500> hmm I'm trying to figure out if something like a mysql database is worth it 20140303 13:59:10< sachith500> do you know where the code that currently handles the replay data sent to it is handled? 20140303 13:59:31< happygrue> Soliton: ^ 20140303 14:00:42-!- TooLmaN_ [~TooLmaN@mx1.thomsonplastics.com] has joined #wesnoth-dev 20140303 14:01:24< sachith500> in the mean time I'll look around some more :D 20140303 14:01:29< happygrue> I would think that changing the existing scoring mechanism is an option, if that seems more advantageous than setting up another database 20140303 14:02:04-!- lipkab [~the_new_l@2001:738:5404:192:9e4e:36ff:fe7c:534c] has quit [Quit: Vannak idők, mikor menni kell] 20140303 14:02:09< happygrue> but then I guess you'd have to parse through stuff every time you requested data, and the replay archive will only get bigger, I don't know if trying to strip the useful bits out and storing it in a real database is better long term... 20140303 14:02:35< happygrue> but I'm just guessing on that, maybe you have other ideas - I bet you know more about it anyway ;) 20140303 14:02:43< happygrue> (more than I do) 20140303 14:04:33< sachith500> :D 20140303 14:04:53-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Quit: Konversation terminated!] 20140303 14:05:14< sachith500> well it might introduce some complexity to the project as well 20140303 14:05:40< sachith500> I just wanted to know what you guys thought :) 20140303 14:06:04< Soliton> sachith500: multiplayer is implemented by sending replay data around. the server saves that data and sends it to joining clients and saves it into a replay file when the game ends. 20140303 14:06:53< sachith500> yeah I took a look at some of the classes already 20140303 14:07:07< Soliton> do you want to know where the server saves the replay? that's not really relevant though... 20140303 14:07:24< sachith500> not where 20140303 14:07:44< sachith500> I'm looking into how to open in up to data analysis 20140303 14:07:59< sachith500> *open it up 20140303 14:08:05< Soliton> it being? 20140303 14:08:15< sachith500> the replay files 20140303 14:08:53< Soliton> with a wml parser? :-) 20140303 14:09:08< sachith500> right :D 20140303 14:09:41< Soliton> basically you'd go through the replay like the game proper and collect data you think is useful. 20140303 14:09:53-!- TooLmaN_ [~TooLmaN@mx1.thomsonplastics.com] has quit [Quit: Off to save the world!] 20140303 14:09:55< sachith500> oh all right 20140303 14:09:58< Soliton> and then i agree it'd be a good idea to save that in a DB like mysql. 20140303 14:10:05-!- TooLmaN [~TooLmaN@mx1.thomsonplastics.com] has joined #wesnoth-dev 20140303 14:10:28< sachith500> yeah 20140303 14:10:35< sachith500> otherwise updating would be messy 20140303 14:10:39< Soliton> for later querying and visualizing certain stats. 20140303 14:10:47< sachith500> yeah 20140303 14:11:35< sachith500> could you point me to exactly where in the code the data saving takes place 20140303 14:13:36< Soliton> src/server/game.cpp: game::save_replay() 20140303 14:14:38< sachith500> ok thanks 20140303 14:15:11< sachith500> I was looking at the client side for now to work on the victory condition part of the project :D 20140303 14:15:20< sachith500> I'll take a look at it. thanks for your time :D 20140303 14:15:33< Soliton> sure, that's an important first step. 20140303 14:15:37< sachith500> yeah 20140303 14:15:43< sachith500> my initial idea was 20140303 14:15:45< sachith500> *is 20140303 14:15:54< sachith500> to implement a simple victory condition 20140303 14:16:08< sachith500> like if all enemy leaders dead : your team wins 20140303 14:16:17< sachith500> and then move onto the data analysis part 20140303 14:16:31< sachith500> get it to a relative satisfactory state 20140303 14:16:38< Soliton> sure but that part you can already get from the data analysis. 20140303 14:16:41< sachith500> and then iterate 20140303 14:17:00< Soliton> what we're missing are all the cases were that does not happen. 20140303 14:17:03< sachith500> oh? 20140303 14:17:08< sachith500> ahh ok 20140303 14:17:24< sachith500> does it also already save all recruited units? 20140303 14:17:32< sachith500> I know that data is available in game 20140303 14:17:38< Soliton> well, if you replay that game you will find out if all leaders of one side died. 20140303 14:17:41< sachith500> through the dropdown menu 20140303 14:18:12< sachith500> all recruited, dead and advanced units 20140303 14:18:14< Soliton> the replay saves "everything" not sure i understand the question. 20140303 14:18:26< sachith500> well yeah 20140303 14:18:44< sachith500> I'd want to get something presentable 20140303 14:18:50< sachith500> in terms of database 20140303 14:18:52< sachith500> asap 20140303 14:19:18< Soliton> that's what the replay data analyzation tool would do, not wesnoth. 20140303 14:19:36< sachith500> yeah, on the server side 20140303 14:20:00< happygrue> sachith500: yes, if you open a replay and then watch it to the end, poke around opening the data "s" then look at recruits ->details 20140303 14:20:01< Soliton> independently of the server but with the server side replay, yes. 20140303 14:20:16< happygrue> if you look through a replay all of that is available, if that answers your question 20140303 14:20:34< sachith500> right 20140303 14:20:38-!- mattsc [~mattsc@207.230.251.234] has joined #wesnoth-dev 20140303 14:21:27< sachith500> ok I'm a bit confused, where would the data analyzation tool live? 20140303 14:22:23< Soliton> basically what the project should entail is 1) implement some way in the wesnoth client to select a winning side (when it is not otherwise obvious) 2) implement a replay data analyzation tool that processes replays and save what it finds out in a DB 3) implement some frontend to query/visualize the data in the DB. 20140303 14:23:04< sachith500> oh all right 20140303 14:23:17< Soliton> the analyzation tool would probably be run on the server where also wesnothd runs but it's an independent process. 20140303 14:23:27< sachith500> ah right 20140303 14:23:40< sachith500> when you said independently of the server I got a bit confused 20140303 14:23:53< sachith500> yeah it would get info from the server 20140303 14:24:12< sachith500> or the archive 20140303 14:24:21< sachith500> ok right got it now 20140303 14:24:30< Soliton> wesnothd just saves the replay data it has no real idea what's in it. 20140303 14:24:53< sachith500> so the parser would do that 20140303 14:25:13< sachith500> and stick it in a database 20140303 14:25:18< Soliton> yes, the replay data analyzation tool would share some code with wesnoth to parse WML and execute the replay WML etc. 20140303 14:25:46< sachith500> all right 20140303 14:28:39< Soliton> note that some thought should go into implementing 1) so it plays nice with custom scenarios. so that WML authors can define their own win conditions or trigger some end game event according to their rules. 20140303 14:29:48< sachith500> hmm yeah 20140303 14:30:00-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 14:30:14-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 14:30:17< Soliton> that's not really my area so not sure but afaik there is stuff like [end_level] which should probably be used/extended there. 20140303 14:31:00< sachith500> yup there are games that end after a particular number of turns 20140303 14:31:00< sachith500> races, etc 20140303 14:31:12< Soliton> and that should result in some replay command that states what side(s) won. 20140303 14:31:13< sachith500> I've played a few scenarios like that 20140303 14:31:29< sachith500> right 20140303 14:31:32< fabi_> lipkab: Maybe it was test_mp_connect? 20140303 14:32:21< Soliton> would be cool if someone can go over the wiki page and add what's missing/clarify from the discussion above. (happygrue? :-P) 20140303 14:34:08< sachith500> yeah :D 20140303 14:34:23< sachith500> interested students are bound to go through the irc logs too ;) 20140303 14:35:08-!- thunderstruck [~zaibotren@cpc13-sgyl31-2-0-cust696.18-2.cable.virginm.net] has joined #wesnoth-dev 20140303 14:36:42< mattsc> matrixMinion: hi. Are you specifically interested in the global attack/retreat decision AI project? 20140303 14:36:58< matrixMinion> @mattsc: yes 20140303 14:38:01< mattsc> So let me start with a disclaimer: the person you should really talk to about this is Crab, but I'll do what I can to help. 20140303 14:38:31< mattsc> I think Crab_ imagines this being done in C++ not Lua 20140303 14:38:51< sachith500> mattsc hey :D 20140303 14:39:00< mattsc> Hi sachith500 20140303 14:39:01< sachith500> I decided to make the data analysis project my primary target 20140303 14:39:16< sachith500> I might still put a proposal for the AI project as well 20140303 14:39:17< sachith500> ;) 20140303 14:40:23< matrixMinion> @mattsc: That's great. Thanks. 20140303 14:40:43< mattsc> matrixMinion: Crab gave some feedback to another student a few days ago for starting points. It'd probably be a good idea to check out the logs for that. 20140303 14:40:43< mattsc> sachith500: ok :) 20140303 14:40:43< sachith500> :D 20140303 14:40:43-!- Matei [~razvan@p16.eregie.pub.ro] has joined #wesnoth-dev 20140303 14:40:43< sachith500> but I don't think looking into 2 projects at the same time will work very well :\ 20140303 14:40:43< sachith500> so I will probably drop the AI project halfway through ^_^ 20140303 14:40:57< sachith500> but I'd still like to keep an ear out and discuss it when it comes up, I hope you don't mind :D 20140303 14:41:02< mattsc> sachith500: yes, that might be true 20140303 14:41:32< mattsc> matrixMinion: do you have any specific questions at this time? 20140303 14:42:08< mattsc> sachith500: no, don't mind at all 20140303 14:47:02< matrixMinion> @mattsc: As you said Crab_ has already given advice, so, I would rather read the logs first. I may ask the questions some time from now, it that's alright with you? 20140303 14:47:59< mattsc> matrixMinion: of course. Just ask the question here (rather than announcing that you have a question), and somebody will eventually reply. 20140303 14:48:31< matrixMinion> @mattsc: Sure. 20140303 14:48:49< mattsc> ... and if you know for whom the question is, but that person's nick in, as the channel is pretty busy this time of year 20140303 14:48:56< mattsc> s/but/put 20140303 14:49:36< mattsc> matrixMinion: one question from me: how much experience playing Wesnoth do you have? 20140303 14:49:39-!- Aishiko_laptop [~unknown@198.85.71.253] has joined #wesnoth-dev 20140303 14:53:53< matrixMinion> @mattsc: I have finished Wesnoth in normal difficulty (single player) and have played on local network a couple of times. 20140303 14:54:54< matrixMinion> @mattsc: I meant the default scenarios that come with Wesnoth, no add-ons. 20140303 14:55:22< mattsc> matrixMinion: okay - that's good then, so you have some feeling for how the current AI behaves. 20140303 14:56:02-!- EdB [~edb@85.69.242.6] has quit [Quit: Konversation terminated!] 20140303 14:57:59< matrixMinion> @mattsc: I hope so. I also have experimented with the RCA AI, and the default AI last year around GSoC. 20140303 15:00:22-!- exciton_ [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 15:04:08-!- exciton [chuck-the-@89.208.170.132] has quit [Ping timeout: 240 seconds] 20140303 15:07:23-!- mattsc [~mattsc@207.230.251.234] has quit [Quit: Computer's napping] 20140303 15:12:05< AI0867> 03:56 < shadowm> AI0867: You have an off-by-one error in your code: https://dl.dropboxusercontent.com/u/21371130/screenshots/wesnoth-1.11.11-13.png <-- not off-by-one, the linenumber is not available at that point 20140303 15:14:18< Espreon> Aishiko_laptop: I find your latest proposed change unneeded, but if you're really going to push for that, have the colon go with "Unknown Scenario" 20140303 15:14:49< Espreon> "Unknown scenario", rather 20140303 15:15:12< AI0867> shadowm: and the 'm/test/' bit is derived from the full path because the symbol './test/' is, again, not available 20140303 15:15:49< AI0867> this works perfectly for {foo} includes and it includes a bit of garbage for {~foo} and {./foo} includes 20140303 15:20:02< Aishiko_laptop> Espreon, we were talking about scenario: not being translated right, I thought getting the : off the end would allow it to get translated right. If its not useful/fixes the problem then no worries, it was an attempt 20140303 15:21:14< Espreon> Well, how is it not getting translated right? 20140303 15:21:19< Aishiko_laptop> because it was translating right when the : wasn't on the end, at least that was my understanding of the bug with the translation 20140303 15:21:25< Espreon> Ah. 20140303 15:21:52< Espreon> Sounds haxy. 20140303 15:21:59< Aishiko_laptop> therefore concating should prevent that issue with a very minor code change 20140303 15:22:42< Aishiko_laptop> I thought it better then adding scenario: in every language translation when we have scenario all ready in the translations 20140303 15:22:56< Espreon> Maybe try padding the "Unknown scenario:" part with whitespace? 20140303 15:23:12< Espreon> To make it "Unknown scenario: " 20140303 15:23:50< Aishiko_laptop> well then it would look funny I though "Unknown scenario :" Espreon it was "Unknown scenario: " before I changed it 20140303 15:24:03< Espreon> Oh. 20140303 15:24:07< Espreon> Hmm. 20140303 15:24:16< Aishiko_laptop> actually "Unknown scenario: $scenario_id" 20140303 15:25:31< Aishiko_laptop> I thought the concat would do 2 things, fix the issue, and make one less thing the translators have to remember to add a translation for since its just adding : to a word they already do. 20140303 15:25:43< Soliton> what bug report are you talking about? 20140303 15:26:29< Aishiko_laptop> scenario: not getting translated because of the : at the end 20140303 15:26:36-!- mattsc [~mattsc@fw.hia.nrc.ca] has joined #wesnoth-dev 20140303 15:26:40< Espreon> I guess you would have ": $scenario_id" become its own string, then. 20140303 15:26:55< Espreon> Its own translateable string, that is 20140303 15:27:36< Soliton> where is the bug report? 20140303 15:28:24< Aishiko_laptop> Soliton, I'm looking for it now 20140303 15:29:56< Aishiko_laptop> now I can't find it 20140303 15:32:13< Aishiko_laptop> Espreon, just reject it, 20140303 15:33:26< Espreon> Why? 20140303 15:33:36< Espreon> (Also, what's the bug's number) 20140303 15:33:41< Aishiko_laptop> I can't find the bug report 20140303 15:33:47< Espreon> I'll look for it. 20140303 15:33:56< Aishiko_laptop> Coffee mentioned in chat earlier " for the new lobby game advertisements, the translations of "scenario:", etc. seem to be missing from most languages" 20140303 15:34:13< Aishiko_laptop> I'm not sure if he even filed a bug report 20140303 15:35:12< Soliton> that was a misunderstanding afaict. 20140303 15:35:37-!- heroyi_ [83f7e04d@gateway/web/freenode/ip.131.247.224.77] has joined #wesnoth-dev 20140303 15:35:41< heroyi_> hello 20140303 15:36:11< heroyi_> i was wondering if anyone has experience in download ubuntu onto a win 8 20140303 15:36:38< Aishiko_laptop> Soliton, then rejecting the patch is the right thing to do in this case as it just makes the line a little harder to read, and nothing useful 20140303 15:37:15 * Soliton nods. 20140303 15:38:03< Soliton> heroyi_: you sure you're in the right channel? there are channels dedicated to windows and ubunut... 20140303 15:38:04< Aishiko_laptop> I'm just glad we figured it out before it was accepted 20140303 15:38:57< Espreon> Hopefully, Coffee_irc can confirm it for us. 20140303 15:41:42-!- vorobeez [~quassel@85.142.148.12] has joined #wesnoth-dev 20140303 15:43:50-!- heroyi_ [83f7e04d@gateway/web/freenode/ip.131.247.224.77] has left #wesnoth-dev [] 20140303 15:46:38-!- Matei [~razvan@p16.eregie.pub.ro] has quit [Remote host closed the connection] 20140303 15:46:39< Aishiko_laptop> Espreon, that would be nice, as I don't know how to have it translate 20140303 15:49:33< Espreon> You could always switch to a translation that does have that string translated and try it out yourself. 20140303 15:50:32< Espreon> And if there is indeed a problem, well... oh well. 20140303 15:50:35< Aishiko_laptop> I'm going to try that now, I just need to connect to a server and have a game made 20140303 15:50:36-!- exciton_ [chuck-the-@89.109.220.245] has quit [Read error: Connection reset by peer] 20140303 15:50:50-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 15:52:47< Aishiko_laptop> I'd check but I can't seem to get it to load in another language 20140303 15:55:01-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 15:55:05< Espreon> You can't get any of the translations working? 20140303 15:55:38< Espreon> What build system do you use? 20140303 15:55:50-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 15:58:05< Aishiko_laptop> cmake on linux 20140303 15:59:00< tomreyn> download bundling site with affiliate scheme, hosting wesnoth and claiming to pay the developers of the gmes they host http://www.silagames.com/game/58/ 20140303 16:00:01-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 16:00:05< tomreyn> (same for megaglest, but they never got in touch with us, nor did we upload there) 20140303 16:00:20< Espreon> Aishiko_laptop: Maybe try make mo-update 20140303 16:00:51-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 16:01:01-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 16:01:07< Aishiko_laptop> Espreon, I'll do that 20140303 16:02:00< Espreon> All right 20140303 16:02:14< Aishiko_laptop> nope still in english 20140303 16:02:19< Soliton> tomreyn: i don't think we've been approached by them either. thanks for the heads up. what does affiliate scheme mean? 20140303 16:02:37< Aishiko_laptop> I tried changing the system language but that didn't work 20140303 16:03:00< tomreyn> Soliton: search for "profit" on http://www.silagames.com/upload/ 20140303 16:03:29< Aishiko_laptop> duhhh there is a languages menu option. I really need snickers or V8 20140303 16:03:43< Aishiko_laptop> maybe a stay in a Holiday Express 20140303 16:03:47< Espreon> ... 20140303 16:03:53< Espreon> Heh heh... 20140303 16:04:33< happygrue> Soliton: sachith500, I've updated the wiki: http://wiki.wesnoth.org/SoC_Ideas_Multiplayer_Data_Analysis 20140303 16:04:56< happygrue> I think I got the main points of the conversation, but if anything still looks lacking or unclear feel free to hack at it. 20140303 16:05:50-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 16:05:58< happygrue> some updating in the actual description, and then an FAQ bit for the stuff I wasn't sure where else to put. 20140303 16:06:30< zookeeper> tomreyn, oh ho ho. looks... uh, interesting. 20140303 16:08:13< sachith500> happygrue, great :D 20140303 16:08:39< happygrue> in this case, "frequently" means just once, but... ;) 20140303 16:09:02< sachith500> haha :D 20140303 16:11:57< zookeeper> tomreyn, Soliton, i'm guessing they're just being intentionally misleading by saying "developer" when they really mean "anyone who uploaded the game" and don't really care about the difference. 20140303 16:12:39< zookeeper> looks like most (all?) games are free ones anyway, so... 20140303 16:13:41< Soliton> yeah. doesn't look like they comply with the GPL though. not that one can download without registering... 20140303 16:14:18< zookeeper> "Developer: Free games" 20140303 16:14:23< Soliton> anyhow, i doubt it's useful to try to do anything... 20140303 16:15:06< zookeeper> could still send them a question or two about it, like whether they intend to pay us as they imply 20140303 16:15:35< Soliton> how do they get to 42 developers when they're all "Free games"? :-) 20140303 16:17:14< zookeeper> i'm sure they'll tell you their plan :p 20140303 16:17:21< happygrue> A high speed breeding program, perhaps? 20140303 16:17:40< happygrue> It only takes 2 to start... 20140303 16:17:40< Soliton> well, the free account says "Unlimited gameplays to free games". i'm sure they'll pass 100% of that on to us! 20140303 16:17:57< happygrue> heh 20140303 16:19:40< zookeeper> right, looks like they're not selling individual games 20140303 16:20:17< tomreyn> zookeeper: here's my theory: they want to start a new service, they uploaded lots of liberally licensed games themselves to pre-populate the website, "after all, those are free, right (so we don't have to pay them, too)?" and the next stage is for them to contact game companies and say "see all those games who already signed up to us, you should, too" 20140303 16:20:20< zookeeper> still... "Also, we split 5% of the fee equally between the games on the platform, so you will earn money no matter what." that sounds nice :> 20140303 16:20:30< Soliton> happygrue: thanks, looks good! (wiki update) 20140303 16:20:53< zookeeper> tomreyn, something like that 20140303 16:23:06< tomreyn> i guess i might have liked their income distribution model if they had contacted us about bundling our builds with their software and service in advance. 20140303 16:24:16< Soliton> btw, do you sell megaglest on some platform? 20140303 16:31:16-!- bumbadadabum [~bumbadada@d155109.upc-d.chello.nl] has joined #wesnoth-dev 20140303 16:32:13< tomreyn> no 20140303 16:33:05< tomreyn> i doubt that's any different for wesnoth? 20140303 16:35:29< vorobeez> mattsc: hi. I haven't seen for two days Crab_. Can I ask you a few questions about AI? 20140303 16:37:47< mattsc> vorobeez: yeah, Crab_ seems busy with other things at the moment. I can try to answer you questions. 20140303 16:38:26-!- sachith500 [~kvirc@112.134.58.173] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 20140303 16:38:43< happygrue> tomreyn: it is available for iOS and Android (for sale) from various ports. 20140303 16:39:03< vorobeez> I rad about how ai works on wiki, But didn't understand how works stages? What their function? 20140303 16:39:18< happygrue> I can't recall the details, but I guess a cut pays for our servers? 20140303 16:39:18< tomreyn> hmm i see 20140303 16:40:04< mattsc> vorobeez: did you see this? http://wiki.wesnoth.org/General_RCA_AI_Howto 20140303 16:40:47< happygrue> There was some debate about it a while ago, and I see they are still there. Reaction from developers was somewhat mixed, but overall I think it's a good thing. I've spoken to folks who really really liked those ports and played them a lot. They woudn't have been able to if someone hadn't done the work for that (which then is how they can distribute them I guess). 20140303 16:41:14< happygrue> though not eveyone agrees with me ofc. ;) 20140303 16:41:40< tomreyn> happygrue: surely the idea of having someone other than the developers themselves pay for the resources it takes to run a FOSS game project is intiguing. ;-) i'm just not sure i know of a model other than donations that i can agree to. 20140303 16:42:32< Aishiko_laptop> I must be doing something wrong when I try to log in to a server to test, it either rejects me or puts in a lobby alone. and I am registered. I'll deal with it when I get home 20140303 16:42:45< tomreyn> on the other hand i guess i agree that whoever buys apple hardware has obviously too much money and should be "convinced" to contribute more. 20140303 16:43:13< Aishiko_laptop> tomreyn, there could a fee for the use of the server for MP something like $12/year isn't too much to cover running the server and what not 20140303 16:43:25< happygrue> yes, there was quite some issues with a few folks naturally not wanting to support that platform at all. I don't know how it all panned out. Surely it is heated thinking about moving a "pure" project into that realm 20140303 16:43:37< happygrue> regardless of how it's done. 20140303 16:43:41< vorobeez> mattsc: Yes, i saw this. But i don't quite understand. This is separation of possibly action by priority? 20140303 16:44:28< happygrue> Aishiko_laptop: are you logging onto the development server? 20140303 16:44:32< happygrue> it might be empty 20140303 16:44:34< zookeeper> tomreyn, the big issue was IIRC mostly only with the apple app store, and it was with the anti-OSS clauses and licensing and stuff. 20140303 16:44:35< mattsc> vorobeez: No, stages are simply executed in the order in which they are put into the side 20140303 16:45:02< mattsc> But for what you are concerned with, the main_loop stage is the only one that matters anyway (and generally it is the only one present) 20140303 16:45:03< happygrue> Aishiko_laptop: I can log on if you like if you want to confirm you're in the right place ;) 20140303 16:46:01< Aishiko_laptop> sure, but at the moment it keeps timing out, the school might have the port needed blocked 20140303 16:46:08< tomreyn> i see 20140303 16:46:18-!- Delfinisko [~Delfinisk@ip-85.163.93.194.o2inet.sk] has joined #wesnoth-dev 20140303 16:46:26< Aishiko_laptop> happygrue, I was using the first option, "Official Server" 20140303 16:46:41< happygrue> ah, so you can't get on at all? Or just sometimes? 20140303 16:47:27< happygrue> I'm there now, and it is indeed empty 20140303 16:47:40< happygrue> (the development server) 20140303 16:47:44< Aishiko_laptop> well when I do connect its empty 20140303 16:48:04< happygrue> usually people don't have any reason to be on there unless they are testing something 20140303 16:48:12< happygrue> stable is where the masses are 20140303 16:48:28< Aishiko_laptop> that is true though I thought I was connecting to the production server 20140303 16:48:52< Aishiko_laptop> I'm going to try again 20140303 16:49:13< vorobeez> mattsc: Oh, i understand, thank you. One more question: Why do we need this score? (probably a stupid question) https://github.com/wesnoth/wesnoth/blob/master/data/core/macros/ai_candidate_actions.cfg 20140303 16:49:16< happygrue> yes, both the development server and the 1.11.x server are empty right now. 20140303 16:50:08< Aishiko_laptop> okAY IT SI the dev server 20140303 16:50:36< Ivanovic> shadowm: the webinterface finally shows the files 20140303 16:50:52< Aishiko_laptop> now to see if it works in german 20140303 16:51:00< Ivanovic> but i will be heading right back to the bed and not doing anything release like 20140303 16:51:04< happygrue> Aishiko_laptop: right, since people usually are testing things locally, there is little reason to be on the dev server unless doing a real multiplayer test 20140303 16:51:12< Ivanovic> if you want to, go ahead and get it out, shadowm 20140303 16:51:31< Ivanovic> (branching will also have to wait until tomorrow or even later unless someone else handles it) 20140303 16:51:39< Ivanovic> tasks required for branching: 20140303 16:51:44< Ivanovic> 1) create branch 20140303 16:52:06< Ivanovic> 2) change version numbers in master to "needs to be defined" 20140303 16:52:11< Aishiko_laptop> happygrue, were you winter? 20140303 16:52:30< Ivanovic> 3) update g.w.o to show development and 1.12 instead of 1.10 20140303 16:52:41< Ivanovic> 4) send mail to wesnoth-dev ml 20140303 16:53:21< happygrue> Aishiko_laptop: yes 20140303 16:53:48< happygrue> I logged back off, let me know if you need me to log back on. 20140303 16:54:00< Aishiko_laptop> could you log back in and create a scenario so I can see if that bug is still going on or if its not 20140303 16:54:53< Aishiko_laptop> ohh I should revert the code before, but if it fixes it and reverting brings it back (so I can verify it) then we have an answer! 20140303 16:55:19< mattsc> vorobeez: this is for _within_ the main stage, where you have all those candidate actions. They are all evaluated (well, in principle at least) and the one with the highest score is executed. 20140303 16:56:08< mattsc> For example, if both recruiting and combat find a valid move, then recruiting is done because it has a higher score. 20140303 16:57:02< mattsc> Then, on the next move, recruiting is not possible any more, it returns score 0. But combat does still have valid moves and returns its score (100,000), so now an attack is executed. 20140303 16:57:12< mattsc> vorobeez: does that make sense? 20140303 17:00:22< vorobeez> mattsc: it does, i guess. Does score always static and constant? 20140303 17:00:30< happygrue> Aishiko_laptop: okay, creating it now 20140303 17:00:44< AI0867> fabi_: 20140303 17:00:44< Aishiko_laptop> thank you\ 20140303 17:00:44< AI0867> src/minimap.cpp: In function ‘surface image::getMinimap(int, int, const gamemap&, const team*, const std::map*)’: 20140303 17:00:47< AI0867> src/minimap.cpp:210:76: error: ‘col.SDL_Color::b’ may be used uninitialized in this function [-Werror=maybe-uninitialized] 20140303 17:00:51< AI0867> src/minimap.cpp:210:76: error: ‘col.SDL_Color::g’ may be used uninitialized in this function [-Werror=maybe-uninitialized] 20140303 17:00:54< AI0867> src/minimap.cpp:210:76: error: ‘col.SDL_Color::r’ may be used uninitialized in this function [-Werror=maybe-uninitialized] 20140303 17:01:08< mattsc> vorobeez: for the default CAs it's static, but you can create custom CAs that have a variable score. 20140303 17:02:22< Aishiko_laptop> thank you happygrue its still doing the non translation of scenario: 20140303 17:03:43< happygrue> okay 20140303 17:03:53< happygrue> should I do anything else while there, or is that it? 20140303 17:04:11< Aishiko_laptop> no that was it, and the concat didn't fix the issue 20140303 17:04:35< Aishiko_laptop> thank you, guess that means back to the drawing board as it were 20140303 17:05:07< Aishiko_laptop> because scenario: should have been Szenario: in Deutch 20140303 17:05:19< mattsc> Aishiko_laptop: you're trying this with a build you produces yourself? 20140303 17:05:43< Aishiko_laptop> mattsc, yes 20140303 17:06:00< mattsc> I don't know how it is in Linux, but in OS X I need to build my translations separately. 20140303 17:06:16< mattsc> Do you have a translations/ directory in your data dir? 20140303 17:06:39< Aishiko_laptop> it translated the rest though\ 20140303 17:06:59< mattsc> Oh, I see. Ignore my question then. :) 20140303 17:07:03< happygrue> Aishiko_laptop: you can also log in with multiple clients (just use different usernames) to test stuff like that if no one is around. 20140303 17:07:30< vorobeez> mattsc: thank you for explanation. I have another question)) Crab_ told me that ai must have construction "If this do that with priority such". But i think it is difficult to implement if we have only attributes and goals. Does make any sence to introduce some concept of 'reasons'? 20140303 17:08:27< mattsc> vorobeez: I'm not sure what you mean by reasons 20140303 17:08:58< Aishiko_laptop> happygrue, I'll have to create a second account then 20140303 17:10:17< happygrue> no, you don't need an account to log on 20140303 17:10:27< happygrue> er, maybe you might on the dev server actually... I don't remember 20140303 17:10:37 * happygrue checks 20140303 17:10:45< Soliton> no, just if you use a forum nick. 20140303 17:10:53< happygrue> right, same rules then 20140303 17:11:40< happygrue> heh, tried to log in as "dude" and it wasn't working because it was already registered... 20140303 17:12:07< vorobeez> mattsc: i mean some global (events?) like a seasons, time, etc. This reasons will influence to goals and actions. change probability of actions. 20140303 17:13:13< mattsc> But is that not what the aspects do? 20140303 17:13:29< vorobeez> mattsc: maybe i overdid) 20140303 17:14:25-!- boucman_work [~rosen@wesnoth/developer/boucman] has quit [Ping timeout: 240 seconds] 20140303 17:15:19< vorobeez> mattsc: i thought that ascpects some cind of property 20140303 17:15:24< vorobeez> of Ai 20140303 17:15:51< mattsc> vorobeez: the aspects are parameters that you set that change the behavior of one or several CAs 20140303 17:17:56< vorobeez> mattsc: So behavior of CAs may change by adding some aspects. 20140303 17:18:17< mattsc> yes 20140303 17:18:24< vorobeez> mattsc: thank you for answers (= 20140303 17:18:47< mattsc> vorobeez: no problem 20140303 17:18:51< vorobeez> mattsc: i will think about it 20140303 17:19:07< vorobeez> (sorry for my bad english) 20140303 17:19:46< mattsc> No problem about that also. There are probably more non-native English speakers here than native speakers. 20140303 17:20:21< vorobeez> mattsc: thanks again) 20140303 17:24:35< EliDupree> http://wiki.wesnoth.org/LuaWML:Misc says that wesnoth.game_config.era will contain the era table... but I'm getting nil, and I don't even see anything in the code that implements it? 20140303 17:25:29< EliDupree> (1.11.9+dev) 20140303 17:25:54< EliDupree> (Or is it just more recent than that) 20140303 17:29:31< EliDupree> OK, problem solved, I just didn't have the latest dev version. Is there a reason the wiki doesn't say *which* 1.11.x is needed for each feature? 20140303 17:30:32-!- kex [~kex@89.205.75.19] has quit [Remote host closed the connection] 20140303 17:31:08-!- kex [~kex@89.205.75.19] has joined #wesnoth-dev 20140303 17:35:28-!- kex [~kex@89.205.75.19] has quit [Ping timeout: 244 seconds] 20140303 17:40:52< happygrue> fabi_: As I'm playing through and looking at the placement of the faction flags and level indicator of the units, I'm wondering if it would be possible to move things up a bit? Here's what it looks like now: https://www.dropbox.com/s/p2hdw87e883xgxr/screenshot1.png 20140303 17:41:10< happygrue> and he're what I'm thinking: https://www.dropbox.com/s/vsnwnp5jpnzpbl1/screenshot2.png 20140303 17:41:29< happygrue> so that level goes with the xp bar, def goes with hp, and unit flag goes with movement 20140303 17:41:43< happygrue> then we also don't have to cut the names short to show the level over top of them. 20140303 17:41:51< happygrue> (see screenshot1) 20140303 17:42:11< happygrue> what do you think? 20140303 17:43:06< happygrue> I would also put level on the left of xp rather than the other way around, but maybe that's just how my brain works. I think of level as the important info and xp as the secondary there. 20140303 17:48:59-!- aquileia [52d4193f@gateway/web/freenode/ip.82.212.25.63] has quit [Quit: Page closed] 20140303 17:51:48< Aishiko_laptop> happygrue, I agree mostly 20140303 17:56:14-!- Aishiko_laptop [~unknown@198.85.71.253] has quit [Ping timeout: 252 seconds] 20140303 18:01:15< _8680_> EliDupree: One can amend that by changing {{DevFeature1.11}} to {{DevFeature1.11|9}}, but I don’t know whether this was available when that was written. 20140303 18:01:38< iceiceice> i didnt know about the {...|9} thing, i guess i could have done that 20140303 18:01:38< EliDupree> Well, it can't have been written very long ago 20140303 18:04:40< _8680_> Maybe the third number should be required for {{DevFeature1.13}}. 20140303 18:06:57-!- mjs-de [~mjs-de@g228201071.adsl.alicedsl.de] has quit [Remote host closed the connection] 20140303 18:13:33-!- matrixMinion [67157e4c@gateway/web/freenode/ip.103.21.126.76] has quit [Ping timeout: 245 seconds] 20140303 18:22:22-!- TC01 [~quassel@128.220.109.252] has joined #wesnoth-dev 20140303 18:22:51-!- vorobeez [~quassel@85.142.148.12] has quit [Remote host closed the connection] 20140303 18:27:12-!- matrixMinion [67157d4c@gateway/web/freenode/ip.103.21.125.76] has joined #wesnoth-dev 20140303 18:30:20-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has joined #wesnoth-dev 20140303 18:32:40-!- lipkab [~the_new_l@host-91-147-212-189.biatv.hu] has joined #wesnoth-dev 20140303 18:50:23-!- vorobeez [~quassel@85.142.148.12] has joined #wesnoth-dev 20140303 18:52:34-!- lipkab [~the_new_l@host-91-147-212-189.biatv.hu] has quit [Quit: Vannak idők, mikor menni kell] 20140303 18:54:25-!- mjs-de [~mjs-de@wh.Uni-Dortmund.DE] has joined #wesnoth-dev 20140303 18:56:10-!- Gallaecio_ [~quassel@84.120.219.139.dyn.user.ono.com] has quit [Read error: Connection reset by peer] 20140303 18:57:05-!- Gallaecio [~quassel@84.120.219.139.dyn.user.ono.com] has joined #wesnoth-dev 20140303 18:59:29-!- Octalot [~noct@31.185.149.167] has quit [Remote host closed the connection] 20140303 19:00:01-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 19:00:17-!- exciton [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 19:00:40-!- DCW [~Thunderbi@cpc66863-finc15-2-0-cust393.4-2.cable.virginmedia.com] has quit [Remote host closed the connection] 20140303 19:00:50-!- exciton [chuck-the-@89.109.220.245] has quit [Read error: Connection reset by peer] 20140303 19:01:36-!- vorobeez [~quassel@85.142.148.12] has quit [Remote host closed the connection] 20140303 19:02:23-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has joined #wesnoth-dev 20140303 19:02:23-!- stikonas [~gentoo@cpc18-sgyl27-2-0-cust35.18-2.cable.virginm.net] has quit [Changing host] 20140303 19:02:23-!- stikonas [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140303 19:05:17-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 19:08:54-!- kar [594dbdc1@gateway/web/freenode/ip.89.77.189.193] has joined #wesnoth-dev 20140303 19:10:01-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 19:10:18-!- exciton [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 19:18:12-!- exciton [chuck-the-@89.109.220.245] has quit [Read error: Connection reset by peer] 20140303 19:18:26-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 19:25:59-!- werlley [~werlley@187-41-155-232.user.veloxzone.com.br] has quit [Ping timeout: 269 seconds] 20140303 19:29:29-!- iceiceice [~chris@cpe-66-108-20-80.nyc.res.rr.com] has quit [Ping timeout: 240 seconds] 20140303 19:35:07-!- werlley [~werlley@187-41-158-164.user.veloxzone.com.br] has joined #wesnoth-dev 20140303 19:35:15-!- spoffy [~spoffy@152.78.175.8] has joined #wesnoth-dev 20140303 19:56:53-!- matrixMinion [67157d4c@gateway/web/freenode/ip.103.21.125.76] has quit [Ping timeout: 245 seconds] 20140303 20:04:37-!- Crab_ [~Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20140303 20:08:37-!- grzywacz [~grzywacz@89-66-1-28.dynamic.chello.pl] has joined #wesnoth-dev 20140303 20:08:37-!- grzywacz [~grzywacz@89-66-1-28.dynamic.chello.pl] has quit [Changing host] 20140303 20:08:37-!- grzywacz [~grzywacz@wesnoth/developer/grzywacz] has joined #wesnoth-dev 20140303 20:15:28-!- iceiceice [~chris@207-237-132-90.ny.subnet.cable.rcn.com] has joined #wesnoth-dev 20140303 20:20:19-!- exciton_ [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 20:20:40-!- werlley [~werlley@187-41-158-164.user.veloxzone.com.br] has quit [Read error: Operation timed out] 20140303 20:24:08-!- exciton [chuck-the-@89.208.170.132] has quit [Ping timeout: 240 seconds] 20140303 20:27:40-!- kar [594dbdc1@gateway/web/freenode/ip.89.77.189.193] has quit [Quit: Page closed] 20140303 20:36:01-!- exciton_ [chuck-the-@89.109.220.245] has quit [Read error: Connection reset by peer] 20140303 20:36:16-!- exciton [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 20:57:05-!- irker297 [~irker@ai0867.net] has joined #wesnoth-dev 20140303 20:57:05< irker297> wesnoth: mattsc wesnoth:master 617013545207 / changelog src/ai/composite/rca.cpp: Add missing id attribute to RCA AI candidate action to_config() http://git.io/rCOljA 20140303 21:00:21-!- exciton_ [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 21:01:31-!- Delfinisko [~Delfinisk@ip-85.163.93.194.o2inet.sk] has quit [Quit: HydraIRC -> http://www.hydrairc.com <- Wibbly Wobbly IRC] 20140303 21:03:40-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20140303 21:04:08-!- exciton [chuck-the-@89.109.220.245] has quit [Ping timeout: 240 seconds] 20140303 21:05:48-!- yann [~dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has joined #wesnoth-dev 20140303 21:14:02-!- Arveanor [827f4a23@gateway/web/freenode/ip.130.127.74.35] has joined #wesnoth-dev 20140303 21:15:21< Arveanor> So I was directed here from wesnoth.org regarding SoC 20140303 21:15:31< Arveanor> said I should try to talk to people about possible ideas etc. 20140303 21:22:31-!- Gallaecio [~quassel@84.120.219.139.dyn.user.ono.com] has quit [Read error: Connection reset by peer] 20140303 21:22:32< mattsc> Arveanor: hello. Yes, this is the right place, but you are much more likely to get a reply if you ask a specific question. 20140303 21:23:10< Arveanor> Yes yes I'm still working on getting up to speed with everything so that I can start asking some better questions, I just wanted to hop in here and make sure I was in the right place etc. 20140303 21:23:28< Arveanor> I had some school projects to finish up this weekend, but now I'm about to dive into working on a proposal etc. 20140303 21:24:19-!- Gallaecio [~quassel@84.120.219.139.dyn.user.ono.com] has joined #wesnoth-dev 20140303 21:25:02-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20140303 21:25:59< iceiceice> mattsc: i have more thoughts about the animation thing if you would like to discuss 20140303 21:28:36< mattsc> iceiceice: well, I'm happy to listen. I don't know if I'll have anything useful to contribute. 20140303 21:28:57< iceiceice> ok so i realized that i dont need to get rid of the whole "game_display::fake_units" thing 20140303 21:29:09< iceiceice> thats actually fien and its a huge job to change all the code around that uses that 20140303 21:29:34< iceiceice> but i do think that 1) the game_display should internally store fake units using a std::map just like unit_map does 20140303 21:29:57< iceiceice> and animations should always be based on some kind of safe pointer to one of these places 20140303 21:30:04< iceiceice> either the regular unitmap or the fake unit map 20140303 21:30:39< iceiceice> but actually switching everything over might be simpler if also the unit map itself is changed to actually hold smart pointers 20140303 21:30:54< iceiceice> so right now the unit_map uses a by hand implementation of boost:shared_ptr 20140303 21:30:59< iceiceice> we have this "unit pod" object 20140303 21:31:04< iceiceice> that counts references 20140303 21:31:10< iceiceice> and the unit_map::iterators are the safe pointers to the units 20140303 21:31:15-!- travis-ci [~travis-ci@ec2-54-196-25-30.compute-1.amazonaws.com] has joined #wesnoth-dev 20140303 21:31:15< travis-ci> [travis-ci] wesnoth/wesnoth#1924 (master - 6170135 : mattsc): The build is still failing. 20140303 21:31:15< travis-ci> [travis-ci] Build details : http://travis-ci.org/wesnoth/wesnoth/builds/20005833 20140303 21:31:15-!- travis-ci [~travis-ci@ec2-54-196-25-30.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140303 21:31:28< iceiceice> but it would be much simpler if we just got rid of unit pod, everything uses a shared_ptr 20140303 21:31:37< iceiceice> and animations hold a shared_ptr to a unit as well 20140303 21:31:47< iceiceice> actually i'm unsure if the animation should get a weak_ptr or a shared_ptr 20140303 21:31:52< iceiceice> i'm not sure if it makes that much difference though 20140303 21:32:41< iceiceice> idk maybe i'm making it more complicated than it needs to be 20140303 21:32:55< iceiceice> but i think i understand what the design criteria are: 20140303 21:33:02< iceiceice> the unit_map needs to "own" all real objects 20140303 21:33:07< iceiceice> and the game_display needs to own all fake units 20140303 21:33:32< iceiceice> and we need some kind of pointer that points to units in those places, that knows its own validity, but doesnt own them in the sense that it deletes them when it goes away 20140303 21:34:16< iceiceice> so with the implementation we have now the simplest thing i guess is if animations have a pointer to a unit_pod/ 20140303 21:34:26< iceiceice> but that seems very likely to be confusing 20140303 21:34:46< iceiceice> i dont think thats how unit_map was intended to be used anyways 20140303 21:35:03< iceiceice> if we use shared_ptr everywhere instead then i guess that overcomes that 20140303 21:35:26< iceiceice> i think there is potentially a very simple fix here that well reduce the amount of balkanization in the code base 20140303 21:36:03< iceiceice> and whether or not we refactor unit_map, i am going to refactor game_display so that it doesnt use a deque, because that is extremely inefficient... 20140303 21:36:16< iceiceice> right now in the code, whenever a fake unit is destroyed, we iterate through the entire list of fake units searching for it 20140303 21:36:41< iceiceice> which should make the white board basically unusalbe for large battles on a slow machine 20140303 21:36:51< iceiceice> or at least i would expect that 20140303 21:37:19-!- exciton_ [chuck-the-@89.109.220.245] has quit [Read error: Connection reset by peer] 20140303 21:37:34-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 21:38:33-!- Arveanor [827f4a23@gateway/web/freenode/ip.130.127.74.35] has quit [Ping timeout: 245 seconds] 20140303 21:41:04-!- Octalot [~noct@31.185.149.167] has joined #wesnoth-dev 20140303 21:42:37-!- exciton_ [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 21:44:05-!- Crab_ [~Crab_@wesnoth/developer/crab] has left #wesnoth-dev [] 20140303 21:44:08-!- exciton [chuck-the-@89.208.170.132] has quit [Ping timeout: 240 seconds] 20140303 21:46:19< shadowm> loonycyborg, mattsc : Did you check that the checksums for the files in sourceforge are good, just in case? 20140303 21:46:28< loonycyborg> yes 20140303 21:46:30< mattsc> iceiceice: sorry had to be afk for a while (and will have to leave shortly also) 20140303 21:46:59< iceiceice> thats ok... i'm just going to keep thinking through it, but i think i'm making progress anyways 20140303 21:47:01< mattsc> shadowm: uh, no, forgot. Now if I could remember how to get my local checksum ... 20140303 21:47:21< shadowm> mattsc: OS X? Terminal, "sha1 " 20140303 21:47:36< shadowm> Without the angle brackets. 20140303 21:47:42< mattsc> iceiceice: well, that all sounds reasonable to me, but as I said, I know very little about it. 20140303 21:48:07-!- shadowm_desktop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20140303 21:49:12< shadowm> The download stats are still broken. I downloaded the MD5 sum file and its download count is still zero. :\ 20140303 21:50:02-!- exciton_ [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 21:50:16-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 21:50:29< mattsc> shadowm: right ... (shasum actually, in my case). And yes, it's the same. 20140303 21:51:46< shadowm> Oh, it's sha1 on FreeBSD (which also has shasum), assumed it was the same there. 20140303 21:52:24< shadowm> Okay, the other files look good. 20140303 21:53:20< mattsc> shadowm: I just couldn't remember the sha... part for a moment, after that tab completion does the rest. Google would have been my next stop. :P 20140303 21:54:01-!- exciton [chuck-the-@89.208.170.132] has quit [Read error: Connection reset by peer] 20140303 21:55:16-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 21:58:30-!- Velensk [~Velensk@cpe-75-187-86-211.woh.res.rr.com] has quit [Quit: Leaving] 20140303 22:00:21-!- exciton_ [chuck-the-@89.109.220.245] has joined #wesnoth-dev 20140303 22:03:28-!- Gambit [~derek@wesnoth/developer/grickit] has joined #wesnoth-dev 20140303 22:04:08-!- exciton [chuck-the-@89.208.170.132] has quit [Ping timeout: 240 seconds] 20140303 22:06:28-!- TooLmaN [~TooLmaN@mx1.thomsonplastics.com] has quit [Quit: Off to save the world!] 20140303 22:15:23< irker297> wesnoth: Alexander van Gessel wesnoth:master c83045958b61 / src/minimap.cpp: Initialize a variable http://git.io/bj7xUA 20140303 22:15:25< irker297> wesnoth: Alexander van Gessel wesnoth:master b75dd81604ed / changelog src/ai/composite/rca.cpp: Merge branch 'master' of github.com:wesnoth/wesnoth http://git.io/o7sYFw 20140303 22:18:49< AI0867> fabi_: well, at least they don't hang anymore, but won't this just cause a lot of errors to be appended? 20140303 22:22:26< shadowm> Ivanovic: Release announced. 20140303 22:23:13-!- trademark_ [~trademark@nsg93-8-88-175-59-164.fbx.proxad.net] has quit [Ping timeout: 240 seconds] 20140303 22:25:00< irker297> wesnoth: Alexander van Gessel wesnoth:master c1c67f2a5715 / .travis.yml: Run unit tests on travis http://git.io/erY5Fw 20140303 22:29:17< iceiceice> quick question: i saw a post that we disabled unit_tests on unit_map. i'm thinking about making some changes to unit_map -- is there anyway we can reinstate those or salvage them at least? 20140303 22:29:25< iceiceice> s/unit_tests/unit tests 20140303 22:29:36-!- Crab_ [~Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20140303 22:29:45-!- Crab_ [~Crab_@wesnoth/developer/crab] has left #wesnoth-dev [] 20140303 22:31:19< shadowm> Sure, if you understand what broke and how to fix it on either side. 20140303 22:31:23< iceiceice> alright fair enough 20140303 22:36:18-!- ancestral [~ancestral@63.92.240.233] has joined #wesnoth-dev 20140303 22:42:52-!- shadowm changed the topic of #wesnoth-dev to: string+feature freeze active on master | 215 bugs, 350 feature requests, 28 patches | Logs: http://irclogs.wesnoth.org | Alternate logs: http://wesnoth.debian.net | Don't paste on IRC! Use a pastebin: http://pastebin.com | http://imagebin.org 20140303 22:48:29-!- stikonas [~gentoo@wesnoth/translator/stikonas] has quit [Ping timeout: 240 seconds] 20140303 22:48:33-!- stikonas_ [~gentoo@anon-36-66.vpn.ipredator.se] has joined #wesnoth-dev 20140303 22:48:33-!- stikonas_ [~gentoo@anon-36-66.vpn.ipredator.se] has quit [Changing host] 20140303 22:48:33-!- stikonas_ [~gentoo@wesnoth/translator/stikonas] has joined #wesnoth-dev 20140303 22:59:45-!- travis-ci [~travis-ci@ec2-54-80-235-177.compute-1.amazonaws.com] has joined #wesnoth-dev 20140303 22:59:45< travis-ci> [travis-ci] wesnoth/wesnoth#1926 (master - c1c67f2 : Alexander van Gessel): The build was fixed. 20140303 22:59:45< travis-ci> [travis-ci] Build details : http://travis-ci.org/wesnoth/wesnoth/builds/20012360 20140303 22:59:45-!- travis-ci [~travis-ci@ec2-54-80-235-177.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140303 23:01:55-!- ancestral [~ancestral@63.92.240.233] has quit [Quit: i go nstuf kthxbai] 20140303 23:06:10< iceiceice> i have a question for anyone with an opinion: what do you think is the "correct" behavior in the case of the double kill bug? 20140303 23:06:44< iceiceice> to reiterate: the double kill bug is, hit ctrl-k twice fast on a unit, so that it is killed, and then while the death animation is playing, it is killed again, so the first is paused, the second plays, and then we segfault when the first tries to resume 20140303 23:07:51< iceiceice> in otherwords if a unit dies prematurely, should remaining animations just play anyways, or abort? 20140303 23:08:05< iceiceice> i think either is feasible for us 20140303 23:10:34< irker297> wesnoth: Chris Beck wesnoth:refactor_fake_units 4ae08670ab46 / src/unit_map.hpp: make unit_map::unit_map and unit_map::t_umap public types http://git.io/0GMORg 20140303 23:10:36< irker297> wesnoth: Chris Beck wesnoth:refactor_fake_units 71a2016924ca / src/ (game_display.cpp game_display.hpp): refactor game_display.fake_units_, a t_umap instead of a deque http://git.io/ZNgDZg 20140303 23:10:38< irker297> wesnoth: Chris Beck wesnoth:refactor_fake_units 1a4ec53e9a2c / changelog: update changelog http://git.io/XGPP6w 20140303 23:12:06-!- mjs-de [~mjs-de@wh.Uni-Dortmund.DE] has quit [Remote host closed the connection] 20140303 23:12:14-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 265 seconds] 20140303 23:22:20-!- travis-ci [~travis-ci@ec2-54-80-235-177.compute-1.amazonaws.com] has joined #wesnoth-dev 20140303 23:22:20< travis-ci> [travis-ci] wesnoth/wesnoth#1927 (refactor_fake_units - 1a4ec53 : Chris Beck): The build failed. 20140303 23:22:20< travis-ci> [travis-ci] Build details : http://travis-ci.org/wesnoth/wesnoth/builds/20015547 20140303 23:22:20-!- travis-ci [~travis-ci@ec2-54-80-235-177.compute-1.amazonaws.com] has left #wesnoth-dev [] 20140303 23:22:22-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Remote host closed the connection] 20140303 23:24:02-!- grzywacz [~grzywacz@wesnoth/developer/grzywacz] has quit [Quit: :wq] 20140303 23:24:39< mattsc> iceiceice: since this can only happen through debug commands, I'd say it doesn't really matter. But for me personally, I'd prefer the animation to be cut off at that point. 20140303 23:25:11< iceiceice> mattsc: are you sure it doesnt lead to segfaults in other ways? 20140303 23:25:25< iceiceice> frankly i wouldnt be surprised if this is the source of white board errors 20140303 23:25:26< mattsc> TBH, I personally would do the debug kill without animations altogether, but I can see usecases for triggering it. 20140303 23:26:04< mattsc> iceiceice: no, I'm not sure of that at all 20140303 23:26:10< iceiceice> the way the code is set up rihgt now, 20140303 23:26:14< iceiceice> its like 20140303 23:26:31< iceiceice> units are big and balky, so they cant be passed around by copy or by reference or whatever in the animation code or elsewhere 20140303 23:26:36< iceiceice> so the units need to be owned by 1) the unit map 20140303 23:26:40< iceiceice> 2) in the case of fake units, the game_display 20140303 23:26:58< iceiceice> but if the animation objects hold naked pointers to these, its inherently unsafe 20140303 23:27:35< iceiceice> i know there are many reported whiteboard segfault / assertion errors that can occur... i haven't paid attention in close detail 20140303 23:28:09< iceiceice> but i think if we switch things over so that the unit_map and game_display use e.g. a shared_ptr, and the animations use a weak_ptr, it can only improve things 20140303 23:28:55< iceiceice> it seems to me like it should be very easy to create segfaults right now if you manipulate fake units using lua 20140303 23:31:12< mattsc> iceiceice: okay - I'll take your word for it :) 20140303 23:32:31< iceiceice> idk i think if shared_ptr existed when unit_map was written, probably it would be using that right now 20140303 23:32:39< iceiceice> they basically reimplemented it using this unit_pod thing 20140303 23:36:45< happygrue> my opinion is that it should be handled in the way that causes the fewest number of segfaults. 20140303 23:50:58-!- exciton_ [chuck-the-@89.109.220.245] has quit [Read error: Connection reset by peer] 20140303 23:51:03-!- exciton [chuck-the-@89.208.170.132] has joined #wesnoth-dev 20140303 23:59:00-!- thunderstruck [~zaibotren@cpc13-sgyl31-2-0-cust696.18-2.cable.virginm.net] has quit [Quit: leaving] --- Log closed Tue Mar 04 00:00:02 2014