--- Log opened Thu Aug 06 00:00:05 2015 20150806 00:30:24-!- chris___2 [~chris@cpe-74-66-129-43.nyc.res.rr.com] has joined #wesnoth 20150806 00:35:07< aeth> shadowm: If I wind up over time making an extremely general library for generating GUI2 GUIs at a higher level than the provided API, what are the odds that it could get mainlined? 20150806 00:35:27< aeth> What I'm (slowly) building is vaguely like [message], but a lot more powerful for some really, really deep RPG mods that add complex gameplay elements. 20150806 00:35:46< aeth> [message][option] is more for e.g. very simple RPG-style choose-an-answer-to-someone-speaking 20150806 00:35:53< shadowm> aeth: Very slim. 20150806 00:36:47< aeth> shadowm: what I'm building is considerably more powerful than messages with options but also with a simpler interface. 20150806 00:37:07< shadowm> I imagine. 20150806 00:37:17< aeth> it's more of a library than anything else 20150806 00:37:40< aeth> there isn't really a "library" category on the add-ons servers 20150806 00:38:29< aeth> it looks like there's 2 things that in a quick search might be classified as libraries, both categorized as "resources" 20150806 00:38:42< aeth> which isn't really a fair categorization since music is categorized that way too 20150806 00:39:00-!- LuHa [~E330-Mint@119.204.77.86] has quit [Quit: Leaving.] 20150806 00:39:16< shadowm> It's a fair categorization. 20150806 00:39:48-!- RatArmy [~control@vm21.matsue-ct.ac.jp] has joined #wesnoth 20150806 00:40:03-!- RatArmy [~control@vm21.matsue-ct.ac.jp] has quit [Client Quit] 20150806 00:41:40< shadowm> The categories are intended to be understood by players, not authors. Players don't need to know that there are several different types of resources or why coders feel getting their precious code lumped with art and audio assets is "not really fair". 20150806 00:45:10< aeth> shadowm: One reason why it's not necessarily a fair categorization is because code tends to be tiny. "Resources" implies huge file sizes, which may discourage downloads. 20150806 00:45:57< aeth> and quite a few resources are huge 20150806 00:46:53< aeth> shadowm: Also libraries tend to not be things you ever want to download directly. You might want to download resources directly for some reason, e.g. music packs, 20150806 00:47:15< aeth> Libraries should be strictly dependencies, irrelevant to anyone who's not writing stuff 20150806 00:48:04< aeth> shadowm: If anything, if you want "resources" to be general and mostly dependencies, music packs should be spun off into their own category 20150806 00:49:30< aeth> That would make more sense. There are way more music packs than libraries in "Resources" 20150806 00:49:52< shadowm> aeth. 20150806 00:50:55< aeth> There are more music packs on the server than Scenarios, SP/MP Campaigns, and possibly a few more that would be a close comparison. 20150806 00:51:05< shadowm> aeth. 20150806 00:52:20< aeth> oh, right, you hate when your name is included in an IRC message. I forgot because it's literally been years. 20150806 00:52:33< shadowm> aeth, no. 20150806 00:55:10-!- chris___2 [~chris@cpe-74-66-129-43.nyc.res.rr.com] has quit [Ping timeout: 246 seconds] 20150806 00:56:23-!- LuHa [~E330-Mint@168.188.129.209] has joined #wesnoth 20150806 00:56:36< aeth> So are you going to present a counter-argument to the empirical data that music packs are more common than certain entire categories that exist, and so might benefit from a useful disambiguation from the catch-all "Resources"? 20150806 00:56:49< aeth> Or is your argument literally going to be "no", like a child? 20150806 00:57:31< aeth> Unless there's something on the back end that I am not aware of, adding a new category to meet the empirical reality of what types of content are on the add-on server should be one of the most trivial of possible changes. 20150806 00:58:39< shadowm> I was going to elaborate more on the "categories are for players" argument, but then you said that and now I don't feel like you are actually interested in the design rationale behind this. 20150806 00:59:28< aeth> Categories *are* for players. That's why I changed my argument, from arguing for a separate "Libraries" category from "Resources" to arguing for a separate "Music Pack" category from "Resources". 20150806 01:00:09< shadowm> How many players do you think are interested in UMC music packs? 20150806 01:01:12< aeth> 500 to 10555 based on a search for "Music" and then a sort for "resources" 20150806 01:01:12-!- prkc [~prkc@catv-89-134-159-162.catv.broadband.hu] has quit [Remote host closed the connection] 20150806 01:01:50< aeth> The Music Books are in the 500-1200 range, but 2 (and very almost 3) are over 5000 20150806 01:01:56< shadowm> Do you feel I should dedicate a heading in the help page to music packs and the fact that they can't be used in Wesnoth directly by players? 20150806 01:02:42< aeth> If they can't be used directly, isn't that a missing feature, then? I'm guessing then that a thousand or so people thought that it would add to their playlists 20150806 01:03:07< aeth> that's quite a lot 20150806 01:03:11< shadowm> Having a music pack installed does not automatically make Wesnoth use the files it provides. 20150806 01:03:59< shadowm> Wesnoth does not have a built-in music player (although there is a mod around that implements the functionality, IIRC?) and no-one has felt the need to add the functionality of one to it. 20150806 01:05:47< shadowm> So, with that in mind, "Resources" refers to any content that players cannot directly use, regardless of its nature. 20150806 01:05:52< aeth> I'm actually surprised no one has done that. It seems like it would be low hanging fruit 20150806 01:06:13< aeth> "Resources" referring to any content that players cannot directly use is not immediately obvious by the name, especially if we're talking about non-programmers as the typical user. 20150806 01:07:02< shadowm> I feel it's still more self-explanatory than "Library". 20150806 01:07:09< aeth> that would almost be worth a separate column of information. "Can't use directly, requires download if you want to play with others on MP," etc. Things that players might notice, but only after they download it. 20150806 01:07:22< shadowm> For all I know, a "library" might contain information to be added to the help browser. 20150806 01:07:38< aeth> Especially if the users are on capped bandwidth, it's basically a wasted download if they download something misleading. 20150806 01:08:01< shadowm> That'd be why for 1.11.x I added a help page explaining the different kinds of add-ons. 20150806 01:08:15< aeth> no one reads documentation 20150806 01:08:23-!- Xara [Yangyf@2001:cc0:2020:4010:98cb:fb7b:1367:4ccc] has joined #wesnoth 20150806 01:08:29< shadowm> Well, then implement the widgets I need to add that additional column. 20150806 01:08:36< aeth> I think the typical use case on the add-on server is probably downloading things that sound interesting 20150806 01:08:59< aeth> Yes, that is a necessary column, especially for users on (capped) broadband like all mobile broadband in the US 20150806 01:09:01< shadowm> It was either to fight my way through magic numbers and a non-layout-aware toolkit, or write some text. 20150806 01:09:48< aeth> yeah, the Wesnoth codebase is pretty bad with meaningless variable names and magic numbers last I checked 20150806 01:09:57< aeth> That would almost be a project in and of itself, just going through and fixing a lot of that. 20150806 01:10:08< shadowm> I mean that GUI1 is not designed for dynamic layouts. 20150806 01:10:29< shadowm> The only things GUI1 controls are resource ownership and event handling. That's all you get. 20150806 01:10:48< aeth> And most of the game is still GUI1? It's hard to tell visually 20150806 01:10:53< shadowm> Laying widgets out in a sensible way without overflowing the dialog frame is up to the users. 20150806 01:11:00< shadowm> The Add-ons Manager dialog is GUI1. 20150806 01:12:10< aeth> I wonder how hard it would be to extend the multiplayer playlist. I'm guessing it's probably defined in WML or a WML macro based on how the code I've looked at works. 20150806 01:12:13< shadowm> I had to make do with what I had because at the time mordante was still fiddling around with the implementation details of GUI2 listboxes and had told me several times to stop relying on their API or semantics for new code. 20150806 01:12:56< shadowm> He resumed work on his own GUI2 add-ons list using experimental code and I wanted to make sure we'd have something to present for 1.12 even if it had to be in GUI1. 20150806 01:13:19-!- chris___2 [~chris@cpe-74-66-129-43.nyc.res.rr.com] has joined #wesnoth 20150806 01:13:27< aeth> It probably wouldn't be too hard to make 1.14 aware of "Music packs" and able to add those to the MP playlist if the MP playlist is defined in WML or Lua somewhere. 20150806 01:14:18< aeth> It would basically be appending to the data structure that keeps a list of the music to play, afaik. 20150806 01:14:47< shadowm> It wouldn't be hard objetively-speaking, but someone has to define how that'll work and add some code around. That's not a particularly fun thing to do if you consider that the default playlist is a macro. 20150806 01:15:03< aeth> hah, macros 20150806 01:15:07< shadowm> We'd have to replace that macro with some new WML API. 20150806 01:15:34< aeth> interestingly enough, one of the reasons I haven't gotten around to uploading Aethaeryn's Maps is that my Lua-based add-on from 1.9 works perfectly fine, but my macro-based scenarios/add-ons from 1.9 do not currently work 20150806 01:15:39< shadowm> There are more important things for us to worry about, that's why you're unlikely to see such a thing take place without an external contributor taking the initiative. 20150806 01:16:25< shadowm> It's a lot of tedious (not objectively hard) work for such a small gain. 20150806 01:17:48< shadowm> For example, instead of adding a built-in music player I'd rather see someone write a GUI2 unit preview pane-equivalent widget and a new GUI2 attack dialog to accompany it, to solve the text overflow problems we have there. 20150806 01:17:52< aeth> I just spent 2 days rewriting about 2/3 of one of my add-on's Lua to use GUI 2 even though it currently is structured very similarly to message options (it will eventually be able to do a lot more but right now I'm working for feature parity) 20150806 01:18:03< shadowm> Or add tooltips to dialogs like the GUI1 attack dialog or advancement dialog. 20150806 01:18:31< shadowm> Or even better, rewrite all SDL_ttf code to use ttext so you get my eternal gratitude for saving the project from a certain bug. 20150806 01:18:39< aeth> If there are certain things in macros that would be better off in Lua, I'm probably one of the more experienced people in rewriting macros in Lua. 20150806 01:18:50< shadowm> That's the kind of stuff I'd prioritize over a frivolous UI. 20150806 01:19:44< aeth> shadowm: Well, the UI isn't really frivolous. A bad UI can cause people to quit the game, and not exposing enough to add-ons limits what kind of add-ons there are. 20150806 01:20:02< shadowm> A frivolous UI addition that no-one _needs_, I mean. 20150806 01:20:07< aeth> shadowm: The main thing that stops me from modding most games really elaborately is the limited exposure of the UI to modding, unlike Wesnoth post-set_menu_item. 20150806 01:20:24< aeth> You can't really genre-change a game without changing some of the UI considerably 20150806 01:20:53< shadowm> I understand the importance of UI, otherwise I wouldn't have gone out of my way above to name *three* important UX issues. 20150806 01:21:16< aeth> shadowm: which one? The music? Music's UI is pretty important. One thing I like about Paradox's Europa Universalis IV is (1) they keep adding new music as DLC and (2) you can see what music is currently playing by mousing over a certain part of the screen 20150806 01:21:34< aeth> I probably know every Wesnoth song by heart at this point but I can't name *one* because there's no feature #2 in Wesnoth afaik 20150806 01:21:45< aeth> (ok, I can name "Main Theme" but that's cheating) 20150806 01:21:50< shadowm> Having control over the music that plays is not as important as ensuring Wesnoth doesn't crash from certain UI behavior. 20150806 01:22:07-!- chris___2 [~chris@cpe-74-66-129-43.nyc.res.rr.com] has quit [Ping timeout: 265 seconds] 20150806 01:22:09< shadowm> Or being able to read important information during watershed moments of the gameplay. 20150806 01:23:12< aeth> I think some UX improvements would come almost immediately by switching to SDL2 20150806 01:23:39< shadowm> Only a handful. 20150806 01:24:33< aeth> s/almost immediately/with a little bit of work/ 20150806 01:24:40< shadowm> Issues with non-ASCII hotkeys, occasional clipboard and WM interaction weirdness, and that's about it. Everything else still needs to be dealt with client side. 20150806 01:25:17< shadowm> In particular, SDL 2 won't magically turn all GUI1 crap into GUI2 or fix a bug that I know is also present in the SDL 2 version of SDL_ttf. 20150806 01:25:24< aeth> Not just non-ASCII hotkeys. Currently Wesnoth reads my dead keys when I use X's compose key. So if I type "¡hola!" it shows up as "!¡hola!" 20150806 01:25:31< aeth> I was told in #wesnoth-dev that SDL2 would probably fix that 20150806 01:26:26< aeth> Wesnoth is the only application where this happens to me. Even proprietary Steam games don't do this. 20150806 02:21:07< aeth> shadowm: (1) Is there a link to GUI2 stuff that's not done other than this? http://wiki.wesnoth.org/EasyCoding#GUI2_features 20150806 02:21:15< aeth> Because that doesn't actually say anything 20150806 02:21:47< aeth> (2) Is it possible for some gui stuff to be done through Lua instead of WML, or perhaps defining new GUI-related WML tags in Lua? 20150806 02:22:03< shadowm> http://wiki.wesnoth.org/NotSoEasyCoding#GUI2_framework 20150806 02:22:13< shadowm> High-prio stuff only. 20150806 02:22:44-!- patwotrik [~patwotrik@nl118-172-202.student.uu.se] has quit [Remote host closed the connection] 20150806 02:22:52< shadowm> (2) elaborate whether this is for Wesnoth core, a mainline campaign or scenario, or UMC. 20150806 02:23:12< aeth> Wesnoth itself. 20150806 02:23:19-!- ArneBab [~quassel@55d45cf3.access.ecotel.net] has joined #wesnoth 20150806 02:23:52< aeth> I would much rather have the WML stick to very high level stuff, and do most of the details in Lua, any time I work with WML. WML is verbose, and verbosity means it's harder to read and harder to keep track of. 20150806 02:24:06< shadowm> GUI2 was never designed with Lua in mind. 20150806 02:24:17< aeth> It seems to work fine in Lua for me. 20150806 02:24:24< shadowm> Yes, but it's tacky. 20150806 02:24:34< aeth> Both GUI2 and [message] weren't designed with Lua in mind, but GUI2 allows, well, Lua. 20150806 02:24:56< shadowm> GUI2 does not allow Lua, it's Lua that allows to call GUI2. 20150806 02:24:57< aeth> When I was using [message][option] I had to use a bunch of really messy hacks 20150806 02:25:15< shadowm> GUI2 was not designed with Lua in mind, and the Lua API was hastily put together by one dev against the wishes of the other. 20150806 02:25:34< aeth> It seems to work well. 20150806 02:25:37< shadowm> From that moment onwards, the Lua GUI2 API was doomed to an eternal state of incomplete supportedness. 20150806 02:26:23-!- ArneBab_ [~quassel@55d41923.access.ecotel.net] has quit [Ping timeout: 252 seconds] 20150806 02:26:42< shadowm> I and a few others have done our best to maintain it but there's still a lot of GUI2 functionality that isn't exposed through Lua or shows unusual behavior (this last part is IIRC why I withheld my patch to add the visibility toggle in 1.11.10). 20150806 02:27:50< shadowm> So, you can use GUI2 in Lua, but there's pretty much no way you'll get GUI2 to use Lua (different things) unless you are willing to take over GUI2. 20150806 02:28:36< aeth> The problem is, I hate coding directly in WML. The only way to make it possible to do complicated stuff is with WML macros and WML macros are messy. 20150806 02:28:41< shadowm> The fact is that GUI2 wasn't written in a maintainable fashion. No-one but its original author understands what's going on most of the time. 20150806 02:29:10< shadowm> Even us struggle all the time trying to understand exactly how to make things work (just ask vultraz about listboxes). 20150806 02:29:22< aeth> I think that most things should be defined in Lua, and WML should be more of a high level data thing, rather than for programming logic. 20150806 02:29:29< vultraz> Listboxes can be a PITA 20150806 02:29:48< shadowm> The author himself said that he didn't want us using certain parts of GUI2 too much until he would clean up their implementation. 20150806 02:29:59< aeth> is the author of GUI2 still active? 20150806 02:30:02< shadowm> No. 20150806 02:30:06< aeth> oh 20150806 02:30:16< aeth> where is GUI2 defined? 20150806 02:30:24< shadowm> src/gui/. 20150806 02:31:01< aeth> oh my 20150806 02:31:21< aeth> just wc -l dialogs/*.cpp is 11836 lines 20150806 02:31:39< shadowm> Writing dialogs is easy. 20150806 02:32:00< shadowm> Understanding how the stuff that goes in them (widgets) is implemented is not. 20150806 02:32:59< aeth> oh, I see what dialogs are doing 20150806 02:33:02< shadowm> Mainly because it's full of convoluted C++ and bizarre design decisions that would probably make a university teacher happy, but don't exactly help in a real world deployment. 20150806 02:33:22< aeth> I guess widgets are the real things, and that's 14762 lines 20150806 02:33:38< shadowm> The events processing pipeline and the type hierarchy are the biggest offenders. 20150806 02:34:26< shadowm> There are also some inflexible design decisions permeating GUI2 itself such as the belief that widgets should decide their cell geometry by themselves, with the dialog's layout taking the back seat. 20150806 02:35:18< shadowm> It's possible many of these were going to be corrected at a later time (the entire implementation of listbox and other widget containers was being rewritten before mordante disappeared) but now we'll never know. 20150806 02:36:15< aeth> well, at least the variable names aren't cryptic. 20150806 02:36:22< aeth> hmm, lots of SDL stuff 20150806 02:36:34< aeth> So I guess GUI2 would present the largest problem to the SDL2 porting person 20150806 02:38:14< aeth> Personally, I think there should be a hierarchy of abstraction. That's probably the best way Wesnoth could work. 20150806 02:38:31< aeth> i.e. WML is the most abstract, and is built on Lua, which in turn is built on C++ 20150806 02:38:59< aeth> If general patterns emerge in WML, then new WML tags should be defined in Lua rather than macros defined in WML. 20150806 02:39:30< shadowm> We've been doing that since 1.9.x. 20150806 02:39:31< aeth> Someone (you?) told me a while back that macros in general are bad for performance iirc. 20150806 02:39:44< aeth> shadowm: I'm talking about GUI2 in particular. 20150806 02:39:59< shadowm> That's an oversimplification. Macros don't have a measurable intrinsic performance impact. 20150806 02:40:23< aeth> shadowm: Add-ons that are heavy with macros seem to take forever to auto-save, unless that's changed. 20150806 02:40:30< aeth> So in general people disable auto-save when using those add-ons 20150806 02:40:48< shadowm> That's what happens when macros are misused. 20150806 02:41:06< aeth> I'm guessing (though not entirely certain) that WML tag defines in Lua would be preferable to macros in many cases where macros are used there. 20150806 02:41:08< shadowm> You could achieve the same effect with tons of copy-pasted WML without any preprocessor directives being involved. 20150806 02:41:30< shadowm> Or even just by engaging in sloppy usage of variable. 20150806 02:42:12< aeth> shadowm: Unfortunately the way WML works makes it easy to want to misuse macros when doing something complicated. 20150806 02:42:13< shadowm> For example, store all units for some purpose, leave that array around instead of deleting it after you're done with it. Do the same thing in different places with different array names. Voilà, you just got a macro-free save file clog. 20150806 02:43:12< shadowm> There are certainly a lot of utility macros in mainline that could use a Lua implementation (FOREACH comes to mind as the most common one). 20150806 02:43:50< shadowm> It may break some fringe use cases but it should be well worth it IMO. 20150806 02:44:52< shadowm> This is why most of the most complicated code sequences in AtS are implemented as WML tags. 20150806 02:45:13< aeth> shadowm: I think, but am not sure, that the use of WML in wesnoth/data/gui/default/window is not optimal. Lots of huge WML files there. 20150806 02:45:31< aeth> At least in add-on code a good rule of thumb is large WML files could be simplified with using Lua. 20150806 02:45:35< shadowm> It's not optimal but it doesn't impact anything. 20150806 02:45:51< aeth> That's 18153 lines of WML in total in data/gui/default/window 20150806 02:45:58< aeth> Is it human-generated or machine-generated? 20150806 02:46:47< shadowm> The reason being that GUI2 WML is read as the first step after initializing SDL and the font rasterization pipelines, once, and it's never touched again or needs to be serialized anywhere. 20150806 02:46:58< aeth> Having to go over that many lines by hand seems ridiculous. There's lots of room for bugs to sneak in. 20150806 02:47:18< shadowm> That'd be why GUI2 is the only component that makes use of the WML validator. 20150806 02:47:30< aeth> ah 20150806 02:48:59< aeth> The problem is, it looks like the GUI2 WML in active use is too low level. Unless there's a major performance reason to do that, it doesn't look like a good idea. Common patterns should be noticed and defined as WML tags if Lua is that powerful imo. 20150806 02:49:14< shadowm> It's very high level. 20150806 02:49:23< shadowm> It defines the layout and that's it. 20150806 02:50:00< aeth> Yes, but it looks like something that a machine would be better at doing than a human. 20150806 02:50:02< shadowm> Lua is not useful for this because Lua is only used by the game events engine. GUI2 lives in a completely different area of the engine. 20150806 02:50:25< aeth> That seems like a flaw in the implementation of WML, then. 20150806 02:50:42< shadowm> WML predates GUI2 which predates Lua. 20150806 02:51:47< shadowm> WML is just a serialization format that happens to be used by the game events engine (blessing it with variable interpolation and Lua code execution), as well as a myriad other components that rely on unchanging data. 20150806 02:52:42< aeth> I guess what I'm trying to say is, it looks like GUI2 WML could use some semantic GUI2 WML rather than simply being layout-oriented. e.g. [foo_box] [/foo_box] instead of [grid] [row] [column] etc. 20150806 02:55:30< aeth> Imo, data and layout should live in two separate places. Sort of like generating HTML instead of hand-writing HTML for everything. 20150806 02:56:58< aeth> The way I plan to use GUI2 is to essentially hand it lists and some information about what it's supposed to do to those lists, and then just generate the GUI2 WML instead of hand-coding each item separately 20150806 02:57:18< aeth> So e.g. a smart listbox 20150806 02:57:29< aeth> my gui2 Lua is currently very messy because I'm exploring around what to do with it 20150806 02:59:05< aeth> Here's an example of what I'm going to try to do in my mod: https://github.com/Aethaeryn/wesnoth-umc/blob/dc9b80d294eab1b49702763c221645b822d68b7e/Aethaeryns_Mod/data/inventory.lua 20150806 02:59:16< aeth> It's in Lua right now because I need to test it in MP without requiring download. 20150806 02:59:57< aeth> but essentially what I'm going to try to be doing is e.g. having an [inventory_list][/inventory_list] and within that inventory list there will be the definition of inventory, and then the UI will just know what to do with that data structure, with the layout being defined separately 20150806 03:00:24< aeth> That means I can use the same data structure in the UI and in other places, as well as in multiple menus. All without macros. 20150806 03:01:08< aeth> (If there's not a major performance hit I may use macros to one-line the various lists since WML syntax isn't really good for concise lists. But the macros would be trivial wrappers over tags defined in Lua.) 20150806 03:02:36< aeth> This is probably going to be harder than I plan because neither Lua (everything is a table, even arrays) nor WML (reliance on key/value similarly making arrays more complicated than they could be) is the right language for this. 20150806 03:03:05-!- Appleman1234__ [~Appleman1@KD036009070225.au-net.ne.jp] has joined #wesnoth 20150806 03:05:47-!- Appleman1234_ [~Appleman1@KD036012007150.au-net.ne.jp] has quit [Ping timeout: 250 seconds] 20150806 03:07:12< aeth> Just quickly looking around, it looks like the proper way to use things that aren't really represented very well as tables in Lua is... to use C. 20150806 03:08:07< aeth> I have a feeling at some point I'll reach the point where I'll want to extend the Wesnoth Lua API in order to be able to use Lua with GUI2 well in the way I want. 20150806 03:10:52< aeth> aaaaaaaaaand I just crashed Wesnoth messing around with GUI2 code. 20150806 03:11:41< vultraz> need help with anything? 20150806 03:14:04< vultraz> If you're trying to create an inventory, I already have a pretty solid GUI2 one set up in my addon 20150806 03:14:06< vultraz> https://dl.dropboxusercontent.com/u/95558676/current_inventory.png 20150806 03:14:43< aeth> The reason I crashed it is because I thought it was [text box] instead of [text_box] apparently 20150806 03:14:53< aeth> Documentation was ambiguous as to which it was 20150806 03:15:03< vultraz> WML tags never have spaces 20150806 03:15:17< aeth> vultraz: did you write your add-on in WML or Lua? 20150806 03:15:35< vultraz> Both 20150806 03:15:49< vultraz> The inventory is lua interacting with WML objects 20150806 03:16:00< vultraz> Items are stored in unit.variables.item 20150806 03:16:00< aeth> unfortunately looking at what you wrote probably isn't going to help me that much 20150806 03:16:15< aeth> I have a very specific way that Lua assumes everything is 20150806 03:16:20< vultraz> https://github.com/Vultraz/Shadows_of_Deception/blob/master/lua/gui/inventory.lua 20150806 03:18:08< aeth> interesting 20150806 03:18:28< vultraz> The whole thing is triggered with a [show_inventory] id=$unit.id [/show_inventory] block 20150806 03:18:32< aeth> what I'm planning on doing is basically reusing a lot of dialog code between inventory and upgrades because with the way my add-on works, they function very similarly 20150806 03:25:36< aeth> vultraz: Do you define the inventory itself in WML or Lua? 20150806 03:25:54< vultraz> All inventory items are in WML 20150806 03:25:58< aeth> ah, ok 20150806 03:26:28< aeth> So you are doing something similar to what I was trying to do with my mod from 1.9 20150806 03:27:49< vultraz> http://pastebin.com/zLUcsvM6 20150806 03:28:56< aeth> ah, ok, so there's some differences in our approach 20150806 03:29:56< vultraz> Yes 20150806 03:29:59< aeth> I have the item effects defined in Lua because the rest of my add-on is basically a playable debug mode so most of the functions are already there 20150806 03:30:04< vultraz> All that gets written to unit.variable.item 20150806 03:30:17< vultraz> https://github.com/Vultraz/Shadows_of_Deception/blob/master/lua/gui/item_pickup.lua 20150806 03:31:44< aeth> I think I do something similar. I think that's the way to get items to persist across scenarios in a campaign 20150806 03:34:46< celticminstrel> WML cannot be build on Lua. The two are orthogonal. 20150806 03:35:15< aeth> huh? You can define WML tags in Lua. 20150806 03:35:24< celticminstrel> Not exactly. 20150806 03:35:34< celticminstrel> You can define ActionWML and ConditionWML tags in Lua. 20150806 03:35:42< celticminstrel> That's just a subset of WML. 20150806 03:36:19< aeth> celticminstrel: It sounds like every other subset is a missing feature 20150806 03:36:47< celticminstrel> WML is primarily for storing data. 20150806 03:36:57< celticminstrel> Lua is solely for code. 20150806 03:37:10< celticminstrel> ActionWML and ConditionWML tags are also for code. 20150806 04:01:30< aeth> So? WML is primarily for storing data, but if WML data is too verbose, you can redefine the WML by adding more tags. Maybe the Lua isn't currently capable, maybe it can never be capable. Maybe if the core UI is static enough, the full WML could be generated at compile time or something. 20150806 04:04:38< celticminstrel> Adding more WML tags (excluding ActionWML and ConditionWML) has nothing to do with Lua. 20150806 04:04:46< aeth> Currently. 20150806 04:05:04< aeth> This is a hypothetical extension of GUI2. 20150806 04:05:04< celticminstrel> There isn't really any reason for it to interact with Lua. 20150806 04:05:19< aeth> Well, one reason is if people are afraid to touch the C++, which seems to happen a lot. 20150806 04:06:17< celticminstrel> Generally speaking, adding a new WML tag or attribute to some arbitrary context means simply editing the code that uses the WML in that context. 20150806 04:06:17< aeth> Also, it might make it easier for add-ons to extend the GUI concepts. 20150806 04:07:29< celticminstrel> You could introduce more contexts that use Lua to interpret the tags, but I don't see why you'd want to do that for a data context. 20150806 04:08:01< celticminstrel> If I understand correctly from what you've been talking about, your GUI2 extension could likely be implemented as ActionWML tags. 20150806 04:08:23< celticminstrel> (Though that might limit it from being used in some places. I'm not sure where GUI2 WML shows up.) 20150806 04:08:31< janebot> Tweet (by @Wesnoth) (RT @frogatto) Over at our greenlight page, an update with current progress on the inventory screen: http://steamcommunity.com/sharedfiles/filedetails/updates/181850301 http://t.co/GMUp… [ https://twitter.com/Wesnoth/status/629141979620728832 ] 20150806 04:16:10-!- ancestral [~ancestral@75-161-229-81.mpls.qwest.net] has joined #wesnoth 20150806 04:18:13< aeth> Is there a way to get a text_box to start out focussed? 20150806 04:21:59< vultraz> no idea, tbh 20150806 04:22:02< vultraz> never used that widget 20150806 04:26:00< aeth> there has to be because save game is defined in GUI2 20150806 04:27:39< aeth> in data/gui/default/window/game_save_message.cfg 20150806 04:35:50-!- Appleman1234_ [~Appleman1@KD036009066224.au-net.ne.jp] has joined #wesnoth 20150806 04:37:10< aeth> tracking it down, it's defined in src/gui/dialogs/game_save.cpp as txtFilename with register_text("txtFilename", false, filename, true) which in turn goes to src/gui/dialogs/dialog.hpp 20150806 04:37:19< aeth> and it looks like capture_focus is hardcoded, but not available to add-ons 20150806 04:38:07-!- Appleman1234__ [~Appleman1@KD036009070225.au-net.ne.jp] has quit [Ping timeout: 260 seconds] 20150806 04:43:47< aeth> celticminstrel: and this is why all WML needs to be defined through the Lua or some key API, because otherwise the game will rely on apparently hardcoded behavior which prevents add-ons from matching the functionality of the core game 20150806 04:44:23< shadowm> This isn't WML functionality. 20150806 04:44:26< celticminstrel> How do you expect to define [unit_type] through Lua? 20150806 04:44:50< celticminstrel> To give just one example. 20150806 04:46:54< aeth> shadowm: If it isn't possible to say "focus on this text box with the keyboard when I launch this GUI" how do you expect the future of Wesnoth to be in the add-ons? That's a very basic thing, the first thing I'm looking into when looking at text boxes. 20150806 04:47:17< shadowm> This isn't WML functionality right now. 20150806 04:50:05< aeth> Unless I'm mistaken, the GUI definitions are split between wesnoth/data/gui/ (WML) and wesnoth/src/gui/ 20150806 04:50:18< aeth> This imo is a bad thing. 20150806 04:50:49< shadowm> src/gui/ implements behavior and data/gui/ defines layouts. 20150806 04:51:22< aeth> Imo there shouldn't be a split between wesnoth/data and wesnoth/src, there should be a split between wesnoth/data, wesnoth/scripting, and wesnoth/src, with wesnoth/scripting getting the lua and ai directories. 20150806 04:51:38< aeth> And more of wesnoth/src should at the very least theoretically be able to be written in wesnoth/scripting 20150806 04:51:57< aeth> That would allow add-ons to have the power to basically be as close to total conversion mods as possible. 20150806 04:51:57< shadowm> I'd rather see that happen in data/lua/ first. 20150806 04:52:16< shadowm> Then we can decide where and how to reorganize things hopefully for the very last time. 20150806 04:52:20< aeth> well yeah 20150806 04:52:39< aeth> What I'm saying is besides e.g. campaigns that define a little bit of literal Lua, the game could basically be split into CPP, Lua, and WML 20150806 04:52:57< aeth> and ideally, most (obviously not all of the WML, WML does so much) of the WML would at least be able to be overriden in Lua if not written in Lua 20150806 04:53:03< aeth> Sort of a hierarchy of abstraction. 20150806 04:53:23< shadowm> Cool. 20150806 04:53:35< aeth> This could also make the code base more approachable. Lua's easier than C++ 20150806 04:53:44< shadowm> I'm glad to see you had the same idea everyone else has. 20150806 04:53:57< shadowm> Now make it a reality pls. 20150806 04:54:07< aeth> shadowm: one step at a time 20150806 04:54:33< aeth> shadowm: right now I'm trying to make an extreme mod in Lua and WML, and finding out what parts of the game are not exposed to Lua that should be. 20150806 04:55:01< aeth> I'm essentially using my mod as a way to figure out exactly what needs to be done, at least to get the subset that I am modding to work in Lua and WML. 20150806 04:58:18< aeth> ah 20150806 04:59:31< aeth> I think I sort of see what's going on in src/gui 20150806 05:01:31< aeth> and there's also src/scripting/lua_gui2.cpp 20150806 05:35:28-!- shadowm_desktop [ignacio@wesnoth/developer/shadowm] has quit [Ping timeout: 272 seconds] 20150806 05:36:05-!- shadowm_desktop [ignacio@wesnoth/developer/shadowm] has joined #wesnoth 20150806 05:43:45-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has joined #wesnoth 20150806 05:45:11-!- foolsh [~quassel@c-69-245-208-80.hsd1.il.comcast.net] has quit [Ping timeout: 256 seconds] 20150806 05:46:26-!- oldlaptop [~quassel@50-107-125-36.adr02.mskg.mi.frontiernet.net] has quit [Ping timeout: 244 seconds] 20150806 05:52:19-!- oldlaptop [~quassel@50-107-125-36.adr02.mskg.mi.frontiernet.net] has joined #wesnoth 20150806 05:56:50-!- foolsh [~quassel@c-69-245-208-80.hsd1.il.comcast.net] has joined #wesnoth 20150806 05:59:55-!- Appleman1234_ [~Appleman1@KD036009066224.au-net.ne.jp] has quit [Ping timeout: 246 seconds] 20150806 06:00:35-!- Appleman1234_ [~Appleman1@KD036009066224.au-net.ne.jp] has joined #wesnoth 20150806 06:04:54-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has quit [Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] 20150806 06:09:01-!- Appleman1234__ [~Appleman1@KD106179125087.au-net.ne.jp] has joined #wesnoth 20150806 06:11:21-!- Appleman1234_ [~Appleman1@KD036009066224.au-net.ne.jp] has quit [Ping timeout: 255 seconds] 20150806 06:42:47-!- [Relic] [~Relic]@2602:306:33a3:6d30:b5f8:538a:7796:a83a] has quit [Quit: I press the magic X and all the weirdos go away!] 20150806 06:59:46-!- ancestral [~ancestral@75-161-229-81.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20150806 07:07:02-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth 20150806 07:42:02-!- Appleman1234_ [~Appleman1@KD036009070048.au-net.ne.jp] has joined #wesnoth 20150806 07:44:10-!- Appleman1234__ [~Appleman1@KD106179125087.au-net.ne.jp] has quit [Ping timeout: 245 seconds] 20150806 07:52:15-!- Haudegen [~quassel@85.124.51.57] has quit [Ping timeout: 260 seconds] 20150806 07:58:21-!- Haudegen [~quassel@85.124.51.57] has joined #wesnoth 20150806 08:29:52-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20150806 08:45:15-!- cpf [~cpf@2a02:1812:1e28:8d00:62f8:1dff:febb:fc9a] has joined #wesnoth 20150806 08:50:26-!- cpf [~cpf@2a02:1812:1e28:8d00:62f8:1dff:febb:fc9a] has quit [Ping timeout: 240 seconds] 20150806 09:01:45-!- DreadKnight [~DreadKnig@unaffiliated/dreadknight] has joined #wesnoth 20150806 09:13:40-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has joined #wesnoth 20150806 09:24:44-!- DreadKnight [~DreadKnig@unaffiliated/dreadknight] has quit [Quit: #AncientBeast - Master Your Beasts ( www.AncientBeast.com )] 20150806 09:28:59-!- LuHa [~E330-Mint@168.188.129.209] has quit [Quit: Leaving.] 20150806 09:39:37-!- cpf [~cpf@ip-188-118-61-46.reverse.destiny.be] has joined #wesnoth 20150806 10:11:40-!- shadowm_desktop [ignacio@wesnoth/developer/shadowm] has quit [Ping timeout: 245 seconds] 20150806 10:12:06-!- jemadux [~jemadux@unaffiliated/jemadux] has joined #wesnoth 20150806 10:25:43-!- LuHa [~E330-Mint@119.204.77.86] has joined #wesnoth 20150806 10:46:57-!- Appleman1234__ [~Appleman1@KD106179122139.au-net.ne.jp] has joined #wesnoth 20150806 10:48:34-!- Appleman1234__ is now known as Appleman1234 20150806 10:50:11-!- Appleman1234_ [~Appleman1@KD036009070048.au-net.ne.jp] has quit [Ping timeout: 252 seconds] 20150806 10:50:24-!- Xara2 [Yangyf@2001:cc0:2020:4010:98cb:fb7b:1367:4ccc] has joined #wesnoth 20150806 10:50:38-!- Xara2 [Yangyf@2001:cc0:2020:4010:98cb:fb7b:1367:4ccc] has quit [Client Quit] 20150806 10:57:34-!- patwotrik [~patwotrik@nl118-172-202.student.uu.se] has joined #wesnoth 20150806 11:02:47-!- shurnormal_ [~uprego@unaffiliated/ushiu] has joined #wesnoth 20150806 11:22:22-!- hay207 [~hay207@41.34.12.122] has joined #wesnoth 20150806 11:30:47-!- ancestral [~ancestral@75-161-229-81.mpls.qwest.net] has joined #wesnoth 20150806 12:09:04-!- chris___2 [~chris@cpe-74-66-129-43.nyc.res.rr.com] has joined #wesnoth 20150806 12:14:24-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20150806 12:56:09-!- chris___2 [~chris@cpe-74-66-129-43.nyc.res.rr.com] has quit [Remote host closed the connection] 20150806 13:10:47-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has joined #wesnoth 20150806 13:24:07-!- shurnormal_ [~uprego@unaffiliated/ushiu] has quit [Quit: poweroff] 20150806 13:52:19-!- Appleman1234_ [~Appleman1@KD036009087023.au-net.ne.jp] has joined #wesnoth 20150806 13:55:14-!- Appleman1234 [~Appleman1@KD106179122139.au-net.ne.jp] has quit [Ping timeout: 260 seconds] 20150806 14:19:22-!- cyphase [~cyphase@unaffiliated/cyphase] has quit [Ping timeout: 246 seconds] 20150806 14:22:17-!- [Relic] [~Relic]@2602:306:33a3:6d30:904d:4e94:cd57:e998] has joined #wesnoth 20150806 14:24:13-!- cyphase [~cyphase@unaffiliated/cyphase] has joined #wesnoth 20150806 14:24:32-!- ericb2 [~X@unaffiliated/ericb2] has joined #wesnoth 20150806 14:24:37< ericb2> hello 20150806 14:26:39< APic> Hi 20150806 14:28:22< ericb2> I'm on Mac OS X (10.6) and I wonder about the build dependencies 20150806 14:29:08< ericb2> is there only one way (currently homebrew) to package Wesnoth on this OS or, did I miss something ? 20150806 14:29:57< ericb2> currently reading: https://github.com/Homebrew/homebrew-games/blob/master/wesnoth.rb 20150806 14:31:58< ericb2> others questions : does Wesnoth use X11 ? (I think not, but must be sure) Second : is there some diff / WIP about the SDL1.X -> SDL2 port in progress ? 20150806 14:35:36< ericb2> nm : the script seems to say no X11 20150806 14:38:57< ericb2> FYI, I read this page before to ask : http://forums.wesnoth.org/viewforum.php?f=5 20150806 14:41:02< ericb2> and : http://floatingsun.net/2007/02/07/whats-with-__macosx-in-zip-files/ 20150806 14:41:12< ericb2> leads to 404 Not Found 20150806 14:44:56< ericb2> Apologies, seems to be that page : http://forums.wesnoth.org/viewtopic.php?f=5&t=287&start=165 20150806 14:46:14-!- Xara [Yangyf@2001:cc0:2020:4010:98cb:fb7b:1367:4ccc] has quit [Read error: Connection reset by peer] 20150806 14:55:10-!- ancestral [~ancestral@75-161-229-81.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20150806 14:59:29-!- ancestral [~ancestral@75-161-229-81.mpls.qwest.net] has joined #wesnoth 20150806 15:07:32-!- ancestral [~ancestral@75-161-229-81.mpls.qwest.net] has quit [Quit: i go nstuf kthxbai] 20150806 15:11:03-!- prkc [~prkc@catv-89-134-159-162.catv.broadband.hu] has joined #wesnoth 20150806 15:27:46-!- hay207 [~hay207@41.34.12.122] has quit [Quit: Konversation terminated!] 20150806 15:33:16< ericb2> ok bye all 20150806 15:33:18-!- ericb2 [~X@unaffiliated/ericb2] has quit [Quit: Success !!] 20150806 15:58:33-!- ericb2 [~X@unaffiliated/ericb2] has joined #wesnoth 20150806 15:59:42< ericb2> hi again. was my fault, and I finaly found what I was searching. Thanks a lot for providing such quality sources 20150806 16:01:24< ericb2> my error was to search everything in "packaging" directory, instead of searching in "projectfiles ". Thanks again for the guys providing the Mac OS X stuff. 20150806 16:03:57< ericb2> wow, all the headers and libs / frameworks are already in the mac_compile_stuff. Great work. nothing to do :) 20150806 16:05:47< ericb2> bye 20150806 16:05:50-!- ericb2 [~X@unaffiliated/ericb2] has quit [Quit: Success !!] 20150806 16:11:23-!- celticminstrel [~celmin@unaffiliated/celticminstrel] has joined #wesnoth 20150806 16:36:51-!- wario [~wario_@unaffiliated/wario] has joined #wesnoth 20150806 16:53:15-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20150806 17:02:27-!- prkc [~prkc@catv-89-134-159-162.catv.broadband.hu] has quit [Ping timeout: 260 seconds] 20150806 17:10:07-!- wario_ [~wario_@unaffiliated/wario] has joined #wesnoth 20150806 17:10:17-!- wario [~wario_@unaffiliated/wario] has quit [Disconnected by services] 20150806 17:10:21-!- wario_ is now known as wario 20150806 17:25:53-!- prkc [~prkc@catv-89-134-159-162.catv.broadband.hu] has joined #wesnoth 20150806 17:56:22-!- claymore2 [~hexchat@host109-154-220-118.range109-154.btcentralplus.com] has joined #wesnoth 20150806 17:59:53-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has joined #wesnoth 20150806 18:10:23-!- wario_ [~wario_@unaffiliated/wario] has joined #wesnoth 20150806 18:10:45-!- wario [~wario_@unaffiliated/wario] has quit [Disconnected by services] 20150806 18:10:47-!- wario_ is now known as wario 20150806 18:17:22< shurnormal> What's that ncurses program that shows memory info? 20150806 18:28:32-!- Appleman1234__ [~Appleman1@KD106179116219.au-net.ne.jp] has joined #wesnoth 20150806 18:30:50-!- Appleman1234_ [~Appleman1@KD036009087023.au-net.ne.jp] has quit [Ping timeout: 245 seconds] 20150806 18:38:01-!- DreadKnight [~DreadKnig@unaffiliated/dreadknight] has joined #wesnoth 20150806 18:52:18-!- cpf [~cpf@ip-188-118-61-46.reverse.destiny.be] has quit [Ping timeout: 255 seconds] 20150806 19:00:42-!- Kwandulin [~Miranda@p5B0098DF.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 20150806 19:10:35-!- wario_ [~wario_@unaffiliated/wario] has joined #wesnoth 20150806 19:10:47-!- wario [~wario_@unaffiliated/wario] has quit [Disconnected by services] 20150806 19:10:49-!- wario_ is now known as wario 20150806 19:19:01-!- jemadux [~jemadux@unaffiliated/jemadux] has quit [Read error: Connection reset by peer] 20150806 19:19:12-!- shurnormal [~uxio@unaffiliated/ushiu] has quit [Quit: poweroff] 20150806 19:26:38-!- jemadux [~jemadux@unaffiliated/jemadux] has joined #wesnoth 20150806 19:30:46-!- claymore2 [~hexchat@host109-154-220-118.range109-154.btcentralplus.com] has quit [Quit: Leaving] 20150806 20:08:56-!- zookeeper_ [~lmsnie@37.35.27.57] has joined #wesnoth 20150806 20:10:25-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 245 seconds] 20150806 20:10:51-!- wario_ [~wario_@unaffiliated/wario] has joined #wesnoth 20150806 20:11:30-!- wario [~wario_@unaffiliated/wario] has quit [Disconnected by services] 20150806 20:11:32-!- wario_ is now known as wario 20150806 20:12:24-!- foolsh [~quassel@c-69-245-208-80.hsd1.il.comcast.net] has quit [Ping timeout: 260 seconds] 20150806 20:12:37-!- foolsh [~quassel@c-69-245-208-80.hsd1.il.comcast.net] has joined #wesnoth 20150806 20:13:16-!- wario [~wario_@unaffiliated/wario] has quit [Client Quit] 20150806 20:14:28-!- shadowm_desktop [ignacio@wesnoth/developer/shadowm] has joined #wesnoth 20150806 20:15:57-!- wario [~wario_@unaffiliated/wario] has joined #wesnoth 20150806 20:21:20-!- zookeeper_ is now known as zookeeper 20150806 20:21:23-!- zookeeper [~lmsnie@37.35.27.57] has quit [Changing host] 20150806 20:21:23-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth 20150806 20:24:56-!- j3m4dux [~jemadux@unaffiliated/jemadux] has joined #wesnoth 20150806 20:25:12-!- j3m4dux [~jemadux@unaffiliated/jemadux] has quit [Client Quit] 20150806 20:27:45-!- jemadux [~jemadux@unaffiliated/jemadux] has quit [Ping timeout: 240 seconds] 20150806 20:37:04-!- ancestral [~ancestral@209.181.254.220] has joined #wesnoth 20150806 20:58:01< aeth> Interesting, I thought I found a bug with how Wesnoth interacts with KDE's sound mixer (i.e. it kept breaking volume control once Wesnoth launched) 20150806 20:58:10< aeth> Turns out to be a kernel bug with Fedora that fixed itself on kernel update 20150806 21:13:29-!- ancestral [~ancestral@209.181.254.220] has quit [Quit: i go nstuf kthxbai] 20150806 21:31:28-!- Appleman1234__ is now known as Appleman1234 20150806 21:36:16-!- celticminstrel is now known as celmin|supper 20150806 21:45:51-!- jemadux [~jemadux@unaffiliated/jemadux] has joined #wesnoth 20150806 22:09:08-!- hay207 [~hay207@41.34.12.122] has joined #wesnoth 20150806 22:10:12-!- Ravana_ [~Ravana@unaffiliated/ravana/x-2327071] has quit [] 20150806 22:23:30-!- hay207 [~hay207@41.34.12.122] has quit [Quit: Konversation terminated!] 20150806 22:28:48-!- jemadux [~jemadux@unaffiliated/jemadux] has quit [Ping timeout: 272 seconds] 20150806 22:59:30 * foolsh has been hanging out in #wesnoth, it's been active, been wanting to compile head and see it but I've been busy 20150806 22:59:39-!- wario [~wario_@unaffiliated/wario] has quit [Quit: Leaving] 20150806 22:59:50< foolsh> opps sry wrong channel 20150806 23:00:06< foolsh> still relative :P 20150806 23:00:39< foolsh> Are there ppas and or debs for head? 20150806 23:05:34-!- jemadux [~jemadux@unaffiliated/jemadux] has joined #wesnoth 20150806 23:05:35< loonycyborg> Don't think so 20150806 23:06:34< loonycyborg> only for dev releases 20150806 23:06:51< loonycyborg> maybe there's a -9999 gentoo ebuild :P 20150806 23:26:07-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 244 seconds] 20150806 23:36:58-!- Haudegen [~quassel@85.124.51.57] has quit [Ping timeout: 244 seconds] 20150806 23:40:34-!- Ravana_ [~Ravana@unaffiliated/ravana/x-2327071] has joined #wesnoth 20150806 23:45:07-!- Haudegen [~quassel@85.124.51.57] has joined #wesnoth 20150806 23:49:19-!- celmin|supper is now known as celticminstrel 20150806 23:52:20-!- SpoOkyMagician [~chatzilla@cpe-74-136-81-20.kya.res.rr.com] has joined #wesnoth 20150806 23:56:32-!- DreadKnight [~DreadKnig@unaffiliated/dreadknight] has quit [Quit: #AncientBeast - Master Your Beasts ( www.AncientBeast.com )] 20150806 23:57:15-!- LuHa [~E330-Mint@119.204.77.86] has quit [Quit: Leaving.] --- Log closed Fri Aug 07 00:00:08 2015