Times are UTC Toggle Colours
00:00:02 *** Flygon has joined #openttd 00:00:19 *** nielsm has quit IRC 00:03:46 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhiey 00:03:55 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhieS 00:06:57 *** tokai has joined #openttd 00:06:57 *** ChanServ sets mode: +v tokai 00:09:09 <Samu> terraform_gui.cpp is about the option that removes all company owned stuff in the scenario editor 00:09:16 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhied 00:09:19 <Samu> naturally that includes AIs 00:09:59 <peter1138> Removing company owned stuff does what to AI options? 00:10:11 <Samu> updates icons, button states 00:10:18 <Samu> stuff like that 00:10:26 <glx> why ? 00:10:27 <peter1138> Why? 00:10:38 <Samu> because they're removed 00:11:11 <glx> displaying options depends on terraformed stuff ? 00:11:18 <glx> don't be silly 00:11:48 <Samu> it's not terraform 00:13:00 <Samu> it's this https://imgur.com/gqIzWRx 00:13:31 <Samu> the AI's are then removed 00:13:37 <Samu> so i have to update the window 00:14:55 <Samu> if i dont update, it's gonna reflect them as being active, with the green smiles for a while, until i drag the window around 00:15:53 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7106: Fix #7089: close NewGRF textfile windows when their data are invalid https://git.io/fhKuB 00:17:37 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7106: Fix #7089: close NewGRF textfile windows when their data are invalid https://git.io/fhivU 00:19:37 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivL 00:23:55 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhiv3 00:26:37 <Samu> https://user-images.githubusercontent.com/43006711/51808964-47b39880-2293-11e9-946f-dd0a6e27e0af.png 00:26:45 <Samu> it's aligned, surprisingly 00:27:00 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivV 00:27:02 <Samu> I had many doubts in this part 00:27:09 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivw 00:28:19 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivP 00:30:20 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivM 00:32:15 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivy 00:32:36 <peter1138> uint text_right = rtl ? text_left + text_width : text_left + text_width 00:32:43 <peter1138> Samu, so tell me what that line does, Samu? 00:34:21 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhivQ 00:35:40 <Samu> hmm nothing 00:35:57 <peter1138> But yeah, it's all wrong. 00:36:03 <peter1138> You already know the area where you can draw text. 00:36:09 <peter1138> And you know the size of the images. 00:36:14 <peter1138> You do not need to get the width of the text. 00:39:56 <Samu> oh, wait, that part 00:40:02 <Samu> is not what I thought 00:40:07 <Samu> thats the AI List window 00:40:14 <Samu> let me recheck 00:41:01 <peter1138> As in the list of available AIs? 00:41:17 <Samu> list of available AIs, yes, that one 00:41:29 <Samu> bad screenshot, let me take it out 00:41:36 <peter1138> Then you don't need to do anything special as there's no icons in there. 00:41:51 <Samu> there is now 00:42:09 <peter1138> And even then, you still don't need to get the width of the text. 00:42:12 <Samu> sec im posting a new screenshot 00:43:13 <Samu> https://user-images.githubusercontent.com/43006711/51809161-9eba6d00-2295-11e9-95bf-fb17d8665614.png 00:43:37 <peter1138> Sure. Why do you think you need to mess about getting string width? 00:44:24 <Samu> I don't know, honestly, i'm not sure it would fit before hitting the scrollbar 00:44:43 <peter1138> Why wouldn't it? 00:45:02 <peter1138> You just need to draw the text within the limits. 00:45:26 <peter1138> Again, check how other windows do this. None of them need to get the width of the text. 00:45:41 <glx> DrawString() takes care of RTL stuff IIRC 00:46:06 <peter1138> Yup. 00:47:32 <glx> see how it's done for NewGRFWindow 00:48:15 <glx> only sprite size is used to determine text starting position 00:48:25 <glx> no need to get string size 00:48:33 <peter1138> Yup. Depending on rtl, you apply that width to either the left or right side. 00:49:10 <glx> string width is needed only when you want to draw something after the string 00:49:42 <Samu> i draw the newspaper icon 00:49:59 <glx> but even then it's easier to just base the position on the widget edge and don't care about the string 00:50:50 <peter1138> Samu, please, look at how other windows do it. That is not right. 00:51:00 <peter1138> Just because it seems to work, it is not right. 00:51:37 <Samu> gonna look at newgrf, brb 00:53:23 <glx> oh and NewGRFWindow even draw 2 sprites in front of the string 00:53:53 <glx> all that without the string width 00:55:09 <glx> always check how it's done in other windows, don't need to reinvent the wheel ;) 01:18:18 <Samu> uint text_left = rtl ? r.left + WD_FRAMERECT_LEFT : r.left + rai.width + 10; 01:18:33 <Samu> uint text_right = rtl ? r.right - rai.width - 10 : r.right - WD_FRAMERECT_RIGHT; 01:18:42 <Samu> text_width is unused 01:19:02 <Samu> very interesting... 01:19:11 <Samu> i totally forgot about the r. 01:19:24 <glx> of course it's unused, it's not needed 01:21:48 <Samu> wasn't sure how the 'r.' would help me 01:21:55 <Samu> that was the key 01:22:42 <peter1138> + 10 is probaly not right. 01:23:07 <Samu> isn't it the empty space between the icon and the text? 01:23:18 <peter1138> You've lost WD_FRAMERECT_LEFT 01:23:52 *** Thedarkb-X40 has joined #openttd 01:25:51 <Samu> r.left + WD_FRAMERECT_LEFT + rai.width + 10; ? 01:26:20 <Samu> oh great, visual studio decided to hang 01:26:40 <Samu> rip changes 01:29:39 <Samu> uint rai_left = rtl ? r.right - WD_MATRIX_RIGHT - rai.width : r.left + WD_MATRIX_LEFT; 01:30:24 *** Thedarkb1-T60 has quit IRC 01:30:44 <Samu> uint square_left = rtl ? r.right - square.width - 5 : r.left + 5; of newgrf 01:31:14 <peter1138> Yeah 01:31:19 <peter1138> newgrf hardcodes 5 for some reason. 01:31:51 <peter1138> Your line is right. 01:32:15 <Samu> uint text_left = rtl ? r.left + WD_FRAMERECT_LEFT : r.left + rai.width + 10; 01:32:33 <Samu> is this wrong? got the impression something's wrong here 01:35:37 <Samu> yeah, the first one, (random) is slightly misaligned 01:36:01 <peter1138> text_left is fine. 01:37:17 <peter1138> uint text_left = r.left + WD_FRAMERECT_LEFT + (rtl ? 0 : rai.width + 10); would work. 01:37:54 <peter1138> Either works. 01:38:09 <peter1138> Neither needs text width, heh. 01:42:20 <Samu> right to left looks misaligned 01:42:29 <Samu> left to right looks fine 01:44:05 <Samu> https://imgur.com/a/G5fqFfv vs https://user-images.githubusercontent.com/43006711/51809161-9eba6d00-2295-11e9-95bf-fb17d8665614.png 01:44:14 <Samu> was fine before :( 01:44:43 <Samu> looking at Available AI list 01:46:03 <Samu> maybe text_right is wrong 01:46:08 <peter1138> Are you sure you have the same code for that first line? 01:46:46 <Samu> let me check 01:47:45 <Samu> wait im dumb 01:47:58 <Samu> sorry, the string i was working on is RandomAI 01:48:11 <Samu> the others with the actual icons have not been fixed yet 01:48:18 <peter1138> Hah 01:48:28 <Samu> brb fixing 01:51:50 <Samu> looks like I can avoid repetition 01:51:59 <Samu> will simplify this part of the code 01:52:23 <peter1138> Yes, text_left & text_right won't change. 01:53:45 <peter1138> You just set them up once and then draw all the strings. 01:53:59 <Samu> just did that 01:54:14 <Samu> i have a question regarding the use of static_cast 01:54:27 <Samu> Alberth didn't like that 01:54:31 <Samu> if (this->slot != OWNER_DEITY && static_cast<AIInfo *>((*it).second)->UseAsRandomAI()) DrawSprite(SPR_AICONFIG_RANDOM, PAL_NONE, rai_left, y + rai_y_offset); 01:54:55 <peter1138> Why do you need to cast it? 01:54:56 <Samu> can't recall why exactly 01:55:36 <peter1138> Dereferencing second should give you the right type. 01:56:33 <Samu> maybe because GS doesn't have UseAsRandomAI 01:56:37 <Samu> can't recall for sure 01:56:48 <glx> unless it's a ScriptInfo I think 01:57:38 <peter1138> Hmm, is this OWNER_DEITY test used to determine if it is AI or GS then? 01:57:43 <Samu> yes 01:57:47 <peter1138> Oh dear. 01:57:56 <glx> IIRC in this area, we sometime use a generic ScriptInfo container to store the derived objects 01:59:46 <glx> ScriptInfoList::const_iterator it = this->info_list->begin(); <-- I'm right ;) 02:00:17 <glx> so cast needed to call derived member functions 02:01:22 <Samu> GS's can't be randomized 02:01:38 <peter1138> Yes, we understand that. 02:01:50 <Samu> no point drawing 02:02:21 <glx> I think it's more like GS don't have UseAsRandomAI() ;) 02:02:30 <glx> same for ScriptInfo 02:03:03 <DorpsGek_II> [OpenTTD/OpenTTD] James103 commented on issue #7112: Commit fef8b83 broke GSTown.SetGrowthRate https://git.io/fhiT8 02:03:06 <glx> hence the cast when you're sure it's an AI 02:04:49 <Samu> at that point in the code, yes, i certified it is dealing with an AI 02:04:58 <Samu> never gonna be a GS 02:05:30 <Samu> so, static_cast is being correctly used? 02:05:37 <Samu> or do i have to change this 02:05:55 <glx> it seems OK 02:06:20 <Samu> cool :) 02:08:42 <glx> if you look in the next widget case, you'll see the same is done to draw the info details 02:09:15 *** snail_UES_ has quit IRC 02:09:43 <glx> hmm wait not the same window maybe, but still 02:12:07 <glx> ok it's the same window 02:12:32 <Samu> it's the AI Settings window, right? 02:12:42 <Samu> that one is much more complex 02:13:05 <Samu> have to fix the text_left, text_right stuff in there too 02:13:07 <glx> no AIList 02:13:46 <glx> case WID_AIL_INFO_BG, you'll see a static_cast there too 02:14:13 <Samu> ah 02:14:20 <Samu> interesting, i missed it 02:14:27 <Samu> i didn't touch that part 02:19:50 *** snail_UES_ has joined #openttd 02:21:29 <glx> hmm the info panel is nasty, it assumes an AIInfo even for GameInfo 02:21:58 <glx> luckily only common fields from ScriptInfo are used 02:28:08 <glx> funny, AIInfo and GameInfo both declare their own GetAPIVersion() with local storage 02:29:10 <glx> oh it's because libraries 02:40:21 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on issue #7112: Commit fef8b83 broke GSTown.SetGrowthRate https://git.io/fhikB 02:49:40 <Samu> I don't think I need DeleteWindowByClass(WC_QUERY_STRING); on the AI List anymore 02:49:46 <Samu> gonna remove 02:50:44 <Samu> the AI Settings window will handle if it's needed to close 02:50:52 <Samu> not the AI List 02:53:37 <Samu> InvalidateWindowClassesData(WC_AI_SETTINGS); is also wrong, i can be cirurgic about it 02:55:11 <Samu> InvalidateWindowData(WC_AI_SETTINGS, slot); 02:55:18 <Samu> let's test 02:56:59 <Samu> success! 02:57:04 <Samu> one less windows closure! 02:59:25 <Samu> oh snap, i forgot to add the fixes to textfile window 02:59:41 <Samu> thought i had them already 03:23:10 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on issue #7112: Commit fef8b83 broke GSTown.SetGrowthRate https://git.io/fhiIa 03:36:34 *** Wormnest has quit IRC 03:43:22 *** D-HUND has joined #openttd 03:47:36 *** glx has quit IRC 03:50:42 *** debdog has quit IRC 04:06:14 <Samu> i'm attempting to simplify DrawWidget for AIConfigWindow 04:06:20 <Samu> avoid repetition 04:06:44 <Samu> now that I got more experience, I know what to do 04:09:26 *** snail_UES_ has quit IRC 04:09:29 <Samu> gonna sleep, cyas goodnigh 04:09:42 *** Samu has quit IRC 04:15:09 *** Thedarkb1-X40 has joined #openttd 04:20:49 *** Thedarkb-X40 has quit IRC 04:24:31 *** snail_UES_ has joined #openttd 04:25:04 *** Pikka has quit IRC 04:26:39 *** snail_UES_ has quit IRC 04:27:39 *** HerzogDeXtEr has quit IRC 06:00:42 *** keoz has joined #openttd 06:32:18 *** sla_ro|master has joined #openttd 07:15:08 *** Pikka has joined #openttd 07:16:33 <Pikka> boing 07:19:42 *** keoz has quit IRC 07:23:00 *** andythenorth has joined #openttd 07:31:01 *** CZTR has joined #openttd 07:36:21 <peter1138> Yes no 07:37:16 <Pikka> why not? 07:58:27 <andythenorth> Pikka: the strayan contingent need help with 64 cargos :) 07:59:56 <Pikka> is it that his NML is out of date and doesn't allocate more than 32 ids? 08:00:29 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #7108: Feature: Group liveries, and livery window usability enhancements. https://git.io/fhK9F 08:00:34 <Pikka> that was my first thought, but I don't use NML so I wouldn't know 08:02:50 <peter1138> Maybe it doesn't work ;p 08:03:07 <andythenorth> I did test it :P 08:03:10 <andythenorth> maybe I did it wrong 08:03:24 <andythenorth> Pikka: so are you the last remaining nfo coder? :) 08:08:01 *** nielsm has joined #openttd 08:08:13 <Pikka> maybe... who knows, maybe coding industries will convince me to switch :) 08:12:05 * peter1138 pokes at azure./ 08:16:47 * Pikka bbl 08:16:50 *** Pikka has quit IRC 08:17:02 <andythenorth> we should preserve pikka for the nation 08:17:06 *** andythenorth has quit IRC 08:17:17 *** Thedarkb1-X40 has quit IRC 08:58:12 *** supermop_Home has quit IRC 09:01:41 *** andythenorth has joined #openttd 09:12:49 <DorpsGek_II> [OpenTTD/OpenTTD] Gabda87 commented on pull request #7120: Feature: Town Voronoi diagram https://git.io/fhiCH 09:29:15 *** Pikka has joined #openttd 09:35:34 <andythenorth> bob 09:35:41 <andythenorth> draw a new website pikka? o_O 09:36:04 <Pikka> eek 09:36:41 <andythenorth> 99 Designs 09:44:31 <nielsm> birds, making confetti from newspapers... 09:44:39 * nielsm has taken two days off work 09:45:37 <andythenorth> o_O 09:45:45 <planetmaker> moin 09:46:30 <Pikka> boing 09:47:06 *** sla_ro|master has quit IRC 09:58:47 *** Samu has joined #openttd 09:58:51 <Samu> hi 09:59:19 <andythenorth> moin 10:05:09 <peter1138> Hi 10:09:32 <Samu> why is this so confusing 10:09:50 <Samu> aligning text with images 10:10:00 <peter1138> What now? 10:10:21 <Samu> can you tell me if the alignment on AI SETTINGS is ok? 10:10:32 <Samu> AI CONFIG i mean 10:10:46 <Samu> hold on, i'll link to code directly 10:11:23 <Samu> https://github.com/OpenTTD/OpenTTD/pull/7084/files#diff-ed4b5e7d06f67bc76cd07b5dc8461e99R906 10:12:01 <Samu> uint cid_right = rtl ? cid_left + widest_cid : cid_left + widest_cid; 10:12:12 <peter1138> That's wrong. 10:12:18 <andythenorth> did anyone release a new Horse yet? 10:12:25 <peter1138> Because you're selecting the same value regardless of rtl. 10:12:45 <Samu> the value is defined just above 10:12:48 <nielsm> andythenorth, aren't horses usually kept in captivity? 10:12:53 <andythenorth> wild horses 10:13:16 <peter1138> Samu, how is it different from"uint cid_right = cid_left + widest_cid; ? 10:13:23 <Samu> cid_left is not the same value for rtl than ltr 10:13:26 * andythenorth is actually listening to 'runaway horses' by pure coincidence 10:13:44 <Samu> uint cid_left = rtl ? rai_left - 10 - widest_cid : rai_left + rai.width + 10; 10:14:00 <andythenorth> https://www.youtube.com/watch?v=SheKvJKtpdU 10:14:01 <peter1138> But you're setting cid_right on the line you showed, not cid_left. 10:14:21 <Samu> but cid_left is defined above 10:14:31 <peter1138> How is that relevant? 10:16:38 <Samu> im confused 10:18:01 *** Heiki has quit IRC 10:18:13 *** Heiki has joined #openttd 10:18:13 <Samu> uint cid_right = rtl ? r.right - WD_MATRIX_RIGHT - widest_icon - 1 - rai.width - 10 - widest_cid + widest_cid : r.left + WD_MATRIX_LEFT + widest_icon + 1 + rai.width + 10 + widest_cid; 10:18:22 <Samu> with everything expanded 10:18:36 <peter1138> Why would you "expand" it? 10:18:45 <nielsm> when layouting in RTL, you do exactly the same as when layouting in LTR mode, except you start from the right-hand edge and subtract lengths, instead of starting from left-hand edge and adding lengths 10:19:08 <peter1138> uint cid_right = rtl ? cid_left + widest_cid : cid_left + widest_cid; 10:19:21 <andythenorth> do we handle that explicitly every time we draw text? 10:19:24 <peter1138> cid_left and widest_cid are the same values regardless of rtl, within that line. 10:19:40 <andythenorth> it's not just a widget tree, and we run reverse order? 10:20:41 <peter1138> Yeah, it's a bit shitty when we have text and icons mixed. 10:20:59 <peter1138> By mixed I mean drawn within the same widget. 10:21:14 <nielsm> andythenorth, the window layout stuff does handle most of that automatically 10:21:32 <nielsm> except for self-drawn things, like list items combined from text and graphics 10:21:45 <nielsm> those aren't layouted automatically, but "owner-drawn" 10:22:59 <andythenorth> anyone find a narrow-guage version of this? https://static.maerklin.de/damcontent/7d/3c/7d3cba8a587a71a81bacd8fc1f7ceaf51460366848.jpg 10:23:08 <Samu> uint cid_right = rtl ? cid_left + widest_cid; 10:23:21 <Samu> just this 10:23:34 <peter1138> No. 10:23:35 <Samu> oh wait no 10:23:39 <Samu> uint cid_right = cid_left + widest_cid 10:23:54 <Samu> ; 10:23:55 <peter1138> I wrote exactly that line earlier. 10:24:07 <Samu> ok, let me fix that already 10:25:17 <peter1138> I'm glad it took 10 minutes to resolve that. 10:25:26 <Samu> done, but i'm still wondering... if everything else is correct 10:25:49 <peter1138> I'm not saying the rest is right. 10:25:53 <peter1138> But that is obviously wrong. 10:26:09 <Samu> let me copy paste 10:26:17 <peter1138> I'm busy at the moment, tbh. 10:26:27 <Samu> https://paste.openttdcoop.org/paxqo42ed 10:26:48 <nielsm> what am I doing here? https://0x0.st/zrq-.png 10:26:48 <Samu> i've edited it so far to try avoid repetition 10:27:12 <andythenorth> meh 10:27:15 <Samu> i'm only wondering if i have the rlt stuff correct 10:27:23 <andythenorth> IRL narrow gauge is probably too small for ladle wagons 10:27:27 <andythenorth> such realism 10:27:39 <Samu> it's the part I have most difficulty 10:27:40 <Samu> solving 10:28:19 <nielsm> Samu, get some graph paper and try working out the layout calculations for LTR and RTL separately, with pen and paper 10:29:59 <nielsm> draw how the window _should_ look, and work backwards from that to figure out how to calculate the dimensions and positions of things 10:32:22 <nielsm> TrueBrain: how about building a docker of the dedicated server along with the nightlies? 10:32:23 <Samu> that's actually a good idea 10:42:50 <Samu> dang, the counting of image widths is what's confusing me in the right to left approach 10:43:16 <nielsm> not a whole lot of distance from north to east... https://0x0.st/zrqT.png 10:44:06 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh updated pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fh6im 10:48:57 <Samu> sprites are drawn from left to right only? 10:49:20 <nielsm> they are drawn at the position you give 10:49:37 <nielsm> they are never mirrored on screen, and the screen coordinate system is always left edge as zero 10:49:52 <nielsm> with X values increasing towards the right 10:51:08 <Samu> left edge as zero 10:51:15 <andythenorth> usually flipping things is just a transform, with faff 10:51:23 <Samu> so I see they're only drawn left to right 10:51:31 <Samu> hence the whole confusion 10:51:46 <Samu> trying to apply them on a right to left text 10:52:32 <nielsm> you can maybe think of it as arranding a bunch of boxes in a row, in RTL the order of the boxes is reversed, but the contents of each box is not 10:52:55 <nielsm> (except that the text is drawn from the right edge of the box in RTL mode, but that's beside the point) 10:53:15 <nielsm> s/arranding/arranging/ 10:55:27 <Samu> wondering if i needed to measure company id string 10:55:42 <Samu> the 1-15 text being displayed 10:56:39 <Samu> need it to align 11:01:21 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh updated pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fh6im 11:04:27 <peter1138> You can measure just "99" 11:05:16 <Samu> i measured all numbers from 1 to 15 11:05:25 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fhizx 11:05:53 <Samu> this was much easier to visualize with pen and paper, kudos 11:05:57 <Samu> nielsm 11:05:58 <peter1138> I know you did. 11:06:15 <Samu> and peter1138 too, much thx 11:06:18 <peter1138> Samu, back in the day, pen and paper was used to figure out the program logic too. 11:07:32 <nielsm> in 2003 and 2004 the exams I took in computer science included pen-and-paper coding problems, no textbooks, computers, or even pocket calculators, allowed 11:08:01 <Samu> everything is correct, the only exception being uint cid_right = rtl ? cid_left + widest_cid : cid_left + widest_cid; which i fixed 11:08:21 <Samu> which isn't wrong per se, but ... just ... meh, nvm 11:08:22 <peter1138> I mean, it wasn't "wrong" but it was pointless. 11:08:40 <peter1138> But now, is it correct and simple, or is it correct and complex? 11:09:03 <peter1138> Can o' worms there. 11:10:58 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fhi29 11:11:22 <nielsm> okay I think that patch is done now 11:20:03 <planetmaker> meh... cc1plus: error: unrecognized command line option "-std=c++11" 11:20:04 <planetmaker> make[1]: *** [string.o] Error 1 11:20:04 <planetmaker> make[1]: *** Waiting for unfinished jobs.... 11:20:04 <planetmaker> cc1plus: error: unrecognized command line option "-std=c++11" 11:20:04 <planetmaker> cc1plus: error: unrecognized command line option "-std=c++11" 11:20:04 <planetmaker> make[1]: *** [alloc_func.o] Error 1 11:20:06 <planetmaker> make[1]: *** [strgen_base.o] Error 1 11:20:08 <planetmaker> make[1]: Leaving directory `/home/openttd/git-publicserver/objs/lang' 11:20:10 <planetmaker> make: *** [all] Error 1 11:20:12 <planetmaker> [root@publicserver-new git-publicserver]# gcc --version 11:20:14 <planetmaker> gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18) 11:20:16 <planetmaker> ups.. .sorry 11:21:39 <planetmaker> so... what gcc do I need? 11:24:01 <planetmaker> 6.x I guess 11:31:04 <Samu> unrelated, I am wondering if it's okay to let ai settings be editable in SE if the instance is active and alive 11:31:30 <Samu> for some reason, I decided it was not okay 11:31:37 <Samu> now I must remember why 11:32:00 <andythenorth> planetmaker: clang? o_O 11:32:03 * andythenorth not serious 11:32:18 <planetmaker> not on that version of centos 11:32:27 <Eddi|zuHause> i have 7.3.1 11:33:35 <planetmaker> centos has astonishing long lifetime... but stuff gets old nonetheless 11:33:56 <Eddi|zuHause> well, you might want a version that is less than 7 years old 11:34:14 <planetmaker> 2.6.32-042stab130.1 #1 SMP Tue May 22 09 <-- probably :) 11:34:30 <planetmaker> EOL is next year for that distro 11:36:31 <LordAro> planetmaker: i think 4.9 will work, still 11:37:07 <LordAro> 4.8, even - https://gcc.gnu.org/projects/cxx-status.html#cxx11 11:37:50 <LordAro> 4.9 for c++14 11:39:22 <planetmaker> I must upgrade the HV this year :| 11:42:28 <nielsm> Samu, don't change settings behind an already started AI, they probably won't be coded to assume settings can change under their feet 11:44:41 <andythenorth> based on my limited experience coding GS I would strongly concur 11:44:56 *** Pikka has quit IRC 11:47:32 <Samu> the issue is this: I save a game with ais. I rename .sav to .scn and i open it in the editor 11:47:57 <Samu> what can be allowed and what can't be allowed on ais 11:48:15 <Samu> what will happen once i save the scenario and play it 11:48:51 <nielsm> don't change settings behind the back of an already started AI, but feel free to add or remove players? 11:49:41 <Samu> that's apparently my current decision, was only trying to remember why I did it this way 11:49:48 <Samu> my poor brain 11:50:19 <nielsm> this is why documenting your software and keeping the documentation updated is a good idea :) 11:54:31 <planetmaker> devtoolset seems to be a centos/rhel thing to get newer tools... 11:57:22 <Samu> what will be saved in relation to AI data when the save is done in the scenario editor 11:57:35 <Samu> something that i must explore 12:04:41 <peter1138> planetmaker, wow, that's an ancient machine. 12:08:34 <Samu> just found out 12:08:36 <Samu> /* Save the data that was just loaded. */ 12:08:41 <Samu> this is great! 12:09:50 <Samu> that partially explains why I'm not letting its settings to be altered in SE 12:13:41 <Samu> I could improve this part a bit, though. Currently, I'm simply disabling the Settings window. 12:13:59 <Samu> Perhaps I could access the window, but have everything grayed out 12:14:10 <Samu> at least I could see how they are atm 12:15:24 <Samu> less restrictive 12:15:52 <Samu> more friendly 12:17:53 <planetmaker> peter1138, yep. As long as there's security updates and it works... no need to upgrade ;) 12:21:33 <Eddi|zuHause> well, i think the time has come where one of those things doesn't apply anymore :p 12:23:45 <planetmaker> :) 12:25:08 <peter1138> Grr, my monodevelop is not updating references or whatever it is properly. 12:27:43 * peter1138 tries a clean. 12:33:01 <planetmaker> https://finger.openttd.org/versions.txt <-- TrueBrain for a nightly server I need this info to be current 12:34:47 <peter1138> Ooh 12:35:22 <peter1138> Is there another URL that does similar? I'm sure I saw one that had current info on it. 12:35:25 <peter1138> But yes. 12:56:14 <Arveen2> word on the internet is nightly builds are back ? 12:56:38 <peter1138> Yup 12:57:03 <Arveen2> fantastic :D 12:57:18 <peter1138> Cos TrueBrain is a magician. 12:57:39 <Arveen2> I tried to build a recent version on VS like 2 weeks ago and it failed when trying to use the ottd useful 6.0 package 12:57:58 <peter1138> Don't need to use that any more. 12:58:08 <peter1138> Latest build instructions use vcpkg. 12:58:08 <Arveen2> oh 12:58:33 <Arveen2> i didn't notice there was a change 12:59:47 <Arveen2> seems like it's time to get some ottding going tonight, heh 13:03:43 *** D-HUND is now known as debdog 13:04:48 <nielsm> I kinda want to set up a server running nightly, and auto-upgrading at some point a few hours after each new build 13:06:46 <planetmaker> well... 13:07:15 <planetmaker> such server used to exist... maybe it should be revived :) 13:07:58 <planetmaker> coop always used manual updates, usually between games. But there was for a time a server by dihedral which updated every day. 13:08:00 <planetmaker> Was fun :) 13:08:44 <planetmaker> Seeing that about no-one plays on coop servers regularily anymore... maybe a good idea to put it to such use 13:10:01 <nielsm> I'm thinking writing a small GS that sends newspapers/other messages to players when the daily update is about to be installed so they can get ready 13:10:25 <nielsm> then pause the game for the last 5-10 minutes before kicking everyone off and installing the new version 13:11:10 <planetmaker> I don't think it needs a GS for that purpose. You can send to ingame via admin port which you need anyway 13:11:44 <nielsm> well could do silly things like putting the latest changes in the storybook? :D 13:11:54 <planetmaker> :) 13:12:20 <planetmaker> or adding an extended tutorial script as GS... hm... OpenTTD tutorial server 13:13:05 <nielsm> ask players starting a new company "do you want a tutorial?" and if they do, it finds route suggestions and shows what to do? 13:13:09 <nielsm> could be neat 13:13:19 <planetmaker> something like that, yes 13:13:28 <peter1138> Who needs a GS when you can just make AIs cheat! 13:14:43 <peter1138> Hmm, shall I work on group liveries some more? Like making this hierarchy thing work. 13:14:48 <peter1138> It's kinda a pain :/ 13:15:33 <Arveen2> i'd play coop again without hesitation if there would be a new game 13:15:50 <peter1138> Cos at the moment "scheme not in use" means use-the-default-vehicle-type-specific scheme, rather than use-the-parent-group scheme. 13:15:55 <Arveen2> i was playing frequently but you are right, seems not much is going on there 13:16:13 <peter1138> OpenTTDCoop was never my build style. 13:16:29 <Eddi|zuHause> peter1138: needs more OOP? 13:16:59 <Eddi|zuHause> LiveryResolver object 13:17:09 <peter1138> Eddi|zuHause, no, it's just, which is preferable, use type-specific or parent? 13:17:31 <peter1138> it could possibly even be either, "default" or "inherit" 13:17:33 <planetmaker> Arveen2, it needs people who actually help with running that 13:17:34 <Eddi|zuHause> peter1138: spontaneously i'd say parent 13:17:46 <peter1138> k 13:18:08 <planetmaker> I'm about the only person currently who is somewhat around and has access to the servers. But it needs people playing. Moderating ingame,... updating the server 13:18:17 <planetmaker> not difficult. Not much to do. But needs doing 13:18:40 <planetmaker> I'm happy to grant access to people who want to carry on with that 13:18:43 <Arveen2> yeah, i see 13:18:50 <planetmaker> "the old people" seem to have gone mostly 13:18:50 <Eddi|zuHause> peter1138: say, i'm making tram networks, and one group per line in a town, then it might be useful to have a parent group for each town that handles the livery 13:19:02 <Arveen2> the last couple of games it was already hard to get a plan going 13:19:29 <nielsm> peter1138: vehicle is asked for its livery, vehicle asks its group for livery, group asks parent group for livery, etc., until vehicle receives a group livery configuration, and then it applies default liveries for its types for any "default" values in the group livery config? 13:19:30 <peter1138> planetmaker, they moved on to that other game on steam? 13:19:45 <Eddi|zuHause> fortnite? :p 13:19:48 <planetmaker> Maybe it needs to be handled a bit different than before... dunno. Making a plan... could be done alone, if need be 13:19:54 <peter1138> the one V is involved in 13:20:00 <planetmaker> peter1138, factorio? Possibly. It's addictive :P 13:20:01 <nielsm> and the same group livery check could be used to draw the default values in the livery config window 13:20:18 <planetmaker> and they have nice MP servers, too 13:21:20 <peter1138> Are we going to try to put OpenTTD on Steam? 13:21:29 <planetmaker> yes? 13:21:42 <peter1138> Was it you talking about it? 13:21:47 <planetmaker> Not making progress on getting 'openttd' as username. But will go forward with another 13:21:50 <planetmaker> yes 13:22:09 <peter1138> I dunno, Steam's social aspect is useful. 13:22:19 <peter1138> "$Friend is now playing OpenTTD, click to join!" 13:22:29 <peter1138> (Sort of) 13:22:37 <nielsm> that would imply adding some steam api stuff into the game 13:22:38 <nielsm> :) 13:22:43 <peter1138> planetmaker, openttd already gone? :/ 13:22:43 <planetmaker> Not using that really much myself... but possibly. 13:22:59 <planetmaker> some guy has it ... and wasn't online for 4 years... but yeah 13:23:08 <peter1138> nielsm, maybe. You get a notification starting just a shortcut in steam as well. 13:23:22 <peter1138> Send a tweet to Gabe himself lol 13:23:24 <planetmaker> but username != display name I think 13:23:48 <peter1138> Yeah, can we just set up an openttd developer account 13:24:06 <planetmaker> nielsm, maybe it would imply that... but it could be a special steam version... like --with-steam-api on config 13:24:06 <peter1138> Hmm, is it actually single-user or some kinda of organisation system? Never looked of course. 13:24:32 <planetmaker> peter1138, yes, that's why I wanted openttd. But will openttd.org or so 13:24:37 <planetmaker> +take 13:24:41 <nielsm> peter1138, if we want "click here to join their game" there would need to be something that announces to steam that you have started/joined a network server and what its address is 13:24:50 <peter1138> nielsm, yup 13:25:13 <nielsm> also possibly a way to convert a singleplayer game to multiplayer in "one click"? 13:25:16 <peter1138> Anyway that's a long way off 13:25:21 <peter1138> First step is just get it on Steam. 13:25:25 <nielsm> i.e. not save, quit, reload on multiplayer mode 13:25:26 <planetmaker> yop 13:25:27 <peter1138> I know people have asked for it for years. 13:25:42 <peter1138> nielsm, PR it ;D 13:25:49 <planetmaker> opinion used to be quite against it, I think. But... seems to have changed 13:26:52 *** snail_UES_ has joined #openttd 13:28:26 <peter1138> Hmm, of course if the app needs some kind of key (credentials) to access features on the platform then that's kinda awkward. 13:28:49 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh opened issue #7125: Convert singleplayer game to multiplayer server https://git.io/fhi1r 13:29:25 <peter1138> L0( 13:29:27 <peter1138> :-) 13:29:28 <nielsm> peter1138, that's basically a compile-time option right? 13:29:56 <peter1138> Means user-compiled builds won't work? 13:30:36 <nielsm> eh let's look at how it actually works: https://partner.steamgames.com/doc/sdk 13:30:44 <peter1138> Nah, speculate! 13:31:01 <planetmaker> wtf... "Ihr Account konnte nicht eingerichtet werden. Versuchen Sie es bitte später noch einmal." could not create account. Try again later 13:33:08 <nielsm> someone requested a while ago a feature to broadcast "joined network game" etc to discord/similar too, that could maybe be wrapped in similar code 13:34:28 <Eddi|zuHause> nielsm: i suggested to them to try an admin port wrapper 13:34:49 <nielsm> does a network client have an admin port? 13:35:43 <peter1138> Mmm, Earl Grey. 13:37:25 <planetmaker> nielsm, coop runs an admin port to irc bridge for OpenTTD. That same could easily be done with discord as well 13:37:38 <planetmaker> and all joins etc are broadcast as well as ingame chat 13:38:10 <nielsm> yeah but this is about a player connecting their client to a server they do not control, and have their client tell a local application about which server they joined 13:39:19 <planetmaker> admin port is currently only available for... servers 13:39:40 <peter1138> That was nielsm's point :) 13:40:15 <planetmaker> sorry, read it as question 13:45:02 <peter1138> Oh. My Jenkins isn't running. Odd. 13:45:31 <peter1138> That explains why the CI isn't running I suppose. 13:49:00 <peter1138> r154352009-08-09extra/pngcodec 13:49:07 <peter1138> Is pngcodec relevant at all? 13:49:35 <peter1138> All those extras seem pretty out of date. 13:53:42 *** snail_UES_ has quit IRC 13:54:44 <DorpsGek_II> [OpenTTD/OpenTTD] paulcobbaut opened issue #7126: custom font settings in openttd.cfg seem to be ignored https://git.io/fhiS6 13:55:32 <planetmaker> uh... no. pngcodec is the old 32bpp era, not the current 13:56:17 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on issue #7126: custom font settings in openttd.cfg seem to be ignored https://git.io/fhiS1 13:56:17 <planetmaker> grfcodec is actually correct 13:56:28 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #7126: custom font settings in openttd.cfg seem to be ignored https://git.io/fhiSM 13:56:33 <planetmaker> and catcodec probably, too 13:56:33 <peter1138> planetmaker, that's what I thought. 13:57:07 <planetmaker> osie likely, too 13:57:17 <nielsm> oh shit, if ottd gets on steam people are going to demand achievements! 13:57:17 <planetmaker> open??x ... checking :D 13:57:30 <planetmaker> nielsm, not a bad thing, is it? 13:57:47 <planetmaker> opengfx is a bit out-of-date 13:58:11 <DorpsGek_II> [OpenTTD/OpenTTD] paulcobbaut commented on issue #7126: custom font settings in openttd.cfg seem to be ignored https://git.io/fhiS7 13:58:14 <nielsm> "enemy of nature: raise 100 sea tiles to land in one operation" 13:58:41 <planetmaker> openmsx and opensfx are ok 13:58:58 <peter1138> Any Mac OS users around? :D 13:59:00 <planetmaker> nforenum is also ok 13:59:05 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #7126: custom font settings in openttd.cfg seem to be ignored https://git.io/fhiSj 13:59:56 <nielsm> (the problem with achievements is that you need to litter checks for them around the code everywhere) 14:00:54 <planetmaker> so in summary: everything in finger.o.o is fine - except OpenTTD nightlies. And somewhat OpenGFX, but no big deal there. 14:01:32 <peter1138> planetmaker, https://github.com/OpenTTD/website/issues 14:01:45 <milek7> steam api stuff could be incompatible with GPL 14:02:07 <nielsm> milek7 it's not 14:02:18 <planetmaker> I checked. It should be ok 14:02:32 <nielsm> the api is public, nothing is secret about it 14:02:48 <peter1138> If it's just a web api, then no. 14:03:26 <nielsm> the game integration is a dynamic library you link and call into, which does IPC with the running steam client 14:03:27 <planetmaker> well... yes. no. The SDK has some NDA included 14:03:58 <planetmaker> but going to check that carefully 14:04:15 <peter1138> Then strictly speaking, yeah, that's not usable. 14:05:43 <planetmaker> Not sure that is needed, though. At least not for bringing it on steam in the first place 14:06:17 <nielsm> yeah no, not needed to just be published 14:06:28 <nielsm> only for the integration with "join my server" etc 14:06:44 <DorpsGek_II> [OpenTTD/website] planetmaker opened issue #48: finger.openttd.org https://git.io/fhi9K 14:08:44 <milek7> hm, i thought GPL extended also to dynamic libraries 14:09:31 <milek7> yes, at least this is FSF interpretation https://www.gnu.org/licenses/gpl-faq.en.html#GPLStaticVsDynamic 14:09:32 <nielsm> yeah technically you're violating GPL by making a binary that depends on an external library that isn't GPL compatible 14:09:48 <nielsm> (unless that library is arguably part of the operating system) 14:10:13 <peter1138> Hence the C runtime on Windows is "okay". 14:10:19 <nielsm> because you're not allowed to infect the proprietary code with GPL 14:10:42 <planetmaker> vice versa? 14:10:46 <nielsm> then your own code becomes a license violation 14:12:48 <nielsm> the way I understand it, a single chunk of GPL code in a loaded and running binary "infects" all other code in that same process with GPL-ness, and if that would be a violation of the license of any of that other code, then that original chunk of GPL code is used without permission 14:13:38 <nielsm> i.e. if you write an in-process COM server for windows file explorer shell API, then it can't actually run because it's not allowed to be loaded in the explorer process 14:13:49 <nielsm> pretty dumb 14:13:56 <planetmaker> "Generally, any license that has a so-called “copyleft” element will be problematic when combining code with the Steamworks SDK. The best-known example is GPL." 14:14:11 <planetmaker> the SDK is not the web API, though 14:14:53 <nielsm> I've seen that argument used for a foobar2000 plugin integrating FFTW, fb2k itself it closed software, the plugin SDK is BSD 2-clause or 3-clause license (iirc), and FFTW is GPL 14:15:16 <nielsm> and the author of FFTW, or maybe it was a resampling library?, claimed it was illegal use 14:16:01 <planetmaker> fftw = fastest fourier transform of the west? 14:16:04 <nielsm> yes 14:16:10 <planetmaker> :) 14:16:12 <nielsm> actually it was probably not that 14:16:28 <peter1138> That would be a violation, yes. 14:16:40 <peter1138> But ergh, we don't need to discuss that :) 14:24:21 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on issue #7112: Commit fef8b83 broke GSTown.SetGrowthRate https://git.io/fhiQ4 14:24:31 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 opened pull request #7127: Fix #7112, fef8b831a9: incorrect precondition check https://git.io/fhiQB 14:25:44 *** supermop_work has joined #openttd 14:26:06 <supermop_work> yo 14:26:16 <Markk> No. 14:26:36 *** glx has joined #openttd 14:26:37 *** ChanServ sets mode: +v glx 14:36:06 *** Mahjong2 has quit IRC 14:39:01 *** Mahjong has joined #openttd 14:39:02 *** andythenorth has quit IRC 14:39:34 *** Mahjong has quit IRC 14:39:50 *** Mahjong has joined #openttd 14:41:25 *** Flygon has quit IRC 14:45:43 *** Arveen2 has quit IRC 14:46:00 <Samu> who's a bool expert? need to simplify/optimize/avoid repetition: https://paste.openttdcoop.org/phnhf0p2b 14:46:22 <planetmaker> indeed. I think we all know what GPL allows and what not :) And make decisions according to that wrt steam 14:47:44 <Samu> IsConsideredDead is repeated, just wondering if there's a way to not have it twice 14:48:35 <glx> Samu: you may want to add parenthesis around your || and && groups, it's easier than trying to remember the evaluation order 14:49:05 <Samu> oh, right, i keep forgeting 14:50:17 <glx> IIRC it's first && then || but may be the other way 14:52:08 <Samu> https://paste.openttdcoop.org/p12grch0h 14:52:26 <peter1138> Always specify the order you want, heh. 14:52:28 <nielsm> no, that can't be simplified with regard to IsConsideredDead 14:53:23 <glx> _game_mode == GM_NORMAL && (IsConsideredDead(this->slot) || (config_item.flags & SCRIPTCONFIG_INGAME) != 0) <-- you really mean (normal && dead) || flags ? 14:54:07 <glx> oups forget it, wrong reading :) 14:54:18 <glx> too many parenthesis for me 14:54:28 <peter1138> Problem is it may not be right ;) 14:54:51 <Samu> in a normal game do this check: IsConsideredDead(this->slot) || (config_item.flags & SCRIPTCONFIG_INGAME) != 0 14:54:51 <nielsm> it's a really complex condition and should not be a single line to begin with 14:55:03 <nielsm> write it as a function that accepts/rejects via early returns 14:55:04 <peter1138> nielsm, indeed. 14:55:06 <Samu> in main menu, do check in line 1 14:55:17 <Samu> in scenario editor, do check line 3 14:58:02 <Samu> IsConsideredDead isn't flexible enough to deal with scenario editor :| 14:58:21 <glx> maybe split in "editable |= ...;" lines hoping the compiler optimises "true |= ..." stuff 14:58:40 <peter1138> Or editable &= 14:58:44 *** andythenorth has joined #openttd 14:58:45 <nielsm> https://0x0.st/zrbg.txt 14:58:48 <nielsm> something like that 14:58:51 <nielsm> is how I read the condition 14:58:58 <nielsm> and that's easier to read and argue about 14:58:58 *** andythenorth has quit IRC 14:59:05 <peter1138> nielsm, yes 14:59:21 <nielsm> it won't win contests for being short, but we're not here to code golf, we're here to write bug-free code 14:59:49 <glx> indeed the function is self explain 14:59:51 <Samu> if (!IsValidAiID(slot)) return true; is only for non deity 15:00:15 <nielsm> Samu I don't know, your code is not clear because you're not using enough parentheses 15:00:24 <Samu> oh :( 15:00:51 <nielsm> ?: conditional expressions are another place there operator precedence rules are really difficult to remember 15:01:18 <nielsm> and you should really not use ?: expressions with anything but simple values or singular conditionals in each slot 15:01:29 <nielsm> (foo == bar) ? x : y 15:01:33 <nielsm> is good 15:01:44 <glx> indeed ?: has less priority than || 15:01:50 <nielsm> (foo == bar || foo == baz) ? (x+5) : (y*6) 15:01:53 <nielsm> is too complex 15:02:21 <Samu> let me edit 15:04:19 <glx> so (a ? b : c || d) is (a ? b : (c || d)) when you may want it to be ((a ? b : c) || d) 15:04:40 *** andythenorth has joined #openttd 15:05:22 <glx> that's why it's better to use parenthesis, ensure it does what you want 15:05:48 <nielsm> or just split up conditionals into multiple statements 15:05:58 <peter1138> :D 15:06:02 <nielsm> a modern compiler is probably going to generate identical code 15:06:17 <planetmaker> yep... the ternary operator is... too complex with anything bigger than very simple stuff 15:06:33 <planetmaker> not reader-friendly. And compilers...are good enough, I guess, too 15:06:35 <peter1138> ternary is okay for rtl ? ;-) 15:06:44 <peter1138> (That was not a question) 15:07:17 <glx> when it's not in the middle of some complex stuff it's ok :) 15:07:19 <planetmaker> rtl = read_from_left ? no : yes 15:07:23 *** andythenorth has quit IRC 15:08:09 <glx> but mixing || and && is already complex enough to not add ?: in it 15:08:24 <Samu> it was working 15:08:42 <glx> but it was not doing what you expected I think 15:08:45 <Samu> just wanted to make it simpler, i guess 15:09:00 <Samu> no, it was doing as I intended 15:09:15 <nielsm> well, we couldn't figure out what you intended 15:09:18 <nielsm> so it was bad code 15:09:26 <glx> even (this->slot == OWNER_DEITY ? Game::GetInstance() == NULL : !IsValidAiID(this->slot) || Company::Get(this->slot)->ai_instance == NULL) ? 15:09:34 <Samu> hehe, the game did understand 15:09:49 <glx> ah yes you really wanted (c || d) 15:09:55 <glx> you were lucky 15:10:18 <nielsm> the compiler does exactly what you tell it to, even when you misspeak 15:10:26 <nielsm> (then it just doesn't do what you intended) 15:11:45 <glx> hehe like using if (a = b) instead if (a == b) 15:11:46 <Samu> a && (b ? (c) : (d || e)) 15:12:01 <glx> it's valid but not what you usually want 15:12:27 <Samu> becomes a && (c), or a && (d || e) 15:12:51 <planetmaker> Samu, in that case I very much prefer a && IsThisFunctionTrue(b,c,d,e) 15:13:43 <glx> hey use a lamba function ;) 15:13:59 <Samu> something like the private that glx used to fix the widgets? 15:13:59 <glx> *lambda 15:14:06 <Samu> what's a lambda? 15:14:26 <Samu> googles 15:14:29 <planetmaker> I'm not exactly on good terms with lambda functions :P 15:14:51 <Samu> ah, ^ 15:15:10 <Samu> i call it circumflex accent 15:16:01 <peter1138> planetmaker, better review my group-livery PR then ;) 15:16:32 <nielsm> ^ is not involved in C++ lambda syntax 15:16:40 <glx> Samu: https://en.cppreference.com/w/cpp/language/lambda 15:16:44 <nielsm> (it's just the bitwise xor operator) 15:17:20 <peter1138> Oh yes, hierarchy. Hmm. 15:17:36 <glx> but a normal function is ok too 15:17:36 <peter1138> Maybe I can lambdaise that and make it generic. 15:18:38 <Samu> "Constructs a closure: an unnamed function object capable of capturing variables in scope. " not english enough for me 15:20:07 <glx> btw Samu I guess your editable calculation happens for DrawWidgets and OnClick 15:20:45 <Samu> yes, that which you fixed recently 15:20:54 <Samu> the private idea 15:20:58 <glx> so indeed you should use an external function 15:21:00 <Samu> whatever private is 15:21:30 <glx> that way you'll be sure draw and click are similar 15:21:50 <glx> even if the conditions are changed later 15:22:28 <glx> and with the external function it's possible to get rid of the expression complexity 15:23:08 *** Taede has quit IRC 15:23:11 *** Taede has joined #openttd 15:23:24 <glx> I didn't in my fix, but for your complex stuff it's needed 15:24:04 <Samu> https://github.com/OpenTTD/OpenTTD/commit/654b635f6fb866fcc3ccabcf8333f3b7495ebb26 15:24:11 <Samu> gonna learn from it 15:26:02 <glx> the return line can be spit in 3 if (...) return true, then a final return false, so 4 lines instead of 1, but easier to follow 15:27:32 <planetmaker> Samu, and the function itself: it is much more readable in the form which niels suggested earlier: early returns instead of one complex expression 15:28:45 <planetmaker> if _game_mode == GM_MENU return true; 15:29:00 <glx> indeed, once something in ... || ... || ... is true it won't change 15:29:21 <planetmaker> if (this->slot != OWNER_DEITY) && !Company::IsValidID(this->slot) return true; 15:29:51 <planetmaker> if (config_item.flags & SCRIPTCONFIG_INGAME) != 0 return true 15:29:54 <planetmaker> return false; 15:30:03 <glx> hey that's my stuff ;) (and yes I could have split it) 15:30:34 <planetmaker> sorry. was it you? Ok, Sam u, take glx' advice :) 15:32:01 <glx> and this one is not that complex, but indeed as it's in a function it's easy to split it to simplify the reading 15:32:51 <peter1138> 45 minutes later... 15:33:29 <Samu> https://paste.openttdcoop.org/pmwjhmzht 15:33:30 <Samu> tada! 15:34:05 <Samu> what is nullptr? 15:34:12 <Samu> should be NULL 15:34:13 *** Wormnest has joined #openttd 15:34:19 <nielsm> nullptr is the same as NULL 15:34:26 <nielsm> except it's a pointer type 15:34:36 <nielsm> and a keyword 15:34:42 <glx> and if you see nullptr you failed somewhere ;) 15:34:43 <nielsm> while NULL is a #define'd constant 15:35:18 <nielsm> new C++ code should use nullptr instead of NULL or 0 when working with pointer types 15:35:46 <glx> but in openttd we still use NULL 15:35:53 <Samu> hmm it was working with NULL, not sure I'd change to nullptr 15:36:21 <nielsm> they're functionally identical 15:36:27 <nnyby> Google's C++ style guide is an interesting read btw, https://google.github.io/styleguide/cppguide.html 15:37:20 <nnyby> openttd seems to follow a more C-like style which I kinda like cause I don't know too much C++ >_< 15:38:10 <planetmaker> well... OpenTTD cannot deny its C heritage 15:38:37 <nielsm> https://github.com/OpenTTD/OpenTTD/pull/7121 ugh CI stuck :( 15:38:39 <planetmaker> its style guide works extremely well, IMHO 15:39:07 <crem2> nullptr is safer than NULL. nullptr cannot be converted to integer. So if `int *p;`, you cannot mistakenly do `*p = nullptr`, but can `*p = NULL`. 15:40:34 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh updated pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fh6im 15:42:08 <planetmaker> is there a way to re-trigger the CI? 15:42:13 <crem2> There once was this particular typo which caused some very large outage in one of major services of one of well-known software companies. :) 15:42:41 <peter1138> Probably needs TB to log in again. Shitty azure :/ 15:42:58 <planetmaker> or should I simply merge that commit and hope it compiles? :P 15:43:15 <peter1138> Well you can test it locally. 15:43:28 <glx> ah yes #7106 is stuck too 15:43:42 <Samu> oh crap, i need to actually enable the configure button too 15:43:43 <glx> force pushed 15h ago 15:44:08 <Samu> enabled in one place, left it unenabled in the other 15:44:10 <planetmaker> the CI seems somewhat unreliable :| 15:44:22 <glx> hey it's free 15:44:47 <planetmaker> the other didn't cost us anything either ;) 15:45:07 <planetmaker> (but time / maintenance) 15:45:23 *** sla_ro|master has joined #openttd 15:46:11 <peter1138> Need TB to login on a cron, heh 15:46:26 <planetmaker> :P 15:46:31 <peter1138> Or maybe just get logins for other devs so they can do it. 15:46:43 <planetmaker> a bot checking issues to have completed and re-trigger a built, if not 15:46:50 <planetmaker> like the stale issue checker 15:47:14 <Samu> this->SetWidgetDisabledState(WID_AIC_CONFIGURE, this->selected_slot == INVALID_COMPANY || GetConfig(this->selected_slot)->GetConfigList()->size() == 0); 15:47:20 <nielsm> some more people with login-access to the azure org would help too 15:47:25 <Samu> this->SetWidgetDisabledState(WID_AID_SETTINGS, ai_debug_company == INVALID_COMPANY || GetConfig(ai_debug_company)->GetConfigList()->size() == 0); 15:47:41 <nielsm> I don't think you even need any special permissions for it, just ability to log in as a member of the org to "keep it alive" 15:47:46 <Samu> it's funny, in one place it's called settings, in the other it's called configure, and yet they refer to the exact same window 15:48:17 <planetmaker> do we have some keepass database with login & stuff? Would make sense IMHO 15:48:34 <peter1138> Don't think it needs to be a single login, in this case. 15:48:35 <nielsm> just add more members to the org? 15:48:39 <nielsm> yeah 15:48:49 <planetmaker> also true probably, yes 15:49:01 <planetmaker> always need 2 with complete access to every service 15:49:04 <nielsm> ping orudge? 15:49:05 <planetmaker> at least 15:49:32 <peter1138> Or, we could pay for it? 15:49:53 <peter1138> Hmm 15:49:56 <nielsm> I think paid accounts have the same rule 15:50:06 <Samu> i need a GS with no parameters, for testing 15:50:12 <Samu> testing button state 15:50:12 <peter1138> Ah, right, this page I'm looking at is 5 years old :/ 15:50:13 <nielsm> unless you pay for your own azure build hosts 15:50:17 <Samu> do u know of any? 15:51:02 <glx> write one 15:52:20 <glx> it's often easier to write an "empty" script than to search for one matching your test case 15:52:38 <peter1138> Urgh, now I have to invalidate colours when changing a group's parent. 15:52:46 <planetmaker> Samu, tutorial-GS? 15:54:34 *** andythenorth has joined #openttd 15:54:38 <glx> Samu: you can probably adapt https://wiki.openttd.org/AI:TestAI into a GameScript with no difficulty 15:55:39 <glx> https://www.tt-forums.net/viewtopic.php?f=65&t=62163 <-- maybe easier 15:56:16 <andythenorth> well 16:00:21 <peter1138> And traversing parents is easy, but children not so much. 16:01:46 <peter1138> Maybe I should just not support group heirarchy :p 16:01:52 <andythenorth> 2.0 16:05:22 *** WWacko1976-work has quit IRC 16:06:18 *** Pikka has joined #openttd 16:06:39 <Samu> editing minimalGS brb 16:09:01 <Samu> interesting, just found a bug 16:09:13 <Samu> if the parameter is DEVELOPER 16:09:21 <Samu> the list of settings isn't empty 16:09:34 <Samu> it's not considering whether they're visible or not 16:10:14 <Samu> technically, the list has items, but since they're hidden... 16:10:27 <Samu> it should disable the button 16:10:33 <Samu> dont u think? 16:11:55 <glx> if nothing is displayed, disabling makes sense I guess 16:11:57 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh approved pull request #7127: Fix #7112, fef8b831a9: incorrect precondition check https://git.io/fhPUN 16:16:21 <DorpsGek_II> [OpenTTD/OpenTTD] planetmaker merged pull request #7127: Fix #7112, fef8b831a9: incorrect precondition check https://git.io/fhiQB 16:16:27 <DorpsGek_II> [OpenTTD/OpenTTD] planetmaker closed issue #7112: Commit fef8b83 broke GSTown.SetGrowthRate https://git.io/fh6LW 16:17:07 <planetmaker> bbl 16:24:23 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh approved pull request #7101: Fix #6636: Airplanes could be sent to helicopter station depots https://git.io/fhPkv 16:24:36 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh merged pull request #7101: Fix #6636: Airplanes could be sent to helicopter station depots https://git.io/fhKfk 16:24:41 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh closed issue #6636: airplane going for helistation depot https://git.io/fhPkJ 16:28:47 *** Gja has joined #openttd 16:31:28 <nielsm> hmm :P https://0x0.st/zrcc.png 16:31:52 <nielsm> I think that's the result of savegame version incrementing past that I used in another branch :) 16:31:54 <glx> nice 16:41:07 *** keoz has joined #openttd 16:43:57 <Samu> back 16:44:06 <Samu> GetConfig(ai_debug_company)->GetConfigList()->size() == 0 16:44:27 <Samu> this check isn't enough to determine whether Settings button is to be enabled or disabled 16:44:42 <Samu> need another private function? 16:45:07 <Samu> and it's used both for AI Congig and AI Debug 16:45:13 <Samu> Config* 16:45:20 <Samu> hmm so... can't be private? 16:45:50 <Samu> something a-la IsConsideredDead, I suppose 16:46:05 <andythenorth> we need a mac-in-cloud for testing :P 16:46:20 <andythenorth> currently I have to be mac-in-cloud personally, it's getting demoralising :D 16:46:47 <peter1138> :D 16:47:03 <peter1138> But do your fonts work? 16:47:38 <andythenorth> I have NFI 16:47:45 <andythenorth> I would never use a weird font 16:47:50 <andythenorth> so now I have to learn how to do that 16:48:31 <glx> you just have to set fonts in the config 16:50:59 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7081: Change: [Linkgraph] Pause the game when linkgraph jobs lag (#6470) https://git.io/fhPtQ 17:01:39 <nielsm> it's annoying testing things that really need a release/optimized build for performance 17:01:50 <nielsm> since those take rather long to make 17:04:38 <Samu> I am inventing ^_^static bool IsGUIConfigListEmpty(CompanyID slot) 17:05:16 <Samu> mostly copy pasting code around into it 17:06:46 * andythenorth wonders how bad the page load here really is http://bundles.openttdcoop.org/firs/push/LATEST/docs/html/get_started.html 17:07:15 <Samu> insta loaded for me 17:08:19 <andythenorth> my browser brings it down in about 500ms, uncached 17:11:03 <andythenorth> the openttd website is 100ms 17:12:04 <nielsm> time to compare! https://0x0.st/zrcL.jpg 17:15:32 <LordAro> nielsm: neither of those are fast 17:17:23 <nielsm> I don't see any particular improvement in this scene at least 17:21:33 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7083: Codechange: [Linkgraph GUI] Replace line visibility detection algorithm https://git.io/fhPOu 17:27:20 *** frosch123 has joined #openttd 17:32:36 <TrueBrain> nielsm: cool idea for nightly docker. we first need a template for that .. interested? :) 17:33:01 <nielsm> I'd have to learn those things from the ground up first then 17:33:05 <nielsm> ._. 17:34:27 <Samu> hmm, is it okay to close the window on me if there are no more visible settings when I set ai_developer_tools off? 17:34:37 <Samu> would I like that to happen? 17:36:33 <Samu> i wouldn't mind, because i know there are no more visible settings anymore, but what if someone doesn't know of this? 17:36:40 <nielsm> doesn't matter imo 17:36:45 <nielsm> whatever is easier to do 17:37:12 <nielsm> it's such a rare occurrence it really doesn't matter, as long as you don't crash 17:38:53 *** synchris has joined #openttd 17:40:37 <Samu> ok, gonna close it on me 17:40:55 <Samu> behave similar to textfile, also closes on me when there's nothing to display 17:43:35 <TrueBrain> nielsm: bah :P So we need to find someone to contribute a Dockerfile :D 17:43:38 <TrueBrain> as it really is a good idea 17:44:38 *** Progman has joined #openttd 17:46:49 <Samu> crap, the debug window is also relevant, i keep forgetting it exists :p 17:49:34 <DorpsGek_II> [OpenTTD/website] TrueBrain commented on issue #48: finger.openttd.org https://git.io/fhPGJ 17:50:04 <TrueBrain> okay, Azure Pipelines is really annoying. It really has to be a logged-in user to dequeue the builds .. 17:50:28 <TrueBrain> it also fails to cancel jobs because newer versions are available 17:50:30 <TrueBrain> (which it normally does) 17:50:34 <TrueBrain> so it really is buggy 17:52:19 <TrueBrain> CPython uses the old-style Azure Pipelines webhook .. possibly that is more stable or something 17:56:51 *** supermop_work has quit IRC 17:57:20 <andythenorth> new website design then? 17:57:21 <andythenorth> :P 17:58:23 <LordAro> uhoh 17:58:36 <andythenorth> probably not right now imho 17:58:37 <andythenorth> also BBL 17:58:39 *** andythenorth has quit IRC 17:58:43 <peter1138> When you buy too much veg to fit in your fridge... 17:59:53 <peter1138> nielsm, might see more of a difference with a 32bpp blitter. 18:05:05 *** Gja has quit IRC 18:05:16 <nielsm> peter1138 ah good idea 18:05:35 <glx> animated blitter maybe 18:06:22 <nielsm> force_full_redraw = false <- flip that? 18:08:52 *** Gja has joined #openttd 18:10:37 *** Wolf01 has joined #openttd 18:10:59 <Samu> how to check if a window is open 18:11:05 <nielsm> https://0x0.st/zrcE.jpg seeing a tiny difference now 18:11:27 <Samu> need to re-open to refresh widgets plane 18:11:48 <Samu> debug window is a big buggy 18:12:01 <peter1138> BringWindowToFrontById() will return the window pointer if it's open, and highlight it. 18:12:05 <peter1138> Might not be what you want. 18:12:36 <Wolf01> o/ 18:12:37 <Samu> i guess invalidatedata would be more appropriate, but it involves hidden widgets 18:12:46 <Samu> dont know how to do this 18:12:47 *** tokai|noir has joined #openttd 18:12:47 *** ChanServ sets mode: +v tokai|noir 18:13:36 <Wolf01> So, I just asked to activate FTTH up to 200M (my area isn't covered by the 1000M), let's see how much they take to do it 18:14:45 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh approved pull request #7083: Codechange: [Linkgraph GUI] Replace line visibility detection algorithm https://git.io/fhPcn 18:15:25 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh merged pull request #7083: Codechange: [Linkgraph GUI] Replace line visibility detection algorithm https://git.io/fh2PV 18:15:39 <LordAro> Wolf01: that's a bit better than you've currently got, i think? :p 18:15:49 <Wolf01> Just a little boost from 4M 18:16:21 *** andythenorth has joined #openttd 18:16:29 *** Wormnest has quit IRC 18:19:47 *** tokai has quit IRC 18:19:51 <TrueBrain> peter1138: I keep looking for ways to automatically log myself in every hour or so .. but for that it first needs to stall, so I can check if my fix works :P But yeah, it would help if one or two of you also got an account so you can dequeue if I am not here 18:20:32 <TrueBrain> I have two more attempts lined up .. we will see tomorrow if either one works :) 18:21:02 <peter1138> What sort of account does one need? 18:22:29 <Samu> https://paste.openttdcoop.org/paiimwyt5 does this look alright? it looks strange to see typedef outside 18:22:45 <Samu> may i have it outside? 18:23:12 <peter1138> It needs to be outside because it's the return type. 18:23:17 <Samu> and why can't it be static? 18:23:27 <TrueBrain> peter1138: euh .. I think orudge can sign you up on your @openttd.org email, I guess 18:23:27 <peter1138> What can't what be static? 18:23:39 <Samu> static typedef 18:23:41 <TrueBrain> but you have to signup to Azure Pipelines 18:23:46 <TrueBrain> (right top corner, Sign Up) 18:23:51 <peter1138> Hmm, I can probably add that to my existing account. 18:23:59 <Samu> im only using it for ai_gui.cpp file 18:24:09 <glx> a typedef is always static 18:24:14 <Samu> oh, ok 18:24:26 <glx> unless it's in a header 18:24:40 <peter1138> a typedef does not have any storage, so it can't be static. 18:24:46 <TrueBrain> peter1138: easiest is the @openttd.org address, as that keeps the Team simple and clean 18:25:21 *** Thedarkb-T60 has joined #openttd 18:25:48 <Samu> im gonna need the function for some of the windows'es 18:26:08 <Samu> AI Settings, AI Debug, AI Config 18:26:34 <nielsm> (btw "windows" is already plural, it doesn't need any 'es suffix or otherwise) 18:27:21 <Samu> it was an exclusive of AI Settings 18:27:32 <Samu> but i realized i need it outside of it 18:28:07 <Samu> to determine some widgets enableness 18:37:10 <andythenorth> oof eints :P 18:37:13 <andythenorth> that UI is horrid 18:38:20 <andythenorth> too many things to fix andythenorth :P 18:38:24 <andythenorth> have a break 18:42:26 <Samu> visible_settings.clear(); 18:42:27 <Samu> visible_settings.swap(BuildVisibleSettingsList(this->slot)); 18:42:36 <Samu> is swap what i really want? 18:42:59 <Samu> i want to transfer the items from a list to the other, and then discard it 18:43:20 <Samu> swap doesn't seem to be what i want 18:45:18 <peter1138> Damn, I really should remove stashes when I'm done with them. 18:46:36 <Samu> swap is working though 18:47:15 <andythenorth> git stash apply oops 18:47:25 <andythenorth> git stash unapply :P 18:47:41 <Samu> nop it's not working 18:47:44 <Samu> fail 18:47:59 *** HerzogDeXtEr has joined #openttd 18:48:22 <Samu> well, screw it 18:48:25 <Samu> reverting 18:48:36 <DorpsGek_II> [OpenTTD/OpenTTD] George-VB commented on issue #6907: Cargo capacity should be recalculated on TRIGGER_VEHICLE_NEW_LOAD https://git.io/fhPl7 18:50:00 <peter1138> git stash pop 18:50:04 <peter1138> git stash drop, etc 18:50:41 *** gelignite has joined #openttd 18:50:55 <peter1138> ^ 6907... 18:51:01 <peter1138> Capacity can only be changed in a depot, right? 18:52:32 <andythenorth> no 18:52:37 <andythenorth> cb36 18:53:46 <andythenorth> station trigger, possibly others 18:53:54 <peter1138> So is 6907 valid? 18:53:55 <andythenorth> wiki is vague, and I didn't read the trigger code 18:54:04 <andythenorth> being candid, fuck knows 18:54:22 <andythenorth> I am having sense of humour failure about newgrf stuff :P 18:54:24 <peter1138> Don't need to read the code, is it *meant* to do what he wants, heh 18:54:41 <peter1138> I've never used autorefit, and don't know where it even came from. 18:54:49 <andythenorth> it was a nice misguided idea 18:55:51 <andythenorth> on the plus side I rarely use the refit GUI any more, just set station refit order 18:55:56 <andythenorth> on the negative side, spiders 18:56:06 <peter1138> Hmm, newgrf cache is invalidated before and after the trigger is done. 18:56:14 <andythenorth> https://media.giphy.com/media/119mPbgfgGnXig/giphy.gif 18:56:23 <peter1138> q 18:57:50 <peter1138> Ok, so the trigger happens, and then the cache is invalid. 18:57:59 <planetmaker> autorefit... is that the refit which you can tell a train to do at a station? 18:58:11 <peter1138> I think so. 18:58:15 <planetmaker> so you can ship wood to a factory and the same train ships back a few supplies? 18:58:30 <planetmaker> advanced, but useful stuff 18:58:46 <TrueBrain> andythenorth: I understand you jump to 'bootstrap' in the news-post-topic, but realise it is a solution, instead of telling the requirements. You limit the possible solutions immediately, without clear benefits. Possibly it is good to rethink it to something like: well-known-and-established framework which has no dependencies on javascript 18:58:54 <TrueBrain> that would be much more preferred to me 18:59:08 <TrueBrain> (as if someone makes a Bootstrap site with Javascript bla, I am not going to be really happy about it) 18:59:25 <peter1138> Bootstrap is Meh. 18:59:36 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on issue #6907: Cargo capacity should be recalculated on TRIGGER_VEHICLE_NEW_LOAD https://git.io/fhP4l 18:59:59 <andythenorth> hmm 19:00:01 <TrueBrain> havent used Bootstrap in years; but I guess it is easy to make good websites which have all the modern solutions 19:00:12 <TrueBrain> just ... not depending on Javascript is much more valuable, in my opinion :) 19:00:14 <andythenorth> dunno, can we talk about it another day 19:00:19 <andythenorth> I am having sense of humour failure 19:00:21 <TrueBrain> (and you can make Bootstrap not depend on Javascript :P) 19:00:22 <andythenorth> about my OpenTTD jobs list 19:00:41 <TrueBrain> sense of humour failure? 19:00:43 <TrueBrain> wtf is that? :) 19:01:43 <andythenorth> too many things I need to sort out, and everything seems to be an argument :P 19:01:57 <andythenorth> need to reset perspective :P 19:02:43 <andythenorth> specifically to Bootstrap, I agree with your wording 19:02:54 <andythenorth> but FFS, we already shipped all this in eints, and nobody commented 19:03:10 <andythenorth> eints possibly has jquery in it pointlessly even, and nobody checked 19:03:22 <planetmaker> andythenorth, sounds like the point at which I felt like ~2...3 years ago where I basically needed to take a break... scaling things down 19:03:40 <andythenorth> so does that 100ms really matter enough that we have to throw out all possibility of ever using a framework 19:03:45 <andythenorth> seems a bit not-invented-here 19:04:11 <TrueBrain> 100ms? 19:04:22 <andythenorth> pointless jquery load on eints ;) 19:04:35 <andythenorth> I can't remember if it's used, but I don't know what would use it 19:05:09 <TrueBrain> ah; I am not too fuzzed about the loading times etc 19:05:16 <TrueBrain> and eints can use Javascript, that is fine 19:05:21 <TrueBrain> just our main page is loaded by non-javascript geeks 19:05:29 <TrueBrain> it should not break because someone didnt load javascript :) 19:05:33 <andythenorth> yeah I get that 19:05:35 <TrueBrain> different set of requirements :) 19:05:43 <andythenorth> just these irrational fears people have 19:05:46 <andythenorth> same BS every time 19:05:55 <andythenorth> anyway, let's put my smiley face on :) 19:06:11 <andythenorth> fucking css coders who insist on hand-crafted BS 19:06:26 <andythenorth> but don't even know what a macro is 19:06:50 <peter1138> :D 19:07:07 <andythenorth> so things I am supposed to be doing 19:07:21 <andythenorth> - fixing whatever is broken with 64 cargos for GarryG, who I like 19:07:24 <TrueBrain> there, I wrote a tiny list of requirements with why we want it :) 19:07:36 <andythenorth> - testing the mac scrollwheel stuff, which I never use, so I don't know what's correct there 19:07:54 <andythenorth> - testing mac font regression, which I don't understand, cos I use the pixel font, instead of weird things 19:08:37 <TrueBrain> but yeah, to reiterate what was said by planetmaker, I guess, paraphrased: don't make this your second job, plz :) 19:08:43 <andythenorth> innit :) 19:08:47 <TrueBrain> we all tried that :P 19:08:53 <andythenorth> - making a test grf for 5006, because if I don't who will, despite that george will keep demanding it 19:09:07 <andythenorth> err actually that's it 19:09:33 <peter1138> George is usually good with test GRFs 19:09:43 <peter1138> At least, sort of. 19:09:48 <andythenorth> well I'm going to wait and see then :P 19:09:50 <TrueBrain> just 4 things? you slacker! :P 19:10:01 <peter1138> Usually it's a massive GRF containing everything and no instructions on what is meant to happen. 19:12:19 <andythenorth> "I like trains" https://user-images.githubusercontent.com/1780327/51793795-3a78aa00-21be-11e9-9958-f717ccb3ccc1.png 19:12:38 <andythenorth> if we could have more of a newgrf maintainer, that would be super 19:12:44 <andythenorth> but that's not how open source works :D 19:13:19 <TrueBrain> we can at least make it more accessible 19:14:19 <planetmaker> andythenorth, they look superb. And I can't help to feel reminded on V's rainbow snails :) 19:15:21 <andythenorth> me too 19:15:32 <andythenorth> FML newgrf :) https://paste.openttdcoop.org/psgacnszl/lbkgxa/raw 19:15:49 <andythenorth> actually the thing that is bugging me most is the new industry / cargo / house stuff 19:16:03 <andythenorth> it will probably be shipping in 1.9.x, but we don't have the nml support or docs 19:16:07 <andythenorth> that's kinda lame imo :) 19:16:26 <andythenorth> feels like I should fix it, but not sure I can alone 19:18:21 <andythenorth> eh so I did test it https://github.com/OpenTTD/OpenTTD/pull/6802#issuecomment-399734518 19:19:16 <planetmaker> do you have merge rights with NML? 19:20:27 <andythenorth> I did, not sure right now 19:20:30 <peter1138> Is it just NML isn't updated? 19:20:35 <peter1138> Shouldn't it give an error? :D 19:20:56 <peter1138> kk, group livery inheritance sort of working. 19:21:35 <andythenorth> https://github.com/OpenTTD/nml/commit/48f6cbed52f84a4f37be7fb37dd93be3e957fe6b 19:21:47 <peter1138> kk 19:21:49 <peter1138> So it's there. 19:21:50 <andythenorth> I get 47 cargos in the game with 47 cargo FIRS 19:21:58 <peter1138> The guy might just be using an old version? 19:22:00 <andythenorth> think it's just user error 19:22:11 <andythenorth> Garry has a brain injury and it's 41 degrees in Oz east coast 19:22:11 <planetmaker> hm? 19:22:21 <andythenorth> so he might benefit from some help, he's a nice guy 19:22:33 <andythenorth> he has so much fun making this stuff 19:22:46 <planetmaker> well, yes, he has. 19:22:53 <planetmaker> but ... what's the issue? 19:23:29 <andythenorth> https://www.tt-forums.net/viewtopic.php?p=1217846#p1217846 19:23:52 <andythenorth> could move his post to graphics forum, and make a thread about 64 cargo stuff? 19:24:28 <planetmaker> hm, yes, I shall do that 19:25:43 <andythenorth> thanks! 19:25:44 <Wolf01> Ok, so it's not FTTH but FTTC, there is one FTTH 100/100 which costs an eye 19:25:59 <Wolf01> Still not bad, but certified for 80M 19:26:21 <Wolf01> I was hoping for a true FTTH 19:26:47 <peter1138> Gosh, this actually works. 19:27:01 <peter1138> Wolf01, "fibre broadband" is a lie, yes. 19:27:07 <Samu> start_date parameter is evil, evil!!! still getting crashes 19:28:45 <andythenorth> peter1138: works? o_O 19:28:49 <Wolf01> 200/20 still better than 4/0.2 19:29:37 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh approved pull request #7117: Fix group hierarchy not being visible in RTL languages. https://git.io/fhP0C 19:29:45 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh merged pull request #7117: Fix group hierarchy not being visible in RTL languages. https://git.io/fh6gK 19:33:52 <peter1138> Wolf01, somewhat. 19:34:07 *** keoz has quit IRC 19:38:26 * andythenorth wonders if George has cdist in that game 19:38:43 <andythenorth> probably unrelated, but there was a run of cdist issues with autorefit and capacity 19:39:40 <andythenorth> " Force the train to refit to some other cargo, that is not available on both stations, and back to the required cargo on loading. " 19:41:30 <Samu> when im trying to reset the settings of an AI that was switched to Random AI, I am getting a crash 19:41:31 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh requested changes for pull request #7049: Fix #6599: Can still click on buy button in vehicle selection window even if no vehicle is selected https://git.io/fhPEV 19:41:47 <Samu> because AI Info does not exist 19:42:51 <Samu> what to do, what to do 19:43:12 <andythenorth> kinda wondering about https://github.com/OpenTTD/OpenTTD/commit/f790d70cd62b2a9e4ddf87c20f6a22755bc24881#diff-ebbc445f07842947d83d0f98b7fa5140R1577 19:44:00 <andythenorth> and the comment above that conditional 19:46:20 <Samu> AI Info really does not exist for Random AIs... i need another approach for the reset button 19:46:43 <Samu> i was basing on the existance of an AI Info in every case... 19:46:53 <Samu> must think 19:48:46 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fhPum 19:49:27 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fhPu3 19:53:52 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fhPua 19:55:47 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7121: Fix #7021: Better revision strings for network and gamelog https://git.io/fhPuM 19:57:24 <LordAro> nielsm: currently trying a s/NULL/nullptr/, just for funsies 19:57:34 <nielsm> global? 19:57:39 <nielsm> :o 19:57:40 <LordAro> yes :p 19:57:57 <peter1138> #define NULL nullptr 19:58:03 <peter1138> Expect it not to work. 19:58:31 <milek7> i think it is already defined this way 19:58:33 <nielsm> that's honestly not a bad approach 19:58:36 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on issue #6907: Cargo capacity should be recalculated on TRIGGER_VEHICLE_NEW_LOAD https://git.io/fhPub 19:58:53 <LordAro> milek7: depends on platform & compiler, i suspect 19:59:00 <LordAro> seemed to compile fine :) 19:59:03 <LordAro> how dull 19:59:46 <frosch123> just don't add STR_nullptr :p 20:08:24 <LordAro> :p 20:08:41 <LordAro> did s/\bNULL\b/nullptr/, should be fine 20:12:14 *** synchris has quit IRC 20:29:21 <nielsm> hmm I want to save this one: https://github.com/OpenTTD/OpenTTD/pull/6973 20:29:46 <TrueBrain> mark it as such :) 20:29:50 <nielsm> should I clone his branch into mine and make a new PR, or abuse github power to push to his branch and modify the PR? 20:30:01 <TrueBrain> (pinned label) 20:30:17 <TrueBrain> can you write in his branch? 20:30:20 <TrueBrain> sounds evil 20:30:24 *** CZTR has quit IRC 20:31:07 <nielsm> yes, that's a flag you can set when creating a PR, allowing users with enough permissions in the receiving repository to push to your branch 20:31:29 <nielsm> and it defaults enabled 20:31:34 <TrueBrain> funny 20:31:38 <nielsm> but I'll make a new PR :) 20:33:30 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN updated pull request #7108: Feature: Group liveries, and livery window usability enhancements. https://git.io/fhK9F 20:34:04 <DorpsGek_II> [OpenTTD/OpenTTD] PeterN commented on pull request #7108: Feature: Group liveries, and livery window usability enhancements. https://git.io/fhPar 20:39:54 <peter1138> Ok, I don't think I need mercurial in my Jenkins install :p 20:40:04 <peter1138> Ah, you can't remove it. 20:44:04 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh opened pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPV0 20:44:14 *** andythenorth has quit IRC 20:44:25 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #6973: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPVu 20:44:27 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh closed pull request #6973: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fplSS 20:44:38 <nielsm> hmm should we maybe have a tag for PRs that affect savegame version? 20:44:52 <LordAro> doesn't seem like a bad idea 20:46:59 <peter1138> Hmm 20:47:29 <peter1138> We should start using enums too, to avoid having to fix numbers everywhere. 20:48:05 <LordAro> what do you mean? 20:48:08 <peter1138> https://github.com/PeterN/OpenTTD/commits/saveload-version-enum 20:48:08 <peter1138> ^ 20:48:12 <LordAro> ah 20:48:56 <peter1138> When you rebase, the only part that conflicts is the current savegame version, so you have to check to make sure you got all the SL_COND stuff updated. 20:49:11 <LordAro> hmm 20:49:27 <peter1138> I encountered difficulties due to some savegame versions covering a range of commits :p 20:49:51 <LordAro> i don't like the `SLV_FOO - 1`, perhaps the latter parameter could be exclusive? 20:49:51 <peter1138> We don't need to back date it as such, but we could start to do it going forwards. 20:50:33 <glx> #ifndef NULL #ifdef __cplusplus #define NULL 0 #else #define NULL ((void *)0) #endif #endif 20:50:38 <peter1138> LordAro, possibly. 20:50:45 <glx> that's NULL for msvc 20:50:57 <peter1138> LordAro, that means we need to change every SL_COND line in one go. Not an issue. 20:51:33 <peter1138> The enum naming is crap too, of course. 20:51:40 <peter1138> I was just making it work :D 20:52:02 <peter1138> Need to see how everyone else feels? 20:52:13 *** andythenorth has joined #openttd 20:52:24 <Samu> nielsm dont forget about scenario saves 20:52:33 <Samu> UNNAMED is lame 20:52:46 <nielsm> what? 20:52:50 <Samu> doesn't even ask if i want to overwrite 20:52:58 <LordAro> peter1138: mm 20:53:17 <Samu> you're working on savegames, aren't you 20:53:19 <andythenorth> woo https://github.com/OpenTTD/OpenTTD/pull/7108#issuecomment-458290682 20:53:21 * andythenorth tests 20:53:27 <LordAro> glx: interestingly, i can't find any definition of NULL in mingw, other than redefinitions in SDL & ICU 20:53:32 <nielsm> oh, does it carry the savegame unique id over from scenario to game when you start a new game from scenario? 20:53:34 <LordAro> ICU defines as nullptr :) 20:53:48 <andythenorth> peter1138: so which branch? o_O 20:54:12 <nielsm> Samu: I just imported someone else's patch and updated it to compile on current master 20:54:41 <peter1138> andythenorth, nrt? 20:54:49 <andythenorth> group-livery 20:54:51 <Samu> oh, i didn't look at it in detail, just hoping he didn't forget about scenario editor 20:55:03 <Samu> saving a scenario always defaults to UNNAMED 20:55:08 <peter1138> andythenorth, ah. yes. That one. 20:56:43 <glx> #ifndef NULL #ifdef __cplusplus #ifndef _WIN64 #define NULL 0 #else #define NULL 0LL #endif /* W64 */ #else #define NULL ((void *)0) #endif #endif 20:57:06 <glx> there's this one in crtdgb.h 20:59:09 <peter1138> LordAro, https://github.com/PeterN/OpenTTD/commit/425f5535e32a83812aa6d032edd7cb58f755945e 20:59:37 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPwE 20:59:59 <peter1138> LordAro, so this doesn't attempt to solve the savegame version issue with lots of patch packs and all that bollocks 21:00:08 <peter1138> LordAro, just make things a little easier to maintain. 21:00:12 <LordAro> year 21:00:15 <LordAro> yeah* 21:00:52 *** sla_ro|master has quit IRC 21:01:00 <peter1138> I'm willing to go through and convert (most) previous versions if this is acceptable. 21:01:54 <LordAro> i wouldn't be unopposed 21:02:24 <LordAro> should probably be `enum SaveLoadVersion : uint16` 21:02:28 <LordAro> er 21:02:33 <LordAro> i wouldn't be opposed* 21:04:24 <peter1138> Can be tricky working out what each entry name should be :) 21:04:36 <glx> and the same preprocessor block in locale.h, minwindef.h, ntdef.h (also defining NULL64) 21:04:45 <glx> oh of course stddef.h 21:04:51 <peter1138> I guess, step 1, make COND exclusive, not inclusive. 21:07:38 *** Wormnest has joined #openttd 21:07:59 <peter1138> * @param version_to Highest version number that falls within the range. 21:08:05 <peter1138> Hmm, how do you reword a comment like that :p 21:09:57 <LordAro> "entirely" 21:14:50 <Samu> i have a question, I made this: https://paste.openttdcoop.org/paiimwyt5 21:14:58 <Samu> now, I wanna call it 21:15:33 <Samu> visible_settings.swap(BuildVisibleSettingsList(slot)); 21:15:42 *** Wormnest has quit IRC 21:16:00 <Samu> is swap what I'm looking for? 21:16:40 <Samu> it makes a swap, but what happens to the discarted list? 21:16:59 <Samu> i dont need it for anything 21:17:13 *** keoz has joined #openttd 21:17:14 <Samu> is it occupying memory 21:17:40 <Samu> ? 21:18:32 <nielsm> is it a pointer? 21:19:04 <Samu> VisibleSettingsList visible_settings; 21:19:11 <Samu> it's a vector? 21:19:12 <Samu> no idea 21:19:26 <nielsm> the object itself is destroyed when it goes out of scope, but if the object is a pointer then the pointed-to object is not touched 21:21:03 <Samu> oh boy, I don't know 21:22:44 <Samu> out of scope means, outside the brackets? 21:23:30 <peter1138> LordAro, hmm, maybe converting to exclusive before-hand is a bit error prone :/ 21:24:01 <peter1138> lol 21:24:10 <peter1138> Ah, old_station_desc 21:24:11 <LordAro> haha 21:24:32 <peter1138> I thought we were still "reserving" space for a second. 21:24:50 <Samu> hold on nielsm 21:24:55 <Samu> copying code... 21:25:46 *** Progman has quit IRC 21:25:50 <Samu> https://paste.openttdcoop.org/pmqd87lcm 21:26:06 <Samu> i have the function outside the big one, which is where it's called 21:26:37 <Samu> line 35 initiates visible_settings; 21:26:39 <milek7> Samu: vector will be destroyed after swap call 21:26:42 <DorpsGek_II> [OpenTTD/OpenTTD] RoqueDeicide commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPoF 21:26:57 <milek7> but is it valid code? (it doesn't complain about passing non-const temporary reference?) 21:27:18 <Samu> and line 78 21:27:53 <Samu> is where i made the swap, i don't know i want to use swap command or some other command 21:28:09 <Samu> because i only need to update visible_settings 21:28:49 <milek7> you could just use copy assignment, visible_settings = BuildVisibleSettingsList(slot); 21:28:59 <Samu> doesn't like it 21:29:09 <Samu> unless it likes it now, let me test 21:29:13 <milek7> hm 21:29:46 <Samu> visible_settings = BuildVisibleSettingsList(slot); 21:29:53 <Samu> funny... it wasn't working the first time 21:30:02 <Samu> now it works 21:30:11 <Samu> well, sorry 21:31:03 <Samu> yep, it built 21:31:09 <Samu> no error 21:31:39 <peter1138> LordAro, "git diff --word-diff-regex=." is magic! 21:32:10 <LordAro> ooh, very nice 21:32:31 <peter1138> Actually in this case, "git diff --word-diff-regex=[0-9]+" works better. 21:34:38 <peter1138> Ok, that blew it up :D 21:38:34 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPKd 21:42:44 <peter1138> Oh god there's all the settings too :( 21:42:49 <LordAro> haha 21:42:51 <LordAro> oh yes 21:42:59 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhP6I 21:43:00 <peter1138> to = ... 21:43:15 <peter1138> Hmm, not that many 21:43:18 <peter1138> grep ^to ... 21:46:16 *** frosch123 has quit IRC 21:46:51 <peter1138> Hmm, still doesn't load. 21:47:50 <peter1138> Ah, another test. Sigh. 21:47:55 <peter1138> Code duplication, eh? 21:48:16 <LordAro> who would do such a thing 21:49:56 *** Gja has quit IRC 21:50:59 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh updated pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPV0 21:51:30 <peter1138> I'm not joking about that comment. I have no idea how to reword it. 21:52:10 <LordAro> "Exclusive savegame version upper bound. SL_MAX_VERSION if no upper bound" ? 21:54:58 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhP6h 21:55:51 <Samu> peter1138, that window you're quoting is the list of available AIs, not the list of AI settings, unless you really mean what you say https://github.com/OpenTTD/OpenTTD/pull/7084/files/992a1aae55114fbb6b6901e4d759dcb23e812f95#r251261287 21:57:22 <peter1138> Ok, then s/settings/list/ 21:57:54 <peter1138> I don't know the change does. 21:58:18 <peter1138> But it looks like it'll close the window if the slot is a valid AI. 21:58:21 <peter1138> But I dunno. 21:58:41 <Samu> yes, that window is called when a company starts 21:58:49 <Samu> that invalidate command* 21:59:06 <Samu> if it's human, no need to close 21:59:15 <Samu> if it's ai, then yes, must be closed 21:59:33 <Samu> can't risk changing the ai config list into another 21:59:51 <andythenorth> nice group hierarchy \o/ 22:00:00 <andythenorth> I made a group called 'The Rainbow' 22:03:14 <andythenorth> peter1138: if I have a child group with 'default', AND the parent has different value to company AND I then move child out of parent, 'default' doesn't update to the one set in company 22:04:15 <peter1138> Err 22:04:20 <andythenorth> also same if I move the child into parent 22:04:59 <peter1138> Maybe I broke it when simplifying :( 22:05:13 <andythenorth> or is it just the 2nd CC 22:05:14 <andythenorth> odd 22:05:16 * andythenorth testing more 22:05:26 <peter1138> Oh. 2CC might be a bit odd :/ 22:05:32 <peter1138> Did test that. 22:05:52 <andythenorth> I can't repro now 22:05:59 <andythenorth> but I repro-ed it twice before 22:06:02 <andythenorth> maybe I am wrong 22:06:18 <andythenorth> nope got a repro again 22:06:38 <nielsm> hmm well working better, but not quite right https://0x0.st/zrmU.png 22:06:52 <nielsm> it's not printing the warning text in the save window info pane 22:07:21 <andythenorth> peter1138: dunno, it's a savegame from previous version of patch, making a clean one 22:07:24 <andythenorth> might be stale data 22:09:11 <andythenorth> can't repro on fresh game 22:12:41 <DorpsGek_II> [OpenTTD/OpenTTD] andythenorth commented on pull request #7108: Feature: Group liveries, and livery window usability enhancements. https://git.io/fhPP4 22:12:59 *** HerzogDeXtEr has quit IRC 22:14:14 <peter1138> LordAro, https://github.com/PeterN/OpenTTD/tree/saveload-version-enum-exclusive 22:14:18 <peter1138> LordAro, that effort ;( 22:14:19 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fhPPV 22:15:54 <peter1138> I just ate a jam doughnut. It was not satisfying. It was 2 days old :/ 22:16:35 <andythenorth> crunchy 22:21:14 <Samu> https://github.com/OpenTTD/OpenTTD/pull/7064/files is this working? 22:22:24 <Samu> settings.cpp has a much more complex methodology of syncronizing parameters 22:23:20 *** CZTR has joined #openttd 22:23:54 <nielsm> that's better https://0x0.st/zra8.png 22:24:25 *** Supercheese has joined #openttd 22:24:38 <peter1138> nielsm, nice. That's separate to the unique-id stuff, right? 22:25:05 <nielsm> it uses it 22:26:55 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPXa 22:29:13 <Samu> https://github.com/OpenTTD/OpenTTD/pull/7084/files#r251262099 22:29:22 <Samu> what shall I do? 22:30:29 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh updated pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhPV0 22:30:57 <Samu> besides, in the Config window it's called Configure, in the AI Debug window it's called Settings, and they're openning the exact same window 22:33:32 <LordAro> peter1138: very nice 22:33:44 <DorpsGek_II> [OpenTTD/OpenTTD] RoqueDeicide commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhP1t 22:33:46 <Samu> it's an english issue 22:34:06 <Samu> consistency + english 22:34:10 <peter1138> LordAro, making big progress currently converting numbers to SLV_numbers 22:34:28 <peter1138> once that's done a few little one liners can convert the numbers to something meaningful. 22:34:49 <Samu> into PR numbers 22:34:56 <Samu> commit numbers 22:34:58 <Samu> or something 22:35:42 *** CZTR has quit IRC 22:35:49 <Samu> tell me what to do peter1138 22:36:02 <Samu> you're the englishman 22:36:14 *** Chrill has joined #openttd 22:36:39 <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on pull request #7128: Add: Unique ID to savegames to prevent accidental overwriting https://git.io/fhP1R 22:37:36 <andythenorth> Samu: is it a pre-existing inconsistency? 22:39:34 <Samu> yes 22:40:38 <Samu> but it's non functional, doesn't change anything, it's just what to display 22:43:47 *** Wormnest has joined #openttd 22:50:01 <Samu> alright, i'm going to revert those 22:50:13 <Samu> less work needed from translators 22:50:21 <Samu> if it ever gets accepted 22:50:32 <andythenorth> string consistency is a nice issue to handle separately 22:50:52 <Samu> oh 22:50:57 <Samu> ok, im undecided 22:51:35 <andythenorth> someone very experienced might just change the string and it's all fine 22:51:56 <andythenorth> but you need to keep the changeset for your patches as small as you can, to aid reviewing 22:52:18 <andythenorth> good luck! 22:52:18 *** andythenorth has left #openttd 22:52:49 <DorpsGek_II> [OpenTTD/OpenTTD] glx22 opened pull request #7129: Add: allow opening of one TextfileWindow per type https://git.io/fhPMP 22:53:20 <Samu> something like revert but keep the changes 22:53:26 <Samu> ok, i think i can do that 22:59:35 *** Wolf01 has quit IRC 22:59:55 <glx> and while testing that I noticed GameOptionsWindow doesn't close textfile window when it's closed 23:00:21 <LordAro> heh, figures 23:00:34 *** gelignite has quit IRC 23:00:35 <glx> so many windows having issues with window closing 23:00:47 <glx> at least it doesn't crash ;) 23:02:17 <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick updated pull request #7084: Change: AI/GS Config GUI overhaul https://git.io/fh2dV 23:02:18 <nielsm> controversial opinion: the in-game wrench button should be changed to open the Settings window rather than Game Options 23:02:39 <nielsm> Game Options is so rarely needed, all the useful stuff is in Settings 23:03:07 <Samu> does it need to close? 23:03:19 <Samu> what if i want to delight in the readme.txt :) 23:03:25 <glx> it's still in the dropdown so why not 23:04:05 <glx> when you close the option menu I think you don't care about the licenses or changelog of basesets 23:04:21 <Samu> GameOptionsWindow, which one is this 23:04:27 <Samu> brb googling 23:04:44 <glx> the one where you set language and other stuff 23:05:33 <Samu> ah, that one 23:05:38 <nielsm> huh, Options and Settings can't be opened at the same time, never noticed that before 23:05:49 <glx> same class :) 23:06:03 <glx> but you can work around it using window_number 23:06:12 <nielsm> (also, some of the options in Options should be moved to Settings, like the town names) 23:06:37 <nielsm> hmm I should move myself to bed :P 23:06:37 <nielsm> gn 23:07:41 <glx> indeed options related to game play should move to settings 23:07:53 <Samu> is it just me or the number of changed files keep decreasing everytime I update? 23:08:21 <Samu> Files changed 70 nvm, it increased 23:08:34 <LordAro> are you expecting it to stay constant? 23:08:48 *** Chrill has quit IRC 23:08:49 <Samu> i edited one more file, it was 69 23:08:56 <peter1138> Ok... what the fuck is SLE_WRITEBYTE? 23:09:01 <glx> you change a lot of files for just a window ;) 23:09:18 <Samu> it's more than 1 23:09:23 <peter1138> glx, languages. 23:09:56 <glx> oh of course 23:10:03 <glx> forgot that one 23:10:49 <glx> anyway removing outdated strings is useless if the string is still in english.txt 23:10:57 <glx> we saw that recently :) 23:12:56 <peter1138> Yes :( 23:13:11 <peter1138> Used to work with WT, IIRC? 23:14:41 <glx> yes it worked with the old system 23:14:42 *** nielsm has quit IRC 23:18:22 <Samu> https://dev.azure.com/openttd/OpenTTD/_build/results?buildId=673 23:18:27 <Samu> LIVERY_CAPTION? 23:18:35 <Samu> I didn't touch that 23:18:47 <peter1138> As glx wrote about 8 minutes ago... 23:18:48 <LordAro> Samu: yeah, not your issue, peter1138 broke it :p 23:18:55 <peter1138> I did not. 23:19:05 <peter1138> Not my fault that EINTS is dumb. 23:19:20 <LordAro> peter1138: glx: frosch pointed at a line of code in eints yesterday, but i don't understand enough about it to do anything with it (easily) 23:20:14 *** keoz has quit IRC 23:24:55 <peter1138> OMG it linked. 23:25:18 <peter1138> And it loaded a saveload 23:25:48 <peter1138> Hmm. 23:26:01 <peter1138> vehicle types aren't messed up. 23:27:23 <glx> and it's bad ? 23:27:34 <peter1138> I had to fiddle with SLWRITEBYTE. 23:27:36 <peter1138> Because that is... wtf. 23:28:49 <peter1138> It's used for writing a fixed value to the savegame, but the value is stored in the version from and version to fields. 23:29:13 <peter1138> Which causes issues when I make them an enum. 23:29:20 <peter1138> It's horrible. 23:30:11 <peter1138> Also it takes about translating a value, but I can't see any translation. 23:37:18 <peter1138> Hmm, I ought to check saving a game. 23:39:06 *** Wormnest has quit IRC 23:39:51 <peter1138> It could just write the value of the variable it references, but... 23:40:58 <glx> ah yes it's weird 23:41:59 <peter1138> I suspect it's kinda legacy and doesn't really do what the comment says any more. 23:42:48 *** Flygon has joined #openttd 23:42:59 <peter1138> Rubidium tried to remove it in 2007 :-) 23:43:13 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro approved pull request #7129: Add: allow opening of one TextfileWindow per type https://git.io/fhPSV 23:43:22 <DorpsGek_II> [OpenTTD/OpenTTD] LordAro merged pull request #7129: Add: allow opening of one TextfileWindow per type https://git.io/fhPMP 23:43:46 <Samu> #include "../strings_func.h" - removed this line and it still builds! 23:45:41 <glx> hmm it writes something in the savegame, and discard it on load if I read correctly 23:46:19 <peter1138> It's read directly with SlReadByte() in the loading code, in say vehicle_sl.cpp 23:46:30 <peter1138> Ok. It currently does not do translation 23:47:07 <peter1138> eab8ac49cee is where rubidium removed it 23:47:21 <glx> I'm reading in SlObjectMember 23:47:22 <peter1138> 622a4d10b92 is where it is put back 23:47:24 <peter1138> BUT 23:47:29 <peter1138> it's differente 23:47:40 <peter1138> Before, it had 2 values, after it doesn't. 23:48:03 <glx> case SLA_SAVE: SlWriteByte(sld->version_to); break; 23:48:03 <glx> case SLA_LOAD_CHECK: 23:48:03 <glx> case SLA_LOAD: *(byte *)ptr = sld->version_from; break; 23:48:10 *** Thedarkb-T60 has quit IRC 23:48:13 <peter1138> glx, yup 23:48:27 <glx> write, and discard on load 23:48:31 *** Thedarkb-T60 has joined #openttd 23:48:52 <peter1138> in Load_VEHS() there's VehicleType vtype = (VehicleType)SlReadByte(); 23:49:03 <peter1138> Which is reading that value directly. 23:49:46 <glx> I think it was to automatically convert vehicle types to the right value 23:50:04 <glx> but was changed since 23:50:31 <peter1138> Yes, we changed the enum. 23:50:36 <peter1138> IIRC it was +0x10 originally. 23:52:07 *** Thedarkb1-T60 has joined #openttd 23:52:17 <peter1138> So discard on load... 23:52:29 <peter1138> It assigns that value to the pointer, but is that ecessary? 23:52:46 <peter1138> Nope. 23:53:09 <glx> well discard the saved data and replace by what's in the source 23:54:29 <peter1138> It's always read directly with SlReadByte(), rather than through the description system. 23:55:52 *** supermop_Home has joined #openttd 23:55:59 <supermop_Home> yo 23:57:07 *** Thedarkb-T60 has quit IRC 23:59:36 <glx> SLE_WRITEBYTE is used only for types it seems (vehicles and station) 23:59:41 <peter1138> Yes.