IRC logs for #openttd on OFTC at 2015-05-31
            
00:06:54 *** Tirili has quit IRC
00:17:00 *** Celestar has quit IRC
00:18:11 *** Jimmy_Bignuts has quit IRC
00:19:53 *** frosch123 has quit IRC
00:37:16 *** Suicyder has quit IRC
00:48:33 *** Supercheese has quit IRC
00:49:07 *** Supercheese has joined #openttd
00:54:03 *** Biolunar has joined #openttd
01:10:54 *** HerzogDeXtEr1 has quit IRC
01:14:31 *** FLHerne has joined #openttd
01:25:35 *** Progman has quit IRC
01:36:17 *** Myhorta has joined #openttd
01:37:33 *** Hiddenfunstuff has quit IRC
01:41:31 *** Jimmy_Bignuts has joined #openttd
01:53:36 *** smoke_fumus has joined #openttd
01:53:51 *** smoke_fumus has quit IRC
01:55:38 *** Supercheese has quit IRC
01:56:13 *** Supercheese has joined #openttd
02:05:43 *** FLHerne has quit IRC
02:36:53 *** guru3-vps has quit IRC
02:55:44 *** Supercheese has quit IRC
02:56:18 *** Supercheese has joined #openttd
03:00:47 *** Pokka has joined #openttd
03:14:47 *** supermop has joined #openttd
03:33:29 <Jimmy_Bignuts> rededit i think
03:33:32 <Jimmy_Bignuts> or somethign like that
03:33:38 <Jimmy_Bignuts> do those games get recorded?
03:36:10 <ST2> usually most communities have commands to call and admin, try !help or !commands (to call an admin it's usually !admin <reason>)
03:36:27 <ST2> but I'm not aware with reddit commands, sorry :(
03:37:18 <sim-al2> Hey some user named Jimmy_Bignuts is on #openttd
03:37:44 <sim-al2> errrr the reddit channel is #/r/openttd
03:37:53 <sim-al2> Brain is crossed sorry
03:39:01 <sim-al2> yeah we have !admin
03:40:03 <ST2> was talking by heart, to Jimmy_Bignuts get some help... if he still needs it ^^
03:41:38 <Sylf> recording the game - if the server keeps enough autosaves, that would be the closest thing to the actual record of the game itself
03:43:18 <Jimmy_Bignuts> that is unfortunate
03:43:22 <sim-al2> It's likely that any autosaves are gone by now
03:43:26 <Jimmy_Bignuts> yesterday i had my path blocked by an opponent
03:43:26 *** ChanServ sets mode: +v DorpsGek
03:43:26 *** ChanServ sets mode: +v planetmaker
03:43:26 *** ChanServ sets mode: +o Rubidium
03:43:45 <Sylf> train path? truck/bus path?
03:43:50 <Jimmy_Bignuts> you can tell it was legit, because you can see my commencement, followed by him blocking me 360 degrees
03:43:57 <Jimmy_Bignuts> blocked me in two ways
03:44:11 <Sylf> oh, actual sabotage
03:44:14 <Jimmy_Bignuts> nah he had good coal mine, so i built a station next to his
03:44:26 <Jimmy_Bignuts> then as i build in from one way, he blocks it.
03:44:35 <Jimmy_Bignuts> so i build another station and try going out the other way
03:44:37 <Sylf> does reddit allow resource sharing?
03:44:39 <Jimmy_Bignuts> he blocks that to
03:44:46 <Jimmy_Bignuts> then he blocks it all around me so i am stuck
03:45:02 <Jimmy_Bignuts> well the other guys said primary industries are meant to be shared
03:45:23 <Sylf> http://www.reddit.com/r/openttd/comments/1d50mg/rules_for_openttd_servers/
03:45:27 <Sylf> Read their server rules
03:46:04 <Jimmy_Bignuts> 2) Blocking other players
03:46:05 <Jimmy_Bignuts> Intentionally blocking other players is strictly forbidden. If you're trying to build and you notice that someone else might be getting in your way, try to work it out with each other.
03:46:14 <Jimmy_Bignuts> i was not on his way, he was already there
03:46:19 <ST2> "This is why primary industries are fair game for all companies." <<-- I guess that includes coal mines ^^
03:46:29 <Jimmy_Bignuts> so i start building a station on opposite side, and he saw it and started getting funny
03:46:50 <Jimmy_Bignuts> when i tell him why he did it
03:46:54 <Jimmy_Bignuts> he said i was stealing his coal
03:46:55 <Jimmy_Bignuts> LOL
03:47:04 <Jimmy_Bignuts> so talk about a subtle admission of blocking
03:47:06 <Sylf> ah. different definition of stealing
03:47:19 <Sylf> on some servers, that's stealing. on reddit, it's competition
03:47:29 <Jimmy_Bignuts> you kiddin me
03:49:24 <Sylf> either way, like sim-al said, talking in #/r/openttd will be more helpful than talking about that here
04:01:42 <Jimmy_Bignuts> another thing i dont like about this game is that some levels block aircraft
04:21:36 *** Myhorta has quit IRC
04:33:07 *** glx has quit IRC
04:47:05 <Sylf> airplanes are virtually no-brainer money printing machines
04:47:35 <Sylf> plop 2 airports at 2 far end of the map, add planes, $$$$$$$$$$$$$$$$$$$$$$$$$$$$
04:49:09 *** Biolunar_ has joined #openttd
04:51:23 *** Supercheese has quit IRC
04:56:07 *** Biolunar has quit IRC
05:08:51 *** Compu has joined #openttd
05:11:54 *** tokai|noir has quit IRC
05:12:47 *** tokai has joined #openttd
05:12:47 *** ChanServ sets mode: +v tokai
05:16:48 <Jimmy_Bignuts> airplanes are part of transport
05:44:30 *** Ketsuban has quit IRC
06:30:24 *** guru3-vps has joined #openttd
06:52:48 <Jimmy_Bignuts> i would like to host one of these games
06:53:04 <Jimmy_Bignuts> can you run a server version of this game on linux?
06:56:01 *** Eddi|zuHause has quit IRC
06:56:16 *** Eddi|zuHause has joined #openttd
07:02:06 *** guru3-vps has quit IRC
07:23:28 *** roidal has joined #openttd
07:24:21 *** Supercheese has joined #openttd
08:10:52 *** roidal has quit IRC
08:12:40 *** roidal has joined #openttd
08:23:17 *** andythenorth has joined #openttd
08:23:23 <andythenorth> huzzah
08:23:48 <Pokka> o
08:23:51 <Supercheese> forsooth?
08:24:00 <Pokka> foshizzle
08:24:08 <andythenorth> yes
08:24:31 <andythenorth> can CivilAI occasionally build some pointless road bridges ?
08:24:44 <andythenorth> it spoils my shipping empire :P
08:25:14 <Pokka> how pointless did you have in mind?
08:25:25 <andythenorth> utterly
08:25:35 <andythenorth> I have no serious suggestion :P
08:25:49 <andythenorth> but the roads block canals / lowering land for ship canals
08:26:04 <Pokka> oh, right
08:26:13 <andythenorth> doesn’t stop me using it in games
08:26:15 <andythenorth> but eh
08:26:21 <Pokka> no more than any other AI's routes, I guess
08:26:56 <Pokka> with the update, all you have to do is build some tracks over its roads and squash a car on it
08:27:09 <Pokka> then it will remove the road and build a bridge over your tracks. remove tracks, replace with canal?
08:28:25 <andythenorth> ha
08:28:29 <andythenorth> nice hax
08:42:20 <andythenorth> should I company colour the vehicles?
08:42:21 <andythenorth> https://dev.openttdcoop.org/attachments/download/7304/quarry_on_slopes.png
08:42:23 <andythenorth> also buildings?
08:42:35 <Pokka> why not?
08:42:57 <Pokka> perhaps not the buildings entirely, give them different coloured roofs or stripes or something. Or too much work? :)
08:44:23 <andythenorth> nah
08:44:31 <andythenorth> I’m pretty quick at colouring in buildings
08:44:35 <andythenorth> done a few now :P
08:45:52 * andythenorth must also make a power station
08:46:42 <Pokka> I have some bits of an oldeworlde one lying around, if it's any help... but you've probably got enough industry bits of your own.
08:46:58 <andythenorth> is it base set sprites?
08:47:02 <andythenorth> or you drew some?
08:47:19 * andythenorth needs a cooling tower probably
08:47:44 <Pokka> actually, never mind, it's got too many bits of base set sprites
08:47:50 <Pokka> and no cooling tower. :)
08:47:59 <andythenorth> there’s always OpenGFX
08:48:05 <Pokka> true
08:48:15 <Jimmy_Bignuts> is there any way to exit a game but have your company continue to grow? then re-enter and continue where you left off providing you dont get bankrupt?
08:49:46 <Pokka> on multiplayer? depends on the server whether your company gets wiped or not.
08:52:12 <andythenorth> also this builders yard
08:52:13 <andythenorth> http://bundles.openttdcoop.org/firs/push/LATEST/docs/html/industries.html#builders_yard
08:55:19 <Pokka> internet is playing up, doesn't want to load openttdcoop
08:55:23 <Pokka> nor google, apparently
08:55:35 <andythenorth> australia has special internet
08:55:46 <andythenorth> sometimes bits of internet aren’t there for you
08:55:54 <Pokka> yes
08:56:08 <andythenorth> it’s extra special for those of us who have servers in australia :P
09:02:49 <Pokka> even those of us in australia are sensible enough to keep our servers somewhere else :)
09:03:05 <andythenorth> :)
09:04:50 *** Flygon_ has joined #openttd
09:11:52 *** Flygon has quit IRC
09:13:49 <andythenorth> eh, so power plants
09:13:59 <andythenorth> must to have an acceptance limit?
09:14:06 <andythenorth> tied to town population?
09:14:15 <Pokka> does anything else have an acceptance limit?
09:14:52 <Pokka> I thought that stockpiling wasn't generally a FIRS mechanic :P
09:17:11 <andythenorth> not
09:17:33 <andythenorth> also don’t really want to add it :P
09:17:42 <Pokka> I guess that's the answer then
09:17:46 * andythenorth must try harder
09:17:55 <andythenorth> produce building materials?
09:17:58 <andythenorth> bit odd tbh :P
09:20:14 <andythenorth> generate electricity?
09:20:25 <andythenorth> moved by a new railtype?
09:24:12 *** wicope has joined #openttd
09:29:03 *** namad7 has joined #openttd
09:29:31 <Supercheese> tried that, was sort of eh
09:30:15 <Supercheese> general consensus seemed to be "needs a GS to make things work nicely"
09:31:10 * Supercheese is too lazy to write an electricity GS
09:31:19 <andythenorth> eh, it’s a bad use of a GS
09:31:29 <andythenorth> because there’s only one GS per game
09:31:37 <andythenorth> using it to do a show-pony cargo trick is daft
09:31:40 <Supercheese> eh I don't use any at the moment
09:31:45 <Supercheese> my slot is free
09:31:48 <Supercheese> still too lazy
09:35:36 *** Alberth has joined #openttd
09:35:36 *** ChanServ sets mode: +o Alberth
09:35:45 <Alberth> moin
09:37:18 <andythenorth> o/
09:48:09 <supermop> needs to be a better way of seeing topography through trees
09:48:54 <andythenorth> transparency :P
09:49:01 *** OsteHovel has quit IRC
09:50:10 <supermop> better than that
09:50:44 *** OsteHovel has joined #openttd
09:50:51 <supermop> currently the only reason to have trees visible to to avoid destroying them,
09:50:52 <Alberth> you know transparency includes making trees invisible?
09:51:03 <Alberth> ah :)
09:51:31 <Alberth> just avoid towns :p
09:51:57 <supermop> if they are visible the land looks ugly because they completely hide any contours - so the whole map looks flat
09:52:28 <supermop> current map has some nice mountains - but cannot see them if trees are on
09:52:42 <supermop> and if trees are off, then the mountains look too bare
09:53:33 * andythenorth always hides
09:53:41 <andythenorth> can’t build anything with trees on
09:53:45 <andythenorth> too hard to see
09:53:54 * Supercheese agrees
09:54:07 *** sim-al2 has quit IRC
09:54:42 <supermop> i guess a more sparse set of trees would help
09:55:12 <supermop> but i think shading trees based on tile slope would make landscapes look pretty nice
09:55:19 <andythenorth> use the original tree algorithm
09:55:22 <andythenorth> better results
09:55:36 <andythenorth> the ‘improved’ algorithm isn't
09:55:43 * andythenorth just tested
09:58:32 <supermop> the problem isn't really that i can't build stuff - it's that trees look ugly when they become essentially just green noise
09:58:55 <andythenorth> agreed
09:59:05 <andythenorth> tried both algorithms?
09:59:28 <supermop> it's been awhile
10:01:41 <supermop> man there are a lot of north american diesels that i have a really hard time bringing myself to care about
10:02:07 <supermop> like I had no idea that this thing existed:
10:02:08 <supermop> http://en.wikipedia.org/wiki/MPI_HSP46
10:02:23 *** Pensacola has joined #openttd
10:02:24 <supermop> looks pretty underwhelming
10:03:31 *** sla_ro|master has joined #openttd
10:30:53 *** Progman has joined #openttd
10:42:11 <Alberth> it has good colours
10:42:58 *** namad7 has quit IRC
10:43:02 <Alberth> and I have been using the "none" tree algorithm, works quite nicely, although eventually, you get a few more trees than "none" :)
10:43:21 <andythenorth> ha
10:44:07 <Alberth> also, playing other than temperate climate helps :)
10:44:34 <Alberth> hmm, maybe also not toyland, it's also quite tree-ish
10:45:05 <andythenorth> I like Evilweed https://dev.openttdcoop.org/attachments/download/7305/evilweed.png
10:45:12 <andythenorth> nice location for the port
10:45:34 <andythenorth> looks like Canadian northwest coast
10:45:46 <Alberth> nice :)
10:46:07 <Alberth> would look good in the screenshot section :)
10:47:25 * andythenorth rarely goes there :)
10:48:21 <Alberth> no need, you have your own pretty little towns :)
10:49:12 <Alberth> now you only need a few stations in the big city, and you have covered it
10:57:39 *** guru3-vps has joined #openttd
11:00:33 * andythenorth refactors
11:00:50 <andythenorth> refactoring is like doing work without having to do work
11:00:54 * andythenorth should refactor more
11:02:59 <Alberth> indeed :)
11:03:53 *** sla_ro|master2 has joined #openttd
11:03:57 *** zeknurn` has joined #openttd
11:04:26 <andythenorth> no design needed, very few decisions, lots of commits :P
11:04:31 <andythenorth> way easy
11:05:23 <Alberth> you should have an idea of direction, but other wise, yep :)
11:07:38 *** HerzogDeXtEr has joined #openttd
11:08:22 *** guru3-vps has quit IRC
11:08:22 *** sla_ro|master has quit IRC
11:08:22 *** OsteHovel has quit IRC
11:08:22 *** wicope has quit IRC
11:08:22 *** ccfreak2k has quit IRC
11:08:22 *** zeknurn has quit IRC
11:08:22 *** Pikka has quit IRC
11:08:22 *** zeknurn` is now known as zeknurn
11:11:02 *** OsteHovel has joined #openttd
11:13:43 *** ccfreak2k has joined #openttd
11:18:56 *** wicope has joined #openttd
11:35:11 *** JacobD88 has joined #openttd
11:45:57 *** Pokka has quit IRC
11:46:21 *** Pokka has joined #openttd
11:51:32 <andythenorth> beebul
11:51:33 *** andythenorth has left #openttd
12:12:31 *** Speedy has quit IRC
12:15:37 *** Hiddenfunstuff has joined #openttd
12:25:48 *** Speedy` has joined #openttd
12:26:06 *** Speedy` is now known as Speedy
12:27:38 *** Myhorta has joined #openttd
12:42:33 *** Suicyder has joined #openttd
13:01:03 *** nikow_ has quit IRC
13:06:40 *** JacobD88 has quit IRC
13:09:08 *** Alberth has left #openttd
13:13:10 *** Progman_ has joined #openttd
13:17:44 *** Progman has quit IRC
13:17:56 *** Progman_ is now known as Progman
13:31:24 *** Supercheese has quit IRC
13:31:58 *** Supercheese has joined #openttd
13:40:01 *** Pensacola has quit IRC
13:53:26 *** Wolf01 has joined #openttd
13:53:31 <Wolf01> hi hi
14:05:31 <jjavaholic> what is the basic construction of a side chain
14:08:41 *** Ketsuban has joined #openttd
14:17:30 *** frosch123 has joined #openttd
14:21:19 *** heffer has joined #openttd
14:22:09 *** kamnet has joined #openttd
14:22:58 *** Pokka has quit IRC
14:24:49 *** heffer_ has quit IRC
14:26:21 *** HerzogDeXtEr has quit IRC
14:30:00 *** andythenorth has joined #openttd
14:42:39 <andythenorth> hmm
14:42:43 <andythenorth> ‘industries for the sea'
14:42:47 * andythenorth ponders
14:43:24 <Jimmy_Bignuts> how do i exit a game, and return tomorrow with it still running?
14:45:45 <supermop> on a server?
14:46:29 *** Myhorta[1] has joined #openttd
14:46:58 <kamnet> I think you got all the sea industries covered, andy
14:47:15 <supermop> or just leave your computer on all night
14:47:34 <kamnet> unless you want to make a cultured pearl farm. :D
14:47:56 <supermop> floating fishing village
14:48:08 <supermop> for vietnam economy
14:48:23 <kamnet> whalers
14:48:55 <supermop> metabolist floating cities
14:49:56 *** Jimmy_Bignuts has quit IRC
14:50:11 <kamnet> kelp fields
14:51:01 *** Myhorta has quit IRC
14:53:23 <andythenorth> windfarms
14:53:25 <andythenorth> :P
14:53:28 <andythenorth> deliver nothing
14:53:31 <andythenorth> produce nothing
14:54:04 <Eddi|zuHause> that's called an "object"
15:02:41 <supermop> good night
15:03:13 <andythenorth> eh
15:03:31 <andythenorth> over-sized spritesheets aren’t going to make much difference to compile time?
15:03:41 <andythenorth> probably negligible or undetectable?
15:06:21 *** guru3-vps has joined #openttd
15:06:25 <frosch123> all images files are loaded onlyonce
15:06:45 <frosch123> encoding of sprites is sorted by source file
15:06:53 * andythenorth files refactoring spritesheets under ‘tmwftlb’
15:07:27 <frosch123> anyway, if you compile multiple times, you use the cache anyway
15:07:53 <frosch123> so, maybe separate those sprites, which you change every 5 minutes :p
15:08:05 <andythenorth> :P
15:08:17 <andythenorth> I did consider again an nml->nfo compile
15:08:30 <andythenorth> for cases where only the graphics change
15:09:27 <Eddi|zuHause> but that means it can't use the graphics cache, which may make things actually slower when you change code and no graphics
15:10:04 <andythenorth> I’d have to have two compiles :P
15:10:08 *** liq3 has joined #openttd
15:10:11 <andythenorth> and choose the right one for the work that day
15:10:13 <andythenorth> seems lame
15:10:34 <Eddi|zuHause> i don't think "lame" is the right word :p
15:11:01 <andythenorth> more superlative than ‘lame'?
15:12:59 <andythenorth> those trucks https://dev.openttdcoop.org/attachments/download/7304/quarry_on_slopes.png
15:13:02 <andythenorth> should be removed?
15:14:29 * andythenorth is going to tweak a few things, but lacks inspiration
15:18:07 <andythenorth> dragline gravel pits are pretty minimal http://thumbs.dreamstime.com/z/dragline-1076864.jpg
15:18:11 <andythenorth> https://www.youtube.com/watch?v=EOraCPVPQ1I
15:23:03 <andythenorth> considered animating the crane, but I’d have to include multiple turning angles
15:23:07 <andythenorth> total PITA :)
15:34:16 *** Alberth has joined #openttd
15:34:16 *** ChanServ sets mode: +o Alberth
15:40:25 *** krinn has joined #openttd
15:40:34 <krinn> hi guys
15:40:57 <krinn> Alberth got a min? (i don't want report a non bug again)
15:41:10 <Alberth> sure
15:42:18 <krinn> looks like i'm unable to build a bridge from slope_N to slope_E
15:43:07 <krinn> but that's not a define limit in the api (of course slope_E and slope_N are opposite tiles, same tileX...)
15:43:23 <krinn> while by hands i'm able to build it
15:44:02 <krinn> (and yes, build on slope is on of course)
15:44:57 <Eddi|zuHause> i'm sure dozens of AIs managed to build bridges
15:46:10 <krinn> lol Eddi|zuHause sure, but they only do it because the pathfinder hint them on where to build it, and the pathfinder ONLY gave them a tile source or target slope_SE/SW/NE/NW
15:46:27 <krinn> never a S/N/W/E
15:47:04 <Eddi|zuHause> that seems like a shortcoming in the pathfinder
15:48:17 <krinn> maybe, but that's looks fine then if you cannot have the BuildBridge function to build a bridge on a tile that isn't NW/SE/NE/NW
15:48:29 <Eddi|zuHause> anyway, what do you want us to do now?
15:48:48 <Alberth> give magical answers :)
15:49:03 <krinn> well, confirm it's a limit from openttd or a bug?
15:49:18 <krinn> i don't see why i could do a bridge by hands and by API i cannot do the same
15:49:18 <Alberth> but I don't have them, I don't have an AI that shows it fails
15:49:52 <krinn> can pack mine, but its state is really poor now
15:49:56 <Alberth> krinn: I agree, an AI should be able to do what a user can do
15:50:21 <Eddi|zuHause> krinn: try to make a reduced example that only tries to build such a bridge
15:50:41 <Alberth> as simple as possible, so your AI code doesn't contain errors
15:51:06 <krinn> Eddi|zuHause, erf, we need a special map/condition, it's not common to find an area slope_N slope_E to build a bridge on
15:51:30 <krinn> a screenshot and the code that try to build the bridge would do?
15:51:34 <Eddi|zuHause> krinn: make a savegame/scenario with the right condition then
15:51:36 <Alberth> make a map, or test specific tiles to have some confiuration
15:52:09 <Alberth> or tarreform tiles to the right form
15:52:54 <Alberth> it doesn't have to be complete, it can be mostly manual, whatever, the code just has to be as easy as possible, so you can concentrate on the bridge build problem
15:54:18 <Alberth> if you can show that the simple code fails, and manually it doesn't fail, it's a bug
15:55:07 <Alberth> eg in my signal tester, I had hard-coded positions for the test area
15:56:46 <krinn> ok, going to build a tiny ai that build bridge only
15:57:41 <Alberth> ok, thank you
16:00:10 <Alberth> It's often a useful exercise with these problems. If the tiny example fails, you have a piece of code to demonstrate the problem (just like I did, "my code works, could you have a look?")
16:00:31 <Alberth> if the tiny example works, you know the problem is not the bridge itself, but elsewhere
16:01:42 <krinn> i know, just that this time i have check more than once (ok i might still be wrong more than once)
16:03:51 <Alberth> another tactic that often works is to post the question at the forum, but also there you need to provide something to show the problem
16:05:30 <krinn> i'm doing the test ai, so my ai code will be out of the problem
16:20:35 *** nikow has joined #openttd
16:30:52 <krinn> ok done, testmap + testai
16:31:13 <krinn> the ai fails on two bridge while is able to build a 3rd test one
16:32:29 <krinn> wants bugreport with the map and ai to test?
16:41:54 *** roidal_ has joined #openttd
16:46:32 <Alberth> sounds good
16:48:16 <krinn> weirds, the same function is able to build one, and fail on the two other
16:48:43 *** roidal has quit IRC
16:52:11 <krinn> Alberth, confirm at least code "seems" ok for ai part?
16:57:20 <Alberth> looks ok-ish at first sight
16:58:26 <Alberth> a and b are a bit magic, you may want to compute the tile index the next time (making it easier to adjust the code for further experiments)
16:58:44 <Alberth> "c == false" is normally expressed as "!c" :)
16:58:55 <Alberth> but for testing it's all fine enough
16:59:20 *** tokai|mdlx has joined #openttd
16:59:26 <krinn> i've put sign to help see start & end and find them fast on the map
16:59:44 <krinn> and i tooked a & b to be close middle map, so they should be easy to get when loading it
17:00:25 <Alberth> I saw, but TileIndex(100, 100) is easier to understand
17:00:44 <Alberth> but just for a next time, no need to change this any more
17:01:10 <krinn> ah yes, will try keep it in mind for next time
17:01:58 <krinn> i know i should kept some lower openttd version to test, but i only have 1.4.4 right now
17:02:17 <Alberth> ha, I test in trunk :)
17:03:07 <krinn> 2 fails on trunk too?
17:03:42 *** tokai has quit IRC
17:04:07 <Alberth> don't know, didn't actually try to run the code yet
17:06:06 <krinn> was trying to optimize path result of pathfinder, i think i know why pathfinder was sucking at building bridge now :)
17:14:37 <andythenorth> :(
17:14:44 <andythenorth> my compile got slower
17:16:03 <V453000> 1s?
17:18:37 <andythenorth> about 14s :(
17:18:44 <andythenorth> just for changing one industry
17:19:26 <V453000> world ends right the hell now then
17:20:50 <andythenorth> it’s ~28% slower
17:21:04 <andythenorth> just due to refactoring
17:21:09 <andythenorth> that’s insane
17:23:32 <Alberth> krinn: http://devs.openttd.org/~alberth/bridge_build.png
17:23:37 *** guru3-vps has quit IRC
17:23:45 <Alberth> you have this too?
17:24:38 <Alberth> I have no signs
17:25:05 <krinn> enable seeing other company sign :)
17:25:07 <Alberth> nvm thats my fault\
17:25:27 <krinn> or switch to the ai company to see them
17:25:50 <krinn> i'm glad only one is build for you too :D
17:26:27 <Alberth> :D
17:27:11 <krinn> the signs are good help, at least they shown the S & E points, and it's easy to see they are good points to build a bridge on
17:27:39 <Alberth> looks like it
17:27:48 <krinn> what doesn't really help is the ERR_UNKNOWN
17:30:58 <krinn> it's also fail if you set currentroadtype to ROAD and try build road bridges (so at least it's not VT_RAIL depend)
17:31:59 <Alberth> good to know
17:39:36 <andythenorth> ground aware spritelayouts are insanely inefficient to compile
17:41:11 <krinn> i've heard Eddi|zuHause saying he has put plenty noop() and sleep() in it to bug newgrf makers to death
17:44:25 <Eddi|zuHause> that's libel!
17:46:41 <Eddi|zuHause> andythenorth: of course optimizing for worktime means that the optimal solution is doing no work at all.
17:46:54 <Eddi|zuHause> you're done the quickest
17:47:12 <andythenorth> depends if you do achievement = work / result
17:47:14 <andythenorth> or such
17:47:20 <andythenorth> or result / work
17:48:17 * andythenorth wonders why the damn thing is so slow
17:48:21 * andythenorth reads the nml
17:49:08 <andythenorth> eh, does nml incur any time parsing empty lines?
17:49:16 <andythenorth> if that was significant, I would be surprised
17:49:23 <andythenorth> but eh
17:50:50 <Eddi|zuHause> my experience in that matter is very old...
17:51:09 <Eddi|zuHause> back then, the biggest impact was complex formulas e.g. in templates
17:51:36 <Eddi|zuHause> empty lines should be handled in ply
17:51:49 <Eddi|zuHause> nml won't ever see those
17:52:47 <krinn> might also be a good idea to really drop that zx81 and change your computer andythenorth
17:53:51 <andythenorth> yeah
17:54:06 <Eddi|zuHause> andythenorth: but i have never seen you complain about that ratio. you only ever complain about compile time
17:54:46 <andythenorth> slow is bad
17:55:04 <krinn> oh speaking off, would you go for a 6xcores i58xx or 4xcores 4970 intel cpu? (i'm unsure the ref, the first is newest gen with 6cores, the other previous gen but at 4ghz)
17:55:45 <andythenorth> stick with the zx81
17:55:51 <krinn> ;)
17:57:13 <andythenorth> hmm
17:57:20 <andythenorth> the nml compile time is only 35s on average
17:57:27 <andythenorth> so wtf is eating the rest of the time
17:57:29 * andythenorth explores
17:58:38 <Alberth> krinn: max speed for single core is what counts :)
17:59:35 <andythenorth> 1s to run chameleon templating
17:59:38 <andythenorth> 2s to render docs
17:59:50 <andythenorth> there are 20-30s missing somewhere
18:00:14 <krinn> Alberth, i think so, alas the extra cores won't beat up the extra ghz on most apps
18:00:36 <andythenorth> ach, how do I profile a makefile :(
18:01:25 <krinn> andythenorth, did you try use a tmpfs to see if may help?
18:01:30 <andythenorth> ?
18:01:42 <andythenorth> is that a ramdisk or what?
18:01:50 <Alberth> memorydisk
18:02:03 <andythenorth> eh, no idea how to set that up on OS X
18:02:12 <andythenorth> doubt that IO is the problem
18:02:27 <Alberth> simple way is to add "time" to the commands, time nmlc ....
18:02:46 <krinn> well, if you keep loading the same groundpic other & other it could
18:02:46 <Alberth> which dumps timing of the executed comand
18:03:16 <andythenorth> so I need to find all the commands :)
18:03:17 <Alberth> krinn: nmlc uses lots of caching
18:03:17 <andythenorth> ok
18:03:32 <Alberth> no variable for that?
18:03:41 <Alberth> NMLC = nmlc or such
18:03:54 <Alberth> and in the rule $(NMLC) ....
18:04:09 <Alberth> then you can change to NMLC = time nmlc
18:04:43 <Alberth> you can also do verbose build _V= make
18:05:04 <Alberth> which should dump all commands as they are executed, that may give a hint what takes time
18:05:16 <krinn> andythenorth, dunno for os/x look at /proc/filesystems if you can use tmpfs
18:05:40 <andythenorth> all I found so far was a thing saying “don’t bother with this for BSD-like systems” :)
18:05:50 <andythenorth> it can be done, but apparently it’s a bad idea
18:05:55 <Alberth> it's probably different for osx, as it's BSD-based
18:06:42 <Alberth> don't you have ssd ?
18:07:05 <Alberth> I seem to remember that, at least
18:07:44 <andythenorth> yeah
18:07:57 <andythenorth> it puts about 600MB/s through on average
18:08:16 <Alberth> disk times are probably negligible then
18:08:36 <andythenorth> also I know the main factor is the nml source
18:08:41 <Alberth> seek times are more relevant, as you have lots of small files
18:08:41 <andythenorth> for nml compile time
18:08:45 <krinn> did you then try see if you can alter ccache to handle nmlc?
18:08:53 <andythenorth> nah
18:09:20 <Alberth> time make firs.nml ?
18:09:21 <andythenorth> IO isn’t going to affect advanced varaction 2 expansion times in spritelayouts ;)
18:09:25 <andythenorth> it’s absolutely not disk bound
18:10:07 <andythenorth> with everything cached, a make run is 11s
18:10:09 <Alberth> nml is quite inefficient in expression simplification afaik
18:10:22 <andythenorth> of that 11s, 2.5s is spent in nmlc
18:10:30 <andythenorth> so the makefile has some base overhead somewhere
18:10:31 <Alberth> :O
18:10:45 <andythenorth> I can’t understand the makefile yet
18:10:49 <krinn> dunno could also look at your makefile and ignore some steps if you are sure the result won't change from previous
18:10:49 <andythenorth> it is...sophisticated
18:11:07 <Eddi|zuHause> andythenorth: that means the inefficiency is in your generator script?
18:11:08 <andythenorth> https://dev.openttdcoop.org/projects/firs/repository/entry/Makefile
18:11:15 <andythenorth> Eddi|zuHause: plausibly
18:11:28 <andythenorth> although the code generator is < 1s to run when cached
18:11:47 * andythenorth adds a time to that
18:14:15 <krinn> that's a kickass makefile
18:14:38 <krinn> do everything for you
18:15:38 <V453000> spend years writing it :P
18:16:33 <andythenorth> is it just expected that make has a significant overhead?
18:16:38 <andythenorth> it has to dep check, yes/no?
18:17:07 <Eddi|zuHause> it has to check the date of every file it is supposed to touch
18:17:21 <Eddi|zuHause> also, build a dependency tree
18:17:38 <krinn> maybe you can try /bin/sh if there's no bashism, people keep saying sh is faster
18:18:34 <Alberth> I don't trust lines like 219
18:18:34 <Eddi|zuHause> if you have a fractured directory tree, checking the dates may take some disk access time
18:18:57 <andythenorth> Alberth: +1
18:19:01 <Alberth> nested for-loop, long pipe lines
18:19:15 <andythenorth> but I think that’s turned off
18:19:51 <krinn> it's also not that good to assume sed == gnu/sed for people using bsd/sed
18:20:34 <andythenorth> what is custom_tags.txt?
18:20:40 <krinn> and gnu/sed kick bsd/sed ass by far :)
18:21:15 <Eddi|zuHause> andythenorth: thing that puts hg revision into the version info of the grf, and stuff
18:21:26 <andythenorth> thanks
18:21:29 <andythenorth> hmm
18:21:33 <andythenorth> how long is CPP spending?
18:21:41 * andythenorth tests that
18:21:57 <andythenorth> historically, CPP has been treated as near-instant
18:22:24 <Eddi|zuHause> andythenorth: shouldn't be significantly longer than reading in the file and writing it out again
18:23:11 <krinn> oh! football on tv, later guys
18:23:26 <Eddi|zuHause> that's kinda the point of a simple text replacement engine
18:23:30 <andythenorth> 0.2s
18:23:48 <Eddi|zuHause> andythenorth: i'd put a time on that line Alberth mentioned
18:24:09 <Eddi|zuHause> andythenorth: also, try "_V=time make"
18:24:42 <andythenorth> L219 is wrapped in an ifdef
18:24:48 <andythenorth> I don’t think it’s called
18:24:51 <andythenorth> but I’ll test
18:26:09 <andythenorth> the echo line above is never printed
18:26:12 *** sim-al2 has joined #openttd
18:28:05 <Eddi|zuHause> then try that last line i mentioned
18:28:13 <Eddi|zuHause> it will time each individual command
18:28:46 <Eddi|zuHause> you can then sum that up, and the difference to a "time make" will be the time spent in make itself
18:38:08 <andythenorth> neat
18:39:16 <Eddi|zuHause> you can also do "_V=time time make" to do that all in one go
18:39:38 <Eddi|zuHause> try not to combine this with a -jX :p
18:57:56 *** smoke_fumus has joined #openttd
19:07:41 * andythenorth finds nothing obvious
19:11:45 *** glx has joined #openttd
19:11:45 *** ChanServ sets mode: +v glx
19:15:35 <Alberth> so dependency calculation or time-stamp checking perhaps?
19:16:13 <Alberth> or perhaps something as simple as collecting all files that are part of the project
19:18:26 <Alberth> hmm, it does an awful lot of $(shell ... )
19:25:35 <frosch123> so, processing .bashrc :p
19:26:06 <frosch123> not sure whether $shell would trigger reading that
19:26:38 <Alberth> probably it will
19:26:48 <Alberth> make help is quite fast for me though
19:27:07 <Alberth> less than a second
19:29:14 *** jjavaholic has quit IRC
19:30:50 *** jjavaholic has joined #openttd
19:32:50 <andythenorth> pretty certain the earlier (10-15s slower) results were an aberration
19:32:59 <andythenorth> think my laptop was running some system task
19:33:24 <andythenorth> compile times now are back where they were yesterday
19:33:42 <andythenorth> still, the nmlc part takes 35s, and the makefile takes 48s total
19:33:49 <andythenorth> so something is filling that gap :)
19:34:14 <Alberth> the "urils.py" line was quite slow here
19:34:20 <Alberth> *utils.py
19:34:42 <Alberth> but I couldn't pinpoint the program
19:40:24 <andythenorth> FIRS can do single industry compiles
19:40:36 <andythenorth> for those, nmlc takes 3-4s
19:40:43 <andythenorth> makefile takes ~16s
19:40:47 <andythenorth> interesting
19:41:47 <andythenorth> -include Makefile.dist
19:41:55 <andythenorth> there is no Mafkefile.dis
19:42:05 <andythenorth> or even Makefile.dist :P
19:42:52 <Alberth> that wouldn't take 12 seconds :p
19:43:32 <frosch123> maybe it scans the network drives for it :p
19:43:33 <Alberth> but to get a handle on things, maybe write a shell script that runs the computations?
19:44:22 <Alberth> although that may take more time than you ever gain :)
19:50:59 <andythenorth> maybe my nmlc timing runs are wrong
19:59:10 <andythenorth> nah
19:59:21 <andythenorth> oh nvm :)
19:59:24 * andythenorth got bored finally
20:04:53 <Eddi|zuHause> andythenorth: lines starting with "-" mean "don't error out when this doesn't work"
20:05:42 *** HerzogDeXtEr has joined #openttd
20:06:21 <Eddi|zuHause> andythenorth: did you read the log about me telling you something, then arguing about forgetting it, and now i forgot it?
20:08:20 <andythenorth> can’t remember
20:08:42 <Eddi|zuHause> was yesterday, i think, and you went away before i said it
20:19:38 <andythenorth> floppy versions? <-- at least provide sloped versions of the outer rim tiles
20:20:04 <andythenorth> that
20:26:15 <Eddi|zuHause> that seems like it.
20:28:42 <andythenorth> the inner tiles of the pit will build on slopes
20:28:56 <andythenorth> which will be hidden
20:29:07 <andythenorth> the processor buildings also build on slopes
20:29:16 <andythenorth> I think the placement issue is broadly solved
20:29:26 <andythenorth> I’m getting the expected number on mountainous maps
20:35:07 <Alberth> \o/
20:35:40 *** guru3-vps has joined #openttd
20:42:36 *** Plaete has joined #openttd
20:57:16 <andythenorth> eh
20:58:30 <andythenorth> so if I replace L161 with the following line, it saves about 10s:
20:58:31 <andythenorth> REPO_VERSION_STRING ?= "FOO"
20:58:43 <andythenorth> replacing
20:58:44 <andythenorth> REPO_VERSION_STRING ?= $(shell [ -n "$(REPO_TAGS)" ] && echo $(REPO_TAGS)$(REPO_MODIFIED) || echo $(REPO_DATE)$(REPO_BRANCH_STRING) \($(NEWGRF_VERSION):$(REPO_HASH)$(REPO_MODIFIED)\))
20:59:28 <andythenorth> I get a 39s compile, of which 35s is nmlc
20:59:35 <andythenorth> which is appropriate
21:00:33 <andythenorth> there’s a stack of hg stuff, from L129 or so https://dev.openttdcoop.org/projects/firs/repository/entry/Makefile#L129
21:19:13 <Eddi|zuHause> so, make here took 40 seconds, 25s of which were "render pnml", then nmlc crashed with "no module named 'ply'"
21:24:30 <andythenorth> that’s exciting
21:24:54 <andythenorth> pip install ply? :P
21:26:41 <Eddi|zuHause> already beyond that
21:26:55 <Eddi|zuHause> nmlc takes 1m17s
21:27:13 <frosch123> wrt. hg you might try to replace some ?= with :=
21:27:38 *** sla_ro|master2 has quit IRC
21:29:10 <Eddi|zuHause> total time 2m1s
21:29:36 <Eddi|zuHause> so there's definitely stuff happening inbetween
21:30:18 <Eddi|zuHause> from my limited experience i'd also guess it's the mere fact of calling $(shell ...) that's slow
21:32:22 <andythenorth> Eddi|zuHause: second run is significantly faster btw
21:32:37 <andythenorth> even with changes (limited changes)
21:32:54 <Eddi|zuHause> andythenorth: but i'm not interested in second runs.
21:32:58 <andythenorth> first run, chameleon is very slow
21:33:01 <andythenorth> *very*
21:33:11 <Eddi|zuHause> andythenorth: they make very terrible benchmarks
21:33:24 <andythenorth> should benchmark common case no?
21:33:58 <andythenorth> dunno, the engineering priniciple here seems to be use caching :)
21:34:05 <andythenorth> any non-primed cache will be slow
21:34:15 * andythenorth wishes it were otherwise :|
21:35:42 <Eddi|zuHause> andythenorth: but... you're always interested in the cases where you changed something that's not in the cache.
21:37:09 <andythenorth> caches are fine-grained afaict
21:37:22 <andythenorth> typically only some small % of stuff is changed in FIRS between compile runs
21:37:42 <andythenorth> chameleon cache is fine-grained, compiled .pyc per template
21:37:53 <andythenorth> nml caches _seem_ to be quite fine-grained
21:38:35 <andythenorth> hmm
21:38:40 <andythenorth> what is all that hg stuff actually for?
21:39:20 <Eddi|zuHause> andythenorth: still the same thing. putting the version into the grf
21:39:44 <Eddi|zuHause> revision hash, branch/tag name, age, ...
21:40:06 * andythenorth looks for an equivalent to git describe
21:40:28 <frosch123> you proabably want the find_version.sh script for the nml make framework
21:40:37 <andythenorth> ho maybe
21:40:38 <frosch123> instead of those calls within the makefile
21:40:48 <andythenorth> sounds highly plausible
21:40:49 <frosch123> and you likely want to use many := instead of ?= or =
21:41:35 <andythenorth> what’s the difference? o_O
21:41:49 <frosch123> := evaluates once and stores result
21:41:59 <frosch123> ?= and = reevaluate on every usage
21:42:07 <andythenorth> ah
21:46:09 <andythenorth> nah
21:46:23 <andythenorth> just changing those can’t make 8s speed difference :o
21:46:45 <frosch123> how often is hg called and asked whether the working copy is modified?
21:47:10 <frosch123> by using = i would not be surprised if you get to numbers like 32 times :p
21:47:13 <andythenorth> https://paste.openttdcoop.org/puqda0dcf/plyccp/raw
21:51:34 <andythenorth> primed caches, 38s compile, 35s of which is nmlc
21:53:51 <andythenorth> single-industry compile, 6s
21:54:08 <andythenorth> that’s more like it :P
21:58:03 <andythenorth> now all I need is a flag to tell nmlc that only pngs have changed
21:58:19 <andythenorth> no-parse=[true|false]
22:00:54 *** Plaete has quit IRC
22:15:14 <andythenorth> so for FIRS 1.4.4 (current trunk), best-case compile was ~1m15s
22:15:27 <andythenorth> and single-industry compiles weren’t possible
22:30:35 *** roidal_ has quit IRC
22:34:40 *** Ketsuban has quit IRC
22:37:45 *** sla_ro|master has joined #openttd
22:39:25 *** sla_ro|master has quit IRC
22:42:51 *** Ketsuban has joined #openttd
22:42:56 *** krinn has quit IRC
22:49:03 <andythenorth> also bedtime
22:49:04 *** andythenorth has quit IRC
22:50:54 *** Alberth has left #openttd
22:51:52 *** krinn has joined #openttd
22:52:51 *** efess has quit IRC
23:03:36 *** krinn has quit IRC
23:04:12 *** frosch123 has quit IRC
23:04:57 <Eddi|zuHause> <andythenorth> now all I need is a flag to tell nmlc that only pngs have changed <-- that exists. it's called a dependency.
23:12:31 *** krinn has joined #openttd
23:17:56 *** glevans2 has quit IRC
23:18:19 *** wicope has quit IRC
23:22:03 *** glevans2 has joined #openttd
23:42:21 *** krinn has quit IRC