IRC logs for #openttd on OFTC at 2023-11-27
⏴ go to previous day
00:03:40 <talltyler> If a player has a vehicle that takes 662.5 real days to get from one station to the next…something has gone terribly wrong
00:03:56 <peter1138> Not necessarily, if we don't care about overflowing then it might be okay to just change it from UINT32 to INT32. Savegame purity...? Hmm
00:04:52 <talltyler> Shall I change it back? The decision is probably above my pay grade 😛
00:05:31 <Rubidium> technically not; just using SLE_FILE_U32 | SLE_VAR_I32 instead of SLE_INT32 would have been enough. Practically it doesn't make much difference, it's primarily there to be able to go to bigger variable sizes, in which case a savegame bump would be advised. On the other hand, there are cases where for savegame purity you want to do a bump but not actually do the bump... in which case you could use
00:05:37 <Rubidium> <currentversion+1> instead of a new savegame version (in the past it was just done with numbers, making it easier), where you updated the version in the saveload configuration, but didn't increment the savegame version yet
00:06:51 <peter1138> I think leave it as it is. It might be overkill, but it's definitely not wrong.
00:07:05 <peter1138> (As in, as the PR already is)
00:07:57 <peter1138> talltyler, sometimes I think out loud and contributors think I mean I want them to do something :)
00:25:05 <peter1138> > dbg: [grf] NewGRF FF4F5454 (ORIG_EXTRA.GRF) not found; checksum 00000000000000000000000000000000
00:25:13 <peter1138> I broke something :D
00:43:51 <peter1138> okay, vector.erase(first, last) is a bit ambiguous.
01:30:17 <Rubidium> why? Aren't essentially all ranges in the C++ standard [first, last)?
01:33:26 <peter1138> Yes, but OpenTTD has a history of distinguishing last and end. And I'm easily confused :)
02:20:19 *** Wormnest has quit IRC (Quit: Leaving)
03:17:26 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:22:55 *** D-HUND is now known as debdog
04:05:32 *** Webster has joined #openttd
05:52:26 *** karl[m]123 has quit IRC (Quit: Client limit exceeded: 20000)
06:50:39 *** ChanServ sets mode: +v tokai
06:57:35 *** tokai|noir has quit IRC (Ping timeout: 480 seconds)
07:06:31 *** FLHerne has quit IRC (Quit: There's a real world out here!)
07:07:05 *** FLHerne has joined #openttd
07:44:07 <merni> andythenorth: yeah I'm with you here, I dn't really understand it either. Sorting the station list by total waiting cargo is much more useful to know where the bottlenecks are :p
08:49:20 <merni> In the .obm files of base music sets, what is the meaning of the `[origin]` section?
08:52:18 <peter1138> It's where you can get the baseset's files. Their origin.
08:53:36 <peter1138> Some music sets have misinterpreted it though :)
08:54:25 <merni> Yeah I was confused as OpenMSX sets it to "Please redownload from BaNaNaS."
08:55:00 <peter1138> So the orig_* basesets for the original music will say you can find it on the original CD ROM...
08:55:13 <peter1138> Redownload it from BaNaNaS makes perfect sense.
08:55:24 <peter1138> If you know what BaNaNaS is :D
08:56:14 <merni> But... the files are already on your system; re-downloading it from BaNaNaS (if that would be even possible) just puts them into the same place where they are already
08:56:41 <merni> ie. content_download\baseset\openmsx-x.x.x
08:56:46 <peter1138> The origin message is only displayed if files are missing or corrupted.
08:57:04 <peter1138> So telling you where you can redownload it is the only thing that makes sense.
08:58:26 <peter1138> So most of the origin of other basesets are irrelevant.
08:58:35 <peter1138> *Are set to something irrelevant.
08:59:46 <peter1138> The modern motion and scott joplin anthology ones provide a link... but that link is invalid.
09:00:15 <peter1138> radio_monochrome provides an email address.
09:36:31 <Eddi|zuHause> ooh, a butterfly
09:37:17 *** wensimehrp has joined #openttd
09:37:17 <wensimehrp> ooh a bottle of alcohol
09:37:33 <merni> samsunixviaGitHub: > Almost every adult should have at least google authentication installed on their phones.
09:37:33 <merni> What effortless assumption :)
09:42:23 <Eddi|zuHause> that sounds like a world from a black mirror episode
09:42:44 <Eddi|zuHause> also. what phone?
09:43:36 <_pruple> interesting use of "even tho" there
09:47:04 <merni> Ah, there is commit message format for OpenMSX too
09:52:32 <merni> oh, the mingw wiki is also a dead link now ;(
09:53:20 *** virtualrandomnumber has joined #openttd
09:54:17 <peter1138> ~/.openttd is wrong these days too.
09:54:37 <peter1138> It's ~/.local/share/openttd
09:55:16 <merni> Might be better just to link to the directory structure file in the OpenTTD repo
09:55:50 *** virtualrandomnumber has quit IRC ()
09:55:58 <peter1138> Is the "Manually" section actually needed...
09:56:27 <peter1138> I suppose if content download is blocked for some reason.
09:56:44 <merni> or in the far future when bananas is no longer maintained
10:00:01 <_pruple> ? the last two services on the internet will be IRC and bananas
10:02:03 <pickpacket> Would it be hard to self host a game coordinator? If not I don’t see why it couldn’t last forever 😄
10:11:19 <merni> hopefully that is fine now
10:13:38 <peter1138> The correct clone link has ".git" on the end, for some reason.
10:14:49 <peter1138> merni, I'd also remove anything about MinGW. WSL is superior...
10:15:39 <peter1138> Hmm, although maybe not directly equivalent.
10:17:29 <_zephyris> Sorry guys, fix incoming. 😳
10:17:56 <peter1138> Ooo, rivers next to each other. Didn't think to check that.
10:18:51 <peter1138> Ah, copy & pasta on the offsets.
10:19:14 <peter1138> Ah I suppose the hash doesn't check because it's only the graphics.
10:19:20 <_zephyris> Only the NE slopes too, silly typo
10:19:38 <_zephyris> I did a build just to double check, but no hash change
10:20:08 <peter1138> And it makes the resultant NewGRF 162 bytes shorter ;)
10:20:25 <_zephyris> Got to save those bytes!
10:21:11 <Rubidium> have you also tested multiple "rapids" after eachother?
10:21:56 <Rubidium> and maybe the locks have a similar difficulty with it as well?
10:23:08 <_zephyris> Rubidium: Multiple rapids in succession aren't a problem (the NE/SW tile borders are still pixel-perfect, even with the bugged mask)
10:23:38 <_zephyris> Rubidium: Locks use a different water slope sprite, without rocks. That one is still unshaded.
10:25:36 <peter1138> Which silly person made ships stop and go up/down in locks...
10:30:11 <Rubidium> good enough for me :)
10:30:34 <_zephyris> Thanks 🙂 I'll think about more corner cases next time.
10:34:26 <merni> peter1138: I'll remove all the 3 paragraphs about windows/linux/mac there, since all they basically amount to is "check your package manager"
10:57:35 <peter1138[d]> Network monitoring of printers 😄
10:58:39 <Rubidium> they're in need of a UX designer I guess
10:59:13 <Rubidium> or maybe it's the same UX designer that proposed the colour change in Google Maps
10:59:20 <peter1138[d]> Nothing wrong with white text on a yellow background... 😮
11:07:41 <LordAro> _zephyris: "next time" ? :p
11:43:23 <andythenorth> peter1138[d]: but why are you monitoring my printer? 😦
12:30:09 <peter1138> Well, this code is so old it still has /* $Id$ */ markers :D
12:52:39 *** virtualrandomnumber has joined #openttd
12:58:51 <peter1138> Let's see how long it takes :)
13:40:42 *** virtualrandomnumber has quit IRC (Quit: virtualrandomnumber)
14:10:03 *** iloveyou[m] has joined #openttd
14:17:18 <LordAro> "but devs have abandoned this project and its only in maintainance mode"
14:24:11 <peter1138> That just means we don't ever add any big new features any more, like encrypted passwords in save files...
14:25:48 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
14:25:53 <talltyler> If we added big features then we would be a plague
14:26:04 <talltyler> Or was that when we remove broken things
14:26:48 <talltyler> I can’t wait to see the feedback NotDaylength generates
14:27:09 <peter1138> You know it's going to be totally broken and unusable.
14:27:55 <peter1138> So has anyone tried to upload the original base sets to Bananas yet?
14:28:04 <_pruple> peter1138: something about "that hasn't stopped people using cargodist" 🙂
14:28:24 <rau117> talltyler: Well, the only question I have is why was this done in the first place if it already exists in JGR?
14:28:30 <locosage> there were some original sprites on banasas
14:28:39 <peter1138> locosage, anything by Pikka :p
14:39:21 <rau117> talltyler: But without even trying it, I can say that this is definitely a good feature.
14:40:19 <peter1138> rau117, JGRPP is its own thing, in some places it has diverged from vanilla considerably such that it can be more work backporting changes than to reimplement them.
14:41:05 <peter1138> JGRPP also has lots of features that vanilla devs don't even know about, because... we work on vanilla.
14:47:04 <FLHerne> rau117: the daylength feature in JGRPP is very different from the one talltyler's working on
14:47:44 <FLHerne> there are at least three different effects that people consider to be "daylength" and various ways to introduce them
14:48:37 <FLHerne> the JGRPP version is also not the first (nor second, nor third) patch aimed at slowing 'real' time progression in some way
14:49:05 <rau117> FLHerne: Oh okey, sorry for the hasty conclusion.
14:49:05 <rau117> Probably then it shouldn’t be called notdaylength at all... even if it directly says NOTdaylength, so that there are no such hasty conclusions from other players.
14:49:22 <FLHerne> calling things NotWhatever is a longstanding tradition
14:49:43 <_jgr_> The day length implementation in my branch is effectively the same as the one in ChillPP, SpringPP and predecessors
14:51:04 <_jgr_> Savegame compatibility with those was originally a strong motivation
14:54:37 <FLHerne> in the ChillPP days there were two or three competing patches IIRC
14:56:24 <peter1138> (Although "New" tends to be reserved for NewGRF stuff.)
14:56:55 <FLHerne> note the "Another" in the title, and that it's before the "Not Another" one
14:57:46 <FLHerne> I can't find the one that it's 'another' to yet
14:58:28 <FLHerne> but assuming it exists that does make NotDaylength at least the fourth implementation from scratch
14:59:48 <talltyler> I don’t know how to differentiate something more than naming it “Not X” but I’m open to other names 😛
15:00:21 <peter1138> The "No" stuff was for AI, because we were removing the original AI.
15:00:33 <talltyler> In any case, that’s just what I’m calling the project. None of the in-game text will call it that, nor will any documentation that I create (tutorials, blog posts, etc)
15:01:00 <LordAro> call it Timeslipping or something unnecessarily scifi :p
15:01:28 <peter1138> Call it what it is. A plauge.
15:02:25 <talltyler> The setting is currently called “calendar progress speed”, although that may change whenever it’s time for that PR to get reviewed
15:26:16 <_jgr_> FLHerne: Yes, that where I started from
15:26:42 <_jgr_> The one in ChillPP seems a bit different code wise, looking at it now, but it's functionally the same
15:28:23 <_jgr_> Close enough for loading savegames anyway
15:47:34 *** Wormnest has joined #openttd
16:12:12 <Eddi|zuHause> you found only 4 distinct daylength implementations?
16:13:10 <peter1138> MiniIN probably had one
16:22:36 <FLHerne> User IDs tied to the original CDRom serial key
16:25:12 <_jgr_> Did the CDs even have unique IDs or serial numbers?
16:25:25 <_jgr_> I can't remember where I put mine
16:25:40 <_jgr_> I don't think that modern users would know what to do with data frisbees anyway 😛
16:43:36 <LordAro> _jgr_: you mean the physical save icon
16:43:56 <LordAro> ...or is that just OGFX? i barely pay attention to such things
16:47:01 <Eddi|zuHause> that was the weirdest decision ever...
16:49:18 *** virtualrandomnumber has joined #openttd
16:49:22 *** virtualrandomnumber has quit IRC (Remote host closed the connection)
16:52:49 <FLHerne> I think so, the installer put some key in the Windows registry which I think was unique
16:52:54 <FLHerne> certainly for Locomotion it was
16:53:28 <FLHerne> and yeah, I honestly can't remember when I last used a CD/DVD/Bluray
16:53:41 <FLHerne> several years at a minimum
16:54:21 <jfs> no the Transport Tycoon Deluxe for Windows does not have a serial or anything like that
16:54:29 <jfs> (nor does the DOS version)
16:55:26 *** gelignite has joined #openttd
16:58:09 <_jgr_> Before I got a newer car this summer, I still had to use audio CDs to be able to play music
16:58:16 <_jgr_> (And no, local radio is not OK)
17:26:44 *** HerzogDeXtEr has joined #openttd
17:41:20 <_zephyris> Eddi|zuHause: The CD for save? Yeah, I regret that one...
17:42:27 <Eddi|zuHause> i don't remember ever using CD in a car
17:42:45 <Eddi|zuHause> i also didn't have all that many music CDs
17:53:34 <_glx_> wow I just discovered by accident that windows 11 natively supports tar.gz
17:54:30 <jfs> they added actually useful archive file support in the latest big update
17:54:38 <jfs> it should also do rar and 7z files
17:59:00 <Eddi|zuHause> anyone remember arj? :p
17:59:45 <jfs> I have unpacked arj files, but never had a need to produce them
18:00:02 <kamnet> Not arj, but I do remember first learning about arc in the early 90s
18:30:30 <andythenorth> peter1138: “Super”
19:28:49 <peter1138> std::shared_ptr<std::vector<byte>>
19:29:11 <peter1138> Because there's no std::shared_ptr<byte[]> specialization like for std::unique_ptr :/
19:36:54 <peter1138> So, any NewGRFs with sound I can test?
19:37:29 <talltyler> One of the UKRS version has running sounds, apparently
19:38:07 <talltyler> I made Ticks strongly-typed and now TileIndex is no longer a type name... 🤔
19:38:25 <peter1138> Pikka's probably removed it.
19:39:06 <_jgr_> talltyler: Include cycle or header guard issue, perhaps?
19:39:26 <talltyler> Most likely, just not sure how
19:39:46 <peter1138> My crystal ball says... ooh shiny
19:43:46 *** gelignite has quit IRC (Read error: Connection reset by peer)
19:43:56 <rau117> talltyler: . . . slow forward?
19:48:38 <talltyler> Hmm, it's not caused by the `#include "../core/strong_typedef_type.hpp"`, but by the `using Ticks = StrongType::Typedef<int32_t, struct TickTag, StrongType::Compare, StrongType::Integer>;`
19:49:11 <talltyler> It's the same as Date but with the struct TickTag changed
20:00:19 <talltyler> This might be a bad idea
20:00:45 <talltyler> We do terrible things with ticks
20:01:11 <talltyler> Modulo, storing them in bytes...
20:03:33 <talltyler> The changes in #11435 will be enough for now
20:03:40 <talltyler> Do you want them as a separate PR?
20:10:50 <peter1138> vector works fine, tbh.
20:15:25 <peter1138> I was trying std::make_shared, which is not supported.
20:15:55 <michi_cc[d]> Ah yes, that needs C++20, where make_shared was "corrected" to support array types.
20:16:00 <peter1138> Mixing shared_ptr and new seems to miss the point :)
20:16:15 <peter1138> Can we switch to C++20 yet? :D
20:17:35 *** geli has quit IRC (Quit: Stay safe!)
20:22:05 <peter1138> That was 37 minutes late.
20:28:59 *** nielsm has quit IRC (Ping timeout: 480 seconds)
20:31:43 *** APTX has quit IRC (Ping timeout: 480 seconds)
20:46:05 <LordAro> peter1138: some sort of incident, apparently
21:21:47 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
21:39:26 *** wallabra has quit IRC (Quit: Bowserinator is wrong don't blame iczero)
21:45:40 <andythenorth> a tool to clone an individual vehicle?
21:46:00 <andythenorth> currently, to add a wagon to a train, I have to clone the whole train, drag one wagon over, then delete the cloned train
21:48:01 <peter1138> Clone vehicle rather than clone consist.
21:48:11 <_glx_> you can just buy the wagon
21:49:46 <peter1138> Probability of cheese on crackers?
21:55:22 <andythenorth> _glx_: some grfs have a stupid amount of vehicles
21:55:29 <andythenorth> nested in multiple levels of variant
21:55:45 <andythenorth> and some are random, and there's no quick way to know which vehicle it was
21:56:47 <talltyler> Wonder what silly GRFs do that 😛
21:57:58 <peter1138> It can be random on whether that clones with shared orders, or clones just the wagon.
21:58:16 <peter1138> A callback could set the probabililty of either way.
22:21:02 <emperorjake> andythenorth: I often do this as well haha, it's faster than finding the wagon and buying it normally
22:27:32 <peter1138> _glx_, title does say pre-signal :)
22:28:29 <_glx_> yeah but with presignal it's usually the opposite, it goes unexpectedly green when all platforms are red
22:30:38 <peter1138> Hmm, would detecting a red signal directly after a platform be 1) possible 2) work 3) not have other sideeffects
22:33:03 <_glx_> in this case the "issue" is the station is not centered on the track, so some platforms cost more than others and are not chosen
22:33:53 <peter1138> This shouldn't be down to a player error.
22:34:16 <peter1138> The issue is that the path finder sees that the platform is completely free and chooses that path.
22:34:24 <peter1138> But the signals correctly say no.
22:35:49 <_glx_> path calculation and reservation don't match yes
22:37:22 <peter1138> I suppose this would also happen if there was a plain tile between the red signal and the platform.
22:37:38 <peter1138> The path still cannot be reserved.
22:38:12 <Rubidium> and potentially also when there's not even a platform
22:39:26 <peter1138> Hmm, wasn't there a PR a while ago about multiple paths that might help...
22:40:29 <_glx_> I forced them to procede and they don't even try to reserve past the signal
22:40:36 <peter1138> Rubidium, if I remove all the platforms then the trains do actually take the other paths.
22:41:23 <peter1138> So I think it's affected by thinking it's able to reach the its destination.
22:42:12 <peter1138> _glx_, dangerously closed to "implicit signals in stations" being an actual thing...
22:42:49 <_glx_> forced the first 2, then the 3 other entered flowlessly
22:43:15 <peter1138> Yeah, that's expected :)
22:43:17 <Rubidium> peter1138: there are some (still) open PRs that might help in this case, #10804 and #10807
22:43:47 <peter1138> Is the one I was thinking of.
22:44:00 <peter1138> But I think that's not really right.
22:44:47 <peter1138> Ooh, my bread is baked.
22:46:08 <peter1138> That's a bit more exciting than "Ooh a bug"
22:49:00 <Rubidium> unless you put the bugs on your bread :D
22:49:12 *** wallabra has joined #openttd
22:52:58 <peter1138> Hmm, actually I'm not sure that'll work.
22:53:13 <peter1138> For signed values it excludes the sign bit.
22:57:09 <peter1138> Although the thought occurs that that might be correct.
23:07:22 <peter1138> Also, running sounds in that savegame \o/
23:09:23 <peter1138> I don't think I've heard running sounds since the framerate change.
23:10:10 <peter1138> Everyone said they sound wrong, but could never quantity what was right was meant to be :/
23:28:11 <peter1138> UpdateZPosition() is weird.
23:28:28 <peter1138> We don't do the clear thing because gcc 4.4.5 can't optimize it.
23:29:03 <peter1138> Meanwhile, the codepath is used might well be different by now.
23:30:13 <LordAro> i imagine we don't need to worry about that these days
23:36:17 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
continue to next day ⏵