IRC logs for #openttd on OFTC at 2024-04-14
            
00:08:16 <_glx_> as a bonus it allowed to reintroduce raw strings to GS
00:32:59 *** Eddi|zuHause has quit IRC (Remote host closed the connection)
00:33:28 *** Eddi|zuHause has joined #openttd
00:51:19 *** kstar892[m] has quit IRC (Quit: Client limit exceeded: 20000)
01:03:23 *** gelignite is now known as Guest1057
01:03:29 *** gelignite has joined #openttd
01:10:43 *** Guest1057 has quit IRC (Ping timeout: 480 seconds)
01:27:59 *** wensimehrp has joined #openttd
01:27:59 <wensimehrp> https://cdn.discordapp.com/attachments/1008473233844097104/1228879392382386256/nosync.png?ex=662da61e&is=661b311e&hm=86e985dcc7bf31c1b20c9bef8fa0c2305b0b07b2abfe1214f57518a403c04a21&
01:27:59 <wensimehrp> Is this working as intended?
01:28:23 *** emperorjake has joined #openttd
01:28:23 <emperorjake> Yes, you have it set to amount:planned
01:28:35 <wensimehrp> I know that
01:29:17 <wensimehrp> If it's amount: planned then it should report the amount of cargo that is going to be transported per month I assume
01:29:28 <wensimehrp> and the cargoflow reported a much larger number
01:31:37 <wensimehrp> The numbers don't match
01:51:18 <wensimehrp> https://cdn.discordapp.com/attachments/1008473233844097104/1228885263774777414/image.png?ex=662dab96&is=661b3696&hm=b1d5fd69965137b191e728cf3d7bdb388cf66c39065b19504e288a8adcac4583&
01:51:18 <wensimehrp> It's synced now πŸ€”
02:40:28 *** gnu_jj has joined #openttd
02:44:03 *** gnu_jj_ has quit IRC (Ping timeout: 480 seconds)
02:46:15 *** D-HUND has joined #openttd
02:49:36 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:01:36 *** D-HUND is now known as debdog
03:12:52 *** gelignite has quit IRC (Quit: Stay safe!)
03:23:59 *** calbasi[m]1 has quit IRC (Quit: Client limit exceeded: 20000)
03:30:59 *** gretel[m] has quit IRC (Quit: Client limit exceeded: 20000)
04:11:51 *** keikoz has joined #openttd
04:48:39 *** fiddeldibu[m] has quit IRC (Quit: Client limit exceeded: 20000)
04:50:09 *** freu[m] has quit IRC ()
05:02:53 <DorpsGek> [OpenTTD/OpenTTD] eints-sync[bot] pushed 1 commits to master https://github.com/OpenTTD/OpenTTD/commit/29e932e087b1c520ed5dcb91036b67d64f586a2e
05:02:54 <DorpsGek> - Update: Translations from eints (by translators)
05:49:25 *** HerzogDeXtEr has joined #openttd
05:58:57 *** nielsm has joined #openttd
06:11:03 *** Smedles has quit IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
06:11:08 *** Smedles has joined #openttd
06:47:33 *** Wolf01 has joined #openttd
06:58:15 <andythenorth> given an industry layout, as a matrix of (x, y) tuples, what transformations do I need to rotate the layout 90 degrees, 180 degrees, 270 degrees
07:24:48 <andythenorth> I could do it with trigonometry
07:25:08 <andythenorth> isn't there shortcut using matrix multiplication?
07:26:01 <andythenorth> https://en.wikipedia.org/wiki/Rotation_matrix#Common_2D_rotations
07:33:09 <andythenorth> stack overflow is suggesting linear algebra in numpy
07:33:24 <andythenorth> that's a bit more of a steep learning curve than I was anticipating πŸ˜›
07:34:45 <andythenorth> maybe GPT knows
07:38:28 <andythenorth> GPT suggests e9ab3259738a388d0db2c959/gistfile1.txt
07:38:49 <andythenorth> GPT suggests https://gist.githubusercontent.com/andythenorth/503ddc2474b99ca27e0a87870082ca81/raw/a4b30d8a6e6b05d4e9ab3259738a388d0db2c959/gistfile1.txt
07:48:22 <_zephyris> Looks about right, swap and negate
07:49:08 <_zephyris> Easy enough to work out from the rotation matrix so it the trig terms, which reduce to +/-1 for steps of 9p
07:50:12 <andythenorth> thanks
07:50:25 <andythenorth> I have real blind spots in maths / algorithms πŸ˜›
07:50:44 <andythenorth> it gives me a teeny bit of sympathy for people where maths just makes no sense
07:56:47 *** gelignite has joined #openttd
08:38:01 <alfagamma7> Matrix transformation for industry layout
08:38:06 <alfagamma7> interesting
08:51:06 *** esselfe has quit IRC (Remote host closed the connection)
08:59:29 *** esselfe has joined #openttd
09:07:00 <xarick> 14.0 is launched
09:07:33 <xarick> 14.0 launched on 14-04
09:07:40 <xarick> 2024
09:07:51 <xarick> or was it 13?
09:08:37 <peter1138> I'm launching some coffee.
09:08:52 <truebrain> into your BELLY
09:09:30 <peter1138> Nature made it that way.
09:11:11 <andythenorth> well
09:11:13 <andythenorth> https://cdn.discordapp.com/attachments/1008473233844097104/1228995970772242514/image.png?ex=662e12b1&is=661b9db1&hm=bc33a620fb21b9a01d5a08870e1933c0e268ceae4a0699df128928f23963268c&
09:11:24 <andythenorth> tile xy rotation is working
09:11:24 <peter1138> That's a port, not a well.
09:11:33 <andythenorth> needs sprite rotation also πŸ˜›
09:12:02 <andythenorth> we're not going to add industry sub-layouts to OpenTTD, yes | no?
09:12:20 <andythenorth> "predicting the future is hard"
09:13:01 <truebrain> most reactions to 14.0 are widely positive; that is a shocker
09:15:12 <andythenorth> my experience is that if people had fun making the thing
09:15:19 <andythenorth> then people enjoy it when it's shipped
09:15:38 <truebrain> that is why I am so surprised
09:16:34 <andythenorth> nobody had fun making it? πŸ˜›
09:19:48 <peter1138> Most?
09:19:55 <peter1138> I'm interested in those that are not.
09:20:07 <truebrain> glass half empty kinda guy πŸ˜›
09:20:14 <truebrain> but I had a hard time finding negative reactions, tbh
09:20:27 <truebrain> even on reddit and HackerNews, people were positive
09:22:18 <peter1138> Someone on Steam says the map generator defaults to the old generator... seems unlikely.
09:22:42 <truebrain> yeah, I mentioned that yesterday to 2tt, that I suspect they were toying with it, and forgot about it
09:22:50 <truebrain> as knowing it exists alone means you have toyed with it πŸ˜›
09:24:24 <peter1138> Yup. Default has always been TGP, even when there was an easy way to change it.
09:25:28 <peter1138> Nobody posted anything to the forums πŸ˜„
09:25:41 <peter1138> Unless kamnet is our official forum poster.
09:25:52 <peter1138> But that post is pinned so will mostly be ignored by everyone.
09:26:00 <truebrain> the beta post is also still pinned
09:27:30 <andythenorth> yeah the pin makes it hard to find the 14.0
09:27:37 <andythenorth> there are 2 posts about delay that catch the eye instead
09:27:54 <truebrain> I used to not pin release post for a while, just so it was more visible
09:28:10 <truebrain> but that was in a time people also actually used the forums πŸ™‚
09:28:16 <peter1138> I've unpinned and changed the title
09:28:51 <truebrain> still weird tt-forums had an "official" post about the "delay"
09:28:59 <truebrain> I like it more if our socials are all in sync πŸ™‚
09:29:21 <peter1138> That was posted on Reddit as well.
09:29:45 <peter1138> And probably Steam.
09:29:56 <peter1138> I'm not sure why.
09:30:25 <peter1138> Thanks for bumping the thread andy πŸ˜„
09:30:56 <truebrain> yeah, but none of them initiated via us
09:31:04 <truebrain> so with the best of intentions, I do not like socials to be out of sync like that πŸ™‚
09:32:01 <andythenorth> peter1138: "delayed" was above "released" πŸ˜›
09:36:15 <truebrain> okay, reading up on socials .. I know a solution πŸ˜„
09:36:36 <peter1138> Have none πŸ˜„
09:37:28 <truebrain> kamnet: I really appreciate the proactive stance you take with communication on socials etc. For any next time (and I really hope there isn't another 'delay' like this), would you mind terribly following our normal flow for this. As in: PR on our website repo with a short text, with socials texts in there. That way we all push the same information to all socials at the same time πŸ™‚
09:37:28 <truebrain> This btw holds for anyone who wants to help out. It is always appreciated, but please involve us in the flow of information πŸ™‚
09:37:51 *** johnfranklin has joined #openttd
09:37:51 <johnfranklin> andythenorth: 90deg: (-y, x)
09:37:51 <johnfranklin> 180deg: (-x, -y)
09:37:51 <johnfranklin> 270deg: (y, -x)
09:38:21 <peter1138> The weird part of the delayed message was... we had no announced release date, and the use of "delayed indefinitely" which, while literally might mean undefined delay, in general use is code for "cancelled"
09:38:46 <truebrain> that is why we normally create a PR first, so we can all pitch in getting the message right πŸ™‚
09:38:57 <truebrain> peer reviewing has its benefits πŸ™‚
09:40:50 <peter1138> Okay but what music shall I put on today...
09:41:32 <truebrain> green, with a stripe of purple
09:41:36 <truebrain> would be my suggestion πŸ™‚
09:41:57 <peter1138> Smells good.
10:01:33 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #12495: Codechange: Use directory_iterator to find language files. https://github.com/OpenTTD/OpenTTD/pull/12495
10:04:20 <peter1138> I get rid of ttd_opendir eventually, but this is just a smaller step.
10:06:54 <peter1138> Although having thoughts about how to neatly use OTTD2FS/FS2OTTD consistently.
10:07:59 <peter1138> Difficult with our define for fopen() as it is right now.
10:21:09 *** rau117 has joined #openttd
10:21:09 <rau117> Is titlegame (opntitle.dat) now being loaded from some other location? At the moment my openttd 14.0 loads just the standard titlegame (like from master builds), but ../openttd-14.0/baseset/opntitle.dat contains exactly what it should - the save of the titlegame competition winner
10:23:44 <rau117> I guess this is due to the fact that after some update it was no longer enough to β€œplace X in the game folder” for X to take priority over /docs/openttd/X
10:23:44 <rau117> at least openttd.cfg must be explicitly specified in the game shortcut…
10:25:50 <peter1138> Open the console and type `list_dirs baseset`
10:26:07 <peter1138> I believe that is listed in the order it will look for `opntitle.dat`.
10:28:28 <peter1138> Seems the order might have changed since 13.4, with my GOG installed version I get the GOG path first, with the Steam 14.0 version the Steam path is 3rd.
10:28:35 <_glx_> If there's one in documents, it takes priority
10:29:04 <DorpsGek> [OpenTTD/OpenTTD] hmkemppainen commented on issue #12492: [Bug]: The description for "minutes per year" could improved https://github.com/OpenTTD/OpenTTD/issues/12492
10:29:37 <peter1138> Not sure if the change was intentional, but it feels the order is correct now.
10:30:02 <peter1138> As glx says, the one in your documents should take priority.
10:36:50 <truebrain> there were some changes in what order is looked for what files, yes πŸ™‚
10:37:05 <rau117> Eh, even if this is intended, it has become much less convenient (and maybe even impossible) to create separate versions of the game while maintaining the ability to use common content.
10:38:09 <truebrain> the changes did not change what setups were possible; so I doubt the "impossible" is valid
10:42:11 <peter1138> If you don't want to override `opntitle.dat`, don't put it in a place that will override it.
10:42:47 <peter1138> There is no reason to have one in your documents directory.
10:46:41 <DorpsGek> [OpenTTD/OpenTTD] hmkemppainen commented on issue #12492: [Bug]: The description for "minutes per year" could improved https://github.com/OpenTTD/OpenTTD/issues/12492
10:49:47 <peter1138> Twitter: 23 reposts, 77 likes.
10:49:47 <peter1138> Fediverse: 155 boosts, 211 likes.
10:49:48 <peter1138> Nice πŸ˜„
10:49:55 *** gelignite has quit IRC (Quit: Stay safe!)
10:49:56 <truebrain> you go girl!
10:50:49 <kamnet> truebrain: I'll try to remember, but to be honest I've been experiencing some health-related memory issues for awhile now, so I may not remember. But if somebody shoots me some text and asks me to post it, I can do that no problem πŸ™‚
10:51:08 <truebrain> no, it is more the other way around πŸ™‚
10:51:30 <truebrain> if you want to communicate things like "release is delayed!", please check in with us πŸ™‚
10:51:44 <truebrain> streamlines the whole process, and makes everyone aligned on the content πŸ™‚
10:53:45 <peter1138> Oh, and 1 vs 9 comments.
10:58:28 *** ahyangyi has quit IRC (Quit: User went offline on Discord a while ago)
11:03:58 <peter1138> Okay, more rabbit holes.
11:04:06 <truebrain> oh-oh
11:10:33 *** klote has joined #openttd
11:10:33 <klote> Hi did you make any changes on RCON in 14?
11:10:53 <klote> is it still listening to the same port?
11:15:35 <klote> https://cdn.discordapp.com/attachments/1008473233844097104/1229027267309473942/image.png?ex=662e2fd6&is=661bbad6&hm=04c26ed0738e8cb301f931e9d049429b50ba90654fba41fe2489b8ef92bf6a5b&
11:15:35 <klote> this isnt correct right?
11:15:48 <klote> its part of secrets but that part should be 14?
11:17:35 <peter1138> If you mean admin protocol, I think <https://github.com/OpenTTD/OpenTTD/pull/11140> touches it.
11:18:18 <truebrain> klote: `version_string` is not part of `secrets.cfg` (but of `openttd.cfg`). But as we don't remove entries from configuration files, once it ends up in there, it will remain in there. So safe to ignore.
11:18:19 <klote> yeah admin protocol
11:18:33 <klote> ok
11:18:45 <klote> So you dint change anything with admin protocol?
11:19:01 <klote> my discord bot doesnt seem to even connect with the server :/
11:38:57 *** Ox7C5 has joined #openttd
11:47:50 <andythenorth> grf industry terraforming? πŸ˜›
11:51:11 *** HerzogDeXtEr1 has joined #openttd
11:57:28 *** HerzogDeXtEr has quit IRC (Ping timeout: 480 seconds)
12:39:59 <truebrain> for every 2 players playing OpenTTD according to Steam, we receive 1 survey
12:40:06 <truebrain> that is a lot more than I could have hoped for
12:47:09 <truebrain> in other news, turns out that serving a 1MB image in a blog post isn't the best idea πŸ˜› It makes loading that page kinda slow for slower connections πŸ˜„
12:47:49 <michi_cc> Which blog post was that?
12:48:31 <truebrain> _zephyris: 's ofc πŸ˜›
12:49:15 <_zephyris> Oops... Sorry!
12:49:27 <truebrain> so we had 40k unique visitors on our release post in the last 24h. That resulted in 2k unique visitors for the timekeeping blogpost, and 1.3k for unbunching
12:49:31 <truebrain> I think talltyler is popular
12:49:44 <truebrain> fonts were goof for 0.7k
12:49:57 <truebrain> (and infra for 0.1k πŸ˜› )
12:50:54 <truebrain> and 270GB got downloaded in the last 24h from BaNaNaS, with 50k downloads .. nom nom nom
12:51:22 <truebrain> ISR being most popular NewGRF
12:51:44 <truebrain> followed, but it is not even a close win, by FIRS
12:52:52 <andythenorth> truebrain: Image CDN time πŸ˜›
12:53:04 <truebrain> I could have enabled it
12:53:07 <truebrain> but ... meh
12:54:01 <truebrain> lol, of the 10k (!) survey results, 800 were refused due to rate limiting (where people send a report more than once a minute)
12:54:08 <truebrain> still, the survey results will be fun tomorrow πŸ™‚
12:56:51 <michi_cc> truebrain: These could be a case of: oh, map looks not good, try again (and again)
12:57:00 <truebrain> yup
12:57:05 <truebrain> it is why the rate limiter is in place πŸ™‚
12:57:11 <truebrain> still, I did not expect 1:10 πŸ™‚
12:58:16 <peter1138> Hmm, using -c means I can't have content_download in a shared place.
12:58:36 <truebrain> only with -X, not?
12:59:13 <peter1138> Oh, well it uses the shared content_download, but it doesn't download into it.
12:59:23 <truebrain> that might be correct, yes πŸ™‚
13:00:11 <truebrain> we try to load files from many places, but only store it in one. And when you use `-c`, you tell the game: please store my files around this location πŸ™‚
13:02:00 <truebrain> ghehe, I am looking at the survey results of yesterday .. was mostly curious about yapf. We were correct in that most settings are totally unused. And as was already commented in one of those PRs by someone, only 1 stands out as actively used πŸ™‚
13:02:06 <truebrain> `game.settings.pf.yapf.rail_firstred_twoway_eol` πŸ˜„
13:02:26 <FLHerne> truebrain: any map information in the survey result? it would be neat to know which maps people think suck
13:02:37 <truebrain> any setting
13:02:48 <truebrain> https://survey.openttd.org/
13:02:51 <truebrain> check for yourself
13:03:09 <FLHerne> so the answer to what I meant is "no" :p
13:03:28 <truebrain> the answer is: open the bloody site yourself and look if what you are looking for is in there πŸ˜›
13:03:39 <truebrain> as "any map information" is as vague as one can be
13:03:43 <truebrain> the answer is, by definition: yes
13:03:49 <truebrain> defining "any" as: do they have a map?
13:03:50 <truebrain> πŸ˜„
13:03:56 <FLHerne> probably the heightmap, or even just boolean 'water?'
13:04:43 <FLHerne> if people are repeatedly generating maps with the same settings until they get one that doesn't suck
13:05:03 <peter1138> How does "the data is all here" end up as "no"?
13:05:44 <FLHerne> knowing the settings wouldn't be useful
13:05:58 <FLHerne> it would be if they're tweaking the settings until it generates what they want
13:06:33 <talltyler> Someday ℒ️, Somebody ℒ️ will write a land generator that shows a preview before fully generating the map πŸ˜›
13:06:34 <truebrain> lol, still funny, that we have more Linux players than MacOS
13:06:36 <FLHerne> but I would naΓ―vely assume that most people know what settings they find best
13:06:57 <peter1138> /me hands 2TallTyler a proper unicode β„’.
13:07:00 <FLHerne> the great thing is that that assumption is disprovable now :p
13:07:00 <talltyler> Although sometimes I reject a map based on industry and town placement, which wouldn’t be in a land preview
13:07:10 <truebrain> holy crap, 50% of the players have Discord installed πŸ˜›
13:07:22 <talltyler> peter1138: Thanks, pity I can’t type Unicode on my phone πŸ™‚
13:07:55 <truebrain> and 94% of the players have Steam installed πŸ˜›
13:07:59 <peter1138> β„’ I can all day
13:08:05 <truebrain> I think Steam was a good move πŸ™‚
13:08:31 <peter1138> https://cdn.discordapp.com/attachments/1008473233844097104/1229055688353775646/Screenshot_20240414-140809.png?ex=662e4a4e&is=661bd54e&hm=9d743579f81ef9a519ad07546923f407fa5b7bb2a70b1358c88ed5e15766c1b1&
13:08:38 <peter1138> Wow that comes out big lol
13:08:49 <truebrain> sorry, I couldn't see, what was there?
13:09:11 <FLHerne> it's a screenshot of a phone keyboard with β„’ circled
13:09:19 <truebrain> zero users use the GOG plugin πŸ˜›
13:09:37 <truebrain> FLHerne: I see you didn't get the sarcasm; great
13:09:58 <FLHerne> I am definitely not very bad at sarcasm
13:10:10 <truebrain> average savegame size is ~4MB
13:10:25 <peter1138> Are you sneaking viewing the results that aren't published yet?
13:10:28 <truebrain> that all from ~10h of stats, to be clear πŸ˜›
13:10:28 <truebrain> yes
13:10:40 <truebrain> needed to know if it actually worked!
13:10:45 <FLHerne> that's probably a bit big to upload 1,000 of per hour :p
13:10:57 <FLHerne> (disregarding the privacy concerns)
13:12:08 <truebrain> funny, there are also some reports because the game crashed. But, it shows that when the game crashes, it happens very quickly after start
13:12:10 <truebrain> not hours in a game
13:12:37 <truebrain> well, Monday will be fun, but the Monday after even more, as that will have a full week of 14.0 πŸ™‚
13:15:11 <truebrain> right .. finally this will also tell me if automated crash reports will be a volume we can handle or not πŸ™‚
13:16:12 <peter1138> Don't forget the "crash" of "map could not be generated"...
13:16:26 <truebrain> ghehe
13:35:28 <kuhnovic> Do we know what percentage of players have survey result submission enabled? I guess that's a bit of a catch 22, because sending the result of the yes/no decision could still be considered submitting private user data...
13:35:45 <truebrain> kuhnovic: we do not (for all the obvious reasons you already figured out)
13:35:58 <kuhnovic> Too bad, but understandable
13:36:05 <truebrain> not all that important, tbh
13:36:19 <truebrain> if we make a conclusion based on the results, and someone goes: "but I play that way", well, no offense, you should have shared that info with us πŸ˜›
13:36:27 <truebrain> (ghehe, that is such an evil statement, it is funny)
13:37:04 <kuhnovic> Well if we knew that 80% of the players submit their results then the results would be a lot more conclusive than say if only 15% submitted it
13:37:26 <truebrain> still, that 15% is most likely an average of the population
13:37:34 <kuhnovic> truebrain: A bit evil, but justified πŸ˜›
13:37:35 <truebrain> so as long as we have large numbers, we can conclude things based on it πŸ™‚
13:38:21 <kuhnovic> It will be useful information anyway
13:38:38 <truebrain> it is more than we had before πŸ˜‰
13:39:43 <_glx_> we had wet finger before
13:39:43 <kuhnovic> A lot more! We were essentially flying blind. Worked pretty alright though πŸ˜‰
13:40:34 <truebrain> I just want to remove some settings; the whole reason I did this πŸ˜› But sssttttt
13:40:38 <kuhnovic> A gut feeling. Potentially influences by coffee, in more ways than one.
13:41:17 <_glx_> I guess we soon will be able to drop NPF πŸ™‚
13:41:25 <truebrain> and most of yapf settings πŸ˜›
13:41:57 <kuhnovic> And unbunching... Oh no wait, not that one
13:42:41 <truebrain> hmm .. did not think about adding stats about types of orders used
13:42:50 <truebrain> load, fulload, unbunching .. would have been useful to see
13:42:51 <truebrain> owh well
13:48:30 <talltyler> Something for 15.0 πŸ™‚
13:49:39 <truebrain> or 14.1 πŸ˜›
13:49:50 <kuhnovic> truebrain: I vote for this
13:49:56 <truebrain> build it! πŸ˜›
13:50:21 <truebrain> would most likely mean it would first need to go to some GUI, so the user can also actively see it πŸ˜›
13:50:28 <truebrain> much like how many rails there is etc
13:52:56 <kuhnovic> Why would the user have to see it? Seems mostly interesting for devs
13:58:47 <truebrain> Β―\_(ツ)_/Β―
14:03:48 <_jgr_> That seems like something that could be put in the output of a console command, similar to dumpinfo, etc
14:04:11 <truebrain> makes sense
14:14:42 <peter1138> Damn it, I got sidetracked again 😦
14:35:04 <peter1138> Iron Horse 3.19 + Debug build = Nope.
14:37:09 <_glx_> slow loading ?
14:37:16 <peter1138> Yup
14:37:19 <_glx_> add FIRS πŸ˜‰
15:34:15 <locosage> truebrain: it's probably more the case of "recently changed" than "actively used"
15:39:32 *** Wormnest has joined #openttd
15:54:55 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
17:00:16 *** gelignite has joined #openttd
17:34:35 <truebrain> meh; as I now have a single license in a JSON file, it is roughly 1MB. And the way git works, you have to send a 1MB blob if you want to change only a single line in that 1MB blob. I wanted to do it via the browser, but it is a bit rude to send 1MB of data for every string you translate πŸ˜„ So I guess I do need a server component πŸ˜› Not a biggy, but sometimes git is just annoying enough to work with
17:34:35 <truebrain> πŸ™‚ (talking about eints replacement, for context)
17:35:29 <michi_cc> File per string you say? πŸ˜›
17:35:36 <truebrain> I did suggest that, but it got shot down
17:35:51 <truebrain> it was called insane, or something similar πŸ˜›
17:36:25 <truebrain> I was hoping GitHub had an endpoint you could send a diff too, but it seems that doesn't exist πŸ™‚
17:36:36 <truebrain> makes sense, as that is just not how git works, but still .. now I need to make such an endpoint πŸ˜›
17:37:36 <michi_cc> We don't have that many strings, so I don't see any principal problem for file per string. Would also make log as usefull as a blame, but eh, I'm not coding it, so there's certainly some reason against it.
17:38:05 <truebrain> 5000 files per language is also pushing the amount of files you put in a single repository
17:38:11 <truebrain> that has other (performance related) issues
17:38:27 <truebrain> fetching the full tree alone would be insane πŸ˜›
17:38:32 <michi_cc> Isn't that mostly GitHub's problem? πŸ˜›
17:39:02 <truebrain> I did consider grouping strings, but that is also tricky
17:39:42 <michi_cc> Technically speaking, for compiling/building the language file, you can walk the git tree without actually making a proper working dir.
17:40:05 <truebrain> yeah; just the tree object would on its own be rather large
17:40:23 <michi_cc> Mostly identical data compresses will, though.
17:40:51 <truebrain> that said, GitHub does have an endpoint to update a file
17:40:57 <truebrain> so that means they take care of fixing up the tree again
17:41:02 <truebrain> that makes it their problem again πŸ˜„
17:41:47 <truebrain> but I do need to send the current sha of the file
17:41:50 <truebrain> when updating
17:42:12 <truebrain> but they also have an endpoint for that
17:42:17 <truebrain> so in theory, it would be possible πŸ˜›
17:42:37 <truebrain> (in the past, I had to manipulate the tree myself when using the GitHub API; but it seems they have enough endpoints in this case to avoid that)
17:42:57 <peter1138> Is this going to end up as a commit per change?
17:42:58 <truebrain> still, 5000 API calls for a translator to load in their language file .. still not cool πŸ˜›
17:43:19 <truebrain> peter1138: dunno; what ever works, I guess
17:43:30 <truebrain> (not in OpenTTD repo btw; that will remain what it is)
17:43:57 <truebrain> `This API has an upper limit of 1,000 files for a directory. If you need to retrieve more files, use the Git Trees API.`
17:44:05 <truebrain> okay, it is not a valid option michi_cc πŸ˜„
17:44:50 <truebrain> as fetching the tree is more expensive than having this single JSON πŸ™‚
17:45:46 <truebrain> well, at least having a small server that receives new translations and forms that into a commit is less expensive than eints. So there is that πŸ™‚
17:46:13 <truebrain> they also shut down subversion services; that would have been a nice cheat too πŸ˜„
18:13:03 <peter1138> Ah yes, single-track with passing places is not ideal with unbunching πŸ™‚
18:26:15 *** isosys has joined #openttd
18:26:15 <isosys> How did we have ports to consoles like PSP, and Nintendo DS with the code being licensed under GPL?
18:26:15 <isosys> I was reading around and most consoles require a NDA to access their SDK, and you can't share the received SDK. But GPL requires you to share, right?
18:27:10 <truebrain> we had Nintendo DS?
18:27:22 <truebrain> anyway, GPL has this clause where OS libraries do not need to be licensed under GPL
18:30:28 <isosys> But aren't you required to share everything needed to build the executable?
18:30:38 <truebrain> no?
18:31:01 <truebrain> your IDE also doesn't need to be GPL
18:31:25 <truebrain> tools that process the information is not under the influence of the license they are processing
18:31:36 <truebrain> I am not sure I follow the line of questioning, I ahve to admit πŸ™‚
18:32:11 <merni> isosys: If so, we couldn't use MSVC to build Windows builds (as we do)
18:32:28 <DorpsGek> [OpenTTD/OpenTTD] isacvandunem commented on issue #12433: [Bug]: vehicle number and group name are a bit too close https://github.com/OpenTTD/OpenTTD/issues/12433
18:37:00 <isosys> truebrain: I was questioning myself how feasible it is to port OpenTTD to Nintendo Switch, and stumbled on a post claiming that it is impossible to legally port GPL games to consoles due to the NDA to access those consoles' SDK.
18:37:44 <merni> That's a legal question which I don't think any of us are very qualified to answer
18:37:48 <merni> Nothing openttd-specific about it
18:38:49 <isosys> I am aware. But since there were ports to console in the past, I thought you might have an answer
18:38:56 <truebrain> isosys: ah πŸ™‚ Well, working with non-open SDK is always a bit dicy, and depends on how "pure" you are in terms of Open Source
18:39:18 <merni> https://wiki.openttd.org/en/Archive/Compilation%20and%20Ports/Nintendo%20DS <- it seems like the DS port asked users to patch something themselves... maybe that was a way of getting around it?
18:40:42 <truebrain> but most of those platforms do not allow GPL code on their store etc
18:40:44 <truebrain> so it is meh anyway
18:44:16 <kamnet> Is this still accurate for max length if you've changed max_bridge_size to something other than its default? https://wiki.openttd.org/en/Manual/Base%20Set/Bridge%20types
18:44:54 <truebrain> anyway isosys , GPL has a linking exception for libraries that are part of the OS. One can have a long argument whether the Nintendo SDK only has "OS" libraries, and as such it is fine to link GPL software against it
18:44:59 <truebrain> but all of this is just what you use GPL for
18:45:08 <truebrain> I use it to be in the spirit of "develop your code open"
18:46:14 <truebrain> so the letter of the license is not as important as your intention with it
18:47:47 <truebrain> (it is why I like MIT license more)
18:48:05 <truebrain> but yeah, GPL hasn't been in court a lot yet, so it is always hard to know what the legal line is here
18:48:32 <truebrain> but for the Ninendo SDK the best example is Windows kernel32.dll .. you also don't know the source of that. Yet any application you have links against it
18:48:40 <truebrain> (on windows πŸ˜› )
18:52:55 <isosys> truebrain: Fair point I should have started my research there. It is fairly useless if it requires to hack your console.
18:52:55 <isosys> Regardless, thanks for your answer and your time. Much appreciated πŸ‘
18:53:22 <truebrain> no worries
18:54:47 <kamnet> isosys: I wouldn't say that at all. People who are looking for software outside of officially released titles on their consoles and video game systems are accustomed to doing those things.
18:55:44 <frosch123> truebrain: progress for this weekend: https://github.com/frosch123/nile-validator/tree/wip/src
18:55:47 <frosch123> more later
18:56:04 <truebrain> nice; will take a look a bit later πŸ˜„
18:56:44 <frosch123> there are some weird things, which i do not yet quite know how to handle
18:57:04 <frosch123> for example, "cases" are only supported by newgrf and ottd, but denied to gs
18:58:12 <frosch123> and ascii-control codes (tab, cr, lf) are also weird. eints strips them from the input very early. but that makes it harder to report error locations...
18:58:29 <truebrain> so don't strip them πŸ˜›
18:59:27 <frosch123> how would you like to display new-lines in the translator? keep the "{}" as in all translators of the past, or use "\n"?
19:01:22 <truebrain> I do not know what works best, I have to admit
19:01:27 <truebrain> so both sound fine by me
19:02:06 <truebrain> but the validator should work on the raw string
19:02:07 <frosch123> i'll go with {} first, it's easier to report that in messages
19:02:12 <truebrain> then any modification should be made after
19:02:15 <truebrain> so stripping of things etc
19:02:24 <truebrain> validator should allow it, then nile should strip them after, imo
19:03:07 <frosch123> yes, i intent to have separate methods for validations, and various degrees of sanitation and normalisation
19:03:49 <frosch123> i think i have the most annoying parts of parsing and the insanely long command list done
19:04:04 <frosch123> next is the fun part :p
19:04:26 <truebrain> yeah, and that way you can report exact positions back for problems
19:09:42 <truebrain> you wrote a lot of code πŸ™‚
19:11:21 <frosch123> did ? 200 LOC logic, 400 LOC tests, 1100 LOC of completely stupid table
19:12:35 <frosch123> which is even less readable after cargo-fmt than the one-line-per-command i adapted from eints
19:13:04 <truebrain> macros!
19:13:19 <truebrain> and tests? Where are tests?
19:13:28 <frosch123> parser.rs has tests
19:13:41 <truebrain> ugh, tests in source files, ugh πŸ˜›
19:14:08 <frosch123> isn't that rust's style?
19:14:19 <truebrain> no clue, tbh
19:14:55 <frosch123> well, it's how i learned it. it works for testing private stuff
19:15:25 <truebrain> it requires small source files, which is good πŸ™‚
19:17:24 <frosch123> most source files are smaller than your 1MB json
19:17:46 <truebrain> comparing source with data files, nice πŸ™‚
19:18:25 <frosch123> i have no idea whether the command table is more source or more data
19:18:40 <truebrain> also not where the tests are πŸ˜›
19:18:45 <truebrain> not sure what flex you try to pull here
19:18:47 <truebrain> but it makes little sense πŸ˜„
19:20:57 <frosch123> don't worry, i just wanted to tease you with your storage struggles
19:21:06 <truebrain> as am I πŸ˜‰
19:21:57 <truebrain> decided I am going to test Cloudflare D1 and Durable Objects
19:22:06 <truebrain> just because I never done that, and sounds like a good solution for my struggles πŸ™‚
19:26:56 <truebrain> what I like about test-cases like this, for any error / issue we find, we can add a test case to make sure they never resurface again πŸ™‚
19:29:53 <frosch123> i like them because i can run my code without wasm and js and crap :p
19:30:07 <truebrain> that is why I made `main.rs` too
19:30:56 <frosch123> yes, i saw that, i did not know you can have both main.rs and lib.rs
19:31:04 <truebrain> sure you can; it is Rust
19:32:42 <truebrain> I also like I could abstract away all wasm stuff to one file, and have the rest in pure Rust πŸ™‚
19:32:49 <truebrain> it only needs a serializable object, which is easy πŸ˜„
19:35:44 <truebrain> btw, I am going to rename the import tool repo to just "tool"
19:35:53 <truebrain> as I also need a tool to create summary reports
19:39:40 <truebrain> will need this validator library to know how many are "invalid" ofc πŸ˜›
19:39:59 <truebrain> and maybe we should rename validator to nile-library
20:18:53 <DorpsGek> [OpenTTD/OpenTTD] michalc started discussion #12496: Autosaving in game time rather than real time https://github.com/OpenTTD/OpenTTD/discussions/12496
20:33:58 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #12491: Codechange: Introduce FioRemove() to remove files. https://github.com/OpenTTD/OpenTTD/pull/12491#pullrequestreview-1999741146
20:46:36 *** Smedles has quit IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
20:46:42 *** Smedles has joined #openttd
20:47:45 <truebrain> `I really appreciate the work that went into writing the blog posts! They could easily have been left out and everybody would have been just as happy. It's really interesting to read about the challenges faced and how they were approached. Thank you!` - Steam user
20:48:25 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on discussion #12496: Autosaving in game time rather than real time https://github.com/OpenTTD/OpenTTD/discussions/12496
20:52:13 *** Ox7C5 has quit IRC ()
20:57:35 <DorpsGek> [OpenTTD/OpenTTD] 2TallTyler commented on discussion #12496: Autosaving in game time rather than real time https://github.com/OpenTTD/OpenTTD/discussions/12496
21:09:37 *** nielsm has quit IRC (Ping timeout: 480 seconds)
21:14:23 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:19:17 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #12495: Codechange: Use directory_iterator to find language files. https://github.com/OpenTTD/OpenTTD/pull/12495#issuecomment-2054187219
21:27:29 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #12495: Codechange: Use directory_iterator to find language files. https://github.com/OpenTTD/OpenTTD/pull/12495#issuecomment-2054189207
21:27:52 *** gelignite has quit IRC (Quit: Stay safe!)
21:32:08 *** HerzogDeXtEr1 has quit IRC (Read error: Connection reset by peer)
21:32:22 <_glx_> oh of course we use macros
21:34:21 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:00:29 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #12495: Codechange: Use directory_iterator to find language files. https://github.com/OpenTTD/OpenTTD/pull/12495#pullrequestreview-1999751752
22:05:37 <DorpsGek> [OpenTTD/OpenTTD] JGRennison opened issue #12497: [Bug]: Vehicle::motion_counter for articulated train engine parts no longer updated due to #12229 https://github.com/OpenTTD/OpenTTD/issues/12497
22:27:50 <peter1138> Hmm, that suggests articulated road vehicle parts also don't have a motion counter.
22:31:33 <_glx_> `It is only valid for the first vehicle in a consist (i.e. use VarAction2 type 82!)` so it's a bug in the grf actually
22:33:07 <peter1138> Well that's interesting πŸ™‚
22:34:32 <_glx_> our code now matches the spec πŸ™‚
22:42:11 <DorpsGek> [OpenTTD/OpenTTD] PeterN opened pull request #12498: Fix #12497: Add workaround for motion_counter being implemented correctly. https://github.com/OpenTTD/OpenTTD/pull/12498
22:43:54 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12491: Codechange: Introduce FioRemove() to remove files. https://github.com/OpenTTD/OpenTTD/pull/12491
22:57:29 <DorpsGek> [OpenTTD/OpenTTD] PeterN merged pull request #12495: Codechange: Use directory_iterator to find language files. https://github.com/OpenTTD/OpenTTD/pull/12495
23:07:14 *** Flygon has joined #openttd
23:18:40 *** bertvvvs has joined #openttd