--- Log opened Mon Nov 23 00:00:21 2009 --- Day changed Mon Nov 23 2009 20091123 00:00:21-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Read error: 104 (Connection reset by peer)] 20091123 00:01:58-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 00:09:45-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Remote closed the connection] 20091123 00:10:01< CIA-55> shadowmaster * r39892 /trunk/data/campaigns/Under_the_Burning_Suns/scenarios/08_Out_of_the_Frying_Pan.cfg: Use TC conversion for the Flesh Golem image in scenario 8 20091123 00:12:57< CIA-55> alink * r39893 /trunk/src/unit_frame.cpp: Clean and optimize a bit progressive_() 20091123 00:13:56< alink> boucman: ^less faster that i hoped. Still an improvement but I thought that the 1 pass intead of 2 would help more 20091123 00:14:07-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 00:14:47< alink> boucman: could use a double check, the logic should be the same but the first version was a bit weird. 20091123 00:21:14-!- Espreon_ [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20091123 00:21:15-!- wesbot changed the topic of #wesnoth-dev to: 1.7.9-1.8beta2 *maybe* planned for tomorrow | string/feature freeze active! | 72 bugs, 248 feature requests, 9 patches | logs: http://irclogs.wesnoth.org/ | Don't paste on IRC! Use a pastebin: http://wesnoth.pastebin.com | http://imagebin.org 20091123 00:21:37-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit [Nick collision from services.] 20091123 00:21:43-!- Espreon_ is now known as Espreon 20091123 00:32:52< alink> boucman: I really like your idea to "parse on demand" animation strings. It could really speed up loading (only need to copy a string instead of parsing into STL struct) 20091123 00:33:56< alink> and will allow to avoid parsing all the special anims almost never used, which will be a gain of speed and memory 20091123 00:34:51< alink> and since we never start many anims at the same time, the first parsing done at real-time will not be a problem 20091123 00:47:35-!- grzywacz [n=grzywacz@wesnoth/developer/grzywacz] has quit [Remote closed the connection] 20091123 00:49:06< CIA-55> ivanovic * r39894 /trunk/po/ (wesnoth-anl/pl.po wesnoth-dm/pl.po): updated Polish translation 20091123 00:49:32-!- thespaceinvader [n=chatzill@wesnoth/artist/thespaceinvader] has quit ["night all"] 20091123 00:51:02-!- esr [n=chatzill@static-71-162-243-5.phlapa.fios.verizon.net] has joined #wesnoth-dev 20091123 00:54:46< Ivanovic> esr: you saw my pings today? 20091123 00:55:07< Ivanovic> esr: please have a look at your logs eg regarding the wmllint stuff we mentioned 20091123 00:55:22< Ivanovic> (just grepping a) for your nick and b) for wmllint should do the trick) 20091123 00:55:49< esr> I saw the wmllint complaints. What I didn't see is a specification of what wmllint ough to be doing that it isn't. 20091123 00:56:16-!- noy_ [n=Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20091123 00:59:01-!- noy [n=Noy@wesnoth/developer/noy] has quit [Read error: 110 (Connection timed out)] 20091123 00:59:01-!- noy_ is now known as noy 20091123 01:01:09-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has quit [Read error: 145 (Connection timed out)] 20091123 01:03:17< Ivanovic> esr: convert old syntax to new syntax eg for ANL 20091123 01:03:56< Ivanovic> esr: this conversion is also what the complaint in bug 14815 is about: https://gna.org/bugs/index.php?14815 20091123 01:04:41< esr> Er...I have a pangoize() function that doers that. But there's a problem of knowing where it is proper to apply that function. 20091123 01:04:59< Ivanovic> esr: have a look at data/multiplayer/scenarios 20091123 01:05:17< esr> Is ANL in that? 20091123 01:05:20< Espreon> "There ought to be a directive!" 20091123 01:05:23< Ivanovic> (that is eg grep recursivly for "@ in there, those cases should be converted to the new markup) 20091123 01:05:33< Ivanovic> yes, ANL is in there 20091123 01:05:41< esr> OK. 20091123 01:05:53< Ivanovic> it consists of the scenario file itself plus the helper macros in the extra subfolder 20091123 01:06:12< Ivanovic> the map is "4p_A_New_Land.cfg" the folder is ANL_something 20091123 01:06:37< Ivanovic> ANL_utils 20091123 01:07:26< Ivanovic> (yes, it is probably intentional that the "markup" code is not translateable which makes lots of sense and thus fixing the probs does not break the string freeze either 20091123 01:07:28< Ivanovic> ;) 20091123 01:07:42< Ivanovic> i got to head off to bed now, n8 20091123 01:15:32< esr> Ivanovic: The ANL cases cannot be fixed without a string melt. Absoltely cannot. 20091123 01:16:47-!- noy [n=Noy@wesnoth/developer/noy] has quit [Connection timed out] 20091123 01:28:26-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit [Remote closed the connection] 20091123 01:29:26-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20091123 01:44:23-!- [Relic] [n=[Relic]@99-58-54-211.lightspeed.milwwi.sbcglobal.net] has joined #wesnoth-dev 20091123 01:45:21< [Relic]> Hello :) 20091123 01:47:19-!- AnMaster [n=AnMaster@unaffiliated/anmaster] has quit [Network is unreachable] 20091123 01:52:41-!- loonycyborg [n=sergey@wesnoth/developer/loonycyborg] has quit ["Zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"] 20091123 01:53:11-!- allefant [n=elias@allegro/developer/allefant] has quit [Read error: 145 (Connection timed out)] 20091123 01:53:23-!- loonybot [n=loonybot@wesnoth/bot/loonybot] has quit [Remote closed the connection] 20091123 02:31:07-!- ardesh [n=ardesh@92.206.115.246] has quit ["Quis custodiet ipsos custodes"] 20091123 02:35:19-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20091123 02:36:39-!- ardesh [n=ardesh@port-92-206-115-246.dynamic.qsc.de] has joined #wesnoth-dev 20091123 02:51:56-!- alink [n=alink@wesnoth/developer/alink] has quit [Remote closed the connection] 20091123 02:55:01-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Remote closed the connection] 20091123 02:56:21-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 03:09:44-!- ardesh [n=ardesh@port-92-206-115-246.dynamic.qsc.de] has quit [Read error: 110 (Connection timed out)] 20091123 03:09:52-!- noy [n=Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20091123 03:10:04-!- ardesh [n=ardesh@port-92-195-42-52.dynamic.qsc.de] has joined #wesnoth-dev 20091123 03:17:22-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has quit [Remote closed the connection] 20091123 03:24:16-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20091123 03:29:38-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Remote closed the connection] 20091123 03:40:23-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit ["WRYYYYYYYYYYYYYYYYYYYY!"] 20091123 04:21:47-!- Ivanovic_ [n=ivanovic@dtmd-4db2faa6.pool.mediaWays.net] has joined #wesnoth-dev 20091123 04:24:00-!- Chusslove [n=Chusslov@brsg-d9befc81.pool.mediaWays.net] has quit [Read error: 110 (Connection timed out)] 20091123 04:24:43-!- SonIcco__ [n=SonIcco@pD95134E6.dip0.t-ipconnect.de] has joined #wesnoth-dev 20091123 04:30:12-!- Chusslove [n=Chusslov@brsg-d9bee68d.pool.mediaWays.net] has joined #wesnoth-dev 20091123 04:37:59-!- Ivanovic [n=ivanovic@wesnoth/developer/ivanovic] has quit [Read error: 113 (No route to host)] 20091123 04:39:03-!- SonIcco_ [n=SonIcco@pD9512681.dip0.t-ipconnect.de] has quit [Read error: 110 (Connection timed out)] 20091123 04:39:46-!- Ivanovic_ is now known as Ivanovic 20091123 04:55:44-!- dtiger [n=dtiger@dynamic-vpdn-93-125-62-122.telecom.by] has joined #wesnoth-dev 20091123 05:20:53< CIA-55> esr * r39895 /trunk/data/tools/wmllint: Ignore concatenation signs when checking for missopellings. 20091123 05:24:15< CIA-55> esr * r39896 /trunk/data/multiplayer/scenarios/ANL_utils/ANL_help.cfg: Panoize some easy cases. 20091123 05:31:49-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 20091123 05:34:33-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20091123 06:04:32-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 06:14:48-!- crimson_penguin [i=40c93cd3@wesnoth/developer/crimsonpenguin] has quit ["Page closed"] 20091123 06:30:20-!- Zarel [n=Zarel@c-75-72-160-179.hsd1.mn.comcast.net] has joined #wesnoth-dev 20091123 06:34:38-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has quit [Read error: 104 (Connection reset by peer)] 20091123 06:38:02-!- Blueblaze [n=nick@99.158.46.90] has joined #wesnoth-dev 20091123 06:53:04-!- [Relic] [n=[Relic]@99-58-54-211.lightspeed.milwwi.sbcglobal.net] has quit ["Leaving"] 20091123 07:04:31-!- teaser [n=tsr@h-37-106.A254.priv.bahnhof.se] has left #wesnoth-dev ["Ex-Chat"] 20091123 07:05:13-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 07:24:38-!- Zarel [n=Zarel@160.94.47.16] has joined #wesnoth-dev 20091123 07:34:00-!- Zarel_ [n=Zarel@x-134-84-252-187.uofm-secure.wireless.umn.edu] has joined #wesnoth-dev 20091123 07:34:05-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit [Connection timed out] 20091123 07:45:27-!- Zarel_ is now known as Zarel 20091123 08:04:25-!- zookeeper [n=l@88-148-251-223.bb.dnainternet.fi] has joined #wesnoth-dev 20091123 08:22:56-!- ettin_ [n=jorda@wesnoth/developer/ettin] has quit [Read error: 104 (Connection reset by peer)] 20091123 08:25:15-!- ettin [n=jorda@wesnoth/developer/ettin] has joined #wesnoth-dev 20091123 08:46:21-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 08:48:21-!- Zarel [n=Zarel@x-134-84-252-187.uofm-secure.wireless.umn.edu] has joined #wesnoth-dev 20091123 08:56:08-!- AnMaster [n=AnMaster@unaffiliated/anmaster] has joined #wesnoth-dev 20091123 10:17:43-!- zookeeper [n=l@88-148-251-223.bb.dnainternet.fi] has quit [] 20091123 10:30:23-!- Blueblaze [n=nick@99.158.46.90] has quit [Read error: 110 (Connection timed out)] 20091123 10:32:08-!- zookeeper [n=l@wesnoth/developer/zookeeper] has joined #wesnoth-dev 20091123 11:09:19< Ivanovic> esr: you mean can not be *automatically* be fixed without a string melt, by hand they can be fixed! 20091123 11:48:58-!- BroodKiller [n=Jakobs@BIOTECH-18-123.biotech.ug.gda.pl] has joined #wesnoth-dev 20091123 11:52:29< Soliton> multiline strings cannot be properly converted since the old markup was line based. 20091123 12:07:31< Ivanovic> argh, okay, this sucks 20091123 12:07:45< Ivanovic> then it is a clear case of "remove markup and add TODO block" 20091123 12:09:39-!- loonybot [n=loonybot@79.139.138.110] has joined #wesnoth-dev 20091123 12:10:30-!- loonycyborg [n=sergey@79.139.138.110] has joined #wesnoth-dev 20091123 12:17:13-!- noy [n=Noy@wesnoth/developer/noy] has quit [] 20091123 12:18:07-!- Chusslove [n=Chusslov@brsg-d9bee68d.pool.mediaWays.net] has quit [Read error: 110 (Connection timed out)] 20091123 12:38:36-!- mordante [n=mordante@87.215.201.26] has joined #wesnoth-dev 20091123 12:39:00< mordante> servus 20091123 12:40:23< mordante> Ivanovic, it is possible in gui2 to do centering automatically ;-) 20091123 12:40:48< Ivanovic> mordante: them, uhm, could you switch the "end turn" and "end scenario" buttons to work this way? 20091123 12:40:50< Ivanovic> ;) 20091123 12:41:03< mordante> shadowmaster, thanks for the report, I think I know what's wrong with the dialog 20091123 12:41:49< mordante> Ivanovic, I just need to convert that part of the game to gui2... 20091123 12:42:04< mordante> I only fear that just will take a while ;-) 20091123 12:42:08< Ivanovic> okay 20091123 12:43:02< mordante> I hope to find more time to work on it, but have been quite busy lately :-( 20091123 13:22:10-!- BroodKiller [n=Jakobs@BIOTECH-18-123.biotech.ug.gda.pl] has quit ["Leaving."] 20091123 13:26:07< Ivanovic> off to uni, cu 20091123 13:47:40-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 13:48:44-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 13:55:34< CIA-55> fendrin * r39897 /branches/fendrin_gui_stuff/ (4 files in 3 dirs): Grey out units the player can't afford to recruit. 20091123 14:03:19-!- Zarel [n=Zarel@134.84.252.187] has joined #wesnoth-dev 20091123 14:04:56-!- dtiger [n=dtiger@dynamic-vpdn-93-125-62-122.telecom.by] has quit [Read error: 110 (Connection timed out)] 20091123 14:11:33-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 14:13:29< esr> Ivanovic: hre? 20091123 14:15:17< loonycyborg> No. He's in 'uni' :P 20091123 14:21:11< CIA-55> esr * r39898 /trunk/data/tools/wmllint: Bugfixes for pangoization and handling of stringfreeze option. 20091123 14:28:44-!- dtiger [n=dtiger@93.125.68.95] has joined #wesnoth-dev 20091123 14:31:39-!- isaac [n=isaac@41.Red-79-152-149.dynamicIP.rima-tde.net] has quit [Read error: 110 (Connection timed out)] 20091123 15:14:57-!- SonIcco__ [n=SonIcco@pD95134E6.dip0.t-ipconnect.de] has quit [Remote closed the connection] 20091123 15:22:08-!- Crab_ [i=crab@wesnoth/developer/crab] has joined #wesnoth-dev 20091123 15:28:44< CIA-55> esr * r39899 /trunk/data/ (5 files in 3 dirs): Hand-patch some Pango conversions that wmllint couldn't get right. 20091123 15:39:19< CIA-55> esr * r39900 /trunk/data/ (118 files in 37 dirs): Reindent mainline. 20091123 15:42:31< CIA-55> esr * r39901 /trunk/po/wesnoth-anl/en_GB.po: 20091123 15:42:31< CIA-55> Update en_GB for new ANL strings. 20091123 15:42:31< CIA-55> -This line, and those below, will be ignored-- 20091123 15:42:31< CIA-55> wesnoth-anl/en_GB.po 20091123 15:53:58-!- alink [n=alink@wesnoth/developer/alink] has joined #wesnoth-dev 20091123 15:54:08< alink> hi 20091123 15:54:19< Crab_> hi alink 20091123 15:54:25< alink> hello Crab_ 20091123 15:55:40< alink> Crab_: btw did you already implemented the "is_not()" trick for the "avoid" filter in AI? and if not, do you want that i try it? 20091123 15:56:34< Crab_> alink: no, I haven't done so yet. feel free to do so. 20091123 15:56:59< alink> Crab_: ok will take a look 20091123 15:58:33< alink> Crab_: also, if i want to create a new test AI just using a different parameter than another one. Is there a way to get such parameter from the ai.cfg file without wrtiting all the get/set functions? 20091123 15:59:13< alink> something like : if ai_parameter["test_key"]="yes" do something new 20091123 16:00:28< alink> for example i saw get_agression() function, but i would want a get("agression") 20091123 16:01:11< alink> is it already possible? 20091123 16:01:28< Crab_> alink: where do you want to use this parameter ? 20091123 16:01:42< Crab_> 'everywhere in the ai' ? 20091123 16:01:51< Crab_> or in specific part of c++ code only ? 20091123 16:03:19< alink> for example, i want to replace an hardcoded value and compare the resulting new AI to the old one. But i wish just replace an "agression=4.0" by "aggression=get("agression")" and then just write a new ai.cfg without needing to write/copy more cpp stuff 20091123 16:04:12< alink> or more precisely, if i want to keep compatibilty "agression= get("new_agression") == yes ? 10.0 : 4.0 " 20091123 16:04:48< alink> yes, value is harcoded in c++ only 20091123 16:05:05< alink> but i could also use such mechanism to activate new code-path 20091123 16:05:44< Crab_> ok. then, for such a hack, you need to modify one of the ai contexts in src/ai/contexts.cpp 20091123 16:06:01< alink> that is to write get/set function ? 20091123 16:06:29< Crab_> either make that a new aspect, or just modify ai::readonly_context_impl::readonly_context_impl constructor and ai::readonly_context_impl::to_config() 20091123 16:07:32< Crab_> the reason for parameters being 'aspects' is to allow any such parameter to be specified per time-of-day/turn basis, and to abstract away the calculation of the parameter 20091123 16:07:38< alink> mmmh adding/finding a function to acess the ai config would be enough 20091123 16:07:59< Crab_> no. you will also need to add proper serialization :) 20091123 16:08:28< alink> i understand, but that's not needed for my "easy test of tweak" 20091123 16:08:54< Crab_> well, for you test, I suggest going another way 20091123 16:09:46< Crab_> for example, let's say that you're going to modify src/ai/testing/ca_testing_move_to_targets.cpp 20091123 16:10:21< Crab_> then, note that testing_move_to_targets_phase::testing_move_to_targets_phase constructor gets a config 20091123 16:11:01< Crab_> that config is the contents of [candidate_action] WML tag 20091123 16:11:50< Crab_> so, if you want a 'local' parameter, then it's very easy - just add something to that [candidate_action] and parse it in the candidate_action's constructor 20091123 16:11:57< Crab_> same thing with stages. 20091123 16:12:25< alink> seems very good, exactly the kind of hack i was looking for, thanks 20091123 16:12:54< Crab_> on the other hand, if you want a 'global' parameter, you should put it into one of the ai contexts - preferrably, into readonly_context. and it should be made an 'aspect'. 20091123 16:13:34< alink> 'global'? 20091123 16:13:37< Crab_> there's a distinction in there - local parameters are kept local, global parameters are wrapped in aspects. 20091123 16:13:52< alink> local to what? 20091123 16:14:07< alink> that specific AI, AI side, ..? 20091123 16:14:31< Crab_> local to the part of the ai you're modifying 20091123 16:14:45< alink> ok, that what i need 20091123 16:14:51< alink> *is 20091123 16:15:13< Crab_> i.e. if you modify a candidate action, parsing the parameter in CA's constructor, and saving it in CA's to_config, then that parameter is 'known' only by that candidate action, only accessible by the code in that candidate action. 20091123 16:15:49< Crab_> and, by 'global' I mean that those parameters which are accessible from ai::readonly_context, which is available almost everywhere in the 'ai for specific side' 20091123 16:16:07< Crab_> and, 'global' parameters should take the form of an 'aspect' 20091123 16:17:00< Crab_> this allows a uniform way of modifying/accessing/specifying on time-of-day & turn basis/abstracting away the implementation of the calculation of the parameter from the interface to 'get' such a parameter. 20091123 16:17:08< Crab_> and aspects are typed. 20091123 16:17:27< alink> for the moment i am just aiming at the harcoded values in the targetting phase, so that seems enough 20091123 16:17:33< Crab_> yes 20091123 16:17:50< Crab_> and, in 1.9, the number of global aspects will be reduced 20091123 16:19:19< Crab_> i.e. I'm going to get rid of recruitment_pattern, number_of_possible_recruits_to_force_recruit, recruitment_ignore_bad_combat, recruitment_ignore_bad_movement, and a lot of other global stuff (it will remain, as 'local' stuff) 20091123 16:19:42< alink> btw these aspect are always key, can we make an aspect read a [tag] and load its contents in a structure ? 20091123 16:20:03< Crab_> alink: we can add an new aspect which does just that :) 20091123 16:20:17< alink> i could see various uses of that 20091123 16:20:36< Crab_> say, as a typesafe_aspect, where structure is any type you wish. 20091123 16:20:43< Crab_> it's very easy to add such an aspect 20091123 16:20:46< alink> for example a [debug] aspect/tag where i would put my tweaked value 20091123 16:20:54< alink> *values 20091123 16:21:23< Crab_> should that aspect be named 'debug' ? 20091123 16:21:42< CIA-55> esr * r39902 /trunk/data/core/units.cfg: Add two spelling exceptions. 20091123 16:21:51< alink> or something else 20091123 16:22:27< Crab_> what the 'structure' should be ? 20091123 16:22:30< alink> depend if it's the only [tag] aspect 20091123 16:22:49< alink> a map or a even a config 20091123 16:22:58< Crab_> both are easy 20091123 16:23:03< Crab_> let it be a 'config' 20091123 16:23:37< alink> one othe use could be [agression_to] troll=5 elves=4 ... [/agression_to] 20091123 16:24:04< alink> just a radome example 20091123 16:24:10< alink> *random 20091123 16:24:12< Crab_> that's useful only for debug purposes :) 20091123 16:24:56< alink> yes, but when/if a debug look good/usefull, we can make it a real aspect used by the ai 20091123 16:24:57< Crab_> the way to handle '[aggression_to] troll=5 elves=4 ... [/aggression_to]' is to modify aggression aspect to return not a double, but a factory, which takes a target and returns a double. 20091123 16:26:02< alink> I don't know about factoey, but i am sure that i can find other example where grouping keys in a [tag] make sense 20091123 16:26:36< alink> specially for a WML based game :-) 20091123 16:26:37< Crab_> for example, 'avoid' aspect already returns a factory (terrain_filter is a factory for a set of locations) 20091123 16:26:57< Crab_> aspect's value can be any C++ type. 20091123 16:27:09< alink> these factories seems indeed powefull 20091123 16:27:27< Crab_> so, for me, if we need to group keys, we should group them in a c++ class which is backed by a config. 20091123 16:27:44< Crab_> this way, that c++ class can handle preprocessing/compilation/caching of that config value 20091123 16:28:37< Crab_> each global concept should be a separate aspect 20091123 16:29:41< alink> if i understand, we could also make a factory which return the value of key by parsing a config object 20091123 16:29:45< Crab_> yes 20091123 16:30:13< Crab_> for 'debug', just using 'config' is probably enough 20091123 16:30:32< alink> and use it as model for new stuff, and if usefull specialize it to be more efficient if needed (with caching etc) 20091123 16:30:37< Crab_> yes 20091123 16:30:57< alink> seems good 20091123 16:31:11< Crab_> we can even use a config for start, and specialize it later, if we feel the need to do so - no WML changes are needed for that, as 'types' is a c++ concept only 20091123 16:32:07< Crab_> such delegation is also important because it allows to use different languages to calculate the value of parameter 20091123 16:32:38< Crab_> i.e. we can easily make an aspect which returns a c++ object by parsing a config object and using lua to calculate something from it :) 20091123 16:32:44< Crab_> the caller won't notice anything :) 20091123 16:33:04< Crab_> and the WML user won't notice anything, too :) 20091123 16:33:20< CIA-55> esr * r39903 /trunk/data/tools/wmllint: Fix a string-quote test. 20091123 16:33:46 * alink needs to start study more this area, it seems to be a very interesting design to code 20091123 16:34:17< alink> i will start by looking around this is_not() 20091123 16:34:18< Crab_> for example, candidate actions can be coded both in c++ and in formula ai 20091123 16:34:43< Crab_> and, if someday we add support for lua-based ai, we can easily make candidate actions to be coded in lua 20091123 16:35:21< Crab_> this'll allow to use c++/fai/lua side-by-side. say, use c++-based targeting phase CA and a lua-based combat phase CA in a single candidate action evaluation loop. 20091123 16:36:53< alink> a frankenstein AI ! 20091123 16:38:35< Crab_> to do this, one only needs to code a 'lua ai support engine' which is basically a stateful object in the context of the ai for specific side, which has collection of functions which take a config and return a 'ai piece' (stage, candidate action, aspect, goal,engine) 20091123 16:42:12< alink> btw, when all of this will be ready enough, what do you think of organizing AI competion to stimulate user-creation there ? 20091123 16:42:21< alink> (maybe a FPI) 20091123 16:43:20< alink> I thuoght about that when reading http://games.slashdot.org/story/09/11/12/1729217/StarCraft-AI-Competition-Announced 20091123 16:45:22< ardesh> nice 20091123 16:46:07< Crab_> well, at the moment it's not ready enough. both c++ code and formula_ai code do not allow sufficiently easy ability to 'program' the ai. 20091123 16:46:22< Crab_> I was thinking about proposing 'implement a lua engine for wesnoth AI' as a GSoC-2010 project and mentoring it to ensure it's completed. and then, organizing a competition will be a good thing. 20091123 16:49:31< alink> yeah good lua support would be cool to interest new competiter 20091123 16:50:06< alink> *competitors 20091123 16:52:38< Crab_> yes. adding such support is not a rocket science - just several well-defined steps. 1) expose game state (readonly_context) to lua code 2) expose action handlers ('move,attack,recruit,recall,stop' actions from readwrite_context) to lua code 20091123 16:52:57< Crab_> 3) add a src/ai/composite/engine_lua.?pp which will take config snippets and return c++ objects which will act as wrappers to lua-based candidate actions/stages/aspects 4) modify aspects code to make translation from/to lua objects less expensive 20091123 16:53:44< alink> and nice way to read unit and map infos (but that's not AI specific) 20091123 16:53:44< Crab_> 5) (optional) somehow prohibit modification of game state via lua handlers (prohibit stuff such as wesnoth.fire() ) 20091123 16:54:13< Crab_> 'and nice way to read unit and map infos' - that's part of (1) 20091123 16:54:26< alink> indeed 20091123 16:57:02< Crab_> so, that's easy enough. Experienced "c++ & lua" dev should be able to do a 'first working version' in a week. 20091123 16:58:15< alink> even less if we provide a 'first basic working version' as a tutorial to tweak 20091123 16:59:18< Crab_> most of the work is a proper (1). 20091123 16:59:26< Crab_> (4) and (5) are optional 20091123 17:00:21< Crab_> (2) is very simple - just call a c++ function when lua function is called, translating the arguments. 'traslation via config' is already done by silene in wesnoth.fire, btw 20091123 17:00:47< Crab_> (3) is just some wrapper stuff - it's enough to do it for stages and candidate actions 20091123 17:03:23< Crab_> in (1), for a base ai, it's needed to access the 1.1) our side number 1.2) game map info, 1.3) team info, 1.4) units info 1.5) scenario info such as income and time of day 20091123 17:04:09< alink> future GSoCers, take notes ! 20091123 17:04:51-!- mordante [n=mordante@87.215.201.26] has quit ["Leaving"] 20091123 17:09:38< Crab_> alink: wrote it down in http://wiki.wesnoth.org/LuaAI and in NotSoEasyCoding pages. 20091123 17:10:07-!- Netsplit card.freenode.net <-> irc.freenode.net quits: loonycyborg 20091123 17:10:12-!- loonycyborg [n=sergey@79.139.138.110] has joined #wesnoth-dev 20091123 17:11:52 * Crab_ wonders if anything good will happen if he writes a 'volunteers wanted to implement Lua support for wesnoth's AI' forum post in Coder's Corner 20091123 17:12:10< alink> oh one of my IRC quote is on the wiki 20091123 17:12:25< Crab_> several of your IRC quotes 20091123 17:13:13< Crab_> you're free to delete/modify it, of course:) 20091123 17:13:21< alink> ah yes indeed first and last line, and then you added some minor details between them ;-p 20091123 17:13:31< Crab_> yeah, right :)) 20091123 17:15:03< Crab_> alink: note that silene has already done some of (1) for other purposes 20091123 17:18:59< alink> maybe hunt volunteers from Lua-centred site 20091123 17:27:36< Crab_> maybe. but, for now, I'll wait till 1.8 is out 20091123 17:28:14< Crab_> I need to show at least some respect to the feature freeze :) 20091123 17:28:36< alink> :) 20091123 17:36:46-!- allefant [n=elias@allegro/developer/allefant] has joined #wesnoth-dev 20091123 17:54:02-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20091123 18:09:34-!- Zarel [n=Zarel@x-128-101-236-169.uofm-secure.wireless.umn.edu] has joined #wesnoth-dev 20091123 18:15:21-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 18:21:15-!- wesbot changed the topic of #wesnoth-dev to: 1.7.9-1.8beta2 *maybe* planned for tomorrow | string/feature freeze active! | 71 bugs, 248 feature requests, 9 patches | logs: http://irclogs.wesnoth.org/ | Don't paste on IRC! Use a pastebin: http://wesnoth.pastebin.com | http://imagebin.org 20091123 18:25:26< Espreon> Hooray... I stumbled upon an assert... 20091123 18:26:00< Crab_> Espreon: congratulations! where ? 20091123 18:26:07< Espreon> In my campaign... 20091123 18:26:09< Espreon> :I( 20091123 18:26:15< Espreon> *:( 20091123 18:26:29< Espreon> It was working a week ago... 20091123 18:26:31< Espreon> Oh well... 20091123 18:27:42< loonycyborg> In case if someone wants to know more about the assert, look in the logs of #wesnoth-umc-dev :P 20091123 18:30:00< Espreon> Hmmmm... just throwing the events doesn't cause the assert for some reason... 20091123 18:30:34< Espreon> loonycyborg: In scenario two, throw 'battle-setup' and 'arrival-serqitum'... in that order... 20091123 18:31:40< loonycyborg> How exactly one throws an event? 20091123 18:32:22< Espreon> First activate debug mode. 20091123 18:32:36< Espreon> Then type throw (or fire) 20091123 18:33:56< Espreon> Should I create an entry for this bug on Gna? 20091123 18:35:46< loonycyborg> If I do as you say assert doesn't happen 20091123 18:35:56< Espreon> Yes. 20091123 18:36:18< Espreon> Activating the events the normal way *does* cause the assert... 20091123 18:36:21< Espreon> ... yes... 20091123 18:44:39< Ivanovic> hi 20091123 18:44:45< Espreon> Hello. 20091123 18:44:51< Crab_> hi Ivanovic 20091123 18:45:22< Ivanovic> Crab_: chrber (german translation maintainer) asked me yesterday how to get into the ai debug console or how this thing is called 20091123 18:45:34< Ivanovic> (he prefers to see things ingame before just translating word by word) 20091123 18:47:10< Crab_> formula_ai console is accessible by pressing "f" in debug mode (launch with -d or activate via :debug ) 20091123 18:47:40< Crab_> if there's a specific phrase, tell me about it and I'll say how to get to it. 20091123 19:02:16-!- EdB [n=edb@19.153.82-79.rev.gaoland.net] has joined #wesnoth-dev 20091123 19:05:25-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20091123 19:07:29-!- gabm [n=gabm@72.0.221.218] has joined #wesnoth-dev 20091123 19:08:27< Espreon> https://gna.org/bugs/index.php?14826 — Enjoy. 20091123 19:08:34-!- grzywacz [n=grzywacz@wesnoth/developer/grzywacz] has joined #wesnoth-dev 20091123 19:09:53-!- alink [n=alink@wesnoth/developer/alink] has quit [Remote closed the connection] 20091123 19:11:21-!- mordante [n=mordante@wesnoth/developer/mordante] has joined #wesnoth-dev 20091123 19:11:30-!- boucman [n=rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20091123 19:11:36< mordante> servus 20091123 19:12:12< Espreon> Hello mordante. 20091123 19:12:18< mordante> hi Espreon 20091123 19:17:31-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has quit [Read error: 60 (Operation timed out)] 20091123 19:17:39-!- lizard_r [n=Miranda@W9f31.w.pppool.de] has joined #wesnoth-dev 20091123 19:18:49-!- Zarel [n=Zarel@beholder.cs.umn.edu] has joined #wesnoth-dev 20091123 19:32:44-!- mjs-de [n=mjs-de@vpw.wh.uni-dortmund.de] has joined #wesnoth-dev 20091123 19:34:07-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20091123 19:35:47-!- gabm1 [n=gabm@64.235.212.158] has joined #wesnoth-dev 20091123 19:36:04< boucman> hey all 20091123 19:37:08< Ivanovic> before anyone asks: no release today! 20091123 19:37:09< Ivanovic> ;) 20091123 19:37:20-!- EdB [n=edb@19.153.82-79.rev.gaoland.net] has quit [Remote closed the connection] 20091123 19:37:23< Espreon> Grand. :) 20091123 19:40:15< mordante> I didn't want to ask... the topic says tomorrow ;-P 20091123 19:46:54-!- BroodKiller [n=Jakobs@chello089072117162.chello.pl] has joined #wesnoth-dev 20091123 19:48:40< BroodKiller> is #wesnoth-dev for map bug reports as well? 20091123 19:50:32< loonycyborg> If they're mainline then yes. 20091123 19:50:50-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has quit [Success] 20091123 19:51:12-!- gabm [n=gabm@72.0.221.218] has quit [Read error: 113 (No route to host)] 20091123 19:51:23< BroodKiller> well, I'm not sure if it is intentional but the village guards in the first mission of Liberty can be both triggered by enemy and own units 20091123 19:53:40< BroodKiller> it is not a bug per se, I admit, but sort of a soft exploit 20091123 19:54:33< BroodKiller> this happened to me when I was playing in the last stable 20091123 20:02:08< Soliton> zookeeper: ^ 20091123 20:03:00< boucman> Ivanovic: who should aI ask to ban a spam nick on the wiki ? 20091123 20:03:15< boucman> (name is OrlimOnace in case i loose it) 20091123 20:06:41< Crab_> boucman: Aethaeryn, Zookeeper, ShikadiLord 20091123 20:07:17< boucman> yes ? 20091123 20:07:52< Crab_> boucman: all of them can block a user on a wiki 20091123 20:10:47< boucman> oh :) thx 20091123 20:11:01< boucman> zookeeper: around ? 20091123 20:11:56-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit ["This computer has gone to sleep"] 20091123 20:16:40-!- mjs-de [n=mjs-de@vpw.wh.uni-dortmund.de] has quit [Read error: 113 (No route to host)] 20091123 20:31:21-!- mjs-de [n=mjs-de@vpw.wh.Uni-Dortmund.DE] has joined #wesnoth-dev 20091123 20:34:23-!- noy [n=Noy@wesnoth/developer/noy] has joined #wesnoth-dev 20091123 20:44:42< mordante> I'm off bye 20091123 20:45:18-!- mordante [n=mordante@wesnoth/developer/mordante] has quit ["Leaving"] 20091123 20:53:02-!- gabm1 [n=gabm@64.235.212.158] has left #wesnoth-dev [] 20091123 20:54:14< zookeeper> boucman, yeah 20091123 20:54:29< zookeeper> BroodKiller, IIRC it's intentional 20091123 20:54:42< boucman> zookeeper: could you please ban OrlimOnace from the wiki ? (spam) 20091123 20:55:54< zookeeper> yeah, done 20091123 20:56:26< boucman> thx 20091123 20:56:49< zookeeper> but there's probably a gazillion spam edits there unless someone has been dealing with them for the last couple of months 20091123 20:58:07< Crab_> zookeeper: Aethaeryn has blocked many. see http://wiki.wesnoth.org/Special:Ipblocklist 20091123 20:59:37< zookeeper> BroodKiller, so how is it exploitable? because you get extra units to fight with or because you get them on your recall list? 20091123 21:00:01< zookeeper> if the latter, then i guess i could just make the player get those units in their recall list if they're never triggered 20091123 21:00:44-!- SonIcco [n=SonIcco@217.81.52.230] has joined #wesnoth-dev 20091123 21:03:53< boucman> Crab_: you didn't merge test_targeting an normal AI in your latest update ? 20091123 21:06:15< Crab_> yes and no. it is only used in first arc of LoW. 20091123 21:06:39< Crab_> via {ai/aliases/stable_singleplayer.cfg} in [side] 20091123 21:08:25< Crab_> boucman: btw, if you read today's irclogs, you might had noticed that I've talked about lua-based ai components (with alink) a bit. as a result of the discussion, I've added http://wiki.wesnoth.org/LuaAI to NotSoEasyCoding list 20091123 21:08:41-!- kitty_ [n=kitty@e180201077.adsl.alicedsl.de] has joined #wesnoth-dev 20091123 21:09:18< boucman> i had seen the page being creadted in the wiki RSS, but hand't read it yet 20091123 21:13:46< Crab_> boucman: and, as http://wesnoth.terraninfo.net/index.php?dim1=ai_ident_me&dim2=my_side&dim3=map&latest_svn_only=yes shows, for ai-vs-ai on cynsaun battlefield, side2 is stronger regardless of where side2 is. 20091123 21:14:57< Crab_> 'Cynsaun Battlefield X' is that map with 'swapped' side positions 20091123 21:15:03< boucman> i'm still not sure i understand why, but ok 20091123 21:15:05< Crab_> so, now, I've got a theory that this is because side2 can counter-recruit to side1 *scouts*, thus, winning scout-vs-scout skirmishers on outlying villages 20091123 21:15:17< boucman> oh, now I understand what you're saying 20091123 21:16:06< boucman> Crab_: we could do a "blind recruit" AI to see if that corrects the difference 20091123 21:20:11< Crab_> yes, we can add a switch to 'ignore the units that we cannot see' during recruitment combat analysis.. 20091123 21:21:01< boucman> or play with fog :P 20091123 21:21:20< Crab_> boucman: *and* play with fog :) 20091123 21:21:44< Crab_> today, during recruitment, ai sees all units on the field. 20091123 21:21:51< boucman> why and ? 20091123 21:21:54< boucman> oh,ok 20091123 21:22:11< Crab_> we need both 'fog' and 'don't cheat' parts :) 20091123 21:22:34< boucman> Crab_: or just not check you hypothesis at this point :P 20091123 21:22:42< Crab_> )) 20091123 21:23:08< Crab_> ... and just play vs ai to see what it does... 20091123 21:23:40< boucman> what I meant is that there might be better usage of your time at this point, esp since recruitement is already being rewritten 20091123 21:23:43-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Read error: 104 (Connection reset by peer)] 20091123 21:23:58< boucman> (like RCA ing the default fighting phase...) 20091123 21:24:39< Crab_> well, at this point, I think that I'll get rid of default ai for the entire LoW 20091123 21:24:50< boucman> sounds good to :) 20091123 21:24:51-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 21:24:55< Crab_> and collect bugs :) 20091123 21:25:47< Crab_> and, if all goes well, enable 'fallback to RCA-based ai' instead of 'fallback to default ai' as 'upgrade of old ai config' procedure. this will mean that only old saves will use default ai after that. 20091123 21:26:03< Crab_> (or those scenarios with explicit usage of old default ai) 20091123 21:26:17< boucman> sounds good :) 20091123 21:27:42-!- faryshta [n=faryshta@201.124.46.153] has joined #wesnoth-dev 20091123 21:41:01-!- giusef [n=giusef@unaffiliated/giusef] has joined #wesnoth-dev 20091123 21:42:20-!- zookeeper [n=l@wesnoth/developer/zookeeper] has quit [] 20091123 21:44:14-!- yann [n=dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has joined #wesnoth-dev 20091123 21:47:58< BroodKiller> zookeeper: it gives you extra units to fight in a situation where you shouldn't get them (because you stopped the Pillagers from getting near the village) 20091123 21:51:01-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit ["WRYYYYYYYYYYYYYYYYYYYY!"] 20091123 22:01:53< BroodKiller> not that it's of strong importance - 2 more thugs/footpads doesn't make a lot of difference 20091123 22:02:11< BroodKiller> it's just that I thought I'd ask if it was not overlooked by a chacne 20091123 22:02:15< BroodKiller> *chance 20091123 22:07:56-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20091123 22:10:28-!- dtiger [n=dtiger@93.125.68.95] has quit [Remote closed the connection] 20091123 22:15:37-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit ["WRYYYYYYYYYYYYYYYYYYYY!"] 20091123 22:30:00< shadowmaster> Living bats with the undead trait? 20091123 22:30:32-!- Blueblaze [n=nick@adsl-99-158-46-90.dsl.hstntx.sbcglobal.net] has joined #wesnoth-dev 20091123 22:31:33< BroodKiller> sounds cool ;) They would be non-dead rather than un-dead in such a situation, I guess... 20091123 22:32:26-!- yann [n=dwitch@nan92-1-81-57-214-146.fbx.proxad.net] has quit [Remote closed the connection] 20091123 22:33:17-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Remote closed the connection] 20091123 22:34:36-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 22:35:13-!- lizard_r [n=Miranda@wesnoth/umc-dev/developer/lizard] has quit ["Saurian Augur - I'll heal you by 4 hp if you leave next to me"] 20091123 22:36:06< CIA-55> shadowmaster * r39904 /trunk/ (11 files in 3 dirs): 20091123 22:36:06< CIA-55> Remove the Undead trait from several custom bat units in TRoW; Undead is 20091123 22:36:06< CIA-55> not a race trait since many versions 20091123 22:36:52< shadowmaster> not cool, it made my Assassin useless. 20091123 22:37:14-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Connection reset by peer] 20091123 22:37:44< Crab_> [note to wml editors: don't mess with shadowmaster's assasins :) ] 20091123 22:38:50-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 22:38:52-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20091123 22:40:37-!- EdB [n=edb@79.88.117.108] has joined #wesnoth-dev 20091123 22:41:49-!- stikonas [n=and@wesnoth/translator/stikonas] has quit [Read error: 104 (Connection reset by peer)] 20091123 22:43:26-!- stikonas [n=and@bcm-131-111-216-119.girton.cam.ac.uk] has joined #wesnoth-dev 20091123 22:44:55-!- grzywacz [n=grzywacz@wesnoth/developer/grzywacz] has quit [Remote closed the connection] 20091123 22:46:08-!- Espreon [n=espreon@wesnoth/developer/espreon] has quit ["WRYYYYYYYYYYYYYYYYYYYY!"] 20091123 22:55:18-!- Espreon [n=espreon@wesnoth/developer/espreon] has joined #wesnoth-dev 20091123 23:08:35-!- BroodKiller [n=Jakobs@chello089072117162.chello.pl] has quit ["Leaving."] 20091123 23:08:42-!- ilor [n=ilor@wesnoth/developer/ilor] has joined #wesnoth-dev 20091123 23:19:30< Soliton> http://forum.wesnoth.org/viewtopic.php?f=4&t=27866 i wonder if en_GB is more trouble than it is worth since those issue pop up all the time. 20091123 23:20:00-!- giusef [n=giusef@unaffiliated/giusef] has quit ["exit (-1);"] 20091123 23:24:15< Ivanovic> Soliton: yeah, i get this impression, too 20091123 23:27:53-!- faryshta [n=faryshta@201.124.46.153] has quit [Remote closed the connection] 20091123 23:34:07-!- Zarel [n=Zarel@nat-portal-160-94-47-16.uofm.wireless.umn.edu] has joined #wesnoth-dev 20091123 23:34:59-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit [Remote closed the connection] 20091123 23:35:46-!- EdB [n=edb@79.88.117.108] has quit [Remote closed the connection] 20091123 23:37:35-!- Zarel [n=Zarel@134.84.223.238] has joined #wesnoth-dev 20091123 23:41:39-!- Zarel [n=Zarel@warzone2100/developer/Zarel] has quit [Client Quit] 20091123 23:41:48-!- ilor_ [n=ilor@wesnoth/developer/ilor] has joined #wesnoth-dev 20091123 23:44:13< boucman> night all 20091123 23:44:24< Crab_> night :) 20091123 23:44:25-!- boucman [n=rosen@wesnoth/developer/boucman] has quit ["Leaving."] 20091123 23:49:06-!- ilor [n=ilor@wesnoth/developer/ilor] has quit [Read error: 60 (Operation timed out)] 20091123 23:58:55-!- boucman [n=rosen@wesnoth/developer/boucman] has joined #wesnoth-dev 20091123 23:59:04-!- boucman [n=rosen@wesnoth/developer/boucman] has left #wesnoth-dev [] --- Log closed Tue Nov 24 00:00:32 2009