Times are UTC Toggle Colours
00:05:41 *** tokai|noir has joined #openttd 00:05:41 *** ChanServ sets mode: +v tokai|noir 00:12:30 *** tokai has quit IRC 00:22:01 <DorpsGek> [OpenTTD/OpenTTD] glx22 opened pull request #9418: Codechange: Don't explicitly unset _generating_world outside of genworld.cpp https://git.io/Jc96s 00:22:39 <glx> doesn't fix anything, but I prefer this way 00:23:56 <Eddi|zuHause> nobody ever worked on completely removing all those global variables and do proper encapsulation? 00:24:38 <glx> not easy, _generating_world is somehow abused in some places 00:25:31 <glx> to fake world generation while not really generating 01:21:52 *** WormnestAndroid has joined #openttd 02:09:09 *** tokai has joined #openttd 02:09:09 *** ChanServ sets mode: +v tokai 02:16:00 *** tokai|noir has quit IRC 02:42:55 *** D-HUND has joined #openttd 02:46:18 *** godbed has quit IRC 03:12:34 *** Gustavo6046 has quit IRC 03:13:08 *** glx has quit IRC 03:13:16 *** Gustavo6046 has joined #openttd 03:16:26 *** Gustavo6046 has quit IRC 03:18:42 *** Gustavo6046 has joined #openttd 03:38:54 *** Flygon has joined #openttd 04:14:10 *** tokai|noir has joined #openttd 04:14:10 *** ChanServ sets mode: +v tokai|noir 04:20:55 *** tokai has quit IRC 04:23:35 *** andythenorth has joined #openttd 04:29:29 *** Wuzzy has quit IRC 05:28:16 *** andythenorth has quit IRC 05:35:36 *** andythenorth has joined #openttd 07:17:39 *** tokai has joined #openttd 07:17:39 *** ChanServ sets mode: +v tokai 07:17:56 *** EER has joined #openttd 07:24:25 *** tokai|noir has quit IRC 07:37:57 <TrueBrain> lol, nightly still fails :P 07:38:13 <LordAro> :( 07:38:44 <TrueBrain> OpenTTD has grown too big for it, time to remove some functionality :P 07:41:09 <andythenorth> oof 07:44:07 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on issue #9386: Building on MacOS fails with "bus error: 10" https://git.io/Jngox 07:46:30 <TrueBrain> still cannot believe "static const std::string" does a malloc on startup .. I just assumed it would optimize that 07:51:25 <Eddi|zuHause> my thought would go in the direction of a buffer overflow mitigation where addresses are randomized 07:59:43 *** WormnestAndroid has quit IRC 08:05:41 <TrueBrain> removing a bunch of settings does solve the MacOS build again 08:06:08 <TrueBrain> I would guess building does work on people with more memory in their system 08:09:22 *** andythenorth has quit IRC 08:09:40 <Eddi|zuHause> whenever i run out of ram the first thing i try is add swap 08:10:34 <TrueBrain> lol, the "strace" of MacOS ("dtruss") doesn't work because of system protections 08:10:36 <TrueBrain> that is ... useful? 08:27:34 *** WormnestAndroid has joined #openttd 08:35:52 <orudge> TrueBrain: FWIW, it fails on my MacBook Pro with 16GB RAM 08:35:58 <orudge> having just tested it 08:36:09 <TrueBrain> tnx, I was curious about that, so that is much appreciated 08:36:45 <TrueBrain> I do not really know how we can further zoom in to the real issue here .. "too many settings" is the obvious answer 08:37:00 <TrueBrain> but I do not understand conceptually why having a static const list of items is ever an issue :P 08:42:47 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #9418: Codechange: Don't explicitly unset _generating_world outside of genworld.cpp https://git.io/JcHAZ 08:45:01 <LordAro> TrueBrain: compilers have limitations :p 08:45:28 <TrueBrain> LordAro: not sure how that zooms in on the actual problem ;) 08:45:41 <LordAro> it doesn't :p 08:46:12 <Eddi|zuHause> have you tried filing it as a compiler bug? :) 08:46:34 <LordAro> we had a cpp file at work that failed to compile with (iirc) -ggdb3 due to having "too many sections" 08:48:10 <Eddi|zuHause> "limitation disturbs me very memory. goes it throw out limitation?" 08:55:14 <LordAro> Has anyone really been far even as decided to use even go want to do look more like? 08:58:19 <TrueBrain> should we call an ambulance? Seems you are having a stroke :s 08:59:24 <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on pull request #9417: CodeChange: Improve LineCache queries https://git.io/JcHhu 08:59:30 <LordAro> lol 09:02:08 *** D-HUND is now known as debdog 09:06:28 *** kgarza_ has joined #openttd 09:13:58 *** kgarza has quit IRC 09:37:17 *** Samu has joined #openttd 09:48:37 <TrueBrain> yippie, finally managed to integrate master-server and game-coordinator, so they both show the full list of all servers 09:48:38 <TrueBrain> nice :D 09:49:06 <TrueBrain> for some reason only my client thinks he can join the server ... while the versions mismatch :P 09:49:14 <TrueBrain> guess something is not validating revisions correctly now :) 10:02:29 <Samu> this last commit, spanish_mx translations seems to be wrong 10:02:53 <Samu> I read some english in some of the strings 10:04:03 <LordAro> looks like they forgot to delete the original english 10:04:11 <LordAro> translator will pick it up when they notice 10:04:50 <TrueBrain> lol .. I was wondering why network revision no longer worked .. ahum .. yeah ... https://github.com/OpenTTD/OpenTTD/blob/master/src/network/core/game_info.cpp#L46 10:07:58 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9419: Fix 9e32c618: network revision was always empty https://git.io/JcQY3 10:08:41 <TrueBrain> I just blame Rubidium , okay? Not like I did the review or anything :D 10:10:37 <LordAro> ha 10:11:01 <LordAro> needs more -Wshadow 10:11:21 <Eddi|zuHause> rule #1: always have someone else to blame :p 10:11:57 <Rubidium> yeah, why didn't the build check find that? 10:12:37 <DorpsGek> [OpenTTD/OpenTTD] fsimonis commented on pull request #9417: CodeChange: Improve LineCache queries https://git.io/JcQOm 10:14:15 <Rubidium> and why doesn't lgtm warn about it? 10:15:56 <DorpsGek> [OpenTTD/OpenTTD] fsimonis updated pull request #9417: CodeChange: Improve LineCache queries https://git.io/JcS0H 10:22:32 <DorpsGek> [OpenTTD/OpenTTD] LordAro approved pull request #9419: Fix 9e32c618: network revision was always empty https://git.io/JcQsW 10:23:26 *** tokai|noir has joined #openttd 10:23:26 *** ChanServ sets mode: +v tokai|noir 10:29:19 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9419: Fix 9e32c618: network revision was always empty https://git.io/JcQY3 10:30:20 *** tokai has quit IRC 10:36:59 *** kgarza__ has joined #openttd 10:43:57 *** kgarza_ has quit IRC 10:55:52 <TrueBrain> Rubidium: all I hear are excuses :P :P :P :P 10:56:24 <TrueBrain> if I remember correctly this was a last minute change :) And clearly neither of us really tested it :P What can I say .. :D 11:06:53 <DorpsGek> [OpenTTD/OpenTTD] fsimonis commented on pull request #9416: Codechange: Simplify FormatString https://git.io/JcQ82 11:07:20 <DorpsGek> [OpenTTD/OpenTTD] fsimonis updated pull request #9416: Codechange: Simplify FormatString https://git.io/JcSmU 11:08:34 *** Wuzzy has joined #openttd 11:21:06 <Samu> retesting my AI in a 512x512 map, with the new townManager code rework, really building routes, and autosaving monthly 11:21:27 <Samu> I no longer expect "too long to save" 11:21:29 <DorpsGek> [OpenTTD/OpenTTD] fsimonis commented on pull request #9416: Codechange: Simplify FormatString https://git.io/JcQBR 11:24:28 <DorpsGek> [OpenTTD/OpenTTD] fsimonis updated pull request #9416: Codechange: Simplify FormatString https://git.io/JcSmU 11:46:33 *** Belu has joined #openttd 11:48:35 <Belu> hi, anyone knows how to disable this missing option in the latest version ? Deliver cargo to a station only when there is a demand, so that the passengers cargo etc can be already be available on the station so the first train / truck / ship etc, so the first vehicle don't loose time in vane ? 11:52:07 <DorpsGek> [OpenTTD/OpenTTD] fsimonis commented on pull request #9416: Codechange: Simplify FormatString https://git.io/JcQzR 11:53:29 *** glx has joined #openttd 11:55:01 <glx> It's doable via console or in config file belu 11:56:17 <Belu> the console I saw in the help menu, but no ideea how and what command to use 11:57:06 <glx> order.selectgoods 11:57:29 <Belu> I did this manually in the openttd.cfg - (selectgoods = <true|false>) 11:57:45 <Belu> set to false and nothing changed 11:57:55 <glx> The command is 'set order.selectgoods' 11:58:12 <glx> Config doesn't apply to save games 11:58:19 <Belu> ohg 11:58:24 <Belu> i'll try 11:58:33 <Belu> where do i find all these commands ? 12:00:48 <glx> https://wiki.openttd.org/en/Manual/Console 12:03:13 <glx> But the setting list is very long and I don't think it's on the wiki 12:03:13 <Belu> did not found these commands on that page set order.selectgoods 12:03:26 <Belu> so it's not a complete list... 12:03:32 <LordAro> it's not a command 12:03:37 <LordAro> it's an argument to the 'set' command 12:03:49 <LordAro> but it's probably not a complete list anyway 12:04:07 <Belu> ok so what do i have to write in the console to disable the Deliver cargo to a station only when there is a demand 12:05:18 <LordAro> `set order.selectgoods` to show what it is already 12:05:30 <LordAro> then `set order.selectgoods true` to set it 12:05:36 <LordAro> (or false, depending what the desired option actually is 12:05:37 <LordAro> ) 12:06:39 <Belu> I've been searching these things all over google and forums but no success, so if there isn't a full webpage specifying all these, the user can think there is no more option, and can go back a couple of versions older 12:06:54 <LordAro> they're hidden for a reason 12:06:57 <glx> Argument to 'set' is easy to find when looking at openttd.cfg 12:07:04 <Belu> why was removed this option from v 0.4.7 in the first place ? 12:07:28 <Belu> newer not always the better 12:07:36 <glx> It's not removed, but the default is weird 12:08:13 <Belu> it is removed as long it's unfindable in the user interface menu 12:08:19 <glx> We have too many settings, so some are hidden 12:08:29 <Belu> in the old version there is a button configure patches 12:08:38 <Belu> was* 12:08:39 <LordAro> removed in 2014 12:08:56 <LordAro> r26528 / 0ba81bff 12:09:09 <Belu> people do have 24 inch monitors these days and scrolls, so don't understand why the need to dumb down user interfaces 12:09:33 <Belu> and lessen options 12:09:36 <LordAro> the settings window is far, far beyond fitting on a 24 inch monitor 12:09:45 <Belu> scroll exists though 12:10:07 <Belu> the laziness of putting the options i assume 12:10:12 <LordAro> don't assume 12:10:23 <glx> BTW I disagree for some of the hidden settings, but most of them are hidden for a good reason 12:10:37 <Belu> not to be user personalizable 12:10:46 <Belu> same as windows 10 not to be update disabled 12:10:59 <Belu> so people have mandatory updates same as NWO 12:11:07 <Belu> without user consent 12:11:11 <LordAro> settings are hard to maintain, as many can interact and break the game in completely unforeseen ways 12:11:36 <Belu> thanks, have a good day 12:11:37 <LordAro> therefore, we've started to try to remove / hide settings where possible, when literally 99.99% of players never touch them 12:11:47 <LordAro> and certainly avoid adding new ones 12:11:53 <Belu> i was touching that option 12:12:01 *** Belu has left #openttd 12:12:09 <LordAro> https://xkcd.com/1172/ 12:12:15 <LordAro> boo fricking hoo. 12:12:25 <glx> It's a one time set option usually 12:12:35 <LordAro> glx: no no, we're just lazy 12:13:09 <glx> We should maybe change its default to true 12:13:21 <LordAro> i don't mind it, tbh 12:14:03 <LordAro> very few players micromanage to the extent that they care about the first arrival not picking up any cargo (if not full load) 12:15:08 <LordAro> though the station window could do with a "supplies" line, like it does when creating the station 12:15:54 <LordAro> as bug reports go, "game has changed in the last 15 years" isn't a great one 12:19:07 *** WormnestAndroid has quit IRC 12:19:52 *** glx is now known as Guest192 12:19:52 *** glx_ has joined #openttd 12:19:52 *** ChanServ sets mode: +v glx_ 12:19:52 *** glx_ is now known as glx 12:20:15 *** Guest192 has quit IRC 12:21:15 *** WormnestAndroid has joined #openttd 12:23:18 <Timberwolf> I find it fascinating nobody has ever gone back and done that kind of openttdcoop "what works and what doesn't when you have 2000 trains" thing for all the changes in the last 15 years or so. 12:23:56 <TrueBrain> Lol, that user was funny :D 12:24:07 <glx> easy, the game is too slow to run with 2000 trains ;) 12:24:19 <Timberwolf> So much of the ideas and designs since then are actually myths or misinterpretations of what's actually going on. 12:25:40 <TrueBrain> BTW, I always assumed those settings are hidden because we still need/want to support savegames that have them on a different value but nobody should do that for new games :p 12:25:57 <LordAro> that's often the case 12:26:39 <glx> many are dangerous to modify (like pf stuff) 12:27:04 <TrueBrain> Those pf settings should die in a burning fire 12:27:14 <TrueBrain> Nothing good ever comes from changing them :p 12:28:01 <TrueBrain> Possible MacOS builds if we remove them >:D 12:28:12 *** snail_UES_ has joined #openttd 12:28:19 <Venemo> Whoah, that guy was pretty rude 12:28:25 <Timberwolf> I think there's a wiki page somewhere saying something along the lines of, "these settings were arrived at after great pain, don't change any of them" 12:29:14 <glx> TrueBrain: maybe we should enclose settings static array in some InitSettings() function so it's no longer in global scope 12:31:33 <TrueBrain> Worth a shot, yes 12:32:26 <TrueBrain> Will try that out later today, as I can reproduce the issue via VMWare :) 12:32:44 <glx> ah finally able to reproduce it :) 12:33:12 <TrueBrain> I could all this time, that is why I knew solving the GCC issues solved the MacOS issue 12:33:25 <TrueBrain> Just it is very painful to use the VM :p 12:33:46 <glx> and as slow as building a release outside the VM 12:34:41 *** snail_UES_ has quit IRC 12:35:13 <TrueBrain> Still, the pf settings ... there are like 50 of those .. like.. why?! 12:35:26 <TrueBrain> And still some values are hardcoded :p 12:35:34 <LordAro> turn them into constants, the compiler will be able to optimise better 12:35:39 <LordAro> make YAPF even faster! 12:35:57 <TrueBrain> I personally think that is the right thing to do 12:36:08 <TrueBrain> But some users will have broken savegames because of it 12:36:18 <TrueBrain> So QQ follows ;) 12:45:45 <Samu> reached 100 years without crashing 12:45:56 <Samu> 26k ops used for saving 12:46:07 <Samu> that's about 26% of allowed time, awesome 12:48:49 <Samu> new goal, reach 5k rvs, 5k ships, 5k aircraft 12:48:52 <Samu> let's do it 12:51:04 <Samu> with autosave enabled 12:51:12 <peter1138> Macbook M1? 12:51:13 <Samu> 4k map 12:51:30 <peter1138> Oh, we haven't fixed that yet. 12:54:26 <Samu> autosaves are 45 MB's each 12:54:46 <Samu> now i have a SSD, rip endurance 12:55:41 <Samu> question, is it possible to multithread lzma saves? 12:55:50 <Samu> single thread is kinda slow 12:56:27 <peter1138> Just perform multiple saves at once. 12:56:28 <glx> saving is threaded (the writing to disk part) 12:57:03 <Samu> i mean compressing using all threads available 12:57:11 <Samu> i got 16 now with this cpu 12:57:11 <NGC3982> how is openttd on m1:s? 12:57:26 <glx> not compilable NGC3982 ;) 12:57:42 <glx> (but applies to x86_64 too) 12:58:22 <Samu> i suspect im gonna run out of station ids 12:58:33 <Samu> between buoys, docks, airports, road stations 12:58:54 <Samu> will see 12:59:15 <glx> limit is 64000 12:59:44 <NGC3982> glx: what applies to x86_64? 13:00:03 <Samu> probably not as a single AI running, but if there are 15 AIs... i suspect it will reach 13:00:03 <glx> failing to build for MacOS 13:00:04 <LordAro> NGC3982: macOS gcc is currently falling on its face when trying to compile OTTD in general 13:00:07 <NGC3982> glx: oh 13:00:16 <LordAro> clang* 13:00:24 <LordAro> not our fault, technically speaking 13:02:48 <NGC3982> will openttd fix it, or will you wait for macos to ..mend itself? 13:03:14 <LordAro> we're working on potential solutions 13:03:16 <glx> we will try to work around (again) 13:03:19 <LordAro> well, we have done, twice already 13:03:22 <LordAro> but will continue to do so 13:03:46 <glx> but it's a pain to test 13:04:07 <glx> LTO is very slow, and we don't have the hardware ;) 13:04:48 <NGC3982> i wish i could help 13:09:39 <peter1138> Well I guess that's a reason not to get a Mac then. 13:10:14 <glx> decided to time the release build with wsl (-j6): ~30m 13:11:01 <LordAro> could just disable LTO for macOS :p 13:15:20 <Samu> first objective complete! [img]https://i.imgur.com/dwGEtYt.png[/img] 13:17:01 <glx> Samu: ~2000 stations tiles/airport, you're far from 64000 real stations 13:18:11 <Samu> doesn't count buoys 13:19:10 <Samu> 633 buoys, just checked 13:19:17 <glx> I don't think you use 60 buoys per ship ;) 13:22:00 <Samu> @calc (218 + 186) * 2 + (372 / 2) + 664 13:22:00 <DorpsGek> Samu: 1658 13:22:18 <Samu> actually 372 is not /2 13:22:28 <Samu> @calc (218 + 186) * 2 + 372 + 664 13:22:28 <DorpsGek> Samu: 1844 13:22:50 <Samu> now imagine 15 ais 13:23:15 *** WormnestAndroid has quit IRC 13:23:15 <LordAro> @calc 1844*15 13:23:15 <DorpsGek> LordAro: 27660 13:23:23 <LordAro> you'll manage 13:23:28 <Samu> nice nice 13:24:08 *** WormnestAndroid has joined #openttd 13:38:03 <Samu> hmm the AI occasionally get "Couldn't build the aircraft" 13:39:02 <Samu> maybe i should improve my Loan feature 13:39:24 <Samu> i bet it's that 13:40:36 <Samu> i have enough money in the test command, but not when buying it in the exec command 13:40:44 <Samu> probably 1 frame later 13:40:53 <Samu> and running costs of other vehicles getting in the way 13:41:49 <glx> yup test and exec are 1 frame appart 13:42:03 <glx> or more, depending on your code 13:42:38 *** nielsm has joined #openttd 13:46:44 <Samu> i wish there was an "auto-loan on demand" command. I did this in the ai code, but apparently it's flawed due to being frame aparts 13:48:41 <NGC3982> i tried that with my bank but for some reason they didnt follow 13:55:18 <Samu> yay, AI started building statues 13:55:21 <Samu> he's in 1009 towns lol 14:06:32 <TrueBrain> glx: https://github.com/OpenTTD/OpenTTD/compare/master...TrueBrain:macos-fix doesn't fix the issue :( 14:07:34 <glx> annoying 14:09:07 <glx> and with const auto &GetSettingsTable() ? 14:09:25 <LordAro> function static variables aren't really any different to global variables, from a compiler perspective, i would think? 14:09:48 <TrueBrain> LordAro: at least in godbolt it renders different assembly 14:10:30 <glx> it should have less tracking to do if they are scoped, even if they are still "global" 14:11:15 <LordAro> depends quite why it's failing, might be completely unrelated to global variables 14:11:35 <TrueBrain> it still feels related to what GCC was complaining about, which was "too many variables to track" 14:11:47 <TrueBrain> it was hitting a few millions (!) variables it was tracking 14:12:28 <TrueBrain> glx: "auto" is a bit difficult, as the function is in a header ;) 14:13:01 <glx> hmm but the header is used only in one place, so maybe it can be static 14:14:07 <glx> but my idea is to return a reference 14:14:19 <TrueBrain> how would a reference differ from an span? 14:14:34 <TrueBrain> (SettingTable is a span) 14:15:17 <TrueBrain> if anything is going to help a compiler, is the fact the table itself is never used anymore; only spans pointing to it :) 14:16:12 <TrueBrain> removing a bunch of settings does fix the issue still btw 14:17:39 <TrueBrain> for example, removing all "pf" settings does the trick :P 14:17:54 <LordAro> lol 14:18:46 <TrueBrain> just a random example ;) 14:18:48 <Samu> so, this is why you're against adding settings 14:18:53 <Samu> can't compile 14:19:13 <glx> now we already have to many settings :) 14:19:26 <glx> but now we also have a good excuse :) 14:19:55 <glx> first "now" was a "no" 14:20:20 <glx> (and a missing "o" somewhere) 14:23:46 <TrueBrain> I still think it is weird that the assembly show the dtor of these kind of tables, but it is dead code 14:23:52 <TrueBrain> there is nothing jumping into the block 14:27:45 <TrueBrain> even with -O3, code that is unreachable is still there 14:29:04 <TrueBrain> it is marked as "cold", so it does know it is very unlikely that it will be executed 14:29:08 *** WormnestAndroid has quit IRC 14:29:14 <TrueBrain> but given there is no jump label .. I would argue it is impossible it is executed :D 14:29:30 *** WormnestAndroid has joined #openttd 14:35:04 <Samu> hmm 77k ops for saving atm, it's getting scary 14:35:19 <Samu> guess i'll have to optimize other parts of the code 14:48:36 *** virtualrandomnumber has joined #openttd 14:48:47 *** virtualrandomnumber has quit IRC 14:53:12 *** gelignite has joined #openttd 14:55:49 <TrueBrain> https://github.com/OpenTTD/OpenTTD/compare/master...TrueBrain:macos-fix <- seems the combination of making the table smaller AND using function local statics does help clang 14:56:26 <TrueBrain> luckily enough for us I made possible that we can change the order of settings, so that is in fact possible .. but that change currently fails as the saveload doesn't know about the extra tables ;) 14:56:40 <TrueBrain> at least it compiles 14:58:47 <peter1138> Is it not merged yet? 14:58:53 <TrueBrain> it is 14:59:02 <TrueBrain> hence: luckily for us 14:59:11 <peter1138> "current fails" 14:59:23 <peter1138> +ly 14:59:25 <TrueBrain> yes, the URL I linked doesn't work correctly 14:59:41 <TrueBrain> because .. the saveload doesn't know about the extra table yet :P 14:59:50 <glx> TrueBrain: GetSettingSaveLoadByPrefix() may have some issues, as pf is removed from it's list 14:59:56 <TrueBrain> glx: nah 15:00:08 <TrueBrain> that function is basically: GiveMeTheLinkGraphSettingsNOWWWWWWW 15:00:55 <TrueBrain> peter1138: "that change" was referring to the link, not the saveload header stuff :D Stupid English language and its unclear references :P 15:03:49 <TrueBrain> right, now saveload does work (reload if you like) ... see if MacOS still compiles happily .. 15:05:00 <TrueBrain> still works .. okay, so this seems to be a solution .. 15:06:26 <TrueBrain> the good thing is that I have been willing to do this for a while now, but I couldn't find a good motivation to do so :P 15:06:43 <peter1138> Do our Mac users not experience this issue? 15:06:54 <glx> https://github.com/OpenTTD/OpenTTD/compare/master...glx22:saveload <-- auto registering (but still in the correct order) 15:07:01 <peter1138> Or does no dev use Mac any more. Hmm. 15:07:13 <TrueBrain> peter1138: well, we never really had a dev that used a Mac 15:07:20 <TrueBrain> just one that made the game work on a Mac via VMWare :P 15:07:21 <glx> and mac users don't build 15:07:30 <TrueBrain> but as mister o confirmed earlier today, he cannot build master either :) 15:07:30 <peter1138> So I should buy a MacBook Air? 15:07:54 <peter1138> LOL 15:08:05 <TrueBrain> glx: nice solution :) 15:08:20 <peter1138> £999 for 256GB SSD, £1249 for 512GB SSD, that is some super-inflated pricing... 15:08:54 <TrueBrain> okay, the function trick is not needed, after some additional testing 15:08:58 <TrueBrain> the splitting alone seems sufficient 15:09:21 <peter1138> Oh, just noticed from 7 to 8 core GPU too. Whatever a GPU core means in this world. My RTX2080ti has " a few " more. 15:09:25 <TrueBrain> right, after dinner I will make a proper PR for it .. 15:09:46 <TrueBrain> will split some more settings into their own table while at it 15:10:00 <glx> ideally we should not use tables, but not easy for settings (auto registering won't work as there's multiple tables) 15:11:54 <TrueBrain> assembly wise, your approach also still adds dtor calls (that are not reachable) 15:12:13 <TrueBrain> still no clue why it does that :P 15:12:15 <peter1138> Oh gods, an extra 8GB RAM is £200 !?! 15:12:28 <TrueBrain> haha, it seems peter1138 never looked at Mac prices before :D 15:12:52 <glx> dtor calls make sense, as the objects are constructed 15:12:52 <LordAro> soldering RAM chips onto the MB costs money 15:13:20 <peter1138> I thought the 16GB upgrade for my little server was too much, that was about £60 for the full 16GB. 15:13:40 <glx> but yeah they will be destroyed at exit anyway 15:13:43 <TrueBrain> glx: sure, but never destructed. Which it does figure out, as it marks the sections as "cold" (unlikely to be called) 15:13:50 <TrueBrain> but for some reason it doesn't notice that it is NEVER called :) 15:14:51 <Rubidium> TrueBrain: might https://github.com/OpenTTD/OpenTTD/compare/master...rubidium42:osx_view help? If the problem is the allocation of std::string then removing those for Setting and the encompassed Saveload might help a lot. 15:15:11 <Rubidium> although... maybe remove them from Setting and get them from SaveLoad instead (if they're the same) 15:15:33 <TrueBrain> Rubidium: remember that as one of my first solutions when we started this whole stuff? :) 15:15:51 <TrueBrain> but for example the "std::shared_ptr<SaveLoadHandler> handler" also adds a dtor 15:15:54 <TrueBrain> creating a very similar issue 15:16:12 <TrueBrain> I think that splitting of the settings table is more useful at this point in time 15:16:39 <Rubidium> what I remember was passing string_view to the constructors but the type in the object still being string 15:16:46 <LordAro> splitting settings.ini into mildly more logical groups would be nice, for sure 15:16:55 <TrueBrain> my very first version made the type a std::string_view too Rubidium :) 15:16:55 <LordAro> it is impossible to find anything in it right now 15:16:57 <TrueBrain> but you were against that :P 15:17:36 <TrueBrain> https://github.com/OpenTTD/OpenTTD/pull/9389/files <- code to proof it :P 15:19:12 <TrueBrain> from what I understand currently, we either have to make sure SaveLoad / SettingDesc is a "constexpr", or we need to split up the settings table 15:19:24 <TrueBrain> (changing std::string into std::string_view allows the table to be a constexpr, to be clear) 15:19:46 <TrueBrain> I think the splitting is the more practical solution, seen that it works 15:20:10 <TrueBrain> "fun" fact, I tried splitting the settings table before, but it wasn't working .. only the splitting of the files Rubidium did earlier allows it to work .. 15:20:21 <TrueBrain> so many small things combined seems to result in a fix for MacOS :P It is funny :) 15:21:05 <Rubidium> hmm, guess my memory sucks then... 15:21:19 <TrueBrain> we still like you for who you are anyway :) 15:21:41 <Rubidium> so... c++20 when? 15:22:55 <TrueBrain> what does C++20 solve in all of this? :) 15:23:14 <Rubidium> constexpr std::string and std::vector 15:23:27 <TrueBrain> that wasn't implemented in any compiler yet, was it? 15:24:19 <Rubidium> I doubt all this splitting up things really helps in the long term. After all, it is the LTO step that breaks right? So I'm not seeing how splitting things reduces the amount of stuff the LTO optimization step needs to keep track of 15:24:48 <TrueBrain> yet it works 15:24:51 <TrueBrain> so ..... what can I say :) 15:26:01 <TrueBrain> constexpr std::string is only supported by MSVC still 15:26:25 <TrueBrain> anyway, splitting of settings is a good thing either way, and if that solves MacOS for now ... at least that might mean we get a nightly again :D 15:27:35 <glx> and a logical grouping for when you need to find xxx.yyy setting in the big INI file 15:27:48 <TrueBrain> yeah, I have a draft for it .. I might have gone overboard a bit 15:27:53 <TrueBrain> but I ended up with 10 settings-files 15:28:07 <LordAro> if it's less than 1 ini per setting, then it's probably fine 15:28:08 <LordAro> :p 15:28:26 <TrueBrain> things like: linkgraph, gui, news_display, pathfinder, script, ... 15:28:38 <TrueBrain> basically the logic group they are already in :P 15:29:02 <glx> yeah they are in the config file anyway :) 15:29:14 <TrueBrain> but okay, dinner first .. PR after :D 15:32:24 <Samu> 89451 ops used to save, so close to the limit 15:44:58 *** Progman has joined #openttd 15:52:44 <Rubidium> TrueBrain: had a nice dinner? Anyway, does https://github.com/OpenTTD/OpenTTD/compare/master...rubidium42:osx_fewer_strings help with the problem? It should save about number-of-settings strings from getting allocated/needing to be tracked 15:54:58 <Samu> 2nd objective completed! https://i.imgur.com/0JJxNvY.png 15:55:31 <glx> can't find a way to keep #var Rubidium? 15:55:35 *** gelignite has quit IRC 15:56:05 <Samu> 93718 ops needed to save, im afraid i wont reach 5000ships 16:00:55 <Rubidium> glx: maybe; first step is to see whether this might work, before investing a lot of work into something that's not worth it 16:04:34 <TrueBrain> Rubidium: no, haven't had my dinner yet ... making it takes for ever for some reason :P 16:04:40 <TrueBrain> but MacOS builds with your PR 16:04:52 <TrueBrain> (once again confirming we are just doing too many ctor/dtor stuff :P) 16:05:46 <Rubidium> glx: though it might be a PITA when there are settings with a different #var than their name 16:06:41 <Rubidium> as that would mean savegame mayhem, which would be quite annoying 16:07:57 <glx> ah yes empty name is an exception 16:11:28 *** WormnestAndroid has quit IRC 16:31:57 <Rubidium> there are two savegame fields that are troublesome... gui.sg_full_load_any and gui.sg_new_nonstop 16:34:28 <Rubidium> they are already stored as that in the savegame, whereas the name from SaveLoad would include '_settings_client.'. The ten others are no problem, as they are only transient during loading old savegames 16:34:52 <Rubidium> so renaming them won't harm anybody 16:39:11 <Rubidium> though practically they do not even need to be renamed... 16:41:17 *** Progman has quit IRC 16:54:03 <Samu> too long to save finally triggered. I failed the 3rd objective, only 3161 ships https://i.imgur.com/82uynLz.png 17:06:46 <Samu> btw, the reload command works in a strange way 17:07:14 <Samu> i load a game x, then i save a little later 17:07:27 <Samu> when i type reload, it loads the little later game, and not x 17:07:37 <glx> same save name ? 17:07:40 <Samu> is that how's it supposed to work? 17:08:13 <Samu> no, different names 17:08:54 <glx> hmm I think it uses a global variable for the name, and it's shared between save and load 17:09:10 <glx> so on reload it uses whatever is in the global 17:10:03 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9420: Fix: reduce the amount of debug messages on -dsl=2 https://git.io/Jc7EA 17:10:23 <glx> yup it uses _file_to_saveload 17:13:36 <DorpsGek> [OpenTTD/OpenTTD] glx22 approved pull request #9420: Fix: reduce the amount of debug messages on -dsl=2 https://git.io/Jc7uK 17:14:09 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain opened pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc7uM 17:14:38 *** andythenorth has joined #openttd 17:15:24 <TrueBrain> let's confirm it actually also address the MacOS issue .... yeah, it does \o/ :D 17:15:30 <glx> TrueBrain: "senisible" ? (in commit detailled message) 17:15:58 <TrueBrain> you don't think that is senisible? :P :P 17:16:08 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc7uM 17:18:33 <TrueBrain> it is nice how you slowly see this setting-stuff being untangled by all kinds of small PRs over the last few weeks :) Really nice :) 17:18:55 <TrueBrain> also: PRESETS 17:19:13 <TrueBrain> in theory I could now very easily make that you can save presets to a separate file, and allow loading it in too. 17:21:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc7uM 17:22:37 <TrueBrain> (as all those settings should now be in "world_settings" ;) ) 17:24:43 *** snail_UES_ has joined #openttd 17:24:51 <glx> may I suggest to rename GetSettingSaveLoadByPrefix() ? 17:29:53 <TrueBrain> you can suggest ANYTHING :P 17:31:04 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain merged pull request #9420: Fix: reduce the amount of debug messages on -dsl=2 https://git.io/Jc7EA 17:31:45 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc7uM 17:31:53 <TrueBrain> there you go :) 17:34:25 *** Flygon has quit IRC 17:35:42 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 opened pull request #9422: Codechange: roughly half number of strings for settings https://git.io/Jc7ao 17:36:00 <Rubidium> sadly that conflicts with #9421 ;( 17:37:41 <TrueBrain> yeah ... and I think you can resolve your conflict easier, for some reason :P 17:37:48 <TrueBrain> so I would appreciate it the lower number goes first :P 17:46:03 <Samu> 'arrays' use less ops for saving than 'tables' 17:46:16 <Samu> not by much 17:46:19 <Samu> but it helps 17:46:39 *** yeoldetoast has quit IRC 17:50:37 <DorpsGek> [OpenTTD/master-server] TrueBrain opened pull request #35: Feature: redis support as database backend https://git.io/Jc7rO 17:51:10 <DorpsGek> [OpenTTD/game-coordinator] TrueBrain opened pull request #5: Add: small tweaks so the Game Coordinator understands Master Server data https://git.io/Jc7rW 17:51:28 *** snail_UES_ has quit IRC 17:51:46 <TrueBrain> still need to do a lot of worst-case testing, but that I will do this weekend :) 17:58:40 <Samu> strange, i can load a a table as if it were an array? squirrel is weird at times 18:00:58 <DorpsGek> [OpenTTD/game-coordinator] TrueBrain updated pull request #5: Add: small tweaks so the Game Coordinator understands Master Server data https://git.io/Jc7rW 18:12:06 *** snail_UES_ has joined #openttd 18:21:10 *** Progman has joined #openttd 18:47:01 <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc7yW 18:50:38 *** WormnestAndroid has joined #openttd 18:51:59 <DorpsGek> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master https://git.io/Jc7ST 18:52:00 <DorpsGek> - Update: Translations from eints (by translators) 18:53:08 <Samu> reduced from 99600 ops to 89200 ops by changing some tables into arrays 19:01:34 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain commented on pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc79B 19:02:18 *** gelignite has joined #openttd 19:02:23 <DorpsGek> [OpenTTD/OpenTTD] TrueBrain updated pull request #9421: Codechange: split settings.ini over several files https://git.io/Jc7uM 19:02:48 *** WormnestAndroid has quit IRC 19:03:08 *** WormnestAndroid has joined #openttd 19:07:21 <TrueBrain> and what colour shall we paint the shed today :D 19:08:32 <andythenorth> red 19:12:16 <andythenorth> 'next' 19:12:46 <Samu> what is delegation? http://www.squirrel-lang.org/squirreldoc/reference/language/builtin_functions.html?highlight=rawin#table.rawset 19:15:49 *** Wolf01 has joined #openttd 19:17:40 <glx> don't look at squirrel 3 doc, it's not compatible with squirrel 2 19:19:01 <Rubidium> TrueBrain: transparent? 19:19:49 <TrueBrain> pretty sure that is not considered a colour ;) 19:23:14 <peter1138> LordAro, turns out that 20-30 psi on a road tyre wasn't optimal. Perhaps I should check more often :D 19:24:02 <peter1138> Chunky 35mm touring tyres, so they can cope, but... 19:25:47 <andythenorth> I think my tyres are about that right now 19:26:31 <andythenorth> I hit the rims going up kerbs right now 19:26:39 <andythenorth> pinch flat just waiting to happen 19:48:45 *** nielsm has quit IRC 19:58:12 *** jottyfan has joined #openttd 20:02:34 <TrueBrain> So anyone a suggestion or opinion on the open comment on https://github.com/OpenTTD/OpenTTD/pull/9421 ? 20:02:57 <TrueBrain> Would be nice to get this done soon, as rebasing this PR is not much fun ... 20:03:21 <andythenorth> yolo? 20:03:24 <andythenorth> probably not :( 20:07:23 *** WormnestAndroid has quit IRC 20:10:13 *** WormnestAndroid has joined #openttd 20:15:22 <Samu> how do I iterate a table? 20:15:56 <Samu> in squirrel 20:18:04 <Samu> i wanna iterate the 'keys' in a table 20:18:12 <Samu> guess i can't :( 20:20:33 <Samu> and if I can't, I'm doomed, can't make this save stuff simpler 20:28:42 <glx> an array doesn't have keys 20:29:19 <glx> but you can access by index from 0 to (number of elements - 1) 20:30:29 <Samu> resorting to an array again, hmm 20:31:51 <glx> but to iterate you have foreach 20:32:09 <Samu> foreach works in tables? 20:32:26 <Samu> that will be great 20:32:34 <glx> " Executes a statement for every element contained in an array, table, class, string or generator. If exp is a generator it will be resumed every iteration as long as it is alive; the value will be the result of 'resume' and the index the sequence number of the iteration starting from 0. " 20:34:08 *** gelignite has quit IRC 20:47:14 <Samu> awesome, that works! 20:47:46 <Samu> it actually gets the 'key' index 20:48:08 <Samu> it's not a sequence starting from 0 20:48:22 <Samu> just what I need 20:48:45 <Samu> im going to use the 'key' index to store town IDs 20:48:54 <Samu> which are unique 20:56:23 *** andythenorth has quit IRC 21:02:35 *** HerzogDeXtEr has joined #openttd 21:07:33 *** andythenorth has joined #openttd 21:08:46 *** Samu has quit IRC 21:10:11 *** Gustavo6046_ has joined #openttd 21:15:09 *** Gustavo6046 has quit IRC 21:15:09 *** Gustavo6046_ is now known as Gustavo6046 21:43:40 *** WormnestAndroid has quit IRC 22:01:19 *** Wolf01 has quit IRC 22:20:11 *** andythenorth has quit IRC 22:25:43 *** HerzogDeXtEr has quit IRC 22:35:17 *** glx_ has joined #openttd 22:35:17 *** glx is now known as Guest247 22:35:17 *** glx_ is now known as glx 22:41:40 *** Guest247 has quit IRC 22:53:54 *** WormnestAndroid has joined #openttd 23:08:46 *** Progman has quit IRC 23:18:17 *** WormnestAndroid has quit IRC 23:18:42 *** WormnestAndroid has joined #openttd 23:55:38 *** WormnestAndroid has quit IRC 23:58:30 *** Wuzzy has quit IRC