Back to Home / #openttd / 2019 / 03 / Prev Day | Next Day
#openttd IRC Logs for 2019-03-26

---Logopened Tue Mar 26 00:00:28 2019
00:01-!-debdog [~debdog@2a00:79c0:670:e800:7a24:afff:fe8a:d04d] has joined #openttd
00:01-!-debdog is "Wowbagger" on #bitlbee #openttd
00:04-!-D-HUND [~debdog@2a00:79c0:642:d500:7a24:afff:fe8a:d04d] has quit [Ping timeout: 480 seconds]
00:46-!-Supercheese [] has quit [Read error: Connection reset by peer]
00:46-!-Supercheese [] has joined #openttd
00:46-!-Supercheese is "Caseum" on #openttd
01:10-!-Hexus_One [] has joined #openttd
01:10-!-Hexus_One is "OFTC WebIRC Client" on #openttd
01:11<Hexus_One>hello :) i'm looking to write patches for the citymania client - should I branch off the tip or am I okay to branch from the 1.8.0 release commit?
01:21-!-glx [] has quit []
01:26<Samu>I think I found a bug
01:26<Samu>ge->rating = rating = or_ + Clamp(Clamp(rating, 0, 255) - or_, -2, 2); station_cmd.cpp line 3412
01:27<Samu>or not
01:27<Samu>it's fine
01:30-!-Samu [] has quit [Quit: Leaving]
02:24-!-andythenorth [] has joined #openttd
02:24-!-andythenorth is "andythenorth" on #openttd
02:31-!-Hexus_One [] has quit [Remote host closed the connection]
02:45<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
02:54-!-Hexus_One [~oftc-webi@] has joined #openttd
02:54-!-Hexus_One is "OFTC WebIRC Client" on #openttd
02:56-!-Hexus_One [~oftc-webi@] has left #openttd []
03:18-!-Supercheese [] has quit [Quit: Valete omnes]
04:06-!-andythenorth [] has quit [Quit: andythenorth]
04:29-!-Pikka [] has joined #openttd
04:29-!-Pikka is "realname" on #openttd
04:30<DorpsGek_II>[OpenTTD/OpenTTD] eekee commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
04:43-!-Thedarkb-X40 [] has quit [Ping timeout: 480 seconds]
05:12<@peter1138>So are we scrapping NRT for a rethink, or going to merge it?
05:30<@planetmaker><peter1138> Standard title screen has crashing planes too. <-- I consider it a feature :) Action is what people want to see
05:30<DorpsGek_II>[OpenTTD/OpenTTD] PeterN requested changes for pull request #7417: Group hierarchy improvements (by 3298)
05:30<@peter1138>planetmaker, yes :)
05:31<@peter1138>I think Samu is still upset that we went the opposite way on the plane crash cheat/setting.
05:31<@planetmaker>the parcel with my cpu fan sped-up over night and is supposed to arrive today, too... good :)
05:36<@planetmaker>2x faster OpenTTD compilation :P
05:36<@peter1138>More cores?
05:36<@planetmaker>yep. ryzon 7 2700x
05:37<@peter1138>I still need to update my GPU. It got stalled by the mining crap.
05:37<@planetmaker>the GPU needs triggered all this :P
05:37<@peter1138>Is that 8 cores?
05:37<@peter1138>I only have 6 ;(
05:37<@planetmaker>yep, 8 with HT
05:38<@peter1138>I use -j 6 though.
05:38<@planetmaker>or SMT how AMD calls it
05:38<@peter1138>Maybe I should time it with -j 12?
05:38<@planetmaker>currently I have 4 with HT
05:38<@planetmaker>you'd gain something for sure
05:38<@peter1138>Although it's in a VM so I dunno if it will.
05:38<@planetmaker>depending on whether it supports hyperthreading
05:38<@planetmaker>... VMs... make use of the "virtual" cores
05:38<@planetmaker>so it won't help
05:39<@peter1138>Well, it might depending on the setting.
05:39<@planetmaker>at least my linux announces 8 cores where it is 4 with hyperthreading. So... not sure
05:39<@peter1138>I switched to full Windows since I was mostly just gaming.
05:39<@planetmaker>he... no linux no more?
05:39<@peter1138>I've been deving on OpenTTD so much I'm kinda tempted to dual boot again.
05:39<@peter1138>I have Linux in a VM on Windows for OpenTTD dev :)
05:40<@peter1138>I really can't get on with VS for OpenTTD.
05:40<@planetmaker>I've dual boot... but mostly I just boot to linux. Only recently sometimes booted to windows... for factorio which refused to run decently on my linux due to... graphics driver issues
05:41<@peter1138>Hmm, 30 seconds at -j6 (debug build)
05:41<@planetmaker>or total?
05:41<@peter1138>Trying -j12
05:41<@planetmaker>cold start? that's incredibly fast
05:41<@peter1138>make clean, at least.
05:41<@peter1138>30 seconds for -j12 as well.
05:42<@planetmaker>I should time on my current machine and compare that to my new then :)
05:42<@peter1138>It's an i7 8700k, I'd hope it's fast :-)
05:42<@peter1138>It upgraded my old q6600, so a worthwhile upgrade.
05:42<@planetmaker>dunno what kind of i7 I have at home
05:43<@planetmaker>but it's an old i7 I have
05:43<@peter1138>And I have VR so I wanted the best. And then I waited on the GPU and couldn't afford a good one suddenly :(
05:43<@planetmaker>the crypto-hype is over... so more affordable now?
05:44<@peter1138>No, they released the RTX-hype instead.
05:44<@planetmaker>hehe ,yeah
05:44<@planetmaker>but it's promising
05:44<@peter1138>I nearly got a 1080ti for £600 new, but then it went out of stock.
05:45<@planetmaker>well, I decided that 220€ is enough for a graphics card. I rarely use extremely graphics-heavy stuff
05:45<@planetmaker>radeon rx580
05:49<@planetmaker>especially I hope for better linux graphics support than by nvidia
05:49<@peter1138>Good luck with that.
05:50<@planetmaker>yeah :|
05:54<@planetmaker>the 1060ti or 1070ti would have been my nvidia choice
06:12<@planetmaker>hmm... src/build_vehicle_gui.cpp:1167:25: warning: enumeral and non-enumeral type in conditional expression [-Wextra]
06:12<@planetmaker> CargoID cargo = refit ? this->cargo_filter[this->cargo_filter_criteria] : CT_INVALID;
06:14<@peter1138>planetmaker, there's an open PR that addresses that.
06:15<@peter1138>clang did not complain :-/
06:16*peter1138 tries with -Wextra -Wno-unused-parameter... and still no warning.
06:17<@planetmaker>gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
06:17-!-Hexus_One [~oftc-webi@] has joined #openttd
06:17-!-Hexus_One is "OFTC WebIRC Client" on #openttd
06:17-!-debdog [~debdog@2a00:79c0:670:e800:7a24:afff:fe8a:d04d] has quit [Quit: No Ping reply in 180 seconds.]
06:18<@planetmaker>src/build_vehicle_gui.cpp:1423:28 has the same warning
06:18-!-debdog [~debdog@2a00:79c0:670:e800:7a24:afff:fe8a:d04d] has joined #openttd
06:18-!-debdog is "Wowbagger" on #bitlbee #openttd
06:19<Hexus_One>can I get some help compiling the CityMania client? I get the error"Severity Code Description Project File Line Suppression State Error MSB3073 The command "cscript "C:\Users\Conrad\source\repos\cmclient\projects\/determineversion.vbs"" exited with code -1. version C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets 44 "
06:19<Hexus_One>can I get some help compiling the CityMania client? I get the error
06:19-!-circ-user-3HYVs [] has quit [Ping timeout: 480 seconds]
06:19<Hexus_One>"source\repos\cmclient\projects\/determineversion.vbs"" exited with code -1."
06:20<@planetmaker>so you muddled with version detection in your patch and screwed up
06:20<Hexus_One>oh, but this is a fresh fork?
06:21<Hexus_One>or as far as i know i just forked -> cloned from the tip
06:21<@peter1138>planetmaker, it's not his patch :)
06:21<@planetmaker>you're compiling clean OpenTTD code
06:21<_dp_>Hexus_One, that doesn't seem to be related to citymania client though, did you try compiling vanilla?
06:21<Hexus_One>i'm compiling the citymania openTTD client
06:21<Hexus_One>i'll try compile vanilla
06:21<@planetmaker>I should not talk about windows-errors :) err-no-windows-found :P
06:22<_dp_>Hexus_One, also, yeah, join citymania discord let's not spam this channel xD
06:22<Hexus_One>:0 thank you
06:22<Hexus_One>lemme grab the 1.9.0-RC1 source
06:22<@peter1138>planetmaker, <-- I approved but did not merge in case anyone else had comments. You could fix that error ;)
06:26<@peter1138>And yes, it comes up with gcc.
06:26<@peter1138>Maybe I need multiple build dirs as well as my make regression push hook?
06:26<DorpsGek_II>[OpenTTD/OpenTTD] LordAro commented on pull request #7417: Group hierarchy improvements (by 3298)
06:27<@planetmaker>Without more thought, I don't understand the changes to refit
06:28<@planetmaker>CT_INVALID seems to have been removed from the possible cargoes
06:29<@peter1138>planetmaker, basically I didn't realise that it was an aliased CargoID already, so CF_NONE is already CT_INVALID.
06:29<@peter1138>Or maybe CT_NO_REFIT, or something.
06:30<@planetmaker>hm right
06:30<@planetmaker>first lunch
06:31<@peter1138>10:30, bit early :)
06:31<@peter1138>Unless you mean *first* lunch, and a *second* lunch later.
06:41<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7417: Group hierarchy improvements (by 3298)
06:57<Hexus_One>Q: In the settings, is the option "Show tooltips: Hover for 250 seconds" meant to say "Hover for 250 milliseconds
06:58-!-andythenorth [] has joined #openttd
06:58-!-andythenorth is "andythenorth" on #openttd
07:01<@peter1138>Yes, it does, but apparently Australians are different.
07:02<@peter1138>It's milliseconds in the GB and US lang files.
07:02<Hexus_One>Ah, interesting
07:06-!-andythenorth [] has quit [Ping timeout: 480 seconds]
07:10-!-circ-user-3HYVs [] has joined #openttd
07:10-!-circ-user-3HYVs is "A CIRC user" on #openttd
07:12<@planetmaker>peter1138, UTC+1 here. And... yes, we go to lunch very early
07:17<Hexus_One>Hmm I should implement a road-planner before doing a rail-planner
07:24<@peter1138>I don't know. Did RC1 compile?
07:29<Hexus_One>yeah it compiled fine :)
07:30<Hexus_One>i was having issues with the version-checker-something while compiling the citymania client
07:31<_dp_>it's a bit weird that determineversion.vbs returned an error since cmclient doesn't modify that script
07:31<_dp_>but doesn't happen on vanilla so whatever
07:39<@peter1138>r/win 36
07:48<@planetmaker>going to be a long afternoon now... packet delivered to packing station... :)
07:48<@planetmaker>_dp_, depends... version determination changed completely between 1.8 and 1.9
08:00<Eddi|zuHause>"bethesda gives away Elder Scrolls 3 when you sign up to their store"... yeah. not doing that.
08:04<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7165: [core] Implement SmallVector using std::vector
08:04<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7165: [core] Implement SmallVector using std::vector
08:09-!-sla_ro|master [slamaster@] has joined #openttd
08:09-!-sla_ro|master is "slamaster" on #sla #openttd
08:35<Eddi|zuHause>the internet apparently is now dead.
08:43<Hexus_One>Q: are there map accessor functions to check if a given TileIndex contains a tunnel/bridge head? - and then functions to get information about said tunnel/bridge?
08:44<Hexus_One>cool :) where can I find them?
08:44<Eddi|zuHause>probably in a file called tunnelbridge_something.h
08:45-!-circ-user-3HYVs [] has quit [Ping timeout: 480 seconds]
08:45<@peter1138>Hexus_One, yeah, <something>_map.h
08:45<Hexus_One>sweet thanks :)
08:46<Hexus_One>oh i didn't realise there was already a MP_TUNNELBRIDGE tiletype
08:50<@peter1138>What happened to your tree-planting PR?
08:51<@peter1138>Tree removing, rather.
08:52<Hexus_One>oh i submitted it to the citymania client :)
08:53<Hexus_One>i've yet to learn about how to manipulate the actual map setters
08:53<@peter1138>What was the issue with the suggested changes?
08:54<Hexus_One>I'm lazy :^) and personally i'm happy with the function of the current code
08:55<Hexus_One>although yeah I do like the changes you suggested :) but for now I want to work on this instead
09:00<@LordAro>Hexus_One: out of interest, is there a particular reason you're targeting citymania instead of actual OTTD?
09:01<Hexus_One>oh not really I guess, but i just started off patching with network-compatible features
09:01<Hexus_One>i'm not familiar with modifying the codebase under that
09:02<Hexus_One>and so when I submitted my treedozer/treedemo PR to trunk, peter suggested i create a new CommandType which i don't know how to do
09:04<Hexus_One>and then another user suggested I submit my PR to the citymania client, which I happen to use as my preferred OTTD client
09:04<@peter1138>Yeah but actually modifying the existing clear tile command looks pretty simple.
09:04<@peter1138>(Rather than creating a new one)
09:05<Hexus_One>if you can teach me how, i'm all ears :) but for now i'm just doing things I understand
09:08<Hexus_One>also tbh i'm really only making these patches for myself, for immediate use. submitting them as PRs is more or less a side thing and isn't really my main priority
09:08<@peter1138>Best way is to delve in.
09:08<@peter1138>*_cmd.cpp are not scary :)
09:09<Hexus_One>lmao i'm but a novice coder
09:09<@peter1138>But yeah, submitting a PR signals a clear intent that you think it should be included in OpenTTD, and we obviously have strict requirements. Being "network compatible" with old servers is definitely not an objective because you can't connect to old servers anyway
09:10<Hexus_One>it took me two weeks to understand how to grab tiletypes, how to send DoCommandP, how to fetch tile slopes and such
09:10<@peter1138>Don't fret about that. You made an effort, that's what counts :)
09:11<Hexus_One>oh the way I saw it was that submitting PRs was the new way to submit client patches, vs distributing diffs via TT-forums
09:12-!-Flygon [] has quit [Quit: A toaster's basically a soldering iron designed to toast bread]
09:13<@peter1138>Only way to get better is to delve in and try things. Still takes up ages.
09:15<Hexus_One>can you give me some pointers on where to start? for example I'm aware of the #CommandProc table but I don't know where the function leads after that
09:18<@peter1138>So the network command that you used is CMD_CLEAR_AREA. In src/command.cpp, this is linked to the function CmdClearArea, which is in src/landscape.cpp.
09:19<@peter1138>(Oddly, and inconsistently, not landscape_cmd.cpp)
09:20<@peter1138>At the beginning of that function there's a little documentation about how the parameters are packed.
09:21<Hexus_One>Oh i see
09:21<Hexus_One>so I can read off bits from p1 or p2 (I remember you suggested p2?), and then add a conditional structure inside the tile iterator
09:22<Hexus_One>and the 'continue' for undesired tiles based on my flags
09:22<@peter1138>Right before the first DoCommand call.
09:22<@peter1138>No need to handle diag/orth cos that's already done.
09:22<Hexus_One>sweet :) thank you
09:23<@planetmaker><Hexus_One> lmao i'm but a novice coder <-- I started exactly that way. :) Making a PP. Making a client...
09:23<@planetmaker>it proved to me more rewarding in shipping it to more people. Yet it also proved to need more effort as it requires more thorough coding and meeting other peoples expecations
09:24-!-supermop_work [~supermopw@] has joined #openttd
09:24-!-supermop_work is "A CIRC user" on #openttd
09:24<@planetmaker>also... your own PP get easier to maintain the more of it you can ship to OpenTTD master :D
09:24<@planetmaker>kinda... was my motivation back then
09:25<@peter1138>We need JGR to start pushing more bits :)
09:25<@planetmaker>well, he does already, I think
09:25<@planetmaker>requesting more PRs from him probably is beyond what one can reasonably do in free time
09:25<Hexus_One>btw is there an easy way to prototype GUI layouts? eg creating custom toolbars and such
09:26<@planetmaker>no(t that I know)
09:26<@planetmaker>copy&paste existing
09:26<Hexus_One>i'm aware of the NWidgetPart code blocks within all the rail_gui.cpp, road_gui.cpp etc files
09:26<@planetmaker>the widget system is not bad though. ^^
09:27<Hexus_One>so I just have to stick to copy-pasting and messing with those values?
09:27<Hexus_One>okay :)
09:27<@planetmaker>well, if you understand a bit the idea behind the widget system, it probably is as easy to write from scratch than to adopt an existing
09:27<@planetmaker>but yes...
09:28<@planetmaker>I'd need to write at least add one window to be able to do so again :)
09:29<@peter1138>Widget system is complex but probably necessarily so. It's not HTML & CSS by any means.
09:29<@peter1138>Shall I have a caramel Whip or not?
09:29<@planetmaker>with a piece of lettuce to sooth the concience?
09:29<Hexus_One>idk what that is but yes
09:32<@peter1138>I already ate the lettuce ;)
09:33<@planetmaker>a lettuce a day... keeps the bad concience at bay :P Then go for it
09:33<@planetmaker>personally I cannot say no to sweets :P
09:34<@peter1138>One of them, heh.
09:35<supermop_work>well you can eat 14 of them a day
09:35<@peter1138>I can't because I only have one.
09:42<_dp_>peter1138, you say it like html&css is any simpler :p
09:43<_dp_>but yeah, I've been patching openttd for like 5 years or smth and still can't write gui from scratch...
09:43<_dp_>rarely do gui though
09:44-!-sla_ro|master [slamaster@] has quit []
09:45<@peter1138>Isn't yours the client with tons of buttons on the intro window?
09:45<_dp_>peter1138, nope, that's btpro one
09:46<_dp_>but we have some extra windows
09:49<_dp_>now that I think of it I actually did more patches for master lately than for cmclient xD
09:49<_dp_>that thing I mostly just keep updated
09:51-!-supermop_work_ [~supermopw@] has joined #openttd
09:51-!-supermop_work_ is "A CIRC user" on #openttd
09:52<@peter1138>13:24 <@planetmaker> also... your own PP get easier to maintain the more of it you can ship to OpenTTD master :D
09:52<@peter1138>_dp_, ^^
09:54<Hexus_One>signals-on-bridges in trunk when
09:54<_dp_>peter1138, idk, doesn't quite work for me
09:54<_dp_>peter1138, probably coz I don't move stuff from cmclient to master
09:55<_dp_>peter1138, i just write new stuff for master directly
09:55<@planetmaker>well, that's about the same thing
09:55<@planetmaker>PP usually never shrink. Unless, ofc, you move patches into master. Then they might
09:56<Hexus_One>what's a PP
09:56<Hexus_One>oh i see
09:57<_dp_>planetmaker, mmm... not really, thing with compatible clients is that most gameplay patches can't be done compatibly
09:57<@planetmaker>well... for that reason those patches have priority in getting into master :P
09:57<@planetmaker>you can ofc do much more with patches which can be more than client-side
09:58-!-supermop_work [~supermopw@] has quit [Ping timeout: 480 seconds]
10:00<_dp_>I'd like to move more stuff into master but not much of it seems to be needed there
10:00<_dp_>like all the cb stuff
10:01<_dp_>hm, polyrail though...
10:01<_dp_>polyrail is like 1/4 of cmclient value)
10:02<@planetmaker>_dp_, what defines "needed"?
10:02<_dp_>it does feel somewhat suboptimal though
10:02<_dp_>I'd like to see pf-based building tools
10:02<_dp_>but too lazy to write them xD
10:02<@planetmaker>obviously everything you have in your patches, both server and client-side certainly has some value somewhere, I guess? :)
10:06<_dp_>planetmaker, well, it definitely has value for citymania but not sure for anywhere else
10:06<_dp_>planetmaker, especially server, that's kind of a thing in itself, most of it won't even work without db and admin port and what else we have there.
10:07<@planetmaker>well, admin port is a master thing, is it?
10:08<@planetmaker>as to the DB... ideally the admin port should probably do the communication between game and DB
10:08<@planetmaker>so if admin port is missing stuff: that definitely is stuff which could be upstreamed
10:08<@planetmaker>after all: there's not many users for it. And you're basically *the* audience for that feature
10:10<_dp_>planetmaker, yeah, admin is master thing in theory but I have extentions to it and then another binary data format on top :p
10:10<Hexus_One>:0 have you seen my pathfinder-track builder
10:11<_dp_>planetmaker, and yeah, it would probably be better for admin thing to do DB but we've started with luuk server and it does everything directly in mysql
10:12<_dp_>Hexus_One, I saw some reddit post, was you the one who made it?
10:12<Hexus_One>yeah :)
10:12<_dp_>Hexus_One, that thing was definitely a step in right direction but far from being finished
10:12<Hexus_One>i'm starting from scratch again though so it may take a while
10:14<@planetmaker>_dp_, I really am curious as to whether it can work through the official channel / admin port. Or if not: what is missing. And to see patches to add what's missing
10:15<@planetmaker>And to offer a kinda reference implementation to interested people
10:15<@planetmaker>(and I know that it feels like lots of work for no benefit when the server already works with all you need / want)
10:16<Hexus_One>_dp_ i need your opinions on this gui layout
10:16<@planetmaker>yet I think OpenTTD as a whole would definitely profit
10:16<Hexus_One>(check discord)
10:16<@planetmaker>which indirectly would add positive feedback to your server's audience
10:17<_dp_>planetmaker, well, first of all, supposed way of working with adming port is with gamescript and gamescript sucks
10:17<_dp_>planetmaker, so need to start there
10:18<_dp_>planetmaker, and it's not like our servers work nicely and have all I need xD
10:18<_dp_>planetmaker, so I'd rather fix that, so probably won't ever have time to do it properly
10:19<@planetmaker>eh, admin port not necessary needs game script support
10:19<@planetmaker>and tbh... yes, it currently does work via game script to post things to admin port
10:19<@planetmaker>Personally I consider that quite a hack myself
10:20<@planetmaker>And would personally rather see the admin port have access to those things directly
10:20<@planetmaker>so that the game script is free for just that: a game script which manages / alters the game
10:20<@planetmaker>and not doing logging and passing around variables
10:21<@planetmaker>(just my personal 2ct)
10:24<@planetmaker>At least I find it quite a hindrance to have to decide between a goal script and admin port support. Or to have to rewrite the whole GS
10:26<@peter1138>I've never used the admin port.
10:28<@planetmaker>Well, if you run a server which is frequented by more than a hand-select people, you want to run it. At least for some logging, and possibly for some easier remote-management
10:29<_dp_>curiously luukland's server didn't use it as well, everything went directly to db or via irc %)
10:29<@planetmaker>of course... you can implement your own interface. But that's just... the same stuff as admin port in different colour
10:30<@planetmaker>admin port was implemented so that you do not have to re-invent the wheel. And so that you can actually run a decently-managed server out-of-box
10:30<@planetmaker>or so the idea behind it
10:30<_dp_>planetmaker, I suspect ll server was done before admin port
10:30<@planetmaker>I think so, yes
10:31<_dp_>planetmaker, I'm switching it to admin port slowly but I'm not sure where I'm going with it
10:31-!-Wormnest [~Wormnest@] has joined #openttd
10:31-!-Wormnest is "Wormnest" on #openttd
10:31<@planetmaker>I'm not criticising :)
10:31<@planetmaker>It's possibly a stony path
10:31<@planetmaker>Dear, I know
10:33<@planetmaker>it was you who forked soap, or do I err?
10:33<@planetmaker>or was that the reddit people?
10:33<@planetmaker>or is it the same? :P
10:33<_dp_>planetmaker, soap? you mean some admin port thingy?
10:33<_dp_>planetmaker, wasn't me I wrote my own from scratch :p
10:34<@planetmaker>yes... it's an admin port client and irc-connector for openttd
10:34<@planetmaker>the one coop uses
10:35<@planetmaker>a bit unmaintained the recent years...
10:35-!-sla_ro|master [slamaster@] has joined #openttd
10:35-!-sla_ro|master is "slamaster" on #sla #openttd
10:38<@planetmaker>though as far as I can tell... coop consists of me... and happy being around. Hard to call "coop" :P All others meanwhile left the community and moved on :(
10:39<@planetmaker>luckily I own the server. So it'll be around as long as I pay the bill...
10:39<_dp_>planetmaker, it's pretty much the same for citymania
10:39<@planetmaker>and as long as dihedral pays for the domain name
10:40<_dp_>planetmaker, some stuff broke and I couldn't find time to fix for half a year
10:41<_dp_>planetmaker, took players few months to notice servers are gone xD
10:41<@planetmaker>been there, done that...
10:41<@planetmaker>wow... that's sad :(
10:47-!-nielsm [] has joined #openttd
10:47-!-nielsm is "Niels Martin Hansen" on #openttd
11:01-!-Alberth [] has joined #openttd
11:01-!-mode/#openttd [+o Alberth] by ChanServ
11:01-!-Alberth is "purple" on @#openttd
11:07<@planetmaker>so... first PR for OpenGFX already. And merged
11:08<@peter1138>Nice, PR #1 :-)
11:08<@peter1138>I wonder if DorpsGek_II will get in on the action? :)
11:09<@planetmaker>I wonder, too. Doesn't look like
11:10<@planetmaker>Also... how does one enable commit message style checking? It's not much, but could be enabled for both, nml and OpenGFX. Doesn't need to build anything for that
11:11<@peter1138>I... think the commit hooks are done by the CI.
11:11<@peter1138>Linux commit-checker
11:11<@peter1138>So it still goes off to Azure.
11:11-!-gareppa [~gareppa@] has joined #openttd
11:11-!-gareppa is "gareppa" on #llvmlinux #ext4 #mm #moocows #oftc #openttd #scilab #C
11:12<@planetmaker>yes... but... needs not much build time. Dunno how that billing works there
11:13-!-gareppa [~gareppa@] has quit []
11:14<@peter1138>It's all in the azure-pipeplines directory in OpenTTD, I guess.
11:15<@peter1138>Well, apart from the docker images.
11:16-!-Pikka [] has quit [Ping timeout: 480 seconds]
11:21<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on issue #6564: Crash: loading save
11:27-!-glx [] has joined #openttd
11:27-!-mode/#openttd [+v glx] by ChanServ
11:27-!-glx is "Loïc GUILLOUX" on @#openttd.noai #openttd.notice +#openttd
11:29<+glx>peter1138: I found the same conclusion for #6564
11:38<@peter1138>As I say "I have a patch" ;)
11:38<+glx>we could also make utf8 function null proof
11:42<@peter1138>Doesn't help. The null only happens because it's reached the end of the argument stack, but it could have treated any random value as a point before hand.
11:43<+glx>but will prevent crash even with invalid station name, because it tried to read station index as a string id
11:43<@peter1138>Nope. That doesn't return null.
11:44<@peter1138>We'd need to check the argument type matches what is expected.
11:44<+glx>for now it seems argument type is set on read
11:46<DorpsGek_II>[OpenTTD/OpenTTD] PeterN opened pull request #7418: Fix: Validate control-codes in NewGRF strings
11:48<@peter1138>So I'm guessing there are checks missing and/or wrong.
11:48<@peter1138>It does work for this particular case.
11:49<@peter1138>Should probably also weed out default vs NewGRF strings.
11:53-!-supermop_work_ [~supermopw@] has quit [Ping timeout: 480 seconds]
11:56-!-rocky11384497 [~rocky1138@] has quit [Ping timeout: 480 seconds]
12:00-!-Samu [] has joined #openttd
12:00-!-Samu is "realname" on #openttd
12:01<@peter1138>glx, but maybe I should focus on the side where it's actually happening and validate the argument type.
12:02<@peter1138>SetDParam would require some mega changes :/
12:02<+glx>and we don't always use it
12:02<@peter1138>We don't?
12:03<@peter1138>Oh, for substrings, yeah.
12:03<+glx> int64 args_array[] = {STR_TOWN_NAME, st->town->index, st->index};
12:03<+glx> StringParameters tmp_params(args_array);
12:03<+glx>that's for station name
12:03<+glx>first \80 works well
12:04-!-Progman [] has joined #openttd
12:04-!-Progman is "Peter Henschel" on #openttd
12:07<+glx>hmm it should be possible to set type array in these cases
12:09<+glx>I can try something
12:10<+glx>oh for SCC_DEPOT_NAME type array is provided
12:12<DorpsGek_II>[OpenTTD/OpenTTD] stale[bot] closed pull request #7120: Codechange: Improve performance of closest town lookups with cache
12:12<DorpsGek_II>[OpenTTD/OpenTTD] stale[bot] commented on issue #6603: Insert XDG_DATA_DIRS into data loading path
12:16<Samu>aren't those numbers always positive?
12:16<Samu>should be uint, but I dunno
12:16<+glx>you may want to display a negative value
12:17<+glx>so args are int64
12:24<@peter1138>Wow, £245 for a(n admittedly decent) cast iron frying pan.
12:27<+glx>ok with type, an assert is triggered, not sure it's better than a crash ;)
12:27<@peter1138>Easier to diagnose ;)
12:28-!-Supercheese [~Superchee@] has joined #openttd
12:28-!-Supercheese is "Supercheese" on #openttd
12:35<+glx>quick test :)
12:39<@peter1138>I... didn't know that existed.
12:39<@peter1138>So less changes than I was thinking.
12:40<+glx>indeed no real need to change SetDParam as we assume our strings are valid
12:41<@peter1138>This is probably more reliable that my original idea.
12:41<+glx>but validating grf strings on load makes sense too
12:42<@peter1138>If strings are returned by callbacks (is that a thing) then correct validation on load seems tricky.
12:43<Eddi|zuHause>i definitely composed strings via switches
12:43<+glx>maybe instead of assert it should return 0
12:43<Eddi|zuHause>extra newgrf text in purchase menu
12:43<+glx>and a debug message
12:44<@peter1138>glx, abort string formatting and yes, a debug message.
12:44<Eddi|zuHause>(what was that, CB23?)
12:49<Samu> can you try join this game without dropping or timeout, just wanna make sure I've set up enough time for such a huge map
12:52<nielsm> trying
12:52<nielsm>41.3 MB game data to download
12:52<nielsm>timed out
12:52<nielsm>after around a third
12:54<Samu>500 ticks is too short
12:54<Heiki>same here, got to about 11.3 MB
12:56<Samu>just set network.max_join_time to 2000
12:56<Samu>try again plz
12:57<nielsm>41.5 MB all downloaded and joined
12:58<Samu>there were 2 guys queued
12:58<Samu>one was dropped :(
12:59<Samu>hmm my ethernet only using 5 Mbps :(
12:59<Samu>i got a upload of 10 Mbps
13:00<Samu>t.t Heiki
13:00<Samu>openttd not ready for 4k maps
13:00<nielsm>never will be, the data size is too large
13:01<Samu>need big servers to upload data at much greater speeds
13:01<nielsm>or more like, residential internet needs to improve massively
13:01-!-HerzogDeXtEr [] has joined #openttd
13:01-!-HerzogDeXtEr is "purple" on #openttd
13:02<Heiki>Samu: yes, I got dropped (tried twice)
13:02<Heiki>also only 5 Mbps here
13:03<Samu>I should disable trees next time
13:03<Heiki>(but that should be enough for a client, shouldn’t it?)
13:04<Samu>for such a map size, I guess so
13:04<Samu>I mean no
13:04-!-andythenorth [] has joined #openttd
13:04-!-andythenorth is "andythenorth" on #openttd
13:05<+glx> <-- seems to work, but lot of stuff in debug window :)
13:07<Samu>max_join_time 32000 ticks
13:07-!-Hexus_One [~oftc-webi@] has quit [Quit: Page closed]
13:07<Samu>this should tell me how many ticks a client takes to join
13:07<Samu>openttd should tell me*
13:08<Heiki>ooh, now I got in
13:08<Samu>meh, it just says the client joined, but doesn't tell me how long it took, maybe a suggestion
13:13<Samu>eww my AI is slowing down
13:14<Samu>15 ms trying to find a spot for airpot
13:14<Samu>must figure out why
13:15<Heiki> 8741 h 20 0 1493128 637352 10660 R 193,3 16,3 12:43.08 openttd
13:15<Samu> average ms from my AI is bad
13:16<Heiki>that just as a spectator, probably trying to play would not be much fun on this computer (:
13:17<@planetmaker>spectator or player: no difference for OpenTTD
13:17<DorpsGek_II>[OpenTTD/OpenTTD] btzy commented on pull request #7028: Feature: Option to group vehicle list by shared orders
13:17<Heiki>framerate when zoomed out is around 8
13:18<Eddi|zuHause>don't zoom out, then
13:18<Eddi|zuHause>(i only ever zoom out when paused)
13:18<Samu>oh, they made fully zoom out on 4k maps slower in a recent change
13:18<Samu>some months ago
13:19<Heiki>and autosave lasts a week
13:19<Samu>change to lzo
13:28<Samu>sometimes I wonder... what is the point of Valuators if all they do is stall
13:32<Heiki>well yes, the game is playable as long as I don’t zoom out too much
13:32<Heiki>at least more or less
13:33-!-Alberth [] has left #openttd []
13:34<Samu>it's my AI that's making it stutterfest
13:35<Samu>I have an idea how to fix this
13:36<Samu>Remove all Valuators
13:36<Samu>turn them into for loops
13:38<Samu>must iterate backwards
13:38<Samu>i wanna remove items while iterating
13:39<Samu>looks like i can't do this :(
13:40<Samu>maybe I can, but the code will look uglier than ever
13:40<Samu>it's my code so it doesn't matter
13:40-!-Wormnest [~Wormnest@] has quit [Ping timeout: 480 seconds]
13:54<DorpsGek_II>[OpenTTD/OpenTTD] btzy updated pull request #7028: Feature: Option to group vehicle list by shared orders
14:03<DorpsGek_II>[OpenTTD/OpenTTD] btzy commented on pull request #7028: Feature: Option to group vehicle list by shared orders
14:07<DorpsGek_II>[OpenTTD/OpenTTD] glx22 opened pull request #7419: Fix #6564: enforce types of arguments for station name strings
14:16<DorpsGek_II>[OpenTTD/OpenTTD] LordAro commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
14:28*peter1138 tests 7419
14:28<DorpsGek_II>[OpenTTD/OpenTTD] eekee commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
14:28<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
14:29<DorpsGek_II>[OpenTTD/OpenTTD] glx22 commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
14:30<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
14:32<@peter1138>Yeah, that's nice.
14:32<@peter1138>It's to the point and fixes the issue.
14:35<Samu>I have a task:
14:36<Samu>replace all those valuators with a single for loop
14:36<Samu>who can help?
14:36<Samu>should remove all the stutterfest
14:36<@peter1138>Valulators should be pausable :/
14:37<DorpsGek_II>[OpenTTD/OpenTTD] glx22 commented on pull request #7419: Fix #6564: enforce types of arguments for station name strings
14:38<+glx>valuators are computed by openttd itself
14:41<+glx>but we kill the script if it takes too long
14:42<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on issue #7347: Save overwrite confirmation doesn't respond to enter key
14:45<+glx>maybe we could force sleep at the end of each valuate call
14:46<+glx>seems Valuate() counts 5 ops per item
14:54<+glx>but we can't sleep in the middle of Valuate() of course
14:54<@peter1138>That's a shame.
14:55<@peter1138>I wonder if we can provide a better cost estimation, instead of just 5 per item.
14:57<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry commented on pull request #7165: [core] Implement SmallVector using std::vector
15:00<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry commented on pull request #7165: [core] Implement SmallVector using std::vector
15:01-!-m3henry [] has joined #openttd
15:01-!-m3henry is "realname" on #openttd
15:01<@peter1138>I guess I don't know how emplace is meant to work :(
15:03<m3henry>emplace constructs the element in place by forwarding constructor arguments
15:04<m3henry>If there's no constructor defined, it won't be able to use it
15:04<@peter1138>Right, so it needs a proper constructor, not rely on initialization-type stuff.
15:05<m3henry>Yeah, emplace_back can call a default initializer
15:05<m3henry>But not perform memberwise initialization
15:06<@peter1138>Could add constructors or just not bother, indeed.
15:07<m3henry>I wonder what should be done about the temporary constructors I added for a few structs
15:07<m3henry>1) make them permanent
15:08<m3henry>2) leave them there as indication that there is need for improvement
15:11<m3henry>Which would you pick?
15:11<@LordAro>m3henry: depends how long it's going to take you to write PRs that remove them :p
15:12<m3henry>Cannot decode solution
15:12<Eddi|zuHause>if only one had a vision...
15:13<Eddi|zuHause>(is that a meme now?)
15:13*LordAro slaps Eddi|zuHause
15:13<@planetmaker>hm :)
15:13<Eddi|zuHause>probably wrong channel :p
15:13*peter1138 slaps Eddi|zuHause around a bit with a trout
15:13<@LordAro>planetmaker: it'd be @ if anything :p
15:14<@planetmaker>yes :)
15:15<@peter1138>Oh, the depots patch is conflicting again.
15:17<m3henry>I guess I'll just remove the comments
15:17<@LordAro>m3henry: they're easy enough to find again, when C++17 happens
15:17<@LordAro>and given that probably won't be for a while... :p
15:18-!-supermop_work [~supermopw@] has joined #openttd
15:18-!-supermop_work is "A CIRC user" on #openttd
15:18*peter1138 considers dinner.
15:19-!-Wolf01 [] has joined #openttd
15:19-!-Wolf01 is "Wolf01" on #openttd
15:19-!-frosch123 [] has joined #openttd
15:19-!-frosch123 is "frosch" on #openttd
15:19<DorpsGek_II>[OpenTTD/OpenTTD] LordAro updated pull request #7417: Group hierarchy improvements (by 3298)
15:21<DorpsGek_II>[OpenTTD/OpenTTD] LordAro updated pull request #7417: Group hierarchy improvements (by 3298)
15:21<DorpsGek_II>[OpenTTD/OpenTTD] LordAro commented on pull request #7417: Group hierarchy improvements (by 3298)
15:21<DorpsGek_II>[OpenTTD/OpenTTD] LordAro dismissed a review for pull request #7417: Group hierarchy improvements (by 3298)
15:22<@peter1138>LordAro requested a review from PeterN 23 seconds from now
15:22<@peter1138>"23 seconds... FROM now" ?
15:22<@peter1138>"28 seconds ago"
15:22<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry updated pull request #7165: [core] Implement SmallVector using std::vector
15:22<@peter1138>That's more sensible.
15:26<@peter1138>Hm, which road types should be available in the scenario editor?
15:29<Wolf01>It's a scenario editor, I would like to place even single houses :P
15:37<@planetmaker>I agree with wolf. I'd like to be able to do everything
15:37<@planetmaker>and... also exchange NewGRF
15:37<@planetmaker>at the cost of re-generating the part they touch
15:42<Samu>not trams
15:45<Wolf01>Even trams
15:45<@LordAro>trams can share tracks currently, can't they?
15:45<@LordAro>if so, then yes, even trams
15:46<@LordAro>*trams from different companies
15:46<Wolf01>Yes, they are like roads, and you can build them with owner 0
15:50-!-Lejving_ [] has quit [Ping timeout: 480 seconds]
15:51<Samu>in scenario editor you're OWNER_NONE
15:51-!-Gustavo6046 [~Gustavo60@] has quit [Ping timeout: 480 seconds]
15:52-!-Lejving [] has joined #openttd
15:52-!-Lejving is "realname" on #openttd #/r/openttd #factoriocoop #mashinky @#openttdcoop.pz
15:57<Samu>WormAI also has some stutters when trying to build airport on huge maps
15:57<@peter1138>Dinrar is maded
16:01<DorpsGek_II>[OpenTTD/OpenTTD] PeterN approved pull request #7417: Group hierarchy improvements (by 3298)
16:02-!-supermop_work_ [~supermopw@] has joined #openttd
16:02-!-supermop_work_ is "A CIRC user" on #openttd
16:05-!-Lejving_ [] has joined #openttd
16:05-!-Lejving_ is "realname" on #openttd #/r/openttd #factoriocoop #mashinky #openttdcoop.pz
16:08<@peter1138>So, let's say... in general, we're happy with std::vector, right?
16:08<@LordAro>i think so
16:09-!-supermop_work [~supermopw@] has quit [Ping timeout: 480 seconds]
16:10<DorpsGek_II>[OpenTTD/OpenTTD] PeterN approved pull request #7165: [core] Implement SmallVector using std::vector
16:10<Samu>inb4 conflicts with my stuff
16:11<@peter1138>Oh. Your review needs to be dismissed
16:11<@LordAro>Samu: this will conflict with almost everyone's stuff
16:12<DorpsGek_II>[OpenTTD/OpenTTD] LordAro approved pull request #7165: [core] Implement SmallVector using std::vector
16:13-!-Lejving [] has quit [Ping timeout: 480 seconds]
16:16<DorpsGek_II>[OpenTTD/OpenTTD] PeterN merged pull request #7165: [core] Implement SmallVector using std::vector
16:16<Samu>my AI is less spiky when finding places to put airports now
16:17<Samu>but also slower :(
16:18<@peter1138>Well it would be.
16:18<Samu>uh oh, i guess I spoke too early
16:18<Samu>had an average peak of 8 ms suddenly
16:18<Samu>at least it's not 15
16:19<@peter1138>Chocolate icecream cookie sandwich. That's kinda decadent.
16:20<@peter1138>m3henry, now we'll probably get loads more bug reports, but that's kinda the point :
16:20<@peter1138>(Well, probably, it was good)
16:20<Samu>the code with // is being replaced
16:20<m3henry>Woo, #15 contributor!
16:21<Samu>no more Valuate stuff slowing down
16:21<@LordAro>m3henry: of those that have put their email addresses into GH :p
16:22<@peter1138>Yay, conflicts :D
16:23<+glx>hmm updating cmake branch or not
16:33<+glx>D:\developpement\GitHub\glx22\OpenTTD [cmake ↓180 ↑225]>
16:33<+glx>and only one conflict :)
16:38<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry closed pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
16:38<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry updated pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
16:41<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry updated pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
16:41<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry reopened pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
16:41<@peter1138>Weird :p
16:41<m3henry>Lol, forgot to commit after reset --hard to master
16:45<DorpsGek_II>[OpenTTD/OpenTTD] glx22 updated pull request #7270: Introduce CMake (and removing all other project-related code)
16:46<+glx>waiting for CI to see if I need to readd -Wno-c++11-extensions
16:47<frosch123>that nullptr PR also touches 3rdparty/
16:48<frosch123>do we want to modify that stuff?
16:48<+glx>we try to do minimal changes in 3rdparty IIRC
16:48<m3henry>probably not
16:50<DorpsGek_II>[OpenTTD/OpenTTD] michicc updated pull request #7379: Codechange: Use C++11 functions for threading
16:51-!-supermop_work [~supermopw@] has joined #openttd
16:51-!-supermop_work is "A CIRC user" on #openttd
16:51*peter1138 tests
16:52<DorpsGek_II>[OpenTTD/OpenTTD] PeterN updated pull request #6811: Feature: Add NotRoadTypes (NRT)
16:53<@peter1138>Priorities :p
16:53<@peter1138>LordAro, sorry !
16:54<@peter1138>(#7417 needs updating)
16:54-!-supermop_work__ [~supermopw@] has joined #openttd
16:54-!-supermop_work__ is "A CIRC user" on #openttd
16:54<DorpsGek_II>[OpenTTD/OpenTTD] PeterN closed issue #6592: Missing symbols while linking with MinGW and LTO
16:54<DorpsGek_II>[OpenTTD/OpenTTD] PeterN merged pull request #7415: Some warning fixes
16:55<DorpsGek_II>[OpenTTD/OpenTTD] PeterN requested changes for pull request #7419: Fix #6564: enforce types of arguments for station name strings
16:57<@LordAro>peter1138: figures :p
16:58<+glx>ok no need for -Wno-c++11-extensions in cmake branch it seems
16:58<@peter1138>What does that do anyway?
16:58-!-supermop_work_ [~supermopw@] has quit [Ping timeout: 480 seconds]
16:58<+glx>suppress some warnings
16:58<@LordAro>clang used to warn about using c++11 stuff
16:59<@LordAro>probably prior to the codebase being c++11 anyway, but i'm pretty sure it's done nothing since clang3.something anyway
16:59<+glx>I guess set(CMAKE_CXX_STANDARD 11) takes care of that
16:59-!-supermop_work [~supermopw@] has quit [Ping timeout: 480 seconds]
17:00<+glx>no the warning was added to config.lib after the last rebase
17:00<+glx>well the flag :)
17:00<+glx>that was the only conflict I add during the rebase
17:01<DorpsGek_II>[OpenTTD/OpenTTD] M3Henry updated pull request #7407: Codechange: Use null pointer literal instead of the NULL macro
17:02<m3henry>fixed touching 3rdparty
17:02<+glx>oh no new warnings for MSVC builds
17:02<+glx>read: oh nooo
17:04-!-frosch123 [] has quit [Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn]
17:07-!-rocky11384497 [~rocky1138@] has joined #openttd
17:07-!-rocky11384497 is "Your Mom" on #openttd
17:07-!-sla_ro|master [slamaster@] has quit []
17:08<+glx>I'll fix them
17:13<+glx>haha 3 warnings for win32, 181 for win64, not bad ;)
17:17-!-andythenorth [] has quit [Quit: andythenorth]
17:17-!-andythenorth [] has joined #openttd
17:17-!-andythenorth is "andythenorth" on #openttd
17:18<@LordAro>lol woops
17:19<@LordAro>glx: do enable -Werror on the cmake branch if feasible :>
17:19<@peter1138>Yeah, I kinda don't check for warnings :/
17:19<+glx>I think it's enabled
17:19<@peter1138>If it's green it feels like it should be god.
17:20<@peter1138>rgb company colours still works :D
17:20<+glx>ha no -Werror is not enabled
17:20<+glx>we have -Wall
17:21<@peter1138>It'd fail on the OS X build.
17:21<@LordAro>mm, that's the issue
17:21<+glx>and for mingw too (even if we don't check it on CI)
17:22<@peter1138>Is there no -Wno-deprecated-crap or something? :D
17:23<@LordAro>glx: disabling that warning on mingw doesn't seem unreasonable
17:23<@LordAro>(do you also have -Wextra & -pedantic? )
17:23<+glx>-Wextra is enabled yes
17:25-!-andythenorth [] has quit [Ping timeout: 480 seconds]
17:26<+glx>you can check the flags here :)
17:26<DorpsGek_II>[OpenTTD/OpenTTD] LordAro updated pull request #7417: Group hierarchy improvements (by 3298)
17:26<DorpsGek_II>[OpenTTD/OpenTTD] LordAro dismissed a review for pull request #7417: Group hierarchy improvements (by 3298)
17:26*LordAro makes use of shiny std::vector functions
17:27<@LordAro>well, algorithm functions, i guess
17:30<DorpsGek_II>[OpenTTD/OpenTTD] glx22 updated pull request #7419: Fix #6564: enforce types of arguments for station name strings
17:33<DorpsGek_II>[OpenTTD/OpenTTD] PeterN approved pull request #7419: Fix #6564: enforce types of arguments for station name strings
17:42-!-supermop_work [~supermopw@] has joined #openttd
17:42-!-supermop_work is "A CIRC user" on #openttd
17:49-!-supermop_work__ [~supermopw@] has quit [Ping timeout: 480 seconds]
17:50<DorpsGek_II>[OpenTTD/OpenTTD] glx22 merged pull request #7419: Fix #6564: enforce types of arguments for station name strings
17:51<DorpsGek_II>[OpenTTD/OpenTTD] glx22 closed issue #6564: Crash: loading save
17:54<Samu>im getting tons of warnings..
17:55<Samu>conversion from 'size_t' to 'uint'
17:55<Samu>what happened
17:55<+glx>the vector PR has been merged
17:57<Samu>181 warnings:)
17:57<Samu>but it builds!
17:58-!-circ-user-3HYVs [] has joined #openttd
17:58-!-circ-user-3HYVs is "A CIRC user" on #openttd
18:01<DorpsGek_II>[OpenTTD/OpenTTD] stormcone opened pull request #7420: Fix #7165: Missed 'Append() --> push_back()' replacement
18:02<@LordAro> does that build
18:02<@LordAro>or rather, how did it build?
18:03<@LordAro>ah, haiku
18:03<@LordAro>it didn't :p
18:03<DorpsGek_II>[OpenTTD/OpenTTD] LordAro approved pull request #7420: Fix #7165: Missed 'Append() --> push_back()' replacement
18:05-!-circ-user-3HYVs [] has quit [Read error: Connection reset by peer]
18:06-!-Smedles [] has quit [Ping timeout: 480 seconds]
18:07-!-Smedles [] has joined #openttd
18:07-!-Smedles is "Paul Smedley" on #openttd
18:12<Samu>that vector thing wasn't really tested, was it?
18:13<+glx>it's in master to be tested :)
18:14<@LordAro>Samu: less complaining, more bug reporting please
18:14<Samu>can't dereference value-initialized vector iterator
18:14<Samu>just run it, you can't even get to main menu
18:14<@LordAro>that's meaningless on its own
18:14-!-supermop_work [~supermopw@] has quit [Remote host closed the connection]
18:15<@LordAro>and it works for Linux, and the Windows CI
18:15<@LordAro>it'll be a VS debug build thing again, i suspect
18:20<DorpsGek_II>[OpenTTD/OpenTTD] LordAro merged pull request #7420: Fix #7165: Missed 'Append() --> push_back()' replacement
18:22<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick opened issue #7421: Can't dereference value-initialized vector iterator
18:22<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick commented on issue #7421: Can't dereference value-initialized vector iterator
18:24<@LordAro>m3henry: so looks like VS debug vectors don't like dereferencing end()
18:25<@LordAro>"This element acts as a placeholder; attempting to access it results in undefined behavior"
18:27*glx is putting size_t everywhere :)
18:28<nielsm>yeah it's an error to deref end()
18:28<nielsm>since it's literally one past the final valid element
18:28<@LordAro>data() + size() would probably work around the VS assertion
18:28<@LordAro>but ew
18:29<nielsm>if you make a pointer of it and deref that you're just invoking undefined behaviour instead
18:31<@LordAro>it worked before because the pointer was never dereferenced
18:31<nielsm>why is it being dereferenced now when it wasn't before?
18:31<@LordAro>technically SmallMap::End() should never be dereferenced either, but actually getting it means it's dereferenced
18:31-!-Progman [] has quit [Remote host closed the connection]
18:32<m3henry>Why is it being dereferenceD?
18:34<@LordAro>return &*std::vector<Pair>::end();
18:34<@LordAro>because SmallMap "must" return a Pair*
18:35<@peter1138>So, er, smallmap -> std::map?
18:35<@LordAro>peter1138: i can't really see any easy alternative
18:36<@peter1138>Well, I was right.
18:36<@peter1138>20:20 <@peter1138> m3henry, now we'll probably get loads more bug reports
18:37<Samu>it reaches main menu in release x64 build
18:37<Samu>no crash
18:38<@LordAro>yeah, that assertion is only enabled in debug build
18:39<@LordAro>Samu: if you find SmallMap::End (both of them) in src/core/smallmap_type.hpp and replace the body with "return std::vector<Pair>::data() + std::vector<Pair>::size();", and then recompile in debug mode, does that allow the game to run?
18:40<Samu>gonna try
18:40<@peter1138>Why do I have a chainring imprint on my trousers?
18:41<@LordAro>peter1138: i often find myself asking the same question
18:41<@LordAro>i found 2 gashes in my overshoes last week, that i think must have been from my pedals
18:41<@peter1138>Yeah but ... this is upper thigh area, on the front of them.
18:42<m3henry>getting a pointer to a dereferenced iterator shouldn't actually perform a memory access
18:42<Samu>it works, reached main menu
18:43<m3henry>I'm guessing MSVC stdlib puts some checking code in there because they want to be extra careful
18:43<m3henry>damn microsoft
18:44<m3henry>But hey, I guess that reverts the change you requested xD
18:44<Samu>im starting a 4096x4096 map, in debug mode, will wait 10 min
18:45<Samu>with so many changes, I don't even know what to test
18:45<@LordAro>Samu: you can pull request that change, if you like
18:45<@LordAro>works as in interim fix
18:46<m3henry>And remove SmallMap::End()
18:46<m3henry>I had to add SmallMap::End() to change away from `data() + size()`
18:47-!-nielsm [] has quit [Ping timeout: 480 seconds]
18:48<@LordAro>well, doing it in one place is cleaner, imo
18:49<+glx>until SmallMap is replaced ;)
18:50<m3henry>I guess I can look at that after I've done nullptr, tinyEnum and AutoDeleteVector
18:52<Samu>took 8 minutes, was slightly faster
18:54-!-drac_boy [~oftc-webi@] has joined #openttd
18:54-!-drac_boy is "OFTC WebIRC Client" on #openttd
18:55<drac_boy>hi there
18:55<Samu>strange, taking too long to load a savegame
18:55<drac_boy>had to wonder but is there some unlisted 'standardization 2.0' tracktypes that I missed or its not just me wondering why someone wants to use the letter 'V' which doesn't exist in the current scheme?
18:57<Samu>it loaded
18:57<Samu>feels slower in some parts
18:57<Samu>faster in others
18:59<@peter1138>Not impossible.
18:59<@peter1138>debug or release build?
18:59<Samu>i had to wait about 3 minutes to loading
19:00<@peter1138>Then we don't care.
19:00<@peter1138>debug == not optimized.
19:01<Eddi|zuHause>drac_boy: the "standard" scheme always allowed for extensions
19:02<@peter1138>If there's a performance regression in release build, then we can discuss it.
19:02<Samu>do I create a PR? I guess not
19:02<Samu>will leave it to m3henry
19:02<@peter1138>22:45 <@LordAro> Samu: you can pull request that change, if you like
19:03-!-Gustavo6046 [~Gustavo60@] has joined #openttd
19:03-!-Gustavo6046 is "Non dico nomen." on #openttd #oftc #moocows
19:04<Samu>it will be fixed in another manner, from what I could gather, so pointless
19:04<@LordAro>eventually, yes
19:04<@LordAro>but that might take some time
19:04<@peter1138>LordAro, better do it ourselves... this one's being awkward.
19:05<@LordAro>as ever
19:05<@peter1138>But I'm going to bed.
19:07-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
19:10-!-Gustavo6046 [~Gustavo60@] has quit [Quit: Non video lux in futurum.]
19:15-!-Gustavo6046 [~Gustavo60@2804:14d:4cd8:81a4:f4aa:19f1:616f:f361] has joined #openttd
19:15-!-Gustavo6046 is "Non dico nomen." on #openttd #oftc #moocows
19:28-!-m3henry [] has quit [Quit: Leaving]
19:58<Samu>im doing a small experiment
19:58<Samu>AIs in 1.8.0 seem to fastforward faster
19:58<Samu>than in 1.9.0-RC2
19:58<Samu>at least my AI
19:59<DorpsGek_II>[OpenTTD/OpenTTD] LordAro opened pull request #7422: Fix #7421: Don't (directly) dereference std::vector::end() in SmallMap
20:00<drac_boy>sorry was a little busy .. but hmm .. I guess that makes sense but I still don't see why he shouldn't just use the letter N instead .. oh well its his own grf so meh :)
20:14<drac_boy>anyway night here
20:14-!-drac_boy [~oftc-webi@] has left #openttd []
20:19-!-Flygon [] has joined #openttd
20:19-!-Flygon is "Flygon" on #openttd
20:29-!-tokai|noir [] has joined #openttd
20:29-!-tokai|noir is "Christian Rosentreter" on #openttd
20:29-!-mode/#openttd [+v tokai|noir] by ChanServ
20:36-!-tokai [] has quit [Ping timeout: 480 seconds]
20:38-!-Smedles [] has quit [Ping timeout: 480 seconds]
20:40-!-Smedles [] has joined #openttd
20:40-!-Smedles is "Paul Smedley" on #openttd
20:41-!-Wormnest [~Wormnest@] has joined #openttd
20:41-!-Wormnest is "Wormnest" on #openttd
20:41<Samu>who would have though
20:42<Samu>ScriptTile::GetCargoProduction is the slowest function of all that valuator
20:42<Samu>the most important one, the one that actually matters
20:42<Samu>pff :(
20:44<Samu>Orthogonal tile area intersects...
20:49-!-Smedles [] has quit [Ping timeout: 480 seconds]
20:49-!-Smedles [] has joined #openttd
20:49-!-Smedles is "Paul Smedley" on #openttd
21:06-!-Supercheese [~Superchee@] has quit [Quit: Valete omnes]
21:07-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
21:08<utack>does anyone know if there are grf's with animals? all i could find was the opengrf farm
21:08<Eddi|zuHause>there defintely were animals, in FIRS, maybe also ECS
21:09<Eddi|zuHause>also, ISR stations
21:09<Samu>OthogonalTileArea::Intersects is slow, plz buff
21:11<utack>found something here too
21:11<utack>thank you Eddi|zuHause i will see!
21:12-!-Thedarkb-X40 [] has joined #openttd
21:12-!-Thedarkb-X40 is "realname" on #openttd #/r/openttd #oolite
21:13<Samu>maybe I shouldn't use intercontinental airports :|
21:14<utack>Eddi|zuHause you were right, there is a duck and a chicken at least :)
21:16<utack>and cows
21:23<Samu>this area intersection is ... intersecting with industries tile area
21:23<Samu>for all industries... omg
21:23<Samu>no wonder it's slow
21:24<Samu>and I'm making airports in towns, even
21:24<Samu>but it has to loop over all industries, for some reason
21:25<Samu>line 529 station_cmd.cpp
21:26<Samu>so, if I create a map with no industries, I am expecting this to be faster, let me try
21:37<Samu>went from 66% to 2%
21:37<Samu>GetNearestTown is now the new 66%
21:44<Samu>wasn't kdtree implemented?
21:45-!-Wormnest [~Wormnest@] has quit [Quit: Leaving]
21:55<Samu>who was the kdtree implementer?
22:02-!-Thedarkb-X40 [] has quit [Ping timeout: 480 seconds]
22:13-!-Supercheese [] has joined #openttd
22:13-!-Supercheese is "Caseum" on #openttd
23:17-!-Supercheese [] has quit [Read error: Connection reset by peer]
23:18-!-Supercheese [] has joined #openttd
23:18-!-Supercheese is "Caseum" on #openttd
---Logclosed Wed Mar 27 00:00:30 2019