Back to Home / #openttd / 2018 / 10 / Prev Day | Next Day
#openttd IRC Logs for 2018-10-25

---Logopened Thu Oct 25 00:00:40 2018
00:17-!-yellyFish [] has joined #openttd
00:17-!-yellyFish is "yellyfish" on #openttd
00:26<yellyFish>hi. i have been trying to profile my cpu usage and see why does it run slow sometimes and i am no expert in C++ but i could tell that there is a recursive call to deterministspritegroup::resolve that sometimes get pretty deep. As i said i am no expert but i recall hearing that recursive calls are difficult for compilers to optimize by themselves. Does anybody here have the time and knowledge to
00:26<yellyFish>look into it or i am just rambling?
00:40<Eddi|zuHause>no sane person is here at 6AM
00:47<yellyFish>most people here are in europe time zone?
00:47<yellyFish>i guess i'll ask later then
00:56-!-rocky11384497 [~rocky1138@] has quit [Ping timeout: 480 seconds]
02:02-!-Thedarkb-X40 [] has quit [Ping timeout: 480 seconds]
02:56-!-yellyFish [] has quit [Ping timeout: 480 seconds]
03:05-!-yellyFish [] has joined #openttd
03:05-!-yellyFish is "yellyfish" on #openttd
03:14-!-Wacko1976 [] has joined #openttd
03:14-!-Wacko1976 is "The Chat Cool People Use" on #openttd #/r/openttd
03:21-!-glavinics [~glavinics@2a01:c23:7842:9b00:8d48:ac62:29:595e] has joined #openttd
03:21-!-glavinics is "glavinics" on #openttd
03:27-!-matt21347 [~matt21347@] has joined #openttd
03:27-!-matt21347 is "matt" on #openttd #debian-next #debian-welcome #debian
03:29-!-glavinics [~glavinics@2a01:c23:7842:9b00:8d48:ac62:29:595e] has quit [Ping timeout: 480 seconds]
03:47-!-Wacko1976 [] has quit [Ping timeout: 480 seconds]
04:00-!-matt21347 [~matt21347@] has quit [Remote host closed the connection]
04:01-!-matt21347 [~matt21347@] has joined #openttd
04:01-!-matt21347 is "matt" on #debian #debian-welcome #debian-next #openttd
04:13-!-Wacko1976 [] has joined #openttd
04:13-!-Wacko1976 is "The Chat Cool People Use" on #openttd #/r/openttd
05:08-!-glavinics [~glavinics@2a01:c23:7842:9b00:6459:aedd:8ce6:417b] has joined #openttd
05:08-!-glavinics is "glavinics" on #openttd
06:07-!-Wacko1976 [] has quit [Ping timeout: 480 seconds]
06:07-!-Wacko1976 [] has joined #openttd
06:07-!-Wacko1976 is "The Chat Cool People Use" on #openttd #/r/openttd
06:08-!-sla_ro|master [] has joined #openttd
06:08-!-sla_ro|master is "slamaster" on #sla #openttd
06:44-!-Wacko1976_ [] has joined #openttd
06:44-!-Wacko1976_ is "The Chat Cool People Use" on #openttd #/r/openttd
06:48-!-Wacko1976 [] has quit [Ping timeout: 480 seconds]
07:04-!-Wacko1976_ [] has quit [Ping timeout: 480 seconds]
07:10<@planetmaker>Eddi|zuHause, can you explain to me how CETS builds for you locally? It doesn't for me:
07:11<@planetmaker>(using a python3.6 environment)
07:13<LordAro>looks like scripts/ is broken :p
08:25-!-Wacko1976 [] has joined #openttd
08:25-!-Wacko1976 is "The Chat Cool People Use" on #openttd #/r/openttd
08:30-!-sim-al2 [] has joined #openttd
08:30-!-sim-al2 is "sim-al2" on #openttd
08:31-!-glavinics [~glavinics@2a01:c23:7842:9b00:6459:aedd:8ce6:417b] has quit [Remote host closed the connection]
08:52-!-sim-al2 is now known as Guest1317
08:52-!-sim-al2 [] has joined #openttd
08:52-!-sim-al2 is "sim-al2" on #openttd
08:57-!-Guest1317 [] has quit [Ping timeout: 480 seconds]
09:08-!-sim-al2 [] has quit [Ping timeout: 480 seconds]
09:11<Eddi|zuHause>planetmaker: needs python2
09:12<Eddi|zuHause>they removed the inline-decomposition of tuples in python3
09:12<Eddi|zuHause>and i use that all over the place
09:13<Eddi|zuHause>probably the main reason why i never bothered porting
09:15<@planetmaker>py2 is so oldschool :P
09:16<LordAro>booo, py2, etc
09:16<Xaroth>can you link the offending line, Eddi|zuHause?
09:17<Eddi|zuHause>Xaroth: lots of lines in the form "def x((a1, a2)):", where you now need to write "def x(a):\n a1,a2=a" or something like this
09:18<Xaroth>ew :P
09:18<LordAro>or add * to where the function is called
09:19<Eddi|zuHause>LordAro: it's already called with **
09:20<Xaroth>yeah, there's very strong reasons why they wanted to get rid of tuple parameter unpacking
09:20<LordAro>oh dear
09:20<LordAro>maybe you should just write better code :p
09:21<Eddi|zuHause>should probably replace it with named tuple
09:21<Xaroth>to be fair, the 'workaround' isn't that much work :P
09:21<Eddi|zuHause>so i can write a.a1, a.a2 where needed
09:21<Xaroth>it's just one line of code extra per instance
09:21<@planetmaker>aye, ok, builds when I install everything outside an anaconda environment
09:22<@planetmaker> <-- makes me wonder what went wrong there :D
09:23<Eddi|zuHause>the code is really not that bad, the problem is my "identifier" is a tuple, and in some places i don't need to know the components of that tuple, so i just compare the complete ID, and in other places i do need to know the complete ID so i decompose it into the tuple parts
09:23-!-Samu [] has joined #openttd
09:23-!-Samu is "OFTC WebIRC Client" on #openttd
09:24<@planetmaker>use a dict instead of tuple? :)
09:24<Eddi|zuHause>planetmaker: no, that's horrible
09:24<Eddi|zuHause>(to debug typos and stuff)
09:26<Eddi|zuHause>planetmaker: i can't help you with pixa
09:27<@planetmaker>I've no clue there either... but I wonder... I don't think I have it installed here localy... so it's not needed. Or is it?
09:27<Eddi|zuHause>planetmaker: maybe your version of pixa is too new to work with python2?
09:27<Eddi|zuHause>i think i have code to skip pixa
09:27<Eddi|zuHause>it won't have the autogenerated (currently placeholder) sprites
09:29<@planetmaker>jenkins@jenkins:~/jobs/pixa/workspace$ hg id
09:29<@planetmaker>f1d1d7fed9cc tip
09:29<@planetmaker>what do you use?
09:29<Eddi|zuHause>uhm, i don't even know where to look
09:31<@planetmaker>jenkins@jenkins:~/jobs/pixa/workspace$ hg log | grep b1d2ac
09:31<@planetmaker>changeset: 20:b1d2acd778e2
09:31<@planetmaker>jenkins@jenkins:~/jobs/pixa/workspace$ hg id -n
09:31<@planetmaker>one revision difference
09:33-!-Samu [] has quit [Quit: Page closed]
09:34-!-Samu [] has joined #openttd
09:34-!-Samu is "OFTC WebIRC Client" on #openttd
09:34<@planetmaker>Codechange: make pixa python 3 compatible
09:34<@planetmaker>so that actually might break it indeed for you
09:37<@planetmaker>let's muddle around and downgrade DevZone's pixa
09:37<@planetmaker>and see how CETS build goes then
09:37<@planetmaker>seems to work :P
09:38<@planetmaker>Eddi|zuHause, so, please blame andy :P
09:38<Xaroth>never not blame andy, right?
09:38<@planetmaker>well... mostly :P
09:38<Xaroth>I mean, I could go for "Never not blame TrueBrain"
09:38<@planetmaker>but pixa is his baby, it's his commit :)
09:38<Xaroth>but he's not at home
09:38<Xaroth>so it wouldn't be as funny.
09:40<@planetmaker>ding. Success in building CETS on DevZone
09:41<Eddi|zuHause>hm, i ran "make -B" but it somehow didn't process the png files (and never got to the point of using pixa)
09:42<@planetmaker>now I'm in a dilemma... the builds don't exactly run in a separate environment which is scratched afterwards... I can have only one pixa currently :P
09:43<Xaroth>Rewrite all the things! :P
09:43<Eddi|zuHause>use containers! blockchain!
09:43-!-nielsm [] has joined #openttd
09:43-!-nielsm is "Niels Martin Hansen" on #openttd #tycoon
09:43<@planetmaker>Xaroth, yes... that's what TB would say. And actually... me, too, in this case ;)
09:43<Xaroth>I've been hanging out with TrueBrain too much.. it's rubbing off
09:43<Xaroth>... ew, cooties.
09:43-!-Flygon [] has quit [Remote host closed the connection]
09:45<@planetmaker>is andy still using his pixa in his repos, anyone around here right now knows?
09:46<Eddi|zuHause> File "/usr/lib64/python2.7/site-packages/PIL/", line 27, in <module>
09:46<Eddi|zuHause> from . import VERSION, PILLOW_VERSION, _plugins
09:46<Eddi|zuHause>ValueError: Attempted relative import in non-package
09:46<Eddi|zuHause>uhm what?
09:46<Eddi|zuHause>planetmaker: almost certainly
09:47<@planetmaker>may I suggest to import the correct pixa revision into your repo so that you can import pixa locally?
09:48<@planetmaker>it's only one tiny file
09:48<@planetmaker>at least for the time being until I have a proper solution
09:49<@planetmaker>It's a bit ugly, but... knowing my time schedule, I won't have a satisfactory solution this or next week :)
09:53<Eddi|zuHause>let me first see whether i can get pixa to run here again
10:06<Eddi|zuHause>planetmaker: hm, so after fixing a few unrelated things in my code, it seems to run with pixa r21
10:08<@planetmaker>then push and see whether DevZone builds it just fine. It's back to pixa-v21
10:08<Eddi|zuHause>at least i could never reproduce your version of the error :p
10:20<Eddi|zuHause>planetmaker: is it possible that the error is in the PIL version?
10:24<@planetmaker>hm, why?
10:24<@planetmaker>as the last line of the stacktrace is therein?
10:24<@planetmaker>I wondered... yet I assume that rather pixa or cets is passing-through some type which PIL/pillow doesn't expect. dunno
10:24<@planetmaker>anyhow, the build on devzone succeeded
10:24<Eddi|zuHause>yes, but i couldn't reproduce that
10:25<@planetmaker>do you really use PIL instead of pillow?
10:26<@planetmaker>(or does devzone?)
10:26<Eddi|zuHause>i'm not sure
10:27<Eddi|zuHause>i think pillow is providing an implementation of PIL, so from python side they look the same
10:27<@planetmaker>that's how pillow started, yes. PIL simply was abandoned
10:28<@planetmaker>it's a fork of PIL
10:30<Eddi|zuHause>i think the "wrong" way to import had weird side effects
10:33-!-sla_ro|master2 [] has joined #openttd
10:33-!-sla_ro|master2 is "slamaster" on #sla #openttd
10:33<Eddi|zuHause> <-- the links on this page don't work
10:34<@planetmaker>ah, hm, yes. probably a broken plug-in on update
10:34<Eddi|zuHause>also, where would i find the output of the build?
10:34-!-glavinic_ [~glavinics@2a01:c23:7842:9b00:a492:9f27:c4bd:6b12] has joined #openttd
10:34-!-glavinic_ is "glavinics" on #openttd
10:35<Eddi|zuHause>4 years since the last successful build
10:36<@planetmaker>time surely flies
10:38-!-sla_ro|master [] has quit [Ping timeout: 480 seconds]
10:41<@planetmaker>seems that the template-plugin works not so well anymore :|
10:42-!-glavinic_ [~glavinics@2a01:c23:7842:9b00:a492:9f27:c4bd:6b12] has quit [Ping timeout: 480 seconds]
10:48-!-HerzogDeXtEr [] has joined #openttd
10:48-!-HerzogDeXtEr is "purple" on #openttd
10:53-!-HerzogDeXtEr1 [] has joined #openttd
10:53-!-HerzogDeXtEr1 is "purple" on #openttd
10:53-!-guru3 [] has quit [Remote host closed the connection]
10:58-!-Wormnest [~Wormnest@] has joined #openttd
10:58-!-Wormnest is "Wormnest" on #openttd
10:59-!-HerzogDeXtEr [] has quit [Ping timeout: 480 seconds]
11:00-!-guru3 [] has joined #openttd
11:00-!-guru3 is "This Other Dude..." on @#armagetron #openttd
11:08-!-Thedarkb [] has joined #openttd
11:08-!-Thedarkb is "realname" on #oolite #openttd #/r/openttd
11:12-!-Alberth [] has joined #openttd
11:12-!-mode/#openttd [+o Alberth] by ChanServ
11:12-!-Alberth is "purple" on @#openttd
11:14<@Alberth>hi, I wondered if I should do a little advertising for my macro processor :)
11:29-!-xdarklight [] has joined #openttd
11:29-!-xdarklight is "xdarklight" on #fsci #bcache #openttd #ninja-build #debian-welcome #debian-qemu #i2p #oclug
11:29<xdarklight>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
11:30<xdarklight>I thought you guys might be interested in this blog by freenode staff member Bryan kloeri Ostergaard
11:30<xdarklight>Read what IRC investigative journalists have uncovered on the freenode pedophilia scandal
11:30<xdarklight>A fascinating blog where freenode staff member Matthew mst Trout recounts his experiences of eye-raping young children
11:30-!-xdarklight [] has quit [Remote host closed the connection]
11:31<@planetmaker>hm, maybe it's a good idea, Alberth :)
11:31<@planetmaker>will s/o kill me when I push directly to nml master?
11:35<@Alberth>if you're developer I think you won't die :p
11:36-!-Unit193 [] has joined #openttd
11:36-!-Unit193 is "Unit 193" on #openttd #debian-libimobiledevice #kgb-devel #debian-next #linode #freenode #ohiolinux #devscripts #oftc-status #oftc-staff #debian-ayatana #mapreri #pbuilder #debian-edu #debian-apt #bitrig @#oftc #debian-ruby #debian-live #debian-derivatives #neurodebian +#CipherShed #packaging #debian-devel-changes #debian-games #debian-multimedia #lxde #smxi
11:36<@Alberth>not sure though, I don't have the permissions memorised
11:37<@Alberth>won't do much good if you want stuff reviewed though :p
11:37<@planetmaker>lucky me :P
11:37<@planetmaker>no, of course not for those cases :)
11:37<@planetmaker>But there's stuff which needs no review
11:37<@planetmaker>Like devzone integration
11:38<@Alberth>I usually do make a branch and a merge/pull request, then presse the "merge" button myself
11:38-!-pastly [] has joined #openttd
11:38-!-pastly is "pastly" on #openttd #officialTOR +#tor-project #debian-rust +#tor-dev #privacytech #oftc-status #oftc-staff #moocows #https-everywhere @#ggfmlbltch #tor-ci #debian @#oftc
11:38<@planetmaker>more clicks ;)
11:38<@Alberth>ha :)
11:39<@Alberth>depends on how much value you attach to the history I guess
11:39<@planetmaker>in what way does it differ?
11:39<@planetmaker>difference being that github's default merges squash things?
11:39<@planetmaker>I find that actually detrimental
11:40<@Alberth>that's a setting you can change (if you can :p )
11:40<@Alberth>I like the default of having a merge commit
11:41<@Alberth>you get nice groups of commits, and a link to the issue / PR
11:41<@planetmaker>it leaves you eventually with a series of 'big' commits which might be not easy to read when you squash every commit series into one for larger features
11:42<@Alberth>yeah, squashing is quite bad
11:42-!-rocky11384497 [~rocky1138@] has joined #openttd
11:42-!-rocky11384497 is "Your Mom" on #openttd
11:42<@planetmaker>having PR and links to issues - that's sth I like as well, yes
11:43<@planetmaker>But a PR with no more info than the commit message itself... would be somewhat pointless, too :)
11:43<@Alberth>at work my commits are much larger, in the thousands of lines, squashing is a good way to never ever understand the commit any more
11:43<@planetmaker>hehe :)
11:43<@Alberth>yep, just a group then
11:43<@Alberth>it's java eh? bit bloaty :p
11:43<@planetmaker>uh, you switched from python to java. Should I pity you?
11:44<@Alberth>nah, java is no problem, it's just a silly nanny language
11:44<@Alberth>I do still program python, and C/C++
11:45<@Alberth>java is better than python for large scale programs
11:45<@Alberth>I got more and more need for adequate typing support in python code
11:45<@planetmaker>hm, I see
11:46<@planetmaker>what python offers there meanwhile didn't suffice?
11:46<@Alberth>it's purely optional, and not enforced
11:46<@Alberth>I don't get compile errors when I break something
11:47<@Alberth>which is really useful at a scale of a 10K+ line program
11:48<@Alberth>java code is much much larger even, probably a decade of work in it
11:48<@planetmaker>yours, you mean?
11:48<@Alberth>I did about 1/2 of that :p
11:49<@Alberth>and my former collegue the other half
11:50<@planetmaker>still at the department, are you?
11:52<@Alberth>yep, different group though
11:52<@Alberth>now more control oriented, more continuous time modeling
11:53<@Alberth>research with groups of vehicles at the highway (coupled trucks eg)
11:53<@planetmaker>oh :)
11:53<@Alberth>and robotics as well
11:54<@Alberth>still with wheels though, rather with legs :p
11:54<@Alberth>*rather than
11:55<@Alberth>you're still making 0-gravity flights?
11:56<@planetmaker>indeed I am. Though I meanwhile try to avoid the plane for burocracy reasons
11:57<@planetmaker>more targetting to finally get sth into orbit
11:57-!-Gja [] has joined #openttd
11:58-!-Gja is "Martin" on #ceph #bcache #openttd
11:58<DorpsGek_II>[OpenTTD/OpenTTD] quantuumsnot opened issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
11:58<@planetmaker>he. Funky issue
11:59<@Alberth>"program an AI, you'll never has to play yourself then" :p
12:00<@planetmaker>don't we target that for a decade now? :P
12:01<Eddi|zuHause>i imagine something like a selective bulldozer: "only remove rails in this area, leave roads/buildings/trees untouched"
12:01<@planetmaker>phrased like that, such feature actually starts to make sense
12:02<Eddi|zuHause>depending on which toolbar you have open right now
12:02<Eddi|zuHause>or something like that
12:04<Eddi|zuHause>an alternative interpretation would be something similar to ctrl+drag signals where the bulldozer follows the rail until the next junction
12:05<@Alberth>I hardly ever remove long sections of track
12:05<Eddi|zuHause>me neither, but i also don't work with industry closure
12:05<@Alberth>good point
12:06<@planetmaker>:) Seems "not my problem" here all-around ;)
12:06<Eddi|zuHause>and when i did, i usually only removed the station and left the rails in place
12:06<Eddi|zuHause>that was before infrastructure maintenance, though
12:06<@Alberth>"fully automatic" is just a silly request
12:08<@planetmaker>kinda reminds me on an ancient patch which made grass grow on unused tracks
12:08<@planetmaker>showing the gradual decay
12:08<Eddi|zuHause>Alberth: we need Big Data to have a mythical Algorithm that knows what the player wants before he knows it
12:08<Eddi|zuHause>Alberth: and then annoy every player that wants to deviate from the norm
12:09<@Alberth>has such nice edge cases where you work on connecting a neighbour industry too, but just before you lay the final connection, the previous industry closes
12:09<@Alberth>just correct the player :p
12:09<@planetmaker>My infrastructure barely only serves one purpose
12:09<@planetmaker>except the very last bit of tracks
12:10<@Alberth>yeah, depending on how you build your network
12:10<@planetmaker>sure enough
12:10<Eddi|zuHause>i imagine the majority of people still never figured out signals so they build point-to-point connections
12:12<nielsm>hm what about a feature that lets players save industries from closing (unless it's an extractor and the closing reason is "resources ran out") by paying a sum
12:13<nielsm>you have one month to bail it out
12:13<Eddi|zuHause>completely unrelated?
12:13<Eddi|zuHause>you can already fund a new industry in the place of the old one
12:14<Eddi|zuHause>and that one never closes (afaik)
12:16<nielsm>well, for maybe 1/5 the cost of founding a new industry of that type, you extend the closing industry's life by one year
12:16<nielsm>for example
12:16<nielsm>(and if you manage to begin servicing it in the meantime, it will probably survive)
12:17<@planetmaker>I wouldn't mind. Not sure how smoothly that goes with NewGRFs.
12:17<@planetmaker>closure of serviced industries is anyway a NewGRF thing
12:24<@Alberth>default industries hardly ever close if you serve them properly
12:33<yellyFish>hi. i tried to ask this earlier but i guess it was too late. I have been trying to profile my cpu usage and see why does it run slow sometimes and i am no expert in C++ but i could tell that there is a recursive call to DeterministicSpriteGroup::Resolve that sometimes get pretty deep. As i said i am no expert but i recall hearing that recursive calls are difficult for compilers to optimize by
12:33<yellyFish>themselves. Does anybody here have the time and knowledge, i know that's a lot to ask for, to look into it. And even if it can't be transformed into a tail call, any little optimization should compound greatly.
12:35<Eddi|zuHause>certainly more sane persons here at 6PM than 6AM :p
12:36-!-dwfreed [] has joined #openttd
12:36-!-dwfreed is "dwfreed" on #openttd #qubes #privacytech #oftc-status #oftc-staff #debian-kde #ck #virt #tor-project #tor-dev #reproducible-builds #qemu @#oftc #munin #linode-beta #linode #launches #debian-tech #debian-reproducible #debian-policy #debian-perl #debian-ops #debian-next #debian-kbsd #debian #ceph #msys2 #moocows #bcache +#g7
12:36<Eddi|zuHause>anyway, the problem with recursive function calls is not that compilers cannot optimize them, but that also humans have sometimes trouble picking a better algorithm to replace them
12:36<yellyFish>well, for me it's 1PM. so
12:37<Eddi|zuHause>so i don't know how much effort you want to put into it to squeeze out some optimization
12:39<yellyFish>i can't play in the server i like so i guess i could put that time into it and help everyone at the same time
12:40<yellyFish>i am kinda rusty in C++ tho
12:41<Eddi|zuHause>i'm assuming that code deals with NewGRFs, particularly resolving VarAction2
12:41<Eddi|zuHause>other than using less newgrfs, i'm not sure what you could get out of this
12:44<Eddi|zuHause>as far as difficulty to get into openttd coding, you've picked a project somewhere between "insanely hard" and "nearly impossible"
12:46<Eddi|zuHause>i would suggest an easier project to "get your feet wet"
12:46-!-nnplv [] has joined #openttd
12:46-!-nnplv is "nnplv" on #openttd #biz #ipv6 #libevent #i2p
12:47-!-nnplv [] has quit [Remote host closed the connection]
12:48-!-Scaredy is "Scaredy" on #guardianproject #xen
12:48-!-Scaredy [~Scaredy@] has joined #openttd
12:50-!-Scaredy [~Scaredy@] has quit [Remote host closed the connection]
12:51<@planetmaker>yellyFish, did you do timines with or without NewGRFs?
12:55-!-Thedarkb [] has quit [Ping timeout: 480 seconds]
13:06-!-sla_ro|master [] has joined #openttd
13:06-!-sla_ro|master is "slamaster" on #sla #openttd
13:09<yellyFish>with NewGRFs and with a tool called perf
13:10<Eddi|zuHause>yellyFish: there are some timing-related debug features in the code, you could try to use them to add the spritegroup resolving to the frame time window
13:10-!-Thedarkb [] has joined #openttd
13:10-!-Thedarkb is "realname" on #oolite #openttd #/r/openttd
13:10<Eddi|zuHause>or possibly use them to find out which NewGRF is the worst offender
13:11-!-sla_ro|master2 [] has quit [Ping timeout: 480 seconds]
13:11<yellyFish>are you talking about the -d option?
13:12-!-Wolf01 [] has joined #openttd
13:12-!-Wolf01 is "Wolf01" on #openttd
13:14-!-Progman [] has joined #openttd
13:14-!-Progman is "Peter Henschel" on #openttdcoop #openttd
13:22-!-pastly [] has left #openttd [WeeChat 2.2]
13:23<yellyFish>oh, you mean the frame rate window?
13:24<Eddi|zuHause>yes, in the code there are lines that say things like "start measuring the time now" and "stop measuring the time now". you could put those in the various SpriteGroup::Resolve descendents
13:25<@planetmaker>there's TIC and TOC macros in the code
13:25<Eddi|zuHause>in src/newgrf_spritegroup.cpp
13:25<Eddi|zuHause>planetmaker: i think there's something newer/more finegrained now
13:26<@planetmaker>even better then :)
13:26<@planetmaker>since when? :-O
13:26<Eddi|zuHause>a few months?
13:26<@planetmaker><3 sweet!
13:28<Eddi|zuHause>"PerformanceAccumulator framerate(...);"
13:29<@planetmaker>ha, ty!
13:29<@planetmaker>that totally slipped my attention. Great :)
13:31<Eddi|zuHause>So, something like add "PFE_SPRITEGROUP" into "enum PerformanceElement" (framerate_type.h) and then add "PerformanceAccumulator framerate(PFE_SPRITEGROUP);" in the beginning of the relevant functions
13:32<Eddi|zuHause>additional magic needed to put the value into the GUI
13:32<yellyFish>yes. i was looking to something like that
13:33<yellyFish>but first i should check if there is any particular NewGRF that is taking long
13:42<Eddi|zuHause>yellyFish: well, it's a question of trying out random stuff to see if it has an effect, or find out how much fraction of the frame time goes into NewGRF resolving, to test if it is even worth bothering.
13:43<@planetmaker>yeah. First thing to test is w/o NewGRF vs. with your current NewGRF choice
13:43<@planetmaker>(what NewGRFs are you using?)
13:43<Eddi|zuHause>it may be tricky to find a similarly filled savegame that has no NewGRF
13:44<@planetmaker>hm, yes. Maybe coop has some. Difficult tho
13:44<@planetmaker> <-- is your server there, yellyFish ?
13:45<yellyFish>yeah. i can run the netsave locally fine at like 0.7 speed but online i get choked
13:45<Eddi|zuHause>well, 0.7 means you can't keep up with the server, so he will throw you out
13:46<Eddi|zuHause>(server must be the slowest)
13:46<yellyFish>it uses JGRPP
13:46<@planetmaker>ah, hm
13:47<yellyFish>but same should apply to both i think.
13:48<@planetmaker>but I don't know where jgrpp deviates and by how much
13:48<Eddi|zuHause>yellyFish: something i might try: just printf the grf-ID inside ::Resolve, and then grep -c to find out which one is most often
13:49<yellyFish>lol. yeah i guess that's a quick way to check
13:50<Eddi|zuHause>the spritegroup should have a way to access the GRF it is contained in to get its ID
13:52<Eddi|zuHause>or something like that
13:53-!-Wormnest [~Wormnest@] has quit [Quit: Leaving]
13:53<yellyFish>yes the resolverobject has one
13:54<Eddi|zuHause>so "this->grffile.grfid"
13:54<Eddi|zuHause>note that grfid should be printed as big-endian hex number
13:55<Eddi|zuHause>is Resolve a static function?
13:56<Eddi|zuHause>"object" sounds like the parent of "this"
13:56<Eddi|zuHause>or other way around
13:56<yellyFish>it's the resolverobject passed to the resolve function
13:57<Eddi|zuHause>yeah, but "this" is implicitly passed as well
13:58<Eddi|zuHause>ah "this" isn't a ResolverObject but a SpriteGroup
13:58<Eddi|zuHause>that makes sense then
13:59-!-sim-al2 [~sim-al2@] has joined #openttd
13:59-!-sim-al2 is "sim-al2" on #openttd
14:01<yellyFish>how would i go about testing this on the server without having a version mismatch?
14:01<Eddi|zuHause>you don't
14:01<yellyFish>or first check locally?
14:02<Eddi|zuHause>these things you only do locally
14:02-!-frosch123 [] has joined #openttd
14:02-!-frosch123 is "frosch" on #openttdcoop.devzone #openttd
14:06-!-Sausage [~Sausage@] has joined #openttd
14:06-!-Sausage is "Sausage" on #biz #openttd
14:06<Sausage>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
14:06-!-Sausage [~Sausage@] has quit [autokilled: Spambot. Don't mail if you think this is in error. (2018-10-25 18:06:49)]
14:06<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh commented on issue #6943: Music doesn't works
14:08<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh commented on issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
14:09<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh merged pull request #6937: Fix #4109: Add more water checks to the Oil Rig layout
14:17<Samu>oh, nice thx
14:19<DorpsGek_II>[OpenTTD/OpenTTD] Eddi-z commented on issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
14:22-!-andythenorth [] has joined #openttd
14:22-!-andythenorth is "andythenorth" on #openttd
14:29<andythenorth>so I just close this one with a comment?
14:31<Eddi|zuHause>no, why?
14:33<andythenorth>because it's not stupid, but totally absolutely untenable
14:33<andythenorth>there is no concept of specific routes in OTTD
14:34<Eddi|zuHause>doesn't mean there's no improvement to be had here
14:35<andythenorth>as usual, I don't see the point because it doesn't fit my play style :P
14:35<andythenorth>what's the case for removing a supply chain?
14:35<LordAro>i don't even see how it could be feasible, let alone actually desired
14:35<Eddi|zuHause>industry closure, it says so?
14:35<yellyFish>like oil rigs getting depleted?
14:36<Eddi|zuHause>for example
14:36<frosch123>maybe they don't know about ctrl+autorail
14:37<andythenorth>industry closure is a bug
14:37<andythenorth>if you have serviced industries closing, then you're doing it wrong
14:37<Eddi|zuHause>frosch123: but that only removes individual track pieces?
14:37<andythenorth>or it's a bug
14:37<DorpsGek_II>[OpenTTD/OpenTTD] quantuumsnot commented on issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
14:37<andythenorth>just drag dynamite
14:37<andythenorth>no problem
14:37<frosch123>Eddi|zuHause: if you drag it it is a selective removal
14:38<frosch123>it's definitely faster than building the track
14:38<Eddi|zuHause>frosch123: yes, but too micromanag-y
14:38<Eddi|zuHause>frosch123: there is need for something inbetween
14:38<yellyFish>something like the signal autoplacement but rail removal
14:38<frosch123>"need" :p
14:38<LordAro>at best a "follow bulldozer" could follow a track until a junction, but that would just get stopped by every depot
14:39<Eddi|zuHause>well, "need" is a too strong word, but all other words would have been longer :p
14:39<yellyFish>it's the same like signals anyway
14:39<yellyFish>it would be a nice feature to have that
14:39<DorpsGek_II>[OpenTTD/OpenTTD] andythenorth commented on issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
14:41<yellyFish>btw, i sorted the data of NewGRF that use the function most and i have two that use it the most
14:41<yellyFish>what do i do with them now?
14:42<Eddi|zuHause>which ones?
14:42<@planetmaker>put them in glas box, and give them extra credit :)
14:43-!-Namarrgon [] has joined #openttd
14:43-!-Namarrgon is "Namarrgon" on #biz #openttd #ceph-dashboard #cryptoparty #vtluug #debian-fonts #freebsd-clang #ubuntu-expats
14:43-!-Namarrgon [] has quit [Read error: Connection reset by peer]
14:43<yellyFish>GRF ID 44440302, filename: north_american_renewal_set-2.51/newnars.grf
14:44<@planetmaker>is that because most of your trains are from that set?
14:44<yellyFish> firs_2-2.1.5/firs.grf
14:44<yellyFish>well, i expected firs
14:44<frosch123>i did not
14:44<frosch123>industry grfs are pretty cheap, unless you do ecs-style tile annimation
14:45<Eddi|zuHause>does this cover callbacks?
14:46<yellyFish>i put the printf just before the most used if branch, where they check if the variable is not available
14:46<Eddi|zuHause>the next two questions i would ask here would be: could some of those calls be eliminated by caching, or are they affecting things that are not visible anyway, and should be skipped? (that would improve larger maps)
14:46<DorpsGek_II>[OpenTTD/OpenTTD] quantuumsnot commented on issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
14:47<frosch123>Eddi|zuHause: for vehicles the solution is to remove caching :p
14:47<frosch123>well, or rather: remove the prefetch of the cache
14:47<Eddi|zuHause>well, yes, lazy caching
14:47<Eddi|zuHause>only fill the cache if it is already being accessed
14:48<frosch123>i started, but did not finish :)
14:49<Eddi|zuHause>that would be the answer to question 2, though
14:50<yellyFish>so check which variable is called the most if any is substantially more than the others?
14:50<Eddi|zuHause>i don't think that gives you meaningful answers
14:52<frosch123>yellyFish: <- ECS in 2011
14:53<yellyFish>mmmm. didn't know that was in the game
14:53<frosch123>it isn't :p
14:54<Eddi|zuHause>i don't think it is
14:54<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh commented on issue #6944: Feature request: Add automatic demolition of supply chain when an industry is depleted
14:54-!-glx [] has joined #openttd
14:54-!-mode/#openttd [+v glx] by ChanServ
14:54-!-glx is "Loïc GUILLOUX" on @#opendune @#openttd.noai #openttd.notice +#openttd
14:54-!-sim-al2 [~sim-al2@] has quit [Ping timeout: 480 seconds]
14:55<yellyFish>frosch123: then what are you trying to tell me with that? i am confused
14:55<frosch123> <- it's just 7 years behind
14:56<frosch123>yellyFish: measuring the amounts of callbacks was my approcach in 2011
14:56<frosch123>which resulted in "ecs is hopeless", and various improvements for other grfs
14:57<frosch123>last year i did some callgrind stuff, which improved nuts by 20%
14:57<frosch123>but there is still lots of optimisation potential for vehicles
14:58<frosch123>industry grfs never appeared on my list, unless you run a 4kx4k map with 3 vehicles
14:58<DorpsGek_II>[OpenTTD/OpenTTD] Wilma456 commented on issue #6943: Music doesn't works
14:58<frosch123>basically: if industry newgrf need more resources than vehicle grfs, you either use ecs, or you have too few vehicles compared to the number of industries
14:59<yellyFish>no. i have plenty that i am sure
14:59<frosch123>no idea, maybe it's something new then
14:59<frosch123>maybe andy started doing ecs style animation :)
14:59<frosch123>but I doubt that
15:02<yellyFish>maybe check what is making firs go through that branch
15:10-!-sekhmet [~sekhmet@] has joined #openttd
15:10-!-sekhmet is "sekhmet" on #biz #openttd #debian-toolchain #hackbeach #smxi #zwiebelfreunde #oclug
15:10<sekhmet>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
15:10-!-sekhmet [~sekhmet@] has quit [autokilled: This host has violated network policy. Contact with questions (2018-10-25 19:10:12)]
15:10<Wolf01>They are spamming in every server
15:11<frosch123>as if entrepreneurs would use irc
15:12<yellyFish>lol. i see what you did there
15:12<andythenorth>frosch123: ecs style animation is not wiki :P
15:12<andythenorth>what does it mean :P
15:13<frosch123>there is a callback to decide the duration of an animation frame
15:13<andythenorth>that's a nice website he had
15:13<frosch123>but it means that this callback is called every tick for every tile to decide whether the duration is over
15:15*andythenorth clarifies that the 'nice site' comment about the racist site was irony
15:15<andythenorth>just in case
15:15<andythenorth>don't click the link
15:15<frosch123>why did you?
15:15<andythenorth>because curious
15:15<Eddi|zuHause>i really wasn't going to...
15:15<frosch123>deperate to do something else than tanks?
15:15<LordAro>oh dear
15:15<LordAro>you've probably got all the viruses now
15:15-!-gelignite [] has joined #openttd
15:15-!-gelignite is "gelignite" on #openttd
15:15<+glx>hope you did it in private mode
15:15<andythenorth>I am always curious what spammers are promoting
15:17<Eddi|zuHause>i'd not be worried about the content of the site, but about the data harvesting, tracking cookies or flyby infections
15:19<andythenorth>or that clicking creates a business model for people I dislike
15:19<andythenorth>I have yet to be drive-by-ed
15:19<andythenorth>but there's a first time
15:19<andythenorth>I've seen attempted drive-bys
15:20<andythenorth>and I know multiple people who've been conned by fake flash updates
15:20-!-tompaw [] has joined #openttd
15:20<tompaw>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
15:20-!-tompaw is "tompaw" on #biz #openttd
15:20-!-tompaw [] has quit [autokilled: Spambot. Don't mail if you think this is in error. (2018-10-25 19:20:22)]
15:20<Eddi|zuHause>well, problematic thing about drive-by-infections is the ones you wouldn't notice
15:20<LordAro>maybe time for +r
15:21<+glx>no need for +R with this rate
15:21<yellyFish>Looks like there really is a market for entrepeneurs and fentanyl addicts, huh
15:22<andythenorth>yeah I've seen something like this on multiple macs
15:22<andythenorth>and I once saw an unprompted download in my browser succesfully started from a site
15:24<andythenorth>drive-by innit
15:24<andythenorth>so ECS style animation :P
15:27<frosch123>it works on 256x256 maps with 100 industries
15:27<andythenorth>frosch123: so animation_speed as a cb, not a prop?
15:27<frosch123>yes, using the speed callback is worse than setting the fastest animation speed
15:28<andythenorth>I use it as a prop
15:28<frosch123>that's fine
15:28<andythenorth>so if nml is doing the right thing, it's not that :P
15:28<frosch123>rewrite the profiler patch, and you can measure it :)
15:29<Eddi|zuHause>how many new windowing systems did we have since 2011?
15:29<frosch123>we also had a major newgrf refactoring
15:30<andythenorth>all the things
15:30<andythenorth>I should finish something newgrf
15:30<nielsm>someone should review those cargo count patches
15:30<frosch123>Eddi|zuHause: the patch already has nested widgets
15:31<frosch123>so, that part is likely the most compatible one
15:31<yellyFish>okay. both newGRFs call the most for variable 1A
15:31<andythenorth>nielsm: maybe Eddi|zuHause can review them? o_O
15:32<andythenorth>now he has commits he's in the zone again
15:32-!-Thedarkb [] has quit [Ping timeout: 480 seconds]
15:32<frosch123>yellyFish: that's not even a variable :p
15:33<yellyFish>variable are in hex right?
15:33<Eddi|zuHause>that's the constant -1
15:33<Eddi|zuHause>(or 0xFFFFFFFF)
15:34<Eddi|zuHause>yellyFish: but as i said, that information is probably not useful for any optimisation purposes
15:35<frosch123>yellyFish: add a shortcut for 1A in static inline uint32 GetVariable(const ResolverObject &object, ScopeResolver *scope, byte variable, uint32 parameter, bool *available), and see wether that has an impact
15:37<frosch123>it safes a non-inlined function call
15:39<Eddi|zuHause>Var 1A is probably used a lot in some internal nml calculations
15:39<frosch123>(assuming you have something like callgrind running, to measure improvments in one-digit percentages)
15:40<frosch123>Eddi|zuHause: nars is nfo
15:41-!-Thedarkb [] has joined #openttd
15:41-!-Thedarkb is "realname" on #oolite #openttd #/r/openttd
15:41<yellyFish>mmm i think i found a logic error. i'll check if it's fixed in latest JGR version first
15:42<Eddi|zuHause>frosch123: also "newnars"?
15:42<frosch123>does that exist?
15:42<Eddi|zuHause>frosch123: that's what the filename says above
15:43<frosch123>it says nars 2.51
15:43<Eddi|zuHause>"<yellyFish> GRF ID 44440302, filename: north_american_renewal_set-2.51/newnars.grf"
15:43<frosch123>i assume that is a pikka nars 2
15:43<yellyFish>is it safe to say that there is a semantic error if there is a if branch that can never get evaluated to true?
15:43<Eddi|zuHause>well, there is certainly a difference between NARS2 and NARS2.5
15:44<frosch123>it's on bananas with "custom" license, must be pikka
15:44-!-spudly [~spudly@] has joined #openttd
15:44-!-spudly is "spudly" on #biz #openttd #olpc-devel #lartc
15:44<spudly>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
15:44-!-spudly [~spudly@] has quit [autokilled: This host has violated network policy. Contact with questions (2018-10-25 19:44:12)]
15:44<Eddi|zuHause>yellyFish: depends
15:44<frosch123>yellyFish: gcc7 should warn about that
15:44<Eddi|zuHause>yellyFish: have a link to the code?
15:46<Eddi|zuHause>yellyFish: so why do you think that can never be true?
15:46<yellyFish>_sprite_group_resolve_check_veh_check starts false and never get assigned true
15:46<Eddi|zuHause>yellyFish: remember that by convention, variables starting with _ are global variables
15:47<Eddi|zuHause>so they might be set in completely different locations
15:47<yellyFish>oh yeah, duh. you right
15:48<frosch123>that's jgr code?
15:48<frosch123>are they any measurement results about that whitelist?
15:50-!-gelignite [] has quit [Quit: Good fight, good night!]
15:50<yellyFish>you mean done by me?
15:50<frosch123>i do not follow jgr development
15:50<frosch123>so, i have no idea about that stuff
15:52<yellyFish>well, i was checking that because what i am measuring goes past that whitelist
15:53<yellyFish>there is a case check for that 1A var in the whitelist but doesn't get checked because of that global variable. Not sure what that global variable means tho
15:54<frosch123> <- it's from here
15:54-!-sla_ro|master [] has quit []
15:55-!-nielsm [] has quit [Ping timeout: 480 seconds]
15:55<Eddi|zuHause>yellyFish: that whitelist basically only says that the value of var 1A doesn't really change, but it's not where var 1A actually gets evaluated
15:57-!-Gja [] has quit [Quit: Going offline, see ya! (]
15:57<Eddi|zuHause>frosch123: i think the idea there is that the cache invalidation is not unconditionally every tick
15:58<frosch123>yes, i read the code
15:58<frosch123>but there is no specific branch for it, so i never noticed it before
15:59<Eddi|zuHause>frosch123: patchpacks is where patches go to die :p
15:59<frosch123>jgr has branches for single features
15:59<frosch123>which makes looking at them a lot easier
16:00<frosch123>Eddi|zuHause: that only applies to patchpacks which are not maintained like jgrpp
16:00<frosch123>jgr knows how to use git
16:00<frosch123>unless he asks his little brother to do stuff :p
16:02<frosch123>i guess it's more likely he has children though, than siblings in influencable ages
16:03<frosch123>andythenorth: what is the status of python/c++ programming skills?
16:04<frosch123>i talked about deligating tasks to children or siblings :)
16:04<andythenorth>child #1 keeps asking to learn 'snake'
16:04<andythenorth>but when I try and teach him, he gets distracted by it's basic maths calculations
16:04<frosch123>you name it snake so they cannot google for it?
16:04<andythenorth>he really likes maths
16:04<andythenorth>he calls it snake
16:05<andythenorth>he was delighted when saw chameleon in Iron Horse
16:05<andythenorth>more animals :P
16:05<andythenorth>children wouldn't be allowed to devops
16:05<frosch123>i guess flask and flexx are no animals
16:05<andythenorth>nobody should do devops without battle scars
16:06<andythenorth>until you've broken all production Apache at 6.30pm on a Friday, you don't get SSH
16:06<Eddi|zuHause>over here, nobody is even there fridays at 6:30pm
16:07<frosch123>it's the best time to get work done, if you have to
16:07<Eddi|zuHause>nothing happens friday after 2:30-ish
16:07<Eddi|zuHause>frosch123: yes, but my boss didn't understand it, and demanded i show up at 8AM like everyone else
16:07<frosch123>you can also show up at 5am
16:07<frosch123>it works in both directions
16:08<Eddi|zuHause>not for me
16:08-!-mode/#openttd [+o orudge] by ChanServ
16:09<andythenorth>8AM is a terrible idea
16:10<Eddi|zuHause>well, technically the rules of the company were 7AM to 4PM
16:10<frosch123>you head for 8am if there is still preparation work for the 10am meeting :p
16:11<Eddi|zuHause>there was a weekly meeting mondays at 8:30, and i said something like "i can do that, if i don't have to show up before 10 the other days"
16:12<Eddi|zuHause>they first agreed, but later they were like "you keep the times like everyone, or else" and i said "then else..."
16:13<frosch123>a meeting with the whole team is like sleep, isn't it?
16:13<andythenorth>the world has 3x as many engineer job openings as engineers afaict
16:13<Eddi|zuHause>not after driving to work...
16:13<andythenorth>why developers stay in crap jobs and moan I don't know :)
16:13<andythenorth>inertia probs
16:14<andythenorth>also engineer salary inflation is a thing currently :P
16:14<Eddi|zuHause>and my usual tendency to be 5-10 minutes late to everything more than 200m away
16:14<frosch123>andythenorth: because 80% of it jobs are crap?
16:14<frosch123>but yes, salary inflation :p
16:14<andythenorth>we had a potential hire recently, hates his boss
16:14-!-lyf [] has joined #openttd
16:14-!-lyf is "lyf" on #openttd #biz
16:14-!-LazarUS [~LazarUS@] has joined #openttd
16:14-!-LazarUS is "LazarUS" on #openttd #biz
16:15<andythenorth>but got offered effective 20% rise so stayed
16:15<andythenorth>hate the work, hate the company BUT THE MONEY
16:15-!-LazarUS [~LazarUS@] has quit [Remote host closed the connection]
16:15-!-lyf [] has quit [Remote host closed the connection]
16:15<Eddi|zuHause>i could really live without the money... i need a good work environment
16:15<Eddi|zuHause>one that is demanding but not pushy
16:16-!-glavinics [~glavinics@2a01:c23:7842:9b00:fd42:97e3:6d89:6696] has joined #openttd
16:16-!-glavinics is "glavinics" on #openttd
16:16<yellyFish>lol. should use the money to get his boss in a 'accident'. kill two birds with one stone
16:16<Eddi|zuHause>who says the next boss won't be worse?
16:17<frosch123>yellyFish: "having a bad boss" may still be a better option than "having to do the work of a former boss"
16:17<yellyFish>i am working with incomplete information here
16:18<frosch123>Eddi|zuHause: that's the second question. the first is "when will there be a next boss"?
16:19<andythenorth>level up
16:19-!-Alberth [] has left #openttd []
16:19*andythenorth is hiring :P
16:20<Eddi|zuHause>andythenorth: you have something i can do from home and not get brexit troubles?
16:23-!-frosch [] has joined #openttd
16:23-!-frosch is "frosch" on #openttd
16:23<frosch>do you accept remote working from continental europe?
16:23<Eddi|zuHause>that's what i just asked?
16:23<frosch>and yes, my router had a freudian breakdown
16:27-!-frosch123 [] has quit [Ping timeout: 480 seconds]
16:30<andythenorth>somewhat not
16:30<andythenorth>for reasons
16:30<andythenorth>it's hard to get the full benefit of my sense of humour remotely
16:30<frosch>oh, that probably excludes non-native brittish :)
16:34<andythenorth>we have Australians
16:34<andythenorth>New Zealanders
16:36<frosch>a nearby university has an indian community, so recently my indian coworkers outnumber the chinese coworkers
16:37<frosch>even more suprising is that they reach 50% women, compared to 10% in every other group
16:37<@planetmaker>andythenorth, aren't those just the criminals from yesterday? :P
16:38<andythenorth>planetmaker: so they tell me
16:38<frosch>i think there was a recent dilbert about that
16:39<frosch>unusual, usually we quote xkcd :)
16:39<@planetmaker>I may have, but I didn't try on purpose :)
16:42<frosch>(more main stream than the usual xkcd)
16:42<andythenorth>far too close to the bone
16:42<Eddi|zuHause>frosch: i'm assuming you mean indian from india, not "indian" from america
16:42<andythenorth>they're native americans
16:43*andythenorth doesn't actually know that for a fact
16:43<frosch>Eddi|zuHause: yes, but i may include the occasional pakistani
16:43<frosch>or east-iranian
16:43<andythenorth>indian sub-continent
16:43<Eddi|zuHause>frosch: how about east pakistan?
16:43<@planetmaker>he :)
16:44<Eddi|zuHause>(that was a real thing, it's now called Bangladesh)
16:48<Eddi|zuHause>in any case, india is probably more ethnically diverse than "america"
16:55-!-frosch [] has quit []
17:03<andythenorth>how is it bedtime already? :(
17:03-!-andythenorth [] has left #openttd []
17:04<Eddi|zuHause>bedtime? i barely got up?
17:14-!-elvishjerricco [~elvishjer@] has joined #openttd
17:14-!-elvishjerricco is "elvishjerricco" on #fsci #bcache #openttd #devscripts #/r/openttd
17:14<elvishjerricco>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
17:15-!-elvishjerricco [~elvishjer@] has quit [autokilled: This host has violated network policy. Contact with questions (2018-10-25 21:15:00)]
17:15<Eddi|zuHause>how hard is it to kill these things serverside BEFORE their message is delivered to the clients?
17:16<+glx>good question
17:17-!-Happpy [] has joined #openttd
17:17-!-Happpy is " -" on #openttd #/r/openttd +#openttdcoop.stable +#openttdcoop
17:17-!-Happpy [] has left #openttd []
17:18<LordAro>surprisingly hard
17:18<Eddi|zuHause>you'd have to run the filter code on all servers, i presume
17:22<@planetmaker>the main problem likely would be to distinguish them from legitimate users
17:23<@planetmaker>have them join 10 channels after network join. And send that message. Might be a normal user with a script saying 'hi' in his favourites as well
17:23-!-Progman [] has quit [Remote host closed the connection]
17:34-!-Thedarkb [] has quit [Ping timeout: 480 seconds]
17:45-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
17:53-!-zetaPRIME_ [] has joined #openttd
17:53-!-zetaPRIME_ is "zetaPRIME_" on #fsci #bcache #openttd #publiclab-testing #whonix
17:53<zetaPRIME_>With our IRC ad service you can reach a global audience of entrepreneurs and fentanyl addicts with extraordinary engagement rates!
17:53-!-zetaPRIME_ [] has quit [autokilled: This host has violated network policy. Contact with questions (2018-10-25 21:53:27)]
17:58-!-Thedarkb [] has joined #openttd
17:58-!-Thedarkb is "realname" on #oolite #openttd #/r/openttd
18:06<dwfreed>just ignore it
18:06<dwfreed>it's spam
18:11<Eddi|zuHause>i think the point of spam is to penetrate the ignore-capacity of enough people
18:16-!-matt21347 [~matt21347@] has quit [Quit: Leaving]
18:17<@planetmaker>if 1M read it and 100 click it, it might be successful
18:35-!-Thedarkb-X40 [] has joined #openttd
18:35-!-Thedarkb-X40 is "realname" on #openttd #/r/openttd #oolite
18:57-!-Wacko1976_ [] has joined #openttd
18:57-!-Wacko1976_ is "The Chat Cool People Use" on #openttd #/r/openttd
19:02-!-Wacko1976 [] has quit [Ping timeout: 480 seconds]
19:05-!-Wacko1976_ [] has quit [Ping timeout: 480 seconds]
20:12-!-glavinics [~glavinics@2a01:c23:7842:9b00:fd42:97e3:6d89:6696] has quit [Remote host closed the connection]
20:28-!-Thedarkb [] has quit [Ping timeout: 480 seconds]
20:38-!-bigjazzsound is "bigjazzsound" on #xen
20:38-!-bigjazzsound [~bigjazzso@] has joined #openttd
20:38-!-bigjazzsound [~bigjazzso@] has quit [Remote host closed the connection]
20:43-!-Flygon [] has joined #openttd
20:43-!-Flygon is "Flygon" on #openttd
21:36-!-Samu [] has quit [Quit: Page closed]
21:49-!-DNS0 [] has joined #openttd
21:49-!-DNS0 is "DNS" on #openttd #subgraph #Christ #osrm
21:49-!-DNS0 [] has quit [Remote host closed the connection]
21:55-!-glx [] has quit [Quit: Bye]
22:04-!-zuzabrik [] has joined #openttd
22:04-!-zuzabrik is "zuzabrik" on #openttd #subgraph
22:04-!-zuzabrik [] has quit [autokilled: Spambot. Don't mail if you think this is in error. (2018-10-26 02:04:11)]
22:16-!-triolus00 [] has joined #openttd
22:16-!-triolus00 is "triolus" on #openttd #debian
22:17-!-triolus [] has quit [Quit: WeeChat 2.2]
23:00-!-sh4rm4^Q [~sh4rm4^Q@] has joined #openttd
23:00-!-sh4rm4^Q is "sh4rm4^Q" on #openttd #subgraph
23:00-!-sh4rm4^Q [~sh4rm4^Q@] has quit [Remote host closed the connection]
23:20-!-yellyFish [] has quit [Ping timeout: 480 seconds]
23:20-!-HerzogDeXtEr [] has joined #openttd
23:20-!-HerzogDeXtEr is "purple" on #openttd
23:27-!-HerzogDeXtEr1 [] has quit [Ping timeout: 480 seconds]
23:42-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
23:56-!-cHawk [] has quit [Quit: Leaving]
23:59-!-bytesighs [] has joined #openttd
23:59-!-bytesighs is "bytesighs" on #openttd #biz #debian-xen #odamex #debian-openstack-commits
23:59-!-bytesighs [] has quit [Remote host closed the connection]
---Logclosed Fri Oct 26 00:00:41 2018