--- Log opened Sun Jun 20 00:00:43 2010 --- Day changed Sun Jun 20 2010 20100620 00:00:43< gabba> Crab_: I already have apply_temp_modifiers() and remove_temp_modifiers() methods to swith between real and fake unit maps 20100620 00:00:58< Crab_> and if wml event changes things, you can just discard the cache and reapply the whiteboard things anew 20100620 00:01:07< Crab_> or try to patch it in.. 20100620 00:01:38< Crab_> gabba: no, it's better to use a 'faster' switch in there for redraws 20100620 00:02:06< Crab_> gabba: e.g., if real unit map hasn't changed since the last time we looked at it, no need to recalculate the fake map 20100620 00:02:31< gabba> Crab_: ok, a copy of the unit map then - it's true that the methods I mention visit every action, they risk being slow for drawing 20100620 00:02:45< Crab_> gabba: yes, a cache 20100620 00:03:21< boucman> Crab_: since we can go back and forth between real and fake and since redraw is much more common than game action, wouldn't it make more sense to use the WB version and only switch back to the real one before executing ? 20100620 00:04:08< Crab_> boucman: whatever you like. doesn't matter performance-wise. 20100620 00:04:35< boucman> k 20100620 00:04:36< Crab_> boucman: replacing a map with another, if a cache is valid, is just a matter of looking up a 'valid' boolean flag and switching a pointer in resources:: 20100620 00:05:01< boucman> ok, i fyou don't rebuild but use cache, then it doesn't matter indeed 20100620 00:05:30< boucman> ok, time to go to bed, see you all tomorow 20100620 00:05:38-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Quit: Leaving.] 20100620 00:06:42< gabba> So Crab_, this implies that at every redraw, I must verify if a WML event has changed stuff, and immediately update my fake unit map (as well as other whiteboard visuals) accordingly. Otherwise visuals and reality will go out-of-sync. 20100620 00:07:45< Crab_> gabba: yes 20100620 00:08:23< Crab_> ideally, it should be a 'invalidation on change, recalculation on first access to invalidated version' 20100620 00:08:41< Crab_> that way it'll be easy to use 20100620 00:09:41< Crab_> look like get_srcdst() is implemented in src/ai/contexts.cpp 20100620 00:10:41< Crab_> the process might seem hard, and you'll probably need help. but, it'll be a very good thing to do. 20100620 00:11:32< Crab_> since, basically, what will need to be done is to find every and each transition between UI code and engine code and cleanly demarcate them. 20100620 00:11:59< Crab_> you might be able to get away with a partial solution, if you pick the transition points wisely. 20100620 00:12:07< gabba> Sounds doable -- and pretty hard as you say --, but this UI approach starts being complicated compared to my original idea of just leaving units at their original locations and displaying ghosts at the destination(s) 20100620 00:12:29< Crab_> actually, I though the ' leaving units at their original locations and displaying ghosts at the destination(s)' was the way it's to be done :) 20100620 00:12:56< Crab_> after all, you can display real units as ghosts and ghosts as real units :) 20100620 00:13:14< Crab_> so, the main problem would be to fix UI display of pathfinding to use the modified unit map. 20100620 00:13:25< gabba> Crab_: do you have a minute to try the latest whiteboard? It's easier to have you try it than to explain 20100620 00:13:30< Crab_> so, a variation of this problem would follow 20100620 00:13:39< Crab_> gabba: no, it'll take time to compile 20100620 00:13:45< gabba> I se 20100620 00:13:49< gabba> I see 20100620 00:14:20< Crab_> basically, you'd come to the situation where you see where 'engine view' and 'user interface view' of the unit map are different 20100620 00:14:47< Crab_> more specifically, user_interface_view = f(engine_view) 20100620 00:15:20< Crab_> and that is quite similar to the situation with the AI 20100620 00:15:39< Crab_> AI solves the issue that way: 20100620 00:16:14< Crab_> AI has a clean interface of AI actions - 'things which can change the game state, thus, things which can invalidate the unit map, the srcdst and dstsrc maps' 20100620 00:17:13< Crab_> then, ai keeps its cache around. and, after each 'ai action' and on the start of turn, it recalculates the srcdst and dstsrc maps from the cache. 20100620 00:17:49< Crab_> so, the 'ai view' of the unit map - srcdst and dstsrc maps - are on-demand recalculated and invalidated after actions and after turn start 20100620 00:18:00< gabba> srcdst and the other ones are location -> location maps, but what are they for exactly? 20100620 00:18:12< Crab_> it's for the ai to see the possible moves 20100620 00:18:18< gabba> ok 20100620 00:18:20< Crab_> it's the 'ai view' of the unit map. 20100620 00:18:41< Crab_> which is quite expensive to calculate 20100620 00:19:14< Crab_> your situation with the UI is somewhat harder, because UI works during enemy turns and during moves, too 20100620 00:20:55< Crab_> but the same approach will still work - make your 'user interface view' of the unit map a cache which is to be invalidated in all the 'required points', and which is to be recalculated on first access 20100620 00:22:16< Crab_> a related question.. 20100620 00:22:34< Crab_> do you want the whiteboard to be usable on enemy/AI turn in a local game ? 20100620 00:22:45 * gabba thinks hard to see all his options here... 20100620 00:24:19< gabba> I don't really see the AI using the whiteboard :P. But I do want the player to be able to define moves outside of his turn. 20100620 00:24:25< Crab_> ok 20100620 00:24:36< Crab_> then, I suggest enlisting help and doing the right thing 20100620 00:25:00< Crab_> for example, define a global flag in resources:: which will signal the 'current mode' of wesnoth 20100620 00:25:18< gabba> resources::whiteboard->active() 20100620 00:25:29< gabba> done 20100620 00:25:47< Crab_> where possible modes are 'ai thinking', 'game engine changing things', 'user interface active' 20100620 00:26:14< gabba> ok, a different take 20100620 00:26:46< Crab_> and enforce the rule that 'ui active' would have your fake units as resources::units, and 'game engine changing things' and 'ai thinking' would have the real units as resources::units 20100620 00:27:38< Crab_> and make 'game engine changing things' set 'fake unit map is invalidated' flag (as well as 'ai movement maps invalidated' flag) 20100620 00:28:36-!- kevg [~kevg@94.232.5.102] has left #wesnoth-dev [] 20100620 00:28:41< Crab_> bonus points if you manage to trick the compiler into enforcing the rule for you 20100620 00:28:55-!- ancestral [~ancestral@mobile-166-137-141-253.mycingular.net] has quit [Quit: Colloquy for iPhone - http://colloquy.mobi] 20100620 00:29:47< gabba> bonus points eh? :) 20100620 00:29:51< Crab_> note that the AI returns control to the ui many times per turn 20100620 00:30:35< Crab_> so, if you want the whiteboard to be usable during local ai turn, you need to reenable it on redraw and disable it upon ai turn start and upon exiting redraw 20100620 00:30:51< gabba> the main job would probably be peppering the code with calls to correctly set those flags when control changes 20100620 00:31:17< Crab_> since, after alink's recent changes, ai uses resources::units, too, and it would be affected with your whiteboard things 20100620 00:31:45< Crab_> so, yes, the direction we've already started to take is to add code to switch the 'mode' of the resources::units 20100620 00:32:02< gabba> really 20100620 00:33:13< Crab_> I can tell you about the AI - it sometimes yields control to the ui (1 function), and it sometimes calls the engine to change the game state (~5 functions in one file) 20100620 00:33:54< gabba> I'm curious about the one that yields control to the UI 20100620 00:34:02< Crab_> for ui, the number of places where we switch will be higher (esp. because the AI was refactored to keep the number of those switches minimal) 20100620 00:34:29< Crab_> see playsingle_controller::handle_generic_event 20100620 00:34:38< Crab_> it has "if (name == "ai_user_interact"){ play_slice(false); " 20100620 00:35:15< Crab_> then see /src/ai/manager.cpp:376 20100620 00:35:48< Crab_> then see /src/ai/manager.cpp:282 20100620 00:36:19< gabba> phone, afk for a minute 20100620 00:36:22< Crab_> ok 20100620 00:38:16< Crab_> gabba: so, I propose we add the notion of 'mode' with the following guarantees: 20100620 00:38:29< Crab_> 'ai mode' : uses real unit map, cannot change game state. 20100620 00:38:43< Crab_> 'ui mode' : uses fake unit map, cannot change game state. 20100620 00:38:58< Crab_> 'engine mode' : uses real unit map, can change game state. 20100620 00:39:53-!- Appleman1234 [~Appleman1@CPE-60-226-180-71.qld.bigpond.net.au] has joined #wesnoth-dev 20100620 00:40:08< Crab_> then, we'll have "on entering engine mode, send an event which will invalidate fake unit map" 20100620 00:40:21< gabba> back 20100620 00:40:38< Crab_> "on entering ui mode, replace the real unit map with the fake one, recalculating if necessary" 20100620 00:41:07< Crab_> "on entering ai mode, ensure that the unit map is real" 20100620 00:41:11< Crab_> "on entering engine mode, ensure that the unit map is real" 20100620 00:41:38< Crab_> are those guarantees enough ? 20100620 00:42:22< gabba> it seems to be enough 20100620 00:43:08< Crab_> let's talk about 'when' those happen 20100620 00:43:11< gabba> I guess that the whiteboard would be the only beneficiary of having a fake unit map? 20100620 00:43:24< Crab_> the whiteboard = the ui :) 20100620 00:43:41< Crab_> ai already uses a similar system, but it was easier to do 20100620 00:44:23< Crab_> 'on entering ai mode' happens on ai::manager::play_turn and on return from manager::raise_gamestate_changed() 20100620 00:44:50< Crab_> and on return from 'execute' functions in src/ai/actions.cpp 20100620 00:45:38< Crab_> and, on manager::raise_user_interact() 20100620 00:45:57< Crab_> but, "return from 'execute' functions in src/ai/actions.cpp" calls manager::raise_gamestate_changed() already 20100620 00:46:23< Crab_> so, just ai::manager::play_turn and manager::raise_user_interact() to fix 20100620 00:46:49< Crab_> but, the boundary between ui and engine is not so-well-defined 20100620 00:48:06< Crab_> we need to isolate all places which can change the game state, from the ui 20100620 00:48:28< shadowmaster> Ivanovic: http://forums.wesnoth.org/viewtopic.php?f=7&t=30463&p=436441#p436441 20100620 00:48:45< Ivanovic> not now, please reping me tomorrow, about to head off to bed 20100620 00:48:49< shadowmaster> k 20100620 00:49:15< gabba> Crab_: the crucial question: how much time do you think making those changes would take, given that we need collaboration from multiple persons? 20100620 00:49:48< Crab_> gabba: not much. there's little potential for bugs, if it's done right. 20100620 00:50:11< Crab_> gabba: it was relatively straightforward to sort it out in the ai-ui an ai-engine boundaries 20100620 00:50:33< Crab_> note the approach 20100620 00:50:58< Crab_> gabba: for example, your code in src/mouse_events.cpp won't work as intended because they only cover a part of the ui-engine boundary 20100620 00:51:31< gabba> you mean it won't work as intended now, or within this new framework? 20100620 00:51:35< Crab_> since src/actions.cpp crosses the engine-ui boundary once again to redraw things 20100620 00:52:10< Crab_> 'won't work as intended now' - you'll get extra redraws or visual glitches and it'll be hard to sort them out 20100620 00:52:40< Crab_> the proposed solution actually explains 'why' it happens. 20100620 00:53:55< gabba> So, my choices seem to either go with your proposition, or make my code redraw-immune. 20100620 00:54:46< Crab_> make 'other' code redraw-immune 20100620 00:55:05< gabba> My initial approach of only modifiying the unit map at key places such as when pathfinding or selecting a unit worked pretty well for the "redraw-immune" ascpect. 20100620 00:55:06< Crab_> e.g., make unit movement and 'ai thinking' redraw-immune 20100620 00:55:31< Crab_> gabba: yes, it's a good way 20100620 00:55:56< Crab_> gabba: basically, what you were doing is designated only 'pathfinding or selecting a unit' as 'ui mode' 20100620 00:56:21< gabba> Exactly, but in a more localized way... more hacky I guess 20100620 00:56:32< Crab_> gabba: no, localization is ok. 20100620 00:57:05< Crab_> the reverse (making every method in unit and unit_map which changes it's state send a 'notify observers' event "ME IS CHANGED!") is harder 20100620 00:57:28< Crab_> gabba: but the problem is that redraw is called a lot.... 20100620 00:57:47< Crab_> and, note the 'guarantees' above... 20100620 00:57:55-!- Blueblazed [~nick@adsl-99-186-64-86.dsl.hstntx.sbcglobal.net] has quit [Ping timeout: 248 seconds] 20100620 00:58:12< Crab_> they have "on entering ui mode, replace the real unit map with the fake one, recalculating if necessary" 20100620 00:58:45< Crab_> and, since the rest of code is 'engine code', you cannot be sure if the game state has not changed 20100620 00:58:54< Crab_> hence the need to recalculate each time 20100620 00:59:05< Crab_> which might be slow (you know better) 20100620 00:59:27< Crab_> so, adding the 'redraw' to your list of 'ui' places can lead to slowness 20100620 01:00:00< Crab_> and what I'm proposing is to change the boundaries to isolate the code which can change the game state 20100620 01:00:43< gabba> My current problem is that I change the user's visual expectation of where his unit is, so redraws annoy me... if I revert to my original concept maybe I can stick to 6-7 places in the code where I apply-unapply my unit map modifiers, and that's that; 20100620 01:01:12< gabba> (applying unit map modifiers is usually less expensive that the neighbouring code, e.g. pathfinding) 20100620 01:01:49< gabba> But you seem to think that even if I do that your refactoring project would be beneficial? 20100620 01:02:10< Crab_> well, how much time does that 'applying' take ? 20100620 01:02:33< Crab_> in ms 20100620 01:03:13< Crab_> if it's fast enough, then you'd be able to do it on each redraw 20100620 01:03:25< gabba> Concretely, I build an std::stack of temporary_unit_mover structs, one per action. All these do is call unit_map::extract() if I remember well 20100620 01:03:35< gabba> I haven't profiled it 20100620 01:04:30< Crab_> SDL_GetTicks() should be enough, I think 20100620 01:04:39< Crab_> ( http://sdl.beuc.net/sdl.wiki/SDL_GetTicks ) 20100620 01:04:55< gabba> *click* 20100620 01:06:18< gabba> Do you have an opinion on the interface itself? i.e. is it better as on my mockups (draw arrow, then move unit on execute), or rather give the impression that the unit is already at its destination (probably implies 1. Move unit 2. Draw arrow 3. Erase arrow with some kind of animation on execute) ? 20100620 01:06:46< AI0867> silene: do you mind if I add #error and #warning directives to the preprocessor? 20100620 01:07:14< AI0867> I could error out using {DO_NOT_DEFINE_THIS} or something, but that's ugly 20100620 01:07:41< Crab_> gabba: for example, you can think about the ai turn which has the following structure (numbers are, roughly, for 2Ghz laptop, on a big map) - '30ms ai think time, 30ms user interface redraw time' 20100620 01:08:23< Crab_> gabba: and, your 'apply modifications' would need to run after each and every ai think time, before user interface redraw 20100620 01:08:48< Crab_> gabba: so, say, if it takes 30ms, it'll slow turn by 50% 20100620 01:09:12< Crab_> gabba: or, if it takes 5ms, it'll not be so noticeable and you'll be able to get away with using it all the time :) 20100620 01:09:26< gabba> good points there 20100620 01:09:51< gabba> Now I'm really curious how much time it actually takes 20100620 01:11:17< Crab_> gabba: haven't seen the interface itself yet :) 20100620 01:11:47< Crab_> gabba: through, of course, 'real units at src, mockups at dst' are more natural to me :) 20100620 01:12:25< gabba> There were two iterations, one as you just described, and the most recent one the contrary, on boucman's incentive 20100620 01:12:33< Crab_> ok 20100620 01:12:44< gabba> I can give you the corresponding svn revisions if you want 20100620 01:13:06< gabba> for when you have time 20100620 01:13:31< Crab_> no, not now :) 20100620 01:13:35< gabba> k 20100620 01:13:35-!- mjs-de [~mjs-de@vpw.wh.uni-dortmund.de] has quit [Remote host closed the connection] 20100620 01:17:35-!- grzywacz [~grzywacz@wesnoth/developer/grzywacz] has quit [Remote host closed the connection] 20100620 01:35:32-!- zookeeper [~l@wesnoth/developer/zookeeper] has quit [] 20100620 01:54:23< CIA-86> ai0867 * r43601 /trunk/ (3 files in 2 dirs): Fix the UtBS walkable-lava terrain 20100620 01:55:21-!- Crab_ [~Crab_@wesnoth/developer/crab] has quit [Quit: Leaving.] 20100620 01:58:00 * Espreon can't wait to get rid of that 20100620 01:58:51< AI0867> it broke when someone moved the lava images around 20100620 01:59:40< Espreon> I know, I know, but I just want to kill it. 20100620 02:00:39< AI0867> it doesn't make a whole lot of sense, yes 20100620 02:00:56< Espreon> Yeah, what the fuck was the author thinking? 20100620 02:03:02-!- loonycyborg [~sergey@wesnoth/developer/loonycyborg] has quit [Quit: Zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz] 20100620 02:03:51-!- loonybot [~loonybot@wesnoth/bot/loonybot] has quit [Remote host closed the connection] 20100620 02:24:18-!- ancestral [~ancestral@12.145.225.25] has joined #wesnoth-dev 20100620 02:30:09-!- Electric_Brain [~gerard@164.76.221.87.dynamic.jazztel.es] has quit [Remote host closed the connection] 20100620 02:37:53-!- Upth [ogmar@adsl-75-26-206-73.dsl.scrm01.sbcglobal.net] has joined #wesnoth-dev 20100620 02:39:50-!- ancestral [~ancestral@12.145.225.25] has quit [Quit: Colloquy for iPhone - http://colloquy.mobi] 20100620 02:41:13-!- Upthorn [ogmar@adsl-75-26-206-73.dsl.scrm01.sbcglobal.net] has quit [Ping timeout: 276 seconds] 20100620 03:28:35-!- eleazar [~eleazar@ppp-70-226-197-86.dsl.spfdil.ameritech.net] has joined #wesnoth-dev 20100620 03:32:34< CIA-86> gabba * r43603 /trunk/images/arrows/ (teleport-in.png teleport-out.png): Copy of teleport images for use by arrows 20100620 03:32:37< CIA-86> gabba * r43602 /trunk/src/whiteboard/side_actions.cpp: Whiteboard: removed useless assert 20100620 03:32:41< CIA-86> gabba * r43604 /trunk/src/ (arrow.cpp arrow.hpp): Arrows: added method to determine if a given hex is in the arrow's path. Did a few other corrections. 20100620 03:32:48< CIA-86> gabba * r43605 /trunk/src/ (6 files in 2 dirs): 20100620 03:32:48< CIA-86> Whiteboard: actions are now highlighted on hover of any related hex. 20100620 03:32:48< CIA-86> However when a unit is selected, only its own actions are highlighted. 20100620 03:35:42-!- gabba [~gabba@wesnoth/developer/gabba] has left #wesnoth-dev [] 20100620 03:40:55-!- eleazar [~eleazar@ppp-70-226-197-86.dsl.spfdil.ameritech.net] has quit [Quit: main screen turn off....] 20100620 03:49:28< CIA-86> eleazar * r43606 / (7612 files in 645 dirs): uploading the Mac OsX Xcode project as requested by AI. I believe i'm doing it right, if not, my appologies. It works for me at the monment. 20100620 03:51:02< shadowmaster> what the fuck 20100620 03:51:25< shadowmaster> 7612 files...tat cannot be possible 20100620 03:51:29< shadowmaster> shikadibot: log HEAD 20100620 03:51:31< shikadibot> Revision 43606 (eleazar, 2010-06-20 01:44:47 +0000 (Sun, 20 Jun 2010)): 20100620 03:51:34< shikadibot> uploading the Mac OsX Xcode project as requested by AI. I believe i'm doing it right, if not, my appologies. It works for me at the monment. 20100620 03:51:37< shikadibot> Web interface URL: http://svn.gna.org/viewcvs/wesnoth?view=rev&rev=43606 20100620 03:52:30< shadowmaster> O_O 20100620 03:52:43< shadowmaster> am I seeing the entirety of Boost? 20100620 03:53:16< Espreon> Mein Gott! 20100620 03:53:50< shadowmaster> no, I think it's worse than that. I guess he uploaded the whole contents of the ... thingy inside the Wesnoth bundle for Mac OS X 20100620 03:54:40< Espreon> Hurry, before someone declares the l-word! 20100620 03:54:50< shadowmaster> or something. You know, this is the kind of stuff that makes me very *afraid* of Apple's platform 20100620 03:54:56< shadowmaster> esp l-word? 20100620 03:55:02< shadowmaster> Espreon: what l-word? 20100620 03:55:05< Espreon> "Lawsuit"! 20100620 03:55:15< shadowmaster> eh, I'll let someone else take care of this mess 20100620 03:56:34-!- Blueblazed [~nick@adsl-99-186-64-86.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20100620 03:56:35< shadowmaster> I'm afraid 20100620 03:56:59< Espreon> AI0867: HELP! 20100620 03:57:23< shadowmaster> AI0867: you seem to know more about what this is about. What is this all about? 20100620 03:57:45< shadowmaster> I mean...*that* is going to add a huge delta to my git tree 20100620 03:58:02< ABCD> great... now I'm going to have to carry all of that around forever :( 20100620 03:58:25< Espreon> GOD DAMN IT ELEAZAR! 20100620 03:58:44< shadowmaster> it's the kind of stuff that ... well... umm. 20100620 03:58:46< Espreon> NOW LAWSUITS COULD BE DECLARED! 20100620 03:59:29< Espreon> ... and Apple has filed patents for desktop effects, so, if they find out about this, it's all over! 20100620 03:59:49< shadowmaster> Espreon: can I be the judge? can I? can I? Please? Pretty please? pleasepleasepleaseplease! ^_^ 20100620 03:59:49< ABCD> and why were *.dylib files included in that commit, I wonder? 20100620 04:00:24< Espreon> shadowmaster: SHUT UP! This is serious shit! 20100620 04:00:31< shadowmaster> although I don't know if it's really that bad or it just had a lot of...header files...stuff...boggles my...mind...help 20100620 04:00:51< ABCD> there are compiled objects in that commit(!) 20100620 04:00:55< shadowmaster> Espreon: okay! 20100620 04:00:57< Espreon> Apple code probably lies in those library files.. 20100620 04:01:08< shadowmaster> we just forget that this ever happened 20100620 04:01:09< shadowmaster> I think 20100620 04:01:11< shadowmaster> HELP! 20100620 04:01:36< shadowmaster> on a more serious note, this is why I check the files I'm committing before finishing a commit. 20100620 04:03:58-!- shadowm_laptop2 [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20100620 04:04:06-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [Disconnected by services] 20100620 04:04:12-!- shadowm_laptop2 is now known as shadowm_laptop 20100620 04:05:08< shadowmaster> Espreon: so what? it's completely useless without their proprietary hardware! 20100620 04:05:22< shadowmaster> and the hoster is Gna.org, not us. 20100620 04:05:25< Espreon> OK, we need to make checkouts of branches/, website/, and tag/, get Gna to nuke everything, and we'll rebuild! 20100620 04:05:32< Espreon> But, um... 20100620 04:05:37< Espreon> *tags 20100620 04:05:45< shadowmaster> and neither Gna.org or us have much money to squeeze 20100620 04:05:56< Espreon> Apple won't care? 20100620 04:05:59< shadowmaster> I say we revert the commit 20100620 04:06:14< shadowmaster> so. um. let me...fetch it 20100620 04:06:22< shadowmaster> sigh. 20100620 04:06:37< ABCD> of course, reverting the commit doesn't help those of us using git... 20100620 04:07:16< shadowmaster> we...I...why don't we freeze the repository and get somebody to *nuke* the commit? 20100620 04:07:29< Espreon> YES! 20100620 04:07:33< shadowmaster> why isn't Ivanovic around when you needhim. 20100620 04:07:36< Espreon> NUKE IT ALL! 20100620 04:07:42< shadowmaster> *ahem* 20100620 04:07:52< Espreon> shadowmaster: Get Sirp. 20100620 04:08:08< shadowmaster> ehm, what do I tell him? 20100620 04:08:25< Espreon> Tell what you would have told to Ivanovic. 20100620 04:08:27< shadowmaster> he doesn't even use git-svn, so he probably Doesn't Caretm 20100620 04:08:30< shadowmaster> *™ 20100620 04:08:41< Espreon> No, we get him to freeze the repository. 20100620 04:08:46< shadowmaster> whereas Ivanovic can be somewhat more easily bribed. 20100620 04:09:05< shadowmaster> it's more like, I get him to get the Gna guys to freeze it. 20100620 04:09:40< shadowmaster> okay, that will be piece of cake. *knock knock* Hello! I'm a Wesnoth developer and it turns out that some artistst messed up and we need our history modified to delete a certain commit! tee hee! 20100620 04:09:52< Espreon> Yes, yes! 20100620 04:10:07< shadowmaster> -.-' 20100620 04:10:35< shadowmaster> Espreon: then do it yourself 20100620 04:10:49< shadowmaster> my planet needs me! 20100620 04:11:19< Espreon> shadowmaster: But, I got my wisdom teeth removed! 20100620 04:11:58< Espreon> shadowmaster: Seriously, get Sirp. 20100620 04:13:16-!- Appleman1234 [~Appleman1@CPE-60-226-180-71.qld.bigpond.net.au] has quit [Ping timeout: 265 seconds] 20100620 04:15:39-!- Appleman1234 [~Appleman1@CPE-60-226-180-71.qld.bigpond.net.au] has joined #wesnoth-dev 20100620 04:18:34< Appleman1234> ? 20100620 04:18:46< shadowmaster> ?? 20100620 04:19:11< Appleman1234> why are you panicking about lawsuits ? 20100620 04:19:20< Espreon> Why do you think? 20100620 04:19:23< shadowmaster> dunno, Espreon is. I'm not 20100620 04:19:58< Espreon> We must move the repository... to Sealand! 20100620 04:20:00< Appleman1234> Espreon, I am not sure .... 20100620 04:20:29< shadowmaster> the only thing I care about here is that my git tree will grow enormous 20100620 04:20:35< shadowmaster> and then I'll have to revert a gigantic commit 20100620 04:20:39< Espreon> Apple code could be compiled into those libraries! 20100620 04:20:46< shadowmaster> as if I/O performance wasn't poor enough here already 20100620 04:21:09< Gambit> shadowmaster: Can your comment at 20:09:30 (est) go into fortunes? 20100620 04:21:12< Gambit> It's awesome. 20100620 04:21:34< shadowmaster> Gambit: please use Wesbot's time 20100620 04:21:43< shadowmaster> I'm too lazy to convert 20100620 04:21:59< Appleman1234> shadowmaster, that is understandable, and as you said he really shouldn't have dumped it in trunk 20100620 04:22:04< Gambit> s/20/04/ 20100620 04:22:18< Gambit> [22:09:30] okay, that will be piece of cake. *knock knock* Hello! I'm a Wesnoth developer and it turns out that some artistst messed up and we need our history modified to delete a certain commit! tee hee! 20100620 04:22:32< shadowmaster> Gambit: alright. 20100620 04:22:36< shadowmaster> I'll add it in. 20100620 04:22:48< shadowmaster> wait! 20100620 04:22:54< shadowmaster> I can't do that before we settle the SVN mess 20100620 04:23:01< Gambit> oh snap 20100620 04:24:09< Appleman1234> Espreon, apple code for what ? 20100620 04:25:26< Espreon> There could be Apple code compiled into the libraries that Eleazar added! 20100620 04:25:32< Espreon> ... to the repository. 20100620 04:26:11< Appleman1234> from what ? 20100620 04:26:40< Espreon> http://svn.gna.org/viewcvs/wesnoth/trunk/MacOSX/?rev=43606 ... 20100620 04:28:00< Appleman1234> I am already looking at the commit 20100620 04:28:24< Espreon> http://svn.gna.org/viewcvs/wesnoth/trunk/MacOSX/lib/?rev=43606 ... 20100620 04:29:43< Appleman1234> I already saw the lib directory 20100620 04:30:06< Appleman1234> and the dynlibs, but I am confused at what you are panicking over ... 20100620 04:30:30< Espreon> Well, Apple code... could be compiled in them... 20100620 04:30:40< Espreon> ... as I have said over nine thousand times. 20100620 04:31:17< Appleman1234> :S 20100620 04:31:21< ABCD> and the fact that those of us using git will have to store those revisions *forever* :) 20100620 04:31:28< Appleman1234> saying maybe doesn't make it so 20100620 04:31:34< ABCD> (unless history is changed before we sync :D) 20100620 04:31:36< Appleman1234> ABCD: I understand that point ... 20100620 04:34:06< Appleman1234> Espreon, nevermind, I am still confused but meh 20100620 04:34:24< Appleman1234> if you want I could decompile the dynlibs and check .... 20100620 04:40:00< Appleman1234> but based on the xcode project file other than the frameworks which I believe have compatible licensing 20100620 04:40:11< Appleman1234> there isn't anything that isn't open source ... 20100620 04:40:38< shadowmaster> shikadibot: log HEAD 20100620 04:40:38< shikadibot> Revision 43606 (eleazar, 2010-06-20 01:44:47 +0000 (Sun, 20 Jun 2010)): 20100620 04:40:41< shikadibot> uploading the Mac OsX Xcode project as requested by AI. I believe i'm doing it right, if not, my appologies. It works for me at the monment. 20100620 04:40:45< shikadibot> Web interface URL: http://svn.gna.org/viewcvs/wesnoth?view=rev&rev=43606 20100620 04:40:47< shadowmaster> crimson_penguin: ^ 20100620 04:40:52< shadowmaster> just look at the sheer amount of files. 20100620 04:41:11< crimson_penguin> I see, yes; that's what I figured 20100620 04:41:11< shadowmaster> if you are under 18 years old, you shouldn't, at least not without parental guidance. 20100620 04:41:20< shadowmaster> or a psychiatrist. 20100620 04:41:41< crimson_penguin> that's kinda why I didn't want the project in svn - it requires all those libraries, and stuff to build, and it's just a terrible idea to put that in svn 20100620 04:41:45< shadowmaster> crimson_penguin: so, what's the technical explanation? 20100620 04:42:01< shadowmaster> I mean, what is the point? why are those files there? why...why... 20100620 04:42:05< shadowmaster> why are you crimson? :/ 20100620 04:42:41< Espreon> Appleman1234: That'd be nice, I guess. 20100620 04:42:47< Appleman1234> Espreon, are you going to contact eleazar ? 20100620 04:42:52< shadowmaster> also, what should we do? 20100620 04:42:55 * Appleman1234 doesn't run mac os x 20100620 04:42:56< crimson_penguin> shadowmaster: well, my main job as the Mac packager, has been gathering together good copies of all the libraries (ones that work on ppc/intel and inside an app, and on 10.4, etc.) - so just including the XCode project file would be useless, because you need all those other files 20100620 04:43:16< shadowmaster> I mean, besides the legality of this crap, I'lm going to carry around it in my git tree FOR THE REST OF ETERNITY! 20100620 04:43:37< crimson_penguin> so I put it all in a zip for other people to download to compile without having to figure out any of it for themselves 20100620 04:43:44< crimson_penguin> but that's why I didn't intent for it to be in svn 20100620 04:43:56< shadowmaster> and I don't like that. You know what, I'll just find a way to convince git-svn that this revision never. Ever. Existed. 20100620 04:44:04< crimson_penguin> I didn't want my instructions to be like "go download the boost headers", for instance 20100620 04:44:11< crimson_penguin> heh 20100620 04:44:18< Appleman1234> shadowmaster, revert the commit for that reason at least ... 20100620 04:44:29< Espreon> Appleman1234: IDK, probably. 20100620 04:44:37< shadowmaster> you are telling me that I'll have to fetch it first? NOOOOoooOOoooo... 20100620 04:44:51< shadowmaster> why is everyone today trying to get big noes from me? 20100620 04:45:13< shadowmaster> Espreon: you revert it. 20100620 04:45:21< Appleman1234> or have gna revert it or something 20100620 04:45:29< shadowmaster> I'll figure out a way to make git svn skip it but you revert it. 20100620 04:45:34< Espreon> ... and have the history... DESTROYED! 20100620 04:45:48< crimson_penguin> shadowmaster: for the record, it's all boost header files, not the sources :P 20100620 04:46:05< Espreon> But, Apple code could be compiled in those libraries... 20100620 04:46:14< shadowmaster> crimson_penguin: but they are so many scary files that i can't... i ... i ... 20100620 04:46:17< Espreon> ... that's why I'm acting like a crazy person... 20100620 04:46:32< shadowmaster> yes, Espreon is freaked out by the binary code 20100620 04:46:38< crimson_penguin> Espreon: err, which files? 20100620 04:46:52< Espreon> http://svn.gna.org/viewcvs/wesnoth/trunk/MacOSX/lib/?rev=43606 20100620 04:47:00< shadowmaster> Espreon: more specific please 20100620 04:47:06< shadowmaster> I'd not go through that list again 20100620 04:47:18< crimson_penguin> there's no Apple code 20100620 04:47:40< crimson_penguin> Espreon: none of those are Apple libraries 20100620 04:47:52< Espreon> Yes, but Apple code could have been compiled in them. 20100620 04:47:57< crimson_penguin> if they were, they'd be included with the OS and I wouldn't have to distribute them, I'd just link to them 20100620 04:48:01< shadowmaster> statically linked? 20100620 04:48:11< crimson_penguin> I don't think so 20100620 04:48:11< shadowmaster> or dynamic link stubs, which would probably amount to the same 20100620 04:48:24< crimson_penguin> I mean, give me a plausible example 20100620 04:49:09< Espreon> Well, stuff from Apple header files or something? IDFK. 20100620 04:49:19< crimson_penguin> shadowmaster: what, you're not allowed to upload binaries that link to someone's copywritten libraries? 20100620 04:49:25< crimson_penguin> righted* 20100620 04:49:44< shadowmaster> crimson_penguin: actually, forget I said anything. 20100620 04:49:53< shadowmaster> forget I was involved in this discussion, forget I was here! 20100620 04:50:24< crimson_penguin> Espreon: I also don't think it's remotely plausible that Apple would try to hunt us down for it anyway - I agree it should be reverted, and if possible, removed from history, but I don't think it's such a huge deal 20100620 04:50:42< Espreon> They file patents for desktop effects! 20100620 04:51:00< Espreon> They'd probably sue the shit out of us for their own amusement. 20100620 04:51:15< crimson_penguin> For developing good games for their platform? 20100620 04:51:24< Espreon> Why not? 20100620 04:51:37< crimson_penguin> because it would be bad for them 20100620 04:52:11< shadowmaster> the point is 20100620 04:52:20< shadowmaster> there's not enough money to squeeze from us. 20100620 04:52:32< shadowmaster> they just wouldn't care. 20100620 04:52:34< Espreon> Oh please, it wouldn't affect them, for they have legions of fetishi... er fans... following them. 20100620 04:52:54< shadowmaster> once it is in my repository, it will always be. 20100620 04:53:02< shadowmaster> please Espreon, revert it. 20100620 04:53:05< shadowmaster> it's just a git revert-away from you 20100620 04:53:15< Espreon> Don't have a git clone... 20100620 04:53:44< shadowmaster> an svn checkout? 20100620 04:54:13-!- Ivanovic_ [~ivanovic@dtmd-4db2f562.pool.mediaWays.net] has joined #wesnoth-dev 20100620 04:54:23< Appleman1234> Espreon, from what I can see other than linking against operating system frameworks which weren't uploaded with the commit, everything in the commit is opensource, but the reasons given by shadowmaster is it probably best to revert it anyways 20100620 04:54:37< Espreon> Meh, whatever. 20100620 04:54:54< shadowmaster> we won't be able to DELETE it that's for sure. 20100620 04:54:56< shadowmaster> but we can revert it. 20100620 04:55:31< shadowmaster> the problem is, if I am the one to revert it, I'll have to fetch the commit 20100620 04:55:40< shadowmaster> it will be in my git tree afterwards *FOREVER* 20100620 04:55:59< Espreon> Fine. 20100620 04:56:05< ABCD> and everyone using git *must* fetch it, even after it's reverted 20100620 04:56:16< shadowmaster> I think I can force git-svn to skip it 20100620 04:56:16< shadowmaster> not sure 20100620 04:56:52< shadowmaster> hm... maybe we can't. 20100620 04:56:56< Espreon> OK, I'll revert, we'll get Rhonda to delete these logs, and nothing ever happened. 20100620 04:56:58< shadowmaster> ahhh, whatever 20100620 04:57:11< shadowmaster> Espreon: I'll revert, but don't hilight her for petty stuff like this. 20100620 04:57:15-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has quit [Ping timeout: 265 seconds] 20100620 04:57:26< shadowmaster> the logs don't need to be deleted. It's not like this is a mafia meeting or something. 20100620 04:57:41< Espreon> To Apple, everything's probably a Mafia meeting. 20100620 04:58:00< shadowmaster> well, allow me to say that Apple sucks. 20100620 04:58:07< shadowmaster> period. 20100620 04:58:08< shadowmaster> moving on... 20100620 04:58:09< Gambit> Can they sue for an accident that you guys fixed within the hour? 20100620 04:58:11-!- Ivanovic_ is now known as Ivanovic 20100620 04:58:15< Blueblazed> Gambit: no lol 20100620 04:58:16< Espreon> Probably. 20100620 04:58:17< shadowmaster> Gambit: no, they won't sue us at all 20100620 04:58:22< Blueblazed> ^ 20100620 04:58:24< Gambit> "can" 20100620 04:58:25< shadowmaster> mainly because we are not a tasty target. 20100620 04:58:27< Espreon> ... if they are good people, that is. 20100620 04:58:28< shadowmaster> we don't have money. 20100620 04:58:40< shadowmaster> here comes the gigantic revision of doom 20100620 04:58:45< Blueblazed> Gambit: They can sue, but it won't be under any grounds 20100620 04:58:57< Blueblazed> You can sue anyone for anything in America, it's just most of the time that will get thrown out 20100620 04:59:13< shadowmaster> dear gods, I must resist the temptation to strangle Eleazar over this. 20100620 04:59:42< shadowmaster> so...many...files...my poor...home...partition.... 20100620 04:59:54< shadowmaster> I can feel its pain 20100620 05:00:18< shadowmaster> Espreon: thanks for the comedy, btw 20100620 05:00:23< Espreon> Shut up. 20100620 05:00:30< Espreon> Also, you were gonna do it? Thanks a lot. 20100620 05:00:35< Espreon> I was going to revert it. 20100620 05:00:38< shadowmaster> Espreon: no, I'm not shutting up. It was fun. 20100620 05:00:46< shadowmaster> yes, I'm going to revert it 20100620 05:00:53< Espreon> You bastard.... 20100620 05:00:54< shadowmaster> after the automatic run of git gc finishes 20100620 05:01:18< Espreon> But, we should still get Gna to kill the history... 20100620 05:01:21< shadowmaster> oh, forgot to rebase, now I *will* suffer 20100620 05:01:24< Espreon> ... poor git users... yeahz... 20100620 05:01:29< shadowmaster> Espreon: unlikely 20100620 05:01:47< shadowmaster> you don't get the USA Air Force to destroy a single fly 20100620 05:02:03< shadowmaster> so yeah 20100620 05:02:12-!- meric [~Eric@124-170-166-78.dyn.iinet.net.au] has joined #wesnoth-dev 20100620 05:02:26< Gambit> You do if you're a president Bush. 20100620 05:02:38< crimson_penguin> No, you don't 20100620 05:03:06< Gambit> Yeah you're right. Maybe the next one won't be that way. 20100620 05:03:41< shadowmaster> Gambit: poltitic comment? 20100620 05:03:43< shadowmaster> #wesnoth-dev? 20100620 05:04:18< Aethaeryn> ooooh 20100620 05:04:30< shadowmaster> Aethaeryn?! 20100620 05:04:31 * Gambit takes his mood lightening attempts elsewhere. 20100620 05:04:50< shadowmaster> Gambit: Espreon did a good job here already, thanks. 20100620 05:04:55< shadowmaster> no seriously that was fun. 20100620 05:05:03 * Aethaeryn has been gathering ideas for the Android port 20100620 05:05:30< shadowmaster> Aethaeryn: can you do anything besides talking about them? I mean, who doesn't have ideas? 20100620 05:05:36< Blueblazed> Does Wesnoth have an iPad port? 20100620 05:05:42< shadowmaster> Blueblazed: no 20100620 05:05:49< shadowmaster> Blueblazed: there's no iPhone port either 20100620 05:05:55< shadowmaster> Users' Forum doesn't exist. 20100620 05:06:10< shadowmaster> and stickified threads are useless 20100620 05:06:54< Blueblazed> Oh that is quite unfortunate then :( 20100620 05:07:12< Aethaeryn> shadowmaster: thank you for reminding me of one of the main reasons for getting my new computer 20100620 05:07:15< Aethaeryn> android sdk 20100620 05:07:21< Aethaeryn> my laptop is too old to run the virtualization right 20100620 05:07:33< shadowmaster> why, no problem, although I have no idea how I could remind you of that 20100620 05:09:08< crimson_penguin> Blueblazed: Yes it does, shadowmaster was being sarcastic 20100620 05:09:19< crimson_penguin> Blueblazed: Just look in the Users forum 20100620 05:09:21< shadowmaster> crimson_penguin: no, it doesn't. 20100620 05:09:30< crimson_penguin> ehh? 20100620 05:09:41< shadowmaster> he already noticed my sarcasm 20100620 05:09:55< crimson_penguin> are you sure? 20100620 05:09:58< shadowmaster> I also gave all the required pointers above. 20100620 05:10:08< shadowmaster> I mean, Users' Forum + sticky + iPhone = ??? 20100620 05:10:22 * crimson_penguin will interfere with your sarcasm no more 20100620 05:10:34< shadowmaster> I am angry. 20100620 05:10:44< Gambit> Clearly. 20100620 05:10:44< shadowmaster> I'm seeing uppercase Ds flying across my terminal. 20100620 05:10:52< shadowmaster> they seem to be deleted paths. 20100620 05:11:02< shadowmaster> D MacOSX/lib/libintl.framework/libintl 20100620 05:12:12< shadowmaster> this means that I'll be the author of the second-largest commit here. 20100620 05:14:40< CIA-86> shadowmaster * r43607 / (6967 files in 620 dirs): 20100620 05:14:40< CIA-86> Revert r43606 from Eleazar. 20100620 05:14:40< CIA-86> We all don't need > 5,000 additional files on our hard disks trying to 20100620 05:14:40< CIA-86> duplicate part of our /usr/include dirs. Also, watch what you are 20100620 05:14:40< CIA-86> checking in the next time... 20100620 05:15:09< Espreon> shadowmaster: Now, send him... the PM. 20100620 05:16:10< shadowmaster> gods. 20100620 05:16:12< shadowmaster> NO 20100620 05:16:12< shadowmaster> Espreon: you do it 20100620 05:16:37< Espreon> Too lazy. 20100620 05:16:50< crimson_penguin> I already replied on the forum: http://www.wesnoth.org/forum/viewtopic.php?p=436490#p436490 20100620 05:16:54< Espreon> ... and I had my wisdom teeth removed recently, so... yeahz. 20100620 05:16:54< crimson_penguin> (that's where it all started) 20100620 05:20:39< shadowmaster> woohoo! I have an idea! 20100620 05:21:00< Espreon> What? 20100620 05:21:06< shadowmaster> we blame AI0867 20100620 05:21:11< Espreon> Yes! 20100620 05:21:23< shadowmaster> we also give shadowmaster an iPad 20100620 05:21:27< Espreon> ... unless he makes all of the terrain work well. 20100620 05:21:33< Espreon> shadowmaster: No. 20100620 05:21:44< shadowmaster> :| 20100620 05:21:50< shadowmaster> okay, that didn't work. 20100620 05:22:16< Espreon> How 'bout we give Espreon some morphine? 20100620 05:22:19-!- Gambit [~quassel@pa-67-234-73-7.dhcp.embarqhsd.net] has quit [Quit: Leaves have fallen all around. It's time I was on my way. Thanks to you I'm much obliged for such a pleasant stay.] 20100620 05:22:26< shadowmaster> Espreon: no. 20100620 05:22:31< shadowmaster> be a man. 20100620 05:22:38< Espreon> Too lazy. 20100620 05:22:41< shadowmaster> I've been through worse than a wisdom teeth removal. Pfft. 20100620 05:22:50< Espreon> I was only kidding, TBH. 20100620 05:23:14< Espreon> I would like some gyokuro, however. 20100620 05:23:32< shadowmaster> let's see what's the size of mygit tree 20100620 05:24:01< Espreon> Honestly, this isn't so bad. 20100620 05:24:09 * Espreon thought that it would have been a lot worse. 20100620 05:24:46< Espreon> The only annoying parts were the numbness and the clotting phase. 20100620 05:25:03< Espreon> Luckily, I the latter didn't take too long, and I slept through the former. 20100620 05:25:18< shadowmaster> 1.6 GB. 20100620 05:25:23< shadowmaster> well, it didn't grow too much 20100620 05:25:36< shadowmaster> probably less than 0.2 GB 20100620 05:26:33< shadowmaster> Espreon: you are the King of Comedy! 20100620 05:26:45< Espreon> What? 20100620 05:27:52< Espreon> I guess. 20100620 05:29:51< CIA-86> shadowmaster * r43608 /trunk/misc/fortunes/wesnoth: Add a fortune demanded by Gambit 20100620 05:42:23< crimson_penguin> shadowmaster: it's only 85MB 20100620 05:42:54-!- DesertPanther [~Khalid@unaffiliated/desertpanther] has quit [Quit: Leaving] 20100620 05:42:58< shadowmaster> k 20100620 05:44:59-!- Elvish_Pillager [~eli@71-10-224-192.dhcp.oxfr.ma.charter.com] has quit [Quit: Hi! I'm a quit message virus vaccine. If you see a quit message virus, don't replace your quit message with it!] 20100620 05:51:40-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [Ping timeout: 265 seconds] 20100620 05:51:49< crimson_penguin> (but of course, if you have 2 copies, that's doubled) 20100620 05:52:53-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20100620 05:54:24< shadowmaster> GAA! 20100620 05:54:29< shadowmaster> crimson_penguin: no, don't worry 20100620 05:54:33< Espreon> What now? 20100620 05:54:40< shadowmaster> I don't have two copies...at least I don't have a full second copy 20100620 05:54:45< crimson_penguin> that's good 20100620 05:54:46< shadowmaster> it's just deltified inside the git tree. 20100620 05:54:55< shadowmaster> no silly .svn/text-base dirs 20100620 05:56:12< ABCD> and everything in .git/objects is compressed -- even if it isn't in a pack 20100620 06:00:29-!- ancestral [~ancestral@97-116-114-248.mpls.qwest.net] has joined #wesnoth-dev 20100620 06:10:16-!- Upth is now known as Upthorn 20100620 06:36:42-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20100620 06:47:42-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [] 20100620 06:49:13-!- Upthorn [ogmar@adsl-75-26-206-73.dsl.scrm01.sbcglobal.net] has quit [Ping timeout: 264 seconds] 20100620 06:53:51-!- Upth [ogmar@adsl-75-26-206-73.dsl.scrm01.sbcglobal.net] has joined #wesnoth-dev 20100620 06:53:51-!- Upth is now known as Upthorn 20100620 06:57:02-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20100620 07:10:36-!- meric [~Eric@124-170-166-78.dyn.iinet.net.au] has left #wesnoth-dev [] 20100620 07:30:25-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [] 20100620 07:47:25-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20100620 08:18:37-!- stikonas_ [~and@wesnoth/translator/stikonas] has joined #wesnoth-dev 20100620 08:24:21-!- stikonas_ [~and@wesnoth/translator/stikonas] has quit [Ping timeout: 240 seconds] 20100620 08:25:12-!- crimson_penguin [~ben@wesnoth/developer/crimsonpenguin] has quit [Quit: crimson_penguin] 20100620 08:30:58-!- stikonas_ [~and@wesnoth/translator/stikonas] has joined #wesnoth-dev 20100620 08:33:49-!- Ivanovic [~ivanovic@dtmd-4db2f562.pool.mediaWays.net] has quit [Changing host] 20100620 08:33:49-!- Ivanovic [~ivanovic@wesnoth/developer/ivanovic] has joined #wesnoth-dev 20100620 08:35:50-!- stikonas_ [~and@wesnoth/translator/stikonas] has quit [Ping timeout: 272 seconds] 20100620 08:37:12< Ivanovic> moin 20100620 08:57:09-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [Quit: new kernel] 20100620 09:05:45< Ivanovic> and yeah, wow, what a f*** up this night with the OSX packaging stuff... 20100620 09:05:58< Espreon> Indeed. 20100620 09:07:17< Ivanovic> really helpful "need help" request... http://forums.wesnoth.org/viewtopic.php?f=4&t=28828&start=15 20100620 09:08:39-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20100620 09:10:21< shadowmaster> Ivanovic: maybe you want to give this guy some advice: http://forums.wesnoth.org/viewtopic.php?f=7&t=30463 20100620 09:10:37< Ivanovic> will do so one i wake up a little 20100620 09:10:46< shadowmaster> noted 20100620 09:10:51-!- ABCD [~abcd@gentoo/developer/abcd] has quit [Remote host closed the connection] 20100620 09:11:51-!- meric [~Eric@124-170-166-78.dyn.iinet.net.au] has joined #wesnoth-dev 20100620 09:13:51< Ivanovic> and who is going to explain eleazar that what he did might not be really legal? 20100620 09:14:32< Espreon> Not I. 20100620 09:17:20-!- ABCD [~abcd@gentoo/developer/abcd] has joined #wesnoth-dev 20100620 09:21:17< CIA-86> espreon * r43609 /trunk/utils/pofix.py: Added more pofix conversion rules for apostrophes; crafted by ancestral. 20100620 09:21:24< shadowmaster> we are not sure he pushed anything bad yet 20100620 09:21:27< Espreon> Ivanovic: Would you please run pofix on everything? I was running it... and my Terminator session got exited... 20100620 09:21:34< Espreon> ... and I wanna go to bed soon... 20100620 09:21:39< shadowmaster> besides the gigantic boost distribution 20100620 09:21:44< shadowmaster> *headers 20100620 09:22:10< Espreon> ancestral: No, don't take this as the greenlight to get to work on DW. 20100620 09:22:11-!- mjs-de [~mjs-de@vpw.wh.Uni-Dortmund.DE] has joined #wesnoth-dev 20100620 09:22:45< Espreon> Ivanovic: You may want to go into wesnoth/fi.po and perform the manual fix... 20100620 09:22:53< Espreon> ... mentioned by pofix's output... 20100620 09:23:08-!- lcfseth [~lcfseth@41.225.43.214] has joined #wesnoth-dev 20100620 09:23:18< shadowmaster> but I can't think of any good excuse for not looking at one's commit summary before commiting 20100620 09:23:34< shadowmaster> I mean, five thousand and something files? :/ 20100620 09:23:57< Espreon> Wasn't it seven thousand and something files? 20100620 09:24:03< shadowmaster> er. Almost seven thousands, actually. 20100620 09:24:15< Ivanovic> Espreon: ehm, those should not appear if you are doing a safe replacement! 20100620 09:24:21< shadowmaster> 6900+ something 20100620 09:25:11< Ivanovic> Espreon: and i see a replacement that you got to apply in some cfg files first 20100620 09:25:22< Ivanovic> +("we're", "we’re"), 20100620 09:25:32< Espreon> Yes, yes. 20100620 09:25:32< Ivanovic> (okay, f***ed up utf by mail) 20100620 09:25:33< shadowmaster> O o 20100620 09:25:40< shadowmaster> yeah, not UTF-8 at all 20100620 09:25:48< Ivanovic> Espreon: pofix and wml have to be in sync! 20100620 09:25:51< Espreon> Damn it, ancestral. 20100620 09:25:56< ancestral> What? 20100620 09:26:42< Espreon> Ivanovic: Very few of those appeared; the cases can be fixed by a simple "copy from source". 20100620 09:26:45-!- ABCD [~abcd@gentoo/developer/abcd] has quit [Quit: Leaving] 20100620 09:26:51< Espreon> ... well... the ones that I saw. 20100620 09:27:00-!- ABCD [~abcd@gentoo/developer/abcd] has joined #wesnoth-dev 20100620 09:27:58< Espreon> ancestral: Next time, make sure that the file saves in UTF-8 and not super-ASCII or whatever. 20100620 09:28:12< ancestral> Hmm 20100620 09:28:39< ancestral> It should have saved in UTF-8 20100620 09:28:45< ancestral> Also 20100620 09:28:52< ancestral> Isn't ASCII a subset of UTF-8? 20100620 09:28:56< Espreon> Ivanovic: Are you sure things were screwed up? They render fine here. 20100620 09:29:09< Ivanovic> Espreon: no, they are not screwed up 20100620 09:29:14< Ivanovic> this is a copy from the commit mail 20100620 09:29:18< ancestral> Espreon: I posted things on pastebin anyway. I never sent you anything 20100620 09:29:18< Ivanovic> *mail* 20100620 09:29:46< Espreon> ancestral: Yes, yes. 20100620 09:30:01< Espreon> Ivanovic: Ah, I see. 20100620 09:31:40< Espreon> So, then just run it. The only reason wesnoth/fi.po (and others) got those was because the translated strings already had the desired result. 20100620 09:32:00< shadowmaster> ASCII is covered by the first 128 7-bit sequences in UTF-8 but I'd not dare to call it a subset of UTF-8 ;) 20100620 09:32:33-!- noy [~Noy@wesnoth/developer/noy] has quit [Ping timeout: 265 seconds] 20100620 09:32:48< Espreon> UTF-8 is superior in every way anyway. If you don't support the past, then you don't support the future! 20100620 09:32:54< Espreon> ... that should be Unicode's motto. 20100620 09:33:26< Espreon> Ivanovic: So, you will run pofix on everything, yes? 20100620 09:33:34-!- phlaem [~a@e178085176.adsl.alicedsl.de] has joined #wesnoth-dev 20100620 09:33:53< Ivanovic> Espreon: please do fix the cfg files first, then i will run pofix 20100620 09:34:10< Ivanovic> just run this: grep -R "we're" data/ 20100620 09:34:28< Espreon> OK... 20100620 09:34:45< Ivanovic> and yeah, fix all the we're into the "new" ones 20100620 09:34:55< Espreon> Yes, yes. 20100620 09:35:25< Espreon> My run was going to cover EVERYTHING that would be affected by that conversion. 20100620 09:37:45< Espreon> Ivanovic: Only run it on data/campaigns... otherwise, you'll be affecting comments. 20100620 09:37:54< Espreon> No, wait. 20100620 09:37:56< Espreon> That's my job. 20100620 09:37:58< Espreon> Heh... 20100620 09:38:25-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20100620 09:44:35< CIA-86> espreon * r43610 /trunk/data/campaigns/ (61 files in 18 dirs): Applied pofix to data/campaigns/. 20100620 09:45:37< CIA-86> espreon * r43611 /trunk/MacOSX/: Smote evil empty directories. 20100620 09:46:09< Espreon> shadowmaster: I have vanquished the husk of the evil! 20100620 09:47:18< shadowmaster> oh. 20100620 09:47:25< shadowmaster> I forgot that git can't handle those 20100620 09:47:44< shadowmaster> since, you know, git doesn't work with directories as objects! 20100620 09:48:17< shadowmaster> a directory appears in the index as soon as a versioned file is in both 20100620 09:50:00< Espreon> I know, I know. 20100620 09:50:17 * Espreon wishes that git-svn properly handled empty directories... 20100620 09:50:56< Espreon> shadowmaster: A git svn rebase with a recent version of git (last time I ran it) created turnk... :( 20100620 09:51:32< shadowmaster> in wesnoth-umc-dev's tree, I assume 20100620 09:52:04< Espreon> Indeed. 20100620 09:53:15< Espreon> ancestral: Once Ivanovic finishes up with pofix, you may get to work on DW. 20100620 09:53:22 * Espreon 's going to go to sleep. 20100620 09:53:26< Espreon> Byez... 20100620 09:53:30 * Espreon disappears... 20100620 09:53:48< ancestral> I guess I report to Espreon now ;-) 20100620 09:53:48< shadowm_laptop> bye Espreon 20100620 09:54:32-!- mordante [~mordante@wesnoth/developer/mordante] has joined #wesnoth-dev 20100620 09:54:35< shadowmaster> ancestral: what exactly is this work on DW you two are talking about? 20100620 09:54:43< mordante> servus 20100620 09:54:49< shadowmaster> hi there 20100620 09:55:17< ancestral> Espreon is on a bent to put in curly quotes where used 20100620 09:55:37< mordante> AI0867, that bug is already reported 20100620 09:55:48< ancestral> I initially proposed it like 2 years ago and was willing to assist him in writing some pofixes 20100620 09:58:49-!- boucman [~rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20100620 10:00:11< mordante> AI0867, regarding r43594 IMO the proper fix would be to support wml_error in the editor 20100620 10:02:07-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has quit [Quit: good night] 20100620 10:10:57< Ivanovic> running pofix.py now 20100620 10:14:21-!- Aethaeryn [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Quit: uqit] 20100620 10:15:01-!- zookeeper [~l@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20100620 10:18:37-!- Crab_ [~Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20100620 10:41:17-!- Blueblazed [~nick@adsl-99-186-64-86.dsl.hstntx.sbcglobal.net] has quit [Ping timeout: 240 seconds] 20100620 10:54:25< CIA-86> ivanovic * r43612 /trunk/po/ (795 files in 15 dirs): 20100620 10:54:25< CIA-86> ran utils/pofix.py on all po/pot files 20100620 10:54:25< CIA-86> pot-update will follow... 20100620 10:55:40-!- dtiger [~dtiger@dynamic-vpdn-93-125-66-45.telecom.by] has joined #wesnoth-dev 20100620 10:55:48< Ivanovic> Espreon: you forgot some fixes in the manual/manpages... 20100620 11:01:56-!- ancestral [~ancestral@97-116-114-248.mpls.qwest.net] has quit [Quit: And that’s the end of THAT chapter.] 20100620 11:02:54< CIA-86> ivanovic * r43613 /trunk/po/wesnoth-manpages/gl.po: fixed broken syntax 20100620 11:05:16< Ivanovic> Espreon: sorry, my bad 20100620 11:06:53< Ivanovic> Espreon: but there are files that you forgot to change 20100620 11:07:04-!- Lcawte [lcawte@wikia/wikimedia.Lcawte] has joined #wesnoth-dev 20100620 11:07:32-!- alink [~alink@wesnoth/developer/alink] has joined #wesnoth-dev 20100620 11:07:38< CIA-86> ivanovic * r43614 /trunk/ (443 files in 25 dirs): 20100620 11:07:38< CIA-86> pot-update 20100620 11:07:38< CIA-86> regenerated doc files 20100620 11:07:45< alink> hi 20100620 11:08:05< Lcawte> hello 20100620 11:08:28< boucman> hello Lcawte 20100620 11:09:24< Crab_> hi, alink 20100620 11:09:35< alink> 'lo Crab_ 20100620 11:10:29< alink> So, does the svn 'mishap' is resolved (or will stay like that) ? Asking before git-svn fetch it 20100620 11:10:51< CIA-86> ivanovic * r43615 /trunk/data/multiplayer/scenarios/2p_Caves_of_the_Basilisk.cfg: another change in the files was forgotten... 20100620 11:12:23-!- Lcawte is now known as Lcawte|Out 20100620 11:12:50< boucman> alink: the macos thing ? it was reverted 20100620 11:14:25< Crab_> alink: you can try to abuse --ignore-paths to skip fetching the boost things :) 20100620 11:15:01< alink> Ok, I will look into that 20100620 11:16:24< alink> It's a pity that svn doesn't allow true undo of a commit 20100620 11:17:26< Crab_> yes, except by dump-filter-restore mess 20100620 11:17:28< alink> I maybe see a method using svndumpfilter, but need to dump the whole thing, filter it and reupload it :-/ 20100620 11:17:39< alink> Crab_: yes that one :) 20100620 11:18:37< Crab_> or 'restore-from-backup and recommit the tail' 20100620 11:23:16-!- grzywacz [~grzywacz@wesnoth/developer/grzywacz] has joined #wesnoth-dev 20100620 11:26:56< mordante> or just accept bad commit happen and leave it as is 20100620 11:27:12< CIA-86> ivanovic * r43616 /trunk/po/ (76 files in 24 dirs): 20100620 11:27:12< CIA-86> svn merge r43614:43611 on po/wesnoth-multiplayer 20100620 11:27:12< CIA-86> reapply pofix.py fixes, reran pot-update 20100620 11:27:28< alink> mordante: yeah, I guess. Seems simpler :-) 20100620 11:27:56< mordante> it's not that big commits are an exception as well... 20100620 11:28:12< alink> and computers are faster every day 20100620 11:28:29< mordante> Ivanovic managed to touch over a 1000 files in the last hour as well ;-) 20100620 11:33:31< alink> yeah these po files changes take as much time (just lest bandwith) 20100620 11:33:37< alink> *less 20100620 11:36:41< alink> Crab_: unless used by WML, this STATE_NOT_MOVED seems quite useless 20100620 11:37:06< Crab_> alink: units which have not moved restore 2hp at the start of turn 20100620 11:37:26< Crab_> alink: and, nowadays, due to legacy reasons, ai can set movement to 0 without actually moving the unit 20100620 11:39:05< alink> normal human movement doesn't use/set it, only attack does it 20100620 11:39:58< Crab_> it can be safely removed if we drop stopunit action from the ai 20100620 11:40:01< alink> in fact, it's always false except when remove_movement_ai() is called 20100620 11:40:53< alink> it should at least be renamed to AI_SOMETHING 20100620 11:40:56< Crab_> but then, we must modify the AI code to use set_user_end_turn() instead of remove_movement_ai() to mark 'I'm done with this unit' 20100620 11:41:40< Crab_> and modify the ai code to avoid the 'movement_left()==0' checks and use some new function which will check the user_end_turn flag, too 20100620 11:41:59< Crab_> and ask the formula ai uses to avoid the movement_left()==0 checks, too 20100620 11:42:06< Crab_> overall, it'll be a good change 20100620 11:42:17< alink> Crab_: seems the proper way to do it. Make the AI uses what humans already use 20100620 11:42:25< Crab_> yes, I agree 20100620 11:42:45< Crab_> more specifically, 'make the ai don't use what humans cannot use' 20100620 11:42:59< alink> yeah that too :) 20100620 11:44:27-!- loonybot [~loonybot@ppp79-139-137-245.pppoe.spdop.ru] has joined #wesnoth-dev 20100620 11:44:27-!- loonybot [~loonybot@ppp79-139-137-245.pppoe.spdop.ru] has quit [Changing host] 20100620 11:44:27-!- loonybot [~loonybot@wesnoth/bot/loonybot] has joined #wesnoth-dev 20100620 11:45:52-!- loonycyborg [~sergey@wesnoth/developer/loonycyborg] has joined #wesnoth-dev 20100620 11:54:00< boucman> Crab_: the ai needs a generic way to "mark units" somehow, though. putting it in the gameplay is a bad idea, but the need is still here... 20100620 11:55:12< alink> boucman: if various states are needed, use WML cutsom states AI_NAMES? 20100620 11:55:15< Crab_> boucman: yes, you're right. I was thinking about making the ai use unit's variables for that 20100620 12:13:19-!- Gallaecio [~Gallaecio@232.158.60.213.dynamic.mundo-r.com] has joined #wesnoth-dev 20100620 12:14:05< Gallaecio> Hi. When you right click on a map, the menu displayed... how is its name in English? Isn't it something like context menu? 20100620 12:15:04< zookeeper> yes, context menu 20100620 12:15:06< CIA-86> alink * r43617 /trunk/src/actions.cpp: Fix attacker still getting resting bonus after using attack with movement_used=0 20100620 12:15:24< Gallaecio> zookeeper: ok, thanks. 20100620 12:15:40< alink> Crab_: ^this clean things before killing STATE_NOT_MOVED 20100620 12:16:33< Crab_> yes 20100620 12:17:05-!- YogiHH [YogiHH@d155179.adsl.hansenet.de] has joined #wesnoth-dev 20100620 12:17:16< alink> I also suspect that it would be better to mark resting=false after each move, instead of checkinh MP==MPmax 20100620 12:17:17-!- YogiHH [YogiHH@d155179.adsl.hansenet.de] has quit [Changing host] 20100620 12:17:17-!- YogiHH [YogiHH@wesnoth/developer/yogihh] has joined #wesnoth-dev 20100620 12:17:31< alink> which will fail for any WML changing MP 20100620 12:17:39< YogiHH> hello 20100620 12:17:46< alink> hi YogiHH 20100620 12:17:56< Crab_> alink: yes, that'll be more robust 20100620 12:17:58< Crab_> hi, YogiHH 20100620 12:18:10< YogiHH> mordante, have you seen my remark about sliders and step_size? 20100620 12:18:41< alink> does move and attack/defend are the only thing which need to remove the resting bonus? 20100620 12:19:32< mordante> YogiHH, it rings a faint bell, could you refresh my memory? 20100620 12:19:55< YogiHH> zookeeper: "Illegal character in map: (_off^_usr) '_off^_usr' " Any idea where that might come from? 20100620 12:20:29< YogiHH> mordante: sliders with step sizes greater than one don't work correct if set_value is called 20100620 12:20:47< Crab_> alink: i'm not sure about units recalled/recruited 20100620 12:21:16< alink> Crab_: yes me too 20100620 12:21:19< alink> I suppose that units healing or giving leaderships should still "rest", right 20100620 12:21:21< Crab_> alink: what if wml changed their hp so they'll have less than maximum.. will they get a resting bonus ? 20100620 12:21:25< zookeeper> YogiHH, well that's the normal void terrain 20100620 12:21:42< zookeeper> used mostly in plenty of MP maps 20100620 12:21:50< alink> Crab_: not that I think that WML can change the resting flag 20100620 12:21:50< zookeeper> no idea why something would consider it illegal though 20100620 12:22:26< Crab_> alink: no, I mean the wml can set their MP to be less than maximum 20100620 12:22:30< Crab_> s/MP/hp 20100620 12:22:44< Crab_> alink: or what about the movement points changes from WML ? 20100620 12:22:46< YogiHH> zookeeper: Well, that's probably because my code tried to take an abbreviation that wasn't appropriate :) 20100620 12:22:53< Crab_> if a unit hasn't moved but WML changed the MP to 0 ? 20100620 12:23:01< mordante> YogiHH, ah yes now I remember, unfortunately I haven't found time to look into it yet 20100620 12:23:09< alink> Crab_: i understand that, I mean WML can also manually tweak the resting bonus 20100620 12:23:22< mordante> YogiHH, in fact had very little Wesnoth time recently and the time I have is mainly used for gsoc 20100620 12:23:30< Crab_> ok 20100620 12:23:55< YogiHH> mordante: ok, np. If i understood things correct, it is a matter of execution order. It seems that within window.pre_show, the slider has not been fully initialized yet. 20100620 12:24:11< alink> Crab_: for recruit/recall, the fact that unit have 0MP left could be considered as if they just moved to gamemap, so they should also lose their resting bonus 20100620 12:24:58< Crab_> so, the unit should have resting bonus only if it hasn't moved+attacked AND has full movement points ? 20100620 12:25:09< mordante> YogiHH, in which way not fully initialized? 20100620 12:25:46< alink> Crab_: IMO only moved+attacked/defend is enough, and remove the resting when really moving 20100620 12:26:45< Crab_> ailnk: well, how will ' for recruit/recall, the fact that unit have 0MP left could be considered as if they just moved to gamemap, so they should also lose their resting bonus' work if we don't check MP ? 20100620 12:26:48< YogiHH> mordante: I might be wrong on that, but i think the layout and positioning code (determining width, height and position) needs to be run to properly initialize step_size. And that seems to happen some time after window.pre_show 20100620 12:27:15< alink> Crab_: I was thinking, add a set_resting(false) in recruit/recall code 20100620 12:27:46< Crab_> alink: also, consider the case of 'WML teleport' - where wml modifies the unit's location and changes it's movement points to 0 20100620 12:28:09< Crab_> alink: if we don't check MP, then the unit will still get the resting bonus 20100620 12:28:21< Crab_> (unless the WML overrides this, of course) 20100620 12:28:43< alink> Crab_: I see no problem, WML teleport may not be a unit real 'action' 20100620 12:28:56< Crab_> but, what are the advantages of removing that MP Crab_: for example an UMC may uses MP for different actions, and they should not kill the resting bonus unless specified 20100620 12:30:44< Crab_> it's the same as "for example an UMC may uses MP for different actions, and they should not retain the resting bonus unless specified", isn't it ? 20100620 12:31:20< Crab_> what is the 'easier to use' for WML writers ? 20100620 12:32:10< alink> Crab_: maybe it's the same, but one has a hidden side-effect (changing something else that MP, both in c++ and in WML) 20100620 12:32:39< Crab_> yes, I agree about 'hidden side effect' part 20100620 12:32:52< Crab_> what about just checking it once, at end of turn, exactly as it is done now ? 20100620 12:33:08< alink> checking MP yes, (as it is now) 20100620 12:33:34< Crab_> but without that AI-related flag, which is to be removed 20100620 12:33:45< mordante> YogiHH, yes placement and layout happens after pre_show 20100620 12:34:02< alink> yes, ok we can continue to do like that and just add few set_resting(false) in few key places 20100620 12:34:31< alink> like move,attack,defend,recruit,recall 20100620 12:34:31< mordante> YogiHH, also not easy to change, but I know the sizing of sliders can be improved 20100620 12:34:36< Crab_> yes, I think that this way it'll be less changes in wml behavior 20100620 12:34:42< mordante> s/can/should/ 20100620 12:34:57< YogiHH> mordante: i see 20100620 12:35:03< alink> Crab_: agreed, it's simpler 20100620 12:35:19< Crab_> also, if we screw up somewhere and the unit will be resting on one computer and not resting on another, we'll still not get a OOS unless the unit has full MP left. 20100620 12:36:48< alink> Crab_: you mean, it's a good thing to make a bug more rare (and thus very hard to find) ;-p 20100620 12:37:22< Crab_> alink: :) hehe 20100620 12:37:36< Crab_> alink: yes, you're right, hiding bugs is not a good thing ) 20100620 12:38:06< alink> Crab_: btw, I don't propose that a unit healing another performs an action and should lose its resting. (because resting and healing happen in the same complex phase) 20100620 12:38:35< Crab_> yes, the code there is more complex that it needs to be, even now :) 20100620 12:39:11< Crab_> otherwise, imagine two healers who have got 'heal 1 hp' ability standing next to each other :) 20100620 12:39:21< Crab_> both eligible for resting) 20100620 12:39:29< alink> indeed :D 20100620 12:41:15< alink> oh, LUA allows to modify the resting bonus value 20100620 12:42:12< alink> WML should also allow to modify some game_config values, at least at the initial loading phase 20100620 12:43:00< Crab_> alink: yes, this would allow to simulate multiple difficulty levels for MP 20100620 12:43:12< Crab_> alink: but this means it has to work not only for initial loading... 20100620 12:43:26< Crab_> alink: since the author might want to show a few dialogs for players to set up options at start 20100620 12:44:04< alink> some game_config values are maybe a bit too sensible to be changed in WML event 20100620 12:44:29< alink> but it would already works for difficulty levels for campaign 20100620 12:44:49< Crab_> for example, what is too sensible ? 20100620 12:45:59< alink> well ,need some serious refresh at least 20100620 12:46:19< alink> for example: terrain_mask_image 20100620 12:46:30< alink> which define hexagon's shape 20100620 12:47:38< alink> Crab_: but indeed, just need to reload what need to be reloaded 20100620 12:48:37< alink> in fact, game_config could use more subtags 20100620 12:50:27< Crab_> alternative - allow scenario to control the game creation screen gui somewhat 20100620 12:50:40< Crab_> that way, those options could be seen/set before game is created 20100620 12:50:48< Crab_> some quiz-like format for that... 20100620 12:50:55< Crab_> (I've got to go, sorry) 20100620 12:51:05< alink> Crab_: ok, bye 20100620 12:51:57-!- Crab_ [~Crab_@wesnoth/developer/crab] has quit [Quit: Leaving.] 20100620 12:58:43-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20100620 12:59:11-!- Blarumyrran [~Blarumyrr@unaffiliated/blarumyrran] has joined #wesnoth-dev 20100620 13:43:31< alink> gabba: As I said when I proposed temporary unit_map modifications, they should be very fast and IMO you should never leave a function's body without restoring real unit_map 20100620 13:44:41< alink> gabba: I understand that leaving the unit_map in a modified state seems to be an easy way to get few UI features for 'free', but it's also an open door for real game bugs. 20100620 13:46:01< CIA-86> fendrin * r43618 /trunk/data/campaigns/Legend_of_Wesmere/maps/ (4 files): LoW maps: Played with the new terrain types. 20100620 13:46:02< alink> gabba: it will also force you to check if any current and future engine/UI functions need to restore unit_map before being executed 20100620 13:47:08< alink> gabba: as an example of such bug: delay shroud update + update shroud allow to update shroud with the planned moves 20100620 13:49:24< alink> I suppose that you could apply unit_map modifiers before each redraw (and directly undo them just after), unit_map modifiers should be much faster that any drawing functions. 20100620 13:50:08< alink> but using fake units and intercepting move hovering seems simpler, and you already need to intercept it 20100620 13:50:58< alink> from the UI point of view, just need to change the sidebar contents and highlighting few stuff 20100620 13:51:43< alink> and only when the mouse change hex (maybe even only when the new hex has a unit), so it's not every frame 20100620 13:53:26< alink> also, temporary unit_map modifications should be so much cheaper than unit_map copy, that I don't see the need of a unit_map cache 20100620 13:55:12< alink> unit moves should just be O(actions) remove/insert into a O(units) std::map of pointers. It's ridiculously tiny compared to all the STL operations needed by redraw, or even invalidation checks 20100620 13:56:51< alink> the only thing needing special care is recruit/kill actions, where you need to move the units between a recruit/kill_cache and the unit_map. To avoid unit construction/destruction 20100620 13:58:22-!- DesertPanther [~Khalid@unaffiliated/desertpanther] has joined #wesnoth-dev 20100620 13:58:24-!- Upthorn [ogmar@adsl-75-26-206-73.dsl.scrm01.sbcglobal.net] has quit [Quit: this quit message is 100% guaranteed not to contain obscenity.] 20100620 13:58:40< alink> I suppose that we also need to add some units temporay changes like changing MP or few flags, but again O(actions) simple fields operation 20100620 13:59:58< alink> and of course, recheck consistency actions only after an action was really executed 20100620 14:00:53< alink> or at some well defined points like end of one action of another player 20100620 14:03:44< alink> gabba: I see that you are still using the ctor/destructor system of temporary_unit_mover, which force you to use pointer stuff to control when they are called 20100620 14:04:15-!- Upth [ogmar@adsl-75-26-206-73.dsl.scrm01.sbcglobal.net] has joined #wesnoth-dev 20100620 14:04:15-!- Upth is now known as Upthorn 20100620 14:04:53< alink> as I said, I think that using do()/undo() functions doing the same thing will give you more simpler control 20100620 14:06:01< alink> the point of such ctor/destructor system is as temporary setter, so external code can just use {temporary_unit_mover; do some stuff} // automatic restore at the end of the block 20100620 14:07:30< alink> using the same concept for wb would give : if (wb.active()) { temporary_wb_executer; do some stuff } 20100620 14:09:10< alink> with: temporary_wb_executer() { for (action::iterator in actions_list) { action.do()} } and ~temporary_wb_executer() { (action::reverse_iterator in actions_list) in actions_list { action.undo()} } 20100620 14:09:26< alink> ^in some bad pseudo-code 20100620 14:10:01-!- lcfseth [~lcfseth@41.225.43.214] has left #wesnoth-dev [] 20100620 14:11:14< alink> ah small correction the correct use is {temporary_setter random_name; do some stuff} 20100620 14:12:41< alink> it's also often handy to add an 'active' flag as in temporary_setter(bool flag) {if (!flag) so nothing else works} 20100620 14:13:58< alink> this allow to avoid the need of {} block stuff. For example: temporary_setter(wb.active()) random_name; do some stuff. stuff will use real or fake unit_map depending of wb.active() 20100620 14:14:49< alink> unit_movement_resetter() works like that 20100620 14:18:25< alink> gabba: sry for the long monologue, but when we chat I have less time to think and study the code :-) 20100620 14:55:18 * Rhonda peeks warily at Espreon and shadowmaster 20100620 14:57:29< Rhonda> What's that talk, I don't get it even from reading the surrounding context. 20100620 14:58:13-!- phlaem [~a@e178085176.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] 20100620 14:58:41-!- phlaem [~a@e178085176.adsl.alicedsl.de] has joined #wesnoth-dev 20100620 15:02:13< alink> zookeeper: about creating unit with "to_variable", is it wanted that we generate name, gender and traits (which need random calls and so MP-sync stuff)? 20100620 15:02:48< alink> ^it is currently like that 20100620 15:03:25-!- Elvish_Pillager [~eli@71-10-224-192.dhcp.oxfr.ma.charter.com] has joined #wesnoth-dev 20100620 15:04:09< alink> zookeeper: hum, nevermind, probably wanted, because I suppose we may want to place it on map later 20100620 15:04:12-!- timotei [~timo@wesnoth/developer/timotei] has joined #wesnoth-dev 20100620 15:13:08-!- Appleman1234 [~Appleman1@CPE-60-226-180-71.qld.bigpond.net.au] has quit [Ping timeout: 245 seconds] 20100620 15:15:24-!- Crab_ [~Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20100620 15:23:02< zookeeper> alink, yep 20100620 15:23:48< zookeeper> alink, the usual use of that is when you want to create a unit and immediately alter some of its variables; without to_variable you'd need to immediately store the unit, poke its variables and unstore, with to_variable you can skip the [store_unit] 20100620 15:24:08< timotei> hello everybody :D 20100620 15:24:14< timotei> Upthorn: hey 20100620 15:24:30< zookeeper> alter == alter or read 20100620 15:24:52< boucman> hey timotei 20100620 15:24:55< boucman> how is it going ? 20100620 15:24:56< alink> zookeeper: ok thanks, and IIRC you wished to stop adding unit_type event for unit created with to_variable 20100620 15:25:12< alink> zookeeper: ^curenlty like tthis 20100620 15:25:14< timotei> well, just finished my exams (I need only one to retake cause I failed it) 20100620 15:25:25< timotei> I'm happy I can start working again on wesnoth :D 20100620 15:26:06< zookeeper> alink, yeah, no reason to add events if the unit is only created into a variable, since the unit just doesn't really exist then. 20100620 15:26:18< timotei> zookeeper: I have a question, you know that I'm working on the eclipse plugin, right? 20100620 15:26:43< timotei> the one with "Umc Content Editor" 20100620 15:27:06< alink> zookeeper: yeah, still make sense. I was just tempted by an easy fix :) 20100620 15:27:34< zookeeper> timotei, yeah, i do 20100620 15:27:44< zookeeper> but i don't really know anything about it yet 20100620 15:28:03< timotei> zookeeper: Ok 20100620 15:28:21< timotei> zookeeper: The thing is, there will be wizards for different things (currently there are for scenario/campaign) 20100620 15:28:45< timotei> do you know who's best in charge to tell me what should each wizard contain? 20100620 15:28:50< timotei> http://wiki.wesnoth.org/BuildingCampaigns 20100620 15:29:01< timotei> this wiki pages are a bit outdated, 20100620 15:29:15< zookeeper> timotei, well, i'm tempted to say me, but... 20100620 15:29:35< timotei> I mean, what tags should be provided to be completed in the wizard, or things like this 20100620 15:32:08< zookeeper> timotei, well, it depends.. 20100620 15:32:54< zookeeper> i'd think anyone with any notable campaign making/maintaining experience would be able to make a list 20100620 15:33:04< zookeeper> weren't you working with fendrin or do i remember wrong? 20100620 15:33:39< timotei> zookeeper: well yes. 20100620 15:34:00< timotei> zookeeper: but wanted to discuss this with you since I know you're the one who has to do a lot with WML things :D 20100620 15:34:06< zookeeper> fair enough 20100620 15:34:20< zookeeper> however i'm kinda busy right now, so i could ping you when i got more time to look into it 20100620 15:34:26< zookeeper> ok? 20100620 15:34:31< timotei> zookeeper: take your time. it's not urgent 20100620 15:34:45< zookeeper> roger 20100620 15:34:55< timotei> I need to do that part in the next 2 weeks, so it's ok 20100620 15:35:00< timotei> thanks 20100620 15:55:57< fendrin> timotei: Hi, welcome back. 20100620 15:56:02< timotei> hey fendrin 20100620 15:57:15< fendrin> timotei: hmmm, campaign making wizard should offer the choice between the different types of campaigns. Multiplayer singleplayer or both. 20100620 15:57:53< fendrin> timotei: or you present one dialogue for each of the types. 20100620 16:02:51-!- Gallaecio [~Gallaecio@232.158.60.213.dynamic.mundo-r.com] has quit [Remote host closed the connection] 20100620 16:07:21< CIA-86> fendrin * r43619 /trunk/data/campaigns/Under_the_Burning_Suns/maps/08_Out_of_the_Frying_Pan.map: UtBS 08: Terrain updates. 20100620 16:09:10< timotei> fendrin: btw, fixed that documentation file :P Kile added the utf8x package even though it wasn't needed 20100620 16:09:50< fendrin> timotei: Cool, that gave me a little problem. 20100620 16:10:19< timotei> :) 20100620 16:10:25< timotei> yeah, I read the logs 20100620 16:31:01-!- timotei [~timo@wesnoth/developer/timotei] has quit [Remote host closed the connection] 20100620 16:55:45-!- dtiger [~dtiger@dynamic-vpdn-93-125-66-45.telecom.by] has quit [Remote host closed the connection] 20100620 17:10:26-!- Gambit [~quassel@pa-67-234-73-7.dhcp.embarqhsd.net] has joined #wesnoth-dev 20100620 17:10:28-!- DesertPanther [~Khalid@unaffiliated/desertpanther] has quit [Read error: Connection reset by peer] 20100620 17:10:54-!- DesertPanther [~Khalid@unaffiliated/desertpanther] has joined #wesnoth-dev 20100620 17:24:37< CIA-86> boucman * r43620 /trunk/data/core/ (42 files in 4 dirs): rewrite the whole bridge logic in order to get it right. Rails now use the same macros as bridges... now to make the stone bridge use them too 20100620 17:29:40< boucman> that commit took me the whole day and a big part of yesterday... 20100620 17:30:33-!- phlaem [~a@e178085176.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] 20100620 17:30:42-!- phlaem [~a@e178085176.adsl.alicedsl.de] has joined #wesnoth-dev 20100620 17:33:26< mordante> kudos boucman for tackling those macros 20100620 17:33:52< boucman> yeah... next step won't be easy, though... 20100620 17:34:45< mordante> guess this step wasn't easy either ;-) 20100620 17:34:52< boucman> horrible... 20100620 17:35:15< mordante> sounds more like my expectations and memories as well 20100620 17:35:21< boucman> it took me a full day to understand that bridges and rails were actually using the same logic for switches, except with different namings 20100620 17:35:30< boucman> and one full day to recode it properly... 20100620 17:36:19< boucman> the great idea was to split the bridge into two macros, one that does the actual hex, and one that does the extra transitions... it was the mixture that made things horrible 20100620 17:36:51-!- apoi [~andi@85-126-180-242.volume.xdsl-line.inode.at] has quit [Ping timeout: 265 seconds] 20100620 17:37:07< boucman> next step is to handle the weird multi-hex transitions of stone bridges, I have no idea what I'll find there... maybe a simple "bridge corner" macro will be enough, maybe I will have to rewrite half of my logic 20100620 17:37:35< mordante> good luck with it 20100620 17:37:37< alink> now make possible to have rails on bridges, or under <:o) 20100620 17:37:54< boucman> alink: hehe 20100620 17:38:20-!- apoi [~andi@85-126-180-242.volume.xdsl-line.inode.at] has joined #wesnoth-dev 20100620 17:38:58-!- Lcawte|Out is now known as Lcawte 20100620 17:39:36-!- crimson_penguin [~ben@wesnoth/developer/crimsonpenguin] has joined #wesnoth-dev 20100620 17:41:15-!- DesertPanther [~Khalid@unaffiliated/desertpanther] has quit [Ping timeout: 240 seconds] 20100620 17:41:26-!- DesertPanther_ [~Khalid@196.205.147.120] has joined #wesnoth-dev 20100620 17:59:35-!- kevg [~kevg@94.232.5.102] has joined #wesnoth-dev 20100620 18:05:44-!- Crab_ [~Crab_@wesnoth/developer/crab] has quit [Quit: Leaving.] 20100620 18:24:57-!- Lastmerlin [~Lastmerli@kalypso.csn.tu-chemnitz.de] has joined #wesnoth-dev 20100620 18:41:11-!- meric [~Eric@124-170-166-78.dyn.iinet.net.au] has quit [Quit: meric] 20100620 18:51:12< AI0867> shadowmaster: I asked him to checkin the *project file*, not the entire maccompilestuff archive... 20100620 18:58:31-!- meric [~Eric@124-170-166-78.dyn.iinet.net.au] has joined #wesnoth-dev 20100620 18:59:12< AI0867> 04:41 < crimson_penguin> that's kinda why I didn't want the project in svn - it requires all those libraries, and stuff to build, and it's just a terrible idea to put that in svn <-- the same thing holds true for windows, but having the projectfiles in the repo allows people who add/move/remove files to update them 20100620 19:00:33< crimson_penguin> yeah, it could be in there, and the other files stay in the zip 20100620 19:12:12-!- meric [~Eric@124-170-166-78.dyn.iinet.net.au] has quit [Quit: meric] 20100620 19:43:21-!- Johannes13 [~Johannes@unaffiliated/johannes13] has joined #wesnoth-dev 20100620 19:44:07-!- Johannes13 [~Johannes@unaffiliated/johannes13] has quit [Read error: Connection reset by peer] 20100620 19:44:13-!- Johannes13 [~Johannes@unaffiliated/johannes13] has joined #wesnoth-dev 20100620 19:45:11-!- Blueblazed [~nick@99.186.64.86] has joined #wesnoth-dev 20100620 19:49:23-!- DesertPanther_ [~Khalid@196.205.147.120] has left #wesnoth-dev ["Leaving"] 20100620 19:52:34-!- timotei [~timo@wesnoth/developer/timotei] has joined #wesnoth-dev 20100620 19:56:23< zookeeper> timotei, ok, i've got time now 20100620 19:56:44< timotei> zookeeper: cool 20100620 19:57:24< timotei> zookeeper: so, what essentially I want, is a list, with tags (just the wml tags - I'll wiki them to know what values they can get and stuff) 20100620 19:57:53< timotei> zookeeper: do you want me to show what's currently in the scenario/campaign wizards? 20100620 19:58:06< zookeeper> yeah, please do, as i said i'm unfamiliar with what you have so far 20100620 19:58:10< timotei> ok 20100620 19:58:49< timotei> -also, it would be nice if that tag value *should* be set by the user (for example, a not mandatory field, but which is very good to be set - 20100620 20:01:03< timotei> ok, writing now the list 20100620 20:02:38< mordante> I'm off bye 20100620 20:02:46< timotei> bye mordante 20100620 20:02:57-!- mordante [~mordante@wesnoth/developer/mordante] has quit [Quit: Leaving] 20100620 20:04:02< zookeeper> timotei, ok, the "required" (technically some can be omitted) keys and tags for a scenario would be: id,next_scenario,name,map_data,turns,[time] (practically always using macros),[side] 20100620 20:04:40< zookeeper> but there's basically no reason to give the impression that you'd want to omit any of those 20100620 20:05:12< timotei> yeah 20100620 20:05:23-!- Crab_ [~Crab_@wesnoth/developer/crab] has joined #wesnoth-dev 20100620 20:06:27-!- Lcawte [lcawte@wikia/wikimedia.Lcawte] has left #wesnoth-dev ["Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is"] 20100620 20:07:54< zookeeper> timotei, for a [campaign] the "required" keys would be id,icon,name,define,first_scenario 20100620 20:08:04< zookeeper> the difficulties can be safely omitted AFAIK 20100620 20:08:43< timotei> zookeeper: http://wesnoth.pastebin.com/74NJuBPJ 20100620 20:14:20< zookeeper> timotei, ok...so is there something else you wanted? 20100620 20:15:01< timotei> no. thanks 20100620 20:16:00< zookeeper> all right 20100620 20:16:05< zookeeper> i don't have eclipse so i can't really try it out now 20100620 20:16:34< timotei> no problem 20100620 20:17:02< zookeeper> uh...the "classic" eclipse download is 163mb? sheesh 20100620 20:17:29< timotei> :D 20100620 20:17:37< timotei> is that much? 20100620 20:18:17< zookeeper> i think 163mb is a lot for anything which doesn't include a lot of media :P 20100620 20:18:29< elias> xcode is over 3GB 20100620 20:18:56< elias> but it's by Apple 20100620 20:19:33< timotei> elias: you're a MAC?:P 20100620 20:19:47-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20100620 20:21:19< elias> not sure, i'm on ubuntu, but use synergy to access my mac and have a tinyvnc to my win7 box :P 20100620 20:22:02< timotei> :) 20100620 20:22:22-!- billynux [be886fb7@wesnoth/developer/billynux] has joined #wesnoth-dev 20100620 20:28:58< alink> esr: btw thanks for the wmllint of colour. The list of keys is colour, colour_lock, fill_colour , border_colour 20100620 20:29:32< alink> I am not sure what to do about macro name 20100620 20:30:31< alink> however most of them seems to be about gui2, so compatibility should not be a too big problem 20100620 20:45:21-!- Blueblazed [~nick@99.186.64.86] has quit [Ping timeout: 265 seconds] 20100620 20:51:48-!- ABCD [~abcd@gentoo/developer/abcd] has quit [Ping timeout: 265 seconds] 20100620 20:52:24-!- haudegen [~user@chello084114021195.15.14.vie.surfer.at] has joined #wesnoth-dev 20100620 20:55:56-!- norbert_ [~norbert@82-171-70-54.ip.telfort.nl] has joined #wesnoth-dev 20100620 20:57:30-!- billynux [be886fb7@wesnoth/developer/billynux] has quit [Ping timeout: 252 seconds] 20100620 21:01:24-!- billynux [be886b28@wesnoth/developer/billynux] has joined #wesnoth-dev 20100620 21:11:04-!- gabba [~gabba@wesnoth/developer/gabba] has joined #wesnoth-dev 20100620 21:14:04-!- loonycyborg [~sergey@wesnoth/developer/loonycyborg] has quit [Quit: I ATE'NT DEAD] 20100620 21:14:41-!- loonybot [~loonybot@wesnoth/bot/loonybot] has quit [Remote host closed the connection] 20100620 21:22:06-!- loonybot [~loonybot@ppp79-139-137-245.pppoe.spdop.ru] has joined #wesnoth-dev 20100620 21:22:06-!- loonybot [~loonybot@ppp79-139-137-245.pppoe.spdop.ru] has quit [Changing host] 20100620 21:22:06-!- loonybot [~loonybot@wesnoth/bot/loonybot] has joined #wesnoth-dev 20100620 21:23:02-!- loonycyborg [~sergey@wesnoth/developer/loonycyborg] has joined #wesnoth-dev 20100620 21:36:41< kevg> Crab_: good evening. I've submitted new version of patch. 20100620 21:36:54< Crab_> hi, kevg 20100620 21:37:14< Crab_> yes, good evening :) I'll take a look 20100620 21:39:17< Crab_> u->has_ability_type("cure") - seems not needed, abilities.cfg has only 'heals' abilities related to healing 20100620 21:40:16< Crab_> 'if(!u.has_ability_type("heals") || u.side()!=current_team().side() || u.movement_left()<=0) {' - put cheapest checks first, i.e. has_ability_type should be last. 20100620 21:40:18-!- Gallaecio [~Gallaecio@232.158.60.213.dynamic.mundo-r.com] has joined #wesnoth-dev 20100620 21:40:42< Crab_> unit_ability_list heal = u.get_affecting_abilities(map_location(10,10),map_location(10,11),"heals");// 2 adjacent(!) locations - hardcoded stuff crept in 20100620 21:42:19< kevg> i don't understand your last remark 20100620 21:42:58< Crab_> I'll get to it later. in general, it's best to not hardcode any locations. 20100620 21:46:55< Crab_> 'if (ability_active(ability, i, loc_) && ability_affects_adjacent(ability, i, direction, loc_)) {' - shouldn't it be 'source' instead of loc_ ? 20100620 21:48:28-!- Gallaecio [~Gallaecio@232.158.60.213.dynamic.mundo-r.com] has quit [Remote host closed the connection] 20100620 21:49:01< kevg> probably yes but i'm not sure 20100620 21:49:10< AI0867> crimson_penguin: do you know *which* files they are? Wesnoth.xcodeproj/project.pbxproj is the obvious one, but are there others that are required? 20100620 21:49:45< Crab_> kevg: returning to 'u.get_affecting_abilities(map_location(10,10),map_location(10,11),"heals");' ... 20100620 21:49:49< Crab_> what if map is 9x9 ? 20100620 21:50:07< kevg> it would't work 20100620 21:50:26< Crab_> yes, you need two dummy adjacent locations in there... but don't hardcode them in. you can use current unit location and any adjacent non-off-map hex 20100620 21:50:51< kevg> ok 20100620 21:52:06< Crab_> 'if((*heal_it->first)["value"] == 4) { healing_rate = 4; }' - better, do a healing_rate = std::max(healing_rate,4); 20100620 21:52:35< Crab_> or, even better, use the value itself 20100620 21:53:07< kevg> i changed loc_ with source. it is still work. 20100620 21:54:05< Crab_> something like ' healing_rate = std::max(healing_rate, (*heal_it->first)["value"] ); ' 20100620 21:58:31< Crab_> also, about the part where you move next to healers... 20100620 21:58:34< crimson_penguin> AI0867: in OS X, the entire Wesnoth.xcodeproj looks like one file 20100620 21:58:47< Crab_> be sure to check if the location you're trying to check is empty 20100620 21:59:04< Crab_> e.g., the locations adjacent to healer can be occupied by units 20100620 21:59:21< Crab_> but, of course, it's not possible to go there :) 20100620 21:59:42< kevg> i think its unnecessary to check it 20100620 21:59:46< Crab_> why ? 20100620 22:00:22< kevg> get_affected_abilities ignores unit on target 20100620 22:00:49< kevg> it just looks for adjacentness 20100620 22:01:34< Crab_> oh, yes, you're right about the fact that it is unnecessary to check it, but for other reasons (we loop over valid destinations, they're not occupied) 20100620 22:01:35< kevg> argh. i talk about another thing. sorry 20100620 22:01:36< crimson_penguin> AI0867: so, it would be very tedious to only have part of it in version control 20100620 22:02:05< kevg> yes, i should check it 20100620 22:02:07< Crab_> btw, you can precalculate near_healer_locs outside of the loop over units 20100620 22:02:15< Crab_> no, you should not check it :) 20100620 22:02:24< Crab_> see the it = get_srcdst().equal_range(u_it->get_location()); part 20100620 22:03:06< Crab_> so, we limited ourselves to locations which were in get_srcdst(), which are valid moves by definition of srcdst 20100620 22:03:31< kevg> ok 20100620 22:03:37< Crab_> in the healers check ( if(h->has_ability_type("heals") && !h->movement_left() && h->side()==current_team().side()) { ), it's also better to do the cheapest checks first 20100620 22:03:39< kevg> i forgot about it 20100620 22:03:49< Crab_> and note that allied healers heal us, too 20100620 22:04:59-!- ABCD [~abcd@gentoo/developer/abcd] has joined #wesnoth-dev 20100620 22:05:06-!- Lastmerlin [~Lastmerli@kalypso.csn.tu-chemnitz.de] has left #wesnoth-dev ["Kopete 0.12.7 : http://kopete.kde.org"] 20100620 22:05:18< Crab_> but, overall, it's good and we can try to test it after those issues are fixed 20100620 22:07:01< Crab_> to test it, we'll just add a hack to the first 'healer' check, to make it work only if our ai has a certain id 20100620 22:07:08< AI0867> crimson_penguin: k 20100620 22:07:17< Crab_> and then, we'll create two ai configs and put them against each other 20100620 22:07:36-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20100620 22:07:49< crimson_penguin> AI0867: Also, the project is setup to reference files in ../ as the "root", so it should ideally be just one directory deep, otherwise things will need to be changed 20100620 22:07:50< Crab_> of course, we'll have to tune things somewhat to make sure healers are in play. 20100620 22:14:18< AI0867> crimson_penguin: I plan to put it in /projectfiles/Wesnoth.pbxproj rather than /MACOSX/Wesnoth.pbxproj 20100620 22:15:29< crimson_penguin> AI0867: it might be nice if it was in its own folder, because it references stuff at ./ but I can definitely see why otherwise that's the place for it to be... 20100620 22:15:59< crimson_penguin> Maybe people can just copy it over to MacOSX from the zip... seems kinda tedious though 20100620 22:23:20< AI0867> could use /macproject, and put a note in /projectfiles... 20100620 22:23:53-!- shadowm_laptop [ignacio@wesnoth/developer/shadowmaster] has joined #wesnoth-dev 20100620 22:27:15< AI0867> s/pbxproj/xcodeproj 20100620 22:29:32-!- billynux [be886b28@wesnoth/developer/billynux] has quit [Ping timeout: 252 seconds] 20100620 22:31:02< boucman> back 20100620 22:31:46-!- Blueblazed [~nick@adsl-99-186-64-86.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20100620 22:32:05< kevg> Crab_: there was a bug in get_affecting_abilities: else if(direction>0) {//second case - affects adjacent. It should be more or equal 20100620 22:34:06< Crab_> good that you've spotted it 20100620 22:34:07-!- Bocom [~Bocom@c-b7cfe255.013-31-6b736412.cust.bredbandsbolaget.se] has quit [Read error: Connection reset by peer] 20100620 22:34:27-!- billynux [~billy@wesnoth/developer/billynux] has joined #wesnoth-dev 20100620 22:35:16-!- Bocom [~Bocom@c-b7cfe255.013-31-6b736412.cust.bredbandsbolaget.se] has joined #wesnoth-dev 20100620 22:40:31-!- norbert_ [~norbert@82-171-70-54.ip.telfort.nl] has quit [Quit: Leaving] 20100620 22:41:00-!- Aethaeryn [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #wesnoth-dev 20100620 22:45:47-!- Blarumyrran [~Blarumyrr@unaffiliated/blarumyrran] has quit [Quit: Lahkun] 20100620 22:48:58-!- timotei [~timo@wesnoth/developer/timotei] has quit [Ping timeout: 264 seconds] 20100620 22:51:25-!- Lastmerlin [~Lastmerli@kalypso.csn.tu-chemnitz.de] has joined #wesnoth-dev 20100620 22:53:49< kevg> Crab_: submitted 20100620 22:53:55< Crab_> ok 20100620 22:54:04< Crab_> looking... 20100620 22:56:04< Crab_> a small thing: 'u.side()!=current_team().side()' -> u.side()!=get_side() 20100620 22:58:24< Crab_> another small thing: std::pair it = get_srcdst().equal_range(u_it->get_location()); -> you can use u.get_location() here , since you've already got a unit& (btw, const unit& would be a bit better) 20100620 22:58:56< Crab_> also, const_iterator is better to use if you don't plan to modify anything :) 20100620 23:00:53< Crab_> also, you can use resources::map->on_board(loc) to check if location is on board. 20100620 23:01:08< Crab_> s/map/game_map 20100620 23:01:26< kevg> on board means it is eligible location? 20100620 23:01:37< Crab_> yes, it's almost the same you wanted to check 20100620 23:01:54< Crab_> return loc.valid() && loc.x < w_ && loc.y < h_; 20100620 23:01:59< Crab_> but prettier 20100620 23:02:27< CIA-86> ai0867 * r43621 /trunk/ (7 files in 3 dirs): Check in xcode project files and a note about its location in /projectfiles 20100620 23:04:27-!- elias [allefant@allegro/developer/allefant] has quit [Ping timeout: 240 seconds] 20100620 23:04:31< Crab_> '// Look for places near static (which has no moves) healers -> you can add allied healers, too, (no matter if they are static or not) 20100620 23:05:56-!- PK [~pk@r74-192-30-57.bcstcmta01.clsttx.tl.dh.suddenlink.net] has joined #wesnoth-dev 20100620 23:05:56< Crab_> also, villages cure poison 20100620 23:06:14-!- ancestral [~ancestral@mobile-166-137-140-030.mycingular.net] has joined #wesnoth-dev 20100620 23:08:51< Crab_> also, some healers *slow* poison, stopping it's progress, instead of curing 20100620 23:09:15< Crab_> those have 'poison=slowed' in the ability description 20100620 23:09:40< Crab_> it's worse than cure, but at least to hit points are lost 20100620 23:09:41< kevg> when poison is slowed it deals 4 dmg instead of 8? 20100620 23:09:44< Crab_> 0 20100620 23:09:52< Espreon> Ivanovic: Sorry about that. 20100620 23:09:52< kevg> hm 20100620 23:10:00 * Espreon tends to forget about MP... 20100620 23:10:04< Crab_> elvish shaman is the example 20100620 23:10:12< Espreon> alink: Around? 20100620 23:10:21< alink> Espreon: yep 20100620 23:10:29-!- ancestral [~ancestral@mobile-166-137-140-030.mycingular.net] has quit [Client Quit] 20100620 23:10:32< Crab_> kevg: so, you need to change the get_new_healing_phase::get_healing_amount function 20100620 23:10:45< Espreon> alink: Would you please get to converting that fake dash? 20100620 23:11:03< Crab_> kevg: try treating 'curing' the poison as worth more than 8hp 20100620 23:11:12< Crab_> kevg: and 'slowing' as 8 hp 20100620 23:11:29< Crab_> and there's no extra effect if unit is in village - he's cured of poison or healed. 20100620 23:11:46 * alink start to really bored with this dash thing 20100620 23:11:54< alink> Espreon: I quickly look now, if I find it easily, I change it 20100620 23:12:00< Espreon> OK. 20100620 23:12:04-!- ancestral [~ancestral@mobile-166-137-140-030.mycingular.net] has joined #wesnoth-dev 20100620 23:12:30< alink> Espreon: Do you still have the screenshot 20100620 23:12:36< Crab_> kevg: also, if unit has <9 hp left, the poison damage is lower. e.g, if unit has 3 hp left, he'll only lose 2hp because of poison 20100620 23:12:52< Espreon> alink: Lemme retake it... 20100620 23:16:09< Espreon> alink: I still don't have my screenshot-taking software back, so, from the mainscreen, just go to Multiplayer -> Start Local Game -> OK, and look at "X's game -" 20100620 23:18:42< alink> Espreon: Oh my god, this is horrible, there is 5 pixels missing :o 20100620 23:18:48< alink> Espreon: so, em dash there ? 20100620 23:18:53< Espreon> Yes. 20100620 23:18:57-!- Appleman1234 [~Appleman1@131.181.100.150] has joined #wesnoth-dev 20100620 23:18:58-!- ancestral [~ancestral@mobile-166-137-140-030.mycingular.net] has quit [Quit: Colloquy for iPhone - http://colloquy.mobi] 20100620 23:19:10-!- elias [allefant@blazer.kirenet.com] has joined #wesnoth-dev 20100620 23:19:10-!- elias [allefant@blazer.kirenet.com] has quit [Changing host] 20100620 23:19:10-!- elias [allefant@allegro/developer/allefant] has joined #wesnoth-dev 20100620 23:20:06< alink> mmh , I must code something like "if (username == Espreon) use dash...." <:o) 20100620 23:20:36< alink> with some 99% probability just for fun 20100620 23:21:39 * Espreon rolls his eyes 20100620 23:21:43< boucman> night all 20100620 23:21:47< Espreon> Goodnight. 20100620 23:21:47-!- boucman [~rosen@wesnoth/developer/boucman] has quit [Quit: Leaving.] 20100620 23:25:21< CIA-86> alink * r43622 /trunk/src/multiplayer_connect.cpp: Use em dash in "Game lobby: user's name - map's name", as requested by Espreon 20100620 23:25:33< alink> Finally, the last one 20100620 23:25:53< alink> Espreon: I insist, it was the last one. 20100620 23:26:19< Espreon> Yay! 20100620 23:26:24< Crab_> non-ascii symbols in c++ code are ugly... ( 20100620 23:26:51< Espreon> Crab_: We already had non-ASCII symbols in there for a while. 20100620 23:26:55< Espreon> So, who gives a damn? 20100620 23:27:19< alink> Crab_: yes I should use the unicode value :-) 20100620 23:27:26< Espreon> Besides, I'm tired of conforming to Norman-worshipping standards. 20100620 23:27:53< alink> Crab_: but I agree 20100620 23:28:03< Crab_> alink: well, an alternate way is to use a translation macro 20100620 23:28:47< Espreon> Well, it would only suit certain Normans, but, whatever. 20100620 23:29:01< alink> Crab_: you mean #define EM_DASH "—" ? 20100620 23:29:37< Crab_> alink: no, that gettext translation macro ... 20100620 23:30:34< alink> Crab_: but how do we indicate that the default US language must use em dash ? 20100620 23:31:17< Crab_> alink: hasn't it got a translation for it ? 20100620 23:31:17-!- elias [allefant@allegro/developer/allefant] has quit [Ping timeout: 260 seconds] 20100620 23:31:18< Espreon> Can we just not worry about this? You can take the so-called sacrilege out of your precious code once the transition to GUI2 is complete. 20100620 23:31:30< Crab_> Espreon: no, we don't worry :) 20100620 23:32:02< alink> Crab_: at least the last one was a simple append_to_title(" — " + level_["name"].t_str()); 20100620 23:32:03-!- elias [allefant@blazer.kirenet.com] has joined #wesnoth-dev 20100620 23:32:03-!- elias [allefant@blazer.kirenet.com] has quit [Changing host] 20100620 23:32:03-!- elias [allefant@allegro/developer/allefant] has joined #wesnoth-dev 20100620 23:32:49< alink> which means that this stupid dash will be in all language, even if they don't have the same punctuation rule :-/ 20100620 23:33:58-!- Johannes13 [~Johannes@unaffiliated/johannes13] has quit [Ping timeout: 245 seconds] 20100620 23:34:04 * alink is really tired of this stuff, afk 20100620 23:34:10< Espreon> Yes, so just leave everything alone. 20100620 23:37:53-!- zookeeper [~l@wesnoth/developer/zookeeper] has quit [] 20100620 23:38:25 * Espreon fails to understand why everyone starts to act like big babies once someone mixes (the ostensibly divine) ASCII and UTF-8. 20100620 23:38:52< Crab_> well, once in a while some tool messes up things when it encounters UTF-8 input 20100620 23:39:07< Espreon> Well, then those tools are made of fail. 20100620 23:39:10< Crab_> and time is spent to resolve the issue 20100620 23:39:21< Crab_> yes, but almost every day we use such tools 20100620 23:39:43< Espreon> Sigh... 20100620 23:40:01< Crab_> for example, wesnoth's irclog contains a wrong value for that dash alink has sent 20100620 23:40:16< Espreon> O RLLY> 20100620 23:40:18< Crab_> my irc client has displayed it correctly, so the server has transmitted it correctly 20100620 23:40:19< ABCD> Espreon: the "default" locale is "C", which uses the ANSI_X3.4-1968 charmap -- which means that only 0-127 are legal characters 20100620 23:40:19< Espreon> *? 20100620 23:40:56< Crab_> Espreon: but, at the www.wesnoth.org/irclogs you'll see the '20100620 23:32:02< alink> Crab_: at least the last one was a simple append_to_title(" — " + level_["name"].t_str()); ' 20100620 23:41:18< Crab_> and even worse thing for the ^ message ;0 20100620 23:41:19< Espreon> Renders fine here. 20100620 23:41:28< ABCD> Crab_: that's because your browser defaulted to ISO-8859-1 for the page -- if you tell the browser that it's UTF-8, then there's no such issue 20100620 23:41:39< kevg> Crab_: is it ok now http://wesnoth.pastebin.com/pCwDDMi2 ? 20100620 23:41:52< Crab_> ABCD: yes 20100620 23:41:58< Espreon> Yes, and we all know that Latin-1 is made of fail, for it beeth a Norman-worshipping standard. 20100620 23:42:41< ABCD> but if my LC_ALL is set to "C", I expect that no characters not in ASCII will be output by anything; Wesnoth now breaks that 20100620 23:43:16< Ivanovic> ABCD: honestly, IIRC most distributions these days default to unicode active 20100620 23:43:30< Ivanovic> so yeah, even with the C locale i'd expect that unicode messages are displayed correctly 20100620 23:43:35< Espreon> http://en.wikipedia.org/wiki/Latin-1#Coverage ... Old English being almost completely covered by Latin-1 my ass. What about eth, wynn, and yogh? 20100620 23:43:47-!- PK [~pk@r74-192-30-57.bcstcmta01.clsttx.tl.dh.suddenlink.net] has quit [Quit: Java user signed off] 20100620 23:44:15< ABCD> C locale uses ANSI_X3.5-1968, or 7-bit ASCII; if I want UTF-8, I use C.UTF-8 20100620 23:44:27< Crab_> kevg: no, if resources::game_map->gives_healing(it->get_location()) is true, then you'd add 0 to the result. 20100620 23:44:29< Espreon> Also, what about the fuþorc? 20100620 23:45:02-!- YogiHH [YogiHH@wesnoth/developer/yogihh] has quit [Quit: ChatZilla 0.9.86 [Firefox 3.6.3/20100401080539]] 20100620 23:45:57< Crab_> ABCD: btw, the irclogs server has not sent a proper content-type header for UTF-8 20100620 23:45:57< kevg> so, when unit is in village we can't heal him and cure him? 20100620 23:46:11< Crab_> kevg: well, he'll be healed (or cured) by village 20100620 23:46:13< Ivanovic> Crab_: of course it does not send a correct content type header 20100620 23:46:27< Ivanovic> Crab_: since you view a plaintext file that does not have any html content header defined 20100620 23:46:28< Ivanovic> ;) 20100620 23:46:45< Crab_> Ivanovic: nothing prevents apache from sending a http header according to server config :) 20100620 23:46:52< Crab_> Ivanovic: even if it can't guess by extension 20100620 23:47:12< Ivanovic> Crab_: you should mention this to Rhonda, maybe we can get this improved 20100620 23:47:13< Ivanovic> ;) 20100620 23:47:13< Crab_> kevg: there is nothing extra that we'll do for unit in village 20100620 23:47:50-!- fendrin [~fabi@wesnoth/developer/fendrin] has quit [Read error: Connection reset by peer] 20100620 23:48:38< Crab_> it's 'AddDefaultCharset UTF-8' option 20100620 23:50:00< kevg> Crab_: http://wesnoth.pastebin.com/RJqFLaxR ? (removed one || condition from healing if. 20100620 23:50:10-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20100620 23:51:07< kevg> Crab_: but i think its better now to merge 2 if's 20100620 23:51:15< Crab_> kevg: almost ok. yes, merge two ifs 20100620 23:51:26< Crab_> kevg: also, the second if is only if NO poison 20100620 23:51:48< Crab_> since, if we cure/slow poison, no healing 20100620 23:56:21< kevg> Crab_: http://wesnoth.pastebin.com/e1Gs2xAm 20100620 23:56:42< kevg> no 20100620 23:57:05< kevg> i should remove cures from if 20100620 23:57:25< Crab_> yes 20100620 23:57:43-!- haudegen [~user@chello084114021195.15.14.vie.surfer.at] has quit [Ping timeout: 245 seconds] 20100620 23:57:54< kevg> other things is ok? 20100620 23:58:16< Crab_> for mainline, yes... if it's not 'cures', then it's 'slows' for mainline abilities --- Log closed Mon Jun 21 00:00:01 2010