IRC logs for #openttd on OFTC at 2021-08-14
            
00:34:09 *** Osai has joined #openttd
00:41:53 *** Yexo has joined #openttd
01:11:59 *** Osai has quit IRC (Ping timeout: 480 seconds)
01:12:00 *** Yexo has quit IRC (Ping timeout: 480 seconds)
01:33:48 *** Hirundo has joined #openttd
01:51:23 *** Wormnest_ has quit IRC (Quit: Leaving)
01:56:30 *** Yexo has joined #openttd
02:01:21 *** Hirundo has quit IRC (Ping timeout: 480 seconds)
02:04:54 *** glx has quit IRC ()
02:14:07 *** Osai has joined #openttd
02:16:39 *** SmatZ has joined #openttd
02:24:49 *** Osai has quit IRC (Ping timeout: 480 seconds)
02:31:06 <DorpsGek> [OpenTTD/OpenTTD] camelCaseCo commented on pull request #9203: Change: Use gender-neutral pronouns https://git.io/JRb4Q
02:52:46 *** Yexo has quit IRC (Ping timeout: 480 seconds)
02:54:03 *** D-HUND has joined #openttd
02:57:26 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:12:45 *** Tirili has quit IRC (Quit: Leaving)
03:12:56 *** Tirili has joined #openttd
03:15:05 *** Tirili has quit IRC ()
03:17:58 *** Flygon has joined #openttd
03:19:29 *** planetmaker has joined #openttd
03:19:29 *** ChanServ sets mode: +o planetmaker
03:28:16 *** planetmaker has quit IRC (Ping timeout: 480 seconds)
03:28:19 *** SmatZ has quit IRC (Ping timeout: 480 seconds)
05:39:49 *** Hazzard has joined #openttd
05:46:33 *** sla_ro|master has joined #openttd
06:04:09 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #9203: Change: Use gender-neutral pronouns https://git.io/JRNTE
06:39:21 *** Hazzard has quit IRC (Ping timeout: 480 seconds)
06:49:03 *** nielsm has joined #openttd
07:18:38 <TrueBrain> lol
07:20:11 *** D-HUND is now known as debdog
07:21:47 *** Progman has joined #openttd
07:32:18 <TrueBrain> "Some Features from the Original Game aren't in the Game. Just a mess. "
07:32:21 <TrueBrain> I love some reviews :D
07:33:32 <TrueBrain> "This is a great game, but I'm giving it a negative review because you shouldn't be getting it off of Steam." :D
07:34:10 <LordAro> from Steam*
07:34:28 <TrueBrain> yes, you go correct reviews on their perfect linguistic skills :P
07:34:36 <LordAro> :p
07:34:39 <TrueBrain> you are weird :D
07:35:01 <LordAro> "off of" irritates me more than anything else
07:35:45 <TrueBrain> does that happen a lot, "off of"?
07:35:57 <LordAro> increasingly so
07:36:08 <TrueBrain> "getting it off" is a saying or something?
07:36:24 <TrueBrain> (my mind just skipped the "off", as it didn't make sense :D )
07:36:37 <LordAro> exactly!
07:37:04 <LordAro> it should always be "from", or just "off"
07:37:30 <TrueBrain> either way, it is gatekeeping, that whole sentence :D
07:37:54 <TrueBrain> top review comments are still: multiplayer needs to be easier, and we need tutorials
07:38:49 <TrueBrain> "Everyone giving this a great rating said they used to play it a long time ago but notice how none of them have even had the game open for 1 full hour. Everyones like I LOVE THIS GAME (.01 hours) I GREW UP WITH THIS GAME (.4 hours)"
07:38:56 <TrueBrain> that is also cute :)
07:39:09 <TrueBrain> Steam Player time is the only metric, ofc :)
07:39:37 <TrueBrain> "THIS GAME IS A FORTNITE RIP OFF DO NOT DOWNLOAD IT STEAL FROM FORTNITE " <- eeeeuuuuhhhhhh
07:41:27 <LordAro> is there anyway to get a graph (histogram or something) of player time?
07:41:46 <TrueBrain> I think the admin part has it, let me check
07:42:33 <TrueBrain> Lifetime total units (?) 693,916
07:42:54 <TrueBrain> https://cdn.discordapp.com/attachments/273533192601075712/876007939691913246/unknown.png
07:43:18 <TrueBrain> Average time played 4 hours 20 minutes
07:43:26 <LordAro> well, that's probably fairly typical
07:43:50 <LordAro> wonder how many of those 1-10min are those who ran into the opengl issues on first release...
07:44:04 <TrueBrain> funny that like 30% of the people who installed it, quit before the 10 minute mark :P
07:44:17 <TrueBrain> but yeah, it is what I would expect :)
07:44:27 <TrueBrain> 100k people played it more than 200 minutes
07:44:32 <TrueBrain> "OpenTTD is dead", lolz
07:45:08 <TrueBrain> @calc 500000 * 0.04
07:45:08 <DorpsGek> TrueBrain: 20000
07:45:14 <TrueBrain> 20k people player it over 20 hours
07:45:21 <TrueBrain> player = played
07:46:02 <TrueBrain> anyway, if we review/merge the "Remove Lobby Window" PR, it might be a good time to start a new release? (beta, RC, ..).
07:46:34 <LordAro> a new release/first beta *before* christmas? :o
07:46:45 <LordAro> but yeah, seems a good idea
07:47:15 <TrueBrain> we need some miles on this STUN stuff :P Really curious how stable it is
07:48:00 <LordAro> indeed
07:48:08 <LordAro> bet it's not had much use yet :p
07:48:25 <TrueBrain> nope .. some people tried for a bit
07:48:31 <TrueBrain> but no useful load
07:48:40 <TrueBrain> our nightlies really are dead :P
07:51:50 <TrueBrain> oof, that means making a changelog ... that is .. hmm, how do we do that for such a large amount of commits :D
07:52:25 <LordAro> start with the list of merged PRs since April and go from there :p
07:52:44 *** andythenorth has joined #openttd
07:53:02 <TrueBrain> yeah .... well, I will get that started today, I guess :)
07:53:16 <LordAro> git log master@{2021-04-01}..master --oneline
07:53:33 <TrueBrain> at least, I hope the tutorial PR is to everyones liking .. otherwise we have something to resolve first :D
07:53:53 <LordAro> it's a nice idea
07:54:11 <LordAro> but i haven't actually tried it, so i can't speak for what it's actually like :p
07:54:39 <TrueBrain> yeah .. I don't like the GUI elements for it, but .. not sure it is worth making yet-another-GUI-elements for it :)
07:54:48 <LordAro> in the more general sense, i think there should be a built in tutorial GS
07:54:54 <LordAro> but that's a rather larger project
07:55:02 <TrueBrain> additionally to this, yes, I fully agree
07:55:31 <TrueBrain> well, built-in, hmm, that is another thing we could do, (which requires allowing 2 GSes :P)
07:55:48 <TrueBrain> do this via a built-in GS .. requires a ton of extra events :D
07:56:31 <TrueBrain> I think bundling tutorial GSes to OpenTTD would be good, and have this tutorial menu where you can start them with
07:56:36 <TrueBrain> predefined maps and everything
07:56:48 <LordAro> why would it require 2 GSes? tutorial GS would just be a special "load this particular map with this GS"
07:56:56 <LordAro> bonus points if it works with any old random map
07:56:59 *** jottyfan has joined #openttd
07:57:03 <LordAro> $ git log master@{2021-04-01}..master --oneline | grep -v "Translations from eints" | grep -v Codechange | wc -l
07:57:06 <LordAro> 400
07:57:10 <TrueBrain> no, sorry, my mind made a few jumps: the tutorial PR I made, does something a GS PR cannot: interact with a multiplayer client
07:57:24 *** andythenorth has quit IRC ()
07:57:32 <TrueBrain> strictly seen that could be done by a GS, but only if we can load a "client-only GS" :)
07:57:37 <LordAro> i think tutorials within multiplayer is a bit much :)
07:58:05 <TrueBrain> in this case I mean a tutorial to show the GUI, what my PR does. But yes, gameplay tutorials in multiplayer is weird :P
07:58:25 <LordAro> step 1 - define expectations of what a tutorial actually is :)
07:59:00 <TrueBrain> haha, yes :)
07:59:12 <TrueBrain> learning interface vs learning game :) Lovely disconnect ;)
08:00:33 *** jottyfan has quit IRC ()
08:00:52 <LordAro> mm
08:01:04 <LordAro> i feel like 'tutorial' is the wrong word for what you've done
08:01:08 <LordAro> but i can't think of anything better
08:01:19 <TrueBrain> "Hints"?
08:01:30 <TrueBrain> (not disagreeing btw :P)
08:03:23 <LordAro> maybe just "Interface tutorial"
08:03:41 <TrueBrain> also wording we want to use for the player?
08:04:01 <TrueBrain> as in "Interface tutorial: first time joining a server"?
08:04:48 *** andythenorth has joined #openttd
08:05:12 <TrueBrain> I can rename the files to "interface_tutorial", that might be good
08:05:19 <TrueBrain> or "tutorial_interface"? Hmm
08:06:12 <andythenorth> oh is webster down
08:06:19 * andythenorth was going to read logs :P
08:06:31 <andythenorth> discord when?
08:12:07 * andythenorth reads steam reviews
08:13:38 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9475: Remove: COMPANY_INFO packets and related code https://git.io/JRNry
08:14:04 <andythenorth> our nightlies really are dead
08:14:13 <andythenorth> because -coop and +JGRPP
08:14:31 <andythenorth> no coop = no cohort using nightly in MP
08:14:38 <andythenorth> and all bleeding edge players are using JGRPP
08:14:56 <andythenorth> and people like me compile our own, because weird local patches and stuff
08:15:25 <andythenorth> steam workshop for nightlies? :P
08:15:57 <TrueBrain> Steam has nightlies
08:16:19 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9473: Fix: name the Online Players caption the same as in the menu https://git.io/JRNoI
08:17:52 *** Wolf01 has joined #openttd
08:18:23 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9472: Add: synchronize server name to clients and display in Online Players GUI https://git.io/JRNo6
08:18:51 * andythenorth reading comments
08:18:55 <andythenorth> this is a good one
08:18:55 <andythenorth> https://steamcommunity.com/id/AdamMil/recommended/1536610/
08:18:59 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9471: Add: mention you are a spectator in the status bar (if you are, ofc) https://git.io/JRNo9
08:19:03 <TrueBrain> right, some mass renaming of "tutorial" to "interface tutorial" :)
08:19:11 <andythenorth> "maybe andythenorth has a sock puppet called adam"
08:19:36 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9471: Add: mention you are a spectator in the status bar (if you are, ofc) https://git.io/JRd5n
08:19:44 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9472: Add: synchronize server name to clients and display in Online Players GUI https://git.io/JRdd0
08:19:51 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9473: Fix: name the Online Players caption the same as in the menu https://git.io/JRdbv
08:20:12 <andythenorth> hmm
08:21:22 <andythenorth> I think today I will make friends with {SIGNED_WORD}
08:25:23 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9474: Add: [Tutorial] show tutorial the first time you join any server https://git.io/JRFtT
08:27:39 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9474: Add: [InterfaceTutorial] show tutorial the first time you join any server https://git.io/JRFtT
08:28:18 <TrueBrain> hmm, I am going to unlink this from the "remove lobby" PR
08:29:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9474: Add: [InterfaceTutorial] show tutorial the first time you join any server https://git.io/JRFtT
08:30:28 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9467: Feature: make "join game" button join the game, instead of first showing a lobby window https://git.io/JRoWg
08:32:11 * andythenorth made a PR once https://github.com/OpenTTD/OpenTTD/pull/9093
08:32:20 <andythenorth> but it fell into the newgrf hole :)
08:32:36 <andythenorth> because cartoon trains requires a nuclear-safety level of code review :)
08:34:13 *** Progman has quit IRC (Remote host closed the connection)
08:34:41 <LordAro> needs a frosch review, really
08:34:43 <LordAro> code looks fine
08:35:14 <andythenorth> :)
08:35:49 <andythenorth> I have the impression frosch would like to never touch newgrf again
08:35:52 <andythenorth> but eh
08:35:55 * andythenorth might be wrong
08:36:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9476: Doc: Forwardport changelog & doc changes from 1.11 branch https://git.io/JRNPy
08:36:54 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9476: Doc: Forwardport changelog & doc changes from 1.11 branch https://git.io/JRNPA
08:38:11 <TrueBrain> how did your counter get to 400 .. mine stops at 184 :P
08:38:57 <LordAro> i do not know...
08:39:27 <TrueBrain> and how to remove what was backported, eeuuhh .. that will be interesting too :P
08:39:29 <LordAro> 410 now :p
08:39:39 <LordAro> mm
08:39:44 <TrueBrain> do we have different repos loaded? :P
08:40:17 <TrueBrain> warning: Log for 'upstream/master' only goes back to Thu, 20 May 2021 18:18:08 +0200.
08:40:21 <TrueBrain> okay, I should read my stderr
08:40:24 <LordAro> ha
08:40:34 <TrueBrain> but that shouldn't yield 200 commits, ofc
08:40:43 <TrueBrain> I wonder why my history doesn't go back further ..
08:41:09 <LordAro> all the backported stuff have PR numbers referenced in the changelog, you can exclude them there
08:41:24 <TrueBrain> I am just going to overlay the commit messages :P
08:41:45 <TrueBrain> but first I need to figure out what is going on with my history ..
08:42:13 <TrueBrain> as "git log" shows up till r975 just fine
08:44:09 <LordAro> https://github.com/OpenTTD/OpenTTD/pulls?q=is%3Apr+is%3Aclosed+-label%3Abackported+sort%3Aupdated-desc+merged%3A%3E%3D2021-03-14
08:44:12 <LordAro> that might be more useful
08:45:11 <TrueBrain> yeah, but we are not that good in having 1 PR per commit that is worth mentioning :(
08:45:38 <LordAro> https://github.com/OpenTTD/OpenTTD/pulls?q=is%3Apr+is%3Amerged+-label%3Abackported+merged%3A%3E%3D2021-03-14+base%3Amaster+ even better
08:45:54 <LordAro> no, there's no perfect system :p
08:47:35 <TrueBrain> I can take the commits from merge point to master and to 1.11, and substract the latter from the first
08:47:41 <TrueBrain> that should be all the things not in 1.11 :)
08:48:04 <LordAro> assuming commits weren't merged/reworded :p
08:48:09 <LordAro> (i don't think they were)(
08:48:11 <LordAro> )
08:48:20 <TrueBrain> and if so, the exception :)
08:49:28 <TrueBrain> the order is different, slightly annoying :D
08:50:25 <TrueBrain> Fix: Auto-fill version details in rev.cpp and ottres.rc
08:50:26 <TrueBrain> only commit that is in 1.11 and not in master
08:50:36 <TrueBrain> (next to the 1.11 release commits, ofc)
08:51:15 <TrueBrain> commit message was changed :P
08:51:16 <TrueBrain> tssk @ LordAro :)
08:53:05 <TrueBrain> brings me to 560 commits
08:53:20 <TrueBrain> makes sense, as we made commits before 04-01 in master that are not in 1.11
08:54:31 <LordAro> yeah
08:59:41 <TrueBrain> I guess a lot of codechanges are not worthy of changelog :)
08:59:49 <LordAro> mhmm
09:01:26 <TrueBrain> 205 entries left to sort out
09:01:52 * andythenorth so many exciting things to do today :)
09:01:57 <andythenorth> signed dwords
09:02:04 <andythenorth> generating a GS from existing FIRS compile
09:02:12 <andythenorth> reading reddit
09:02:50 <TrueBrain> btw, https://github.com/OpenTTD/OpenTTD/pull/9346 seems like a good idea, but I guess that also needs some more knowledgeable NewGRF person? :D
09:04:27 <andythenorth> it's kind of a model 'good PR' currently
09:04:34 <andythenorth> as you might expect from 2 factorio devs :P
09:06:32 <andythenorth> it's a good feature
09:16:37 <TrueBrain> https://gist.github.com/TrueBrain/680f14482853376f08035282cd006395
09:16:41 <TrueBrain> now left is Change / Fix ..
09:16:43 <TrueBrain> long list :P
09:21:01 <LordAro> quite a lot of those need some rewording, imo :)
09:21:48 <andythenorth> so much stuff
09:22:10 <TrueBrain> LordAro: yeah .. I already did a few, but for sure
09:22:19 <LordAro> can't review a gist :p
09:22:27 <TrueBrain> no, and that is fine for now ;)
09:22:32 <TrueBrain> let me finish the list first :)
09:22:40 <TrueBrain> then I will share it somewhere we can all edit :)
09:22:53 <andythenorth> nice to see OpenTTD is still dying :)
09:26:38 <TrueBrain> https://mensuel.framapad.org/p/zqg8mpb86d-9p4x?lang=en
09:26:40 <TrueBrain> LordAro: go nuts :P
09:27:07 <TrueBrain> I have yet to fix all "fix", but I can do that at the same time :)
09:29:14 <LordAro> still mostly want comments, rather than to actively change everything
09:29:28 <TrueBrain> fine, but that means you have to wait for the PR :P
09:29:38 <LordAro> or i can just do everything regardless of what you think :p
09:29:51 <TrueBrain> I currently just put in what the commit message was
09:29:55 <TrueBrain> give or take some STUN related bla
09:30:03 <TrueBrain> so you can go nuts for now
09:30:19 <TrueBrain> pretty sure you are better at this anyway ;)
09:31:06 <LordAro> i think all the STUN/TURN stuff should be merged into a single changelog line
09:31:12 <LordAro> or possibly 2
09:31:15 <TrueBrain> I did that already, not?
09:31:39 <TrueBrain> "Feature: No longer require port-forwarding to host a server (#9443, #9447)"
09:31:57 <TrueBrain> as nobody is going to understand STUN / TURN, so I just collapsed it
09:32:32 <TrueBrain> not sure what you are seeing that I am not :D
09:32:36 <LordAro> port forwarding, invite codes, happy eyebals, server invite only, ms -> gc
09:32:39 <LordAro> to name a few
09:32:48 <TrueBrain> port forwarding and invite codes are 2 totally different things for sure
09:32:55 <TrueBrain> happy eyeballs is something different too
09:32:58 <TrueBrain> invite only too :)
09:33:04 <TrueBrain> ms -> gc .. we can debate on that :)
09:34:08 <TrueBrain> so no, I do not think we should collapse things like that
09:34:13 <LordAro> fair enough
09:34:16 <TrueBrain> we want players to know they can now make "invite only" servers :D
09:34:25 <LordAro> happy eyeballs/ms->gc are definitely "implementation details" though
09:34:32 <LordAro> not interesting to the average changelog reader
09:34:42 <TrueBrain> I can reword happy eyeballs for sure, but it solves the issue several people had
09:34:44 <TrueBrain> will be a Fix too
09:34:47 <TrueBrain> ms->gc, agree'd
09:35:34 <TrueBrain> Fix: Optimize connecting for clients using IPv4 and IPv6 (#9199)
09:35:39 <TrueBrain> might be better ;)
09:35:45 <LordAro> sounds it :)
09:36:20 <LordAro> "Per-group wagon removal flag"
09:36:23 <TrueBrain> what I do always love, that some things I find minor details, you promote to feature, and the other way around :D And that is totally fine :)
09:36:33 <LordAro> i've looked at the code for this, and i still have no idea what it is
09:36:39 <TrueBrain> me neither
09:36:57 <TrueBrain> reason I looked up the PR for it, but it still didn't help :(
09:39:31 <LordAro> also got to go through the fix list to remove those that are fixing new things :)
09:39:44 <LordAro> i.e. most of the "nullptr" issues
09:40:37 <TrueBrain> yeah .. not easy :P
09:44:42 <andythenorth> "Per-group wagon removal flag" needs explaining?
09:44:45 * andythenorth knows what it is
09:44:49 <LordAro> andythenorth: yes please
09:45:37 <andythenorth> in the auto-replace UI, there's a 'Wagon removal' toggle
09:45:56 <andythenorth> but the context was previously always global, when the context of the rest of that UI is local to the group
09:46:15 <andythenorth> so now wagons will be removed (or not) on a per group basis
09:46:44 <andythenorth> it's all just piling more stuff on top of "we don't have train templates" but eh :)
09:47:05 <andythenorth> it's a valid change that prevents surprise "your train lost some wagons"
09:47:32 <andythenorth> or worse, "your train got replaced, but you toggled wagon removal off elsewhere, and now your train is too long"
09:54:52 *** Samu has joined #openttd
09:56:45 <andythenorth> "wagon replacement can now be set per-group when using 'replace vehicles'"
09:58:55 <TrueBrain> right, finally got at the bottom of th elist :)
09:59:07 <TrueBrain> everything should now have a PR number
09:59:11 <TrueBrain> and I removed a lot of bullshit fixes :P
10:00:21 <TrueBrain> and hopefully all fixes that fix something never released .. :D
10:01:17 <TrueBrain> I like how I collapsed like 5 changelogs into one, and I still was like: meh .. and LordAro just throws it away :P Nice :D
10:01:51 <LordAro> buildsystem changes don't go in changelogs :)
10:02:02 <TrueBrain> I agree :)
10:02:51 <TrueBrain> in that case that emscripten is also going away :P
10:04:11 <LordAro> TrueBrain: #9437 feels like it was only an issue after your network changes?
10:04:36 <TrueBrain> no clue, but also never reported as issue, so lets remove it :)
10:06:05 <TrueBrain> "fix .. should return"? :D
10:06:11 <TrueBrain> I hate how difficult it is to write "fix" lines
10:06:18 <LordAro> yeah...
10:12:39 *** frosch123 has joined #openttd
10:12:47 <TrueBrain> GOOOD morning frosch123 :)
10:13:07 <TrueBrain> LordAro: down to less than 100 lines :D
10:13:11 <frosch123> moo
10:15:54 <TrueBrain> LordAro: yeah, I had the same response for -X a few times already too :)
10:15:57 <TrueBrain> guess we should just cut it :)
10:21:38 <TrueBrain> LordAro: #9240 was fixed before I reworked the network stuff :)
10:22:03 <TrueBrain> similar with #9453 :)
10:22:11 <LordAro> fair enough :)
10:22:29 <TrueBrain> I had to check, so it is a good question :D
10:29:07 <TrueBrain> < 90 :)
10:31:51 <TrueBrain> LordAro: regarding savegame format, it is mostly an internal thing ofc. The thing that stands out, that it is easier for external tools to work with savegames .. but I am not sure that is worth mentioning either
10:32:35 <TrueBrain> we could just leave it as "Reworked savegame format", just as notice to users that care about that
10:33:02 <TrueBrain> (not mentioning it can only lead to questions, I guess :P)
10:33:07 <LordAro> yeah
10:33:42 <andythenorth> I often do "reworked compile" for grfs
10:33:44 <TrueBrain> and in that case it is just a Change
10:33:47 <andythenorth> and it was like 3 months of work :P
10:34:07 <LordAro> "reworked" is a bit strong
10:34:13 <LordAro> it was just list types, no?
10:34:20 <LordAro> or am i misremembering?
10:34:24 <TrueBrain> every chunk now has a header :)
10:34:32 <LordAro> ah yes, that
10:34:43 <LordAro> "more consistent" ?
10:35:16 <TrueBrain> it is not really consistent as such
10:35:22 <TrueBrain> although that too
10:35:23 <TrueBrain> but I guess .. hmm
10:35:41 <TrueBrain> Changed the savegame format to use a table-like structure
10:35:42 <TrueBrain> ?
10:35:55 <LordAro> sure
10:36:15 <TrueBrain> I like how your line reads, but it is only covering a portion .. now I am on the fence :D
10:37:12 <TrueBrain> combined both of them :P
10:38:39 <TrueBrain> right, lunch time for me :)
10:50:50 <frosch123> "make savegame format self-descriptive"
10:51:05 <andythenorth> uuf SELF is not PARENT
10:51:07 <andythenorth> town stuff :P
10:51:30 <frosch123> newgrf was developer by kids?
10:51:42 <frosch123> hard to use if you are a parent
10:51:47 <andythenorth> I think there's some truth in that somewhere :P
10:52:09 <andythenorth> I always imagine newgrf was cooked up by a grey-beard and a few 15 year olds
10:52:25 <LordAro> TrueBrain: couple of remaining comments, but other than that i'm happy :)
10:52:31 <andythenorth> it has the air of "I learnt to bytecode in 1973" combined with "my first project"
10:53:25 <LordAro> andythenorth: is that not the case?
10:53:45 <LordAro> combination of whatever CS came up with, then a load of people hacking on that
10:54:25 <andythenorth> uuf why is the text stack so frigging hard to use :)
10:54:39 <andythenorth> I think it's because the only debugging tool I have is the text stack
10:54:45 <andythenorth> so there's a meta problem
10:58:17 <andythenorth> PEBKAC
10:58:24 <andythenorth> "current_optimism_score" is not "next_optimism_score"
11:00:03 <andythenorth> will I run out of text stack though? :)
11:00:15 <TrueBrain> LordAro: ack :) Will sort it by PR tonight, and hopefully the remaining PRs have had a review by then :D
11:00:42 <andythenorth> oof, plurals strike again :)
11:00:43 <LordAro> ha
11:00:52 <andythenorth> I need to '1 point' or '2 points' etc
11:02:58 <andythenorth> oh word not dword
11:03:05 <andythenorth> hello rubber duck
11:03:18 <LordAro> quak
11:04:16 <LordAro> TrueBrain: you'll probably say that 4 months is too long, but we could have a winter-themed titlegame competition :)
11:04:32 <TrueBrain> 4 months too long?
11:04:35 <TrueBrain> and yeah, I like that idea
11:05:06 <LordAro> ooh, where did that signs-move-viewport PR go?
11:05:17 <TrueBrain> still pending, I think?
11:05:52 <LordAro> #8980
11:05:59 <andythenorth> oof the duck isn't helping enough, I have to ask you actual humans :(
11:06:18 <andythenorth> https://github.com/andythenorth/firs/blob/advanced_town_economy/src/templates/extra_text_informative.pynml
11:06:56 <andythenorth> ^ this should cause the same value to be shown in 3 places in the string (uses {SIGNED_WORD})
11:07:00 <andythenorth> the value is '1'
11:07:05 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9476: Doc: Forwardport changelog & doc changes from 1.11 branch https://git.io/JRNPy
11:07:07 <andythenorth> I get -1 twice, and 0 once
11:07:14 <andythenorth> I really really hate the text stack
11:12:16 <andythenorth> oh I probably need to AND or OR or something
11:12:21 <andythenorth> writing to 0x100 twice
11:12:44 <andythenorth> I could use that {SKIP} code, but that wastes registers, and there are only 6
11:14:24 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9477: Doc: Prepare for 1.12.0-beta1 release https://git.io/JRA4c
11:14:55 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #8980: Feature: Multiple rotating views on title screen https://git.io/JRA4u
11:15:09 <TrueBrain> guess we also need a 1.12 milestone to add PRs which we would like in 1.12 :)
11:15:15 <TrueBrain> either way, I am off for a bit, back later today :)
11:15:16 <LordAro> probably!
11:17:27 <andythenorth> I really thought I had fixed this :P https://github.com/andythenorth/firs/blob/advanced_town_economy/src/templates/extra_text_informative.pynml#L24
11:17:34 <andythenorth> that gives me -1, -1, 2
11:17:40 <andythenorth> the correct value in this case is 2
11:25:15 <andythenorth> oof
11:25:30 <andythenorth> if I'm loading from town storage, do I need to truncate the values into words?
11:26:36 <andythenorth> oh does reading registers thrash register 0x100?
11:26:43 <andythenorth> https://newgrf-specs.tt-wiki.net/wiki/Storages suggests it will
11:26:58 <andythenorth> so how the fuck do I put anything from a register onto the text stack? :(
11:27:59 <andythenorth> yeah register 0x100 is returning -1 for the text which is the default for grfid when accessing registers
11:35:47 <andythenorth> seems I have to do {SKIP}{SKIP} in the string to ignore 0x100 :)
11:35:47 <andythenorth> lol
11:40:26 <andythenorth> well that works :)
11:46:31 *** iSoSyS has joined #openttd
11:46:33 *** iSoSyS has quit IRC (Remote host closed the connection)
11:56:13 *** roadt__ has joined #openttd
11:58:35 *** jottyfan has joined #openttd
11:58:43 *** glx has joined #openttd
11:58:43 *** ChanServ sets mode: +v glx
11:59:08 *** jottyfan has quit IRC ()
12:01:20 <andythenorth> hmm
12:01:28 <andythenorth> `${industry.id}_extra_text_get_pollution_and_squalor_score() - 32768`
12:01:31 <andythenorth> "probably fine"
12:01:40 <andythenorth> gets me -4 when read as {SIGNED_WORD}
12:01:44 <andythenorth> which is correct
12:02:55 *** roadt_ has quit IRC (Ping timeout: 480 seconds)
12:14:50 <andythenorth> maybe I should write a function to generate the text stack for me
12:14:56 <andythenorth> manually managing it is ugh
12:28:50 <andythenorth> hmm can't return strings from procedures?
12:30:04 <glx> I think you can
12:30:58 <frosch123> strings have special magic
12:31:18 <frosch123> nml does the Dxxx string -> 0xxx return value magic
12:31:26 <frosch123> but it can't do that when the string is inside an expression
12:32:22 <frosch123> so you may have to add a " - 0xD400" yourself
12:33:47 <andythenorth> that gets me an unknown string ID :)
12:33:48 <andythenorth> hmm
12:33:58 * andythenorth makes a more isolated test
12:35:52 *** sla_ro|master has quit IRC ()
12:38:04 <andythenorth> return value https://github.com/andythenorth/firs/blob/40280fd717be78df8d59db20dd69b1028d9631ce/src/templates/extra_text_informative.pynml#L44
12:38:07 <andythenorth> called from L51
12:38:35 <andythenorth> if I put the string directly in the STORE_TEMP it works fine
12:47:15 <_dp_> crazy idea of the day: mathbase - procedurally generated baseset
12:49:11 <glx> but you substract only in default case
12:49:29 <glx> better do it on the STORE_TEMP
12:50:22 <glx> ha no silly me, there is commented code :)
12:51:33 <_dp_> "but in positive news, recently we did find a desync bug with MacOS clients"
12:51:36 <_dp_> wait, which one was that?
12:52:10 <_dp_> https://github.com/OpenTTD/OpenTTD/issues/9458#issuecomment-896168680
12:52:27 <andythenorth> glx that was just to isolate the text case :)
12:52:39 <andythenorth> test *
12:53:20 <glx> _dp_: the industry sort IIRC
12:53:51 <glx> https://github.com/OpenTTD/OpenTTD/pull/9460
12:53:59 <_dp_> was it confirmed for mac? I only know of android being affected
12:54:09 <glx> it's compiler dependant
12:54:34 <_dp_> so, unknown
12:56:10 <_dp_> I still have a feeling macs have some other desync as well
12:56:33 <andythenorth> if I move the ternary to inside the STORE_TEMP, it's works as expected https://github.com/andythenorth/firs/blob/advanced_town_economy/src/templates/extra_text_informative.pynml#L49
12:56:46 <andythenorth> just a lot less neat :P
12:57:10 *** jottyfan has joined #openttd
12:57:35 *** jottyfan has quit IRC ()
12:57:44 <glx> and without the substraction ?
12:57:51 <_dp_> #9460 is kind of a 5-min desync, macs desync faster and sometimes with invalid company in docommand message
12:58:06 <andythenorth> no subtraction needed inside the STORE_TEMP
12:58:15 <glx> I mean in the proc
12:58:26 <andythenorth> without the subtraction, the procedure returns a different string ID
12:58:36 <andythenorth> I get a default cargo name (Maize)
12:58:48 * andythenorth could look up the ID for that and work out the maths
12:58:51 <glx> I wonder if it's possible to do string(proc())
12:59:08 * andythenorth tests
13:00:03 <andythenorth> I think string() expects an identifier for a constant
13:00:05 <andythenorth> but let's see
13:00:16 <andythenorth> yeah it does
13:00:18 <glx> oh and remember proc return value is 15 bit, so maybe it's missing something
13:00:45 <andythenorth> oof :)
13:01:19 <andythenorth> how to inspect string IDs? :)
13:02:03 <andythenorth> STORE_PERM I guess
13:02:30 <glx> should be possible to breakpoint there in openttd yes
13:03:28 <glx> could you show the nfo ?
13:04:06 <andythenorth> I'll generate it yes
13:04:24 <andythenorth> the results from the procedure are in range 25..27
13:04:32 <andythenorth> I don't know what my actual string IDs are
13:05:25 <glx> maybe nml could output strings with IDs
13:05:42 <andythenorth> it might have an option already
13:06:49 <andythenorth> https://gist.githubusercontent.com/andythenorth/5fd6f6f3ed8dc2ab08bca02ee301b341/raw/fcdd1757354b641b6bb7d8a6b20bfe9861180876/gistfile1.txt
13:06:58 <andythenorth> plaza_extra_text_current_optimism_string is the relevant varact2
13:08:06 <andythenorth> let's see what string IDs that gets outside the procedure
13:08:26 <glx> nfo says 25..27 for 0 to 2 yes
13:09:49 <andythenorth> updated https://gist.githubusercontent.com/andythenorth/5fd6f6f3ed8dc2ab08bca02ee301b341/raw/d5e7ffa9722f5b3f6df15b424e93fc8f4837b2c4/gistfile1.txt
13:10:05 <andythenorth> \2r 1A 20 \dx0000D019 is where I store the string for comparison
13:10:19 <andythenorth> compared to return value from procedure of \wx8019
13:10:39 <andythenorth> so it needs something adding, and it needs expanding to dword?
13:11:29 <glx> I think you need to add D000 to procedure return, in the STORE_TEMP call
13:11:31 <_dp_> hm... we need some bananaright license
13:11:40 <_dp_> do whatever you want but put the result on bananas :p
13:12:10 <glx> andythenorth: return value is actually 0x19 ;) (15 bits)
13:12:48 <andythenorth> does it need shifting?
13:13:32 <glx> no, you just need to store proc() + 0xD000 I think
13:13:54 <andythenorth> works
13:13:56 <andythenorth> thanks
13:18:00 <glx> hmm seems nml supports plural
13:18:05 <andythenorth> somehow yes
13:18:09 <andythenorth> I didn't understand it yet :)
13:18:18 <glx> I can see a BEGIN_PLURAL_CHOICE_LIST
13:18:57 <glx> https://newgrf-specs.tt-wiki.net/wiki/StringCodes#Using_plural_forms
13:22:34 <glx> so looking at the code, first step is the plural pragma (0 for english I think)
13:27:24 <andythenorth> FIRS has that I think
13:27:32 <andythenorth> it pluralises some cargo names currently
13:28:44 <glx> https://github.com/andythenorth/firs/blob/ecc6c8c89943af97ecc46dde116deb9f28a5a2d1/src/lang/english.lng#L149
13:28:53 <glx> yes so it's easy to do
13:31:31 <andythenorth> I can see how to do it for cargo because there are string codes like {CARGO_LONG}
13:36:14 <andythenorth> 9A 15
13:36:17 <andythenorth> hmm
13:36:34 <andythenorth> that's not in nml docs?
13:36:43 <glx> nml does the magic
13:37:47 <glx> https://newgrf-specs.tt-wiki.net/wiki/NML:Language_files
13:37:51 <glx> oh there's doc
13:39:33 <glx> but incomplete
13:40:10 <andythenorth> oh :)
13:40:28 <glx> ah hidden example in the page STR_EXTRA_PRIMARY :{BLACK}This industry needs {YELLOW}supplies{BLACK}.{}They use them {STRING}{}{}Monthly demand: {YELLOW}{UNSIGNED_WORD} crate{P "" s} of engineering supplies{BLACK}.
13:41:44 <glx> nml wiki is like grf wiki, important details hidden in examples
13:42:19 <andythenorth> it's even in FIRS as you linked :)
13:42:30 <andythenorth> usually I would just guess and try things, but I didn't get that far yet
13:43:13 <andythenorth> so does it literally just rely on the previous item read from text stack?
13:43:14 <glx> and the example include non DWORD
13:43:14 * andythenorth tests
13:43:49 <andythenorth> or do I have to push the value for the decision explicitly?
13:44:32 <glx> you put values in the stack, then return the string
13:45:41 <glx> in the example, you can see it's pushing a string, then a WORD (so both in a single DWORD register)
13:46:34 <glx> then the string will pop as needed
13:46:44 *** Strom has quit IRC ()
13:48:21 *** Strom has joined #openttd
13:50:31 <andythenorth> so if I push a value
13:50:33 <andythenorth> and my string is {SIGNED_WORD} point{P 0 "" s}
13:50:56 <andythenorth> I should get 'point' if the value is 1?
13:51:45 <andythenorth> oh 0 is the offset to the value? "stack offset of value to get plural for in next byte"
13:52:49 <andythenorth> {SIGNED_WORD} point{P 1 "" s} works
13:52:52 <andythenorth> not sure that should though
13:52:58 *** roadt__ has quit IRC (Ping timeout: 480 seconds)
13:53:10 *** roadt__ has joined #openttd
14:00:31 <glx> IIRC {P} offset defaults to -1, but being explicit never hurts
14:02:25 <andythenorth> I need to fix my signed dword handling somehow :)
14:02:28 <andythenorth> testing this is hard currently
14:02:58 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876103569353347072/unknown.png
14:03:39 <andythenorth> this is the wrong approach https://github.com/andythenorth/firs/blob/advanced_town_economy/src/templates/extra_text_informative.pynml#L55
14:03:47 <andythenorth> I don't understand how to fix it though :)
14:03:57 <andythenorth> I am pushing -ve values into a dword perm storage
14:04:06 <andythenorth> which will get me 32767 for -1
14:05:42 <glx> at least it's a progress :)
14:06:15 <glx> which value are you expecting to display ?
14:08:09 <glx> based on screeshot, I can see pollution score returned 0
14:09:25 <andythenorth> I expect a value 0..-32768
14:09:52 <andythenorth> hmm storage is dword?
14:10:06 <glx> storage is not the issue, I think math is :)
14:10:17 <andythenorth> when I push -1 to perm storage it's putting 32768 into a dword
14:10:23 <andythenorth> dword is bigger though?
14:10:37 <andythenorth> doesn't really matter, just wondering where the problem is
14:10:54 <andythenorth> I could just do all this with +ve integers, and put '-' into the string :P
14:11:11 <andythenorth> seems like cheating
14:11:31 <glx> what values can be in the score (ignoring display for now)
14:14:41 <Samu> yes! https://i.imgur.com/iHNR8rN.png
14:14:44 <andythenorth> the upper and lower bounds are quite silly
14:14:52 <andythenorth> let's say -32k and +ve 32k
14:15:01 <andythenorth> if anyone achieves those, they're doing well
14:15:06 <Samu> no noticeable fps spikes
14:15:26 *** Flygon has quit IRC (Read error: Connection reset by peer)
14:16:45 <andythenorth> scoring is in https://github.com/andythenorth/firs/blob/advanced_town_economy/src/templates/monthly_town_loop.pynml
14:16:48 <_dp_> hm... if I want to make snowy desert should it be arctic or tropic? xDD
14:18:20 <Samu> mission acomplished, i managed to make my AI spikeless
14:18:33 <Samu> with 15k vehicles 250k ops very fast
14:19:53 *** Flygon has joined #openttd
14:19:53 <Samu> now i need 1.12
14:19:57 <Samu> :P
14:20:15 <glx> you have, it's called nightly
14:20:46 <Samu> yes, but not the same thing, i can't release the new version yet
14:25:13 <glx> andythenorth: not easy to follow, but as I read it all values start at 0, then new_optimism is old_optimism + needs - pollution, new_needs is old_needs + needs and new_pollution is old_pollution - pollution
14:25:50 <andythenorth> all values start at 0 yes
14:26:18 <andythenorth> I could do the maths with +ve integers, it would work
14:26:22 <andythenorth> might just be simpler
14:27:09 <glx> so the main unknown for me is range of parameters for monthly_town_loop()
14:28:55 <frosch123> _dp_: depends whether you want the stuff on mountains only or according to desert rules
14:31:22 <andythenorth> glx range is only constrained by size of value (word or dword, signed or unsigned)
14:31:45 <andythenorth> it doesn't really matter, most games will be probably be -32...32 or so, but players might do weird things
14:33:21 <glx> anyway from the screeshot I can guess -32768 should be 0 :)
14:33:36 *** jottyfan has joined #openttd
14:33:44 *** jottyfan has quit IRC ()
14:33:48 <glx> and it's clearly the (value - 32768) you pushed
14:34:24 <glx> why not just pass the value unmodified ?
14:36:25 <glx> all changes are accumulated (substracted for pollution) so optimism should always be needs + pollution if my math is correct
14:47:18 <andythenorth> the maths seems to work
14:47:31 <andythenorth> it's when I read pollution with {SIGNED_WORD} that I have troubles :)
14:47:41 <andythenorth> I get 32767 or similar
14:47:55 <andythenorth> it doesn't parse it as a signed value
14:48:18 * andythenorth is confused though
14:48:31 <glx> maybe the shifting is the issue
14:48:32 <andythenorth> isn't -1 in a signed word 65535?
14:49:11 <glx> -1 is -1 (0xFFFFFFFF as DWORD, 0xFFFF as word)
14:50:33 <glx> 0..7FFF are positive, 8000..FFFF are negative
14:52:15 <frosch123> 32767 sounds like you have the 15bit procedure return value issue?
14:52:46 <glx> oh yeah the sign bit is dropped
14:52:51 <frosch123> return -1 from procedure, lose the highest bit, print it as word, get 32767
14:54:49 <glx> so yes 0xFFFF is returned as 0x7FFF
14:55:23 <andythenorth> so does it need masking with an 0xF000?
14:55:46 <andythenorth> or do I just do a ternary for value < 0 ? add something :P
14:56:03 <andythenorth> masking / ANDING
14:56:17 * andythenorth saying random words :(
14:58:49 <glx> if you are sure pollution_score is in range -32768..32767 you can add 32768 before returning from procedure, then substract when pushing in register
14:59:28 <glx> hmm, no, won't solve the 15bit issue
14:59:30 <andythenorth> I think I'll move it all to +ve integers
14:59:36 <andythenorth> some battles aren't worth winning :)
14:59:53 <glx> well you also have last_computed_result
15:00:43 <glx> "Because callback results are limited to 15 bits, to access the full 32 bit result you can read variable 1C instead (e.g. by and-ing the 7E result with 0 and then adding var. 1C). "
15:02:15 <andythenorth> clever
15:04:46 <andythenorth> I'm storing it now as +ve, then just doing `-1 * ${industry.id}_extra_text_get_pollution_and_squalor_score()`
15:04:55 <andythenorth> when I push it onto text stack
15:04:58 <andythenorth> works
15:05:27 <andythenorth> can't get the plurals working though :)
15:08:10 <andythenorth> reading the spec, not sure -1 will get '-1 point' anyway
15:08:17 <andythenorth> I think it will be pluralised
15:08:47 <andythenorth> oof, for translations I really have to use the pluralisation?
15:08:48 <glx> but you can also decide a -16384..16383 range is enough for the pollution score, then adding/substracting 16384 should work too
15:09:02 <andythenorth> can't just write a switch to return 'points' or 'point'?
15:09:18 <glx> translations may use a different plural form
15:09:36 <glx> so a custom switch can't work
15:09:38 <andythenorth> figures :)
15:10:33 <glx> as long as translations are correctly written, openttd will do right
15:12:05 *** Gustavo6046_ has joined #openttd
15:13:10 <andythenorth> ok so I need to make the plurals work
15:13:48 <andythenorth> maybe it's time to read nml src
15:14:28 <frosch123> did you try deep learning?
15:14:55 <frosch123> do we have enough nml code and nfo code to train it?
15:15:07 <andythenorth> could be a winter project :P
15:15:15 *** Gustavo6046 has quit IRC (Ping timeout: 480 seconds)
15:15:15 *** Gustavo6046_ is now known as Gustavo6046
15:15:41 <andythenorth> not sure I ever tested the existing plural forms in FIRS
15:15:50 <andythenorth> very rare that the game would have '1 crate of supplies'
15:15:56 <andythenorth> maybe they don't work :P
15:16:20 <glx> well if the string selection is done by openttd anyway
15:16:55 <andythenorth> yeah the existing plurals in FIRS don't do anything
15:17:02 <andythenorth> lol been there for years
15:17:30 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876122341279678474/unknown.png
15:17:34 <andythenorth> '1 crates'
15:17:49 <andythenorth> oh nvm, that's not using plurals
15:17:51 * andythenorth tries again
15:18:22 <glx> nml just write the grf code telling openttd this string has these choices for plural forms, do what you have to do with that
15:19:08 <andythenorth> hmm
15:19:15 <andythenorth> I need to make an isolated test case
15:19:21 <glx> of course it's possible a nml bug exists
15:19:40 <glx> or a bug in openttd
15:20:15 <glx> but as always, first step would be to check nfo generated for the strings
15:22:56 <andythenorth> I made a test in nml example industry
15:22:57 <andythenorth> works fine
15:29:07 <andythenorth> seems to not work in certain cases
15:29:20 <Wolf01> Monologue again?
15:30:15 <andythenorth> only if you've got gl* on your ignore :P
15:30:22 <andythenorth> ok I think I understand the offsets
15:30:50 <glx> offsets are not very clear in grf spec
15:31:20 <TrueBrain> andythenorth: you forgot the option where he has you on the ignore list :p :p
15:31:41 <glx> in the example, offset is 0x80, and first stack item
15:34:14 *** Wormnest has joined #openttd
15:34:15 <Wolf01> I always wondered how plurals are handled on different languages, is it up to the translator or there is also some logic behind?
15:35:21 <glx> translator sets plural pragma (to tell openttd how to handle what's is {P})
15:35:40 <glx> then just use {P} where needed
15:35:48 <DorpsGek> [OpenTTD/nml] andythenorth opened pull request #231: Change: add string pluralisation examples to example industry https://git.io/JRxVE
15:35:59 <andythenorth> dunno if that's useful, but appears to work
15:36:15 <andythenorth> so I have to count offsets on my fingers :)
15:36:29 * andythenorth seriously considering writing a text generator in python :P
15:36:38 <andythenorth> this is ... agricultural currently
15:36:59 <glx> I think it defaults to previous number if not provided
15:39:21 * andythenorth wonders how {SKIP} contributes to offset
15:40:32 <Wolf01> By example, in English I know "0 crates" or "no crates" is plural, in Italian it's plural with 0, but "nessuna cassa" is singular... better use numbers to keep it short too
15:41:20 <frosch123> Wolf01: http://docs.translatehouse.org/projects/localization-guide/en/latest/l10n/pluralforms.html?id=l10n/pluralforms#l
15:41:24 <glx> plural in openttd world is always based on numbers :)
15:41:25 <andythenorth> ok {SKIP} isn't counted as a use of the stack
15:41:33 <andythenorth> that's counter-intuitive but eh
15:42:10 <frosch123> SKIP is deprecated
15:42:12 <andythenorth> and OpenTTD does understand -1 correctly :)
15:42:15 <frosch123> use the positional paramters
15:42:17 <andythenorth> frosch123 'oops'
15:42:20 <frosch123> {3:NUM} etc
15:42:32 <andythenorth> I tried that earlier but nml wouldn't compile
15:42:38 <andythenorth> probably did it wrong
15:42:43 <frosch123> meh :)
15:42:47 *** sla_ro|master has joined #openttd
15:42:57 <andythenorth> I'm only using {SKIP} because register 0x100 can't be used here
15:43:13 <frosch123> it's fixed in grfv9 :p
15:43:18 <andythenorth> 0x100?
15:43:19 <glx> <andythenorth> and OpenTTD does understand -1 correctly :) <-- -1 is the default value I think
15:43:29 <andythenorth> "-1 point" ;)
15:43:53 <andythenorth> I could store in different registers then shuffle them all at the end of the chain
15:43:54 <Wolf01> Yeah, I knew the pragma with numbers, so there is no way without having 2 different strings to make it work with literals... or even 3 or more strings based on language
15:44:02 * andythenorth seriously considers writing a text stack in python
15:44:06 <andythenorth> it's so painful
15:44:14 <andythenorth> oof translations though
15:44:30 <andythenorth> lol GG translators with this one
15:44:31 <andythenorth> {SKIP}{SKIP}Population mood: {YELLOW}{STRING}{SKIP}{}{}Optimism score:{}{BLACK} Needs and luxuries met: {YELLOW}{SIGNED_WORD} point{P 1 "" s} {}{BLACK} Pollution and squalor: {YELLOW}{SIGNED_WORD} point{P 2 "" s} {}{BLACK} Total score: {GREEN}{SIGNED_WORD} point{P 3 "" s}
15:44:59 <andythenorth> wonder what happens if I do the plurals inside substrings
15:45:05 <andythenorth> then they'd be offset 0
15:48:12 <frosch123> i don't think that works
15:48:42 <frosch123> though i probably misunderstood what you try to do
15:49:09 <frosch123> anyway, you cannot make a plural inside a substring depend on a number of the parent string
15:50:32 <andythenorth> I would do `{SIGNED_WORD} point{P 0 "" s}`
15:50:37 <andythenorth> but I suspect that won't work
15:53:07 <glx> `{SIGNED_WORD} point{P "" s}` should work too
15:54:21 <andythenorth> as substring?
15:54:39 <andythenorth> if -1 is the default, why do I need to specify the offset?
15:54:42 <andythenorth> maybe I am doing it wrong
15:55:43 <andythenorth> nah it needs explicit value specifying
15:59:02 <DorpsGek> [OpenTTD/website] TrueBrain opened pull request #221: Add: 1.12.0-beta1 announcement https://git.io/JRxPu
15:59:38 <Wolf01> :O 1.12
16:00:22 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9475: Remove: COMPANY_INFO packets and related code https://git.io/JRNry
16:00:38 <_dp_> hm, bananas gives same md5 error for different file
16:00:48 <_dp_> it's newgrf version that was the same, not md5
16:00:50 <andythenorth> 2.0!
16:00:56 <TrueBrain> Wolf01: just preparing stuff, still has some PRs to go :)
16:01:28 <Wolf01> Yeah, I know it could happen on christmas :P
16:01:32 <TrueBrain> andythenorth: we suffer from https://0ver.org/ :)
16:02:11 <TrueBrain> I btw have no issues rebranding 1.12 to 2.0 ;)
16:03:07 <_dp_> you missed the perfect opportunity with 1.10 :p
16:03:29 <_dp_> though I guess breaking two traditions at once isn't bad either xD
16:05:28 <DorpsGek> [OpenTTD/website] TrueBrain updated pull request #221: Add: 1.12.0-beta1 announcement https://git.io/JRxPu
16:05:38 <LordAro> could just drop the major version entirely and call it 12.0
16:05:58 <TrueBrain> ha, I like that
16:06:09 <LordAro> semver doesn't really make sense for non-libraries
16:06:17 <TrueBrain> no, it doesn't
16:06:31 <TrueBrain> the URL above shows why :P
16:06:36 <LordAro> indeed
16:07:01 <TrueBrain> I am not against 12.0; not sure if it was meant as a joke, but it solves the whole 1.X / 2.X discussion :D
16:07:58 <_dp_> I think I already started to drop 1. in conversations sometimes
16:10:09 <andythenorth> major versions are for marketing :P
16:10:15 <frosch123> _dp_: newgrf md5sum is computed from the nfo only, graphics are not included in the checksum
16:10:20 <andythenorth> and sequels
16:10:24 <frosch123> so, if you only change pixels, the md5sum stays the same
16:12:16 <TrueBrain> hmm .. I think a few scripts break if we drop "patch" version :D
16:12:29 <LordAro> not exactly surprising
16:13:05 <frosch123> just do what microsoft does. have 5 different version numbers
16:13:28 <frosch123> windows marketing names, windows internal version, msvc compiler version, msvc sdk version, ...
16:13:37 <frosch123> impossible to figure out :)
16:13:49 <Wolf01> OpenTTD 2021H2
16:14:05 <TrueBrain> frosch123: great suggestion .. wait, no, it isn't :P :P
16:14:24 <DorpsGek> [OpenTTD/website] TrueBrain updated pull request #221: Add: 12.0-beta1 announcement https://git.io/JRxPu
16:17:10 <LordAro> TrueBrain: it was mostly intended as a joke, tbf
16:17:15 <LordAro> but i'm not that opposed to it
16:17:20 <DorpsGek> [OpenTTD/website] James103 commented on pull request #221: Add: 12.0-beta1 announcement https://git.io/JRxSr
16:17:35 <LordAro> probably needs a bit more thought than just doing it though :p
16:17:37 <TrueBrain> lol @ James :D
16:17:39 <LordAro> newgrf version, bananas, etc
16:17:50 <DorpsGek> [OpenTTD/website] LordAro commented on pull request #221: Add: 12.0-beta1 announcement https://git.io/JRxSQ
16:17:56 <TrueBrain> LordAro: yeah, but the best way to find out, is to do, right? :D
16:18:07 <LordAro> ...maybe?
16:18:15 <TrueBrain> knowing us, otherwise we will never do it :P
16:18:26 <TrueBrain> but yeah, I was just walking all the stuff that needs changing for this
16:18:33 <TrueBrain> and NewGRF version is the biggest questionmark
16:18:48 <TrueBrain> I think using 12.0.0 doesn't hurt anything
16:18:54 <TrueBrain> (where the last .0 is implied)
16:19:00 <LordAro> mm
16:19:11 <TrueBrain> as it is bigger than 1.11.0 :)
16:19:24 <TrueBrain> only fix would be in BaNaNaS, to make the last 0. implied :)
16:19:30 <LordAro> except for things that have done >=1.x <2.0 as their version constraints
16:19:41 <frosch123> newgrf version is just "ottd version + 16" :p
16:19:42 <TrueBrain> I wonder if anyone did
16:19:45 <TrueBrain> as that would be weird :P
16:19:49 <frosch123> it would happen with 1.16 anyway
16:19:57 <frosch123> there is only nibble for the minor version iirc
16:20:09 <_dp_> frosch123, well, error message could be more clear about it then
16:20:17 <TrueBrain> frosch123: yup
16:20:20 <_dp_> coz I was wondering how tf is that the same file
16:20:21 <TrueBrain> which is an interesting problem ..
16:20:27 <TrueBrain> as that means 16.0 is the last version we can do this way :D
16:20:39 <TrueBrain> euh, 15.0 even
16:20:58 <TrueBrain> (it is a 32bit variable, and the high-nibble is used for major)
16:21:05 <frosch123> huh? 239.15 is the last version
16:21:19 <TrueBrain> major << 28
16:21:23 <TrueBrain> only leaves 4 bits?
16:21:25 <frosch123> i meant merging major and minor version into one byte
16:21:36 <TrueBrain> hmmmm
16:21:40 <TrueBrain> that is a bit tricky, isn't it?
16:21:56 <TrueBrain> as the "current" major is 17 in that case
16:22:06 <TrueBrain> (1 << 4 + 11)
16:22:09 <TrueBrain> even more :P
16:22:11 <TrueBrain> I cannot count :D
16:22:13 <frosch123> you try to store 12.0 as 12.0.0, but that makes no sense
16:22:25 <frosch123> instead store it as (16+12).0
16:22:55 <TrueBrain> I cannot estimate if that is an issue for NewGRFs?
16:23:07 <frosch123> so for version x.y you have a byte for x and a nibble for y
16:23:53 <frosch123> TrueBrain: it's the same thing as microsoft :p you store 12.0 as 1.12.0, and 16.0 as 2.0.0 :)
16:24:01 <TrueBrain> so your suggestion cheats a bit that NewGRF still is 1.12 :P
16:24:26 <frosch123> it's just a integer, it's meant to be compared with ">= known version"
16:24:31 <TrueBrain> guess there is not much else we can do there?
16:24:41 <TrueBrain> yeah, so we just have to fix bananas-api to understand this
16:25:07 <TrueBrain> as I think that is the only place that deals with this, right?
16:25:07 *** Gustavo6046 has quit IRC (Quit: ZNC 1.8.2 - https://znc.in)
16:25:17 <frosch123> there is also ai/gs api version
16:25:22 <frosch123> but we compare strings there
16:26:18 *** Wolf01 is now known as Guest4355
16:26:20 *** Wolf01 has joined #openttd
16:28:13 <_dp_> strings? how that didn't break with 1.10 ?
16:29:30 <Rubidium> strnatcmp?
16:29:43 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 1.12.0-beta1 release https://git.io/JRA4c
16:29:49 <TrueBrain> untested, but this is the least we need for it
16:29:51 <TrueBrain> I might have missed some parts
16:32:21 <frosch123> you forgot known-bugs.txt
16:32:29 *** Guest4355 has quit IRC (Ping timeout: 480 seconds)
16:32:39 <frosch123> maybe remove the version/date from it :p
16:34:34 *** Gustavo6046 has joined #openttd
16:34:55 <TrueBrain> I like that plan :D
16:34:59 *** Gustavo6046 has quit IRC ()
16:35:08 <glx> <_dp_> strings? how that didn't break with 1.10 ? <-- scripts are checked against an array of known version strings
16:38:36 <DorpsGek> [OpenTTD/OpenTTD] James103 commented on pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRxdF
16:42:30 *** Gustavo6046 has joined #openttd
16:48:54 <DorpsGek> [OpenTTD/OpenTTD] glx22 commented on pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRxNW
16:50:43 *** jottyfan has joined #openttd
16:51:57 <TrueBrain> glx: cheers
16:52:49 *** jottyfan has quit IRC ()
16:55:23 *** andythenorth has quit IRC (Quit: andythenorth)
16:56:18 <TrueBrain> "Your script made an error: the index doesn't exist"
16:56:19 <TrueBrain> that is new
16:56:37 <glx> in regression ?
16:56:52 <TrueBrain> when starting the game, but yes, in regression
16:56:59 <glx> weird
16:57:36 <TrueBrain> mainly as there is no indication what index it can't find :D
16:57:45 <TrueBrain> ah, GetAPIVersion
16:58:02 <DorpsGek> [OpenTTD/OpenTTD] James103 commented on pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRxx6
16:58:04 <glx> oh info.nut for both regression need update too of course
16:58:13 <TrueBrain> yup
17:00:24 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
17:00:40 <TrueBrain> so .. what do we think about it? Yay or nay?
17:01:52 <_dp_> YOLO
17:02:28 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
17:02:41 <TrueBrain> I am surprised findversion doesn't do anything with it .. lol
17:04:34 <TrueBrain> also cannot find anything in the release-flow to deal with it .. it is just passing it through as far as I can tell
17:05:44 <glx> release uses findversion output I think
17:05:56 <glx> ah no, it's the tag
17:06:13 <TrueBrain> just as-is :P
17:06:52 <_dp_> #9407 should probably get 12.0 milestone
17:10:50 <TrueBrain> lol, 1 BaNaNaS entry indeed has "< 2.0.0"
17:11:23 <TrueBrain> PTTS - Portuguese Trainset
17:11:27 <TrueBrain> guess we can fix that
17:14:26 <DorpsGek> [OpenTTD/BaNaNaS] TrueBrain opened pull request #103: Fix: NewGRF 50545453 has an upper-version-limit which is most likely not intentional https://git.io/JRpeR
17:15:52 <TrueBrain> nothing in BaNaNas (neither the API nor the frontend) validates the version needs to be major.minor.patch
17:16:00 <TrueBrain> so that means only bananas-server needs to know this
17:20:12 * peter1138 ponders upgrading all his Debian systems without any testing...
17:21:10 <DorpsGek> [OpenTTD/bananas-server] TrueBrain opened pull request #56: Add: support OpenTTD 12+ https://git.io/JRpvp
17:22:01 <TrueBrain> what else might break ..
17:22:07 <TrueBrain> master-server? Can't imagine why ..
17:22:09 <TrueBrain> lets test
17:24:21 <TrueBrain> hmm .. found a weird bug .. "invite code" is no longer in the Online Players GUI .. wth? Lol ..
17:24:29 <TrueBrain> how/when did that happen ..
17:26:24 <frosch123> TrueBrain: https://docs.openttd.org/gs-api/classGSController.html#a73ada389f61bae64e65ad81126f280f8 <- i guess that is just docs?
17:26:43 <TrueBrain> ha, lets fix that :)
17:28:17 <TrueBrain> okay, server-sorting is broken .. 12.0 is at the bottom :P
17:29:07 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
17:30:23 <glx> server sorting is always broken on new version
17:30:25 <frosch123> does it also need the +16 stuff?
17:30:37 <TrueBrain> shit, it does ..
17:30:44 <TrueBrain> glx: hasn't been broken for a while ;)
17:30:47 <TrueBrain> I kinda fixed that a while ago :)
17:31:17 <frosch123> is it possible to return tuples to squirrel?
17:31:28 <frosch123> returning bitfield from the API is weird
17:31:48 <TrueBrain> I agree; but for sure something for another PR to address :)
17:33:42 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9478: Fix 508e465b: network servers didn't show invite-code / connection-type in Online Players GUI https://git.io/JRpTa
17:34:23 <frosch123> aw, you installed some rabbit hole alarm?
17:34:28 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
17:34:32 <TrueBrain> frosch123: yup :)
17:34:59 <TrueBrain> added the +16 note
17:35:07 <TrueBrain> but yeah, it makes it painfully clear that this should not be a bitfield :D
17:36:18 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
17:36:23 <TrueBrain> there, some dots in the doxygen comment :P
17:37:30 <peter1138> I got updated to Firefox 91.0 the other day.
17:39:32 <DorpsGek> [OpenTTD/master-server-web] TrueBrain opened pull request #36: Add: support OpenTTD 12+ https://git.io/JRpIU
17:39:43 <peter1138> Although I imagine anyone using Firefox did, so, uh...
17:40:04 <TrueBrain> peter1138: any particular reason you tell us? :D
17:40:11 <TrueBrain> Firefox is exploring what happens when their version hits 100 :)
17:41:24 <TrueBrain> so after #9467, #9474, #9475 and #9478, I think 12.0-beta1 is ready to be shipped :) If anyone wants to do some quick reviews, would be nice! Release tomorrow? :D
17:58:23 <DorpsGek> [OpenTTD/website] TrueBrain commented on pull request #221: Add: 12.0-beta1 announcement https://git.io/JRpqp
18:01:13 <Wolf01> The problem with firefox is that dropping the major version made less clear which version started a breaking change, iirc the last (the last I used) was the 57 or 58
18:08:11 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
18:12:22 <_dp_> hm... how to tell the snow density of a tile in newgrf?
18:12:42 <_dp_> there is TILETYPE_NORMAL / TILETYPE_SNOW but where are the other 2 densities?
18:21:42 *** Progman has joined #openttd
18:24:12 <_dp_> oh, and objects have no snow density anyway :(
18:24:22 <_dp_> how can an object pick a ground sprite then?
18:24:58 *** andythenorth has joined #openttd
18:31:06 <_dp_> well, I guess I can always 4x the number of objects...
18:31:37 <_dp_> I long gave up on it being usable by humans anyway
18:33:32 *** gelignite has joined #openttd
18:48:45 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/JRpC2
18:48:46 <DorpsGek> - Update: Translations from eints (by translators)
18:50:19 <frosch123> _dp_: density is only stored in the map array for clear tiles and similar
18:50:34 <frosch123> industries houses have no map storage for that, so they compare tile height with snow line height themself
18:51:09 <frosch123> there is probably example code in ogfx+industries. or firs if you are brave enough
18:51:47 <_dp_> I already did comparison, it's just still wrong
18:51:54 <_dp_> as it doesn't update instantly in the game
18:52:19 <andythenorth> wasn't an nml convenience method added for snowline tile constants?
18:52:24 <_dp_> I mean other tiles don't
18:52:24 * andythenorth missed part of conversation
18:53:00 <_dp_> yeah, using snow line is no problem, it's just not quite the same
18:53:29 <_dp_> though I've no idea what happens to snowline if other newgfrs like opengfx+ landscape set it
18:55:19 <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/9478 <- anyone mind giving that a quick approve before nightly? Really simple PR :)
18:57:00 *** twpol has quit IRC (Ping timeout: 480 seconds)
18:58:06 <andythenorth> dynamic score text colours :P https://media.discordapp.net/attachments/337701432230805505/876177826515144774/unknown.png
18:58:21 <andythenorth> red doesn't have good contrast with the industry window colour so I used gold for gloomy
18:59:48 *** twpol has joined #openttd
18:59:51 <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9478: Fix 508e465b: network servers didn't show invite-code / connection-type in Online Players GUI https://git.io/JRplp
18:59:57 <frosch123> TrueBrain: isn't nightly like now?
19:00:14 <TrueBrain> in a few minutes .. hence my question ;)
19:00:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9478: Fix 508e465b: network servers didn't show invite-code / connection-type in Online Players GUI https://git.io/JRpTa
19:00:37 <TrueBrain> tnx frosch123 :)
19:01:06 <TrueBrain> breaking and fixing a build between nightlies, nice :D
19:01:09 <_dp_> https://cdn.discordapp.com/attachments/337701432230805505/876178563055878195/Screenshot_from_2021-08-14_22-00-32.png
19:01:32 <_dp_> surprisingly it works with opengfx+ but you can see how rivers freeze first because of snowline check
19:02:11 <_dp_> they also glitch a bit
19:04:40 <TrueBrain> I wonder how much GHA schedule drift these days .. haven't really been tracking that lately
19:08:55 <TrueBrain> there it is .. 5 minutes
19:08:56 <TrueBrain> that is not bad
19:09:48 <andythenorth> hmm seems I can't write stacked ternary ops
19:10:15 <TrueBrain> :(
19:16:14 <andythenorth> https://gist.githubusercontent.com/andythenorth/6f753933eff5d165014e1e8351858088/raw/17463d6ffeb2762836fddc37b142283be7b3a41b/gistfile1.txt
19:16:26 <andythenorth> optimism_score is 0, switch returns 2
19:16:56 <TrueBrain> that is expected, right?
19:17:02 <andythenorth> no
19:17:07 <andythenorth> I'm expecting 0
19:17:17 <TrueBrain> if (a < 3) return 2
19:17:20 <andythenorth> oh missing -
19:17:22 <andythenorth> ok
19:17:26 <andythenorth> thanks
19:17:29 <TrueBrain> np :)
19:17:45 <andythenorth> couldn't see for looking :P
19:18:14 <TrueBrain> #better-than-a-bot
19:22:04 *** bryjen has joined #openttd
19:22:51 <andythenorth> which is better? (text order and colour for scores)
19:22:52 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876177826515144774/unknown.png?width=1936&height=898
19:22:58 *** Progman has quit IRC (Remote host closed the connection)
19:22:59 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876184003219193896/unknown.png?width=1936&height=880
19:23:17 <TrueBrain> first
19:23:20 <TrueBrain> second has too much highlight
19:23:23 <TrueBrain> don't know what to read
19:25:38 <andythenorth> good
19:25:55 <andythenorth> matches my prejudice
19:26:33 <andythenorth> should I colour the mood text?
19:26:35 * andythenorth tries it
19:28:37 <andythenorth> don't really like the green
19:28:38 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876185520395391067/unknown.png?width=1936&height=898
19:28:45 <andythenorth> it's logical, but hard to read IMHO
19:28:49 <TrueBrain> too much different colours :)
19:29:00 <TrueBrain> we need progress bars :P
19:30:28 <andythenorth> dashboard meters :P
19:30:30 <_dp_> industry background sucks, it's all much better on brown like in towns
19:30:36 <andythenorth> those horrible swinging gauges no-one can read :)
19:30:48 <andythenorth> NO WAY ARE WE CHANGING ANY MORE BACKGROUND COLOURS EVER
19:30:52 <andythenorth> THAT WALL OF TEXT
19:31:07 <andythenorth> that dude who drove me out of forums
19:32:25 <TrueBrain> pretty sure that improved your life, so you should thank him ;)
19:32:41 <andythenorth> I could write a wall of text thanking
19:33:29 <andythenorth> hmm, seems I really have to learn about signing
19:33:29 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876186719328829490/unknown.png
19:33:34 <andythenorth> that maths really doesn't work
19:33:56 <andythenorth> so the procedure is returning 15 bit and drops the signing bit
19:35:09 <andythenorth> maybe I can use last_computed_result, but not sure how
19:36:35 * andythenorth tries nesting expressions, no dice
19:36:36 <TrueBrain> a & ((a & 0x4000) << 1)
19:36:41 <TrueBrain> 15bit -> 16bit sign extending :P
19:36:52 <TrueBrain> no clue if what I am saying is correct or useful :P
19:37:30 <andythenorth> me neither :D
19:37:32 <andythenorth> shall I try
19:39:06 <andythenorth> well
19:39:23 <frosch123> "(a << 1) >> 1" is easier?
19:39:30 <andythenorth> https://media.discordapp.net/attachments/337701432230805505/876188272005611600/unknown.png
19:39:36 <TrueBrain> frosch123: only if it sign-extends :P
19:39:51 <andythenorth> it's now differently wrong :P
19:39:57 <TrueBrain> I don't know what value NewGRF uses internally :D
19:40:02 <andythenorth> this is quite lolz
19:40:07 <andythenorth> it's so ... baroque
19:40:28 <TrueBrain> 15-bit signed values are a bit of a pita to work with I gather :D
19:40:29 <frosch123> TrueBrain: fair, its 32bit, so i need "(a << 17) >> 17" :)
19:40:37 <TrueBrain> frosch123: :D
19:40:51 <andythenorth> should I actually be doing this :P
19:41:14 <andythenorth> I could just do what I used to do and store the result in a temp register
19:41:15 <glx> if -16384..16383 range is enough for the score there's an easy solution
19:41:20 <andythenorth> instead of returning it from the procedure
19:41:23 <frosch123> what was the issue with nml functions retunring 15 bit
19:41:30 <andythenorth> glx yes that would be plenty
19:41:33 <frosch123> i remember a discussion about nml using last_switch_result
19:41:48 <frosch123> but since it was apparently not implemented there must have been some problem with it :)
19:42:13 <glx> at first I always used 1C as return value I think
19:43:12 <glx> but I can't remember why I removed it
19:43:37 <glx> oh maybe for complex expressions
19:44:22 <glx> like (a+proc()) * b
19:45:33 <glx> it's easy to incorrectly write nfo from nml
19:46:49 <glx> so we left the nml users to decide when to use last_computed_result
19:47:05 *** iSoSyS has joined #openttd
19:48:15 <frosch123> oh, i remember something. when the function does not "return computed value", but rahter use the switch-return-constants, then var1c will be the switch value, not the return value
19:48:50 <andythenorth> hmm
19:49:01 <frosch123> and you can write functions which can do both depending on some condition
19:49:05 <andythenorth> shall I just work around this using registers?
19:49:08 <frosch123> so nml cannot decide at compile time
19:49:49 *** iSoSyS has quit IRC ()
19:49:51 <frosch123> maybe nml should have some built-in sign-extend 15bit thingie?
19:49:52 <glx> andythenorth: you can add 16384 when returning, then remove 16384 when putting in stack
19:51:03 <TrueBrain> just add any value to make it non-negative :P
19:51:12 <TrueBrain> cheats!
19:51:30 <glx> non negative and fits in 15 bits :)
19:51:47 <glx> (almost)
19:52:53 <andythenorth> shall I just generate a random number for score?
19:53:00 *** Kitrana has joined #openttd
19:53:06 <TrueBrain> as long as you don't read forums, that will be fine
19:53:12 <andythenorth> I could cap to +/-16384 using max and min
19:54:55 *** Kitrana1 has quit IRC (Ping timeout: 480 seconds)
19:55:33 *** Kitrana1 has joined #openttd
19:58:35 <TrueBrain> funny, someone is running a subversion version of OpenTTD online :P
19:59:49 <DorpsGek> [OpenTTD/master-server-web] TrueBrain merged pull request #36: Add: support OpenTTD 12+ https://git.io/JRpIU
20:00:08 <andythenorth> shall I just shift the baseline for scoring to 16384
20:00:15 <andythenorth> so 'neutral' is 16384
20:00:32 <andythenorth> dealing with -ve numbers in a system that drops the signed bit is funny
20:01:05 *** Kitrana has quit IRC (Ping timeout: 480 seconds)
20:02:03 <DorpsGek> [OpenTTD/bananas-server] TrueBrain updated pull request #56: Add: support OpenTTD 12+ https://git.io/JRpvp
20:02:37 <frosch123> TrueBrain: game is dead, it has not been updated in years, even the svn server is unreachable?
20:03:00 <TrueBrain> yeah, SVN server has been unreachable for a few years now :P
20:03:04 <TrueBrain> since .. 2019 somewhere :D
20:03:17 <TrueBrain> but it is not even a dedicated server
20:03:21 <TrueBrain> which is the most surprising part :P
20:03:36 <TrueBrain> but I agree, game is dead
20:03:40 <TrueBrain> shitty developers :D
20:05:30 <DorpsGek> [OpenTTD/master-server-web] TrueBrain opened pull request #37: Fix: no longer show the configured maximum spectators https://git.io/JRpwN
20:07:42 <DorpsGek> [OpenTTD/bananas-server] TrueBrain updated pull request #56: Add: support OpenTTD 12+ https://git.io/JRpvp
20:07:52 <TrueBrain> fucking English typos ..
20:09:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
20:09:06 <TrueBrain> at least I did it consistently wrong :D
20:09:18 <DorpsGek> [OpenTTD/master-server-web] TrueBrain merged pull request #37: Fix: no longer show the configured maximum spectators https://git.io/JRpwN
20:09:29 <DorpsGek> [OpenTTD/bananas-server] TrueBrain merged pull request #56: Add: support OpenTTD 12+ https://git.io/JRpvp
20:13:28 <TrueBrain> I am so happy with OTTD_COORDINATOR_CS :) Testing staging has never been easier :)
20:14:21 <glx> why testing staging when the test can be done on prod ;)
20:14:44 <TrueBrain> :D
20:15:00 <andythenorth> uuf can't actually figure out how to solve this signing issue
20:15:46 <LordAro> "everyone has a staging environment. some people have the luxury of having a production environment as well"
20:15:55 <TrueBrain> well said :)
20:16:18 <TrueBrain> but, OpenTTD has both .. and I even tend to use both ;) It is shocking, I know!
20:16:28 <TrueBrain> https://servers.staging.openttd.org/server/+jJT4CkD <- see!
20:16:32 <LordAro> so i guess we're definitely targetting 12.0 now then? :p
20:16:46 <TrueBrain> yup
20:17:03 <TrueBrain> still hoping someone reviews 2 PRs that mostly remove shit, and 1 that adds a simple tutorial, but other than that: good to go ;)
20:17:50 <DorpsGek> [OpenTTD/bananas-server] TrueBrain created new tag: 1.3.0 https://git.io/JRpKq
20:17:54 <glx> oh we'll break all scripts targeting nightly
20:18:12 <glx> probably not that many on bananas
20:18:16 <DorpsGek> [OpenTTD/master-server-web] TrueBrain created new tag: 1.3.0 https://git.io/JRpKn
20:18:30 <TrueBrain> glx: let me check out how many! As that is a good point :)
20:19:13 <LordAro> TrueBrain: i'll be away for a significant part of tomorrow, you may have to rely on others for reviews :p
20:19:22 <TrueBrain> you can review now! :P
20:19:43 <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/9467 <- removes lots of code, very simple review :P
20:20:54 <TrueBrain> glx: 0 AIs, 0 GSes
20:20:56 <TrueBrain> target 1.12
20:21:00 <glx> nice
20:21:08 <TrueBrain> so that is a bit of luck there :D
20:21:37 <glx> I know Samu's latest version are targetting 1.12, but not uploaded yet
20:22:01 <TrueBrain> so he has to retarget after we merge that PR, yes :)
20:22:01 <andythenorth> what if I change the mechanic?
20:22:14 <andythenorth> so that score has a floor of 0?
20:23:12 <TrueBrain> when you call something "points", that sounds better
20:23:17 <TrueBrain> as getting negative points, feels weird
20:23:28 <TrueBrain> negative score, sure, but negative points .. dunno
20:23:33 <TrueBrain> you get -1 star from your teacher, well done :P
20:23:38 <andythenorth> well scores are made up of points
20:23:39 <andythenorth> but ok :P
20:23:40 <glx> andythenorth: how many times are you calling ${industry.id}_extra_text_get_pollution_and_squalor_score() ?
20:23:57 <andythenorth> once only
20:23:59 <glx> if only once for each then just inline them
20:24:12 <andythenorth> can't LOAD_PERM
20:24:16 <andythenorth> they're town context
20:24:19 <andythenorth> so won't work
20:24:24 <andythenorth> has to be proceduralised
20:24:37 <andythenorth> or I put the results in temp registers
20:24:43 <andythenorth> trying temp registers currently
20:24:47 <glx> then LOAD_PERM and STORE_TEMP yes
20:25:58 <andythenorth> ha still wrong
20:26:10 <andythenorth> it just doesn't understand signed values properly
20:26:29 <andythenorth> when originally stored these are dwords afaict
20:26:32 <andythenorth> do I need to shift?
20:27:50 <DorpsGek> [OpenTTD/BaNaNaS] joaogenio approved pull request #103: Fix: NewGRF 50545453 has an upper-version-limit which is most likely not intentional https://git.io/JRpiq
20:28:42 <DorpsGek> [OpenTTD/BaNaNaS] TrueBrain merged pull request #103: Fix: NewGRF 50545453 has an upper-version-limit which is most likely not intentional https://git.io/JRpeR
20:28:54 <TrueBrain> I love that we can reach authors!
20:29:52 <andythenorth> uuf ok
20:29:58 <andythenorth> I think I need to rework the mechanic
20:30:33 <andythenorth> I am all out of ideas at this point :P
20:31:00 <andythenorth> I need a score that contains penalties (-ve points) but can't go negative
20:31:12 <glx> but load perm store temp should work
20:31:16 <andythenorth> it doesn't
20:31:30 <andythenorth> well it shows an accurate value of 32673
20:31:36 <andythenorth> which is also what is stored
20:31:43 <andythenorth> but it doesn't know the sign
20:32:20 <glx> strange
20:32:32 <andythenorth> I wonder if I'm doing something wrong further up
20:32:44 <andythenorth> I wrote procedures for STORE_PERM_TOWN
20:32:51 <andythenorth> but they don't rely on returning
20:33:15 <glx> you can check perm registers in openttd ?
20:33:27 <andythenorth> yes
20:33:33 <andythenorth> debug menu
20:33:48 <glx> and the value is correct there ?
20:35:59 <glx> before trying to debug strings it's better to be sure the perm registers are correct :)
20:37:24 <andythenorth> well -5 is 32763
20:37:39 <andythenorth> I thought words went up to 65536
20:37:39 <andythenorth> but eh
20:37:52 <glx> unsigned word do
20:37:55 <andythenorth> I expected 65531 but I didn't put it into an online calculator to check
20:38:05 <andythenorth> oh does it rely on the signed bit?
20:38:36 <glx> FFFF is -1 signed, but 65536 unsigned
20:39:04 <andythenorth> ok
20:39:39 <andythenorth> and that is parsed somehow to be 32763?
20:40:21 <TrueBrain> 65535 glx ;) sorry :p
20:40:34 <glx> yeah whatever :)
20:40:35 <andythenorth> my bad
20:40:38 <andythenorth> :)
20:40:55 * andythenorth is worried the initial value stored is wrong
20:41:14 <glx> -5 is FFFB
20:41:34 <glx> 32763 is 7FFB
20:41:47 <glx> bit 15 is gone
20:41:55 <andythenorth> ok
20:42:03 * andythenorth tries fixing further up
20:45:59 <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #9467: Feature: make "join game" button join the game, instead of first showing a lobby window https://git.io/JRp1J
20:46:19 <frosch123> since it is client-side only, i wonder which patchpack will add the window back :p
20:46:56 <andythenorth> lol this is fucked up :) https://media.discordapp.net/attachments/337701432230805505/876205228301647902/unknown.png?width=1936&height=920
20:46:59 <andythenorth> look at the pluralisation
20:47:04 <andythenorth> both have been fed the value '1'
20:47:37 <andythenorth> I guess the offsets are wrong again
20:47:50 <TrueBrain> haha, conflicting information .. one dev want me to add it, the other says not to add it :P
20:48:19 <glx> one seems ok andythenorth, but they both use the same offset so probably wrong offset
20:48:20 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9467: Feature: make "join game" button join the game, instead of first showing a lobby window https://git.io/JRp1s
20:48:39 <andythenorth> yeah the offset is wrong
20:48:54 <TrueBrain> frosch123: you say, remove all the changelog entries?
20:48:57 <glx> I wonder which random value it reads
20:49:10 <frosch123> TrueBrain: https://docs.openttd.org/gs-api/classGSWindow.html#details
20:49:20 <andythenorth> one of the ones above
20:49:27 <andythenorth> plural handling is so fragile :)
20:49:33 <andythenorth> fixed
20:49:37 <frosch123> we never added any changes (because it is tedious and silly), and we explicitly documented that that is the case
20:49:44 <TrueBrain> sorry glx, going to remove them again :D
20:49:55 <glx> np
20:49:59 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9467: Feature: make "join game" button join the game, instead of first showing a lobby window https://git.io/JRoWg
20:50:55 <frosch123> oh, there is a PR to remove the lobby stuff from the server :p
20:51:11 <frosch123> the discussion in the client PR read like that is too much work :)
20:51:58 <TrueBrain> for that PR :)
20:52:10 <TrueBrain> I did add an "edit", didn't I?
20:52:26 <TrueBrain> I am very rabbit-hole aversive :P
20:52:43 <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9467: Feature: make "join game" button join the game, instead of first showing a lobby window https://git.io/JRp1M
20:52:44 <TrueBrain> ah, let me edit my edit to make it more clear .. that is silly english of me :D
20:52:44 <glx> traped yourself too many times
20:53:07 <TrueBrain> yeah, and I don't have -that- much time atm .. so I have to be careful what I take on and what not :D
20:54:14 <frosch123> i wonder, are those lobby commands used by people to show the server status on their website?
20:54:29 <frosch123> or do they all use soap or other admin port stuff for that?
20:54:32 <DorpsGek> [OpenTTD/OpenTTD] michicc commented on pull request #9346: Feature: [NewGRF] Maximum curve speed modifier for rail vehicles https://git.io/JRp1p
20:54:42 <TrueBrain> they SHOULD all be using the admin port for that, but .. I really do not know
20:55:28 <andythenorth> if I just cap these scores to bytes do my problems go away?
20:55:37 <andythenorth> 8 bit signed value fits in a 15 bit result?
20:56:00 <frosch123> TrueBrain: ah nevermind, multiplayer list also shows the info i meant
20:56:01 <TrueBrain> frosch123: but the more I think about it, I do think we should remove it .. as #7268 is correct to state that it is weird that you can fetch this information from a password protected server
20:56:08 <frosch123> so i guess it does not require the lobby packets for that
20:56:22 <TrueBrain> what is on servers.openttd.org doesn't need the lobby packet, no
20:56:36 <TrueBrain> but company name, who is playing in what company, etc, does
20:57:01 <frosch123> we have 10 "unnamed server" :p
20:57:18 *** bryjen has quit IRC (Quit: Leaving)
20:57:18 <TrueBrain> I am happy Rb fixed that .. that isn't possible anymore with 12.0 :)
20:57:30 <TrueBrain> well, those that had it, can still have it, but new players cannot :P
20:57:51 *** Tirili has joined #openttd
20:58:21 <frosch123> hmm, didn't you have a script to find unused stringid?
20:58:33 <TrueBrain> I started on it, but it was nearly impossible
20:58:35 <frosch123> i think the lobby window used some other weird strings, that noone else used
20:58:40 <TrueBrain> all those sneaky "and the one after"
20:59:45 <TrueBrain> or, "the one before"
20:59:55 <TrueBrain> depending on what part of the code you look at :P
21:02:32 <frosch123> oh, i remembered what my "string issue with the lobby window" was :)
21:02:41 <TrueBrain> oh-oh :D
21:02:52 <frosch123> for nrt we considered splitting road vehicles and trams in more places
21:03:05 <frosch123> but noone dared extendnig th elobb ypacket for 5 vehicle types
21:03:16 <TrueBrain> ha :D
21:03:21 <TrueBrain> yeah, it is not versioned
21:03:24 <TrueBrain> which is a bit odd
21:03:44 <TrueBrain> the packet really should have had his own version number, like we do with game-info :)
21:03:46 <andythenorth> why does (2 > 16383) evaluate true?
21:03:59 <frosch123> because it's prime
21:04:04 <frosch123> it's just a cooler number
21:04:12 <andythenorth> optimus prime :P
21:04:12 <TrueBrain> how .. did you spot that so quickly? :P
21:04:25 <andythenorth> frosch123 is AI
21:04:38 <andythenorth> that's why couldn't appear on stream first time
21:04:41 <frosch123> TrueBrain: i know a lot of facts about even primes
21:04:42 <andythenorth> second time was CGI
21:05:00 *** gelignite has quit IRC (Quit: Stay safe!)
21:05:16 <_dp_> "2" > "16383"
21:05:23 <andythenorth> 2 is a 15 bit value loaded from storage
21:05:23 <frosch123> for example, if you double an even prime, you always get a number with a proper integer root
21:05:29 <andythenorth> so maybe it's still got a sign
21:05:44 <TrueBrain> "an even prime" .. so 2? :P
21:05:54 <frosch123> for example
21:06:00 <TrueBrain> it is the only prime that is even :P
21:06:03 * andythenorth was trying to store a number to add to the result
21:06:08 <andythenorth> to fix the signed-ness
21:06:14 <frosch123> TrueBrain: does that make it less awesome?
21:06:28 <TrueBrain> I love how you make it sound really special :P
21:06:46 <frosch123> i have a job where i am scored by my results
21:07:22 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9467: Feature: make "join game" button join the game, instead of first showing a lobby window https://git.io/JRoWg
21:08:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9475: Remove: COMPANY_INFO packets and related code https://git.io/JRNry
21:08:19 <TrueBrain> so you spend it on these kind of trivia? :D
21:09:54 <glx> andythenorth: main issue is it's not easy to debug newgrf, you have to break at the right place
21:10:15 <andythenorth> usually I write values to text stack :P
21:10:38 <frosch123> wtf is #9398? i can't figure out whether that's a squirral parser bug, or some arcane feature
21:11:09 <frosch123> i prefer people who use parser generators from grammars
21:11:18 <frosch123> those parsers do not have such silly things
21:11:52 <DorpsGek> [OpenTTD/OpenTTD] James103 commented on pull request #9474: Add: [InterfaceTutorial] show tutorial the first time you join any server https://git.io/JRpDb
21:12:09 <glx> squirrel parser is a pain to read ;)
21:13:20 *** Progman has joined #openttd
21:13:54 <glx> I think it's all handcrafted
21:14:00 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9474: Add: [InterfaceTutorial] show tutorial the first time you join any server https://git.io/JRFtT
21:14:09 <TrueBrain> glx: always what I assumed too, yes :)
21:14:28 <andythenorth> ok the problem was upstream in my code
21:14:31 <andythenorth> FML
21:14:44 <andythenorth> I wrote some convenience procedures for writing to town
21:14:47 <andythenorth> but they're dangerous
21:14:59 <andythenorth> they're writing 15 bit values into 16 bit storage
21:15:06 <TrueBrain> :(
21:15:17 <TrueBrain> well, at least you found it!
21:15:37 <andythenorth> at least :P
21:15:48 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9475: Remove: COMPANY_INFO packets and related code https://git.io/JRpyB
21:15:48 <glx> I'm not sure it was a good idea to give procedures to andythenorth
21:16:08 <andythenorth> it was all fine when I was ignorant about 'return'
21:16:21 <andythenorth> I didn't know I could return anything, so I was storing to temp registers all the time and reading them
21:16:37 <andythenorth> 'procedure_foo(), LOAD_TEMP(1)' or so
21:16:53 <andythenorth> "ignorance is safer"
21:17:33 <glx> you just need a post-it with "procedures return is 15bit"
21:18:02 <andythenorth> might just delete all of them and refactor
21:22:20 <glx> if you return only positive or unsigned it's almost safe (of course range is limited to 0-32767)
21:22:35 <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9475: Remove: COMPANY_INFO packets and related code https://git.io/JRpSk
21:23:08 <andythenorth> I should teach my templater to fix this
21:23:32 <andythenorth> limit values to 16383 or so, then shift them
21:23:34 <glx> for negative or bigger value you'll need to carefully use last_computed_result
21:23:51 <andythenorth> I couldn't figure out how to do that
21:24:04 <TrueBrain> Right .. #9475 has the potential to backfire, but we will find out! :D
21:24:06 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed issue #7268: Suggestion: Option not to disclose server information when password-protected https://git.io/fhbLp
21:24:09 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9475: Remove: COMPANY_INFO packets and related code https://git.io/JRNry
21:24:13 <andythenorth> can I just return 0 as the result then do `procedure_foo | last_computed_result'
21:24:19 <glx> depending on usage of the procedure it's not easy
21:24:25 <andythenorth> `procedure_foo() | last_computed_result'
21:24:56 <andythenorth> not sure I understand what last_computed_result will actually be
21:24:58 <TrueBrain> wauw, I did not intend the merge to close that issue
21:25:02 <TrueBrain> but okay, I was going to do it anyway .. :P
21:25:46 <frosch123> "Means we can also safely close #7268" <- that i guess?
21:26:19 <glx> "return;" returns last computed result (as 15bit), I think if you return 0 your trick will work
21:26:24 <TrueBrain> yeah ..
21:26:55 <glx> last computed result is the value used to switch
21:27:05 * andythenorth might have to draw trains for the next 3 months as therapy after this :)
21:28:40 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #7268: Suggestion: Option not to disclose server information when password-protected https://git.io/fhbLp
21:31:50 <TrueBrain> right, one left before beta1 can be cooked .. interface tutorial :D
21:32:24 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
21:32:24 <frosch123> i prefer the MOTD version, since I don't think the generic tutorial fits all servers
21:32:37 <TrueBrain> LordAro: I added a bunch of "[Network]" in the changelog, let me know if you disagree :)
21:32:40 <frosch123> but it sounds like there was a lot of discussion, which i did not folow :)
21:32:49 <TrueBrain> "a lot" is a strong word
21:33:19 <TrueBrain> MOTD is a bit tricky, as both nm and I agree'd that ideally we want it to be multiline .. but that is kinda hard :)
21:33:23 <TrueBrain> will take a lot more effort
21:34:18 <glx> some servers use GS to do MOTD, some use a script
21:34:21 <TrueBrain> but that is also why I made the tutorial only show up once in your (OpenTTD) life :)
21:34:31 <TrueBrain> so it doesn't really matter if it fits a server or not :)
21:35:01 <TrueBrain> glx: yeah, that is why I think an official MOTD solution would still be best, but .. yeah .. needs more time and effort :D
21:36:47 <TrueBrain> it was funny how niels assumed the MOTD would be for dedicated servers only, which I fully understand. Also shows that it is missing the purpose for what I build it ;)
21:37:25 <glx> maybe a check box for "show me again next time" would be better for tutorial window
21:37:47 <TrueBrain> hmm .. that should be possible, I think
21:37:57 <TrueBrain> but first I like to know if we want this, before I spend more time on it :D :D
21:38:16 <frosch123> are there more questions "how to join a company" than "how to build a bus station"?
21:38:52 <TrueBrain> it is a good question, and I do not know the answer :D
21:38:56 <glx> and Online Client window is not harder to understand than lobby window I think
21:39:17 <TrueBrain> so, no tutorial for now, just opening the Online Players GUI?
21:39:18 <frosch123> imagine the tooltip would explain how to use chat to ask other players :p
21:39:23 <frosch123> would that be a curse? :p
21:39:44 <frosch123> TrueBrain: the latter i like a lot
21:40:06 <frosch123> the in-game tutorial seems a bit out of place for me
21:40:27 <TrueBrain> I guess it only works if we add it to many more places ;)
21:40:30 <andythenorth> "MISTAKES WERE MADE" https://github.com/andythenorth/firs/commit/f64771a06b2554e1639319489272a30c2c47a108
21:40:34 <frosch123> it's not something we would grow to a size where it makes sense
21:40:48 <TrueBrain> but I am pragmatic: I tried 2 different ways to add hints to players .. I am fine by just seeing what happens without any :D
21:40:51 <frosch123> TrueBrain: yep, but that will attract as many contributions as the wiki :p
21:41:01 <glx> should be possible to make Online Client unclosable while you are spectator
21:41:12 <TrueBrain> glx: sounds like an anti-feature
21:41:12 <glx> (maybe annoying though)
21:43:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9479: Add: open Online Players GUI on joining a server https://git.io/JRpHW
21:43:36 <glx> at least it's quite visible when you are a spectator now, it's displayed in status bar, and online player window also shows it clearly
21:43:38 <TrueBrain> there, the common commit of both PRs :P
21:44:06 <TrueBrain> yup. And I might be 100% wrong that players might be confused .. at least, I agree that it might be as confusing as: "how do I build a bus-station?" :D
21:44:42 <glx> beta will tell us who was right/wrong ;)
21:45:04 <andythenorth> "forums will tell us" :)
21:45:07 <TrueBrain> I like this experimental way of seeing what we like and not like :)
21:45:10 <andythenorth> me too
21:45:12 <TrueBrain> MOTD: yes, we like, but no needs more work
21:45:16 <andythenorth> it's only cartoon trains
21:45:20 <glx> hoping more people use beta than nightlies
21:45:20 <TrueBrain> Tutorial: no, as that will never finish
21:45:24 <TrueBrain> my summary of today :P
21:46:01 <glx> main advantage of beta against nightly is "stability"
21:46:13 <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on pull request #9479: Add: open Online Players GUI on joining a server https://git.io/JRpHD
21:46:51 <frosch123> what is the network_gui.cpp change? is that related or by accident in that PR?
21:47:06 <TrueBrain> it is in the description! :D
21:47:16 <TrueBrain> like, it is the whole description ;)
21:47:41 <TrueBrain> euh, open only when spectator, or always .. hmm .. I just went for always, as I think most people would enjoy that
21:47:49 <TrueBrain> but I don't have any issue with opening it only when spectator
21:48:10 <andythenorth> finally! :) https://media.discordapp.net/attachments/337701432230805505/876220648073097287/unknown.png?width=1936&height=609
21:48:16 <glx> I think many online users will open it if it's not anyway
21:48:18 <TrueBrain> gratz andythenorth
21:48:24 <glx> to see who is online
21:48:25 <andythenorth> actual industry calculation doesn't work yet ^
21:48:31 <andythenorth> next! fire GS event from grf
21:48:41 <TrueBrain> glx: that is also what I think .. but I have nothing to base that on :P
21:48:47 <andythenorth> I have a GS to test with :P
21:49:13 <andythenorth> I wasn't enjoying GS much, but after today...
21:49:28 * andythenorth traumatised by self-inflicted grf wounds
21:49:45 <TrueBrain> frosch123: do you have a feeling with why only opening for spectator would be better?
21:50:05 <glx> andythenorth: now imagine writting NFO for that by hand
21:50:12 <andythenorth> pls no :(
21:50:18 <andythenorth> 7E
21:50:26 <andythenorth> "/2sto"
21:50:33 <frosch123> just going by "i only want to join a company, i don't want to talk to people" :p
21:50:49 <frosch123> but i am fine with showing it always
21:50:51 <andythenorth> not sure I like colouring the 'mood' text
21:51:06 <TrueBrain> it is that I really do not like adding settings :D
21:51:46 <glx> I vote for always open and wait for returns from beta :)
21:52:31 <andythenorth> overton window
21:52:36 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9479: Add: open Online Players GUI on joining a server https://git.io/JRpQR
21:52:46 <TrueBrain> guess at least I should fix that a server should also get it opened in that case
21:52:48 <TrueBrain> as it isn't now
21:52:50 <andythenorth> https://en.wikipedia.org/wiki/Overton_window
21:52:57 <andythenorth> one of my favourite political concepts :D
21:54:59 <TrueBrain> ugh, where to hook that in for a server .. eeeuuuhhhh
21:56:30 <TrueBrain> okay, can I change my opinion to "spectator only"? :D
21:57:14 <frosch123> i do not even know whether starting a non-dedicated server makes you join as spectator or as new company
21:57:21 <TrueBrain> new company
21:57:34 <TrueBrain> and I think that is fine :)
21:58:15 <glx> IIRC some wanted to start non dedicated as spectator
21:58:26 <glx> like AI testers
21:58:35 <frosch123> sounds like the S guy
21:58:51 <nielsm> starting a "headful" server giving the host a new company automatically makes sense imo, since the general use case (in my head) for that is LAN play where the host wants to participate anyway
21:59:24 <glx> yup, if you start with GUI you want to play
21:59:25 <nielsm> I can see some niche use cases like testing AIs but if you're dedicated to things like that you may as well set up a dedicated (heh) server
21:59:39 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
21:59:44 *** sla_ro|master has quit IRC ()
22:00:22 <TrueBrain> found the place to hook :D
22:00:23 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9479: Add: open Online Players GUI on joining a server https://git.io/JRpHW
22:01:07 <TrueBrain> now the Online Players GUI opens for both non-dedicated server and people that join
22:01:29 <andythenorth> ha ha, however we fire GS events from grf, can we make them 15 bits :P
22:01:42 <glx> and server has direct access to invite code
22:02:05 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9474: Add: [InterfaceTutorial] show tutorial the first time you join any server https://git.io/JRp7S
22:02:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #9474: Add: [InterfaceTutorial] show tutorial the first time you join any server https://git.io/JRFtT
22:04:04 <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9479: Add: open Online Players GUI on joining a server https://git.io/JRp7p
22:04:58 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9469: Feature: servers can now set a Message Of The Day https://git.io/JRp5e
22:05:01 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain closed pull request #9469: Feature: servers can now set a Message Of The Day https://git.io/JRo1y
22:05:47 <TrueBrain> tnx a bunch for the reviews frosch123 , much appreciated :)
22:06:07 <TrueBrain> now to impatiently wait for the CI to finish :P
22:07:23 <TrueBrain> I would really like the MOTD to support things like {RED} .. still have to read up on how that actually works in OpenTTD, as I have no clue :P
22:10:28 <TrueBrain> MSYS why you slow?
22:10:48 <glx> disk access
22:10:58 <TrueBrain> so we should create a tmpfs you say? :D
22:11:03 <glx> slow on windows, slower for mingw
22:11:14 <glx> because extra layer
22:16:04 <TrueBrain> it is funny, Mingw is not mandatory, but the annotation check is ..
22:16:21 <TrueBrain> or at least, something is blocking the merge while mingw is running
22:16:45 <TrueBrain> no, not annotations
22:16:49 <TrueBrain> just any running task
22:17:01 <TrueBrain> so required is a bit of a misguided setting? Dunno :P
22:17:06 <glx> annotations are not mandatory either IIRC
22:17:14 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9479: Add: open Online Players GUI on starting/joining a server https://git.io/JRpHW
22:17:22 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
22:17:22 <glx> but all should finish
22:17:36 <TrueBrain> right, that should be it
22:18:32 <TrueBrain> so that PR together with https://github.com/OpenTTD/website/pull/221 should be all it takes now :D
22:18:45 <TrueBrain> will also be our first signed Windows release, how about that :P
22:19:10 <andythenorth> \o/
22:19:13 <glx> oh should be mentionned in the post
22:19:20 <glx> it's an important detail
22:19:27 <TrueBrain> glx: like "Our official Windows builds are now signed."? :)
22:19:34 <TrueBrain> guess people don't read what I write :P :P :P
22:19:34 <TrueBrain> <3
22:19:50 <glx> I read, but missed that part
22:19:57 <TrueBrain> I am just pulling your leg :)
22:20:26 <glx> at least I saw the 1.12.0 -> 12.0 explanation :)
22:20:31 <TrueBrain> :D :D :D
22:20:34 <TrueBrain> burn
22:20:35 <TrueBrain> :)
22:21:42 <TrueBrain> owh, right, I also need to update gog after release .. must remember that
22:22:46 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
22:22:53 <_dp_> technically supporting string codes is just a matter of some flags but UI is going to be tricky because compiling strings is tied with i18n support atm.
22:22:53 <TrueBrain> ugh, I need to stop looking at the changelog, I keep finding small mistakes .. :P
22:23:18 <andythenorth> perfection!
22:23:27 * andythenorth should sleep
22:23:30 <andythenorth> sleeping failure
22:23:42 <glx> I think some string codes work for RAW_STRING, and some don't
22:23:44 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9477: Doc: Prepare for 12.0-beta1 release https://git.io/JRA4c
22:23:45 <TrueBrain> STOP ITTTTTTTTTTTTTT
22:23:46 <andythenorth> would good local transport make a population more optimistic?
22:23:52 <TrueBrain> (sorry, getting mad at myself :P)
22:24:00 * andythenorth exploring 80+ town vars
22:24:13 <TrueBrain> glx: I found out that \n becomes a ?
22:24:15 <TrueBrain> that made me giggle :D
22:24:18 <glx> IIRC some raw string start with XXX so a color code can be inserted
22:24:40 <TrueBrain> ah, yes, that trick .. I vaguely remember something about that ..
22:25:15 <TrueBrain> but yes, zzz time
22:25:19 <TrueBrain> tomorrow release time :)
22:25:23 <TrueBrain> night all
22:25:43 <_dp_> I'm not sure it still exists as I don't remember seeing any XXX
22:26:47 <glx> https://github.com/OpenTTD/OpenTTD/blob/579f393374c4fae2458523a674c453349fce7c59/src/strings.cpp#L2135
22:27:34 <TrueBrain> owh, the nightmare, it is coming back to me .. no glx, what have you doooonnnnneeeeeeee :P
22:27:36 <glx> and also L2156 and L2184
22:28:29 <_dp_> well, that's just a corner case
22:29:23 <glx> but yeah very haccky
22:33:45 <_dp_> reminds me I actually have this whole thing for about the same purpose xD https://pastebin.com/mnCLJd44
22:34:34 *** frosch123 has quit IRC (Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn)
22:35:30 *** Samu has quit IRC (Ping timeout: 480 seconds)
22:36:35 <_dp_> or, well, it's for param encoding, colour I probably wouldn't bother encoding and just used a compiled character.
22:37:01 <andythenorth> tried blue for 'gloomy' https://media.discordapp.net/attachments/337701432230805505/876232926872879174/unknown.png?width=1936&height=605
22:37:10 <andythenorth> not convinced the mood should be coloured
22:37:14 <andythenorth> anyway sleep time
22:37:19 <andythenorth> thanks for all the help :)
22:38:43 *** esselfe has quit IRC (Remote host closed the connection)
22:40:13 *** andythenorth has quit IRC (Quit: andythenorth)
22:44:32 *** esselfe has joined #openttd
22:51:01 *** WormnestAndroid has quit IRC (Remote host closed the connection)
22:51:13 *** WormnestAndroid has joined #openttd
23:27:17 *** nielsm has quit IRC (Ping timeout: 480 seconds)