Times are UTC Toggle Colours
00:10:56 *** glx has quit IRC 01:22:56 *** WormnestAndroid has quit IRC 01:23:11 *** WormnestAndroid has joined #openttd 01:26:13 *** spnda has quit IRC 02:07:55 *** gnu_jj has joined #openttd 02:16:54 *** gnu_jj has quit IRC 02:22:25 *** D-HUND has joined #openttd 02:25:44 *** debdog has quit IRC 02:55:12 *** Wormnest has quit IRC 03:10:49 <DorpsGek> [OpenTTD/bananas-api] perezdidac updated pull request #85: Change: add upload-date to packet size validation https://git.io/JYQMM 03:44:46 *** Flygon has joined #openttd 04:02:35 *** didac has joined #openttd 04:40:22 *** snail_UES_ has quit IRC 06:10:44 *** didac has quit IRC 06:26:06 *** erle- has joined #openttd 06:32:51 *** gelignite has joined #openttd 07:11:51 *** andythenorth has joined #openttd 07:12:13 <andythenorth> coffee time 07:12:21 <Xaroth> Tea time for me. 07:17:16 <peter1138> VS Code has this neat feature where you can type in the file list, and it will filter. However it doesn't search for files inside directory trees which are not expanded. 07:17:23 <peter1138> Maybe there's an option... 07:18:25 <DorpsGek> [OpenTTD/OpenTTD] telk5093 commented on issue #9035: No obvious way to change player name during multiplayer session https://git.io/JOmiO 07:25:43 * peter1138 ponders removing separate sprite/text scaling for the GUI. 07:27:18 *** HerzogDeXtEr has joined #openttd 07:30:15 <andythenorth> the split of UI size and font size? 07:30:21 <andythenorth> or an implementation thing? 07:30:44 <peter1138> The split. 07:31:21 <peter1138> GAH, sprites with offsets :( 07:32:54 <andythenorth> I missed when it was split, or the rationale :P 07:32:59 <andythenorth> there was probably a PR 07:33:46 <peter1138> Pretty sure it was pre-git. 07:35:24 <peter1138> github made all contributors equal (but some are more equal than others) 07:37:21 <peter1138> Okay that is fine with OpenGFX. 07:39:28 *** supermop_Home_ has quit IRC 07:49:05 <peter1138> So if I open a build toolbar at 1x zoom, I can change zoom level and it all works. If I open it at 2x or 4x zoom, it won't go smaller that how it started. 07:49:50 <peter1138> Well, height anyway. Width works. 07:50:48 <peter1138> I wonder if there's a minimum I'm not resetting. Hmm. 07:52:25 *** sla_ro|master has joined #openttd 07:55:38 *** Gustavo6046 has quit IRC 08:00:13 <peter1138> That 5 minutes went quick :( 08:00:45 <andythenorth> same 08:00:55 * andythenorth drawing Pacers 08:01:04 <andythenorth> crap train 08:07:49 <peter1138> I have closed vs code and opened vs code intead. 08:09:00 <peter1138> But my tummy is rumbling :( 08:09:36 <LordAro> speaking of, i need to go get some milk 08:10:14 <peter1138> I already ate. More coffee needed. 08:12:14 <andythenorth> coffee is food 08:17:39 <peter1138> Yeah but near zero calorie. 08:18:44 <andythenorth> all the feels though 08:18:53 * andythenorth should leave the channel, my boss needs me to work 08:19:29 *** andythenorth has left #openttd 08:21:07 <LordAro> isn't andy his own boss? 08:21:31 <LordAro> or maybe it's wife/child 08:26:44 *** FLHerne_ has joined #openttd 08:29:06 *** gelignite has quit IRC 08:35:45 *** FLHerne_ has quit IRC 08:36:59 *** FLHerne_ has joined #openttd 08:48:33 *** Wuzzy has joined #openttd 08:50:33 *** FLHerne has joined #openttd 08:50:33 *** FLHerne_ has quit IRC 08:51:14 <Xaroth> Maybe his split personality? 09:14:29 *** FLHerne has quit IRC 09:30:51 <peter1138> Well, he still needs to work. 09:36:37 *** Wolf01 has joined #openttd 09:47:36 <TrueBrain> std::map have a weird "for" syntax .. but it feels like Python, so I am fine with it :P 09:52:07 <peter1138> Weirder than the range syntax for std::vector etc? 09:52:19 <TrueBrain> do I want to know what that syntax is? :D 09:52:40 <peter1138> Um :-) 09:53:50 <TrueBrain> or do you just mean the "for (auto &i : v)" ? 09:53:54 <peter1138> Yes. 09:53:58 <TrueBrain> (sorry, C++ lingo is far behind my current capabilities :P) 09:54:04 <TrueBrain> and yes, it is weirder 09:56:22 <TrueBrain> I like that in OpenTTD instead of using non-block connects, we use a thread around a blocked connect :D 09:56:26 <TrueBrain> it is far easier code :P 09:59:05 <peter1138> Yes but. Leads to accidental main-loop locking... 09:59:21 <TrueBrain> only if you have a weird network setup :P :P 10:08:46 <peter1138> :D 10:08:54 <peter1138> Also that's a bug in my chat history patch 10:09:06 <peter1138> I think I should be using auto &cmsg, not auto cmsg. 10:09:37 <peter1138> (As _chatmsg_list is not pointers) 10:09:48 <TrueBrain> sounds like a smart idea, yes :D 10:10:45 <TrueBrain> I spend a bit too much time trying to find a place to put code 10:10:50 <TrueBrain> rather than writing code, I have noticed 10:10:57 <peter1138> And scrolling the file list. 10:11:05 <TrueBrain> that too 10:11:28 <peter1138> That reminds me, I wonder if there's an option that'll include collapsed directories (when typing into the file list) 10:13:05 *** Samu has joined #openttd 10:13:48 *** Synck has joined #openttd 10:18:38 <peter1138> Funny how players still spam buoys everywhere. 10:24:02 <TrueBrain> so ... sometimes I work in Python, sometimes in C++ .. like .. I switch every 10 minutes currently or so 10:24:06 <TrueBrain> that leaves interesting problems 10:24:09 <TrueBrain> I change some C++ file 10:24:11 <TrueBrain> run the game 10:24:13 <TrueBrain> huh? nothing changed? 10:24:16 <TrueBrain> owh .. forgot to rebuild 10:24:16 <peter1138> :) 10:24:18 <TrueBrain> really annoying :D 10:31:12 <peter1138> With your network lobby stuff, will notjoshno say there's no point, you can just Google to find out how to setup port forwarding? 10:31:25 <TrueBrain> peter1138: yes 10:31:34 <TrueBrain> as making things easier for users is NOT our core business 10:32:03 <TrueBrain> hmm .. something is weird with the OpenTTD's network stack .. when a packet is too short, it starts returning 0s instead of errors, causing weird behaviour throughout the stack 10:32:20 <TrueBrain> it is very picky about receiving a correctly-sized packet 10:33:28 *** Synck has quit IRC 10:37:40 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 10:37:45 <TrueBrain> there, you can now list your server as private or friends-only 10:38:03 <TrueBrain> needs a bit of work for dedicated servers, so people understand in which mode they are :P 10:45:56 *** Wolf01 has quit IRC 10:46:30 *** Wolf01 has joined #openttd 11:14:45 *** FLHerne has joined #openttd 11:28:32 *** EER has joined #openttd 11:29:54 *** snail_UES_ has joined #openttd 11:46:11 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #9025: Feature: Reveal chat history when chat message box is open. https://git.io/JOLU2 11:47:30 *** Ali42 has joined #openttd 11:47:38 <peter1138> Oh. 11:47:45 <peter1138> uint bool 11:48:48 <DorpsGek> [OpenTTD/OpenTTD] PeterN commented on pull request #9025: Feature: Reveal chat history when chat message box is open. https://git.io/JOsEe 11:49:03 <Ali42> Hey, is it possible to compile openTTD 1.11.0 for armhf (Raspberry pi)? I keep getting an undefined reference error. 11:49:35 *** FLHerne has quit IRC 11:50:48 <DorpsGek> [OpenTTD/OpenTTD] PeterN updated pull request #9025: Feature: Reveal chat history when chat message box is open. https://git.io/JOLU2 11:51:48 <peter1138> ^ Now using auto &cmsg, and fixed uint/bool and not using auto... 11:52:12 <peter1138> Ali42, no, there's a fix since so you can compile master. 11:59:57 <LordAro> Ali42: https://github.com/OpenTTD/OpenTTD/pull/8924 this change, specifically 12:03:42 <Ali42> That's sick, nice one. Would a dedicated server compiled from master support 1.11.0 clients? I'm happy to cherry pick the change if not 12:04:12 <LordAro> no, you'd need to start from the 1.11.0 tag 12:04:20 <LordAro> (and then figure out how to fake the version) 12:04:41 *** Synck has joined #openttd 12:04:43 <Ali42> I believe. 12:12:51 *** glx has joined #openttd 12:12:51 *** ChanServ sets mode: +v glx 12:21:54 <peter1138> 1.11.1 when? :D 12:23:25 <LordAro> Soonᵀᴹ 12:23:27 <Xaroth> Isn't that a question we should be asking you, peter1138? :P 12:36:29 <TrueBrain> I wonder how much effort it is to remove the MTU limitation of Packet in OpenTTD 12:36:44 <TrueBrain> would make some code a lot easier to deal with 12:36:51 <TrueBrain> meh ... lets not try to do everything :D 12:37:31 <TrueBrain> how many NewGRFs can there be loaded in a single game? 12:37:40 <peter1138> Isn't that mostly because of UDP packets? 12:37:53 <TrueBrain> peter1138: yeah, which I now removed, so the l limit is now void 12:37:59 <TrueBrain> -l 12:38:00 <peter1138> Ah. 12:38:25 <TrueBrain> but okay, sending multiple packets at once isn't a problem for any TCP stack either 12:38:44 <peter1138> TCP stack will probably combine when it can. 12:38:48 <TrueBrain> it does 12:39:08 <peter1138> And you have to handle partial packets anyway. 12:39:18 <TrueBrain> yeah, so it is not that big of a deal 12:39:29 <TrueBrain> the thing I now only run into, is that a single server info blob is exceeding MTU 12:39:49 <TrueBrain> currently that is solved by some pretty complex code where NewGRF names are not send by default 12:39:59 <TrueBrain> but send if the client doesn't know the GRFID + md5sum 12:40:08 <TrueBrain> so extra packets 12:40:10 <DorpsGek> [OpenTTD/nml] 2TallTyler opened issue #201: Possible misnamed constant in global variable `map_type` https://git.io/JOsol 12:40:12 <TrueBrain> complex matching logic 12:40:19 <peter1138> If it's TCP then just always send it, yeah. 12:40:45 <peter1138> Not sure if backwards compatibility is necessary? 12:40:53 <TrueBrain> it isn't 12:41:29 <TrueBrain> that is to say, older clients will only see older servers 12:41:46 <TrueBrain> worst case, older client does a direct connect to a newer server 12:41:52 <TrueBrain> so I will have to make sure that is caught in time 12:41:56 <peter1138> Which wouldn't work anyway. 12:42:11 <TrueBrain> yeah, but revision check has to be done before any "possibly big" packet is being send, basically 12:43:00 <TrueBrain> but just sending the GRF names every join would make things so much easier 12:43:03 <TrueBrain> just a bit wasteful, I guess 12:43:12 <TrueBrain> max .. 63 NewGRFs I believe? 12:43:16 <TrueBrain> times .. euh .. 30 length names 12:43:19 <TrueBrain> so ... 2000 bytes waste 12:43:22 <TrueBrain> I mean .. not sure we survive 12:45:43 *** tokai has joined #openttd 12:45:43 *** ChanServ sets mode: +v tokai 12:45:47 <DorpsGek> [OpenTTD/nml] 2TallTyler commented on issue #196: Suspected integer underflow when switch returns a negative number https://git.io/JYJRU 12:52:38 *** tokai|noir has quit IRC 12:55:52 <TrueBrain> isn't a square just a special type of rectangle? :P 13:05:41 <Xaroth> Getting rid of the MTU limitation would be neat for the admin port 13:05:41 <peter1138> Yes but given the context of this one... :) 13:28:56 *** spnda has joined #openttd 13:29:58 <peter1138> Okay, maybe time to charge up the fitbit... 13:34:51 *** nielsm has joined #openttd 13:35:21 <DorpsGek> [OpenTTD/nml] glx22 commented on issue #201: Possible misnamed constant in global variable `map_type` https://git.io/JOsol 13:37:26 <DorpsGek> [OpenTTD/team] nemesbala opened issue #192: [hu_HU] Translator access request https://git.io/JOsHz 13:37:56 <glx> main issue is we'll need to keep MAP_TYPE_RECTANGULAR anyway for compatibility with existing nml files 13:40:42 <peter1138> Do you though? 13:40:44 *** Synck has quit IRC 13:41:29 <peter1138> Anything already compiled will carry on working, anybody updating something can just update that test. 13:42:13 <peter1138> In most cases I'd agree that keeping the original around makes sense, but in this case it's exactly the opposite of what is intended. 13:43:42 <glx> oh maybe deprecated flag can be added there (but this area doesn't support that yet I think) 13:45:40 <TrueBrain> okay, sending the GRF name over the wire always is a lot easier in many regards .. so I guess now I do have to "fix" MTU :) 13:51:03 <TrueBrain> I will have to do the math what that means for server listing, but .. I think we will be fine :) 13:51:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 13:53:31 <milek7> what with LAN discovery? 13:54:47 <DorpsGek> [OpenTTD/nml] spnda opened issue #202: extract_tables.feature_names_table does not include "TILE" https://git.io/JOsde 13:56:52 <TrueBrain> lol, it is funny, with the current MTU, the current packet can be completely full in the worst case 13:56:56 <TrueBrain> that is pretty nice :) 13:57:09 <TrueBrain> as in, 4 bytes left over 13:57:14 <TrueBrain> like someone planned it that way :D 14:00:47 <TrueBrain> damn, servers that do use NewGRFs use them real good 14:00:56 <TrueBrain> is there any request to raise the limit of active NewGRFs btw? 14:00:59 <peter1138> Loads. 14:01:11 <TrueBrain> any we want to comply with? :P 14:01:28 <peter1138> But JGR already supports it, and that is the only version worth playing, or something. 14:01:40 <peter1138> JGRPP I mean. 14:01:46 <TrueBrain> I wonder how he fixed that in multiplayer :P 14:02:04 <peter1138> Multiple UDP packets IIRC. 14:02:13 <TrueBrain> well, to the master-server, mostly 14:03:01 <peter1138> TBH, I dunno, I've never played it. And looking at the source is not conducive to much useful for vanilla :) 14:03:37 <TrueBrain> as long as my work doesn't break his horribly :P 14:03:48 <TrueBrain> ha, he sneaked in an extra flag to send extended information to clients from servers 14:03:48 <TrueBrain> nice 14:04:20 <TrueBrain> info.name = "=*=*= More than 62 GRFs in total =*=*="; 14:04:21 <TrueBrain> :D 14:04:32 <peter1138> Heh 14:04:52 <peter1138> If you're replacing the network protocol, then yeah, it'll break his horribly ;) 14:05:12 <TrueBrain> okay, our code suggests the 62 limit exists purely because of network 14:05:19 <TrueBrain> so I guess there is no reason to keep that limitation 14:05:27 <TrueBrain> well, 255 will be the new limitation, as .. byte 14:05:55 <TrueBrain> currently, every NewGRF is 20 bytes. With names, this becomes 54 bytes per NewGRF 14:06:02 <TrueBrain> euh, 52 14:06:06 <TrueBrain> math, hard 14:06:41 <TrueBrain> what I wonder .. currently when you query the server-list, you get all the (detailed) information send to you 14:06:47 <TrueBrain> including the exact NewGRFs etc 14:06:58 <TrueBrain> hmm .. no, nevermind, my own idea is stupid 14:07:03 <TrueBrain> I wanted to say: what if the client sends his NewGRFs 14:07:15 <TrueBrain> so the game coordinator can find servers that work for you 14:07:17 <glx> exact newgrf list is required for the colored dot ;) 14:07:21 <TrueBrain> but ... who knows how many local NewGRFs people have :P 14:07:48 <glx> I have too many newgrfs locally :P 14:08:12 <TrueBrain> just means that the serverlist will be, if I can estimate this looking at the current ... 14:08:29 <TrueBrain> 500KB 14:09:31 <TrueBrain> (currently it also takes 500KB, but by asking 500 servers 1KB .. in my PR it changes this by asking 500KB from the game coordinator) 14:11:06 <TrueBrain> @calc 0.09 / 1024 / 1024 * 500 14:11:07 <DorpsGek> TrueBrain: 4.291534423828125e-05 14:11:18 <TrueBrain> @calc 0.09 / 1024 / 1024 * 500 * 10000 14:11:18 <DorpsGek> TrueBrain: 0.4291534423828125 14:11:26 <TrueBrain> cost-wise, nothing worth mentioning :P 14:11:55 <TrueBrain> more performance-wise I am not 100% sure .. guess I will have to fake some data and figure that out 14:12:10 <Rubidium> the main reason for Packet/MTU is actually the UDP packet issue, for TCP it's not really needed. Although smaller packets allows you to send some things before others, like chat while downloading the map but that potential is probably untapped 14:12:36 <TrueBrain> Rubidium: we mentioned that a few times already yes :P 14:12:50 <TrueBrain> the main issue is that it is a fixed-size buffer atm 14:12:59 <TrueBrain> so changing it is not fully trivial 14:13:39 <TrueBrain> @calc 153 + 255 * (4 + 16 + 32) 14:13:39 <DorpsGek> TrueBrain: 13413 14:13:47 <TrueBrain> max size per server would be 13KB of data, lol 14:14:01 <peter1138> When you quit and restart VS Code, because C# intellisense stopped working, but it says code.exe no longer exists... 14:14:01 <Rubidium> true, potentially have a different implementation (subclass) for UDP packets that are limited to the MTU whether TCP packets can be larger 14:14:16 <TrueBrain> Rubidium: I remove (most) of the UDP 14:14:20 <TrueBrain> so it isn't an issue anymore :P 14:14:36 <Rubidium> but you don't remove all of it for local discovery 14:14:44 <TrueBrain> which is a 4 byte packet :D 14:14:49 <TrueBrain> we can runtime assert that :) 14:15:03 <TrueBrain> sorry, 6 bytes 14:16:07 <Rubidium> by the way, if you send all the servers in one big blob you can save a lot on the NewGRF info by just making a distinct list at the begin and only using indexes into that list per server. Then any NewGRF that is used over multiple servers uses way less network resources 14:16:27 <TrueBrain> that is not a bad idea 14:16:53 <TrueBrain> not sure how much bandwidth it truly saves .. strongly depends on how common setups are 14:17:23 <TrueBrain> the main thing I struggle with, is that we send all servers, no matter if you can play on them, no matter what 14:17:28 <TrueBrain> this is rather inefficient in many ways 14:17:33 <TrueBrain> I keep wondering if we can't do that smarter 14:18:10 <TrueBrain> similar, what frosch123 would really like, that you can search based on settings of a game 14:18:20 <TrueBrain> that all kinda begs for server-side filtering 14:18:50 <TrueBrain> can you change what NewGRFs are loaded on a running server? 14:19:14 <Rubidium> not without modifications to the current code (I hope) 14:19:24 <TrueBrain> no, you cannot 14:19:25 <glx> ok I found an easy way to add more deprecation warnings in nmlc 14:19:26 <TrueBrain> had to verify :D 14:19:52 <TrueBrain> so on server start-up we can tell the game coordinator a lot about the server, NewGRFs, settings etc 14:20:03 <TrueBrain> and the client lists based on a query 14:20:14 <TrueBrain> which normally is something like: this is my openttd-version 14:20:19 <TrueBrain> with options to query/search for the others? 14:20:20 <TrueBrain> I dunno .. 14:27:05 *** APTX has quit IRC 14:27:11 *** APTX has joined #openttd 14:31:21 <TrueBrain> funny, currently a master server listing is ~4KB of data per time you request it from the master-server 14:35:34 <TrueBrain> awh, LAN broadcasts don't work on WSL2 .. that is annoying 14:37:07 <milek7> eh, I would rather keep sending whole list (and optionally do client-side filtering) 14:37:17 <milek7> it is somewhat better to know 'ok, this server had different version' than 'yyh, why this server is missing from list?' 14:38:02 <TrueBrain> yeah, but finding "that one server" in a list of 500 is very user-friendly :P 14:38:05 <TrueBrain> +not 14:42:11 <spnda> still not sure wether having "class" and "class_name" in each roadstop item is a really good idea... 14:42:21 <peter1138> Some games have filters, and then spend ages redownloading the list when you change something. 14:42:49 <peter1138> Why would you need the name in each roadstop? 14:43:15 <TrueBrain> peter1138: that is as terrible :D 14:43:33 <TrueBrain> there has to be some clever middleground there .. not sure yet 14:43:39 *** Synck has joined #openttd 14:43:42 <peter1138> No so bad for us but I remember Rust takes ages, and have thousands of servers... 14:43:52 <spnda> peter1138: idk really, would otherwise have to need another feature or similar to define a single item class 14:44:14 <TrueBrain> peter1138: bit my scare is that if we allow anyone to just make a server, the amount of online servers boom even more, giving similar issues :) 14:44:25 <peter1138> If? 14:44:31 <TrueBrain> when :P 14:44:36 <milek7> > These first three pair of packets (thus six in total) must remain in this order for backward and forward compatibility between clients that are trying to join directly. 14:44:38 <TrueBrain> sorry, Dutch doesn't make a difference between those 2 words :) 14:44:40 <milek7> do we really care about that? 14:44:41 <peter1138> I mean, can't they currently? 14:45:00 <TrueBrain> peter1138: a lot of people cannot, no 14:45:12 <TrueBrain> or fail to do so 14:45:14 <TrueBrain> however you look at it :) 14:45:44 <peter1138> Why does food taste so good? 14:46:32 <TrueBrain> hmm .. doing this over HTTP and allowing gzip is tempting .. saves a lot of bytes :P 14:46:39 <TrueBrain> but okay .. bytes are not that important for this :) 14:48:37 <milek7> as in, whether incompatible client must be able to connect tcp and get lobby info 14:49:23 <milek7> I think that shouldn't happen almost at all, as it won't connect without previous discovery with proper version 14:50:28 <peter1138> TrueBrain, would it compress much at all? 14:50:52 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9017: WIP: allow multiplayer without port forwarding (using STUN) https://git.io/JOk7C 14:50:54 <TrueBrain> peter1138: lots of text, so yeah 14:50:59 <DorpsGek> [OpenTTD/nml] glx22 opened pull request #203: Fix #201: rename MAP_TYPE_RECTANGULAR to MAP_TYPE_SQUARE https://git.io/JOGvm 14:51:34 *** Gustavo6046 has joined #openttd 14:52:18 <peter1138> I guess applying compression universally would be a bad thing for the savegame transfer. 14:52:38 <Wolf01> Why that glx? A square is just a particular rectangle 14:52:48 <TrueBrain> peter1138: I would think so too, but no measurements to support that gut-feeling :D 14:52:56 <TrueBrain> Wolf01: haha, I said the same :D :D 14:53:02 <glx> it is, but the spec says otherwise :) 14:53:13 <TrueBrain> but rectangle is really just wrong here :P 14:53:16 <peter1138> Wolf01, in this particular case, the flag is to say whether it is a square or a rectangle. 14:53:49 <Wolf01> Not that it could be anything else :P 14:54:10 <glx> the flag is square or not square 14:54:14 <TrueBrain> okay, I can reduce the amount of UDP sockets to 1, instead of the now two, but that is something for another day .. 14:54:20 <peter1138> Didn't someone suggest hexagonal tiles once...? 14:54:26 <TrueBrain> a new game, you say? 14:54:26 <Wolf01> Me 14:54:27 <TrueBrain> :D 14:55:11 <glx> with hexagone you can have nice curved rails :) 14:55:54 <Wolf01> I was looking at dorf romantik and the nice layouts you can make with it 14:56:00 <glx> and constant length for straigh rails in 3 different orientations 14:57:10 <glx> but town layout would be ugly 14:57:27 <peter1138> Hmm, Civilization only went hex from Civ 5. Thought it was ealier. 15:00:43 *** EER has quit IRC 15:00:47 <TrueBrain> meh, the only reason I don't like the client sending its NewGRF list to the game coordinator, is that it basically means we can spy on what users have installed :P 15:00:50 <TrueBrain> that feels wrong 15:00:52 <TrueBrain> otherwise it is efficient 15:01:03 <Wolf01> <glx> but town layout would be ugly <- nah, I played steel panthers a lot of ages ago and it had nice town layouts 15:01:44 <Wolf01> Also you can rotate buildings in 6 directions :P 15:03:10 <milek7> why would game coordinator need *client* newgrf list? 15:05:45 <DorpsGek> [OpenTTD/OpenTTD] WimLeflere opened pull request #9038: Add test framework and some basic unit tests https://git.io/JOGUs 15:18:56 <glx> btw TrueBrain in my openttd.cfg I have last_newgrf_count = 1314 15:19:08 <TrueBrain> glx: :o lol, you are crazy :D 15:19:27 <peter1138> Yes, I would say, it's not very efficient. 15:19:37 <TrueBrain> ironically, that would still be better to have your client-side list send to the game coordinator than for every server to send his to you :) 15:20:08 <TrueBrain> but how long are your startup times, damn 15:20:14 <glx> too long 15:20:24 <glx> especially in debug builds 15:20:45 <TrueBrain> I wonder .. should a server be orange if you don't have the NewGRF but it is on BaNaNaS? 15:20:51 <TrueBrain> I mean, it is just a click away, isn't it? 15:21:02 <TrueBrain> it only really is an issue if the NewGRF is not on BaNaNaS 15:22:00 <peter1138> I was also thinking similar earlier. 15:22:19 <TrueBrain> when we introduce presets, I expect a lot more games to be using NewGRFs 15:22:39 <TrueBrain> so what I was thinking: the game coordinator doesn't really have to tell you what NewGRFs a server is using 15:22:46 <TrueBrain> just if it is using one you cannot download via BaNaNaS 15:22:46 <peter1138> IMHO, it's still a pain to set up NewGRFs on a server. 15:22:51 <TrueBrain> as then it should check if you have it or not 15:23:05 <TrueBrain> peter1138: how so? 15:23:23 <peter1138> Well, not as easy as setting up a single-player game with GUI, that's for sure. 15:23:34 <TrueBrain> I think presets are going to be a game changer there 15:23:52 <TrueBrain> you build a nice combination of settings + NewGRFs + AI + GS + ... in your client GUI 15:23:53 <TrueBrain> save it 15:23:57 <TrueBrain> send the blob to the server 15:23:59 <TrueBrain> and he does the rest 15:24:09 <peter1138> But yes, if you assume that if it's on Bananas then it can be installed, you don't need to transfer this data. 15:24:10 <TrueBrain> ala blueprints for Factorio 15:24:15 <peter1138> Just do it when you click on a server. 15:24:20 <TrueBrain> exactly 15:24:22 <glx> if server and client use the same OS it's not too hard to use client to generate newgrf config for server 15:24:29 <TrueBrain> saves a huge shitdown of bandwidth, but also processing speed :) 15:24:57 <TrueBrain> just means green dots mean something slightly different 15:25:12 <TrueBrain> I have to sit on this for a bit, but I think there somewhere is a solution 15:25:16 <glx> but usually paths may be different 15:29:17 <TrueBrain> funny enough, I think from a player perspective not making servers orange when you can download their NewGRFs is much more friendly, as it invites players easier to join those servers 15:29:20 <TrueBrain> and enjoy other content 15:29:33 *** gnu_jj has joined #openttd 15:30:16 <glx> yes green for correct version and easy to get missing grf seems the right thing 15:30:16 <TrueBrain> I also think Join should not be greyed out, but ask you: you are missing content, shall I download that for you? 15:31:31 *** Synck has quit IRC 15:35:09 <TrueBrain> that means the average bytes per server drops from 1000 bytes to 160 bytes, for the server listing 15:35:12 <TrueBrain> that is .. a difference :P 15:35:42 <LordAro> just a bit 15:37:36 *** gnu_jj has quit IRC 15:37:57 <TrueBrain> okay, enough of this for today ... 15:38:15 <TrueBrain> it will take a bit more time to finish this :D 15:38:35 <TrueBrain> have to C++17-ify some code too .. custom linked-lists are annoying to deal with :P 15:38:55 <TrueBrain> no clue yet how I am going to make this reviewable .. 15:39:16 <TrueBrain> either a lot of smaller PRs, or just one big one with 1 commit saying: DEAL WITH IT :P 15:40:31 <TrueBrain> hmm .. and I need to make a design for the Multiplayer GUI ingame 15:40:42 <TrueBrain> guess it should contain a "Change my nickname" button 15:40:53 <TrueBrain> which opens up let-me-fucking-google-that-for-you 15:40:58 <TrueBrain> and shows you the wiki page to do that in the console 15:41:22 <TrueBrain> too soon? 15:44:59 <Rubidium> I'm not quite comfortable with such a solution, I'd rather link it to the comment on github 15:47:00 <LordAro> lol 15:58:04 <TrueBrain> btw, Rubidium , can you believe the shitty window we made for the client list ingame is still there? :P 15:58:32 <TrueBrain> dates back to 2004 .. meant as "temporary so we have something" window :D 16:00:28 <DorpsGek> [OpenTTD/nml] LordAro approved pull request #203: Fix #201: rename MAP_TYPE_RECTANGULAR to MAP_TYPE_SQUARE https://git.io/JOGsK 16:03:19 <peter1138> :D 16:05:05 <glx> LordAro: tried to activate issue linking with the title rename ? 16:06:18 <LordAro> no, fixing whitespace :p 16:06:49 <LordAro> which may or may not fix that too 16:07:43 *** supermop_Home_ has joined #openttd 16:10:07 <DorpsGek> [OpenTTD/nml] glx22 closed issue #201: Possible misnamed constant in global variable `map_type` https://git.io/JOsol 16:10:10 <DorpsGek> [OpenTTD/nml] glx22 merged pull request #203: Fix #201: rename MAP_TYPE_RECTANGULAR to MAP_TYPE_SQUARE https://git.io/JOGvm 16:16:24 <Rubidium> TrueBrain: that might even be from before I started working on OpenTTD, but I can believe that 16:18:00 <TrueBrain> Most likely, but you changed more lines of code in that window then I have, so I can never remember :D 16:18:37 <glx> probably during the GUI rewrite 16:21:27 *** EER has joined #openttd 16:21:46 <Rubidium> or the c++ conversion? 16:33:57 *** Flygon has quit IRC 16:40:26 *** andythenorth has joined #openttd 16:40:33 <andythenorth> is cat? 16:48:25 <Wolf01> No 16:50:35 <spnda> I cannot believe that my PATH variable in windows is too long 16:51:24 <Wolf01> Could you use other ENV variables inside PATH? 16:51:36 <glx> I though they removed the 255 limit 16:51:53 <spnda> I apparently surpassed the limit of 2047 characters 16:53:31 <glx> you can use junctions to have shorter path without actually moving stuff 16:54:15 *** Progman has joined #openttd 16:56:27 <Wolf01> SET SHORT=c:\very\long\path\which\is\used\in\PATH\variable -> %SHORT% should work in PATH 17:00:14 *** Wormnest has joined #openttd 17:01:29 <DorpsGek> [OpenTTD/OpenTTD] stormcone commented on pull request #9025: Feature: Reveal chat history when chat message box is open. https://git.io/JOGRi 17:02:58 *** frosch123 has joined #openttd 17:03:33 <TrueBrain> Someone doesn't know what iff means .. wait till he finds out it is all over the code :D 17:04:21 <TrueBrain> First time I too was: wtf :p 17:06:56 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9025: Feature: Reveal chat history when chat message box is open. https://git.io/JOG0P 17:08:19 *** snail_UES_ is now known as Guest1421 17:08:29 *** snail_UES_ has joined #openttd 17:10:38 *** Guest1421 has quit IRC 17:15:18 <frosch123> TrueBrain: "iff" is a perfectly normal word :) also, stop selling old versions of openttd on ebau 17:15:21 <frosch123> *ebay 17:20:49 <TrueBrain> I left the emails specially for you 17:20:57 <TrueBrain> It made me laugh so hard 17:21:51 <frosch123> i only looked at them by accidient, i wanted to mark them as junk, but misclicked, and then saw that it was actually ottd related 17:24:18 <TrueBrain> They are hilarious :) 17:24:38 <frosch123> i like the name 17:24:52 <frosch123> TTD probably means trains+trucks+dosh 17:26:24 <DorpsGek> [OpenTTD/team] frosch123 commented on issue #192: [hu_HU] Translator access request https://git.io/JOsHz 17:26:50 <DorpsGek> [OpenTTD/team] frosch123 commented on issue #191: [ta_IN] Translator access request https://git.io/JOm91 17:29:01 <frosch123> hmm, any good idea how to modify https://github.com/OpenTTD/team/blob/master/.github/ISSUE_TEMPLATE/translator_de_DE.md so it says something like "go away, we already have 15 translators"? 17:29:42 <DorpsGek> [OpenTTD/team] frosch123 commented on issue #190: [de_DE] Translator access request https://git.io/JOIXq 17:29:48 <DorpsGek> [OpenTTD/team] frosch123 commented on issue #189: [de_DE] Translator access request https://git.io/JOJp8 17:30:22 *** gelignite has joined #openttd 17:34:28 *** Synck has joined #openttd 17:37:54 <Rubidium> frosch123: is there some way to pass a note to the translators about a particular string? 17:38:14 <frosch123> translators have github teams 17:38:22 <frosch123> we tell them to use team discussions 17:38:24 <frosch123> some actually do 17:38:31 <Rubidium> if that's the case, then you could maybe steer them to that if they see a small mistake 17:39:09 <frosch123> ah, no, discussions are only for members 17:39:46 <frosch123> we do not have "bug reports" for translators, and i don't think we want them :p 17:40:19 <Rubidium> so the only way, as a casual user, to fix a spelling mistake is to become a translator? 17:41:53 <frosch123> yes, I think there have been about 3 PRs/issues, where people tried that, and were told to become translators instead 17:42:02 <Ali42> LordAro peter1138 thanks a lot guys, got an openttd server running 1.11.0 on my raspberry pi! 17:49:34 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/JOGrL 17:49:35 <DorpsGek> - Update: Translations from eints (by translators) 17:50:34 <Rubidium> what's the best way to handle a class instance in a vector, where the constructor initializes a file handle and the destructor closes it? The vector itself is causing some interesting constructs and destructs by itself. Do I have to go the refcount way, or is there a better/easier way in our code? 17:52:16 <frosch123> you can make the class move-only 17:52:16 <Rubidium> what I would like is that at a clear() of the vector the destructors are called so the file handles get closes 17:53:48 <frosch123> in all cases, your class will need some state, whether the file is opened or not 17:54:07 <frosch123> if you do not have that state, you can add it by using std::unique_ptr or std::optional 17:54:26 <frosch123> if you have that state already, then implement a move-constructor, and declare the copy-constructor as deleted 17:55:06 <frosch123> https://github.com/frosch123/team/issues/new/choose <- does this look reasonable? or are we fine with infinite amounts of translators? :p 17:59:48 <TrueBrain> At least it is very clear :) 18:16:14 <peter1138> urgh, it was cold 18:16:33 <peter1138> so cold the old garmin's battery lasted less than an hour 18:19:11 <peter1138> # 18:22:59 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on issue #9035: No obvious way to change player name during multiplayer session https://git.io/JOmiO 18:30:32 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on pull request #9038: Add test framework and some basic unit tests https://git.io/JOGP1 18:37:29 *** Nickname has joined #openttd 18:37:40 *** Nickname is now known as Guest1430 18:38:00 <TrueBrain> talking about Multiplayer UI .. I was thinking something like this: https://user-images.githubusercontent.com/1663690/114761778-3c0ff780-9d61-11eb-8a67-0f61bf983622.png 18:38:05 <TrueBrain> need to fix the styling, as it is rubbish 18:38:07 *** armoredpony has joined #openttd 18:38:19 <TrueBrain> but at top some basic information of the server you are on 18:38:26 <TrueBrain> followed by per company which clients are on them 18:38:33 <TrueBrain> and some icons or something to allow editing them 18:38:40 <TrueBrain> and kicking etc if you are the owner 18:38:43 <Wolf01> Looks cool 18:39:32 <TrueBrain> too bad I haven't loaded in icon in my little widget editor .. 18:41:34 *** armoredpony has quit IRC 18:42:47 <TrueBrain> would require some extra icons .. hmm .. or I can keep the drop-out list we have now 18:42:48 <TrueBrain> easier :P 18:42:58 <TrueBrain> I would need a chat-icon, kick-icon, ban-icon .. 18:43:17 <TrueBrain> clicking and getting a text-list is easier :) 18:44:20 *** jottyfan has joined #openttd 18:49:27 <TrueBrain> https://user-images.githubusercontent.com/1663690/114763249-e3415e80-9d62-11eb-9e7a-b448b3ad1058.png 18:49:31 <TrueBrain> bit busy with all those ... 18:49:59 <TrueBrain> how else to make clear you can click Player names ... 18:51:48 *** Ali42 has quit IRC 18:58:51 *** Synck has quit IRC 19:00:54 <TrueBrain> https://user-images.githubusercontent.com/1663690/114764642-7cbd4000-9d64-11eb-907c-9ad4fb10de25.png 19:01:01 <TrueBrain> simpler .. company / players are buttons 19:01:30 <Xaroth> I like the last one 19:01:52 <TrueBrain> .E. and .D. are the edit icon and the dropdown icon 19:02:10 <TrueBrain> of course if you are not the server owner, those buttons are not there 19:02:31 <TrueBrain> NAT can be: Direct Connection, NAT, No connection possible 19:02:37 <TrueBrain> or something among those lines 19:02:42 <TrueBrain> the latter would be red 19:03:59 <TrueBrain> Company action would be: chat with everyone in company 19:04:06 <TrueBrain> and give money, I guess 19:04:22 <TrueBrain> you now give money to a player, by the UI .. which is a bit odd :P 19:04:31 <TrueBrain> s/player/client/, what-evah 19:05:15 *** EER has quit IRC 19:07:54 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #9039: Fio rewrite https://git.io/JOGDX 19:08:40 <peter1138> Okay. Goats cheese & black pepper popcorn is... slightly odd. 19:09:37 <frosch123> TrueBrain: does it need to be a tree? do you want to implement drag/drop of players between companies and spectators? 19:10:10 <frosch123> for editability a list with dropdown or labels (depending on whether you are allowed to edit) would be more common 19:11:12 <TrueBrain> "for editability"? 19:11:14 <TrueBrain> what do you mean? 19:11:27 *** mihkel has joined #openttd 19:11:31 <frosch123> moving clients to another company 19:11:35 <mihkel> hi 19:11:44 <TrueBrain> I wasn't really on planning on adding support for that honest frosch123 :) 19:11:47 <frosch123> moving yourself to another company 19:12:02 <TrueBrain> it is a nice idea, but yet-another-thing I would have to implement :P 19:12:09 <TrueBrain> but my idea was to have this as a WWT_MATRIX 19:12:13 <frosch123> well, i did not bother reading the backlog, i only judged the image by itself :p 19:12:21 <TrueBrain> which is fine :) 19:12:29 <TrueBrain> but anyway, the only way this looks like a tree is because of some padding 19:12:38 <mihkel> hi, where i can get 1.10.3 version? :D 19:12:59 <DorpsGek> [OpenTTD/OpenTTD] spnda commented on pull request #9039: Fio rewrite https://git.io/JOGy0 19:13:02 <frosch123> mihkel: https://cdn.openttd.org/openttd-releases/ 19:13:19 <TrueBrain> frosch123: "a list with dropdown or labels" <- also not sure what you mean with that 19:15:05 <frosch123> a table: one row per client, first column: client name; second column: client actions, private chat, kick; third column: company name with bus-sprite for company colour; fourth column: company actions 19:15:18 <mihkel> thanks guys 19:15:19 <TrueBrain> ah, yes, that I do not want 19:15:21 <frosch123> cells are labels or comboboxed depending on editability 19:15:24 <TrueBrain> the current window has something like that 19:15:30 <TrueBrain> I find it very unclear to see who is in what company 19:15:40 <TrueBrain> so yeah, the tree part is core to my design :D 19:15:40 <frosch123> for admin all cells are ediable 19:15:41 <frosch123> for regular joes only their own row 19:17:01 <TrueBrain> I my head the grouping per company is kinda mandatory :D 19:17:08 <frosch123> good :) 19:17:31 <TrueBrain> a column for actions is difficult I think .. we lack icons really 19:17:39 <TrueBrain> some clever ideas there? 19:17:48 <peter1138> andythenorth, cat... C++ Analysis Tool? 19:17:51 <frosch123> colored background are meh though. better add a colored icon, i think we have those in multiple places already 19:18:08 <TrueBrain> frosch123: fair point; a coloured bus works fine 19:18:08 *** mihkel has quit IRC 19:18:41 <TrueBrain> and to be somewhat consistent with other windows, maybe a dropdown icon at the end 19:18:43 <TrueBrain> instead of my ... 19:18:54 <TrueBrain> for the actions 19:19:11 <frosch123> all the company-related dropdowns in the main toolbar have this colored roundrect 19:19:46 <TrueBrain> yeah, that works too 19:19:50 <frosch123> livery gui has the busses 19:20:15 <TrueBrain> and a dot for selection 19:20:16 <peter1138> Tradition :D 19:20:19 <TrueBrain> lovely inconsistent :D 19:20:36 <frosch123> now i would expect chat buttons in the list 19:20:41 <frosch123> per client and per company for team chat 19:20:49 <frosch123> though no idea whether you can team-chat to another company 19:20:53 <TrueBrain> as I said, we don't have icons for that :P 19:21:03 <frosch123> just use text then? 19:21:03 <TrueBrain> a single client can talk to a company 19:21:03 <andythenorth> peter1138 yes 19:21:08 <frosch123> "Chat" 19:21:11 <TrueBrain> using text -> makes for large buttons 19:21:14 <TrueBrain> makes the window really bloaty 19:21:23 <TrueBrain> we have: Chat / Kick / Ban for admins 19:21:45 <frosch123> well, if the gui works, we can still add icons 19:21:53 <peter1138> https://fontawesome.com/icons?d=gallery&p=2&q=chat&m=free 19:22:00 <frosch123> you have a generic "edit name" icon now :) 19:22:01 <TrueBrain> but adding dropdown icons for every entry is really ... noisy too 19:22:04 <peter1138> ^ icon inspiration ;) 19:22:13 <TrueBrain> frosch123: yeah, edit name I was planning on stealing the one we have now :) 19:22:18 <TrueBrain> so .E. becomes that icon 19:22:22 <TrueBrain> .D. is the dropdown icon 19:24:06 *** Gustavo6046_ has joined #openttd 19:25:25 <TrueBrain> https://user-images.githubusercontent.com/1663690/114767437-e9860980-9d67-11eb-83a8-45b00ed3fc15.png 19:25:47 *** Gustavo6046 has quit IRC 19:25:47 *** Gustavo6046_ is now known as Gustavo6046 19:26:04 <TrueBrain> (can't do the rounded rectangle company colour thing, so I left the label coloured for now :P) 19:26:17 <frosch123> "join"? 19:26:30 <frosch123> "leave" company? 19:26:43 <TrueBrain> If "join", no need for "leave" 19:26:45 <frosch123> or shall peopole click company, get the company gui, and use the buttons there? 19:26:58 <andythenorth> we might have to do a button grid or something 19:27:00 <andythenorth> actions table 19:27:11 <TrueBrain> but yeah, with icons this looks way better 19:27:19 <andythenorth> ping me if there's a PR or WASM build, I'll stare at it :P 19:27:53 <frosch123> maybe it's smarter to only show buttons that are often used :p 19:28:01 <frosch123> "give money" is rare, isn't it? 19:28:16 <frosch123> "join" is only needed when you are spectator 19:28:17 <TrueBrain> https://user-images.githubusercontent.com/1663690/114767749-500b2780-9d68-11eb-9649-d051e9feff24.png 19:28:25 <frosch123> "leave" would be a single button on your current company 19:28:35 <TrueBrain> I think "join" on all companies makes most sense 19:28:38 <TrueBrain> including spectator 19:28:44 <TrueBrain> as "leaving" is weird 19:28:54 <DorpsGek> [OpenTTD/OpenTTD] arjanvlek commented on issue #8967: Game crash during startup https://git.io/JYAmd 19:29:02 <frosch123> ok, just a button, or like a radiobutton? 19:29:09 <TrueBrain> radiobutton? 19:29:14 <frosch123> current membership lowered 19:29:16 *** Beerbelott has joined #openttd 19:29:30 <TrueBrain> that 19:29:34 <TrueBrain> or disabled for current company 19:29:40 <TrueBrain> bit tomato tomato to me 19:29:42 <andythenorth> if there are a lot of actions then ... with dropdown menu 19:29:47 <DorpsGek> [OpenTTD/OpenTTD] WimLeflere updated pull request #9038: Add test framework and some basic unit tests https://git.io/JOGUs 19:29:59 <TrueBrain> maybe 1 button for "admin" stuff 19:30:06 <TrueBrain> to make Kick / Ban less accidental 19:30:10 <TrueBrain> which gives you a dropdown 19:30:13 <frosch123> andythenorth: there is one common action, "chat". the rest is whatever :p 19:30:27 <andythenorth> so hide it on a ... or cog wheel * or something 19:30:30 <TrueBrain> we can make that if you click the company label, the Company window opens 19:30:36 <TrueBrain> means we can remove Give money and Join, I guess 19:30:48 <glx> kick and ban in the dropdown should not be in first options 19:30:48 <frosch123> sounds good 19:31:54 <TrueBrain> still leaves the admin stuff .. hmm 19:32:22 <frosch123> add an expand button like in the "economy window"? 19:32:28 <frosch123> show/hide admin stuff 19:33:25 <TrueBrain> in the top right corner you mean? 19:33:37 <frosch123> though you cannot mass kick people anyway, so a dropdown also works 19:34:03 <Beerbelott> Hello, I gave a spin to openttd under valgrind to check if everything was alright, and it found a lot of non-unallocated memory at the end of the run. A lot of it points to the allocation made by stredup in IConsoleCmdRegister: https://github.com/OpenTTD/OpenTTD/blob/3b3412d561e043f8d4859cd973299f94e3810288/src/console.cpp#L252 19:34:40 <frosch123> TrueBrain: economy has the button in the title bar. face window has a button inside the window 19:34:44 <TrueBrain> https://user-images.githubusercontent.com/1663690/114768492-34ece780-9d69-11eb-9e52-0028e9c1d854.png 19:34:55 <TrueBrain> the first blob is when you normally open the window, the second company when you press Admin 19:35:21 <TrueBrain> "Unlock" -> Remove company password 19:35:27 <TrueBrain> maybe also a "Delete" 19:35:41 <TrueBrain> as I hate that I have to delete companies via the console :P 19:36:27 <frosch123> Beerbelott: patch it to use std::string :) 19:36:37 <TrueBrain> meh, many things I would like to add, so a dropdown is easiest .. 19:37:45 <frosch123> Beerbelott: those strings are allocated only once, and reachable at run-time. they only leak on exit. so fixing it in C is not worth the effort. changing it to std::string may have other benefits 19:37:49 <TrueBrain> https://user-images.githubusercontent.com/1663690/114768789-a2007d00-9d69-11eb-9f77-5c0c856f293e.png <- for admins 19:37:54 <TrueBrain> other players don't see the "Admin" button 19:38:00 <TrueBrain> gives a dropdown list of things you can do 19:39:09 <frosch123> is there a "streamer mode" for hiding the "invite code"? :) 19:40:13 <TrueBrain> haha, that is a very valid point to make :D 19:41:00 <TrueBrain> those blobs on top will be with a line around the server/client part btw 19:41:04 <Beerbelott> frosch123: Well I'd be versed into the challenge of fixing that C-style :P 19:41:05 <TrueBrain> but I cannot mock that atm :) 19:41:25 <TrueBrain> so something like this: https://user-images.githubusercontent.com/1663690/114769173-23580f80-9d6a-11eb-815c-2b12896c44c1.png 19:41:38 <Beerbelott> 'cause best practices, right? 19:41:46 <spnda> that admin button looks..... very bad 19:41:55 <TrueBrain> I cannot change text colour, so yeah 19:42:05 <spnda> why not make the window 1 few pixels wider 19:42:09 <spnda> and put the admin stuff right there? 19:42:36 <TrueBrain> I do not understand what you say, sorry 19:44:12 <frosch123> spnda: truebrain uses a mock-up engine. that is not the real gui, the real gui would use regular ottd-style padding and spacing 19:44:21 <spnda> ahh 19:44:25 <spnda> I remember something HTML based right? 19:44:45 <TrueBrain> a simple NWidget -> HTML renderer, yes 19:44:53 <TrueBrain> but this is not so much about where-is-my-pixel 19:44:58 <TrueBrain> more about where-is-my-text :) 19:45:12 <spnda> wasn't my point 19:45:13 <spnda> see discord 19:45:48 <TrueBrain> yeah, your point we talked about earlier; adding all the admin buttons are too many buttons, basically 19:45:59 <TrueBrain> (chatting in 2 places, w00p :P) 19:46:22 <spnda> Is the admin button opening another window? 19:46:27 <TrueBrain> a dropdown, I think 19:46:30 <spnda> Or is it gonna be a dropdown with all other options? 19:46:31 <TrueBrain> but yes, that is another window 19:46:34 <TrueBrain> :P 19:46:41 <TrueBrain> but it feels like a dropdown 19:46:51 <spnda> Because what one could do, is have a few options that would fit and then the rest squashed into the dropdown, possibly? 19:47:07 <TrueBrain> not sure that helps for the look and feel 19:47:18 <TrueBrain> as mentioned earlier, in the end, chat is the only button that is used "often" 19:47:21 <TrueBrain> all the other stuff is very rare 19:47:41 <TrueBrain> even Join didn't make the cut 10 minutes ago :D 19:48:17 *** iSoSyS has joined #openttd 19:48:20 <spnda> Yeah well with that system one could add a resize button and if the user resizes it to be fullscreen it won't be just completely gray 19:48:50 <TrueBrain> sounds like a lot of trouble for very little usage 19:50:19 <glx> Beerbelott: btw I think _iconsole_cmds could move away of custom manually managed linked list ;) 19:50:48 <frosch123> i always get invitations to ui/ux talks from qt, shall i forward them to someone? :p 19:51:01 <TrueBrain> I vote for Xaroth 19:51:25 <Xaroth> Is there alcohol involved? 19:51:27 <peter1138> Has all my Small* crap gone yet? 19:51:38 <Xaroth> because I'm not going to survive a UI/UX talk without a serious amount of alcohol 19:52:33 <frosch123> also, tech talks with only male speakers are made worse by having a single women talking about a non-tech topic 19:52:36 <frosch123> (imo) 19:53:14 <Beerbelott> glx: Yeah, like a list, either single ou double linked ;) 19:53:36 <glx> a vector should be enough looking at the usage 19:55:04 <TrueBrain> okay, I think I will keep it with my last version I showed for now, the multiplayer GUI .. tons of stuff we can add and change later on 19:55:11 <TrueBrain> but at least it would already be a huge improvement :P 19:55:42 <glx> oh a set could also work 19:55:56 <TrueBrain> tnx a bunch frosch123 :) Good input :) 19:56:31 <TrueBrain> and I love my mockup thingy .. so much quicker/easier 19:56:35 <peter1138> tech talks where the women are only asked to talk about women in tech, rather than their own subject... 19:57:28 *** erle- has quit IRC 19:57:56 <peter1138> Can we have it so that you can't create a company without a password? 19:58:25 <TrueBrain> yes please 19:58:29 <TrueBrain> we need a multiplayer TODO list 19:59:19 <frosch123> peter1138: https://github.com/OpenTTD/OpenTTD/discussions/8420 20:03:03 * frosch123 looks at discussions, sees a post with many gui mockups, guesses the author correctly 20:03:43 <nielsm> btw I'd appreciate if anyone would take a deep look at my Help Window PR, it should be ready for review now https://github.com/OpenTTD/OpenTTD/pull/7786 20:07:32 <glx> Beerbelott: I have an idea on how to do it so I may try myself 20:13:24 <peter1138> Hmm, SmallMap still exists. 20:15:28 <Beerbelott> glx: I'm def not a developer, so you'll probably be quicker and your output will be better. But I'm giving it a try :P 20:16:12 <glx> yeah even if it doesn't end up included, it's a good way to learn things 20:17:37 <DorpsGek> [OpenTTD/OpenTTD] frosch123 commented on discussion #9010: OpenTTD Summit Idea (seriously) https://git.io/JOTVX 20:17:45 <frosch123> heh, that is new 20:18:25 <TrueBrain> I thought you would like it :D 20:29:44 <peter1138> typedef SmallMap<uint32, std::pair<size_t, const void *> > FontTable 20:29:45 <peter1138> Nice 20:30:13 <peter1138> That is a std::vector<std::pair<uint32, std::pair<size_t, const void *>>> :D 20:31:11 <frosch123> i knew a c programmer who used "uint32_t foo[16];", when he was too lazy to define a struct, and just casted everything to ints, including 32bit pointers 20:31:24 <frosch123> recently i learnt, there are people using std::tuple in a similar way 20:31:28 <peter1138> ^ hi! 20:32:03 <peter1138> My issue with the SmallMap class... 20:32:17 <peter1138> ... we also have an in-game small map :D 20:34:39 *** gnu_jj has joined #openttd 20:43:34 *** gnu_jj has quit IRC 20:52:24 *** Progman has quit IRC 20:53:39 <TrueBrain> so fix it already! 20:53:58 <milek7> hmm, only 10 downloads of winxp build :P 20:54:52 <DorpsGek> [OpenTTD/OpenTTD] michicc commented on pull request #9039: Fio rewrite https://git.io/JOGAS 21:00:18 *** gelignite has quit IRC 21:08:16 *** FLHerne has joined #openttd 21:08:50 *** FLHerne is now known as Guest1438 21:11:03 *** frosch123 has quit IRC 21:11:15 <peter1138> milek7, how dare we stop it :) 21:13:01 <DorpsGek> [OpenTTD/OpenTTD] nielsmh updated pull request #7924: Feature: Water tiles have a depth https://git.io/JvfWw 21:16:23 *** Samu has quit IRC 21:19:21 *** jottyfan has quit IRC 21:21:50 <nielsm> the most annoying change for rebasing is that our own min<> and max<> functions were removed and everything needs to be changed to use std::min and std::max 21:23:14 <Eddi|zuHause> nielsm: at least you don't have to update through the c->c++ move :p 21:27:54 *** Guest1438 is now known as FLHerne 21:29:53 *** sla_ro|master has quit IRC 21:31:17 *** Wolf01 has quit IRC 21:35:38 <nielsm> decided it's just easier to do an interactive rebase stopping at every revision to try to compile it, and fix any errors then 21:37:25 <peter1138> At least you can usually just fix with an explicit <uint> or <int> 21:37:57 <nielsm> nah it's that call sites change from "foo = max(a, b)" to "foo = std::max(a, b)" 21:38:06 <nielsm> yes it's a simple stupid fixc 21:38:13 <peter1138> Eddi|zuHause, I do miss (vaguely) the days of being able to compile (from clean) in 12 seconds... 21:38:42 <peter1138> git merge action :D 21:40:49 <TrueBrain> now it takes 12 seconds to generate the squirrel files alone :P 21:40:56 <TrueBrain> the days that we just committed those in the repo ... 21:40:58 <TrueBrain> :D 21:41:06 <Eddi|zuHause> i was at 5 minutes to compile last time 21:41:21 <Eddi|zuHause> because LTO was single-threaded 21:41:46 <Eddi|zuHause> but i found the option to multithread it 21:42:51 <peter1138> Hmm, well, looks like I have a Linux machine to play with now. 21:43:22 <peter1138> My workplace are downsizing their office (i.e. they don't need it any more now we're all working from home) so the old PC at work is now here, at least for the moment. 21:44:04 <peter1138> Obviously the 3 Raspberry Pis, the laptop, and the music-room-studio PC don't count. 21:44:17 <peter1138> Why do I have so many computers? 21:44:53 <LordAro> peter1138: can confirm, was/is cold 21:44:59 <nielsm> https://github.com/OpenTTD/OpenTTD/tree/master/src/script/api/ai why is this file left over? 21:45:50 <nielsm> is it one that can't be generated? 21:46:06 <peter1138> LordAro, your ride finished hours ago, have you been hiding in a pub instead? :D 21:46:34 <peter1138> THIS YEAR 21:46:35 <peter1138> 130 / 13,000 km 21:46:35 <DorpsGek> [OpenTTD/OpenTTD] nielsmh updated pull request #7924: Feature: Water tiles have a depth https://git.io/JvfWw 21:46:53 <peter1138> Cool, mid-April and I'm 1% into my target from 2019. 21:48:09 *** iSoSyS has quit IRC 21:51:19 <LordAro> peter1138: yes. 21:52:26 <LordAro> peter1138: also, similarly, i am currently ~1000mi behind my target 21:53:07 <peter1138> Main issue currently is saddle-soreness. I've gone soft... 21:53:28 <peter1138> I might try getting the old Brooks out, see if that helps. 21:54:03 <peter1138> A well broken in leather saddle should be good compared some modern composite type. 21:54:37 <peter1138> (A standard saddle, not *only* composite) 21:58:27 <Timberwolf> Making station buildings is slow going. https://i.imgur.com/R8xAJW8.png 22:01:51 <peter1138> Looks good though. 22:02:04 <peter1138> Does NML support it now? 22:02:38 <Timberwolf> Don't think so, all my stuff is NFO at least. 22:02:50 <peter1138> Ah, ok 22:02:51 <Timberwolf> Well, NFO generated by a very badly hard-coded Go program. 22:03:46 <DorpsGek> [OpenTTD/OpenTTD] nielsmh commented on pull request #7924: Feature: Water tiles have a depth https://git.io/JOZJ1 22:08:41 <peter1138> Alright, how do I check out a PR again? :p 22:09:22 <nielsm> I always end up adding the author's fork as a remote, fetching that, and checking out the branch from there 22:09:29 <andythenorth> oof sleeping time 22:09:36 <FLHerne> Timberwolf: I think the hope was that you'd invent NML stations as part of this project, now we have to wait for the next person :p 22:09:46 <andythenorth> we what now? 22:10:04 <nielsm> (git remote add nielsmh https://github.com/nielsmh/OpenTTD.gif && git fetch nielsmh && git checkout -t nielsmh/deepwater) 22:10:24 <nielsm> also it's called .git and not .gif 22:10:25 <peter1138> vs code github plugin did it. 22:10:31 <nielsm> cheater 22:10:32 <LordAro> there is a way to checkout out a remote directly 22:10:39 <nielsm> I know there is 22:10:39 <LordAro> but i'd have to google it 22:10:44 <nielsm> and it involves a really weird path 22:11:02 <nielsm> that's not advertised anywhere except deep in some documentation that's impossible to find 22:11:04 <glx> <nielsm> is it one that can't be generated? <-- yes, it contains handcrafted stuff 22:11:20 <FLHerne> andythenorth: One day someone wanting to make a station set will decide to add NML support rather than their own custom thing? 22:11:39 <FLHerne> I suppose part of the problem is that NML isn't good enough, so you need the custom thing anyway 22:11:49 <FLHerne> to generate NML 22:11:57 <FLHerne> and then you might as well generate NFO really 22:12:00 <peter1138> Would normal (industry/house-tile-like) Action 3/2/1 support make it easier? :p 22:12:42 <peter1138> (I hope that's what spnda's gone for) 22:12:48 <glx> yeah main issue is station spec itself 22:12:57 <glx> it doesn't follow the rule 22:13:06 <peter1138> arrays and things, yes. 22:13:21 <peter1138> The station layouts are "okay" 22:13:26 <spnda> peter1138: I have calculated it in, but haven't exactly switched to the industry/industry-tile system. 22:13:30 <andythenorth> my station set is a bunch of GRM magic that yexo wrote :) 22:13:39 <peter1138> The station tile layouts are a pain, though. 22:13:50 <andythenorth> everything is templated, I just change things in CPP defines and cross my fingers 22:13:57 <andythenorth> no idea what the actual spec is :) 22:14:30 <peter1138> spnda, so station-spec style of definition, or just is it just sprite replacements? 22:15:07 <spnda> Right now it's basically sprite replacement, with some variables, cargo awareness and random bits 22:15:12 <peter1138> For newgrf docks I went with the "standard" system. 22:15:50 <peter1138> Sea floor erosion speed: Medium 22:16:34 <peter1138> nielsm, what's a smooth gradient? 1 depth for 1 tile? 22:16:50 <nielsm> peter1138 yes 22:17:26 <peter1138> Ooh, weird map gen 22:17:30 <nielsm> since I was too lazy to make a filter larger than 3x3 22:18:41 <andythenorth> goes it throw out FIRS? https://www.reddit.com/r/openttd/comments/mq789w/confusion_with_secondary_industries_in_firs/ 22:18:43 <andythenorth> oof 22:19:02 <andythenorth> unplayable due to lack of detailed internal information 22:19:04 <nielsm> and yes I noticed TGP already did have depth on the tiles that become water, but the data was thrown out so just made it use it instead 22:19:51 <peter1138> How do I show depth? 22:20:10 <peter1138> Oh, I'm in RelWithDebInfo. Never mind. 22:20:12 <nielsm> there's links to GRF files somewhere in the discussion 22:20:23 <nielsm> or yes use a debug build 22:20:52 <nielsm> https://www.tt-forums.net/viewtopic.php?f=33&t=86559&start=20 22:21:00 <nielsm> there should be some GRFs there 22:21:09 <nielsm> and they should be loadable as static 22:21:22 *** azulcosta has joined #openttd 22:21:36 <azulcosta> hello 22:22:30 <nielsm> hello, I think most of us are on the way to bed 22:22:33 <peter1138> Hmm, assert in TileAdd 22:22:33 <azulcosta> while making a multiple unit train, with 16 vehicles, why do i need to put all power and all consist weight in the first vehicle ? 22:22:36 <nielsm> I certainly should have been an hour ago 22:22:56 <andythenorth> same 22:22:57 <andythenorth> oof 22:23:13 <azulcosta> i don't want to use double-headed, but insted divide the entire train power to it's motor vehicles.... 22:23:20 <peter1138> assert(TileXY(x, y) == TILE_MASK(tile + add)); 22:23:22 <peter1138> Hm. 22:23:59 <andythenorth> azulcosta this is a single vehicle? 22:24:05 <andythenorth> articulated? 22:24:09 <azulcosta> it's an EMU 22:24:17 <azulcosta> articulated, yep 22:24:18 <andythenorth> weight is per vehicle afaik 22:24:29 <peter1138> ConvertGroundTilesIntoWaterTiles() blew up. 22:25:00 <andythenorth> hmm grf spec says articulated parts weight should be 0 22:25:04 <andythenorth> that's a thing? 22:26:02 *** HerzogDeXtEr has quit IRC 22:26:11 <azulcosta> well, i understand that, my question was to power value also... 22:26:47 <azulcosta> damn it... set to 0 too 22:27:00 <andythenorth> ok so articulated parts weight should be 0 22:27:06 <andythenorth> my code doesn't do that but eh 22:27:09 <andythenorth> seems fine 22:27:18 <azulcosta> and power also zero... 22:27:23 <andythenorth> yes 22:27:39 <azulcosta> ok, i'll live with that.. thanks 22:27:50 <azulcosta> cheers 22:28:08 <azulcosta> one last question 22:28:29 <azulcosta> is there any FIRS 32bpp pack on the way ? 22:28:34 <andythenorth> absolutely never 22:28:38 <andythenorth> nor extra zoom 22:28:45 <peter1138> They're all 32bpp on my screen. 22:28:59 <azulcosta> extra 4x zoom 22:29:19 <andythenorth> never happening 22:29:29 <azulcosta> ok. thanks 22:29:30 <peter1138> 4x zoom is good to see pixels 22:29:32 <andythenorth> 4x extra zoom is a big mistake, I blame peter1138 :) 22:29:41 <andythenorth> whose fault did we agree it was in the end? 22:29:42 <peter1138> Me too :( 22:29:43 <andythenorth> mine? 22:29:47 <andythenorth> pikka's? 22:29:54 <peter1138> The current version of EZ is, indeed, my fault. 22:29:59 <andythenorth> blame pikka, not here to defend 22:30:09 <nielsm> https://0x0.st/-ArF.jpg this does look kinda nice 22:30:38 <andythenorth> is that some shader tricks nielsm ? 22:30:41 <andythenorth> or painted sprites? 22:30:54 <peter1138> It's black ink on his screen. 22:31:03 * andythenorth considers 32bpp Horse, but using a 512 colour palette 22:31:03 *** gnu_jj has joined #openttd 22:31:04 <nielsm> just the opengfx water sprite edited to make 15 darker versions 22:31:18 <nielsm> so 32bpp without animation 22:31:33 <peter1138> andythenorth, 32bpp with a custom palette is a perfectly thing. 22:31:33 * andythenorth considers even a 256 colour palette, but a useful one 22:31:38 <andythenorth> perfectly thing 22:31:57 <peter1138> I wonder if dementia is calling. 22:32:03 <peter1138> perfectly acceptable thing. 22:32:12 <andythenorth> I think the first version was fine 22:32:20 <azulcosta> one last question 22:32:25 <peter1138> nielsm, well, my debug build crashes, so :( 22:32:26 <andythenorth> the pinks and the water cycle waste 25 palette indexes 22:32:37 <andythenorth> but how will I do water-carrying trains! 22:32:38 <andythenorth> ?? 22:32:39 <azulcosta> is there any way we can get orange color, using company color mask ? 22:32:40 <spnda> but muh pinks 22:32:43 <nielsm> peter1138 I wonder how you manage that, I don't remember getting crashes like that at all 22:32:46 <nielsm> anyway, sleep 22:32:47 <nielsm> gn 22:32:52 <andythenorth> azulcosta ? 22:33:41 <azulcosta> it's sad we cannot have costumized true orange color in company colors, because the color pallette of the game 22:34:03 <andythenorth> looks orange to me :) 22:34:30 <peter1138> Tee Hee Hee 22:34:33 <peter1138> Guess what's coming... 22:34:40 <andythenorth> I can guess 22:37:12 <andythenorth> failing to sleep due to watching Gerald https://www.youtube.com/watch?v=sfKzHpsQkxo 22:37:18 *** WormnestAndroid has quit IRC 22:38:04 <peter1138> https://fuzzle.org/~petern/ottd/colours.gif 22:38:07 *** WormnestAndroid has joined #openttd 22:38:09 <peter1138> Oh, that's dizzying 22:38:17 <peter1138> Last frame, damn./ 22:38:34 <andythenorth> it's in time with the music on this YT video 22:38:44 <andythenorth> actually right on the beat 22:38:50 <andythenorth> how the fuck did you do that :o 22:39:09 <peter1138> Probably 1 second per frame, which will match 120 bpm, which is fairly common. 22:39:18 <peter1138> Well, 60 bpm 22:39:28 <peter1138> Actually it's less, maybe 1/2 second per frame 22:39:32 <peter1138> Which does match 120... 22:39:35 <andythenorth> and you've got 4/4 22:39:48 <peter1138> Beautiful. 22:39:49 <azulcosta> orange company color! oh dear! it's a miracle! 22:40:19 <peter1138> https://fuzzle.org/~petern/ottd/ez.png 22:40:24 <peter1138> Early version of extra zoom ;-) 22:40:48 *** nielsm has quit IRC 22:40:51 *** snail_UES_ has quit IRC 22:40:58 <azulcosta> and black too! 22:41:16 <peter1138> https://fuzzle.org/~petern/ottd/pikka.png 22:41:30 <peter1138> I think that gif was from the more-cc patch. 22:41:37 <peter1138> But this one is from the rgb-cc patch. 22:41:53 <peter1138> Somehow I managed to pick dayglo orange. 22:42:14 <peter1138> Also that's from 8 years ago. Where has time gone? 22:42:38 <peter1138> I was still using 1x gui... 22:43:43 <spnda> *still uses 1x gui 22:44:11 <peter1138> For some, it's showing off about having a retina screen. 22:44:20 <peter1138> For me, it's just because my eyes are old... 22:44:36 <andythenorth> I like to be able to...see the game 22:44:48 <peter1138> I do, unless it's 32bpp. 22:45:02 <spnda> pro tip: don't use 32bpp or extra zoom 22:45:11 <andythenorth> double size UI ftw 22:45:32 <andythenorth> ok Pacers are done, sleeping time 22:45:37 <andythenorth> do it all again tomorrow 22:45:45 *** andythenorth has quit IRC 22:46:27 <peter1138> spnda, that's not a pro-tip, that's gatekeeping. 22:46:46 <peter1138> 32bpp doesn't need to suck. 22:47:38 <spnda> no 32bpp doesn't, I've used it before aswell. Extra zoom sucks big time though, just doesn't fit into the game. But not here to start another discussion why and why not... 22:49:50 <Timberwolf> I believe the phrase is "I personally dislike"... 22:50:20 <spnda> probably something along those lines yes 22:50:25 <peter1138> I think this branch might as well just be rewritten. 22:51:24 <azulcosta> do not ever remove the 4x zoom 22:51:43 <azulcosta> i love-it and i'm making my vehicles all in that resolution 32bpp 22:54:39 *** natmac[m] has quit IRC 23:02:28 *** WormnestAndroid has quit IRC 23:03:32 *** WormnestAndroid has joined #openttd 23:04:06 *** azulcosta has quit IRC 23:09:02 <peter1138> >>>>>>> 0e35d370e (Change: Add RGB presets) 23:09:07 <peter1138> Nooo 23:09:12 <peter1138> Successfully rebased and updated refs/heads/rgb. 23:09:17 <peter1138> It isn't going to compile, mind you. 23:14:54 <milek7> hmm, shoving encryption between NetworkGameSocketHandler and NetworkTCPSocketHandler isn't very clean either, as NetworkTCPSocketHandler already deals with Packets 23:15:28 <milek7> and as ciphertext needs to be encapsulated with extra data, this agains brings Packet MTU issues