IRC logs for #openttd on OFTC at 2024-10-03
⏴ go to previous day
01:53:09 *** Wormnest has quit IRC (Quit: Leaving)
02:08:55 *** gnu_jj_ has joined #openttd
02:12:29 *** gnu_jj has quit IRC (Ping timeout: 480 seconds)
02:20:29 *** Zathras has joined #openttd
02:23:49 *** D-HUND has quit IRC (Ping timeout: 480 seconds)
02:23:49 *** debdog has quit IRC (Ping timeout: 480 seconds)
04:47:10 <DorpsGek> - Update: Translations from eints (by translators)
05:12:12 *** Flygon has quit IRC (Read error: Connection reset by peer)
05:28:59 *** keikoz has quit IRC (Ping timeout: 480 seconds)
08:40:12 <kuhnovic> xarick: I see lots of code changes, some rather invasive such as the binary heap changes. It is still unclear to me how you are solving a certain problem. It's not even entirely clear what problem you are trying to solve at this point. You need to be able to explain these things. Your usual method of running a 70K ship save only provides anekdotal evidence, it doesn't prove that you have actually
08:41:06 <kuhnovic> Your reasoning needs to be solid, then you can use some save games to prove you've fixed the issue. Specific test cases / savegames are much more useful than 70K ship saves. Those big saves are a form of brute force testing and are more of a general "did I break anything" regression tests, and don't prove that the actual problem situations even occurred at all, let alone that they were fixed.
08:44:44 <kuhnovic> And unfortunately "I added some logic to the binary heap, added some reversal code and look my 70K ship save doesn't assert" just doesn't count as solid logic. For the record, I'm not trying to be a d!ck and complain about your work. I'm sincerely trying to help you, but you need to start listening to what people say. You have received lots of feedback and good advice, but it all seems to fall on
08:45:58 <LordAro> ah, you've reached that point
08:49:33 <kuhnovic> I know you've given up entirely, I'm a bit more stubborn I guess 😛
08:56:15 *** Zathras is now known as debdog
09:07:10 <xarick> hey, thx for the feedback.
09:22:04 <peter1138> Might drop all my stashes and branches.
09:22:17 <LordAro> i don't think we'd ever recover from that
09:47:33 <peter1138> Well, they're not things in TTD.
10:02:21 <xarick> Tie breaker is a really no go, it seems
10:03:11 <xarick> Tie breaker - I needed this to ensure the first path matches the second path. While they have the same costs, I was worried about the automatic service not sticking with the path due to variances in track choice.
10:04:31 <xarick> but.... let's actually visually inspect the ships without the tie breaker
10:08:26 <peter1138> o/~ It's the end of the world as we know it...
10:18:02 <xarick> so this happens so far
10:18:19 <xarick> there's a "split" choice at the top
11:06:20 <truebrain> peter1138: and I feel fine
11:10:19 <xarick> well, i guess tie-breaker can go
11:13:03 <xarick> one goes left, other goes right, but the cost is the same, once it picks a direction, subsequent calls will stick to the path, cost only goes down
11:13:34 <xarick> automatic service is thus fine
11:18:19 *** ialokin has quit IRC (Ping timeout: 480 seconds)
11:20:48 <xarick> I focused too much on the asserts 😦
11:21:36 <xarick> it's the cost that matters apparently
11:24:26 <xarick> perhaps I should assert the costs 😛
11:29:36 <kuhnovic> Think one level higher. What are you trying to solve? Then try to decompose that larger problem into smaller subproblems.
11:41:16 <_glx_> And most likely the solution will be in controller, not in pf
11:42:42 <_glx_> But first step is to properly describe the problem
11:45:30 <truebrain> Alright, Cloudflare accepted us in their OSS program; so we no longer will be charged for most of the Cloudflare cost 🙂
11:46:23 <_glx_> Which were nothing compared to AWS costs?
11:48:23 <truebrain> more than OCI less than AWS 😛
12:05:51 <truebrain> (to be more exact, OCI is ~10 dollar, AWS is ~200 dollar, and Cloudflare was ~30 dollar)
12:11:16 <xarick> I don't wanna solve the problem via controller
12:11:59 <xarick> it wouldn't be able to detect a change in the path
12:15:29 <xarick> if it finds a path to a depot that is a bit further away and then i place one depot much closer to the ship, without obstructing the first path, how would it detect there's now a closer depot?
12:16:34 <xarick> how would the controller detect this
12:16:46 <kuhnovic> You don't, because it's such a niche use case
12:17:07 <xarick> eh, no that's how the other vehicle types finding depots work
12:17:13 <kuhnovic> And you could still do it by doing a search in the checkIfShipNeedsService
12:20:45 <kuhnovic> It's about seperation of concerns here. The pathfollower is used to finds paths between an origin and a destination (or multiple of those). A ship controller is the logic that controls the ship and does the decision making. This separation is important because is keeps things less tightly couplet, and therefore more generic to use in other situations.
12:22:04 <kuhnovic> You don't really want to make changes to the pathfinder here. You want to make changes to the thing that's calling the pathfinder: the ship controller. You want that controller to behave differently so it's smarter about chosing the right depot. The pathfinder is just a tool being used in that process.
12:25:14 <peter1138> truebrain: MBP is free
12:25:26 <truebrain> he keeps replacing it and charging us for it
12:25:32 <truebrain> not sure it is actually "free" 😛
12:44:03 <xarick> I end up in the same rhetoric, my thinking process keeps leading me to the pathfinder
12:54:31 <xarick> this part... and here I go a gain... should be done by the pathfinder, to make sure it sticks to the same path, in the situation of automatic servicing. I can't get my head away from consulting with the pf 😦
12:55:00 <xarick> it does a better job at calculating distances
12:55:41 <kuhnovic> Think about this: so what if the same path can't physically be returned, for example after some terraforming?
12:57:10 <kuhnovic> You don't really care about the path itself. What you care about is that the ship chooses a depot to service in, and then sticks to that depot. The path can change, that's ok. The depot can't change under normal circumstances.
12:58:33 <kuhnovic> Then you start thinking of cases like: but what if the depot becomes unreachable? But what if the depot suddenly requires a big detour after terraforming? And according to you: what if a depot appears that is closer?
12:59:40 <kuhnovic> _Those_ are the cases you should be thinking about, and how to deal with them
13:01:47 <kuhnovic> Hint: you can directly call the high level PF to figure out if a depot is reachable, or to figure out how far away it is (counted in regions, so very coarse)
13:03:21 <kuhnovic> Or you can use the visitRegionNeighbors or whatever it's called directly, and do a breadth first search. That's why the current depot logic is doing, the one I wrote.
13:03:49 <peter1138> There comes a point when it's easier to just do it and avoid the flailing 😉
13:06:55 <kuhnovic> Already halfway there, but I really don't have a whole lot of spare time in the near future unfortunately
13:07:20 <xarick> i'd like to peak at what you're trying, do you have coded some already?
13:08:05 <xarick> maybe by reading the code I will understand what you're trying to tell me
13:09:20 <kuhnovic> It's on my machine at home, I currently don't have access to it
13:09:42 <kuhnovic> I can put it in a draft PR soon
13:12:39 <xarick> kuhnovic: it then goes to another depot if reachable, or cancels the servicing (keeps returning no depot found each call)
13:17:29 <xarick> seems we may be having different answers / problems depending on the solution each of us is going with
13:34:27 <peter1138> These are "things you think about when devising your solution", not "things to answer in discord"
13:35:34 <johnfranklin> I predict the weather will be bad soon
13:57:37 *** akimoto has joined #openttd
14:04:46 <xarick> i detected no ships circling on the 70k save
14:06:00 <xarick> results from without the tie-breaker
14:08:16 <xarick> is it safe to stop caring about hlpf path costs at this point?
14:08:40 <xarick> everything points to yes
14:09:03 <talltyler> I never cared and nothing bad has happened to me 😛
14:13:49 <xarick> it doesn't hurt keeping some limit, but if I can do without the changes, better keep it simple
14:21:37 <andythenorth> johnfranklin: that's just a lovely autumn day in the UK
14:21:51 <andythenorth> and also "I predict the weather will be bad soon" is almost any day in the UK
14:25:47 <bigyihsuan> maybe i should look into getting the "create random industries" button in the scenario editor to respect the industry density setting
14:40:13 *** akimoto has quit IRC (Ping timeout: 480 seconds)
14:42:30 <flote> I'm getting a "Could not connect to the content server" whenever i open the Check Online Content Menu, Im running version 14.1 via steam. Any way to fix this?
14:43:25 <flote> sorry if this isnt the right place to ask
15:06:43 *** gelignite has joined #openttd
15:07:32 <bigyihsuan> bigyihsuan: since it feels like the initial industry denstity when you click the button looks roughly the same no matter the industry density setting
15:17:31 <talltyler> Sounds like a good fix to me
15:22:54 <peter1138> `industry_cmd.cpp:2372`, in the scenario editor it's explicitly forced to use the 'very low' setting.
15:26:38 *** gelignite has quit IRC (Quit: Stay safe!)
15:29:39 *** Wormnest has joined #openttd
15:49:32 *** Flygon_ has joined #openttd
15:51:59 *** Flygon__ has joined #openttd
15:53:10 <bigyihsuan> ~~personally i want a very low setting that's a little more dense than minimal but less than very low~~
15:56:30 *** Flygon has quit IRC (Ping timeout: 480 seconds)
15:57:50 <talltyler> Custom industry number?
15:59:00 *** Flygon_ has quit IRC (Ping timeout: 480 seconds)
16:18:11 <bigyihsuan> talltyler: being able to set custom industry number in the scenario editor would work too
16:26:08 *** gelignite has joined #openttd
16:35:08 *** gelignite has quit IRC (Quit: Stay safe!)
16:46:47 *** Borg has quit IRC (Quit: leaving)
16:50:06 *** Tirili has quit IRC (Quit: Leaving)
17:08:03 <xarick> i made it slightly smarter
17:08:32 <xarick> it used to go right to the top
17:09:01 *** gelignite has joined #openttd
17:10:17 <xarick> but it's still dumb overall
17:19:19 <xarick> can't beat the dist_square approach
17:23:27 <xarick> is there a way to use yapf to collect the various best_nodes when multiple paths are found with the same cost?
17:24:02 <xarick> I wanna use the dist_square approach at that point
17:26:05 <xarick> if I could do that, it would pick the depot to the south
17:27:15 <johnfranklin> Till now, no bad weather
17:31:39 <_pruple> bigyihsuan: since it only creates a few at a time, and you can click it multiple times, I don't think density is an issue?
17:32:02 <_pruple> what might make sense is getting rid of the warning pop-up for subsequent clicks
18:06:33 *** Flygon__ is now known as Flygon
18:24:28 <Rubidium> xarick, when do you think that branch is taken?
18:36:08 <xarick> Follow Node, for each of the tracks found on the new tile, AddNewNode, calculate cost, then calculate estimate
18:38:27 <xarick> and then, if the tile is the destination, don't calculate estimate...
18:39:12 <xarick> or actually, match the estimate with the cost
18:39:38 <xarick> what would happen if it calculates the estimate though...
18:44:17 <xarick> it's a pointless calculation
18:45:00 <xarick> the estimate will become that of n.m_cost
18:45:22 <xarick> rather just set it immediately instead
18:51:34 <xarick> intermediate_destination ruining my day
18:53:58 <xarick> okay, apparently I don't know
18:57:18 <xarick> very well, I'll keep it
18:59:01 <xarick> this could have been what was causing me different paths omg...
19:18:12 <xarick> anyways, I'm going to rerun asserts overnight
19:42:18 *** gelignite has quit IRC (Quit: Stay safe!)
19:42:45 *** tokai|noir has joined #openttd
19:42:45 *** ChanServ sets mode: +v tokai|noir
19:49:48 *** tokai has quit IRC (Ping timeout: 480 seconds)
20:14:40 <johnfranklin> Renewed World Disorder is written by Zorg
20:26:38 <peter1138> Forty-five, Sixty-ten.
20:38:08 <xarick> how do i get the last tile in an area I thought it was tile_area.end()
20:38:18 <xarick> it's giving me an INVALID_TILE instead
20:39:52 <xarick> reverse iterator beginning, how do I do it?
20:40:06 <peter1138> tile_area probably does not support that.
20:40:43 *** nielsm has quit IRC (Ping timeout: 480 seconds)
20:40:56 <peter1138> .end() is always after the last element.
20:43:04 <xarick> there's no quick access to the last tile without iterating?
21:00:38 <andythenorth> the script GPT wrote to prune my git repo...might not work 😛
21:05:35 <xarick> what's faster, less overhead:
21:05:35 <xarick> ```std::vector<TileIndex> tile_list;
21:05:35 <xarick> if (tile_list.size() == 1) return tile_list[0];
21:05:35 <xarick> if (tile_list.size() == 1) return *tile_list.begin();```
21:07:57 <xarick> CoPilot says tile_list[0]
21:12:37 *** m1cr0man has quit IRC (Quit: G'luck)
21:29:23 *** keikoz has quit IRC (Ping timeout: 480 seconds)
21:32:21 <peter1138> You forgot about `tile_list.front()`
21:40:56 <peter1138> I don't believe that is what I said.
21:41:09 <truebrain> okay, Cloudflare even refunded the money we prepaid; how nice of them 🙂
21:47:38 <xarick> Showing 19 changed files with 313 additions and 131 deletions. I'm still adding more than I am deleting 😦
21:48:34 <xarick> the may_reverse commit is making it read unfriendly
21:49:29 <xarick> I'll explore the may_reverse situation next day, see if I can compromise something out of it.
22:22:43 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
22:31:53 <_pruple> I'm inclined to just go ahead and use bit 13 and 14 classes in sunshine, and let the official spec catch up as and when 😉
22:47:26 <peter1138> talltyler: hmm, why is DAY_TICKS involved with sub_date_fract?
22:49:11 <peter1138> Ah, JGR did that bit.
22:52:09 *** ian01223 has joined #openttd
22:52:09 <ian01223> is there a reason why the arrow keys are not cofigurable in hotkeys.cfg?
22:52:22 <ian01223> (or why there isn't a settings page for hotkeys in the first place)
22:54:00 <ian01223> though funnily enough when looking this up in the forums I found someone arguing that the "ASWD" keys should have never left the FPS genre...
22:58:23 <peter1138> Yes. Nobody has changed the code to use hotkeys.
22:59:27 <ian01223> surely it wouldn't be that hard
23:01:17 <aviationgamerx> AviationGamerXviaGit: I am not sure which way should be taken, should I try to fix the failed builds? or does it seem like the idea of the solution won't work, people are suggesting other solutions instead
23:03:51 <truebrain> You got zorgd! Be careful to not let yourself being dragged down the shitter; zorg is just one opinion; and we are not here to make everyone happy all the time 🙂 his opinions tend to be ... one either side of a spectrum, with little room for compromise. "Old was better", "this game is going to shit", etc etc. Pick out of his replies what you consider useful, ignore the rest.
23:04:49 <truebrain> And definitely try to fix the build, if not alone for the learning experience 🙂
23:05:21 <peter1138> ian01223: Ah, a volunteer, excellent.
23:05:50 <dwfreed> walked right into that one
23:06:07 <ian01223> no! don't take me! I still have a life to live!
23:06:20 <ian01223> how will my family survive without me?!
23:07:07 <ian01223> though I admit I should've seen that coming
23:08:13 <reldred> aviationgamerx: lmao, ignore zorg
23:08:54 <ian01223> on the other hand I've never touched c++ in my life and this might be a good opportunity to learn
23:09:05 <ian01223> on the other hand that's exactly why I shouldn't be allowed anywhere near this
23:10:54 <aviationgamerx> truebrain: that's the main thing I am proud with however it goes, learning is my main gain and what's hopefully gonna keep me going, thanks
23:15:09 <aviationgamerx> reldred: I still think the first guy made a valid point on the percentage obsecuring the real value
23:16:53 <aviationgamerx> I will try to go with making 10% = 10,000, seems to be a fair way for the setting
23:17:40 <reldred> Problem with Zorg is that if you entertain him for even a second he'll latch on and never let go.
23:18:10 <aviationgamerx> also I have no idea how I can fix builds on other operating systems, I won't do it today but if you guys know how I can test if they work on other operating systems, I would do with the help
23:18:26 <reldred> Not the worst of the unhinged weirdos the community has attracted over the years, but he is uhhhh one of them
23:18:28 <aviationgamerx> reldred: well too late now, I replied
23:19:45 <aviationgamerx> reldred: I'm sure he's just trying to prove a point, or giving the voice of what some players would think
23:20:09 <ian01223> is this the kind of thing where you have to say something along the lines of "it's cruel, but we have to let nature take its course"?
23:23:08 <reldred> aviationgamerx: Problem is, you've got folks who've been playing TTD, then TTDPatch, then OpenTTD since 1995/1996, some poeple have very very deeply entrenched beliefs on how things should be
23:23:43 <reldred> And well, some people are a bit more... eccentric than others.
23:24:05 <aviationgamerx> ian01223: as TrueBrain said, you can't always make everyone happy, it's natural to find someone who disagrees with things in a large community, it's not really cruel, just a disagreement from a man who disagrees, and yes, I guess, let nature take its course
23:24:16 <reldred> I mean yeah, I've been around that long as well, but I fall into the 'constant cycle of death and rebirth is actually good' crowd.
23:24:37 <ian01223> i'm just joking around a little
23:24:38 <reldred> whereas some have a very narrow view of what the game should be and see any change as heresy
23:24:45 <ian01223> yeah I've seen a ton of that
23:25:17 <reldred> I also have made it a point to be very very very selective of who's opinions in this community I actually give a shit about.
23:25:42 <reldred> Coz yeah, you sure as hell can't please everyone, and some people just have *dogshit opinions*
23:25:48 <ian01223> I mean I was just talking about this (on an article about WASD keys)
23:26:16 <reldred> Yeah I avoid the forums
23:27:06 <aviationgamerx> ian01223: that's a very strict way of thinking for games lol
23:27:50 <peter1138> Pfft, if you didn't play Doom with arrow keys you were a late-comer...
23:28:59 <aviationgamerx> peter1138: Openttd itself is 1 month older than me...
23:30:25 <reldred> As far as I'm concerned, be as bold as you want with your patches& changes, if they're not appropriate for mainline OpenTTD then JGRPP would be a perfect place for them. Just keep developing and progressing the game.
23:33:30 <peter1138> Yeah, JGRPP accepts any old shit ;p
23:34:35 <ian01223> this JGRPP seems to have very loose standards
23:34:55 <reldred> ian01223: Nah, JGR will reject stuff or rewrite it if it's dogshit
23:35:31 <ian01223> I'm also joking (again)
23:35:40 <reldred> Most of my patches are microscopic in size.
23:36:44 <aviationgamerx> reldred: alright, I didn't even know jgrpp was a thing
23:36:49 <reldred> I guess it's more, jgrpp is already the niche branche for the niche players so there's no real debates as to whether something 'should' be included, is something too complex, etc. etc.
23:37:49 <reldred> aviationgamerx: Yeah there's two main forks running atm, JGRPP is the kitchen sink approach, CityMania is the vanilla compatible alternate client.
23:38:03 <reldred> There are other patch packs but those are the two main ones.
23:40:03 <peter1138> Targetting JGRPP also means vanilla devs won't know anything about it and its likely to forever stay a "niche patch"
23:40:16 <reldred> Yeah, it's a tradeoff
23:40:22 <peter1138> Targetting CityMania is... nobody does that.
23:40:58 <reldred> But having a patch also just sit around as an open PR for OpenTTD for years that nobody wants to touch because it's awkward or doesn't fit is also a bit of an ignoble death.
23:47:01 <reldred> Don't make this personal peter
23:47:27 <reldred> I wasn't taking any swipes at anyone.
23:54:29 <reldred> If anything I was defending the reality that OpenTTD maintainers have to be pickier on what they merge, but, that those patches may still find a good home elsewhere if that's the case.
continue to next day ⏵