IRC logs for #openttd on OFTC at 2019-10-13
            
00:00:10 <glx> percent transported will use produced_cargo and last_month_production of the 3rd cargo
00:02:35 <glx> there should be a way to use substrings
00:03:11 <Eddi|zuHause> i haven't looked at the gui in question, but if we're gonna keep the 20 args limit, then it probably needs a complete rewrite
00:04:34 <glx> the 20 args limit could be worked around, I think generating a substring for each cargo can reduce the count
00:05:31 <glx> anyway keeping the string formatted like {ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{RAW_STRING}/{CARGO_LONG}{RAW_STRING}){YELLOW} ({COMMA}%/{COMMA}% transported) is not readable
00:06:00 <andythenorth> alternative approach to tech tree https://firs-test-1.s3.eu-west-2.amazonaws.com/iron-horse/docs/html/tech_tree.dot.svg
00:06:52 <glx> starting openttd to see how it's actually displayed
00:06:53 <andythenorth> very unformatted :P
00:07:13 <andythenorth> graphviz is simpler than I realised btw :D
00:07:17 <andythenorth> it's stupidly easy
00:07:27 <glx> (for "normal" industries with at most 2 cargo)
00:08:24 <andythenorth> hmm, it's not like the industry directory is fantastically useful :P
00:10:35 <Eddi|zuHause> andythenorth: graphviz is simple, unless you have some specific layout in mind, and it's not doing what you want
00:11:05 <Eddi|zuHause> otherwise, it's just a list of "a->b"
00:21:00 <andythenorth> I need some rankings
00:21:04 <andythenorth> but I think it supports that
00:21:11 *** qwebirc73586 has joined #openttd
00:21:37 <glx> ok now I remember how the industry directory looks like
00:22:12 <glx> and yeah all cargos with production details will be unreadable
00:23:02 <nielsm> time to replace the industry directory entirely
00:23:34 <qwebirc73586> Hi, any idea why openttd doesn't honor any music volume changes (midi)? I'm on Arch without ext-midi.
00:23:38 <nielsm> (it could use a replacement with better readability, more table-like)
00:23:54 <glx> qwebirc73586: yes ext-midi doesn't support the function
00:24:18 <qwebirc73586> glx: That's why i explicitly wrote it...
00:24:26 <glx> oh yeah misread
00:24:34 <nielsm> so what are you using? fluidsynth ought to support volume
00:24:42 <qwebirc73586> timidity
00:24:55 <nielsm> ottd using libtimidity?
00:25:20 <qwebirc73586> not sure... i just installed the standard packages and openmsx
00:25:25 <nielsm> libtimidity is not really a maintained output
00:25:40 <qwebirc73586> should i better use fluidsynth?
00:25:49 <glx> we even droped libtimidity support in current master
00:25:49 <nielsm> fluidsynth is my recommendation :)
00:26:09 <milek7> (working libtimidity is in emscripten PR)
00:26:17 <qwebirc73586> any recommended sf2?
00:26:36 <nielsm> not really, all I've tried were poor
00:27:06 <qwebirc73586> why do you recommend it then? :)
00:27:33 <nielsm> because I worked on it last ;)
00:27:47 <nielsm> and know it works correctly and has volume control support
00:28:04 <qwebirc73586> will try it.. thanks
00:28:36 <nielsm> I just don't like any of the soundfonts I've tried from linux distros' package repositories
00:29:02 <glx> there's only two options, timidity (which is often ext-midi unless on some specific OS) or fluidsynth
00:32:07 <qwebirc73586> actually i'm not sure which backend is used... i have both installed but there is no ext-midi in my openttd.cfg
00:32:36 <nielsm> try running: openttd -ddriver=1
00:32:43 <nielsm> in a terminal
00:33:02 <nielsm> it should print some debug messages including which music driver is selected
00:33:15 <glx> usually empty ext-midi is timidity
00:33:20 <glx> IIRC
00:33:22 <nielsm> yeah
00:33:37 <glx> and it's indeed ext-midi :)
00:34:26 <nielsm> the default extmidi commandline is timidity, and if the music driver line in openttd.cfg line is blank and it selects extmidi then there isn't any other driver compiled in
00:34:36 <nielsm> I think extmidi has the lowest priority for autoconfig
00:34:45 <nielsm> apart from null
00:35:03 <qwebirc73586> dbg: [driver] Fluidsynth: sf (null) -- dbg: [driver] Probing music driver 'fluidsynth' failed with error: Could not open any sound font - dbg: [driver] Successfully probed music driver 'extmidi'
00:35:15 <qwebirc73586> it does play music though...
00:35:24 <glx> yes via timidity
00:35:30 <glx> and extmidi
00:35:36 *** arikover has joined #openttd
00:35:58 <qwebirc73586> extmidi via autoconfig then i guess...
00:36:05 <qwebirc73586> or autoprobe
00:36:11 <glx> yup
00:37:04 <nielsm> you can try in openttd.cfg to set music driver = "fluidsynth:soundfont=/path/to/file.sf2"
00:38:11 <qwebirc73586> i will try a wrapper like this: https://wiki.archlinux.org/index.php/OpenTTD#Music_is_not_playing
00:38:45 <nielsm> that won't give you volume control in-game
00:38:55 <nielsm> extmidi can not support music volume control
00:39:07 * andythenorth finds the hard parts of graphviz :P
00:39:41 <qwebirc73586> but fluidsynth might support gain/volume
00:40:22 <nielsm> maybe, it'll be through an external mixer then
00:40:33 <nielsm> if pulseaudio or alsa gives it a virtual channel of its own you can then adjust volume on
00:40:41 <qwebirc73586> oh wait... your fluidsynth cmd is not ext-midi?
00:40:59 <nielsm> yes that's the builtin fluidsynth library usage
00:41:09 <nielsm> your openttd is clearly compiled with libfluidsynth support
00:41:17 <nielsm> it just can't find a soundfont file
00:41:17 <qwebirc73586> ok.. then i will try that first.
00:41:31 *** sla_ro|master has quit IRC
00:43:42 <nielsm> some time I'm going to write a jackmidi and/or alsamidi driver so you can output to a hardware or virtual port...
00:48:51 <glx> hmm maybe industry directory could use something like station list
00:52:18 <nielsm> I really wish the industry list was split into columns
00:52:27 <nielsm> town, type, status
00:52:29 <nielsm> at least
00:53:54 <nielsm> and then ideally also had some filtering capability to show only industries of a specific type or handling a specific cargo
00:57:19 <nielsm> qwebirc73586 got silent, maybe it's working? :)
00:57:49 <qwebirc73586> nielsm: yes... its working now. Thx!
00:58:10 <qwebirc73586> just searching for a better soundfont...GM is not the best indeed.
00:59:00 <qwebirc73586> i think i have a 2GB soundfont somewhere they recommended for dosbox...
01:00:00 <glx> if it's recommended for dosbox it should be ok for openttd too
01:00:39 <nielsm> heh... 2 GB
01:01:01 <nielsm> I wonder how large the samplebank in a 1990's roland soundcanvas is
01:01:06 <nielsm> perhaps 2 or 4 MB ?
01:02:09 <nielsm> (but afaik it also does more than just loop samples, has some kind of generative synthesis mixed in too)
01:05:59 <qwebirc73586> Roland MT32_PCM.ROM is 512KB
01:09:00 * andythenorth wonders what cargos need to be shown
01:09:04 <nielsm> yeah but that's not a general midi synth ;)
01:09:13 <andythenorth> I do sort by highest production at game start
01:11:06 <qwebirc73586> nielsm: but you can probably use it with 'munt' (software synthesizer)
01:11:18 <nielsm> yes
01:11:45 <nielsm> but MT-32 (which munt is an emulator of) is not a GM synth, it won't play the music right
01:12:05 <nielsm> wrong instruments mainly
01:12:47 <Eddi|zuHause> my sound blaster had 512kB soundfont memory IIRC
01:13:23 *** Progman has quit IRC
01:16:31 <nielsm> that said, while the mt-32 is not general midi, it can do absolutely amazing things when used right
01:16:32 <nielsm> https://www.youtube.com/watch?v=TqCDj0IRSTk
01:16:50 <nielsm> _all_ sound in that video is produced by that midi synth
01:18:27 <nielsm> (what the video doesn't show is the 30 seconds waiting while the synth is being reprogrammed)
01:20:49 *** arikover has quit IRC
01:38:50 *** nielsm has quit IRC
01:56:02 *** qwebirc73586 has quit IRC
02:23:37 *** andythenorth has quit IRC
02:42:29 *** Flygon has joined #openttd
03:03:54 *** WormnestAndroid has quit IRC
03:04:18 *** WormnestAndroid has joined #openttd
03:04:52 *** HerzogDeXtEr has quit IRC
04:25:41 *** D-HUND has joined #openttd
04:29:02 *** debdog has quit IRC
04:48:00 *** Wormnest has joined #openttd
04:52:36 *** Thedarkb-X40 has quit IRC
05:07:44 *** supermop_pdx has quit IRC
06:08:30 *** Wormnest has quit IRC
06:12:55 *** glx has quit IRC
07:27:31 <DorpsGek_III> [OpenTTD/OpenTTD] Wirdal commented on issue #7592: Road vehicles don't balance between multiple loading bays https://git.io/fjlL0
08:28:47 *** stefino has joined #openttd
08:31:11 <stefino> hi, I wanted to code road vehicle for specific roadtype but vehicle properties like road_type or current_roadtype doesn't work. So how to code vehicle what has to go only on XY label roadtype?
08:32:15 *** cHawk_ has quit IRC
08:41:53 *** sla_ro|master has joined #openttd
09:00:17 *** Progman has joined #openttd
09:02:03 *** stefino has quit IRC
09:03:50 *** nielsm has joined #openttd
09:20:22 *** andythenorth has joined #openttd
09:22:41 *** arikover has joined #openttd
09:30:37 <andythenorth> moin
10:15:56 *** HerzogDeXtEr has joined #openttd
10:33:41 <andythenorth> "jazzy" https://firs-test-1.s3.eu-west-2.amazonaws.com/iron-horse/docs/html/tech_tree.dot.svg
10:33:56 <andythenorth> formatting graphviz output is (1) possible (2) limited :P
10:35:39 * andythenorth considering post-processing the .svg with python for more control
10:35:46 <andythenorth> insane rendering pipeline
10:36:33 <andythenorth> python vehicles -> template file for .dot -> .dot file -> .svg -> python post-processing step -> done
10:40:24 <andythenorth> I strongly suspect that this will be very hard to format nicely
10:40:50 <andythenorth> compared to https://firs-test-1.s3.eu-west-2.amazonaws.com/iron-horse/docs/html/tech_tree.html
10:43:39 *** WormnestAndroid has quit IRC
10:43:52 *** WormnestAndroid has joined #openttd
11:11:47 *** andythenorth has quit IRC
11:31:49 *** stefino has joined #openttd
11:32:28 <stefino> Hi, I wanted to code road vehicle for specific roadtype but vehicle properties like road_type or current_roadtype doesn't work. So how to code vehicle what has to go only on XY label roadtype? Thanks
11:36:11 <nielsm> are you using an NML version that supports roadtypes?
11:49:44 <stefino> yes
11:50:27 <stefino> http://devs.openttd.org/~frosch/nml-nrt ... -win32.zip
11:50:53 <stefino> this one which is on the first page of NRT topic at forum
11:53:01 <stefino> NRT itself has no problem but when I try to code vehicle and I want to set that vehicle can go only on roadtype with label XY, NML writes that road_type or current_roadtype are unknown
11:53:07 *** gelignite has joined #openttd
11:53:35 <stefino> don't know if it is correct syntaxe, I found it in NRT wiki
11:54:48 *** andythenorth_ has joined #openttd
11:55:14 <andythenorth_> didn’t we just merge NRT to nml master?
11:55:17 <nielsm> the link in that post is two years old, it might not be updated
11:55:23 * andythenorth_ on phone hard to check
11:55:26 <nielsm> yeah but did anyone make a win32 build of NML?
11:55:41 <andythenorth_> I think pm tried but didn’t succeed
11:55:56 <stefino> "the link in that post is two years old" this is a problem..maybe :D
11:56:18 <andythenorth_> does windows do python yet? :p
11:57:15 <nielsm> http://bundles.openttdcoop.org/nml/nightlies/LATEST/
11:57:26 <nielsm> there's at least a new package just not for windows
11:57:41 <andythenorth_> https://github.com/OpenTTD/nml/commits/master
11:58:59 <andythenorth_> sometimes I wonder if nml needs a maintainer
11:59:16 <andythenorth_> I’d do it, but I lack certain requires skills
11:59:25 <andythenorth_> required*
12:01:19 <stefino> :/ ouch, so I have to wait if somebody prepare win version of NML
12:01:43 <andythenorth_> in short yes
12:02:05 <andythenorth_> and I don’t know if it’s known how to do it
12:03:10 <stefino> and person which made it before is not interested in OTTD atm.?
12:03:41 <andythenorth_> probably frosch
12:03:49 <andythenorth_> but maybe others
12:04:01 <stefino> okay
12:04:02 <stefino> :/
12:04:32 <andythenorth_> I am minded to try and improve nml maintenance
12:04:57 <andythenorth_> it means I have to stop working on grfs, but eh
12:05:27 * andythenorth_ thinking
12:06:32 <andythenorth_> it would take me a very long time to figure out the windows binary though
12:08:24 <andythenorth_> hmm
12:08:57 <andythenorth_> * document the build & release inc. windows binary
12:09:35 <andythenorth_> * release 0.5.x with NRT support
12:09:47 <andythenorth_> * finish 16-cargo docs
12:10:23 <andythenorth_> * move docs to be in repo, build with jekyll/sphinx/readthedocs etc
12:12:05 <andythenorth_> * consider including optional pipenv https://pipenv-fork.readthedocs.io/en/latest/
12:12:59 * andythenorth_ wonders why openttd community is immune to the packaging crap that afflicts all the other python devs I know :p
12:13:10 <andythenorth_> must be magic
12:19:19 *** andythenorth_ has quit IRC
12:45:45 *** APTX_ has quit IRC
12:46:48 *** APTX has joined #openttd
13:02:18 * nielsm thinking about proclayout again
13:02:58 <nielsm> might it make more sense to level out for each contiguous set of tiles that will be built?
13:03:24 <nielsm> so if three buildings happen to be placed adjacent they will be leveled to the same height
13:03:41 <nielsm> even if they could have been placed at different height
13:04:55 <nielsm> but that would also require annotating the generated layout with groups that need to be leveled together
13:05:46 <nielsm> and then probably add further annotation to the layout about how tiles including non-industry will need to have their height level changed
13:06:02 <nielsm> and verify against the actual landscape that it is possible
13:06:42 *** andythenorth has joined #openttd
13:07:41 <andythenorth> yo
13:07:48 <LordAro> oy
13:08:12 <nielsm> and would also need to keep track of watercheck tiles throughout the process
13:10:19 <nielsm> when are we getting checkpointing and rollback of the landscape data?
13:11:42 <andythenorth> nielsm: to what extent does the levelling need solved?
13:11:53 <andythenorth> we're not modifying default industries?
13:11:58 <andythenorth> and newgrfs should sort themselves out?
13:12:30 <nielsm> I'm not sure if the newgrf industries actually work properly
13:12:56 <nielsm> since I don't have any with proclayout and also the relevant callbacks
13:15:25 <andythenorth> maybe I can make some
13:15:35 <andythenorth> I just want to poke around nml a bit
13:17:55 <nielsm> right, this is not working out at least, getting asserts en masse
13:20:05 <milek7> does nml needs special windows build?
13:20:07 <milek7> it seems to be plain python
13:20:22 <nielsm> there is a C module to do some graphics stuff, iirc
13:21:18 <andythenorth> "gcc (or possibly another c++ compiler). Needed to compile the cython version of the lz77 module for grf encoding."
13:21:34 <milek7> there is pure python fallback
13:21:40 <milek7> https://github.com/OpenTTD/nml/blob/master/nml/lz77.py
13:24:07 <andythenorth> this is the stuff I want to document
13:24:18 <andythenorth> nml docs are mostly ok, but lacking some maintainer help
13:25:24 <stefino> I tried to install python for win and it seems that python version works. Unknown message dissapeared.
13:26:01 <andythenorth> so it's possible to just install nml in python in windows?
13:26:37 <andythenorth> docs suggest it's possible, just hard https://newgrf-specs.tt-wiki.net/wiki/NML:Getting_started#Windows
13:28:37 <stefino> when I had NML for windows, it gave me message that property road_type doesnt exist. After install python it gave to me message that "This expression can not be assigned to a parameter?
13:29:22 <stefino> so something was changed but it is maybe the same result
13:29:44 <andythenorth> stefino: paste your nml file here? https://paste.openttdcoop.org/
13:30:22 <stefino> andythenorth: https://paste.openttdcoop.org/puxztj04m
13:31:33 *** frosch123 has joined #openttd
13:31:47 <andythenorth> stefino: has your nml installation got the 'examples' directory?
13:32:10 <stefino> yes it has
13:33:16 <andythenorth> if you do windows equivalent of 'cd examples/roadtype_and_tramtype/'
13:33:18 <stefino> aaah...roadtype table
13:33:27 <andythenorth> and nmlc example_roadtype_and_tramtype.nml
13:33:44 <stefino> yes yes...I'm going to add roadtype table
13:33:51 <andythenorth> that example builds for me (with white pixel warnings I should fix)
13:33:55 * andythenorth adds to nml list
13:34:08 <andythenorth> * provide more / better examples, as docs & for debugging installs
13:35:49 <stefino> okay :) I will try it. But all of this is about a question if I install python version of NML correctly
13:39:27 <DorpsGek_III> [OpenTTD/nml] andythenorth opened issue #42: Document how release nmlc, including building a windows binary https://git.io/Je8vQ
13:42:21 <milek7> https://i.imgur.com/NVxDhF6.png
13:43:36 <DorpsGek_III> [OpenTTD/nml] andythenorth opened issue #43: Release nml 0.5.x to provide NotRoadTypes support for nml authors https://git.io/Je8v7
13:43:51 <milek7> i just had to manually install pillow and ply from pip
13:43:56 <andythenorth> milek7: looks correct to me
13:44:10 <andythenorth> milek7: do you have a user on newgrf wiki? https://newgrf-specs.tt-wiki.net/wiki/NML:Getting_started#Windows
13:44:20 <milek7> no
13:44:23 <andythenorth> is it possible you could add like 1 or 2 lines about current state of windows?
13:44:27 <andythenorth> or paste them and I'll do it
13:44:44 <stefino> andythenorth: I tried to compile example file and all was OK and I git grf file
13:44:54 <stefino> get
13:44:55 <andythenorth> stefino: ok cool, your install works :)
13:45:02 <andythenorth> one less problem
13:45:17 <stefino> instal..just copy and paste files into NML file what I had
13:45:24 <stefino> NML folder
13:45:37 <stefino> :D
13:47:13 <andythenorth> nielsm: did nml need a 16-cargo houses patch?
13:47:21 * andythenorth trying to gravedig docs stuff :)
13:47:52 *** GroovyNoodle has joined #openttd
13:49:01 <andythenorth> also related, all the 16-cargo industry stuff seems to now be documented?
13:49:05 <andythenorth> 15
13:49:05 <andythenorth> 15
13:49:08 <andythenorth> https://newgrf-specs.tt-wiki.net/wiki/NML:Industries
13:49:11 <andythenorth> oops paste failed :P
13:49:45 <milek7> install windows python from python.org (select adding to PATH for usage convenience), pip install ply, pip install pillow, download nml repo, python setup.py install
13:49:54 <peter1138> NewGRF Docks?
13:50:15 <andythenorth> YES
13:50:25 <andythenorth> I'll tidy the nml crap up, you do that :)
13:50:39 <peter1138> I got an idea.
13:50:45 <peter1138> I'm gonna play Minecraft.
13:50:52 <andythenorth> that's like playing Blitz
13:50:55 <andythenorth> only not
13:53:50 <stefino> it works! thanks a lot ^_^
14:00:07 <DorpsGek_III> [OpenTTD/nml] andythenorth opened issue #44: Move nml docs to be in repo, build with jekyll/sphinx/readthedocs etc https://git.io/Je8vh
14:01:01 <andythenorth> stefino: great :)
14:01:40 <DorpsGek_III> [OpenTTD/nml] andythenorth commented on issue #44: Move nml docs to be in repo, build with jekyll/sphinx/readthedocs etc https://git.io/Je8vh
14:02:42 <stefino> andythenorth: but really funny. I have a folder with NML for WIN. I add python files and it works. So I tried to delete files for WIN NML and it was bad idea cause it stops work :D
14:03:08 <DorpsGek_III> [OpenTTD/nml] andythenorth opened issue #45: White pixel warnings when compiling example_roadtype_and_tramtype.nml https://git.io/Je8vj
14:03:22 <stefino> andythenorth: so it needs both of them ?! O.o
14:05:38 <andythenorth> no idea :)
14:10:13 <andythenorth> frosch123: did you have something locally that is better than this? o_O https://github.com/andythenorth/fast-export/commit/b69af286b547e996620ffaf1af9e749bf3508eb4
14:12:11 *** Compu has joined #openttd
14:16:51 <frosch123> i did a str.replace, but otherwise its the same
14:17:56 <DorpsGek_III> [OpenTTD/nml] andythenorth opened issue #46: Update nml wiki docs for NotRoadTypes (NRT) https://git.io/Je8fO
14:18:32 <andythenorth> did you have anything reusable for authors?
14:19:14 <andythenorth> I have moved Iron Horse, but I didn't preserve the authors, except where Github magically figured it out
14:19:15 <andythenorth> https://github.com/andythenorth/iron-horse
14:19:26 <andythenorth> I am planning to move all my other projects
14:19:44 <frosch123> https://paste.openttdcoop.org/poweyy6ue?/poweyy6ue <- every now and then you need to add more
14:20:13 <frosch123> random people with unknown emails were assigned to @openttdcoop.org
14:21:32 <andythenorth> and the fast-export script has some plugin to handle this?
14:21:44 <frosch123> you pass it via command line
14:21:54 <andythenorth> wonder if I should try and fix Horse
14:22:01 <andythenorth> I've subsequently made git commits, fun times
14:22:37 <frosch123> if you already have it inside git, you should solve it with git
14:22:43 <michi_cc> git format-patch and git am are your friend to transfer commits to an unrelated repo.
14:23:03 <frosch123> there was some git fitler command
14:23:17 <andythenorth> looks like https://help.github.com/en/articles/changing-author-info
14:23:29 <frosch123> https://git-scm.com/docs/git-filter-branch <- lots of magic
14:23:47 <frosch123> i used it to convert commit message style for the stuff in "extra"
14:23:57 <andythenorth> I am stopping with newgrf for a bit, for a break
14:24:16 <andythenorth> are we prepared to move all the repos from devzone?
14:24:24 <andythenorth> or is that just too overwhelming?
14:24:40 <frosch123> well, i ignored translator requests for months :p
14:24:45 <andythenorth> I kind of feel like devzone maintenance sucks
14:25:19 <frosch123> if there are not enough people, you need to scale down
14:25:29 <frosch123> ottd is more like ttdp today
14:25:30 <andythenorth> there are not as many people as there were
14:25:34 <frosch123> "try it, it might work"
14:25:45 <andythenorth> openttd is kind of fine, velocity is pretty good
14:25:49 <andythenorth> but coop...not so much
14:25:52 <frosch123> ^^ my favoritd ttdp-related quote from dalestan
14:26:06 <andythenorth> bring back dalestan
14:26:33 <andythenorth> is planetmaker here? o_O
14:26:49 * andythenorth tries to make a sensible plan
14:26:54 <frosch123> every blue moon, he is here
14:27:11 <andythenorth> * sunset the repos, notify project owners, move to github?
14:27:27 <andythenorth> * sunset redmine (I like redmine but eh)
14:27:34 <Eddi|zuHause> <andythenorth> "jazzy" https://firs-test-1.s3.eu-west-2.amazonaws.com/iron-horse/docs/html/tech_tree.dot.svg <-- i think this picture has too many rows, and not enough obvious columns
14:27:35 <andythenorth> * decide if jenkins is dead
14:27:39 <frosch123> pm moved tons of repos, i have no idea how he choosed them
14:27:49 <andythenorth> * decide if eints is dead
14:27:55 <andythenorth> * decide if bundles is dead
14:28:16 <frosch123> * decide if newgrf is dead
14:28:33 * andythenorth wonders
14:29:50 <andythenorth> Eddi|zuHause: and compared to? https://firs-test-1.s3.eu-west-2.amazonaws.com/iron-horse/docs/html/tech_tree.html
14:30:33 <frosch123> andythenorth: btw. if you want to continue nml-nrt, someone needs to figure out what was actually merged
14:31:17 <Eddi|zuHause> andythenorth: that has very similar problem, like multiple rows with the same label
14:31:35 <andythenorth> Eddi|zuHause: yes
14:31:36 <Eddi|zuHause> and the columns don't align
14:31:47 <andythenorth> don't align?
14:31:48 <frosch123> as long as noone knows what was implemented in ottd, noone can write grfspecs, noone can update nml, and noone can update ogfx
14:32:26 <andythenorth> oh we seem to lack some nfo docs :) https://newgrf-specs.tt-wiki.net/index.php?title=Action0/Roadtypes&action=edit&redlink=1
14:32:43 <Eddi|zuHause> andythenorth: the metro 2000 column is under the narrow gauge 1950 column
14:32:48 <andythenorth> yes
14:33:11 <andythenorth> Eddi|zuHause: the tech tree varies across track types
14:33:30 <andythenorth> I could proportionally space them to line up
14:33:35 <andythenorth> but I'd have to stretch the arrows
14:34:10 <andythenorth> issues like that are why I explored the graphviz route, but I think it's going to be hard
14:34:38 <andythenorth> I can't consolidate the repeated headings whilst providing a semantically valid table, afaict
14:34:46 <andythenorth> but table semantics are quite disputed so eh
14:34:57 <Eddi|zuHause> some graphviz options are easier than others. like you can group nodes into columns by putting them into supernodes
14:34:58 * andythenorth wonders about sub-tables
14:35:19 <andythenorth> currently I'm grouping the graphviz nodes by stubbing in dummy nodes, which are hidden
14:35:47 <andythenorth> it's an interesting project
14:36:05 <andythenorth> I suspect that the quality only improves marginally, for the cost of a lot of work
14:36:08 <Eddi|zuHause> how does your .dot look like?
14:36:23 * andythenorth will paste
14:37:08 <Eddi|zuHause> andythenorth: there should be valid table methods to combine neighbouring row-fields or column-fields
14:37:15 <frosch123> bbl
14:37:34 <andythenorth> Eddi|zuHause: https://paste.openttdcoop.org/p4xjniurn/w5oavv/raw
14:37:44 <andythenorth> I'll paste the python structure too
14:38:27 <andythenorth> https://paste.openttdcoop.org/pqcgzc6lj
14:38:50 <andythenorth> template for .dot is https://github.com/andythenorth/iron-horse/blob/master/src/docs_templates/tech_tree_linkgraph.pt
14:39:29 <andythenorth> python method for getting the tree is https://github.com/andythenorth/iron-horse/blob/master/src/render_docs.py#L133
14:43:43 <Eddi|zuHause> i seem to have forgotten everything about dot...
14:46:28 <andythenorth> node
14:46:33 <andythenorth> node -> node creates an edge
14:46:47 <andythenorth> [option='foo'] for everything else
14:46:49 <Eddi|zuHause> no, i mean like compile it into <some format>
14:47:00 <andythenorth> some magical command line thing
14:47:08 <Eddi|zuHause> yes, the dot command.
14:47:25 <andythenorth> dot -Tsvg -O *.dot
14:47:34 <andythenorth> is what's in the makefile
14:48:24 *** Speedyn has quit IRC
14:48:37 <Eddi|zuHause> yeah, i arrived at "dot -Tpng test.dot -o test.png"
14:49:21 * andythenorth afk a bit
14:49:31 <Eddi|zuHause> also, "*.dot" sounds wrong in a makefile, it should use the recipe name
14:52:09 *** supermop_pdx has joined #openttd
14:52:14 <supermop_pdx> yo
14:52:15 <Eddi|zuHause> "'heavy_express_1', 'heavy_express_3', 'heavy_express_2', 'heavy_express_4'," <-- you should probably not have those.
14:52:48 <Eddi|zuHause> (for the "too many rows" problem)
14:53:56 *** Speedy` has joined #openttd
15:03:39 <supermop_pdx> FLHerne: how'd the game end up yesterday?
15:06:41 *** glx has joined #openttd
15:06:41 *** ChanServ sets mode: +v glx
15:07:39 <Eddi|zuHause> andythenorth: so my current idea was to have "clusters" for each column, so "subgraph cluster_1950 { engine1; engine2; ... }"
15:10:37 <Eddi|zuHause> (name has to start with "cluster", because apparently names change semantics...
15:10:42 <Eddi|zuHause> )
15:12:38 <FLHerne> supermop_pdx: We stopped not that long after you left, everyone wanted to sleep :P
15:13:10 <FLHerne> Oh, no, later than that
15:13:54 <Eddi|zuHause> andythenorth: that probably removes some need for your dummy nodes
15:14:11 <FLHerne> supermop_pdx: http://www.flherne.uk/files/Multiplayer_Oct12_final.sav
15:14:37 <FLHerne> About 10.30pm UK time
15:14:47 <supermop_pdx> neat
15:15:10 <FLHerne> ITG built loads of new freight stuff, I filled in a few bits, my laptop was struggling a bit by then :P
15:15:30 *** lpx has quit IRC
15:16:02 <FLHerne> I'd be tempted to swap Horse -> UKRS2 if we did it again, tbh
15:16:31 <FLHerne> Horse has very tidy gameplay, but it's a bit dull
15:16:35 <FLHerne> (sorry :P)
15:26:16 *** lpx has joined #openttd
15:27:28 *** stefino has quit IRC
15:29:22 <supermop_pdx> anyone know why my light rail vehicles apparently cause desyncs?
15:30:02 <Eddi|zuHause> code?
15:30:22 <glx> are you changing vehicle data ?
15:31:31 <supermop_pdx> i hope i wasn't, going to take a sec to dig up the file as it was on previous computer
15:32:24 <andythenorth> FLHerne: what do you miss compared to UKRS 2? o_O
15:32:43 <andythenorth> Horse is very level and vanilla
15:33:25 <supermop_pdx> andythenorth: he probably misses the 08s
15:33:28 <andythenorth> lolz
15:51:32 *** Flygon has quit IRC
16:01:08 * andythenorth fixed Horse git repo
16:10:15 <andythenorth> what does eints do when I delete the old repos from under it?
16:11:25 <nielsm> explode?
16:16:48 <Eddi|zuHause> point eints to the new repo first?
16:18:53 <andythenorth> eints can't afaik
16:19:00 <andythenorth> I am abandoning translations (for now)
16:20:37 <FLHerne> andythenorth: I'm probably just not quite your target audience
16:21:07 <FLHerne> But now that I've played a few Horse games and have some real opinions...
16:21:40 <glx> about #7631, maybe https://github.com/OpenTTD/OpenTTD/compare/master...glx22:fix_7631_alt and a new issue about the limitation
16:21:44 *** WormnestAndroid has quit IRC
16:22:04 <glx> won't crash but we still now it's incomplete
16:22:08 <glx> *know
16:23:14 <FLHerne> - UKRS2 represents specific classes and wagons, which mean much more to me as a British lapsed anorak than Horse's vaguely-representative ones
16:23:46 <FLHerne> (different concept, can't fix that :P)
16:24:09 <FLHerne> - For some reason, I really can't get on with Horse's art style
16:24:17 <supermop_pdx> :(
16:25:12 <FLHerne> It's too...geometrical? More like original OTTD art, but next to NewGRFs with a higher-detail style it looks a bit cartoony
16:26:31 <FLHerne> Also, the reused bits of pixels make things look a bit samey (and the virtually-identical vehicles between some generations even more so)
16:28:16 <FLHerne> - Gameplay-wise, the generations are so regimented and consistent that they barely register
16:28:29 <LordAro> glx: add some sort of large TODO, and it'd probably be ok
16:29:52 <DorpsGek_III> [OpenTTD/OpenTTD] glx22 commented on issue #7631: Assert when opening industry directory https://git.io/fjodB
16:29:52 <FLHerne> In UKRS2, everything has its own tradeoffs, so for each new loco I have to think of specific roles
16:30:22 <FLHerne> (and, because of the realism, that includes "it's an LMS engine, so it has to be in this corner" :P)
16:30:32 <glx> LordAro: yeah but TODOs tends to be forgotten ;)
16:31:18 <FLHerne> Whereas for Horse, each generation just means I start buying the new <category> engine rather than the previous one
16:31:49 <FLHerne> Similarly, all the wagons refit the same way, which is probably an improvement for sane people ;-)
16:32:58 <FLHerne> And have even less visual variety than the locos
16:33:58 <FLHerne> I do think it's really just that I'm the wrong user
16:34:39 <andythenorth> fair
16:34:56 <FLHerne> Horse is much more convenient if you want to think about networks and cargo flows, but it's no fun if you want to play model trains :D
16:35:06 <andythenorth> yes
16:35:19 <andythenorth> pretty much every comment aligns with a design goal in Horse
16:35:35 <andythenorth> I added excessive wagons and some un-needed engines as a nod to model trains
16:35:54 <FLHerne> I feel like in a way Horse is almost OpenGFX++?
16:35:54 <andythenorth> but otherwise it's replace-repeat for 6 generations
16:36:15 <andythenorth> it was definitely inspired by playing OGFX+ trains on servers
16:36:19 <andythenorth> and watching coop play style
16:37:13 <andythenorth> I never had any problems with UKRS 2, and there was no point trying to repeat / replace that
16:37:38 <andythenorth> but I noticed a lot of problems with NARS 2, which I really like, but has huge gameplay flaws
16:37:57 <FLHerne> Yeah, even I noticed that :-/
16:39:07 <FLHerne> Same problem as AV8 had -- All The Vehicles, but most of them were effectively redundant, while somehow still leaving gaps in some necessary roles
16:39:12 *** tokai has joined #openttd
16:39:12 *** ChanServ sets mode: +v tokai
16:39:25 <FLHerne> UKRS2 doesn't seem to have that, somehow
16:39:40 <andythenorth> no
16:39:49 <andythenorth> UKRS2 is pretty balanced, apart from the steam railmotor
16:39:53 <andythenorth> and the gronk
16:40:14 <FLHerne> The gronk has its fun niche uses :P
16:40:48 <andythenorth> I can't be doing with the arbitrary wagon speed differences in UKRS 2 / NARS 2 though
16:43:31 <FLHerne> I don't mind them, but I wouldn't miss them either
16:45:13 *** WormnestAndroid has joined #openttd
16:46:09 *** tokai|noir has quit IRC
16:55:05 <andythenorth> you need UKRS Revival
16:55:10 <andythenorth> in 2x zoom and 32bpp
16:55:32 <andythenorth> https://www.tt-forums.net/viewtopic.php?f=26&t=83054&start=40#p1225559
16:55:51 <Eddi|zuHause> a renewal revival?
16:56:14 <andythenorth> yes
16:56:21 <andythenorth> UKR^2S
16:57:51 *** GroovyNoodle has quit IRC
16:57:53 <Eddi|zuHause> glx: i think i'm still for the "complete rewrite" path
16:58:34 <andythenorth> CETS Renewal Revival!
16:59:31 <glx> yeah but rewrite may take time
17:02:36 <LordAro> glx: better than having some random numeric literals though
17:06:17 <Eddi|zuHause> maybe actual columns in the GUI? "Name" "Input" "Output Amount" "Output Efficiency"?
17:06:27 <Eddi|zuHause> or icons for the cargos, like for stations?
17:06:54 <nielsm> yes
17:06:58 <nielsm> actual columns please
17:07:13 <nielsm> and cargo icons would be just fine
17:09:28 *** Wormnest has joined #openttd
17:09:50 <Eddi|zuHause> (oh, and while at it: filters :p)
17:10:12 <Eddi|zuHause> (and a link to the cargo chain view)
17:11:10 <Eddi|zuHause> (this seems to be a completely horrible GUI)
17:11:32 <glx> town, industry type, multiline produced, multiline transported may work
17:11:50 <nielsm> the industries list is basically fine on a 256x256 map with default industries
17:12:07 <nielsm> it's not at all fine on larger or more complex configurations
17:12:36 <Eddi|zuHause> input cargo would definitely be nice to have
17:13:13 <nielsm> how about showing input and output cargos with icons in the list (single line), and then having extended tooltips on it showing full text=
17:13:14 <nielsm> ?
17:13:30 <Eddi|zuHause> yes, probably better than multiline
17:15:43 * andythenorth so many repos :P
17:22:59 *** WormnestAndroid has quit IRC
17:24:29 *** Wormnest_ has joined #openttd
17:25:49 <nielsm> I should try to make an nml patch for proclayout, right andythenorth? :D
17:25:58 <andythenorth> yes pls :)
17:31:19 *** Wormnest has quit IRC
17:37:37 *** Samu has joined #openttd
17:45:02 <frosch123> omg, so c++20 actually completed lambdas into []<>(){}
17:45:04 <andythenorth> oof should I bother moving HEQS?
17:45:12 <frosch123> we need more bracket types
17:45:36 <LordAro> :D
17:45:52 *** WormnestAndroid has joined #openttd
17:46:31 <frosch123> oh wait, [[ ]] is technically another bracket
17:46:56 <frosch123> so, it's just a matter of time till << >>
17:47:33 <frosch123> where do you put attributes on lambdas?
17:47:42 <Samu> ´ ` new bracket type
17:48:58 <nielsm> frosch123: before {} I think
17:49:18 <frosch123> []<>()[[]]{} ?
17:49:27 <nielsm> probably
17:49:39 <frosch123> i would bet for "in front of ()"
17:50:17 <LordAro> https://stackoverflow.com/a/32531788/995325
17:50:22 <LordAro> nielsm wins
17:50:42 <frosch123> :)
17:51:15 <LordAro> https://stackoverflow.com/questions/26888805/how-to-declare-a-lambdas-operator-as-noreturn or maybe not...
17:51:17 <frosch123> you were faster with googling than i were with godbolting
17:51:23 <LordAro> might be a gcc-ism
17:51:41 <frosch123> indeed, clang fails
17:52:01 <frosch123> but it also fails with my version
17:53:13 <frosch123> msvc accepts both
17:53:41 <Eddi|zuHause> does "accepts" imply "interprets sanely"?
17:53:44 <andythenorth> mirating :P https://paste.openttdcoop.org/p88ragllr/xmdtt9/raw
17:54:08 <LordAro> not that i'm sure why you would ever need a noreturn lambda
17:54:26 <frosch123> actually, clang likes nielsm's position, it just rejects the attribute i used
17:54:37 <Eddi|zuHause> LordAro: don't question the use cases.
17:54:43 <LordAro> :p
17:54:43 <frosch123> clang says, "nodiscard" cannot be applied to types
17:55:21 <andythenorth> hmm branches aren't moved
17:55:40 <andythenorth> this will be lolz
17:56:15 <frosch123> andythenorth: they are, you just may need to name them
17:56:23 <LordAro> if something like cpython can successfully migrate hg to git, there must be better options
17:56:28 <LordAro> see if you can find what they used?
17:56:41 <frosch123> LordAro: everyone uses hg-fast-export
17:56:44 <frosch123> it works excellent
17:56:52 <andythenorth> frosch123: thanks :)
17:56:58 <LordAro> so why's andy having so much trouble? :p
17:57:06 <andythenorth> it's not trouble, it's work
17:57:07 <LordAro> inb4 "because andy"
17:57:18 <glx> pff you're too fast
17:57:19 <andythenorth> there's no way around typing stuff
17:57:26 <andythenorth> or copy-pasting it
17:57:56 <andythenorth> the only trouble was eints adding null bytes to commits
17:58:15 <andythenorth> and that mercurial demands python27 because Mercurial Is Shit :)
17:58:37 <frosch123> sounds like osx is shit :)
17:59:04 <frosch123> anyway, i never figured out how those \0 were added
17:59:23 <frosch123> i would know where to look in C, but everything involved is python...
17:59:54 <frosch123> and it only happens on *some* commits, not all...
18:00:06 <andythenorth> so moving my repos is fine, but we're looking at about 775 devzone projects in total
18:00:30 <frosch123> https://github.com/OpenTTDcoop <- there are 35 there
18:00:30 <andythenorth> I put the paste above in case we fancied mass migration :P
18:00:35 <frosch123> no idea how they were selected
18:00:48 <frosch123> 775 devzone projects?
18:00:58 <andythenorth> oh that's interesting
18:01:17 <andythenorth> 775 comes from pasting this into excel https://dev.openttdcoop.org/projects/
18:01:25 <andythenorth> not sure they all have a repo
18:01:35 <frosch123> https://hg.openttdcoop.org/ <- says 344
18:01:38 <frosch123> still a lot
18:02:13 <andythenorth> filter by last commit date? :P
18:02:18 <andythenorth> > 2 years, unlucky, deleted
18:02:30 <andythenorth> that's not a very nice way to sunset things :P
18:02:36 <frosch123> that probably leaves 3 :p
18:02:48 <andythenorth> but realistically one day rhodecode or devzone server or something will die
18:02:58 <andythenorth> and nobody will put it back, and it comes to the same...death of those projecs
18:06:21 <frosch123> well, they are hg repos, not mysql databases
18:06:55 <andythenorth> yes, careless words :)
18:06:59 <andythenorth> I mean death of that remote
18:07:03 <frosch123> batch importing them to git for archive is no big deal, the real dicision is when to pull the plug
18:07:14 <andythenorth> well we can communicate it somehow?
18:07:26 <andythenorth> and then set a date, or 'if the server dies in the meantime;'
18:07:36 <andythenorth> at work, nothing used to get killed until the server actually died
18:07:49 <Eddi|zuHause> we could announce it in our *monthly* dev blog?
18:07:55 <andythenorth> we used to collect legacy services 'in case they're needed'
18:09:13 <andythenorth> I would like to see what planetmaker thinks, as the last active coop member
18:12:20 <Eddi|zuHause> even if you decide to pull the plug, you probably want to give it another year or so after announcement
18:13:43 <andythenorth> yes
18:13:49 <andythenorth> and if it dies in the meantime...
18:13:53 <andythenorth> so Christmas 2020?
18:14:02 <andythenorth> that's when OpenTTD 2.0 also ships? :P
18:15:17 <nielsm> who's hosting the 2.0 release party?
18:15:59 <glx> hmm tooltip window is limited to 5 params
18:16:30 <Eddi|zuHause> glx: scrap the tooltip, he who wants details can open the industry window by clicking?
18:17:15 <andythenorth> +1
18:17:26 <andythenorth> dunno about other people
18:17:35 <andythenorth> but my sole use is to find the highest producing industries at game start
18:17:41 <andythenorth> obviously there are many play styles
18:17:53 <andythenorth> but it needs to be navigation, not a comprehensive industry inspection tool
18:19:14 <nielsm> good point
18:19:35 <nielsm> if icons are unclear the GRF author can make better icons
18:19:46 <andythenorth> my icons suck :D
18:19:55 <andythenorth> nvm
18:21:19 <Eddi|zuHause> yes, it's more of an overview tool
18:22:01 <nielsm> hence why filtering and clear separation of information bits are important features
18:22:07 <nielsm> (which are currently missing)
18:23:22 <andythenorth> hmm moving legacy projects is dull :)
18:29:42 <andythenorth> HEQS is quite broken
18:32:00 <nielsm> https://wiki.openttd.org/User:Nielsmh/Industry_procedural_layouts#NML_syntax
18:32:12 <nielsm> again I'm promixing a syntax that will be horrible to implement :D
18:32:38 <nielsm> in specific the layouts: proclayout( a-bunch-of-lists-of-identifiers ); property syntax
18:39:33 <frosch123> nielsm: can you somehow put it into callbacks?
18:39:43 <andythenorth> nielsm: are there two levels of nesting?
18:39:49 <frosch123> static lists are always "final" for future extensions
18:39:51 * andythenorth reading the syntax
18:40:05 <frosch123> you couln't even add probabilities or similar
18:40:06 <andythenorth> tilelayoutclass seems to compose tilelayout
18:40:26 <andythenorth> and layouts seems to compose tilelayoutclass
18:40:31 <nielsm> frosch123: probabilities are supported by repeating the same layout in a layoutclass
18:41:56 <frosch123> that doesn't change the argument
18:42:10 <frosch123> replace probabiilities with height levels or climate zones or whatever
18:43:55 <andythenorth> where could we announce devzone stuff?
18:43:58 <andythenorth> forums?
18:44:13 <andythenorth> could we bcc email all project owners?
18:44:27 <frosch123> it's about functional style instead of declarative style
18:44:40 <frosch123> declarative style in action 0 is always a dead end for extensions
18:45:05 <frosch123> andythenorth: ask pm :)
18:45:16 <frosch123> first step would be to make devzone readonly
18:46:05 <andythenorth> I shall miss devzone when it's not there :)
18:46:10 <andythenorth> mostly for uploading pictures
18:47:59 <nielsm> frosch123: thinking about it a bit, yes cb based does naturally have more flexibility, but also a massive extra complexity
18:48:28 <nielsm> I'm thinking on the level of having to construct a special industry construction context with its own variables and such
18:48:57 <nielsm> and callbacks having multi-valued outputs
18:49:22 <nielsm> (which layout to use, where about to position it, possibly more)
18:49:58 <Eddi|zuHause> <andythenorth> could we bcc email all project owners? <-- i don't think i've updated my devzone email
18:50:06 <glx> pff stupid intellisense and FOR_ALL macros
19:02:30 <andythenorth> "Mercurial.error.LookupError: data/sprites/.DS_Store.i@60ce311957b5: no match found"
19:02:42 <andythenorth> lol historical macOS crap bites back
19:07:16 *** firewire1394 has joined #openttd
19:22:05 <nielsm> glx: we should replace FOR_ALL macros with function templates taking lambda a lambda argument for loop body
19:24:51 <frosch123> that does not support "break"
19:25:00 <frosch123> you need to use generators instead
19:25:08 <glx> break is return
19:25:21 <frosch123> return is continue
19:27:15 <nielsm> could require the function to return an enum member indicating break or continue
19:27:52 <frosch123> i am actually not sure, whether there are any "break" in FOR_ALL :)
19:28:08 <frosch123> kind of defeats the "ALL" part
19:28:19 <nielsm> some kind of search for first match?
19:28:28 <LordAro> quite a lot of them could be relatively easily replaced with a ranged for
19:29:01 <nielsm> yeah having appropriate .begin() and .end() members could also do it
19:29:14 <Eddi|zuHause> trow StopIteration? :p
19:29:19 <Eddi|zuHause> *throw
19:29:31 <Eddi|zuHause> like truly pythonic :p
19:29:43 *** patricia[m] has joined #openttd
19:30:27 <Eddi|zuHause> frosch123: break in FOR_ALL sounds like a way to test "does it exist"?
19:33:22 <nielsm> for (Vehicle *veh : _vehicles.OfType(VEH_TRAIN)) ... ?
19:33:29 <nielsm> with some helper classes
19:36:23 <glx> https://github.com/OpenTTD/OpenTTD/compare/master...glx22:industry_directory <-- replaced text with sprites without detailled info
19:36:35 <andythenorth> oof turns out corrupted mercurial repos can be fixed :P
19:36:56 <andythenorth> afaict there's a tool that converts hashes 1:1 to make a new repo, but drops any that error
19:37:28 <andythenorth> seems to work
19:38:13 <glx> side effect, the window can be smaller :)
19:41:16 <LordAro> :)
19:41:26 <LordAro> glx: '*' is on the wrong side
19:42:06 <glx> I hate when VS moves them
20:13:22 <andythenorth> ho ho
20:13:44 <andythenorth> the unsolved 'how to give a hg-like rev number with git' problem
20:13:47 <andythenorth> reappears :)
20:18:34 <Eddi|zuHause> just count till project root
20:18:56 <Eddi|zuHause> this will have duplicates across branches, but who cares :p
20:20:11 <andythenorth> I wondered about using epoch
20:20:32 <andythenorth> it just needs to be a number, which will be higher in most cases than for older revs
20:20:48 <andythenorth> and ignoring edge cases like messing with history
20:21:22 <nielsm> enumerate all revisions reachable from all branches and tags, order them by commit time, and number them based on that
20:21:54 <andythenorth> with or without local caching? :P
20:22:07 <nielsm> I'm just the ideas guy
20:22:32 <Eddi|zuHause> nielsm: since you cannot synchronize this across repos, i think it's wasted effort
20:23:04 <Eddi|zuHause> whereas (branchname+commits since root) should be synchronous
20:23:30 <andythenorth> it gets complex because we have at least 2 use cases, maybe 3
20:23:41 <andythenorth> 1. in action 14, for comparison of min. compatible version
20:23:59 <andythenorth> 2. for newgrf author, to make sense of development revs when authoring
20:24:21 <Eddi|zuHause> it should solve 1, at least for master branch+releases
20:24:27 <andythenorth> 3. possibly in listing artefacts produced by CI systems
20:24:40 <Eddi|zuHause> 3 should use hash
20:24:50 <Eddi|zuHause> hash+date
20:24:54 <andythenorth> hash + the date the CI published the artefact
20:25:09 <andythenorth> the common case is 'what is the most recent *build*'
20:25:17 <Eddi|zuHause> 2 should work well-enough
20:26:11 <andythenorth> I don't know what comparator is used for action 14 revs
20:26:21 <andythenorth> arguably branches could have a branch name, and a branch local rev
20:26:29 <andythenorth> anyway, it doesn't need to be perfect
20:26:34 <andythenorth> it's just a game about cartoon trains
20:26:44 <andythenorth> and all my current revs are now '1' across 8 or so grfs
20:27:02 <andythenorth> anything is better :P
20:28:12 <Eddi|zuHause> "git rev-list HEAD --count"
20:29:15 <Eddi|zuHause> there's also "git rev-list --all --count" but i don't think that's of much use
20:29:57 <andythenorth> @seen alberth
20:29:57 <DorpsGek> andythenorth: alberth was last seen in #openttd 11 weeks, 5 days, 0 hours, 8 minutes, and 44 seconds ago: <Alberth> andy: I bisected the build-train bug back to d54b6ac09b6fe88c09f7886739fe9c05f16b8222 (feb 28th)
20:30:41 <andythenorth> alberth wrote this to try and figure out what's viable https://paste.openttdcoop.org/pwn4vt8bg/in7ifd/raw
20:31:58 <andythenorth> why am I not just manually incrementing the A14 compatibility digits?
20:32:08 <andythenorth> all they have to do is increase when savegame breaks
20:33:28 <Eddi|zuHause> andythenorth: no idea what that's supposed to do, but it has nothing to do with getting some kind of number out of git
20:33:46 <Eddi|zuHause> andythenorth: manual version counts are meh
20:34:10 <andythenorth> I agree, but A14 appears to demand them
20:34:40 <Eddi|zuHause> so, what speaks against "git rev-list HEAD --count" now?
20:35:03 <andythenorth> what did frosch123 quote earlier?
20:35:04 * andythenorth looks
20:36:44 <andythenorth> [1:25pm] frosch123: "try it, it might work"
20:37:08 <andythenorth> frosch123: ^^ my favoritd ttdp-related quote from dalestan
20:37:15 <andythenorth> oh logs broke again :)
20:37:16 <andythenorth> oof
20:37:28 <Eddi|zuHause> not sure what that has to do with anything, but... :p
20:37:53 <andythenorth> I can predict human error
20:38:00 <andythenorth> I'll set min. compatible version based on a branch
20:38:03 <andythenorth> then merge to master
20:38:13 <andythenorth> build the release
20:38:16 <andythenorth> and find it doesn't work
20:38:20 <andythenorth> then we can lauch
20:38:22 <andythenorth> laugh
20:38:54 <Eddi|zuHause> that's nonsense, min-compatible should never be higher than the master version of the branch point
20:41:08 <andythenorth> squash and merge?
20:41:12 <andythenorth> 200 commits disappear?
20:41:15 <andythenorth> edge cases
20:41:18 <andythenorth> I don't squash anyway
20:41:38 <andythenorth> if it happens, it can be dealt with
20:41:46 <Eddi|zuHause> shouldn't matter if you squash or rebase
20:43:53 <LordAro> you shouldn't squash something that's already been released and used
20:44:03 <LordAro> prereleases don't matter for compatibility anyway
20:44:04 <andythenorth> dev branches?
20:44:19 <andythenorth> this is all straw men tbh
20:44:22 <Eddi|zuHause> you should never push dev branches to a wider audience
20:44:40 <Eddi|zuHause> if you want to publish nightlies or something, they must all be master
20:44:54 <andythenorth> well that violates everything I know about software quality but ok :P
20:45:09 <Eddi|zuHause> basically, don't have long-lasting branches
20:45:13 <andythenorth> where I live, one never merges untested code to master
20:45:20 <andythenorth> meanwhile
20:45:30 <andythenorth> should I attempt to rewrite this for git? https://github.com/andythenorth/iron-horse/blob/master/bin/hg-info
20:45:35 <andythenorth> it's quite engineered
20:45:37 <Eddi|zuHause> that's if you have a large developer base
20:45:51 <Eddi|zuHause> which won't happen with newgrfs :p
20:47:02 <Eddi|zuHause> also: "if (branchname != 'master') rev+=10000"
20:47:27 <andythenorth> I could just dump "git rev-list HEAD --count" directly into the makefile
20:47:44 <Eddi|zuHause> that's what i said, right?
20:47:45 <andythenorth> which seems to throw away all the protection and case handling alberth put in the hg-info script
20:48:04 <andythenorth> yes I am considering doing exactly what you said
20:48:20 <andythenorth> but with this in mind https://en.wikipedia.org/wiki/Wikipedia:Chesterton%27s_fence
20:49:57 <andythenorth> hmm, the makefile references both REPO_REVISION and REPO_VERSION
20:50:05 <andythenorth> I might scorch the earth a bit carefully
20:50:23 <Eddi|zuHause> sounds like you want REVISION
20:51:04 <andythenorth> https://github.com/andythenorth/iron-horse/blob/master/Makefile
20:51:11 <Samu> this script took too long to initialize, what can I do to fix it?
20:51:26 <andythenorth> make it shorter?
20:51:36 <andythenorth> look for loops that can exit earlier?
20:51:42 <andythenorth> reduce the size of data structures?
20:53:06 <Samu> i don't even know what goes into the initialize
20:54:24 <Eddi|zuHause> andythenorth: i have no idea what "bin/git-info" is, but you probably want to change something around this line: REPO_REVISION = $(word 1,$(REPO_INFO))
20:54:59 <andythenorth> bin/git-info is currently a stub script returning '1 1 1 1' to stop the compile failing
20:55:16 <andythenorth> it's a substitute for bin/hg-info
20:55:31 <andythenorth> which has a fairly substantial interface to hg
20:55:32 <Eddi|zuHause> right
20:55:50 <andythenorth> this is all just yak shaving
20:56:10 <Eddi|zuHause> andythenorth: none of this seems to be in firs, which i was looking at
20:56:30 <Eddi|zuHause> in firs there's just "REPO_REVISION ?= $(shell HGPLAIN= $(HG) id -n | cut -d+ -f1)"
20:56:37 <Eddi|zuHause> which you would replace with the git line
20:56:39 <andythenorth> https://github.com/andythenorth/firs/blob/master/Makefile
20:56:52 <andythenorth> FIRS moved
20:56:56 <andythenorth> ;)
20:57:00 <Eddi|zuHause> ok, i might have an old firs :p
20:57:36 <Samu> oh, building a list of towns?
20:57:44 <Eddi|zuHause> Feb 2019
20:57:55 <andythenorth> moved later in 2019
20:58:27 <andythenorth> A14 uses REPO_REVISION
20:58:31 <Eddi|zuHause> anyway, you can also put the git line into bin/git-info
20:58:37 <andythenorth> REPO_VERSION is used in some human readable places
20:58:45 <andythenorth> I suspect only one is needed
20:58:46 <Eddi|zuHause> yeah, that's about what i expected
20:59:07 <andythenorth> possibly they distinguish tags and rev numbers, not sure
20:59:07 <Eddi|zuHause> both are useful
20:59:29 <Eddi|zuHause> but if you already have this "info" interface, which returns 4 numbers, might as well keep the interface and fill the numbers with meaningful values
20:59:49 <andythenorth> ok
20:59:53 <andythenorth> that would be ideal
21:00:58 <Eddi|zuHause> the version you'd try to get out of "git describe", and the revision will be "git rev-list --count"
21:01:23 <andythenorth> so we'll take the hash for version?
21:01:48 <Eddi|zuHause> "git describe --tags" will look for the last tag
21:02:01 <Eddi|zuHause> OpenTTD/trunk> git describe --tags
21:02:03 <Eddi|zuHause> 1.9.0-beta3-483-gfe7d9b041
21:02:13 <andythenorth> yup
21:04:40 <Samu> it was that. I was creating a list of towns in the constructor
21:04:56 <Samu> there were 12k towns
21:08:58 <andythenorth> rate limit
21:09:00 <andythenorth> max iterations
21:09:03 <andythenorth> something
21:10:45 <Eddi|zuHause> you can probably improve "git describe" if after you made a '1.n.0' release, you make a tag '1.(n+1)-alpha'
21:13:44 <andythenorth> first thing is to port the interface I guess
21:56:19 <andythenorth> oof
21:56:25 <andythenorth> opengfx must have been so much work to do
21:56:32 * andythenorth is using sprites from it for nml examples
21:56:34 <andythenorth> remarkable
22:01:20 *** firewire1394 has quit IRC
22:21:55 *** fjodor[m] has joined #openttd
22:28:04 <Samu> hmm town lists are slow when too many towns in the map. This is what I get for not using valuators
22:31:30 <Samu> and every time i rebuild the list of towns for possible destinations, I get a different number of towns
22:31:49 <Samu> the sum doesn't add up to the same total
22:32:36 <Samu> I think I know why... the towns get larger or smaller
22:33:22 <Samu> i only pick large enough towns every time I check for a possible destination, it's okay, but odd to look at
22:37:12 <andythenorth> is nforenum still a thing?
22:37:43 *** gelignite has quit IRC
22:37:56 *** gelignite has joined #openttd
22:38:08 <Samu> things to work on for my next AI version: "working with very large number of towns in town lists is too slow, avoid rebuilding town lists"
22:38:39 <Samu> how often are towns created?
22:38:43 *** gelignite has quit IRC
22:38:47 <nielsm> usually never
22:38:54 <nielsm> unless server rules permit it
22:39:00 <nielsm> or a GS is in use
22:39:15 <Samu> only my AI founds towns :(
22:40:19 <nielsm> lol
22:40:25 <supermop_pdx> go get a cookie / donut / ice cream? or stay inside and try to do some art?
22:40:29 <nielsm> sorry wrong window
22:44:07 <andythenorth> supermop_pdx: obvs donut
22:44:09 <andythenorth> then art
22:44:51 <Samu> slicing the AI work in multiple repeatable tasks is starting to become too much work for too little benefit
22:45:23 <Samu> actually, the benefit is there
22:45:46 <Samu> it's just too much work
22:46:13 <Eddi|zuHause> how is the decision ever not "stay inside"?
22:47:15 <andythenorth> hmm
22:47:21 <andythenorth> 256x128 is maybe too small for a game
22:47:30 <andythenorth> I've connected ~everything :P
23:00:28 *** Samu has quit IRC
23:02:27 <Eddi|zuHause> i disagree
23:02:47 <Eddi|zuHause> after you connect everything, you optimize it for throughput
23:04:12 <andythenorth> well I am still playing
23:05:15 <Eddi|zuHause> so, where's your stream? :p
23:06:53 <andythenorth> oof
23:08:02 <DorpsGek_III> [OpenTTD/OpenTTD] glx22 commented on issue #7631: Assert when opening industry directory https://git.io/fjodB
23:21:29 *** HerzogDeXtEr has quit IRC
23:26:11 *** Progman has quit IRC
23:28:39 <andythenorth> how about a 'fund random industry' option? :P
23:28:57 <andythenorth> as an extra entry in the 'fund industry' window :P
23:32:12 <nielsm> might work... what should the cost be?
23:32:48 <nielsm> idea: some kind of weighted average based on the natural spawning chance
23:32:55 *** sla_ro|master has quit IRC
23:38:02 <frosch123> did people stop complaining about industries openiing and closing all the time?
23:38:48 <Eddi|zuHause> frosch123: in what world do people ever stop complaining?
23:40:17 <andythenorth> cost is cost of the industry you get? :P
23:40:23 <andythenorth> hmm prospecting though
23:40:35 <andythenorth> frosch123: if you stopped reading forums and reddit, they stopped complaining
23:40:43 <andythenorth> tree, forest, sound
23:40:45 <andythenorth> falling
23:41:02 <frosch123> yes, i did :)
23:41:41 <frosch123> argueably i never started reading reddit regulary
23:42:04 <andythenorth> funny place
23:46:14 <supermop_pdx> should little capsule towers all face the same way like in TT land, or face more or less random directions
23:48:08 <Eddi|zuHause> they should be unique per map
23:49:12 <supermop_pdx> also, if coal mine is making 320t /mo and is only 27 tiles from the coke oven, should it be electric?
23:50:19 <frosch123> andythenorth: i only noticed that various yt channels started disabling yt comments and linked to reddit instead
23:50:34 <andythenorth> that's interesting
23:50:49 <andythenorth> reddit is usually nicer than I expected
23:51:01 <Eddi|zuHause> that's because youtube comments are horrible, even if you factor out the people that write horrible comments
23:51:33 <andythenorth> YT is particularly prone to keyboard warrioring
23:51:44 <andythenorth> along with BBC News
23:51:52 <Eddi|zuHause> like, keeping discussions alive, or moderating them
23:52:27 <frosch123> the first few channels did it years ago, when google+ was a thing, and rated comments by controversdiality
23:52:53 <frosch123> which essentially resulted in putting the worst comments to the top
23:52:54 <Eddi|zuHause> i don't think either of those helped :p
23:52:59 <andythenorth> most controversial = winner?
23:53:25 <frosch123> but even after google+ was over, channels still continued to move the discussion
23:53:37 <Eddi|zuHause> it was most interacted = winner, but that has a strong bias towards controversial ones
23:53:43 <frosch123> andythenorth: yes, the most racist/sexist comment was top
23:53:49 <andythenorth> super
23:53:54 <andythenorth> such a hard game to win
23:54:57 <frosch123> don't read comments for news pages
23:55:25 <frosch123> those are even stupid on tech pages like heise
23:55:32 <supermop_pdx> andythenorth: when to use 'dump car'
23:55:45 <andythenorth> whenever you want
23:55:47 <supermop_pdx> its a few quid cheaper than hopper
23:56:03 <glx> youtube comments quality highly depends on the channel