IRC logs for #openttd on OFTC at 2024-01-22
            
00:01:38 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
03:17:18 *** Wormnest has joined #openttd
03:28:29 *** Wormnest has quit IRC (Quit: Leaving)
03:34:53 *** debdog has joined #openttd
03:38:35 *** D-HUND has quit IRC (Ping timeout: 480 seconds)
05:01:43 *** HerzogDeXtEr has joined #openttd
05:08:06 *** HerzogDeXtEr1 has quit IRC (Ping timeout: 480 seconds)
05:09:33 *** keikoz has joined #openttd
06:18:35 *** keikoz has quit IRC (Ping timeout: 480 seconds)
07:12:30 <DorpsGek> [OpenTTD/survey-web] survey-summary[bot] pushed 1 commits to main https://github.com/OpenTTD/survey-web/commit/919373c70cba2a03fc20d01ae62281c9a78989d5
07:12:31 <DorpsGek> - Add: summary for week 03 of 2024 (by OpenTTD Survey)
07:16:13 <DorpsGek> [OpenTTD/OpenTTD] michalc commented on discussion #11863: Bananas - Python client? https://github.com/OpenTTD/OpenTTD/discussions/11863
07:31:59 *** tokai has joined #openttd
07:31:59 *** ChanServ sets mode: +v tokai
07:38:55 *** tokai|noir has quit IRC (Ping timeout: 480 seconds)
07:40:01 *** pickpacket has quit IRC (Ping timeout: 480 seconds)
07:51:10 <truebrain> The difference in the amount of settings between JGRPP and vanilla is funny to observe ๐Ÿ™‚
08:08:13 <reldred> more settings we want MORE settings
08:08:19 <peter1138[d]> Jgrpp pruned them down to sanity?
08:13:38 <truebrain> more the inverse ๐Ÿ™‚
08:14:35 <truebrain> in other news, vanilla finally had a busy week with enough reports to report about it ๐Ÿ™‚
08:15:12 <truebrain> and the JGRPP playerbase totally shifted this week to mostly Germans ๐Ÿ˜›
08:21:17 <peter1138[d]> Oh
08:24:56 <reldred> yeah I been distracted playing other vidya games ๐Ÿ˜›
08:25:46 <reldred> and by other video games I mean "thirty minutes of starfield and then spend the rest of the day on ebay looking for minidisc players"
08:27:33 <reldred> I did snag a black Sony RH1 for an absolute steal though
08:28:34 <reldred> both the oled screens even still work!
08:48:55 <emperorjake> I don't think I've ever seen a minidisc in my life
08:49:11 <wensimehrp> survey-summary[bot]v: ```
08:49:11 <wensimehrp> info.os.memory
08:49:11 <wensimehrp> 16 GiB 36.5%
08:49:11 <wensimehrp> 24 GiB 17.3%
08:49:11 <wensimehrp> 8 GiB 17.2%
08:49:12 <wensimehrp> 40 GiB 11.4%
08:49:12 <wensimehrp> 128 GiB 10.0%
08:49:14 <wensimehrp> 64 GiB 2.1%
08:49:14 <wensimehrp> 32 GiB 1.5%
08:49:16 <wensimehrp> 256 GiB
08:49:16 <wensimehrp> oof
08:49:22 <emperorjake> truebrain: what did you want me to test? ๐Ÿ™‚
08:50:03 <reldred> emperorjake: They're super neat
08:50:09 <reldred> I've been really enjoying them.
08:50:27 <emperorjake> All I know about them I learned from the Techmoan video
08:51:09 <truebrain> emperorjake: If you can compile the latest version of my survey-branch, and then ...
08:51:10 <truebrain> https://github.com/TrueBrain/OpenTTD-discord-social/releases/tag/test12
08:51:35 <truebrain> contains binaries which should be signed and working. That is, they are signed so OpenTTD can load them; they are not signed that MacOS doesn't give you a nag screen ๐Ÿ™‚
08:53:20 <truebrain> what I expect to happen is that MacOS gives you a popup, but in-game it loads fine
08:53:37 <truebrain> (as in, no "Invalid Signature" error)
08:57:10 <truebrain> https://github.com/TrueBrain/OpenTTD-steam-social/releases/tag/test6 for the Steam version btw, if you are interested
08:58:16 <peter1138[d]> Bah, can't do this, early breakfasting today ๐Ÿ˜ฎ
09:00:29 <peter1138[d]> Does NML let you define your own flag values?
09:01:26 <peter1138[d]> Oh, not even sure how the built in flags work.
09:04:20 <locosage> like this... <https://github.com/OpenTTD/nml/blob/79afbc0fc34ff3e10ee1adc34090b28cbc74a99a/nml/spriteencoder.py#L209>
09:05:12 <peter1138[d]> I mean for NewGRF properties that are bitmasks.
09:05:24 <peter1138[d]> Flags on sprites are a bit more fixed.
09:07:16 <locosage> not if you look at grf-py xD
09:11:53 <emperorjake> truebrain: is this the right branch? https://github.com/TrueBrain/OpenTTD/tree/social-presence
09:12:18 <peter1138[d]> I don't think fridaemon is using grf-py.
09:13:10 <locosage> yeah
09:13:22 <locosage> it's just custom sprite properties are the latest addition in grf-py
09:13:55 <peter1138[d]> I wonder if it can support my svg extension ๐Ÿ˜„
09:14:19 <peter1138[d]> (I've never tested it, because I couldn't make grfcodec or nmlc support it...)
09:14:23 <locosage> grf-py? I though we discussed that already, shouldn't be hard to add
09:14:34 <peter1138[d]> We did, but I didn't put any effort into it.
09:15:35 <locosage> I can try to make a simple newgrf if you tell me how it's encoded
09:18:36 <DorpsGek> [OpenTTD/OpenTTD] jasfvcb commented on discussion #11863: Bananas - Python client? https://github.com/OpenTTD/OpenTTD/discussions/11863
09:19:04 <truebrain> emperorjake: yes
09:20:54 <LordAro> 666 indeed.
09:21:57 <wensimehrp> 666 has a different meaning in the Mainlands
09:22:29 <truebrain> I think it is totally irrelevant; spam is spam ๐Ÿ™‚
09:30:20 <peter1138[d]> locosage: Something like https://gist.github.com/PeterN/63cb90144d3004412eb337d158e0cd68
09:33:03 <locosage> and what branch to test it on?
09:33:25 <peter1138[d]> I have not pushed a branch yet.
09:34:34 <locosage> ok, I'll just do something I guess...
09:34:43 <locosage> is it ok if it just actiona replaces some gui sprite?
09:34:46 <peter1138[d]> I have now... it rebased with no conflicts <https://github.com/PeterN/OpenTTD/tree/svg2>
09:34:50 <peter1138[d]> Yeah
09:34:58 <locosage> also, does it need pixel alternatives?
09:34:59 <peter1138[d]> Replacement of GUI sprites is basically the intention ๐Ÿ™‚
09:35:17 <peter1138[d]> No.
09:35:28 <peter1138[d]> Ah, doesn't compile. Oh dear.
09:35:52 <peter1138[d]> SpriteCollection
09:38:39 <peter1138[d]> Hmm, it does weird stuff that I don't remember writing ๐Ÿ™‚ Basically renders all zoom levels so that it's svg-scaled instead of pixel-scaled.
09:39:50 <peter1138[d]> Fixed that, but this code is highly unlikely to work.
09:42:26 <peter1138[d]> Anyway, better get on with real $work :p
09:45:20 <locosage> so tldr I probably can't use it for testing?
09:48:02 <locosage> also, do you have any svg I can use somewhere?
09:49:14 <locosage> though I guess making my own will be a better test xD
09:57:12 <peter1138[d]> You could try, it might work ๐Ÿ™‚
09:57:26 <peter1138[d]> But you'll be the first person trying it.
09:58:12 <peter1138[d]> I've tested svg before but it was done as a font cache instead, but then Zephyris' negated the point of that ๐Ÿ˜„
09:58:57 <emperorjake> truebrain: I am getting "invalid signature" error on both of them
09:59:13 <peter1138[d]> I think the idea of reserving zoom level is to be able to provide different svgs for different zoom levels, but not implemented.
09:59:52 <peter1138[d]> But there's probably a way of making an svg itself zoom-level aware (changing dpi or something)
09:59:56 <truebrain> emperorjake: bah. In the console it is a bit more specific why .. mind copying that?
10:00:14 <peter1138[d]> It's because Apple wants more fees.
10:01:08 <emperorjake> https://cdn.discordapp.com/attachments/1008473233844097104/1198930342246101042/image.png?ex=65c0b1e4&is=65ae3ce4&hm=e6bfa95c83758f452b10d78abdf805b356bc4f25c054cd5d831a58bd05f8341d&
10:01:34 <truebrain> okay, it cannot find the signature file; those files aren't in that folder?
10:01:47 <truebrain> it basically uses the location of the dylib, and next to it should be the dig
10:01:53 <emperorjake> no, I used the installer and they're not there
10:01:55 <truebrain> but that folder structure you show is unexpected
10:02:05 <truebrain> ooowwwwhhhhhh
10:02:15 <truebrain> the Install script doesn't copy them
10:02:16 <truebrain> lol
10:02:19 <truebrain> can you copy them manually for now?
10:02:28 <truebrain> I will fix that Install issue later ๐Ÿ˜„
10:02:30 <truebrain> how silly of me
10:02:40 <emperorjake> https://cdn.discordapp.com/attachments/1008473233844097104/1198930725743906876/image.png?ex=65c0b240&is=65ae3d40&hm=84b09be0ce5a84b5cddc4664c8375069e8720cc211b66f25bdcd7f5022e5e7c6&
10:02:40 <emperorjake> The folder looks like this
10:02:55 <truebrain> yeah, okay; please copy the .sig from the dmg to that folder too ๐Ÿ˜„
10:03:12 <truebrain> I forgot MacOS had an install script ๐Ÿ˜›
10:05:15 <_zephyris> peter1138[d]: SVGs come with a bunch of metadata about size and resolution. Some standard, some vendor/program specific. Wouldn't trust it an inch ๐Ÿ˜‰
10:07:05 <peter1138[d]> No, that's why I pass the size and offsets outside of the svg data.
10:07:43 <peter1138[d]> But if I tell the renderer to render a specific dpi, then in theory it should be able to adjust line thickness automatically, etc...
10:07:55 <peter1138[d]> But not sure it's even necessary ๐Ÿ˜„
10:08:05 <peter1138[d]> First step: Get an svg rendered at all!
10:08:27 <_zephyris> Hah
10:08:39 <peter1138[d]> locosage: this spec is likely to need changing, there's no provision here for the colour remap layer.
10:10:04 <emperorjake> truebrain: I did that, it's still not behaving. Now it says "requested to be unloaded"
10:10:14 <truebrain> yeah, that is expected
10:10:17 <_zephyris> Arguably solving the wrong problem though? Grf support of bitmaps for fractional scales would be pretty much equivalent?
10:10:25 <truebrain> but it no longer gives an invalid signature? Good!
10:10:38 <truebrain> emperorjake: Sorry, forgot to add that it can't connect to Discord, and will unload itself ๐Ÿ˜›
10:10:46 <truebrain> Steam should work if you place that magic steamdb file
10:10:54 <truebrain> but if they load, that is what I was going for ๐Ÿ™‚
10:10:59 <truebrain> means signature validation succeeded
10:11:01 <emperorjake> The steam one says "failed to initialise" but I think that means it's messing the steam ID file
10:11:09 <truebrain> yeah; but awesome, this is what I wanted to know
10:11:16 <truebrain> 1 mistake, in the Install script, but the rest is working \o/
10:11:19 <truebrain> thank you very much!
10:11:21 <emperorjake> good enough then ๐Ÿ™‚
10:11:25 <peter1138[d]> _zephyris: not really, different problems. This still only allows power-of-two scaling, just the image data is from svg instead of bitmap.
10:11:54 <peter1138[d]> This does make providing fractional scales simpler though, because you only need one svg.
10:12:22 <peter1138[d]> I have a separate branch for fractional scaling, and... it runs but doesn't work yet, shall we say ๐Ÿ™‚
10:12:36 <emperorjake> truebrain: I still got the popup in MacOS though so I had to manually open the files so they would be allowed to run
10:12:44 <truebrain> yeah, I told you you would ๐Ÿ™‚
10:12:50 <truebrain> I didn't MacOS sign the binaries ๐Ÿ™‚
10:13:04 <emperorjake> Ah fair enough
10:13:11 <emperorjake> sounds very convoluted
10:13:26 <truebrain> system on top of system on top of system on top of system on top of ....
10:13:36 <truebrain> but I got all wires connected it seems ๐Ÿ˜„
10:14:10 <truebrain> now the next challenge of the day, is figuring out why my EPSG 4326 -> 3857 is not returning values I am expecting
10:18:40 <peter1138[d]> Might just trash the sprite cache and the encoding system.
10:19:21 <peter1138[d]> 'Optimized' carefully pack all possible zoom levels into one blob of data, storing offsets between different zoom levels. Not going to work with fractional scaling.
10:29:18 <locosage> peter1138[d]: np
10:29:27 <locosage> trying to free some space to build that branch atm xD
10:29:38 *** jinks has quit IRC (Quit: ZNC - http://znc.in)
10:29:40 <locosage> openttd takes like 2gb to build
10:29:51 <peter1138[d]> ๐Ÿ˜ฎ
10:29:57 *** jinks has joined #openttd
10:30:47 <locosage> and unfortunately new laptop doesn't mean larger drive nowadays
10:30:53 <peter1138[d]> 1.3G ./build + 552M ./.git, 47MB ./src.... yeah.
10:31:18 <locosage> ```build$ du -s
10:31:18 <locosage> 2049720 ```
10:31:38 <peter1138[d]> Oh just your build is 2G... oof.
10:31:48 <locosage> yeah, no idea why
10:32:20 <locosage> oh, because debug build probably
10:32:28 <peter1138[d]> openttd and openttd_test are 164M / 172M respectively, for me.
10:32:36 <peter1138[d]> That's a big binary.
10:33:23 <peter1138[d]> Nearly 17MB for the .pch file.
10:33:55 <peter1138[d]> And then, yeah, all the unstripped object files.
10:34:21 <peter1138[d]> I should use tmpfs for this ๐Ÿ˜ฎ
10:34:29 <peter1138[d]> Save on SSD wear & tear.
10:35:06 <peter1138[d]> I had an out-of-date docs too, that's 200MB.
10:36:40 <peter1138[d]> Frinnford (pop 3,877) has 5 theatres, 4 cinemas and 1 stadium. Nice.
10:37:34 <peter1138[d]> Starting the game in later years does make towns a bit weird.
10:48:33 <LordAro> peter1138[d]: i'd be surprised if your SSD usage was anywhere close to the maximum writes
10:49:12 <peter1138[d]> Doesn't take much for 1 misconfiguration to spew writes...
10:49:25 <LordAro> we burn out NVMe drives in about 18 months at work because our build/test process is exceptionally write heavy
10:49:40 <LordAro> i'm talking >100GB per build
10:49:48 <LordAro> which it does several times a day
10:50:14 <LordAro> OTTD is orders of magnitude less than that
10:54:36 <xarick> I'm thinking about <https://github.com/OpenTTD/OpenTTD/issues/11802#issuecomment-1902645654>
10:56:53 <xarick> with the current code structure, it's difficult to know the yellow line aqueduct is also cross-region
10:57:49 <xarick> it could be cross region towards the NW side
10:58:11 <peter1138[d]> if (aqueduct length > region size)...?
11:00:37 <peter1138[d]> (if that is the right condition, then a more efficient check is "did we reach the other end in less than region size", which allows an early short cut instead of having to traverse a 100 tile bridge)
11:01:04 <peter1138[d]> ((But test logic before optimizations))
11:01:44 <peter1138[d]> So glad Christmas is over. Finally no more Christmas chocolate.
11:01:53 <peter1138[d]> Just... er... Easter chocolate now.
11:03:07 <xarick> hmm, gonna experiment something ,brb
11:04:05 <LordAro> computer definitely feels more stable when i run prime95 on half the cores
11:04:24 <LordAro> which is odd
11:08:01 <xarick> think! How do I do this without using aqueduct traversability bits
11:09:06 <xarick> more checks on the edge tiles, hmm
11:12:36 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198948324431122512/test_svg_sprites.zip?ex=65c0c2a3&is=65ae4da3&hm=09b9431f1f2614a67b0456701e42cf4bcf7fc221c251024141619d05eb84f9e4&
11:12:36 <locosage> peter1138[d]: well, it loads but sprite doesn't show up
11:12:46 <locosage> idk maybe I'm doing svg "wrong"
11:12:54 <locosage> what are w/h supposed to do for svg?
11:13:28 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198948542367150121/Screenshot_from_2024-01-22_16-43-18.png?ex=65c0c2d7&is=65ae4dd7&hm=0f3847ac01368364d9f7e71f522d36e323ca7cc978a0a9ef331ba1817ab63407&
11:16:06 <xarick> is that gonna be the new toyland?
11:16:29 <locosage> everything but toyland xD
11:18:15 <xarick> good looking graphs, quite simple, really, it would fit the toyland theme
11:21:04 <peter1138[d]> Hmm, your svg file is empty in that archive.
11:21:40 <locosage> oh, lol, disk space issues xD
11:22:42 <peter1138[d]> I know it's commented out but are the parameter orders meant to be different? `16, 16, 0, 0` vs `0, 0, 16, 16`
11:24:40 <locosage> it's x,y,w,h for FileSprite
11:24:59 <locosage> svgsprite has no x,y
11:25:38 <peter1138[d]> Ahhh, position within the shared sprite file.
11:25:44 <locosage> yep
11:26:01 *** gwit has joined #openttd
11:26:01 <gwit> https://cdn.discordapp.com/attachments/1008473233844097104/1198951697326817300/YQS2vji.png?ex=65c0c5c8&is=65ae50c8&hm=d8ed0285a79e4b9a781c475f01d0f0c41e89b2cc0285993bce29817cdf6c6da4&
11:26:01 <gwit> least congested melbourne tram corridor
11:29:29 <peter1138[d]> Technically an svg sprite sheet could work but would need a different data structure to share the svg contents.
11:30:53 <locosage> that's something for grf compilers to figure out I think
11:31:05 <locosage> it's not like openttd supports raster sprite sheets internally
11:31:33 <locosage> though maybe it should...
11:31:39 <locosage> at least compress it all together xD
11:33:54 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198953685024247919/pause.svg?ex=65c0c7a1&is=65ae52a1&hm=98887e319906b8b177249e8101d9295deb9a9d1a6455a857c4159c18d93e875b&
11:33:54 <locosage> I fixed svg but that didn't seem to make any difference
11:35:51 <peter1138[d]> An A4-size svg might be the problem. Not sure.
11:36:19 <locosage> well, idk how you handle them and what's the correct size is...
11:36:47 <locosage> so I just chose the default inkscape gave me
11:38:50 <xarick> is TICC TOCC gone?
11:39:09 <peter1138[d]> I wouldn't be surprised if it's expecting `width="16px" height="16px" viewBox="0 0 16 16"` but not sure how to make sodipod...inkscape do that.
11:39:25 <peter1138[d]> You could try drawing something in the upper left corner ๐Ÿ™‚
11:39:34 <peter1138[d]> xarick: yes, check debug.h
11:41:58 <peter1138[d]> locosage: openttd asks for 96 dpi, so that would be ... the top-left 3.175mm I think.
11:41:59 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198955720155082802/pause.svg?ex=65c0c987&is=65ae5487&hm=e82f6f0e8545f4e8b9d3028671a8a1bcc2e41165105a2b263ddb5a8b609a8628&
11:41:59 <locosage> still no image
11:42:21 <peter1138[d]> Okay. Well I guess it might just not work ๐Ÿ˜„
11:42:31 <peter1138[d]> Can you send the grf file over? ๐Ÿ˜„
11:42:53 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198955948191010917/test_svg_sprites.grf?ex=65c0c9bd&is=65ae54bd&hm=ba4cf7fd9ea6dffed2fed313dd9b6dcbe2c9ca45bb4b52e59577a2dcf4ded9f4&
11:44:26 <peter1138[d]> I guess an encoder could benefit from an svg linter & minimizer, but that's for a later step.
11:47:36 <locosage> yeah
11:48:00 <locosage> some kind of gzip compresion wouldn't hurt either
11:50:01 <locosage> oh, there is even .svgz
11:50:27 <xarick> hmm Kuhnovic has the right idea, less time needed
11:50:44 <xarick> only a 100 ms increase
11:50:48 <xarick> us*
11:51:16 <xarick> but what about intra-aqueducts
11:53:39 <xarick> maybe it's alright
11:53:59 <xarick> maybe we're lucky
11:55:45 <xarick> he's lucky! no aqueduct traversability bits required for intra aqueducts, but what about a cross-region aqueduct going into the opposite direction
11:56:26 <xarick> guess it's fine
11:56:34 <xarick> wow... I'm impressed
11:58:00 <xarick> it kind of works
11:58:20 <xarick> the bit is set, a connectivity exists, though neighbours might be added twice
11:58:36 <xarick> but that was already a problem, so wtv
12:07:01 <locosage> "FLIF development has stopped since FLIF is superseded by FUIF and then again by JPEG XL,"
12:07:05 <locosage> they sure change quickly xD
12:07:23 <peter1138[d]> Betamax vs VHS?
12:08:29 <xarick> isn't it traversibility?
12:08:35 <xarick> traversability is a typo?
12:09:24 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1198962614986887259/image.png?ex=65c0cff3&is=65ae5af3&hm=08d9fa6b3116b5014cb31985927fea5ac57b6d392f0c5c2b31374aba68b5ade6&
12:09:31 <xarick> is it even a word?
12:09:46 <peter1138[d]> Main issue... I had set my blitter to 8bpp for some other testing...
12:10:54 <locosage> at least libjxl seems active, last commit 2 hours ago xD
12:11:23 <peter1138[d]> Branch is updated with bug fixes.
12:12:56 <peter1138[d]> Main issue is I mistakenly translated by w & h instead of starting at 0,0 (svg font cache version used a sprite sheet and used the translation feature) and it assumed size was 4x zoom, not 1x zoom. 1x makes more sense.
12:13:34 <peter1138[d]> Also could use the 32bpp to 8bpp conversion to make an 8bpp sprite.
12:16:50 <peter1138[d]> Not sure how to do colour remap parts at the moment either.
12:17:50 <peter1138[d]> locosage: Those flag graphics seem well suited for SVG but I know they're pixel drawn... ah well ๐Ÿ™‚
12:17:53 <peter1138[d]> flag?
12:17:56 <peter1138[d]> FLAT
12:18:17 <peter1138[d]> Thanks dP, you made my proof-of-concept work ๐Ÿ˜„
12:19:30 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #11817: Fix #11802: Actually check if water regions are reachable https://github.com/OpenTTD/OpenTTD/pull/11817
12:19:40 <xarick> need to edit
12:19:56 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1198965270006485022/pause-o.svg?ex=65c0d26c&is=65ae5d6c&hm=6f5569a721e65d2b6e92e548cc2c2056f59ed89df464da9e192eaacf33d1197d&
12:19:56 <peter1138[d]> Optimized linted version of that svg
12:20:06 <xarick> PR went a totally different approach
12:20:13 <locosage> peter1138[d]: yeah, well, maybe nanapipirara will consider doing vector version once it works
12:20:59 <peter1138[d]> (Using a tool called svgo)
12:21:33 <locosage> I did a quick googling and there seems to be an unholy amount of svg optimizers...
12:21:34 <xarick> trailing white space ๐Ÿ™‚
12:21:49 <peter1138[d]> There are... that was one I had installed as I previously used it scripted.
12:22:02 <peter1138[d]> A lot of "svg optimizers" are "upload this to the web and we'll optimize it for you"
12:22:51 <xarick> why wouldn't the commit checker automagically remove white spaces for me
12:23:08 <peter1138[d]> Because the commit checker does not modify commits.
12:23:58 <peter1138[d]> Hmm, I wonder for colour remaps, instead of 0xFE I could use a value that lets the lower sprite colour components be used. it could be two svgs
12:24:03 <xarick> it's complaining just for thesake of complaining
12:24:15 <peter1138[d]> No, it's complaining because we have strict code style rules.
12:25:10 <xarick> fine, I'll do it myself
12:25:38 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #11817: Fix #11802: Actually check if water regions are reachable https://github.com/OpenTTD/OpenTTD/pull/11817
12:27:19 <peter1138[d]> I've viewed repos without code style or commit style rules... they're generally a shit show.
12:27:46 <peter1138[d]> Random white-space changes all over the place as different editors are set up differently...
12:31:37 <xarick> perhaps this new tic toc dude is giving me different times as before
12:31:39 <xarick> hmm
12:32:10 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198968351364501514/Screenshot_from_2024-01-22_18-00-52.png?ex=65c0d54a&is=65ae604a&hm=478b92bae436da9ad40a24b89dc0ee7af86b2dbfeacca95e125002781410405c&
12:32:10 <locosage> I changed size to 18x18 and it started doing this...
12:32:11 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198968354178859078/test_svg_sprites.grf?ex=65c0d54b&is=65ae604b&hm=3972ffa07a3cec3f230547cb7463f25ac819fa9b90f16dc5a4d60313552ad9ae&
12:32:48 <locosage> blue rect is exactly 18x18 on outer border
12:34:34 <locosage> https://cdn.discordapp.com/attachments/1008473233844097104/1198968953058373662/Screenshot_from_2024-01-22_18-04-16.png?ex=65c0d5da&is=65ae60da&hm=7f6f7725ebac035dcd28b3598ddd823b6937178287fa42fc25d79605b6ce0b4d&
12:34:34 <locosage> 16x16 with same svg
12:38:14 <locosage> also, doesn't scale with fractional ui size steps, dunno if that's intended behavior
12:40:29 <peter1138[d]> It won't, the blitters are still limited to powers-of-two.
12:42:29 <peter1138[d]> 18x18 is odd, I'd possibly expect a 1-scaled pixel border with the image in the top left. Hmm.
12:42:36 <peter1138[d]> Er, 2-scaled pixel.
12:42:42 <peter1138[d]> Border bottom/right.
12:43:03 <peter1138[d]> Hmm, was that the svg set to 18x18 or the grf size set to 18x18?
12:43:12 <locosage> both
12:43:16 <peter1138[d]> Oh.
12:43:24 <locosage> tried with 16x16 svg at first but same result
12:43:32 *** keikoz has joined #openttd
12:58:33 <peter1138[d]> Oh right the blue box is part of the svg.
13:09:34 <peter1138[d]> I think that's a bug in PadSprites!
13:10:02 <peter1138[d]> Normally nobody provides sprites that are zoomed out more than 1x.
13:10:16 <peter1138[d]> When you do, the padding calculation gets confused.
13:11:26 <peter1138[d]> 72 / 32 = 2.25 > 3
13:11:28 <peter1138[d]> 3 * 32 = 96.
13:14:47 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1198979074383691806/image.png?ex=65c0df47&is=65ae6a47&hm=4c48829698e10e196ab210ebc8d26f024e949f8da22144749f3200df3a9ed78d&
13:15:29 <peter1138[d]> Workaround pushed.
13:16:13 <peter1138[d]> That is something that would happen if any GRF (base or new) provided zoomed out sprites.
13:16:41 <peter1138[d]> It would be correct to render them all as SVG though, but... meh
13:17:16 <peter1138[d]> Those icons are 20x20 btw ๐Ÿ™‚
13:21:15 <peter1138[d]> Yeah PadSprites ensures all provided sprites are multiples of each other, but probably shouldn't do that beyond 4x zoom out (1x normal zoom) as they are going to be "off" anyway.
13:21:23 <locosage> oh, I wondered what's the easiest way to see size of the sprite
13:21:33 <locosage> in the end just measured fast forward and it's 18 px
13:22:21 *** merni has joined #openttd
13:22:21 <merni> just trying smooth scrolling... it appears it does 2 different things: (1) scroll instead of jump when clicking on smallmap or "centre map on this" buttons and (2) adds some kind of small delay when you release an arrow key before the scrolling stops
13:22:29 <merni> why are both lumped together?
13:22:45 <peter1138[d]> It's the same thing.
13:22:50 <locosage> would be useful if sprite aligner showed width and height btw
13:22:56 <locosage> also local sprite id in grf
13:23:19 <peter1138[d]> It would, but it doesn't. You do get a bounding box shown now at least.
13:26:53 <merni> also I didn't really think about it but I have unconsciously gotten into the habit of holding shift while scrolling the map
13:26:55 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler dismissed a review for pull request #10700: Codechange: Split dates and timers into Economy and Calendar time https://github.com/OpenTTD/OpenTTD/pull/10700#pullrequestreview-1835402699
13:26:58 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #10700: Codechange: Split dates and timers into Economy and Calendar time https://github.com/OpenTTD/OpenTTD/pull/10700
13:27:14 <talltyler> Sorry truebrain , had to fix a conflict in saveload.h ๐Ÿ™‚
13:28:13 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #10700: Codechange: Split dates and timers into Economy and Calendar time https://github.com/OpenTTD/OpenTTD/pull/10700#pullrequestreview-1836471075
13:28:14 <truebrain> I trust that is all you did
13:28:31 <talltyler> Indeed
13:28:48 <talltyler> We're too productive and keep merging stuff that creates conflicts ๐Ÿ˜›
13:29:06 <talltyler> 200% raises for everybody when 14.0 releases?
13:29:21 <peter1138[d]> merni: There is no "separate delay". It is "move viewport to x, y and take a small bit of time to get there", it's the same in both cases, but with a larger move it takes more time of course.
13:29:44 <merni> ah
13:30:42 <peter1138[d]> And if the delay between releasing the arrow key, and the scroll stopping is noticable, then... you might be using a version before the latest changes where the speed was a bit lower.
13:30:57 <merni> I am testing on 13.4 yes
13:31:13 <peter1138[d]> It's still not high, but it's less now.
13:31:17 <truebrain> in the latest you still notice it btw; but that is also why it doesn't make you want to puke ๐Ÿ˜›
13:31:35 <truebrain> I have been breaking my head over making the `/ 4` time-dependant, but I think I finally know how ๐Ÿ˜„
13:31:43 <truebrain> first day-job ... ๐Ÿ˜›
13:31:45 <merni> truebrain: does non-smooth have that effect? I never noticed but perhaps :p
13:32:00 <truebrain> merni: with non-smooth and without shift, arrow-movement is the worst
13:32:13 <truebrain> the difference is not high enough that your eyes can track, but not smooth enough that they jump around
13:32:16 <truebrain> it is a really bad experience
13:32:24 <merni> Idk I have always used that so far and not really worried about it
13:32:28 <peter1138[d]> non-smooth is isn't, but stutters.
13:32:34 <peter1138[d]> (wtf)
13:32:43 <merni> yeah
13:32:52 <merni> that is the reason why I learned to hold shift I guess lol
13:32:55 <truebrain> with shift the distance is high enough that your eyes have less of an issue with it
13:33:08 <truebrain> but with smooth scrolling all those issues go away
13:33:20 <truebrain> it just no longer is instant
13:33:32 <peter1138[d]> I wonder how slow this svg rendering is ๐Ÿ˜„
13:34:09 <truebrain> I am sure you will cache it ๐Ÿ˜›
13:35:04 <peter1138[d]> xarick: The new TicToc time should be the same really, there's not much more to it.
13:35:23 <peter1138[d]> truebrain: It's built in to the sprite loader, so yes...
13:36:00 <peter1138[d]> It renders into a sprite, not directly into a blitter surface ๐Ÿ™‚
13:36:13 <truebrain> too bad ๐Ÿ˜›
13:36:41 <truebrain> why adding SVG support btw? (wondering out loud)
13:37:04 <peter1138[d]> 416ยตs for this sprite. That's quite high I guess.
13:37:11 <peter1138[d]> Why? Because... why not.
13:37:34 <truebrain> most people have a better reason, but sure
13:37:39 <peter1138[d]> Change for change sake ๐Ÿ˜‰
13:37:57 <truebrain> I read that is bad
13:38:00 <peter1138[d]> Everyone would like interface sprites to be non-power-of-2 scales.
13:38:17 <truebrain> but if you still convert the SVG to a sprite, you can't solve that?
13:38:39 <peter1138[d]> This is a step on that path -- instead of drawing each level specifically it does it for you.
13:38:43 <peter1138[d]> Yes. One step at a time ๐Ÿ™‚
13:39:46 <peter1138[d]> What I could end up doing is having a separate pointer in the spritecache struct that points to single arbitrary-scaled sprite.
13:40:12 <peter1138[d]> So it doesn't affect the viewport sprites, and can be refreshed independently with interface scale.
13:40:34 <truebrain> so if you change the interface scaling, it "redraws" the SVG sprites?
13:40:39 <peter1138[d]> Yes.
13:40:43 <truebrain> clever little hack ๐Ÿ™‚
13:40:48 <truebrain> avoids having to make changes to the blitter ๐Ÿ™‚
13:41:08 <peter1138[d]> Well, major changes at least ๐Ÿ™‚
13:41:37 <xarick> i fail at using the new tictoc ๐Ÿ™‚
13:41:58 <locosage> it's not even a hack really, just caching svg rasterization
13:42:26 <peter1138[d]> truebrain: but we already found a 'bug' in PadSprites when zoomed out sprites are provided ๐Ÿ˜„
13:42:34 <xarick> ` case VPF_YAPF:
13:42:34 <xarick> {
13:42:34 <xarick> TicToc::State state("YapfShipChooseTrack", 1); track = YapfShipChooseTrack(v, tile, enterdir, tracks, path_found, v->path); break;
13:42:34 <xarick> }`
13:42:49 <xarick> doesn't output me text
13:42:51 <truebrain> peter1138[d]: PadSprites is ...?
13:42:54 <peter1138[d]> You are missing `TicToc tt(state);`
13:43:05 <xarick> tt?
13:43:16 <peter1138[d]> truebrain: tt can be whatever you like.
13:43:18 <peter1138[d]> Er
13:43:26 <peter1138[d]> That was to Xarick, sorry!
13:43:26 <truebrain> so close!
13:44:46 <peter1138[d]> truebrain: I was starting a reply to you first ๐Ÿ˜„ PadSprites ensures all the zoom levels of sprites fit in the same area, and expands sprites out if not. Normally GRFs only provide normal or zoomed in sprites, and it works then. But if you provide zoomed out sprites, it rounds them out too, so the final size is much larger than it should be.
13:45:07 <peter1138[d]> Probably it just needs to just stop at ZOOM_LVL_OUT_4X ๐Ÿ™‚
13:45:16 <truebrain> ๐Ÿ˜„
13:45:39 <truebrain> https://cdn.discordapp.com/attachments/1008473233844097104/1198986843157442580/image.png?ex=65c0e683&is=65ae7183&hm=b6157b6069b2290f4d7299fbc5a51ae0f7cd605f4423936f4388078a37d7ffc8&
13:45:39 <truebrain> Let me share with you what happens if you look at the world through coloured lenses
13:45:56 <peter1138[d]> I worked around it for now by not rendering svg beyond ZOOM_LVL_OUT_4X instead.
13:45:59 <peter1138[d]> Ooh, rose tinted!
13:53:03 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #11817: Fix #11802: Don't set edge traversability bit on aqueducts crossing that same edge side https://github.com/OpenTTD/OpenTTD/pull/11817#pullrequestreview-1836521527
13:56:45 <xarick> hmm nope, I still failing at using the new TicToc
13:58:13 <_glx_> followed the doc ?
13:59:11 <_glx_> ```{
13:59:11 <_glx_> static TicToc::State state("A name", 1);
13:59:11 <_glx_> TicToc tt(state);
13:59:11 <_glx_> --Do your code--
13:59:11 <_glx_> }```
13:59:45 <_glx_> the `static` is important
14:01:06 <_glx_> the new TicToc usage is similar to modes in AI/GS
14:01:25 <xarick> ah, got it
14:02:07 <xarick> well, there's something different between now and then
14:02:19 <xarick> the whole map is not initialized
14:04:05 <peter1138[d]> Don't think that's TicToc related ๐Ÿ˜„
14:04:39 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler merged pull request #10700: Codechange: Split dates and timers into Economy and Calendar time https://github.com/OpenTTD/OpenTTD/pull/10700
14:04:57 <talltyler> It's time for time ๐Ÿ‘€
14:05:47 <_glx_> woohoo
14:05:49 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1198991918508560624/image.png?ex=65c0eb3d&is=65ae763d&hm=3dbbcdb74cf9b653491c393efdc04e64ccc82d01e73c6650f0a83b6271016f4e&
14:06:10 <xarick> because now the map is not initialized, it spikes on the first attempt
14:06:44 <peter1138[d]> Oh you mean the water regions are not initialised, not the map itself ๐Ÿ˜„
14:06:52 <xarick> yes, the regions yes, that
14:09:07 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1198992747340759050/image.png?ex=65c0ec03&is=65ae7703&hm=e78110347756080ba33ec4d2416cc5615163a803c12e739c7ac5aa5048835961&
14:09:07 <xarick> yeah....
14:09:15 <xarick> a bit all over the place
14:10:03 <xarick> need to test without my fix, i don't think it's me causing that
14:14:22 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #11341: Feature: Use real-time "wallclock" timekeeping units https://github.com/OpenTTD/OpenTTD/pull/11341
14:15:01 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1198994231075799100/image.png?ex=65c0ed64&is=65ae7864&hm=e928b1306f3c442a49b2498aa0eeabd043895b24a5432819cd71ce864cc3de62&
14:18:00 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #11603: Add: AI/GS Time Mode to choose between economy (default) and calendar time https://github.com/OpenTTD/OpenTTD/pull/11603
14:18:11 <xarick> need to check my nearest depot, it's possibly gonna be even worse
14:18:27 <talltyler> truebrain: #11603 is next, then #11341
14:18:36 <_glx_> half a second to initialise is not that bad
14:18:52 <_glx_> what's the map size ?
14:18:58 <xarick> 4096x4096
14:19:04 <talltyler> I tested #11603 in my test game and both AI and GS work fine in the compatibility mode using economy time. I don't have a GS to test calendar mode.
14:19:10 <_glx_> definitely fine for that size
14:19:30 <xarick> well, it used to be 3000
14:19:40 <xarick> but everything was almost ready
14:20:02 <xarick> nearest depot however... doesn't have the destination
14:20:10 <xarick> it's gonna search many more areas
14:21:28 <peter1138[d]> One issue with ship AIs now is they might use a slow pathfinder to determine what is reachable.
14:24:42 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #11817: Fix #11802: Don't set edge traversability bit on aqueducts crossing that same edge side https://github.com/OpenTTD/OpenTTD/pull/11817
14:26:03 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1198997010703994900/image.png?ex=65c0effb&is=65ae7afb&hm=5d530f95a91e909cc96853ffc89ad75ae347c3a04370b1efa1ef3d4acc74d29d&
14:26:03 <peter1138[d]> ^ Can't change it in single player?
14:27:43 <_glx_> strange
14:28:00 <_glx_> it's in the GUI
14:28:21 <peter1138[d]> Oh heh
14:28:58 <_glx_> oh no, I can't start openttd
14:29:16 <peter1138[d]> Uh oh
14:29:25 <_glx_> cannot find SAMPLE.CAT
14:32:05 <xarick> it should be changeable anywhere
14:32:31 <xarick> doesn't have side effects
14:32:47 <peter1138[d]> Well I can understand a network client not being allowed to ๐Ÿ™‚
14:32:58 <peter1138[d]> Though it wouldn't affect anything, of course.
14:33:00 <xarick> ah yes, the server only
14:33:09 <peter1138[d]> So even then, actually...
14:33:25 <truebrain> talltyler: Maybe you can bribe _glx_ to look at the AI PR. Pretty sure he knows more about it than I do at this point ๐Ÿ˜„
14:33:26 <xarick> the server runs the AIs, it's still synced to every client
14:33:49 <peter1138[d]> No, the client doesn't care about opcodes ๐Ÿ™‚
14:35:33 <_jgr_> xarick: Changing it does have side effects, there's some small amount of extra code needed for changing it when scripts are running to work properly
14:36:25 <xarick> i had a variable max op codes branch, never had issues
14:36:44 <xarick> it was constantly constantly fine tunning op codes
14:36:51 <xarick> as the game progressed
14:40:35 <xarick> i was an attempt to make the scirpts combined perform under a certain ms threshold
14:41:10 <xarick> it kind of worked okay, not perfect, cus i fail at maths, but it looked promissing
14:41:27 <xarick> it achieved nearly playable framerates
14:45:21 <peter1138[d]> Thread-per-squirrel-instance yet? ๐Ÿ˜„
14:46:27 <truebrain> Let me say it for once: I do have a draft patch for that
14:46:35 <peter1138[d]> That's MY line
14:46:52 <truebrain> As Squirrel can only read from the map-state, and only either queue (via async) or execute a single command
14:46:54 <truebrain> it is kinda doable
14:47:17 <truebrain> while executing commands AIs can block each other, but that was already the case
14:47:25 <truebrain> so nothing actually changes how AIs work and behave
14:47:29 <truebrain> just ... in parallel ๐Ÿ˜›
14:47:44 <truebrain> and because it is in a thread, it is also easier to deal with other stuff, like time allocation
14:48:37 <peter1138[d]> And it'll be ready for 14.0!
14:48:39 <peter1138[d]> ๐Ÿ˜‰
14:48:41 <truebrain> no
14:48:57 <peter1138[d]> And it'll be ready for 15.0!
14:49:08 <truebrain> WHO KNOWS
14:51:43 <xarick> <https://github.com/OpenTTD/OpenTTD/compare/master...SamuXarick:OpenTTD:variable-script_max_opcodes>
14:51:53 <xarick> it's outdated but, there
14:54:30 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
15:01:59 <_glx_> original_dos: Original Transport Tycoon Deluxe DOS edition graphics. (unusable: 5 missing files)
15:01:59 <_glx_> original_windows: Original Transport Tycoon Deluxe Windows edition graphics. (unusable: 5 missing files)
15:02:04 <_glx_> that's not fun
15:02:11 <truebrain> are any of those files in a tar?
15:02:31 <_glx_> they are in subdir and also in tar
15:02:38 <truebrain> untar, and see if that fixes it?
15:02:58 *** nielsm has joined #openttd
15:03:05 <truebrain> I don't have original graphic files, so I couldn't test that part ๐Ÿ˜„
15:03:09 <peter1138[d]> Interesting, I've never considered putting the original basesets in a tar file.
15:04:06 <_glx_> I mean I have the files in data/ttddos, data/ttdwin, data/ttddos.tar and data/ttdwin.tar
15:04:43 <_glx_> oh and no subdirs in the tars
15:04:45 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1199006748737019934/image.png?ex=65c0f90d&is=65ae840d&hm=292c1ad0fe6d11655b85c85947682a160b7aea29a4da8b6d7e1a478263ba178b&
15:04:45 <xarick> pff... I disappoint myself
15:05:44 <peter1138[d]> Press your computer's turbo button.
15:05:53 <_glx_> hidden the tar (renamed them), no change
15:06:17 <truebrain> so it wasn't me then ๐Ÿ˜›
15:06:36 <truebrain> sadly, our debug-levels are a mess, so it is also not easy to see what is actually happening ๐Ÿ™‚
15:06:51 <_glx_> it's weird because it used to work
15:06:59 <truebrain> but yeah, revert my tar-change first, to see if it isn't accidentially causing it
15:07:10 <truebrain> but if you moved the tar-files, that should have zero effect
15:07:16 <truebrain> so .. bisect? ๐Ÿ˜„
15:07:41 <peter1138[d]> Yeah, basesets in subdirs does not work.
15:07:50 <peter1138[d]> I never tried that before with the graphics.
15:08:05 <truebrain> so the tars were the part that made it work, as they didn't have subfolders?
15:08:12 <truebrain> and now my change do make subfolders out of them
15:08:15 <truebrain> so now it stopped working?
15:09:41 <peter1138[d]> It works if the obg is inside the directory with the baseset. Hmm.
15:10:18 <_glx_> reset to before tar change, tars still hidden, same issue, so yeah the subdir part never worked
15:10:33 <peter1138[d]> Although then the extra file is "missing"
15:11:21 <_glx_> https://cdn.discordapp.com/attachments/1008473233844097104/1199008408184041553/image.png?ex=65c0fa99&is=65ae8599&hm=585751a66d6b8c6ce5e5917ded7e701e295a187027a3e17effe7f0f1e1b4ff50&
15:11:21 <_glx_> no orig_extra should be fine ๐Ÿ™‚
15:12:17 <_glx_> 5 missing are the ones the TRG*
15:15:43 <_glx_> for now I'll just copy the files into baseset/
15:16:02 <truebrain> just the question is, how more people would have done what you did, and how many setups did we break? ๐Ÿ™‚
15:16:12 <truebrain> so maybe we should look into why this stuff is so sensitive to folder structure
15:16:17 <truebrain> it should all use relative folders, tbh
15:16:59 <_glx_> music can't be in tar, but can be in subfolders
15:17:17 <_glx_> newgrf can be in tar and subfolder
15:17:36 <peter1138[d]> How do you limit which directories the baseset data comes from though?
15:17:42 <truebrain> music is the only one that cannot be in tar, yes. Because, external media players.
15:18:01 <truebrain> the rest should be pretty fluent in where it is located, and tar is just a directory (in a file)
15:18:12 <_glx_> my guess is something has been forgotten on baseset side ๐Ÿ™‚
15:18:55 <peter1138[d]> If I download a baseset that contains a file name trg1r.grf, and unpack it, should it be found when searching for the real trg1tr.grf?
15:19:57 <_glx_> the issue only exists for original basesets
15:21:22 <truebrain> peter1138[d]: if it is in a folder, there is no issue, is there?
15:21:59 <truebrain> maybe I am misunderstanding it, but I understood that _glx_ had all original baseset files in a single folder
15:22:08 <truebrain> just not the "baseset" folder, but a subfolder of that
15:22:10 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199011129167454298/image.png?ex=65c0fd21&is=65ae8821&hm=a37f5e3f31b71a2652f7bb6755d968abb7751e68c6ac6577f978a1ed1c8420c8&
15:22:12 <peter1138[d]> Not so obscure.
15:22:44 <truebrain> owh, the obg is not in the same folder as the rest of the files _glx_ ?
15:23:05 <peter1138[d]> The obg is in OpenTTD's build/baseset folder, normally ๐Ÿ™‚
15:23:18 <_glx_> the obg is with the exe yes
15:23:27 <truebrain> ah, yes, so this is user-error ๐Ÿ˜„ Okay, no need to fix that ๐Ÿ˜›
15:23:34 <truebrain> (sorry, not sorry)
15:23:43 <peter1138[d]> Not sure where they go when you install OpenTTD itself, but usually not in the same place as the grf files.
15:24:08 <truebrain> no, different searchpaths are often merged together
15:24:10 <peter1138[d]> `make[1]: CMakeFiles/Makefile2: No such file or directory`
15:24:12 <truebrain> so OpenTTD figures that out just fine
15:24:15 <_glx_> same with steam, obg is local to steam install
15:24:19 <peter1138[d]> `make install` does not ๐Ÿ™‚
15:24:20 <truebrain> just relative paths need to be relative of each other ๐Ÿ™‚
15:25:02 <peter1138[d]> I think this is very specific to glx.
15:25:14 <truebrain> let's hope so ๐Ÿ˜› Otherwise we get a bunch of reports ๐Ÿ˜„
15:25:17 <peter1138[d]> Most people will have put the original graphics in the baseset folder.
15:25:22 <peter1138[d]> And not made a tarball out of them.
15:25:37 <truebrain> `If you want to play with the original Transport Tycoon Deluxe data files you have to copy the data files from the CD-ROM into the baseset/ directory.`
15:25:39 <truebrain> at least that is correct
15:25:52 <_glx_> yup and that works
15:26:14 <peter1138[d]> We only broke glx's spacebar, not everyone elses.
15:26:36 <_glx_> anyway my way was not fully working because both dos and windows have sample.cat ๐Ÿ™‚
15:27:08 <_glx_> and they both were on "root" even if in a tar
15:27:22 <_glx_> so only one was ever visible
15:27:30 <peter1138[d]> I renamed one to samplew.cat and modified the obs ๐Ÿ˜„
15:27:48 <peter1138[d]> There's not much point though, the sounds are not different.
15:28:26 <_glx_> btw I still have most of my manually installed grf in data/ ๐Ÿ™‚
15:29:00 <peter1138[d]> If we ever get rid of that... plague I tell you ๐Ÿ™‚
15:29:15 <_glx_> 4 different ottdc subfolders in it
15:29:41 <_glx_> (yeah the start scan is long ๐Ÿ™‚ )
15:30:08 <truebrain> you know what they say ... you do you!
15:30:20 <peter1138[d]> Hmm, I don't think I can specify palette index in an svg file ๐Ÿ˜ญ
15:31:19 <_glx_> anyway now openttd works again, I was just using an unsupported way that worked by luck
15:32:36 <peter1138[d]> But it might be possible to combine rgba and mask layers using svg id or class attributes
15:42:58 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
15:43:05 <truebrain> peter1138[d]: mind trying this? Now it should take a rather constant amount of time, no matter the load ๐Ÿ™‚
15:43:12 <truebrain> took a bit of math ๐Ÿ˜›
15:45:59 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
15:48:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
15:48:53 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
15:49:07 <truebrain> ugh .... so many typos ... none of the pushes changed anything of the outcome ..... but the code looks better now ๐Ÿ˜„
15:51:21 <LordAro> ...why are there so many pointers?
15:51:45 <truebrain> if 4 are many, I worry ๐Ÿ˜›
15:52:01 <LordAro> well, quite
15:52:06 <LordAro> why are there any at all?
15:52:30 <truebrain> because the code looks better this way? Just for a second consider what if this was all in a big if-statement, and was duplicated code ๐Ÿ™‚
15:52:43 <peter1138[d]> It could be a reference, no?
15:53:07 <truebrain> owh, yeah, C++ .. I can make the * a nice & ๐Ÿ™‚
15:53:08 <LordAro> i'm failing to see anything that can't just be a basic integer
15:53:25 <truebrain> LordAro: I challenge you to take that piece of code, put it in godbolt, and improve the readability ๐Ÿ™‚
15:53:44 <truebrain> this is my answer to that puzzle ๐Ÿ™‚
15:53:57 <peter1138[d]> Might be time for... a function?
15:54:04 <truebrain> how would that help? ๐Ÿ™‚
15:54:20 <truebrain> it would still have 4 references going in ๐Ÿ˜„
15:54:23 <peter1138[d]> ๐Ÿคทโ€โ™‚๏ธ
15:54:24 <LordAro> maybe i'm massively missing something, but i would improve it by just removing all the '*'
15:54:30 <truebrain> how? ๐Ÿ™‚
15:54:37 <LordAro> (no, not the multiplies)
15:55:00 <truebrain> I always hate questions that put me in the defense; I always turn a bit childish when that happens, sorry ๐Ÿ™‚
15:55:16 <truebrain> So I will reread your question: could it be done without the pointers?
15:55:27 <truebrain> basically, we have an X / Y pair, of which either of the two can be the largest
15:55:33 <truebrain> depending on the largest, we need to scale towards that
15:55:38 <truebrain> and then we need to set the value to the lowest
15:55:53 <truebrain> so what I do, I set a reference to hi/lo based on which ever that is
15:55:55 <truebrain> X/Y or Y/X
15:56:02 <truebrain> and do the (rather complex) calcualtion once
15:56:10 <truebrain> the other solution is to duplicate the whole calculation
15:56:21 <peter1138[d]> In a function? ๐Ÿ˜‰
15:56:29 <LordAro> i'm really missing something massive here
15:56:33 <truebrain> I still need to swap x/y to that function call peter1138[d]
15:56:42 <truebrain> so it would still have 2 values going in, and 2 references coming out
15:56:48 <LordAro> there's no loops or other "state" required
15:56:55 <truebrain> but I agree, it should be in a fucntion, just because of the length of it all ๐Ÿ˜„
15:57:07 <truebrain> LordAro: really, this is the time to pick up the code and put it in godbolt, and try it ๐Ÿ™‚
15:57:09 <peter1138[d]> That while looks like a loop.
15:57:33 <LordAro> that while loop is the only thing doing anything i'd consider "normal"
15:57:40 <truebrain> If my explanation doesn't trigger you with: ooowwwhhh ... x/y or y/x ..
15:57:41 <LordAro> i.e. actually taking an actual integer and modifying it
15:57:45 <truebrain> I don't really know what to add ๐Ÿ™‚
15:58:19 <truebrain> and I would love for you to find me a cleaner alternative ๐Ÿ™‚
16:00:05 <peter1138[d]> Hmm, and of course the problem with converting svg to 8bpp is you don't know which palette remap might be used ๐Ÿ˜ฎ
16:04:20 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
16:04:30 <truebrain> I forgot how much I hated `int &` in functions .. totally unclear from the caller perspective what is going on
16:04:52 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #11603: Add: AI/GS Time Mode to choose between economy (default) and calendar time https://github.com/OpenTTD/OpenTTD/pull/11603#issuecomment-1904320029
16:05:01 <truebrain> it removes the LordAro ick of "omg pointers!". They are still there, just hiding in the crowd now
16:05:47 <truebrain> oops, forgot to change while -> for
16:06:21 <peter1138[d]> while is wrong?
16:06:28 <truebrain> no, but silly
16:06:49 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
16:06:53 <truebrain> I first set count, then start a while to count down to zero
16:06:57 <truebrain> zounds like an if-in-hiding to me
16:08:14 <LordAro> i am not going "omg pointers"
16:08:22 <LordAro> i am going "why are you using pointers for basic arithmetic"
16:08:40 <truebrain> either I don't understand you, or you don't understand me, but .. I dunno ๐Ÿ™‚
16:08:53 <truebrain> the pointers had nothing to do with arithmetic at least ๐Ÿ™‚
16:08:58 <LordAro> exactly
16:09:08 <truebrain> lolz; I think we are both confused ๐Ÿ™‚
16:09:17 <LordAro> i do not see why pointers are necessary to hold the values
16:09:32 <truebrain> because they are `[out]` values
16:09:44 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199023103326560337/image.png?ex=65c10848&is=65ae9348&hm=e55c8ca96fee6889cf877454363474a999c8aca1020d93a06e6dbbb0c66c1d42&
16:09:44 <peter1138[d]> I guess that'll do ๐Ÿ˜‰
16:09:55 <truebrain> owh, nice; that is a drastic improvement
16:10:01 <LordAro> out values? i haven't looked at whatever you've just done above
16:10:06 <LordAro> no functions involved here
16:11:04 <peter1138[d]> it was using pointers because it was operating on either x or y, depending on some other condition, but it needed the remaining code to still know which is x and which is y.
16:11:55 <peter1138[d]> The latest version as a function is more understandable anyway.
16:12:04 <truebrain> yeah, function was needed; too much dode
16:12:16 <truebrain> and `&` instead of `*`.... I keep forgetting that works for PODs too .. dunno why
16:12:21 <truebrain> but that is a me-problem ๐Ÿ™‚
16:12:46 <peter1138[d]> Issue: it does not settle on the final position.
16:12:48 <truebrain> LordAro: and it could have worked without pointers, but then `w->viewport->scrollpos_x += delta_x_clamped;` would need to check once again whether X or Y was bigger, and assign the right value to it
16:13:59 <truebrain> peter1138[d]: wait, what? It does here ...
16:15:12 <truebrain> code-wise there should also be no way it doesn't settle
16:15:14 <truebrain> hmm
16:16:14 <LordAro> ok, that makes more sense
16:16:20 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199024762748403742/Screencast_from_2024-01-22_16-16-08.webm?ex=65c109d4&is=65ae94d4&hm=6941df65c30211971706ebbd400303e545b9b583b808cb92f740f7028b85c077&
16:16:23 <LordAro> thank you :)
16:16:59 <truebrain> always remember I am a C-programmer ๐Ÿ˜› But yeah, sorry LordAro, really did not understand your point; I hate chat sometimes .. walking by people resolves it in seconds ๐Ÿ™‚
16:17:36 <truebrain> peter1138[d]: with my latest version?
16:17:38 <LordAro> oh absolutely
16:17:54 <LordAro> today's been a "beating my head against a wall" sort of day too, which hasn't helped matters
16:18:17 <LordAro> "malloc_consolidate(): invalid chunk size" for NO REASON AT ALL
16:18:21 <truebrain> owh, and I only now see that at least 2 pointers were bullshit, the `delta_hi` and `delta_lo` ones .. those could have just been normal variables .. lolz
16:18:30 <peter1138[d]> > commit cfcfb54fd8ba361a06bbc27fe77b5b494158c97b (HEAD -> pr11865)
16:18:36 <LordAro> truebrain: ;_;
16:18:50 <truebrain> peter1138[d]: hmm, yes. Why can't I reproduce that, or reason why it happens ...
16:19:28 <peter1138[d]> I think it might be related to being right on the corner of the map, and at more than 1x normal zoom in.
16:20:32 <peter1138[d]> In master there is already an issue with scrolling at the corner of a map.
16:20:35 <truebrain> ha, I see what oyu mean
16:20:46 <truebrain> that is very interesting ๐Ÿ˜„
16:21:11 <peter1138[d]> Like it's permitted to go out of bounds briefly, with or without smooth scrolling.
16:21:21 <peter1138[d]> So it might be the target is somehow just out of bounds, and it's bouncing off it.
16:21:38 <truebrain> so might be an existing bug for a long time?
16:21:43 <peter1138[d]> I did open two extra viewports to switch quickly from one side to the other.
16:21:58 <peter1138[d]> Ish. In master it does not continue bouncing, only with your patch.
16:22:07 <truebrain> funny
16:22:17 <truebrain> but yeah, it bounces alright
16:22:22 <truebrain> it tries to get to the point outside of the map
16:22:45 <truebrain> but why master doesn't keep on bouncing, that is odd
16:22:49 <peter1138[d]> And briefly succeeds.
16:24:01 <peter1138[d]> That DivAwayFromZero might be related, not sure what or how though.
16:24:12 <truebrain> it only happens on the left side, it seems
16:24:15 <truebrain> can't reproduce it on the right side
16:25:14 <peter1138[d]> I can bounce it with drag-scrolling in master on the right corner.
16:25:26 <truebrain> okay, happens on the left and top side, but only when going to away from the north corner
16:25:57 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199027179997122701/Screencast_from_2024-01-22_16-25-42.webm?ex=65c10c14&is=65ae9714&hm=73a729b36f0a0e3d1bb3045da0c6facfee1cd8b11fc5e70882967d266cfca206&
16:25:58 <truebrain> it bounces between 12 and 16 away
16:26:19 <truebrain> so it still thinks it has a distance to travel
16:26:26 <peter1138[d]> So... not really an issue with your patch, but your patch highlights it ๐Ÿ˜„
16:26:48 <truebrain> yeah, the destination is out of the map
16:26:55 <truebrain> so ... yeah ... no solution is good, at that point ๐Ÿ™‚
16:26:56 <peter1138[d]> Yeah, I suspect something is telling to scroll by an offset without clamping.
16:27:12 <peter1138[d]> The solution is to make sure the destination is not out of the map, right?
16:27:16 <truebrain> `ClampViewportToMap` should correct it
16:27:43 <peter1138[d]> It does... at 1x.
16:27:57 <peter1138[d]> But at 2x or 4x zoomed in it does not work properly.
16:28:03 <truebrain> at 1x, as in, normal zoom? AsI bounce like a mofo at 1x ๐Ÿ˜›
16:28:14 <peter1138[d]> Oh, no.
16:28:19 <peter1138[d]> It is doing it there too. Hmm.
16:28:47 <truebrain> ``` /* Bring the coordinates near to a valid range. At the top we allow a number
16:28:47 <truebrain> * of extra tiles. This is mostly due to the tiles on the north side of
16:28:47 <truebrain> * the map possibly being drawn higher due to the extra height levels. */```
16:28:48 <truebrain> related?
16:29:07 <truebrain> so we allow for it, but we don't allow it
16:29:08 <truebrain> or something
16:29:44 <peter1138[d]> Wow that's a complex functioN ๐Ÿ˜ฎ
16:30:29 <truebrain> setting the extra_tiles to zero does not fix the issue
16:30:31 <truebrain> so it is not that ๐Ÿ˜„
16:34:22 <peter1138[d]> No, that function always returns the same coordinate, even when it's bouncing.
16:34:47 <truebrain> okay ... so this is all kinds of weird ... `dest_scrollpos` is clamped in the viewport, but then we calculate a delta, add it to the position, clamp `scrollpos` to the viewport, and now it has to adjust to be inside the viewport
16:34:47 <truebrain> lol
16:36:00 *** Wormnest has joined #openttd
16:36:37 <peter1138[d]> Hmm, but maybe it's not setting the clamped output pointer...
16:36:52 <truebrain> I see the `scrollpos_x` etc change
16:37:34 <truebrain> btw, the viewport coordinates are clamped EVERY frame
16:37:41 <truebrain> even if no change happened
16:37:58 <peter1138[d]> Efficient.
16:38:07 <truebrain> as long as it doesn't show up in a flamegraph ....
16:38:25 *** gelignite has joined #openttd
16:38:29 <peter1138[d]> Make printf debugging hard to see though.
16:38:43 <truebrain> but really ... dest_scrollpos is inside the map
16:38:46 <truebrain> scrollpos is too
16:38:57 <truebrain> but when you add the delta to the values
16:38:58 <truebrain> it is not
16:39:16 <truebrain> shouldn't the line between those two point also always be inside the viewport?
16:41:16 <truebrain> owh, I see what happens
16:41:21 <truebrain> okay, that is a bit nasty ...
16:41:24 <peter1138[d]> One thing i notice is that scrollpos appears to be map-cordinates * 16, not pixel coordinates.
16:41:36 <peter1138[d]> So... looks like I was wrong the other day.
16:41:46 <truebrain> ah; owh well ๐Ÿ˜›
16:42:05 <truebrain> anyway, we are at a coordinate X/Y where we are right next to the map border
16:42:14 <peter1138[d]> But given that's the case, how do we scroll to sub-pixels?
16:42:16 <truebrain> we want to move to X+12/Y+6, which is also inside the border
16:42:25 <truebrain> due to timing etc, we move by (1, 0)
16:42:35 <truebrain> so now we go to X+1/Y
16:42:41 <truebrain> and this is NOT inside the map
16:42:50 <truebrain> X+1/Y+1 would be, as would X+2/Y+1
16:42:52 <truebrain> but not X+1/Y
16:42:55 <truebrain> as .. rounding etc
16:42:57 <peter1138[d]> ... does it bounce if we don't clamp to map? ๐Ÿ˜„
16:42:59 <truebrain> this bounces us back
16:43:17 <truebrain> so it is really the border we walk
16:43:26 <truebrain> the reason the older code bounced once, is indeed the Div away from zero bla
16:43:38 <truebrain> as that way, it would never move with (1, 0)
16:43:41 <truebrain> but always with (1, 1)
16:43:53 <truebrain> it still bounces
16:44:01 <truebrain> just once ๐Ÿ™‚
16:44:11 <peter1138[d]> Yeah
16:44:42 <truebrain> not clamping the viewport AGAIN solves the issue
16:45:02 <truebrain> so clamp the dest, and have faith
16:45:06 <peter1138[d]> Technically you are outside the map but... is that a problem.
16:45:16 <peter1138[d]> 1 or 2 pixels...
16:45:19 <truebrain> it appears not; and only for a short moment of time
16:45:46 <peter1138[d]> Oh wow, drag-bouncing is massive now ๐Ÿ˜ฎ
16:46:12 <truebrain> lolz
16:46:27 <peter1138[d]> Something else is wrong ๐Ÿ˜„
16:46:39 <truebrain> I am telling you, rounding issues! ๐Ÿ˜›
16:46:52 <peter1138[d]> Heh, this is not 1 or 2 pixels now.
16:47:14 <truebrain> no
16:47:16 <truebrain> the bounce is real
16:47:56 <truebrain> ``` int viewport_x = w->viewport->scrollpos_x;
16:47:56 <truebrain> int viewport_y = w->viewport->scrollpos_y;
16:47:56 <truebrain> ClampViewportToMap(vp, &viewport_x, &viewport_y);```
16:47:57 <truebrain> try this
16:48:02 <truebrain> that removes the whole issue
16:48:09 <peter1138[d]> Where?
16:48:31 <peter1138[d]> I think the issue is drag-scrolling isn't clamped at all.
16:48:44 <peter1138[d]> At least, feels like it.
16:48:55 <truebrain> https://github.com/OpenTTD/OpenTTD/compare/master...TrueBrain:OpenTTD:smooth-bounce?expand=1
16:49:13 <truebrain> basically what that does, is keep the viewport inside the map, while still allowing the scrollpos be slightly outside
16:50:09 <truebrain> should be save, as nobody is using the viewport scrollpos for anything other than this, basically
16:50:21 <truebrain> nobody seems to deduce what tile it is, based on that variable, for example
16:52:39 <peter1138[d]> I don't understand why that is different.
16:53:24 <truebrain> the `scollpos` value is not changed
16:53:33 <truebrain> so the delta between dest and actual position isn't changed
16:53:50 <truebrain> the issue seems to be that the clamp moves you to the center of the closest tile, or something weird
16:53:58 <truebrain> so it doesn't correct by a small bit to put you back in the map
16:54:01 <truebrain> it just bounces you around
16:54:10 <truebrain> so the delta between current -> dest changes a lot too
16:56:19 <peter1138[d]> Hmm, is it because it directly updated viewport->scrollpos, which 'confuses' SetViewportPosition...
16:56:22 <peter1138[d]> I dunno.
16:56:46 <peter1138[d]> Also SetViewportPosition also seems to set the position of other windows viewports? Weird.
16:56:55 <truebrain> this is just very confusing
16:57:04 <peter1138[d]> DoSetViewportPosition...what.
16:57:26 <peter1138[d]> I've got an idea.
16:57:34 <truebrain> oh-oh
16:57:44 <peter1138[d]> Rip it out and start again :p
16:57:50 <truebrain> no tnx ๐Ÿ™‚
16:58:32 <truebrain> yeah, it really is `ClampViewportToMap` that bounces you out by A LOT
16:59:29 *** cjmonagle[m] has quit IRC (Quit: Client limit exceeded: 20000)
17:00:20 <peter1138[d]> No.
17:00:46 <peter1138[d]> viewport_gui.cpp:112
17:01:01 <peter1138[d]> Right click dragging... does not clamp to viewport at all.
17:01:27 <truebrain> yeah ... but that Clamp function is called every tick
17:01:30 <truebrain> whether you want to or not
17:02:47 <truebrain> okay, I can surpress the issue with a small modification
17:02:58 <truebrain> (in my smoothing algorithm)
17:03:10 <truebrain> basically restoring the old behaviour
17:04:36 <truebrain> see how this works for you
17:04:37 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11865: Change: make smooth-scrolling based on actual time https://github.com/OpenTTD/OpenTTD/pull/11865
17:05:04 <truebrain> (basically, it now never moves (1, 0), which causes the problem, but always at least (1, 1) )
17:05:32 <truebrain> and how rounding works, X + 1 / Y + 1 is always fine, X + 1 / Y might not
17:15:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #11628: Feature: Plugin framework for Social Integration with Steam, Discord, GOG, etc https://github.com/OpenTTD/OpenTTD/pull/11628#pullrequestreview-1836973272
17:15:50 <peter1138[d]> I just noticed the clamping also tracks terrain height ๐Ÿ˜ฎ
17:15:57 <truebrain> yeah ..
17:16:03 <truebrain> "it is complicated"
17:16:09 <truebrain> so I don't want to touch this ๐Ÿ˜„
17:18:50 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199040491736535170/Screencast_from_2024-01-22_17-18-03.webm?ex=65c1187a&is=65aea37a&hm=2f847468dbb95b1d81f96da40e961f92cc07afd80da9769a2631a9c2b3372f9b&
17:18:50 <peter1138[d]> ๐Ÿคท
17:19:08 <truebrain> looks fine, doesn't it?
17:19:24 <truebrain> just don't do that ๐Ÿ˜„
17:19:31 <truebrain> (I hope that was already like this in master btw ๐Ÿ˜› )
17:20:13 <peter1138[d]> That's without smooth scrolling, so probably
17:21:18 <peter1138[d]> I have a feeling it's jumping back because the viewport clamping is done in game-units (16 per tile).
17:24:41 <peter1138[d]> So you are jumped back to a valid coordinate based on the 16x16 tile grid... which is going to be weird for slopes anyway.
17:30:21 <truebrain> oof, trying to merge `DecodeHexText` with an actual hex decoder ... but `DecodeHexText` does so much more than just what the name suggests
17:50:34 <truebrain> ``` Start 52: ConvertHexToBytes
17:50:34 <truebrain> 52/61 Test #52: ConvertHexToBytes ............................................................................................................... Passed 0.03 sec```
17:50:35 <truebrain> \o/
17:50:56 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11866: Codechange: refactor DecodeHexText to a generic purpose ConvertHexToBytes https://github.com/OpenTTD/OpenTTD/pull/11866
17:52:07 <LordAro> actual unit tests?! :o
17:52:59 <truebrain> yeah ... actually something that is unit-testable even
17:54:02 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11628: Feature: Plugin framework for Social Integration with Steam, Discord, GOG, etc https://github.com/OpenTTD/OpenTTD/pull/11628
17:54:41 <DorpsGek> [OpenTTD/discord-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2
17:55:01 <DorpsGek> [OpenTTD/steam-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Steam https://github.com/OpenTTD/steam-social/pull/2
17:55:04 <xarick> doo bee doo
17:55:21 <DorpsGek> [OpenTTD/gog-galaxy-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for GOG Galaxy https://github.com/OpenTTD/gog-galaxy-social/pull/2
17:55:35 <truebrain> right, fixed the bugs in those repos too
17:56:49 <DorpsGek> [OpenTTD/gog-galaxy-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for GOG Galaxy https://github.com/OpenTTD/gog-galaxy-social/pull/2
17:57:15 <DorpsGek> [OpenTTD/steam-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Steam https://github.com/OpenTTD/steam-social/pull/2
17:57:34 <truebrain> okay, now for realz ๐Ÿ˜›
17:57:35 <DorpsGek> [OpenTTD/discord-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2
18:06:26 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #10544: Fix #5713: Use pathfinder to find closest ship depot https://github.com/OpenTTD/OpenTTD/pull/10544
18:08:52 <xarick> removed aqueduct traversability bits!
18:09:02 <xarick> it works without it now
18:10:25 <xarick> by now I mean... built on top of 11817
18:11:55 <xarick> There's something I wanted to do as separate PR
18:12:16 <xarick> though there's not really a big reason for it
18:15:03 <xarick> Combine VisitAdjacentWaterRegionPatchNeighbors and VisitWaterRegionPatchNeighbors into 1 single function with the objective of reducing neighbour node duplication
18:15:28 <xarick> less nodes fed into the PF
18:32:16 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199058971160481942/image.png?ex=65c129b0&is=65aeb4b0&hm=37e92c63ac1fc75ec7d1335182b6129425d54b2735054b3f5450667bce423865&
18:32:16 <peter1138[d]> Ugly bitmap font scaling :p
18:33:40 <xarick> not too bad when looking from a distance
18:34:21 <peter1138[d]> Not worth it with OpenTTD-Sans existing ๐Ÿ˜„
18:36:01 <xarick> crap, my aqueduct function is crashing on me
18:40:29 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #10544: Fix #5713: Use pathfinder to find closest ship depot https://github.com/OpenTTD/OpenTTD/pull/10544
18:40:47 <DorpsGek> [OpenTTD/OpenTTD] eints-sync[bot] pushed 1 commits to master https://github.com/OpenTTD/OpenTTD/commit/786cc85e86719f3b18b10572b4f876091ba234e7
18:40:48 <DorpsGek> - Update: Translations from eints (by translators)
18:42:49 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #11866: Codechange: refactor DecodeHexText to a generic purpose ConvertHexToBytes https://github.com/OpenTTD/OpenTTD/pull/11866#pullrequestreview-1837106666
18:42:52 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11866: Codechange: refactor DecodeHexText to a generic purpose ConvertHexToBytes https://github.com/OpenTTD/OpenTTD/pull/11866
18:47:23 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #11628: Feature: Plugin framework for Social Integration with Steam, Discord, GOG, etc https://github.com/OpenTTD/OpenTTD/pull/11628#pullrequestreview-1837125616
18:48:00 <truebrain> Owh .. auto merge ... that in this case resulted in an unneeded merge ๐Ÿ˜„
18:48:13 <truebrain> Sometimes it is useful, sometimes it is not ๐Ÿ™‚
18:49:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11628: Feature: Plugin framework for Social Integration with Steam, Discord, GOG, etc https://github.com/OpenTTD/OpenTTD/pull/11628
18:49:07 <truebrain> will GitHub understand it is a rebase? IT DOES! \o/
18:49:30 <LordAro> shock
18:49:57 <truebrain> Right; now I would like someone to look over the last commit in https://github.com/OpenTTD/discord-social/pull/2 and https://github.com/OpenTTD/steam-social/pull/2 and https://github.com/OpenTTD/gog-galaxy-social/pull/2 .. the other commits are pointless to look at, as they are boring scaffolding .. but the last commit contains actual code ๐Ÿ˜„
18:50:37 <truebrain> and tnx Rubidium, on all the work on reviewing that PR ๐Ÿ™‚
18:52:31 <andythenorth> lunch?
19:01:40 <truebrain> this talltyler .. "12 minutes" .. no .. "period" .. no .. "12-minute periods" ๐Ÿ˜„ I think he is collecting them all ๐Ÿ˜„ (translations in wallclock PR .. depending on the string, you get a new way to indicate this time unit ๐Ÿ˜› )
19:03:40 <xarick> I need to investigate further what yapf actually do with repeated nodes
19:04:30 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #11341: Feature: Use real-time "wallclock" timekeeping units https://github.com/OpenTTD/OpenTTD/pull/11341#pullrequestreview-1837135930
19:07:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #11341: Feature: Use real-time "wallclock" timekeeping units https://github.com/OpenTTD/OpenTTD/pull/11341#pullrequestreview-1837159164
19:15:09 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #10567: [Bug]: Content system under dedicated server https://github.com/OpenTTD/OpenTTD/issues/10567
19:22:48 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11628: Feature: Plugin framework for Social Integration with Steam, Discord, GOG, etc https://github.com/OpenTTD/OpenTTD/pull/11628
19:22:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #8952: Social rich presence plugins https://github.com/OpenTTD/OpenTTD/pull/8952
19:23:00 <LordAro> \o/
19:23:06 <truebrain> w00p w00p
19:27:19 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199072823562473594/image.png?ex=65c13696&is=65aec196&hm=10745b7d831f74800af3baa36b851132490602ca0c06ebeaf9da6cfdef90cdc9&
19:27:19 <peter1138[d]> Not horrible for a quick mockup/hack/merge-into-production-already
19:27:36 <truebrain> done before 14.0? ๐Ÿ˜„
19:27:55 <peter1138[d]> If you like memory leaks... ๐Ÿ˜„
19:28:36 <peter1138[d]> I wanted a `std::unique_ptr<byte[]>` but `ReadSprite` returns `void *` so that's a bit hard.
19:29:12 <Eddi|zuHause> i see no problem in that picture :p
19:29:18 <truebrain> `FiosGetScenarioList` returns all scenarios found, where `FiosGetSavegameList` only returns it from the current folder ..
19:29:52 <Eddi|zuHause> consistency is for beginners. genius controls the chaos.
19:32:14 <truebrain> in our `-g` handler there is this line:
19:32:15 <truebrain> `bool is_scenario = _switch_mode == SM_EDITOR || _switch_mode == SM_LOAD_SCENARIO;`
19:32:19 <truebrain> but ........ huh?
19:32:27 <truebrain> isn't `_switch_mode` like ALWAYS `SM_MENU` there?
19:32:49 <truebrain> well, with `-e` you can set it to `_switch_mode = SM_EDITOR`
19:32:53 <truebrain> but ... the other condition ..
19:33:38 <truebrain> in case you do multiple `-g` it also changes behaviour
19:33:44 <truebrain> I .. well .. okay, what-ever
19:34:24 *** efessel has joined #openttd
19:34:24 <efessel> Hello truebrain !
19:35:36 <efessel> The public vanilla server we run typically lasts for 23 hours so it has to register with the coordinator fairly often.
19:35:56 <efessel> I got word people weren't seeing the server in the list today, and noticed in my logs this message:
19:35:56 <efessel> ``` Another server with the same invite-code registered itself. Switching to "local" game-type.```
19:36:20 <efessel> Not sure how this is possible? I only have one instance of this server running
19:37:22 <efessel> It's not a major issue - players just have to join via DNS/Ip for the next 23 hours ๐Ÿ™‚
19:37:41 <truebrain> That line you see if a protection against two servers trying to claim the same invite code. One of the two (the older ones) are kicked off, as that is the most likely best resolvement. If you did a clean shutdown of the old server, and start a new, that should never happen
19:37:54 <truebrain> an easy way to solve it is to just type in the console to make the server public again
19:38:13 <truebrain> `set server_game_type public`
19:38:14 <truebrain> should do that
19:38:56 <efessel> oh yeah - that'll re-register with the coordinator ๐Ÿ‘
19:38:56 <efessel> but curious if there's a way to "prevent" this from happening in the future?
19:39:14 <truebrain> do a clean shutdown, wait for a cycle or two, start a new server
19:39:30 <truebrain> the only moments I have seen this happen is if the server did a not-clean shutdown (kill, TCP termination, etc)
19:39:47 <efessel> The server does not shutdown - it hits `restart_game_year` and a new game is created
19:40:14 <truebrain> in that case, in rare cases, it can happen that the old server is registered to one instance of the coordinator, and the new server registers to another instance. In that case, in rare cases, race condition can occour. Still haven't been able to figure out when exactly
19:40:30 <truebrain> so maybe our `restart_game_year` is just too quick; it does a disconnect + reconnect
19:40:40 <truebrain> in that case, it should be rather rare for that to happen ๐Ÿ™‚
19:41:28 <efessel> Yeah, it seems to re-use the same invite between games
19:41:37 <truebrain> it does; as it should
19:42:44 <efessel> Ok, I'll try to implement a workaround to execute a game type command if the bot sees that log message
19:42:59 <truebrain> it now happened, how often, in how many days? ๐Ÿ™‚
19:43:10 <efessel> but like you said - it is rare, happens maybe every few months or so
19:43:16 <truebrain> good
19:43:22 <truebrain> I do plan to look into the coordinator issue at some point
19:43:29 <truebrain> but it just isn't high on my prio list due to the rarity
19:43:40 <efessel> yeah distributed systems & race conditions are fun, I know the pain ๐Ÿ™‚
19:43:59 <truebrain> I think I just should add "time-since-registration" to the ticket, and kick the oldest ticket
19:44:01 <truebrain> instead of the latest
19:44:14 <truebrain> but .. #effort
19:44:21 <truebrain> anyway, tnx for the report; let me know if it happens again
19:44:24 <truebrain> just so we can keep track
19:44:29 <efessel> will do
19:44:41 <efessel> should I open a github issue?
19:44:50 <truebrain> no, there is already one
19:47:44 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199077964642529500/image.png?ex=65c13b60&is=65aec660&hm=d612c317e8d1186f6ad51d5739e1c54cffd7cc56e0c506b13356330b0f4b6644&
19:47:44 <peter1138[d]> Extra chunky
19:54:32 *** Wolf01 has joined #openttd
19:57:03 <truebrain> lolz ... tar-files are only looked into when it is in the scenario map
19:57:07 <truebrain> otherwise they are completely ignored
19:57:10 <truebrain> kinda makes sense I guess
19:57:34 <truebrain> but it acts like it is in one directory
19:57:43 <truebrain> while it silently is looking in all scenario folders for tars ๐Ÿ™‚
19:58:57 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199080785030942860/image.png?ex=65c13e00&is=65aec900&hm=21c493247e118a21cf32c2f1a5be2a1fae633ee0ea486b3a218db06816390b2d&
19:58:57 <peter1138[d]> Almost, but blue line ๐Ÿ˜ฎ
19:59:17 <truebrain> oof
19:59:32 <xarick> wow!
19:59:48 <peter1138[d]> Much better than my previous attempt at fractional scaling though ๐Ÿ™‚
20:04:06 <xarick> can you have an aqueduct over an aqueduct starting point?
20:06:21 <DorpsGek> [OpenTTD/steam-social] rubidium42 commented on pull request #2: Feature: initial version of the Social Presence Plugin for Steam https://github.com/OpenTTD/steam-social/pull/2#pullrequestreview-1837260165
20:06:24 <xarick> https://cdn.discordapp.com/attachments/1008473233844097104/1199082660383965234/Sluningville_Transport_1935-11-09.png?ex=65c13fc0&is=65aecac0&hm=95c4a4d96883fcbe8288ce4e1aae46af6b7efc95101055ada62f3e1148acaa84&
20:06:24 <xarick> yep ๐Ÿ˜ left side of ss
20:08:23 <DorpsGek> [OpenTTD/steam-social] TrueBrain commented on pull request #2: Feature: initial version of the Social Presence Plugin for Steam https://github.com/OpenTTD/steam-social/pull/2#issuecomment-1904724766
20:10:23 <DorpsGek> [OpenTTD/steam-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Steam https://github.com/OpenTTD/steam-social/pull/2
20:11:02 <DorpsGek> [OpenTTD/discord-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2
20:11:35 <DorpsGek> [OpenTTD/gog-galaxy-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for GOG Galaxy https://github.com/OpenTTD/gog-galaxy-social/pull/2
20:20:15 <DorpsGek> [OpenTTD/gog-galaxy-social] rubidium42 commented on pull request #2: Feature: initial version of the Social Presence Plugin for GOG Galaxy https://github.com/OpenTTD/gog-galaxy-social/pull/2#pullrequestreview-1837290714
20:21:02 <DorpsGek> [OpenTTD/gog-galaxy-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for GOG Galaxy https://github.com/OpenTTD/gog-galaxy-social/pull/2
20:21:19 <truebrain> Discord does need them! ๐Ÿ˜„
20:22:18 <Rubidium> I know
20:27:24 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11867: Add: list_[scenario|heightmap] and load_[scenario|height] console commands https://github.com/OpenTTD/OpenTTD/pull/11867
20:27:55 <DorpsGek> [OpenTTD/discord-social] rubidium42 commented on pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2#pullrequestreview-1837294935
20:28:29 <DorpsGek> [OpenTTD/discord-social] TrueBrain updated pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2
20:32:47 <DorpsGek> [OpenTTD/steam-social] rubidium42 approved pull request #2: Feature: initial version of the Social Presence Plugin for Steam https://github.com/OpenTTD/steam-social/pull/2#pullrequestreview-1837310207
20:32:50 <DorpsGek> [OpenTTD/gog-galaxy-social] rubidium42 approved pull request #2: Feature: initial version of the Social Presence Plugin for GOG Galaxy https://github.com/OpenTTD/gog-galaxy-social/pull/2#pullrequestreview-1837310227
20:32:53 <DorpsGek> [OpenTTD/discord-social] rubidium42 commented on pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2#pullrequestreview-1837310245
20:33:15 <truebrain> 1 approve is not like the others ๐Ÿ˜›
20:33:16 <DorpsGek> [OpenTTD/discord-social] rubidium42 approved pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2#pullrequestreview-1837310822
20:33:21 <truebrain> Tnx again Rubiduim ๐Ÿ™‚ Much appreciated!
20:41:07 <peter1138[d]> Hmm, let me guess... this should be an option...
20:41:53 <_glx_> xarick: I guess it does like any sane PF, it discards the one with the highest cost
20:49:12 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199093433206325438/image.png?ex=65c149c8&is=65aed4c8&hm=c7a5c86ad258f9b69473540100f412b74296e1bab1d7ac3880f2d66af574c582&
20:49:12 <peter1138[d]> Hmm
20:50:30 <belajalilija> bottom is prefereable
20:51:00 <belajalilija> https://cdn.discordapp.com/attachments/1008473233844097104/1199093885314539530/image.png?ex=65c14a34&is=65aed534&hm=ca2c76a9fa205d52662699bf29338482e7e6ecae52516a3040d492535c4815aa&
20:51:00 <belajalilija> i have mine like that
20:52:16 <_glx_> I can spot a missing sprite ๐Ÿ™‚
20:52:49 <peter1138[d]> I've still got the svg newgrf loaded, but it's not the svg branch ๐Ÿ™‚
20:53:36 <peter1138[d]> belajalilija: These are both at 2.75 scale though ๐Ÿ™‚
20:54:10 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11868: Fix d3b2a576: LOAD_HEIGHTMAP / LOAD_SCENARIO report wrong status to social plugins https://github.com/OpenTTD/OpenTTD/pull/11868
20:54:11 <truebrain> not even a day old, and I found a bug ๐Ÿ˜›
20:54:53 <belajalilija> ohh
20:54:59 <belajalilija> no idea what mine is
20:55:48 <peter1138[d]> Look like 2x without chunky bevels (heinous!)
20:57:47 <belajalilija> sounds right
20:58:00 <belajalilija> i like small bevels, make it feel cleaner
20:58:20 <belajalilija> changed my font too
20:58:42 <belajalilija> ubuntu i think it is called
20:58:48 <peter1138[d]> OpenTTD Sans is the new best ๐Ÿ˜„
20:59:18 <belajalilija> it does look good from what ive seen
20:59:46 <belajalilija> will it function like normal fonts and be able to use non latin letters?
21:00:58 <peter1138[d]> It IS a normal font.
21:01:01 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11867: Add: list_[scenario|heightmap] and load_[scenario|height] console commands https://github.com/OpenTTD/OpenTTD/pull/11867
21:01:30 <truebrain> really .. `SM_LOAD_GAME` starts a game, but `SM_LOAD_SCENARIO` starts the editor ... and `SM_START_HEIGHTMAP` starts a game
21:01:32 <truebrain> these names
21:03:19 <peter1138[d]> Oh, I've just realised why this build keeps crashing.
21:03:36 <peter1138[d]> I added a check to make sure it's not allocating a stupid amount of memory per sprite.
21:03:45 <peter1138[d]> Because that means I mess up with scale and such like.
21:04:22 <peter1138[d]> Apparently in some sets single sprites *can* be larger than 1MB when encoded...
21:04:30 <truebrain> lol
21:04:37 <truebrain> chunky!
21:06:33 <truebrain> `Assertion 'IsInnerTile(tile) == (type != MP_VOID)' failed.` .. owh ..
21:06:38 <peter1138[d]> 512*256
21:06:52 <_glx_> 3x3 tiles sprite without split ?
21:07:07 <peter1138[d]> I'm not sure why there is a sprite that large, tbh.
21:08:07 <Rubidium> truebrain: might that be a scenario from your h2h experiment?
21:08:15 <truebrain> no ..
21:08:33 <truebrain> loading heightmaps in scenario editor is done really awkward .... and I run into that now ๐Ÿ˜›
21:09:06 <_glx_> scenario editor is really awkward ๐Ÿ™‚
21:09:28 <truebrain> and for some reason it crashes with that error when I try to open a heightmap in the scenario editor from console
21:09:30 <truebrain> not sure yet
21:09:34 <truebrain> euh, console = CLI
21:10:03 <truebrain> well, it also crashed from console, but it was not intentional to load a heightmap in the SE from console ๐Ÿ˜„
21:10:45 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11868: Fix d3b2a576: LOAD_HEIGHTMAP / LOAD_SCENARIO report wrong status to social plugins https://github.com/OpenTTD/OpenTTD/pull/11868#pullrequestreview-1837381480
21:11:22 <truebrain> hmmm ... okay, something else is broken ๐Ÿ˜„
21:11:39 <truebrain> I was just opening a heightmap that didn't exist
21:12:32 <truebrain> that shouldn't crash! ๐Ÿ˜„
21:13:11 <truebrain> but yet it does .. yet it does ...
21:17:06 <truebrain> funny .. we nicely and correctly notice the heightmap is not there
21:17:16 <truebrain> and then .... owh, screw you buddy, I am just going to sit here in a corner ๐Ÿ˜›
21:18:39 <peter1138[d]> Bouncing?
21:18:47 <truebrain> no, bouncing is fixed ๐Ÿ˜„
21:18:53 <truebrain> you just didn't approve the PR yet:P
21:19:46 <peter1138[d]> Sidetracked.
21:19:51 <peter1138[d]> Hmm, bilinear scaling?
21:20:07 <peter1138[d]> Nah, that'll mess up remaps.
21:20:20 <peter1138[d]> scale2x etc?
21:20:32 <peter1138[d]> Oh, no, they're all powers-of-2 lol
21:20:38 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick updated pull request #10544: Fix #5713: Use pathfinder to find closest ship depot https://github.com/OpenTTD/OpenTTD/pull/10544
21:20:48 <_zephyris> belajalilija: It has all the letters I've drawn for it, which is all Latin, Cyrillic and Greek for all European alphabet languages in OTTD ๐Ÿ™‚
21:20:52 <peter1138[d]> I broke the sprite aligner ๐Ÿ˜ฆ
21:21:28 <peter1138[d]> (It always draws interface-scaled sprite instead of selected zoom level)
21:23:00 <kuhnovic> Wtf, I somehow managed to add my pull request to Xarick's fork ๐Ÿ˜›
21:23:18 <xarick> oh
21:23:41 <xarick> my email didn't tell me anything
21:24:55 <xarick> Your master branch isn't protected
21:24:59 <xarick> whatever that means
21:26:20 <xarick> I see nothing yours there <https://github.com/SamuXarick/OpenTTD/pulls>
21:26:31 <_glx_> master branch is rarely protected on forks
21:26:43 <DorpsGek> [OpenTTD/OpenTTD] Kuhnovic opened pull request #11869: Fix: use correct size parameter type in TileArea constructors https://github.com/OpenTTD/OpenTTD/pull/11869
21:27:00 <kuhnovic> I've already deleted it
21:28:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11868: Fix d3b2a576: LOAD_HEIGHTMAP / LOAD_SCENARIO report wrong status to social plugins https://github.com/OpenTTD/OpenTTD/pull/11868
21:28:15 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #11869: Fix: use correct size parameter type in TileArea constructors https://github.com/OpenTTD/OpenTTD/pull/11869#pullrequestreview-1837407739
21:28:36 <xarick> ah, it's closed
21:28:55 <kuhnovic> Wow, I managed to make a screwup in a PR with changes to 2 lines of code
21:29:01 <kuhnovic> New personal record
21:29:09 <_glx_> happens
21:29:13 <andythenorth> peter1138[d]: pitchforks
21:29:44 <_glx_> luckily I though about checking the internal types
21:29:58 <DorpsGek> [OpenTTD/OpenTTD] Kuhnovic updated pull request #11869: Fix: use correct size parameter type in TileArea constructors https://github.com/OpenTTD/OpenTTD/pull/11869
21:29:58 <_glx_> else it's easy to miss
21:30:01 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1199103705346228474/image.png?ex=65c15359&is=65aede59&hm=54bcd28ccc94b09e99b4e09a0f27fb0919b20d122fe1079d6bb493861f84dee0&
21:30:01 <andythenorth> flat tunnels? goes it?
21:30:15 <andythenorth> (without needing entrance slopes)
21:30:30 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11869: Fix: use correct size parameter type in TileArea constructors https://github.com/OpenTTD/OpenTTD/pull/11869#pullrequestreview-1837411114
21:30:32 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1199103832207138936/image.png?ex=65c15377&is=65aede77&hm=687f4295028b8a57b899dfbf73aa206e36284aa8baf44bae6cf8eabedbe5d8e0&
21:31:40 <xarick> uint8_t would still allow BIIIIIG areas
21:32:46 <xarick> oh
21:32:56 <xarick> int
21:33:01 <xarick> to uint
21:33:23 <xarick> im confused
21:33:51 <DorpsGek> [OpenTTD/OpenTTD] Kuhnovic commented on pull request #11869: Fix: use correct size parameter type in TileArea constructors https://github.com/OpenTTD/OpenTTD/pull/11869#pullrequestreview-1837415628
21:34:10 <kuhnovic> That was the mistake I mentioned
21:34:23 <kuhnovic> 2 lines of code, still managed to mess that up ๐Ÿ˜„
21:34:38 <xarick> but why one is int and the other uint
21:34:45 <xarick> that's not consistent imo
21:35:05 <kuhnovic> https://cdn.discordapp.com/attachments/1008473233844097104/1199104980087476294/image.png?ex=65c15489&is=65aedf89&hm=fa9e3f68cb48f72d31192e621e5325b90cf8f321193f67d8c5ccdc58c466a416&
21:35:05 <kuhnovic> And that's why we have comments
21:35:32 <xarick> okay, I guess I don't read often
21:35:41 <peter1138[d]> We did notice ๐Ÿ™‚
21:38:18 <truebrain> Rubidium: how do I edit `openttd.6`?
21:39:00 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199105963978919966/image.png?ex=65c15574&is=65aee074&hm=8b371f1c0975d99a878d007257b6daf965277a94f32dbe052209cfc4a40a561d&
21:39:00 <peter1138[d]> I think that went wrong.
21:39:46 <truebrain> or do I just need to learn that format ๐Ÿ˜›
21:40:05 <LordAro> troff, isn't it?
21:40:18 <peter1138[d]> groff or something? Ah troff..
21:40:26 <_glx_> maybe emacs knows it too
21:40:53 <xarick> if the pictures were high definition it wouldn't be so bad
21:40:54 <truebrain> no clue what `troff` does, but anything useful it isn't ๐Ÿ˜ฆ
21:41:01 <peter1138[d]> There's a highligher for VS Code, so...
21:41:11 <truebrain> need a bit more than a highlighter ๐Ÿ˜„
21:41:15 <truebrain> want to know what I actually have to type ๐Ÿ˜›
21:41:29 <peter1138[d]> Isn't it obvious/ ๐Ÿ˜„
21:42:07 <peter1138[d]> Is it rather arcane.
21:42:17 <wensimehrp> peter1138[d]: no
21:42:34 <_glx_> it's better than sprite font
21:43:42 <Rubidium> truebrain: I'm just using a simple text editor, and then "man -l openttd.6" to check whether I did the right thing. Usually I can get away with copying some lines and changing them
21:44:13 <truebrain> fair enough
21:44:20 <truebrain> trying to find how I can do `savegame|scenario|heightmap` ๐Ÿ˜›
21:44:24 <truebrain> the `|` isn't it!
21:45:43 <Rubidium> I guess you need to look at line 14
21:47:26 <truebrain> I cheated
21:47:28 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #11870: Add: allow loading heightmaps from command-line https://github.com/OpenTTD/OpenTTD/pull/11870
21:51:02 <DorpsGek> [OpenTTD/discord-social] TrueBrain merged pull request #2: Feature: initial version of the Social Presence Plugin for Discord https://github.com/OpenTTD/discord-social/pull/2
21:51:12 <truebrain> time to figure out if this actually works ๐Ÿ˜›
21:51:26 <Rubidium> maybe just generalise it, and replace savegame|scenario|heightmap with file, and in the further comments state it ought to be a savegame, scenario or heightmap
21:52:49 <truebrain> sure, works for me
21:52:50 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11870: Add: allow loading heightmaps from command-line https://github.com/OpenTTD/OpenTTD/pull/11870
21:53:19 <DorpsGek> [OpenTTD/discord-social] TrueBrain created new tag: 1.0.0 https://github.com/OpenTTD/discord-social/releases/tag/1.0.0
21:53:28 <truebrain> *fingers crossed*
21:57:59 <xarick> should I remove the distance manhattan search for a ship depot?
21:58:17 <xarick> as the fallback
21:59:01 <xarick> there may be a situation where it could be useful
21:59:36 <xarick> player is going to open up the sea to allow passage to it
21:59:45 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #11870: Add: allow loading heightmaps from command-line https://github.com/OpenTTD/OpenTTD/pull/11870#pullrequestreview-1837466402
22:00:39 <truebrain> _glx_: where would you like them? I already found this easy to ready, but I don't mind adding some
22:00:48 <truebrain> some people like them around the whole group, others around the comparison
22:00:51 <truebrain> so pick your poison ๐Ÿ™‚
22:01:03 <_glx_> I'd say whole group
22:01:11 <truebrain> `case FT_SAVEGAME: _switch_mode = (_switch_mode == SM_EDITOR ? SM_LOAD_SCENARIO : SM_LOAD_GAME); break;`?
22:01:44 <_glx_> yeah
22:01:52 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #11870: Add: allow loading heightmaps from command-line https://github.com/OpenTTD/OpenTTD/pull/11870
22:02:03 <truebrain> `CPack Error: CPACK_BUNDLE_ICON must be set.`
22:02:05 <_glx_> like the old "e" case
22:02:05 <truebrain> oops ......
22:03:48 <truebrain> okay, so that brings the license problem back to the foreground
22:03:53 <truebrain> the OpenTTD Logo
22:03:56 <truebrain> is now licensed under GPLv2
22:04:03 <truebrain> so I cannot add them to the MIT-licensed plugins
22:04:11 <truebrain> but I need icons for MacOS to be happy ๐Ÿ™‚
22:04:32 <truebrain> anyone any suggestions there? ๐Ÿ™‚
22:05:12 <LordAro> draw an approximation of it in paint
22:05:20 <LordAro> and comic sans
22:05:20 *** jfs has joined #openttd
22:05:20 <jfs> do we know the authorship of the logo? can they be contacted and asked if it can be re-licensed? (otoh, a re-licensing would technically make it available for anyone to use under the least restrictive license)
22:05:45 <truebrain> not re-license, dual-license
22:05:49 <truebrain> solves that whole debacle ๐Ÿ™‚
22:06:01 <truebrain> but I dunno how they came to be
22:06:08 <jfs> changing from a single license to dual-license is also a re-license
22:06:09 <truebrain> I once got the logo for the livestream from this Discord
22:06:18 <truebrain> although not really sure who anymore; just that I could use it for the livestream
22:06:42 <truebrain> jfs: we say the same then. As in both cases people can pick what license they want ๐Ÿ™‚
22:06:47 <DorpsGek> [OpenTTD/OpenTTD] glx22 merged pull request #11869: Fix: use correct size parameter type in TileArea constructors https://github.com/OpenTTD/OpenTTD/pull/11869
22:06:48 <truebrain> and ofc that is the least restrictive one ๐Ÿ™‚
22:07:38 <truebrain> okay, current icons are added by Bjarni
22:07:41 <truebrain> so ... yeah .....
22:07:43 <jfs> anyway, if it's only because MacOS requires an icon in a bundle, then yeah make some kind of "dummy" icon
22:07:57 <truebrain> I do not have any clue how to make `icns` ๐Ÿ˜›
22:08:16 <truebrain> who on this Discord made the Discord logo ... hmmm
22:08:19 <truebrain> maybe talltyler knows
22:08:46 <truebrain> GIMP cannot load the `icns` ..
22:08:58 <jfs> maybe imagemagick?
22:09:00 <truebrain> `openttd.icns: Mac OS X icon, 213612 bytes, "TOC " type`
22:12:02 <truebrain> can't believe how old the current icon is ๐Ÿ˜›
22:12:52 <truebrain> owh, `makeicns` on MacOS does that
22:13:12 <truebrain> so I guess I have to be very very nice to andythenorth , and see if he can help out?
22:13:52 <jfs> or possibly make it part of the build process, to assemble the icns file from input png files
22:14:13 <truebrain> I am kinda done debugging MacOS stuff via the CI; but I welcome you with open arms to make that happen ๐Ÿ™‚
22:14:56 <xarick> ultra-wide monitor == ultra-wide horizontal code style
22:15:58 <truebrain> there is https://commons.wikimedia.org/wiki/File:Openttdlogo.svg, but what the license of that is ...
22:16:29 <truebrain> I also once got a version from eratonysiad .. don't know if he remembers, but do you know where you got the OpenTTD Logo from by any chance?
22:16:36 <Rubidium> that's from someone who traced the GPLv2 icons that were in OpenTTD before that
22:16:39 <jfs> truebrain: I'm already exhausted by having sorta-kinda three major features for 14.0, despite barely doing any work on them at all, other than giving a bit of advice here and there
22:16:39 <jfs> (help window written years ago, social plugins proof of concept, notdaylength concept)
22:17:33 <truebrain> jfs: just imagine writing 2 out of the 3 of those features ๐Ÿ˜›
22:17:35 *** keikoz has quit IRC (Ping timeout: 480 seconds)
22:17:38 <truebrain> and reviewing the 3rd
22:17:49 <andythenorth> truebrain: I can't find makeicns locally, I'll research it
22:17:55 <Rubidium> I've already spent a good while trying to find the source of the icons and couldn't find anything definitive
22:18:08 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #11870: Add: allow loading heightmaps from command-line https://github.com/OpenTTD/OpenTTD/pull/11870#pullrequestreview-1837489884
22:18:16 <andythenorth> I usually just use a web based icon maker, like https://www.appicon.co/
22:18:18 <andythenorth> or so
22:18:21 *** eratonysiad has joined #openttd
22:18:21 <eratonysiad> https://cdn.discordapp.com/attachments/1008473233844097104/1199115866613239948/image.png?ex=65c15ead&is=65aee9ad&hm=fbe6d9cf7aadbef092210cf3ece7e1567e390fd827d7b855ed910499b2fd7a72&
22:18:21 <eratonysiad> truebrain: The I got the older version on there, and filled in the transparent $ with white
22:18:23 <andythenorth> probably includes free malware?
22:18:42 <truebrain> eratonysiad: haha, okay, so we all recycled the same material ๐Ÿ˜„ Which is totally fine btw ๐Ÿ™‚
22:18:46 <truebrain> tnx ๐Ÿ™‚
22:18:49 <andythenorth> seems I have iconutil
22:18:51 <eratonysiad> You're welcome
22:19:06 <truebrain> andythenorth: would you be willing to make some MIT-licensed OpenTTD logos in icns format and 1 in png format?
22:19:17 <truebrain> (splash-screen png)
22:19:39 <truebrain> doesn't have to be pretty, etc
22:19:43 <truebrain> it just has to be MIT-licensed ๐Ÿ˜›
22:20:43 <xarick> shouldn't OpenTTD be one word in the logo?
22:20:47 <andythenorth> truebrain: totally can, but I am about to go to sleep (early start tomorrow)
22:20:48 <jfs> truebrain: I honestly wish I could put time and energy into OTTD, but other things keep taking my attention away and I hate it (too many things I want to do and too much time spent worrying about how much time I spend worrying about it instead of doing it)
22:21:25 <truebrain> andythenorth: no worries; but if you can, that would be awesome. So go sleep, enjoy the early start (ghehe, nobody ever does), and just let me know if/when you can do so ๐Ÿ™‚
22:21:55 <andythenorth> I didn't read up for the context, but eh, can help ๐Ÿ™‚
22:21:58 <andythenorth> ok sleep zzzz
22:22:45 <truebrain> andythenorth: Context is simple: for the Social Plugins we need two MacOS specific icons: an App Bundle Icon (`.icns`) and a Splash (`.png`). Without it, CPack refuses to make a release ๐Ÿ™‚
22:22:47 <truebrain> Tnx, sleep well!
22:23:47 <truebrain> jfs: well, it also doesn't help that all three subjects are HUGE undertakings ๐Ÿ˜„ It helps to do smaller shit from time to time, like me smooth-scroll fixes .. I do those as I just don't have more time this week ๐Ÿ™‚
22:24:07 <truebrain> that said, this social integration stuff took WAY more time than I expected. Not because of the actual work, but all the administration around it .... ๐Ÿ˜„
22:25:06 <truebrain> okay, seems only MacOS is bitching; all other OSes succeeded .. so that is promising ๐Ÿ™‚ I guess we continue when icons arive ๐Ÿ™‚
22:27:48 <_glx_> at least we have the artifacts ๐Ÿ™‚
22:27:51 *** nielsm has quit IRC (Ping timeout: 480 seconds)
22:28:07 <truebrain> good point; I can at least test them ๐Ÿ™‚
22:28:37 <_glx_> so where should I copy them
22:28:46 <truebrain> see the README ๐Ÿ˜„
22:28:51 <_glx_> guess I could read the doc
22:29:01 <truebrain> that helps, as that is a check if that is clear enough ๐Ÿ™‚
22:29:46 <truebrain> owh, should I semver these projects? So `v1.0.1` .. might be better than `1.0.1`
22:30:55 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #11603: Add: AI/GS Time Mode to choose between economy (default) and calendar time https://github.com/OpenTTD/OpenTTD/pull/11603
22:32:27 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on pull request #11603: Add: AI/GS Time Mode to choose between economy (default) and calendar time https://github.com/OpenTTD/OpenTTD/pull/11603#issuecomment-1904944808
22:34:54 <_glx_> https://cdn.discordapp.com/attachments/1008473233844097104/1199120032039440394/image.png?ex=65c1628e&is=65aeed8e&hm=058f7d933a1a311cf42f90ac33236aa5250cd8589636bb821f52d395e27f543e&
22:34:59 <truebrain> nice ๐Ÿ˜„
22:35:08 <truebrain> in the main menu ๐Ÿ˜„
22:35:14 <truebrain> can't wait till you can also join each others games ๐Ÿ˜›
22:35:25 <_glx_> and now ?
22:35:30 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #11870: Add: allow loading heightmaps from command-line https://github.com/OpenTTD/OpenTTD/pull/11870
22:35:33 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #11386: Add: Dedicated server heightmap support https://github.com/OpenTTD/OpenTTD/pull/11386
22:35:35 <truebrain> https://cdn.discordapp.com/attachments/1008473233844097104/1199120203322236988/image.png?ex=65c162b7&is=65aeedb7&hm=9a7bba2bc2d9291541aa3894ea551638b69d2fe4d511bf1536af18d7521f83e1&
22:35:35 <truebrain> SO TINY
22:36:05 <_glx_> all my tests are done on 64x64, faster to generate
22:36:48 <_glx_> so I just extracted the zip in the folder
22:36:55 <truebrain> that is all it takes ๐Ÿ™‚
22:37:06 <truebrain> they are both Windows signed as OpenTTD signed
22:37:20 <truebrain> (right click to see that it is signed for Windows)
22:37:35 <_glx_> the readme says to copy `lib` to a given the folder
22:37:54 <_glx_> but that's if I build myself
22:37:54 <truebrain> owh, yeah, `lib` is no more
22:38:16 <truebrain> even building yourself doesn't give a `lib` anymore I think
22:38:20 <truebrain> I removed most of that ๐Ÿ™‚
22:38:37 <_glx_> https://cdn.discordapp.com/attachments/1008473233844097104/1199120966261932135/image.png?ex=65c1636c&is=65aeee6c&hm=a95de6b76c7cf2c149b9eeefb219104e9b5fd5288d08f9337882db21f9d07e89&
22:39:01 <truebrain> so professional ... didn't take most of my time at all, to get all that stuff right ....... ๐Ÿ˜›
22:39:20 <truebrain> https://github.com/OpenTTD/OpenTTD/blob/master/README.md#151-social-integration doesn't mention `lib`, so that is good
22:39:48 *** gelignite has quit IRC (Quit: Stay safe!)
22:39:55 <truebrain> the README in the repo does need a bit of an improvement in wording; will do that tomorrow
22:40:24 <truebrain> it also doesn't tell to build OpenTTD with validation disabled
22:40:27 <peter1138[d]> Aw nice, this works with the simple blitters too which don't ... technically need it because they can scale on the fly. Hmm.
22:40:37 <peter1138[d]> Oh but probably only powers-of-2 ๐Ÿ™‚
22:42:16 <_glx_> <https://github.com/OpenTTD/discord-social/blob/main/README.md#installation>
22:42:44 <truebrain> ugh, and so much more administration work to come! I kinda forgot already ... I need to update the website to correctly show all references ... add it to the nightly of Steam ... oof ๐Ÿ˜› Don't think, just do! ๐Ÿ™‚
22:43:03 <truebrain> _glx_: yeah, that is what I meant with "the README in the repo" ๐Ÿ™‚
22:43:38 <truebrain> I was just afraid it also slipped in the README of OpenTTD. But it didn't. So that is good ๐Ÿ™‚
22:43:48 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler opened pull request #11871: Fix fa479c4: Typo in vehicle list tooltip https://github.com/OpenTTD/OpenTTD/pull/11871
22:44:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain approved pull request #11871: Fix fa479c4: Typo in vehicle list tooltip https://github.com/OpenTTD/OpenTTD/pull/11871#pullrequestreview-1837525866
22:44:20 <talltyler> Thx ๐Ÿ™‚
22:45:01 <_glx_> https://cdn.discordapp.com/attachments/1008473233844097104/1199122577105371176/image.png?ex=65c164ed&is=65aeefed&hm=4db49f9fb385d0d2347bccabe6a3efba4609b67c2ed45efb9daa3ba9cb0d5b7d&
22:45:01 <_glx_> funny there's a .lib ๐Ÿ™‚
22:45:34 <_glx_> in case someone want to link to it at build time
22:47:46 <truebrain> Yeah .. couldn't be bother to figure out how to remove it ๐Ÿ™‚
22:48:05 <_glx_> it's only 3kB anyway
22:48:17 <truebrain> Exactly
22:48:19 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199123406591905862/image.png?ex=65c165b2&is=65aef0b2&hm=6ea2a879ac3cd970cf7a68ba05d3079fe7e0ce51371b8789cfc5a99ba2a55ee6&
22:48:19 <peter1138[d]> Hmm, something is not quite the same... but I think there are meant to be gaps between the letters normally...
22:48:45 <truebrain> Wtf is that?!
22:49:07 <peter1138[d]> One of OpenGFX2's 'hidden' parameters ๐Ÿ™‚
22:49:19 <truebrain> Spacy
22:49:53 <talltyler> I like the Underground logo ๐Ÿ™‚
22:50:29 <LordAro> very 80s
22:50:42 <peter1138[d]> https://cdn.discordapp.com/attachments/1008473233844097104/1199124009888006184/image.png?ex=65c16642&is=65aef142&hm=9b57d6f16a6531b3f7d452eb26e8748830515454a89ffd59df97d4d71437844e&
22:50:42 <peter1138[d]> Same 'issue'
22:51:43 <peter1138[d]> I guess it's using sprite offsets, and they're now ignored, so the normal spacing happens.
23:00:46 <reldred> Theyโ€™re both gorgeous, but yeah, I dig the chrome logo.
23:09:39 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:15:46 *** ckb_ has quit IRC (Ping timeout: 480 seconds)
23:17:31 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler merged pull request #11871: Fix fa479c4: Typo in vehicle list tooltip https://github.com/OpenTTD/OpenTTD/pull/11871
23:24:30 *** Flygon has joined #openttd
23:28:52 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler updated pull request #11341: Feature: Use real-time "wallclock" timekeeping units https://github.com/OpenTTD/OpenTTD/pull/11341
23:39:20 <wensimehrp> https://cdn.discordapp.com/attachments/1008473233844097104/1199136245599715338/image.png?ex=65c171a7&is=65aefca7&hm=2cbdd0e22194c73c57fc5a587856788ca7735ce23e272d4f50fef82ff21e5dc7&
23:39:20 <wensimehrp> Is the web translator not working or it takes time to synchronize?
23:41:13 <_glx_> no, I also see 146 outdated strings in other languages
23:42:32 <wensimehrp> But [this commit](https://github.com/OpenTTD/OpenTTD/commit/d3b2a576de7db072a3ba2e080abeaa5d2d6aeec6#diff-e88ddaad49e8d7421d92825f11a486bbee4238a5166639a1cbe3dea9bd2b8239) added new strings
23:43:01 <_glx_> ah yeah they will be in next sync
23:43:05 <_glx_> tomorrow
23:43:12 <wensimehrp> ok thx
23:51:16 <DorpsGek> [OpenTTD/OpenTTD] SamuXarick opened pull request #11872: Change: Don't send duplicate neighbours to the pathfinder https://github.com/OpenTTD/OpenTTD/pull/11872
23:53:58 *** ckb has joined #openttd