IRC logs for #openttd on OFTC at 2024-12-05
โด go to previous day
00:03:00 *** guru3_ has quit IRC (Read error: Connection reset by peer)
00:27:38 *** ChanServ sets mode: +v tokai
00:34:21 *** tokai|noir has quit IRC (Ping timeout: 480 seconds)
01:16:06 <peter1138> wensimehrp: Rendering in Chromium vs Firefox. Hmm.
01:16:48 <wensimehrp> certainly chromium looks better
01:16:54 <peter1138> This feels like a job for the font or the layouter, not OpenTTD, though.
01:17:31 <wensimehrp> OpenTTD uses an external layouter?
01:17:57 <peter1138> Yes, it's platform dependent too. Uniscribe on Windows. CoreText on mac OS and some bits of ICU on Linux./
01:20:40 <wensimehrp> then use chromium for openttd?
01:39:26 <peter1138> Mutually exclusive with other features.
01:40:19 <peter1138> Well, anyway the common list separator is there now.
02:32:54 *** tokai|noir has joined #openttd
02:32:55 *** ChanServ sets mode: +v tokai|noir
02:39:49 *** tokai has quit IRC (Ping timeout: 480 seconds)
03:12:35 *** Wormnest has quit IRC (Quit: Leaving)
03:17:31 *** gnu_jj_ has joined #openttd
03:21:01 *** gnu_jj has quit IRC (Ping timeout: 480 seconds)
03:34:31 *** Westie has quit IRC (Ping timeout: 480 seconds)
03:41:01 *** XYZ has quit IRC (Ping timeout: 480 seconds)
03:57:01 *** D-HUND has quit IRC (Ping timeout: 480 seconds)
04:46:17 <DorpsGek> - Update: Translations from eints (by translators)
07:23:06 *** keikoz has quit IRC (Ping timeout: 480 seconds)
07:30:50 <andythenorth> such coffee ๐
07:37:33 <spy0016158> spy0016158: editing complete
11:00:31 *** nielsm has quit IRC (Ping timeout: 480 seconds)
11:52:50 <xarick> I'm trying to understand why tile at 1940 was not marked as rainforest
11:53:50 *** toktik is now known as Guest2142
11:57:43 *** Guest2142 has quit IRC (Remote host closed the connection)
11:59:57 <xarick> all the neighbouring tiles have 1552 as the originnal rainforest_tile
12:00:31 <xarick> if it were 1615, I bet the tile at 1940 would turn into rainforest
12:05:39 <xarick> when it's time to check the neighbours of 1615 the neighbour towards DIR_SW is already normal_tile
12:06:02 <xarick> meaning that its neighoubring position is not updated
12:06:46 <xarick> can't walk SW -> SE towards 1940
13:00:44 *** kuka_lie has joined #openttd
13:02:03 <truebrain> I still don't see the issue with having sandbox thingies, for things that really aren't settings; but that is just me ๐
13:04:00 <peter1138> Confused by what you mean there.
13:05:11 <peter1138> If I add a sandbox feature, where do I put the 'thingy' to enable it?
13:06:04 <truebrain> In the sandbox window? But that is too obvious, so most likely you have something specific in mind ๐
13:06:33 <truebrain> Anyway, your comment just reminded me about a conversation people had all sandbox options should go in the setting window, which still feels odd to me
13:06:46 <truebrain> If that wasn't on your mind, forget I said anything ๐
13:07:48 <peter1138> So would I add it as a 'cheat' so that it appears there, or code up something so that settings which are sandboxy appear in the sandbox options window?
13:08:26 <truebrain> If you want to go the refactoring road .. but I would personally just add it like the other "cheats" ๐
13:08:40 <truebrain> More than one of those cheats aren't anything like settings
13:09:00 <peter1138> We didn't do that for the infinite money mode, which is quite sandboxy but is set up a setting.
13:09:01 <truebrain> So refactoring might show some challenges
13:09:20 <truebrain> Yeah .. I agree, and it feels wrong/weird (to me)
13:09:39 <truebrain> We should have a meeting/vote how to deal with this and fix it ๐
13:09:46 <peter1138> IIRC there was discussion at the time that cheat system was weird and everything should just be settings.
13:10:01 <peter1138> So infinite money is a setting.
13:10:17 <peter1138> And cheats were 'obsolete', was my understanding.
13:10:42 <truebrain> Like I mentioned, personally I don't agree that "everything should be a settings". Sounds hostile to the user to me
13:10:58 <peter1138> I think cheats can't be enabled in multiplayer?
13:11:20 <truebrain> Not sure if the server can open it
13:11:40 <truebrain> Maybe that is what we should fix ๐
13:12:11 <truebrain> Anyway, if others do think we should remove the sandbox stuff, we should put active effort in it, otherwise it remains this weird hybrid
13:13:58 <peter1138> Some are not entirely setting-suitable, switch company, add money and change date.
13:14:03 <peter1138> I think the rest could be.
13:14:58 <peter1138> So, at least I think you can see what prompted by original query now, I hope.
13:15:31 <truebrain> Yup. A long ongoing discussion we are kinda having sometimes but not really ๐
13:15:43 <peter1138> Something like `If (setting is a sandbox setting) AddToSandboxWindow()` works for me.
13:16:23 <truebrain> Okay, I was thinking some more (scary) and something like infinite money you might want to enable before you start the game
13:16:30 <peter1138> Regular settings that server admins can set, but that users can find in the Sandbox Options window.
13:16:34 <truebrain> So having that in settings makes sense from that use case
13:16:57 <truebrain> But you might also want to enable it during a game, in which case I would look in the sandbox window
13:17:10 <truebrain> Long way of saying that your suggestion sounds really good to me
13:17:35 <truebrain> Maybe have them in their own sandbox category in the settings window to reinforce that link
13:18:18 <peter1138> Do we attempt to migrate non-action cheats to settings?
13:18:35 <peter1138> Things like crossing tunnels seems like it should be a game setting that servers can set.
13:18:44 <truebrain> Same for magic bulldozer
13:18:52 <truebrain> Which others are there?
13:19:01 <peter1138> Are we in agreement now? ๐
13:19:50 <peter1138> no jet crashes, user changable industry production values, max map height (what?!) and station rating.
13:20:02 <truebrain> Max map height should be removed
13:20:07 <truebrain> That is a debug setting, imo
13:20:23 <truebrain> Rest all sounds like good candidates to migrate to me
13:20:24 <_glx_> And once real sandbox settings are moved rename sandbox window to cheat window ?
13:20:36 <truebrain> No, we are not talking about moving
13:20:49 <truebrain> We are talking about having them in both places
13:21:09 <peter1138> The sandbox setting, regardless of being a cheat or not, will be in the sandbox window, because that seems logical.
13:21:27 <truebrain> It is scary that we agree this much ๐
13:22:20 <peter1138> Of course then someone will remove it as a setting because there are too many settings ๐
13:22:37 <truebrain> A problem for future-us
13:23:45 <merni> Would max map height be set by default to 255 if it is removed from there?
13:23:51 <merni> Or remain at the current 30?
13:25:17 <peter1138> Didn't we used to have map height in the map generator screen? And that was a problem because it affected the generators in weird ways...
13:25:19 <truebrain> It is calculated in the fly I believe, depending on the map generation
13:25:39 <truebrain> Anyway, it is a weird setting ๐
13:26:07 <peter1138> Sandbox setting: Enable full scenario-editor mode.
13:26:42 <merni> Also, I think one of the issues brought up earlier wrt converting the old cheats into settings was that the game currently tracks if you've ever used a cheat in that save or not. There's no such comprehensive tracking for settings
13:27:17 <merni> Of course, there are still "cheaty" stuff in the settings, so perhaps the best solution might be to create such tracking for settings as a whole
13:27:24 <merni> Or some subset of settings
13:27:32 <peter1138> Scenario editor's tree mode is... fun but completely different.
13:27:44 <merni> peter1138: That would be pretty nice
13:27:47 <peter1138> Dragging doesn't select an area to place trees, it just... paints them.
13:28:53 <peter1138> Painting elevation changes would be an idea.
13:30:39 <talltyler> I feel pretty strongly that having game configuration split across three menus (Options, Settings, Cheats/Sandbox) is frustrating to the player. I play with friends who are not power users and they look for stuff in the wrong menu at least once every three sessions.
13:30:39 <talltyler> I propose eliminating the Cheat/Sandbox menu and moving them all to Settings. At least the non-action ones, of course money, date, and company are problematic.
13:31:17 <talltyler> I think I even started working on the migration, donโt remember why I stoppedโฆ
13:32:54 <talltyler> Maybe confused about how to remove cheats, and then sidetracked
13:33:49 <talltyler> I am confused by the idea to duplicate settings in both Settings and Sandbox. What is the usecase for keeping them in Sandbox?
13:34:16 <merni> As a kind of shortcut perhaps?
13:34:29 <truebrain> talltyler: I think this is far less of a problem in the way Peter suggests than you might think. As if you look for them in settings, you will find them. If you look in sandbox, you will too. So users won't be frustrated; in fact, pretty much the opposite. But the fact is some sandbox thingies cannot be settings, so we need the sandbox anyway
13:34:43 <_glx_> We already duplicate some settings (like signal types)
13:35:07 <peter1138> My use-case is "here's a sandbox setting we added, but sorry it doesn't appear in the obvious place, Sandbox Options, it's in settings"
13:35:12 <talltyler> Oh, so not duplicate settings, just the same setting shown in two different GUIs?
13:36:02 <peter1138> If it wasn't for the "action" based cheats, it would be simple enough to just add a filter for "sandbox" to the settings window.
13:36:41 <merni> The action ones could be moved out entirely. For instance date cheat could be a new window that comes up if you click on the date
13:36:57 <merni> Adding money could be in the finance window
13:36:59 <talltyler> I will keep my bikeshed comments about โwhich settings count as sandboxโ to myself ๐
13:37:27 <peter1138> talltyler: nah, infinite money is obvious. I don't know about others yet because I've not looked.
13:37:29 <truebrain> talltyler: Nah, it is one we should have. But baby steps ๐
13:37:54 <talltyler> Yes, the setting category for which settings are sandboxy can be separate
13:38:27 <talltyler> I can see that being involved with presets: โTTO, TTD, OpenTTD, Sandboxโ
13:38:49 <truebrain> merni: I think that would frustate users as than those sandbox settings are in all different places in different ways
13:39:02 <_glx_> Our setting window is similar to visual studio code setting window
13:39:18 <truebrain> I would need to see it, but on its face it doesn't sound like a pleasant experience
13:39:25 <merni> truebrain: Do people usually change the date and add money at the same time? idk
13:39:43 <_glx_> A long list, but at least we put category inside the list, not on the side
13:39:58 <peter1138> Hmm, some settings are sandboxy only with 1 specific value...
13:40:45 <talltyler> I suspect weโd get a similar reaction to moving action cheats as we did to moving the location button to the pin icon. Lots of complaints and confusion for years, but maybe worth it?
13:41:01 <talltyler> Depends on how much you value omelettes ๐
13:41:03 <peter1138> And we still get them about the location button.
13:41:12 <talltyler> Yes, I saw one this week
13:41:42 <merni> In that case maybe retain the remnants of the sandbox options window for the actions? (and rename it cheats?)
13:42:03 <merni> that also doesn't feel satisfactory
13:42:23 <truebrain> I see you are going through the same emotions as we did earlier ๐
13:42:24 <talltyler> I like omelettes enough to suggest that unlimited money makes the money cheat obsolete, but I bet some players REALLY like that spacebar heating
13:42:30 <merni> as I don't think those things are really often used together
13:42:45 <merni> truebrain: I think I was around the last time it was discussed, as well ๐
13:43:45 <merni> talltyler: Well. It's more unlimited debt than unlimited money. I can see someone wanting to remove the redness of the finance window. Plus perhaps it could be useful for debugging
13:44:05 <truebrain> As such, I like peters idea. It sounds like a good iteration without creating pitchforks ๐ and we can take it from there ๐
13:47:38 <peter1138> Crap that means I've got to write some code.
14:11:34 <peter1138> > [2024-12-05 14:11:13] dbg: [sprite:0] Tried to load normal sprite #15 as a recolour sprite. Probable cause: NewGRF interference
14:11:54 <peter1138> Whatever this is, sounds like someone's forgotten to apply a base offset for a palette lookup.
14:34:16 *** speeder__ has joined #openttd
14:41:09 *** speeder_ has quit IRC (Ping timeout: 480 seconds)
15:17:43 *** Flygon has quit IRC (Read error: Connection reset by peer)
15:17:52 <peter1138> When the whole memory fits inside one of our sprites...
15:24:27 *** toktik has quit IRC (Remote host closed the connection)
15:58:48 <xarick> the alt is much more accurate, except on the map edges
15:59:34 <xarick> I need a way to count how many tiles differ from the original method
16:32:28 <xarick> alright, I got numbers
16:35:51 <xarick> there are 16777216 tiles, for perspective
16:38:42 <peter1138> There's not any point in including Debug figures, that's never meant to be performant.
16:39:38 <peter1138> More interesting at this point is how long does the complete map generation take?
17:03:04 *** SigHunter has joined #openttd
17:03:46 <xarick> with industries, trees, towns, rivers, ?
17:04:19 <peter1138> The complete generation, yes.
17:04:28 <xarick> wow, i have disabled trees
17:04:37 <xarick> disabled inds, ok let me put that back
17:06:00 <xarick> I was only measuring CreateDesertOrRainForest
17:06:44 <xarick> where do I put the TicToc?
17:07:08 <peter1138> Alright, where would the setting for "allow placing houses in game" sit? Without creating a new tree for now. Under Environment โ Towns seems most relevant.
17:08:01 <peter1138> Which is all Economy, but...
17:12:11 <xarick> trees no longer part of gen window ๐ฆ
17:12:45 <peter1138> I don't think they ever were.
17:13:25 <xarick> 24146119 us complete map gen
17:13:31 <talltyler> Economy is a pretty broad umbrella, yeah
17:13:41 <talltyler> But Towns makes the most sense
17:14:07 <talltyler> I did think about un-nesting things in Economy when I last rearranged things, but that felt like too big a change for what I was doing
17:14:13 <peter1138> But also, there's the construction settings... /** Settings related to construction in-game */
17:14:49 <xarick> oh, i forgot to generate industries, my bad
17:15:08 <peter1138> This 4096x4096 generates in 3 seconds... because it's not generating anything ๐
17:18:28 <xarick> this is master, let me now check my build
17:19:27 <soylent_cow[m]> โ๏ธ Does a scenario (.scn) save some/all settings? I noticed that when I loaded a scenario on a server, a scenario which I prepared on my home computer, some settings were apparently set by the scenario and the server config was overridden. I have a couple of questions here: (1) to prepare a scenario with specific server settings, is it enough to start the scenario editor from a game that runs the correct config? and (2) What if I
17:19:27 <soylent_cow[m]> have already saved a scenario, and it seems to have settings which I want to change? Do I load the scenario into the editor, fiddle with config from inside the game, and then save the scenario? Is this the fastest way?
17:20:28 <xarick> but this is a bad apples to apples comparison
17:24:44 *** gelignite has joined #openttd
17:30:00 <peter1138> What I see is that you've shaved off 10% of world generation time (which maybe isn't that trivial) for an algorithm that is more complex and uses 60MB+ extra (temporary) ram.
17:31:04 <peter1138> soylent_cow[m]: Scenarios include game settings, that's one of the purposes of scenarios.
17:31:28 <peter1138> You can load up the scenario and and change settings of course.
17:49:12 <peter1138> What bug is this... Oh...!
17:51:53 <peter1138> (Wording is insufficient)
17:55:03 <peter1138> I'm sure this will allow some exploit, but...
17:58:27 <peter1138> Well, apart from the obvious...
18:11:04 <talltyler> Cost to build is the demolition cost of the house? (Already in the spec)
18:11:17 <talltyler> Not that this is in any way balanced ๐
18:16:32 <peter1138> There's no cost, because it's sandbox.
18:16:58 <peter1138> Although if you place houses you later don't want you do have to pay to remove them.
19:08:30 <Artea> how does "restart_hours" works ?
19:09:19 <Artea> also, there is anyway to slow pace of years ?
19:12:04 <Artea> is something with "minutes_per_calendar_year" ?
19:16:20 <Artea> oh I get what "restart_hours" do now
19:17:23 <soylent_cow[m]> note that you will probably want to adjust the service intervals for all of your vehicles if you switch to wallclock
19:18:10 <Artea> I'm doing dedicated server so is kinda strange doing configs
19:19:34 <soylent_cow[m]> yeah, on a dedi you gotta have the correct config right on start, as changing some settings after the game had started will have no effect
19:20:16 <Artea> I don't intend to make them up that long
19:20:23 <soylent_cow[m]> if you give me some minutes, i will share my dedicated config for a long game (year = several hours)
19:20:53 <soylent_cow[m]> Artea: oh lol i wonder of that works, thanks for tip
19:21:09 <Artea> I just change from 12 to 18
19:22:13 <Artea> last line (at least for me)
19:25:36 <Artea> seems I going abuse a little on that and test it ou
19:26:42 <Artea> soylent_cow[m]: submundo.pt server if you wanna try out
19:27:46 <soylent_cow[m]> i might some time later :)
19:30:51 <Artea> I may have to down the industries
19:31:07 <Artea> too many next to each other lol
19:57:23 *** gelignite has quit IRC (Quit: Stay safe!)
20:09:19 <soylent_cow[m]> it is optimized for a very long persistent game, about a month for a century
20:11:58 <xarick> i'm finding ways to reduce memory usage
20:12:00 <soylent_cow[m]> i had to tackle the industry super-boom as well, and also vehicle aging issues, and the fact that most players only log in for an hour or two per day, so settings which may affect griefing behaviors had to be considered
20:12:30 <xarick> instead of 8 million tiles, i gather only 1 million
20:20:12 <Artea> density from 5 to 4 seems fine for 2048x2048
20:21:08 <Artea> and seems I only can stream when is full on screen (non-fullscreen)
20:21:17 <Artea> oh well, better than nothing
20:22:19 <Artea> "where is that mini-island with 1,2k city lolol"
20:23:15 <Artea> haha, is dying with now 765
20:28:00 <Artea> did you included the lines on private.cfg, soylent_cow[m] ?
20:29:00 <soylent_cow[m]> Artea: hehehe no why
20:29:13 <Artea> for dedicated server is a need
20:29:19 <soylent_cow[m]> just openttd.cfg
20:29:42 <Artea> is strange why is added separated as is under [network]
20:29:47 <soylent_cow[m]> well i figured the secret and the private are easy enough to set up, it's the openttd.cfg that can be a bit of a jungle
20:30:16 <Artea> yeah, is mainly admin info and such if not mistaken
20:30:35 <Artea> port an such, thing that is easily added on openttd.cfg
20:30:59 <xarick> shouldn't it be lower case "slide"
20:31:16 <xarick> or maybe the other functions should be upper case to match?
20:32:44 <LordAro> xarick: stdlib is lowercase, our functions are capitalised
20:33:04 <soylent_cow[m]> <Artea> "soylent_cow: submundo.pt..." <- my server is hightime long game btw :) i think i got about a week before the end of this game ๐ i am working on an epic california scenario these days
20:33:58 <soylent_cow[m]> the australian scenario i got right now, that was my very first attempt at making a scenario, it came out a bit rough on the edges
20:34:10 <soylent_cow[m]> but it looks like people are having fun
20:34:43 <soylent_cow[m]> cali is gonna be 2k x 4k, but like half of it is pacific ocean
20:34:59 <soylent_cow[m]> i might just build like a fake island there, for fun
20:35:19 <soylent_cow[m]> Artea: yeah i'll try it out tonight unless i forget :)
20:35:27 *** kuka_lie has quit IRC (Quit: leaving)
20:36:11 <Artea> you will see the most strange town evar
21:04:05 *** Wormnest has joined #openttd
21:05:26 <peter1138> Is it worth the overhead to get rid of global string parameters?
21:08:24 <Artea> {server} {client} {test}
21:09:04 <Artea> cfg for each as not everybody needs make server
21:09:24 <Artea> and dedicated servers dont need client side
21:09:42 <Artea> test can be attributed to new features / addons / plugins
21:10:08 <LordAro> you seem to be trying to come up with a solution before actually stating the problem
21:10:15 <Artea> seems "minutes_per_calendar_year" is bugged
21:10:59 <Artea> making a dedicated server is a problem when I'm clueless what works and not under server
21:11:56 <_glx_> this setting only work with the correct time keeping
21:12:41 <andythenorth> do we now compile grf in openttd directly from yaml? ๐ฎ
21:13:41 <_glx_> it's the source file in truegrf format
21:14:04 <soylent_cow[m]> Artea: gotta set timekeeping_units to 1 (wallclock)
21:14:39 <soylent_cow[m]> it's a hot new feature in v14, i've been testing this for a few months now, seems to be working as expected
21:19:43 <LordAro> try not to jump too many steps ahead
21:20:08 <LordAro> (whether or not the documentation could be improved is another matter)
21:29:38 *** nielsm has quit IRC (Ping timeout: 480 seconds)
21:57:14 <Rubidium> LordAro: I guess the global string parameters have two major problems; one is having to specify the number of parameters when copying them for safe keeping (e.g. news messages), the other is string formatting apparently working except when some specific other string was formatted before
21:59:40 <peter1138> Parameter capture and leaking parameters, yes. Sorry I didn't realise LordAro was replying to me.
22:00:44 <peter1138> I have a big patch handles both cases, not quite finished with it yet, though.
22:11:19 <peter1138> An alternative is to "make sure" that global parameters are reset before setting and using them. But that "make sure" is doing heavy lifting.
22:12:17 <xarick> those times are excluding the tile loop that happens inbetween
22:13:13 <xarick> I'm not sure if the tile loop is necessary
22:13:55 <xarick> could be removed, unless industries / towns / newgrfs etc have a different way to look for desert tiles
22:14:36 <xarick> 1. GetTropicZone(t) == TROPICZONE_DESERT
22:15:14 <xarick> 2. IsClearGround(t, CLEAR_DESERT)
22:15:50 <xarick> but the 2nd one requires tile looping
22:16:25 <xarick> to transform from grass to desert, it's over a period of time
22:18:19 *** keikoz has quit IRC (Ping timeout: 480 seconds)
22:20:51 <LordAro> peter1138: i didn't realise i was either
22:21:13 <xarick> i could maybe "persuade" the code to immediately create desert, avoiding a costly tile loop
22:22:28 <LordAro> generally i would say yes, get rid of global string params
22:34:37 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:53:06 <xarick> ```desert_tiles.erase(
22:53:06 <xarick> std::remove_if(desert_tiles.begin(), desert_tiles.end(), [&normal_tiles](TileIndex tile) {
22:53:06 <xarick> return std::find(normal_tiles.begin(), normal_tiles.end(), tile) != normal_tiles.end();
22:53:06 <xarick> }), desert_tiles.end()
22:53:07 <xarick> Copilot suggested something nasty
23:10:20 <xarick> well, this operation is slow
23:26:26 <peter1138> [2024-12-05 23:26:19] dbg: [misc:0] Made empty params with space for 2 18446744073709550263/81147
23:26:32 <peter1138> That is an underflow :S
23:33:06 <xarick> slim line around rainforest, no loop but insta desert
23:46:21 <peter1138> Is that last row basically useless?
23:46:33 <peter1138> Argh, I'm being cursed by water flooding again.
23:47:00 <peter1138> Water flood -> Tries to flood industry -> Industry says no, with an error message that incldues string parameters.
23:47:26 <debdog> dang, I thought you were talking RL
23:54:59 <_glx_> hmm instead of copying parameters we could use encoded format
23:57:26 <peter1138> There are some things extra the parameters and use them outside the string.
23:58:47 <peter1138> That doesn't help with non-saved parameters
continue to next day โต