Back to Home / #openttd / 2014 / 01 / Prev Day | Next Day
#openttd IRC Logs for 2014-01-18

---Logopened Sat Jan 18 00:00:34 2014
00:22-!-Guest4148 [] has joined #openttd
00:23-!-Guest4148 [] has quit []
00:56-!-Eddi|zuHause [] has quit []
00:56-!-Eddi|zuHause [] has joined #openttd
01:18-!-andythenorth [] has joined #openttd
01:34-!-Randominty [~Randomint@] has joined #openttd
01:50-!-Flygon_ [] has joined #openttd
01:50-!-Flygon [] has quit [Read error: Connection reset by peer]
01:52-!-sla_ro|master [slamaster@] has joined #openttd
02:42-!-andythenorth [] has quit [Quit: andythenorth]
02:43-!-andythenorth [] has joined #openttd
02:43-!-andythenorth [] has quit []
03:00-!-adf88 [] has joined #openttd
03:04-!-andythenorth [] has joined #openttd
03:40-!-kais58 is now known as kais58|AFK
03:40-!-kais58|AFK is now known as kais58
03:42-!-Pensacola [] has joined #openttd
03:47<andythenorth>this pixa stuff isn't crap
03:48<andythenorth>it's just a bit mental
03:55-!-Pereba [] has joined #openttd
03:58-!-valhallasw [] has joined #openttd
04:08<andythenorth>if you saw a codebase with pipelines and modules, what would you think their relationship was?
04:09<dihedral>dependencies :-P
04:11-!-Midnightmyth [] has joined #openttd
04:14-!-Pereba [] has quit [Quit: Quit Message sponsored by AdiIRC -]
04:15-!-Pereba [] has joined #openttd
04:16-!-oskari89 [] has joined #openttd
04:35-!-andythenorth [] has quit [Quit: andythenorth]
04:38-!-Progman [] has joined #openttd
04:38-!-andythenorth [] has joined #openttd
04:45-!-sla_ro|master [slamaster@] has quit []
04:52-!-Alberth [~hat@2001:980:272e:1:be5f:f4ff:feac:e11] has joined #openttd
04:52-!-mode/#openttd [+o Alberth] by ChanServ
04:53<andythenorth>lo Alberth
04:54<@Alberth>hi hi
05:02<andythenorth>Alberth: does it sound like bad style to have a package called 'graphics_modules' :P
05:02<andythenorth>it does strictly, tbh, contain modules
05:03<@Alberth>i'd probably call it "graphics" or so, but the name is not so bad imho
05:03<andythenorth>it's kind of conflating modules
05:03<andythenorth>I have a graphics pipeline, which is modular
05:03<andythenorth>the modules happen to be implemented as python modules, which is a coincidence ;P
05:04<andythenorth>I can't find a synonym for module
05:04<@Alberth>I have no problems with modules containing other modules, without giving meta-names, but I do a lot of recursive programming
05:05<@Alberth>you can also see it as a module providing you graphics. That is uses modules on its own is purely internal
05:07<@Alberth>but if you prefer to see it as a collection of graphics-thingies, that's a valid viewpoint as well
05:08<andythenorth>I dislike naming confusions :)
05:08<andythenorth>but I am short on words
05:08<andythenorth>so graphics_modules will do
05:10<andythenorth>I could call it 'arbitrarily_combinable_modular_graphics_processing_pipeline_components'
05:10-!-Haube [] has joined #openttd
05:12<@Alberth>just "components" ?
05:13<Eddi|zuHause>just name them X, XX, ...
05:13<Eddi|zuHause>i probably still have a disk with files like that :p
05:16<andythenorth>I have employed people who name their variables 'a', 'b', 'c' etc
05:16<andythenorth>because 'long variable names run slower'
05:18<Eddi|zuHause>and if a black cat crosses your screen your program crashes?
05:21<andythenorth>it was mostly flash actionscript, so quite plausibly yes
05:28<@Alberth>I II III IV V ... :)
05:44-!-lugo [] has quit [Quit: I'm using a Free IRC Bouncer from BNC4FREE -]
05:50-!-lugo [] has joined #openttd
05:52-!-Extrems [borgs@] has quit [Read error: Connection reset by peer]
05:53-!-Extrems [borgs@] has joined #openttd
06:21-!-Japa_ [~Japa@] has joined #openttd
06:24<andythenorth>improved auto-road construction - show the direction of build?
06:27-!-Japa [~Japa@] has quit [Read error: Operation timed out]
06:30-!-Randominty [~Randomint@] has quit []
06:30<@Alberth>you can drive faster when you move in the same direction as it was built? :)
06:30<@Alberth>afaik we cheat, road and tracks are always laid in the same direction, no matter where you start or end
06:34<Eddi|zuHause><andythenorth> improved auto-road construction - show the direction of build? <-- someone posted sprites for roadbit highlighting on the forum, but nobody ever coded it
06:58<andythenorth>ugh three levels of directory nesting
07:02-!-montalvo [] has joined #openttd
07:26-!-retro|cz [] has joined #openttd
07:31-!-Supercheese [~Superchee@] has quit [Read error: Connection reset by peer]
07:32-!-Supercheese [~Superchee@] has joined #openttd
07:42-!-adf88 [] has quit [Remote host closed the connection]
07:42-!-adf88 [] has joined #openttd
08:12<andythenorth>maybe I've fork-bombed python :P
08:13-!-Djohaal [] has joined #openttd
08:14-!-Aristide [] has joined #openttd
08:14-!-KritiK [] has joined #openttd
08:14<andythenorth>or maybe it just takes a long time to count to 999999999
08:17-!-Japa_ [~Japa@] has quit [Read error: Connection reset by peer]
08:18-!-Japa_ [~Japa@] has joined #openttd
08:18<andythenorth>hmm. For an IO task (writing spritesheets to disk), is there likely to be negligible benefit from using MultiProcessing library?
08:18<andythenorth>or does that depend on my OS and crap
08:19<andythenorth>I guess it can't do any harm :P
08:19<andythenorth>unless it blocks in some horrible unanticipated way, but I doubt it's significant
08:23-!-Pikka [] has joined #openttd
08:24<@Alberth>unless you write big data, you're mostly just filling disk cache which is kept in memory, so writing is quite fast
08:24<@Alberth>assuming you don't use a synchronized file system :p
08:28<andythenorth>seems to work fine :P
08:32<Pikka>what have you done
08:33<andythenorth>I don't know :)
08:33<andythenorth>what did I do :)
08:34<andythenorth>Pikka: for shame, one thing I did was cheat at Euro Truck Simulator
08:34<Pikka>how can you cheat at euro truck simulator?
08:35<Pikka>and I don't know what you did, but "seems to work fine :P" sound like famous last words
08:36<andythenorth>Pikka: like the colour? o_O
08:37<andythenorth>I cheated money, I got bored
08:37-!-adf89 [] has joined #openttd
08:37<Pikka>I prefer yellow myself
08:37-!-adf88 [] has quit [Ping timeout: 480 seconds]
08:38<Pikka>but the point of the game is to drive the truck... money is irrelevant D:
08:38<andythenorth>child number 1 wanted a bigger truck ;)
08:39<andythenorth>and we got a €48,000 fine on one delivery
08:39<andythenorth>there were a few crashes
08:39<andythenorth>I am hoping they do mac ETS 2 this year :P
08:39<andythenorth>they promised it
08:40<andythenorth>meanwhile, back to spriting :P
08:40<Pikka>I realised just how many files my project is going to generate, so my task for the morning is making some kind of meaningful directory structure... fun.
08:42<Pikka> spriting is fun, wot?
08:43-!-frosch123 [] has joined #openttd
08:43<Pikka>good morning frosch123
09:05<Pikka>et tu, planetmaker
09:08<andythenorth>Pikka: I like him
09:08<andythenorth>also, you can do donuts in ETS
09:08<andythenorth>it's not that fun though
09:09<andythenorth># check for __main__ because fork bombs are bad
09:09<andythenorth>if __name__ == '__main__':
09:09<andythenorth>but that means my code doesn't work when called from another module
09:11<scshunt>why would checking for __main__ stop forkbombs?
09:22<Xaroth|Work>if you don't do that
09:22<Xaroth|Work>and that file gets included by something
09:23<Xaroth|Work>your code will be executed
09:23<Xaroth|Work>multiprocessing tends to load files, even if they aren't the intended run-file
09:23<Xaroth|Work>which can cause issues
09:28<andythenorth>so what's the correct thing to do?
09:28<andythenorth>I need to import this module into another module
09:29<Xaroth|Work>use if __name__ == '__main__' for the entrypoint of your software
09:29<Xaroth|Work>where you do like ./ run
09:29<Xaroth|Work> needs that line
09:29<Xaroth|Work>the rest doesn't
09:29<Xaroth|Work>as long as they don't execute stuff by themselves
09:29<andythenorth>so if other people come along and change stuff, and they miss the guard, that's their problem
09:30<Xaroth|Work>the guard is only there to make sure that code doesn't run when you import it
09:30<Xaroth|Work>they can always circumvent it by doing whatever is after the if themselves after they import
09:30<Xaroth|Work>it's common practice that people call a main() function in that if
09:30<Xaroth|Work>so it's still importable and runnable if that is wanted
09:30<Xaroth|Work>it just doesn't do anything by itself
09:33-!-Japa__ [~Japa@] has joined #openttd
09:33<andythenorth>so I call the module with the MP stuff with
09:33<andythenorth>import render_graphics
09:33<andythenorth>so I should wrap that in the guard?
09:33<andythenorth>or I have to fuck around with a main() function in render_graphics?
09:34-!-tokai|mdlx [] has joined #openttd
09:35<Xaroth|Work>I would say a main() function
09:38-!-triad [] has joined #openttd
09:39<andythenorth>so if I have 50% of the functionality wrapped in main(), how do I run the script directly?
09:39<andythenorth>currently I used python src/
09:39<andythenorth>which now fails to do 50% of what's needed
09:39-!-Japa_ [~Japa@] has quit [Ping timeout: 480 seconds]
09:40-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
09:41<andythenorth>it's this again
09:41-!-triad [] has left #openttd []
09:42<Xaroth|Work>if you have the if __name__ == "__main__": thing
09:42<Xaroth|Work>python path/to/
09:43<@Alberth>or make it executable with a #!/usr/bin/python :)
09:43<Xaroth|Work>or that
09:44<andythenorth>it already has a hash bang
09:44<andythenorth>I had to add if __name__ == '__main__': main()
09:44<andythenorth>which seems like excessive beauracracy
09:47<@Alberth>just main() will do, if you never want to import the file
09:47<andythenorth>I do want to import it :)
09:47<andythenorth>if I just do main() then I think I just have Even More Code, with the same fork bomb problem :(
09:48<@Alberth>then you're stuck with excessiveness, or you make a new file: from foo import main; main()
09:49-!-retro|cz [] has quit [Read error: Operation timed out]
09:49<andythenorth>oic :)
09:49<andythenorth>I think I'll do without that
09:49<andythenorth>as I don't understand the fork bomb issue, I'll just live with the excess stuff
09:50-!-Tom_Soft [~id@] has joined #openttd
09:52-!-sla_ro|master [slamaster@] has joined #openttd
09:54<andythenorth>hg merges are non-functional
09:54<andythenorth>just don't do them
09:54<andythenorth>time for git?
09:54<@Alberth>it's worse, imo
09:54<@planetmaker>andythenorth, how are they 'non functional'?
09:55<andythenorth>they are hopeless at resolving conflicts
09:55<andythenorth>and the lack of stash makes it trivial to get into a conflict
09:55<andythenorth>the process for marking a merge complete makes no sense to me
09:55<@planetmaker>s/lack of stash//
09:57<andythenorth>maybe git has made me use version control non-defensively :(
09:57<andythenorth>hg makes it harder to get into 'omg what have you done to the repo'
09:58<andythenorth>but git workflow is much more productive imho
09:58<@planetmaker>uh... no
09:58<@planetmaker>andythenorth, you might want to use a different merge tool maybe?
09:59<@planetmaker>also there's histedit and rebase...
09:59<@planetmaker>and there is hg shelve
09:59<@planetmaker>to temporarily shelve your outstanding changes
10:00-!-yorick [] has joined #openttd
10:00<andythenorth>hg shelve looks handy o_O
10:02<@Alberth>I just make a new clone for every shelve
10:02<@planetmaker>I simply commit and update to the previous rev
10:02<@planetmaker>(and maybe add a bookmark)
10:02<@planetmaker>before updating to the previous rev
10:02<andythenorth>I upped to a previous rev to check something, and screwed myself :P
10:03<@planetmaker>don't do that with outstanding changes
10:03<andythenorth>unsaved changes
10:03<@planetmaker>merging graphics usually is a big pita
10:03<andythenorth>it's hard to remember the right thing to do when you work with 3 different vcs
10:03<andythenorth>I could install git -> hg front end, but I've heard they suck :P
10:04*Alberth confirms
10:04<andythenorth>it's even worse with svn
10:04<andythenorth>I try and totally avoid having to do any work on svn repos now
10:04<@planetmaker>hg -> git is also not exactly excellent
10:04<andythenorth>"commit" is thoroughly likely to get me yelled at with svn
10:04-!-oskari89 [] has quit []
10:04<@planetmaker>hgsubversion (or was it hgsvn?) is quite ok
10:04<@Alberth>I use svn -> hg for making a local copy of the svn repo
10:19-!-Superuser [] has joined #openttd
10:19-!-retro|cz [] has joined #openttd
10:21-!-Superuser [] has quit []
10:21-!-Tom_Soft [~id@] has quit [Ping timeout: 480 seconds]
10:30-!-tokai [] has joined #openttd
10:30-!-mode/#openttd [+v tokai] by ChanServ
10:31-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
10:33-!-tokai|mdlx [] has joined #openttd
10:36-!-Progman [] has quit [Remote host closed the connection]
10:38-!-tokai [] has quit [Read error: Operation timed out]
10:43*andythenorth wonders when the overhead of starting python MP processes outweighs the benefits...
10:44<@Alberth>that's easy, when a single process is faster than a MP implementation
10:44<@Alberth>if you think in terms of programming effort, the balancing point is earlier
10:45<andythenorth>I guess it's empirical then :P
10:46<@Alberth>it's not even constant at a single machine :)
10:46<@Alberth>$ git co --help
10:46<@Alberth>`git co' is aliased to `checkout' <-- git is soooo helpful at times :)
10:47<andythenorth>I am a convert to git
10:47<andythenorth>it's obviously mad
10:47<andythenorth>but it seems to work
10:47<@Alberth>depends on your definition of "work"
10:47<@Alberth>people also claim to be productive with a windows machine
10:48<andythenorth>I've even met some
10:48<Taede>does it count if i edit code on windows, but execute it in linux?
10:49*Alberth wonders whether to start about productivity and editors
10:55-!-Flygon_ is now known as Flygon
10:55<Flygon>Taede: It does
10:55<Flygon>I've worked with Mega Drive devs who dev on Win7 64-bit and Macs
10:55<Flygon>To compile software for execution on the Mega Drive
10:56<Flygon>Getting decent 68k compilers for Apple OS's is a huge pita though
10:58<andythenorth>@calc 8/12
10:58<@DorpsGek>andythenorth: 0.666666666667
10:58<andythenorth>a bit faster with MP
10:59<Pikka>there we go
10:59<andythenorth>nice :)
10:59*andythenorth likes
11:04-!-DarkAceZ [] has quit [Ping timeout: 480 seconds]
11:08<andythenorth>puzzling results
11:08<andythenorth>if I run src/render_nml directly, templating takes 20s with MP, and 13s without
11:09<andythenorth>if I run the makefile, which calls it via a chain of stuff, I get 8s instead of 12s
11:09<andythenorth>with MP
11:09-!-Djohaal_ [] has joined #openttd
11:09-!-Djohaal_ [] has quit []
11:10<Pikka>mm, puzzling results
11:11<andythenorth>resulting puzzles
11:11<@planetmaker>Pikka, your new engines: can you make them look a bit more used?
11:12<@planetmaker>they look so clean :)
11:14*andythenorth waves hands at anyone who knows how to python profile
11:14<andythenorth>these results are odd
11:14<Pikka>:o maybe, planetmaker. but given the size of the sprites you want them to be *reasonably* clean. noise will obscure the shapes.
11:17<@planetmaker>Pikka, I don't mean in a shape-obscuring way. Just more real-coloured (yes, I know, the bad r-word)
11:18-!-tokai|mdlx [] has quit [Read error: Operation timed out]
11:20-!-tokai|mdlx [] has joined #openttd
11:26<frosch123>i think except for the pink, yellow and white one they look already quite dirty
11:26-!-adf89 [] has quit [Ping timeout: 480 seconds]
11:26<frosch123>dirt is only visible on bright colours
11:27<@planetmaker>oh, I also didn't see today's image
11:28<@planetmaker>nice :)
11:28<Pikka>that bright spot on the corner of the roof is annoying me, I've removed it and am re-rendering, whee.
11:28<Pikka>it wasn't as visible on the grey roof as it is on the black ones
11:36<andythenorth>anybody care to school me in inter-process communication with python MP library?
11:36<andythenorth>actually I could just write files to disk and join them :P
11:45<Pikka>too complicated for me
11:45<Pikka> much better. :D
11:47<@planetmaker>isn't the roof a bit dark, Pikka ?
11:47<@planetmaker>especially with some colours?
11:47<Pikka>I don't think so? Roofs should be dark, shouldn't they?
11:48<@planetmaker>dunno. I thought they were rather metal-ish
11:50-!-Pensacola [] has quit [Remote host closed the connection]
11:50<Pikka>even metallish ones get dark when they're dirty. ;) but yeah.. the "some colours" have black roofs, and the others have metal ones
11:50<Pikka>which are the same colour as, eg, the stripe on the side of the dark blue carriage, so if they look dark that'll be down to the lighting. :P
11:51-!-tokai [] has joined #openttd
11:51-!-mode/#openttd [+v tokai] by ChanServ
11:52<@planetmaker>ah, ok, so that's intended :)
11:52-!-DarkAceZ [] has joined #openttd
11:53-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
11:58-!-tokai|mdlx [] has joined #openttd
11:59-!-gelignite [] has joined #openttd
12:01-!-Djohaal [] has quit [Quit: Leaving]
12:03-!-tokai [] has quit [Ping timeout: 480 seconds]
12:16-!-valhallasw [] has quit [Ping timeout: 480 seconds]
12:25*andythenorth profiling hamfistedly
12:27<andythenorth>think I'm about to get schooling about mult-processing problems
12:44-!-valhallasw [] has joined #openttd
12:48<andythenorth>lack of environment vars :(
12:52-!-retro|cz [] has quit [Ping timeout: 480 seconds]
13:00-!-glx [] has joined #openttd
13:00-!-mode/#openttd [+v glx] by ChanServ
13:02-!-Cybertinus [~Cybertinu@2001:828:405:30:83:96:177:42] has quit [Remote host closed the connection]
13:02-!-Cybertinus [~Cybertinu@2001:828:405:30:83:96:177:42] has joined #openttd
13:06-!-Pikka [] has quit [Quit: Leaving]
13:12-!-Wolf01 [] has joined #openttd
13:15-!-Elukka [] has quit []
13:24<andythenorth>I can't get the template engine to see the fricking cache directory when I run a module directly
13:24<andythenorth>but it will see it when the module is called from another module
13:25<andythenorth>some os.environment thing that I don't understand :(
13:25<@Alberth>hi Wolf01
13:26<@Alberth>what did you want to have refactored andy?
13:29-!-tokai|noir [] has joined #openttd
13:29-!-mode/#openttd [+v tokai|noir] by ChanServ
13:34-!-Lizz [] has joined #openttd
13:36-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
13:38<andythenorth>Alberth: biab - bath time
13:39<andythenorth>although this environment var stuff is bugging me :)
13:39<andythenorth>Alberth: do you have a checkout of IH?
13:40<@Alberth>nope :)
13:45<@DorpsGek>Commit by translators :: r26264 trunk/src/lang/danish.txt (2014-01-18 18:45:12 UTC)
13:45<@DorpsGek>-Update from WebTranslator v3.0:
13:45<@DorpsGek>danish - 75 changes by Elyon
13:48<andythenorth>Alberth: run src/ and watch the chameleon_cache dir fill...
13:49<andythenorth>then clear the cache dir, and run src/
13:49<andythenorth>for me, it doesn't produce any cache files
13:49<andythenorth>the cache is an os.environment setting, which is set by
13:50<andythenorth>I've tried setting it in every file, but to no avail
13:51<@Alberth>do you use python2 or python3? i have 2 python-chameleon packages
13:51<andythenorth>python 2
13:53-!-Djohaal [] has joined #openttd
13:55-!-Andreas [] has quit [Ping timeout: 480 seconds]
14:06-!-andythenorth [] has quit [Quit: andythenorth]
14:11-!-APTX [] has quit [Quit: No Ping reply in 180 seconds.]
14:11-!-APTX [] has joined #openttd
14:14-!-fjb is now known as Guest4187
14:14-!-fjb [] has joined #openttd
14:17<LordAro>evening all
14:22-!-andythenorth [] has joined #openttd
14:22-!-Guest4187 [] has quit [Ping timeout: 480 seconds]
14:22<andythenorth>I seem to have got bounced out :P
14:22<@Alberth>andythenorth: I have that too
14:22<andythenorth>the same chameleon behaviour?
14:25<@planetmaker>oddink :)
14:25<@Alberth>wouldn't chameleon read such a variable when importing chameleon?
14:26<andythenorth>I would have thought so
14:27<@Alberth>src/ sets the os.environ['CHAMELEON_CACHE'] = chameleon_cache_path
14:27<@Alberth>src/ import chameleon without setting that env var
14:28<andythenorth>but it has imported iron_horse
14:28<andythenorth>as does
14:28<andythenorth>I have just made a test
14:28<@Alberth>it imports iron_horse later
14:30<@Alberth>line 15, after line 11
14:30<andythenorth>I am making a test of that too :)
14:30<andythenorth>yeah changing the import order solves it :)
14:30<andythenorth>of course :P
14:31<@Alberth>interesting programming style, using import as subroutine call :)
14:31<andythenorth>using MP saves 5 or 6 seconds
14:32<@Alberth>too bad you can only run each file once :)
14:32<andythenorth>it will save more proportionally as the set grows
14:32<andythenorth>Alberth: I could convert them all to have a main() :P
14:32<andythenorth>kind of works though :P
14:32<@Alberth>yeah, it's an interesting technique :)
14:33<andythenorth>kind of dangerous with multiprocessing I guess
14:36<andythenorth>ho I actually save 7 or 8 seconds without a bazillion print statements running
14:36-!-Andreas [~Tyrion@] has joined #openttd
14:40-!-triad [] has joined #openttd
14:42-!-tokai|mdlx [] has joined #openttd
14:47-!-tokai [] has joined #openttd
14:47-!-mode/#openttd [+v tokai] by ChanServ
14:48-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
14:49<andythenorth>planetmaker: today might be the day I need to add a 'build' dir or such
14:49<andythenorth>I now have generated graphics, and intermediate nml files :P
14:49<andythenorth>does that name make sense?
14:51-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
14:51-!-Andreas [~Tyrion@] has quit [Ping timeout: 480 seconds]
14:52<frosch123>call it "generated"
14:52<frosch123>easier to understand
14:52-!-tokai [] has quit [Read error: Operation timed out]
14:56-!-Andreas [~Tyrion@] has joined #openttd
14:57-!-adf88 [] has joined #openttd
15:01-!-APTX_ [] has joined #openttd
15:02-!-APTX [] has quit [Read error: Connection reset by peer]
15:08-!-oskari89 [] has joined #openttd
15:08*andythenorth does that now
15:10<andythenorth>I should move the generated lang in there
15:10<andythenorth>and tell nml about it
15:12<@planetmaker>hm. you can define NML_FLAGS in Makefile.config and declare there a different lang dir
15:12<@planetmaker>Remember to also tell eints about different dir
15:12<@planetmaker>hm... that doesn't need a different dir as it doesn't change, yes?
15:14<andythenorth>I could just leave it as is
15:15<andythenorth>I would be happier if everything generated was in one location, but it could be a tidy mind problem
15:15<andythenorth>no real-world issue
15:15<@planetmaker>suggestion: move the code thing first. And try that
15:15-!-valhallasw [] has quit [Read error: Operation timed out]
15:15<@planetmaker>if that works: you can tidy your mind and try the lang move :)
15:16<@planetmaker>tidy structures don't hurt
15:16<@planetmaker>and NML_FLAGS purpose lies in exactly this reason...
15:17-!-Devroush [] has quit []
15:18<andythenorth>nml is done, doing graphics now
15:18<andythenorth>I've left the final iron_horse.nml in root dir
15:18<andythenorth>make sense?
15:18<@planetmaker>yes. That's makefile's default assumption
15:24<andythenorth>planetmaker: I think for FIRS eints must already know about lang_src?
15:24<andythenorth>not FIRS :P
15:24<andythenorth>Iron Horse sorry
15:26<@planetmaker>might be, yes. In .devzone/translations you can define that
15:27<andythenorth>so I could sort that out and get rid of this ugly lang_src pattern
15:28<andythenorth>graphics are done :)
15:34-!-Devroush [] has joined #openttd
15:35<andythenorth>do I want to face down changing the lang :P
15:36<andythenorth>presumably there's a makefile flag somewhere
15:37<andythenorth>planetmaker: do NML_FLAGS need specified in Makefile.config ?
15:37<@planetmaker>no. But if you need something special, then you can re-define it
15:38<@planetmaker>By default it is defined as -c
15:38-!-Andreas [~Tyrion@] has quit [Ping timeout: 480 seconds]
15:39<andythenorth>so to change lang dir...
15:39<andythenorth>need to set -l
15:39<@planetmaker>-c --lang-dir=PATH
15:40<@planetmaker>you should keep the -c. You'll overwrite it, it doesn't append
15:40<andythenorth>let's try
15:47-!-Pikka [] has joined #openttd
15:54<andythenorth>planetmaker: that just leaves docs_src :)
15:54<andythenorth>which I don't like :P
15:55<andythenorth>graphics_sources is valid I think
15:55<@planetmaker>what's wrong with docs_src?
15:55<andythenorth>nothing much, except the result is generated into /docs
15:56<andythenorth>so then confusion arises :)
15:56<@planetmaker>instead of generated/docs?
15:56<andythenorth>shall I move it there?
15:56<@planetmaker>hm :)
15:56<andythenorth>I think docs are properly separate to grf, so /docs_src is valid ish
15:56<andythenorth>I don't know what bundles does to expose it
15:56<andythenorth>probably something simple
15:57<@planetmaker>well, I've some rules there as to what to copy
15:57<@planetmaker>that can be adopted
15:57<@planetmaker>and/or more generalized
15:57<@planetmaker>it's currently from docs: html, license.txt, readme.txt, changelog.txt
15:58<andythenorth>it's controlled in .devzone/build/files afaict
15:58<andythenorth>not sure how we'd mangle the path though
15:59<@planetmaker>for f in `ls -d *.zip *.gz *.nml *.nfo *.md5 *.txt lang docs/*.txt docs *.ob?`; do cp -r $f build; done
15:59<@planetmaker>^ that's the files which I copy to bundles
16:00<@planetmaker>I'm aware that I copy the txt in docs twice. That's intentional
16:00<andythenorth>shall I move the docs into generated and we see what happens? o_O
16:01<@planetmaker>I know that they won't be published unless I change the rules for bundle server :)
16:01<@planetmaker>but I can add that
16:02<@planetmaker>generated/docs ?
16:02<@planetmaker>hg st
16:03<@Alberth>everybody is committed
16:06<Pikka>or at least they should be
16:08<andythenorth>the makefile is sulking about docs path being wrong
16:08<andythenorth>maybe I should leave this one be
16:10<andythenorth>iirc something blows up if I comment the docs lines in Makefile.config
16:13<andythenorth>hmm 'graphics' could go back into 'src' where I think it belongs
16:14<@planetmaker>no shit, trying to build iron-horse completely rendered my system unresponsive to all kind of input including external ssh access :S
16:14<andythenorth>fork bombed?
16:14<@planetmaker>seems so
16:14<andythenorth>sorry :(
16:15<andythenorth>it hasn't brought down devzone?
16:15<@planetmaker>no, my desktop
16:15<andythenorth>did it come back?
16:15<@planetmaker>I hard reset after two minutes
16:15<andythenorth>sorry :(
16:16<andythenorth>that is umm...a problem
16:16<andythenorth>it blocks CPU quite hard on my mine, for 10s or so
16:16<andythenorth>planetmaker: it's not running windows?
16:16<@planetmaker>I'm used to allowing additional cores by using -jX. So make should use one core unless allowed differently
16:17<@planetmaker>no, linux
16:17<@planetmaker>they keyboard num led would still toggle :P
16:20<andythenorth>I wonder why it does that :P
16:20<andythenorth>it spawns 61 processes, not 1000s
16:20<andythenorth>although I might have to go learn about pools
16:24<@planetmaker>devzone is not harmed as the VMs are CPU - limited and nothing is harmed when the build VM uses all of its CPU. So no worries there
16:25-!-oskari89 [] has quit []
16:26<andythenorth>I might have a new version soon if you dare :P
16:26-!-triad [] has quit [Quit: Konversation terminated!]
16:26<andythenorth>it's marginally faster for some reason :P
16:27<andythenorth>despite fewer processes
16:27<andythenorth>maybe there's an overhead to having 61 processes running :P
16:27<@planetmaker>definitely. No point to run more processes than there are CPUs
16:27<@planetmaker>or not many more
16:27<andythenorth>planetmaker: I've just pushed one that is limited to 16
16:28<andythenorth>doesn't block my laptop now either
16:28<andythenorth>risk it? o_O
16:29<@planetmaker>534:fc9905f20ecc ?
16:30<andythenorth>same hash, my rev is 533
16:30<@planetmaker>not odd. I might have used amend somewhen or so
16:30<@planetmaker>numeric revs are local only
16:31<skyem123>Jenkins thinks it is 532
16:31<@planetmaker>see you in a minute, maybe :P
16:31<@planetmaker>behaves better
16:32<@planetmaker>MUCH better
16:32<andythenorth>phew :)
16:32<@planetmaker>but... didn't build the grf :P
16:32<andythenorth>details :P
16:33<@planetmaker>couldn't generate docs/license.txt
16:33<@planetmaker>thus failed
16:33<@planetmaker>let's purge and re-try
16:33<andythenorth>did it generate a docs folder?
16:34<@planetmaker>seems to work after purge
16:34<andythenorth>I am going to move lang into src I think, and tell eints about it
16:34<@planetmaker>I'd say built in 5 seconds or so
16:35<@planetmaker>that's pretty good :)
16:35<andythenorth>takes about 20 for me
16:35<andythenorth>all in
16:36<@planetmaker>all in all it's 17.1s, yes
16:36<andythenorth>not too bad
16:36<andythenorth>not as bad as FIRS :)
16:36<@planetmaker>would probably be 2ms faster, if it didn't say 'blah' :)
16:36-!-Djohaal [] has quit [Read error: Connection reset by peer]
16:37<andythenorth>ho ho
16:40-!-Tuhin [] has joined #openttd
16:43-!-Djohaal [] has joined #openttd
16:47<skyem123>The makefile doesn't know about the windows "py" command.
16:50<@planetmaker> <-- seems alright, andythenorth ?
16:50<@planetmaker>I didn't change a thing, though
16:50<andythenorth>planetmaker: yeah, I didn't change docs yet :)
16:51<@planetmaker>ah, k
16:51<andythenorth>it tends to break the makefile in boring ways iirc
16:51<@planetmaker>can be, yes
16:51<andythenorth>it's not essential
16:51<andythenorth>just tidiness
17:00-!-Progman [] has joined #openttd
17:01<andythenorth>handling failing code in multiprocessing is...harder
17:01<andythenorth>the pool seems to eat errors
17:02-!-Tuhin [] has quit [Quit: HydraIRC -> <- Would you like to know more?]
17:05-!-gelignite [] has quit [Ping timeout: 480 seconds]
17:07-!-George|2 [~George@] has joined #openttd
17:07-!-George is now known as Guest4202
17:07-!-George|2 is now known as George
17:12-!-gelignite [] has joined #openttd
17:13-!-Guest4202 [~George@] has quit [Ping timeout: 480 seconds]
17:17<skyem123>uh oh... When i try to build it on windows, it goes in an infinite loop
17:17-!-Midnightmyth [] has quit [Ping timeout: 480 seconds]
17:27<andythenorth>skyem123: iron horse?
17:27<skyem123>A multi tasking one,
17:27<andythenorth>how naughty of it
17:28<andythenorth>there are known issues with multiprocessing on windows
17:28<andythenorth>but I thought I'd done the correct thing to handle it :P
17:28<skyem123>Can you add a disable multitasking option as a failsafe?
17:32<andythenorth>skyem123: which rev / hash?
17:34<skyem123>I'm on a6f658d0807115bec6a815d060528793ff07adbf
17:35-!-Alberth [~hat@2001:980:272e:1:be5f:f4ff:feac:e11] has left #openttd []
17:35<skyem123>In that one the screen output is mutch cleaner.
17:36<andythenorth>pull the latest
17:36<andythenorth>I was hopeful that I'd at least limited it to 16 processes, and also prevented the known windows issue
17:36<andythenorth>changeset 7bedb75d28ce
17:38<skyem123>same problem
17:43<andythenorth>wonder why it does it :)
17:43<skyem123>I can give you the console output.
17:44<andythenorth>might as well
17:44<andythenorth>I need someone else to check my python I think
17:46-!-FLHerne [] has joined #openttd
17:46<skyem123>it didn't log everything in the console.
17:47<skyem123>how do i redirect stderror?
17:48<@planetmaker> 2>file
17:49<+glx>or 2>&1 to redirect stderr to stdout
17:49<skyem123>41kb for a few seconds!
17:49<andythenorth>ok that somewhat makes sense
17:49<andythenorth>dunno what to do about it
17:50<skyem123>this happens a lot
17:50<skyem123>it gets repeated
17:51<skyem123>it seems to be trying to access the output nml file
17:52<andythenorth>what's odd is the repeating of the [BUILD] stuff
17:52<andythenorth>there's no cause for repeating that, it's called once
17:53<skyem123>it does the same thing when i limit the processes to 1
17:53<skyem123>except error about the file
17:54<andythenorth>I think I understand that
17:54<skyem123>so by limiting the processes to 1 it didn't have the file access error
17:57-!-Flygon_ [] has joined #openttd
17:57-!-Flygon [] has quit [Read error: Connection reset by peer]
18:00<andythenorth>skyem123: can you run python files?
18:00<andythenorth>if so, run src/
18:00<andythenorth>should have the same issue
18:01-!-sla_ro|master [slamaster@] has quit []
18:05<skyem123>Same issue!
18:05<skyem123>it suddenly stopped
18:06<Taede>gnite all
18:06<andythenorth>same issue is good news in this case
18:06<skyem123>it's doing somthing similar but differant
18:06<@planetmaker>g'night, Taede
18:06<skyem123>but the loop is still there
18:06<andythenorth>skyem123: edit L 44 - reduce 16 to 1
18:07<andythenorth>might still loop
18:08<skyem123>it does an access is denied error using src/
18:08<skyem123>then stops
18:08<skyem123>using make it still loops
18:08<andythenorth>it loops with 16 changed to 1?
18:09<skyem123>with make, yes
18:09<skyem123>(using make command)
18:10<skyem123>with /src/render_nml, no
18:11<skyem123>I think it loops in two places.
18:11<andythenorth>it will also loop in render_graphics
18:12<skyem123>It seems to loop in build_iron_horse
18:12<andythenorth>that is what puzzles me
18:13-!-fjb is now known as Guest4205
18:13-!-fjb [] has joined #openttd
18:15<andythenorth>I won't solve it tonight :(
18:15<andythenorth>bed time
18:15<skyem123>is it possible to remove the threading code?
18:16<andythenorth>possible yes
18:16<andythenorth>change 1 line, delete 3 others
18:17-!-Guest4205 [] has quit [Read error: Operation timed out]
18:17<andythenorth>instead of pool.apply_async(render_consist_nml, args=( consist, ))
18:17<skyem123>what ones
18:17<andythenorth>use render_consist_nml(consist)
18:17<andythenorth>and then delete the other nearby lines beginning 'pool'
18:18<andythenorth>it will still fail on render_graphics probably
18:18<skyem123>it that loops...
18:18<andythenorth>but test it...
18:19<skyem123>What does the threading DO?
18:19<andythenorth>renders graphics and code faster
18:20<skyem123>how? does it use one theread per module?
18:20<skyem123>with a limit of 16 threads at a time?
18:20<andythenorth>I don't know
18:20<andythenorth>the pool() stuff is pretty much magic
18:21<andythenorth>has it worked?
18:21<skyem123>it it getting permission errors
18:22<skyem123>used by another process
18:23<skyem123>is that the graphics erroring?
18:23<andythenorth>possibly yes
18:24<@planetmaker>sounds like race condtions
18:24<andythenorth>open src/
18:24<skyem123>remove the pool code?
18:25<andythenorth>replace with
18:25<andythenorth> shutil.copy(os.path.join(graphics_input, variant.get_spritesheet_name(consist)), graphics_output_path)
18:26<skyem123>you mean to code in:
18:26<skyem123>for variant, consist in variants.iteritems():
18:27<skyem123>still an error.
18:27<skyem123>no loops
18:28<skyem123>Traceback (most recent call last):
18:28<skyem123> File "src/", line 18, in <module>
18:28<skyem123> import render_nml
18:28<skyem123> File "i:\NewGRF Coding\Projects\Iron Horse\src\", line 24, in <mo
18:28<skyem123> os.mkdir(generated_nml_path)
18:28<skyem123>WindowsError: [Error 5] Access is denied: '.\\generated\\nml'
18:28<skyem123>make: *** [iron-horse-nml] Error 1
18:28-!-montalvo [] has quit [Quit: Textual IRC Client:]
18:29<skyem123>is it the way you handle filenames?
18:29<andythenorth>does Windows have permissions or something?
18:29<skyem123>has them
18:30<andythenorth>replace generated_nml_path = os.path.join(iron_horse.generated_files_path, 'nml')
18:30<andythenorth>with generated_nml_path = os.path.join(currentdir, 'generated', 'nml')
18:31<andythenorth>shouldn't make any bloody difference :)
18:31<andythenorth>but we'll see
18:32<skyem123>it seems to be working. for the nml at least
18:32<skyem123>i THINK i know what is happening!
18:32<andythenorth>if that change fixed it, then it's path issues
18:33-!-KritiK [] has quit [Quit: Leaving]
18:34<andythenorth>the path throws a permissions error
18:34<andythenorth>and the way windows handles python multiprocessing means it gets thrown over and over again
18:34<andythenorth>is my guess
18:34<skyem123>generated_files_path = os.path.join(currentdir, global_constants.generated_files_dir)
18:36<skyem123>what is global_constants.generated_files_dir?
18:39<andythenorth>it's just a string
18:40<andythenorth>os.path() should be able to join previously joined paths, but maybe it fails
18:41<skyem123>it seems to also have problems if the files already exist in the "generated" folder
18:41<andythenorth>they're supposed to have been deleted
18:41<andythenorth>there's code for that :)
18:41<andythenorth>or run make clean
18:41*andythenorth needs bed, but the path stuff is pretty easy to change if you want to try it
18:41<skyem123>i think the code runs to fast
18:42-!-andythenorth [] has quit [Quit: andythenorth]
18:44-!-Pereba [] has quit [Quit: AdiIRC, where fake vikings are welcome. []]
18:49-!-yorick [] has quit [Remote host closed the connection]
18:58-!-Ttech [] has quit [Ping timeout: 480 seconds]
19:03-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
19:04-!-Devroush [] has quit []
19:13-!-Ttech [] has joined #openttd
19:16-!-Aristide [] has quit [Remote host closed the connection]
19:19-!-Progman [] has quit [Remote host closed the connection]
19:26-!-frosch123 [] has quit [Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn]
19:29-!-Flygon [] has joined #openttd
19:29-!-Flygon_ [] has quit [Read error: Connection reset by peer]
19:37-!-Hazzard [] has joined #openttd
19:42-!-skyem123 [] has quit [Quit: Leaving]
19:42-!-Tuhin [] has joined #openttd
19:51-!-GriffinOneTwo [] has joined #openttd
20:12-!-Tuhin [] has quit [Quit: Try HydraIRC -> <-]
20:22-!-jjavaholic_ [] has joined #openttd
20:24-!-jjavaholic [] has quit [Ping timeout: 480 seconds]
20:31-!-FLHerne [] has quit [Remote host closed the connection]
20:34-!-DDR [] has quit [Read error: Connection reset by peer]
20:35-!-DDR [] has joined #openttd
20:42-!-GriffinOneTwo [] has quit [Remote host closed the connection]
20:49-!-GriffinOneTwo [] has joined #openttd
20:58-!-gelignite_ [] has joined #openttd
21:01-!-Aleksandr [] has joined #openttd
21:01<Aleksandr>Is their anyway to issue orders to an entire group? x.x
21:01<Aleksandr>there, even
21:04-!-gelignite [] has quit [Read error: Connection reset by peer]
21:07<Pinkbeast>Aleksandr: Use shared orders.
21:09<Aleksandr>There's a way to issue them to an entire group at once?
21:09<Pinkbeast>No, I mean that the right way to do this is to cause vehicles you wish to give orders to at once to have shared orders, irrespective of the group they are in.
21:16-!-Japa__ [~Japa@] has quit [Read error: Operation timed out]
21:17-!-Japa__ [~Japa@] has joined #openttd
21:28-!-Haube [] has quit [Read error: Connection reset by peer]
21:45-!-HerzogDeXtEr [] has joined #openttd
21:49-!-wubic [] has quit [Quit: /join #real-life | Leaving]
21:51-!-GriffinOneTwo [] has quit [Remote host closed the connection]
21:51-!-HerzogDeXtEr1 [] has quit [Ping timeout: 480 seconds]
21:54-!-wubic [] has joined #openttd
22:18-!-Japa__ [~Japa@] has quit [Ping timeout: 480 seconds]
22:26-!-eviltoaster [] has joined #openttd
22:26-!-eviltoaster [] has quit []
22:26-!-Japa__ [~Japa@] has joined #openttd
22:31-!-wubic [] has quit [Read error: Operation timed out]
22:32-!-wubic [] has joined #openttd
22:34-!-Aleksandr_ [] has joined #openttd
22:38-!-Aleksandr [] has quit [Ping timeout: 480 seconds]
22:55-!-adf88 [] has quit [Quit: adf88]
22:57-!-HerzogDeXtEr [] has quit [Quit: Leaving.]
23:11-!-Pikka [] has quit [Quit: Leaving]
23:16-!-Japa__ [~Japa@] has quit [Quit: Leaving]
23:17-!-Japa [~Japa@] has joined #openttd
23:25-!-Aleksandr_ [] has quit []
23:31-!-retro|cz [] has joined #openttd
23:32-!-gelignite_ [] has quit [Quit:]
23:34-!-Lizz [] has quit [Ping timeout: 480 seconds]
23:58-!-glx [] has quit [Quit: Bye]
---Logclosed Sun Jan 19 00:00:35 2014