IRC logs for #openttd on OFTC at 2022-10-30
โด go to previous day
00:50:25 <EmperorJake> Eddi|zuHause: I always wondered why NARS didn't just do that for regearing
00:50:43 <Eddi|zuHause> EmperorJake: that's a newer feature
00:52:34 <Eddi|zuHause> NARS is crazy ancient
01:23:42 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
01:24:00 *** WormnestAndroid has joined #openttd
01:40:51 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
01:40:54 *** WormnestAndroid has joined #openttd
02:09:28 *** Kitrana has joined #openttd
02:13:23 *** wallabra_ has joined #openttd
02:19:09 *** wallabra has quit IRC (Ping timeout: 480 seconds)
02:19:09 *** wallabra_ is now known as wallabra
02:34:40 <glx[d]> dP: ok I can reproduce it locally, that's a good starting point
03:10:31 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:56:40 *** _aD has quit IRC (Quit: leaving)
06:48:42 *** wallabra has quit IRC (Ping timeout: 480 seconds)
06:58:52 <Bouke> You can probably remove the `1:` prefix as you pass the arguments in the original order. The english translation reorders them (first `1`, then `0`).
08:07:01 *** gelignite has joined #openttd
08:10:13 *** D-HUND is now known as debdog
08:11:52 *** sla_ro|master has joined #openttd
08:12:09 *** gelignite has quit IRC (Remote host closed the connection)
08:17:14 *** gelignite has joined #openttd
08:23:03 <andythenorth> I need to post pictures to get that gif of me out of my browser viewport
08:23:28 <andythenorth> Bar and Section Mill
08:23:34 <andythenorth> might lack variety ๐
08:42:59 *** HerzogDeXtEr has joined #openttd
08:53:24 <Wolf01> Meh, new 1TB SDD already full
08:59:17 <Wolf01> There are only games there, I miss when a game used to stay in 1-2 floppy disks
09:02:12 <Wolf01> 5 games, 450GB, not bad
09:02:23 <Wolf01> Time to finish at least one and uninstall
09:30:06 <Merni> Bouke: No, the same error occurs when I do that
09:31:46 <Merni> Also if I use {0:STRING} and {1:STRING}
09:40:45 <jfs-> not sure but try 1 and 2
10:21:23 <Merni> In that case wouldn't {1:STRING} be at the start of the translation
10:21:35 <Merni> That would reverse the meaning
10:22:16 <Merni> I want {STRING} first then {1:STRING}
10:37:48 *** sla_ro|master has quit IRC ()
11:09:35 <glx[d]> Could be an eints issue, trying to modify the source and compile might work
11:28:59 <andythenorth> oops, forgot I hit the object limit
11:41:57 <Merni> glx[d]: Compile what? I can download the lang file, but how do I upload that back into eints with the change?
12:21:32 <TrueBrain> Merni: It wouldn't. If you read in the english text `{1:STRING} .. {STRING}`, the second one is implied to be `{2:STRING}`. Basically, this translation skips the first parameter, and only uses the second and third
12:21:45 <TrueBrain> this is also the error you get: eints tells you that `{2:STRING}` is missing
12:21:48 <TrueBrain> as it is in the english text
12:22:23 <TrueBrain> so the english text could have been `{1:STRING} ... {2:STRING}`, and would have meant the exact same
12:22:32 <TrueBrain> so if you want it reversed, use `{2:STRING} .. {1:STRING}`
12:22:52 <TrueBrain> using `{STRING} ... {1:STRING}` would imply `{0:STRING} ... {1:STRING}`
12:25:00 *** tokai|noir has joined #openttd
12:25:00 *** ChanServ sets mode: +v tokai|noir
12:26:30 <frosch> i vote for changing the base translation
12:26:39 <frosch> either all commands should have a position number, or none
12:27:01 <TrueBrain> this implied position is annoying ๐
12:27:12 <TrueBrain> also skipping parameters is silly
12:27:23 <frosch> but thanks for explaining the issue, i would have started debugging eints
12:27:39 <TrueBrain> I KNOW MORE ABOUT TRANSLATIONS THAN frosch !
12:27:42 <TrueBrain> my day is awesome now ๐
12:27:51 <TrueBrain> (honestly, I just checked other translations :P)
12:28:08 <frosch> since when do i know anything about translations?
12:28:56 <TrueBrain> well, that sucks even more, as you are our eints guru ๐
12:29:31 <frosch> most things here were written by dutch people, you should know :p
12:31:22 *** tokai has quit IRC (Ping timeout: 480 seconds)
12:38:54 <frosch> ah, the parameter skipping here is due to actionB magic
12:39:38 <frosch> i better not touch that :p just adding 2: everywhere
12:50:50 <frosch> every hackernews thread remotely related to the c++ standard always requires a lot of popcorn when reading
12:54:15 <Merni> TrueBrain: That worked, thanks!
13:53:06 *** WormnestAndroid has quit IRC (Remote host closed the connection)
14:29:16 <LordAro> wasn't supposed to be
14:41:35 <petern> Hmm, strava on a go slow
14:50:11 *** WormnestAndroid has joined #openttd
15:11:39 <michi_cc[d]> LordAro: Can you paste that changelog edit link again?
15:23:31 <LordAro> with difficulty, because the computer i had it open on is currently out of action with memory errors
15:23:46 <LordAro> i can dig it out of my logs
15:44:12 *** Flygon has quit IRC (Read error: Connection reset by peer)
15:50:12 <TrueBrain> LordAro: ๐ฎ ๐ฎ That doesn't sound good ๐ฆ
15:51:40 <TrueBrain> michi_cc[d]: Power of Discord: search for "changelog" in this channel ๐
15:53:41 <LordAro> just a single stick i think, according to memtest
15:54:01 <LordAro> in the "verify it's not anything else" now
16:53:38 *** sla_ro|master has joined #openttd
17:04:16 *** Wormnest has joined #openttd
17:17:18 <petern> So if cargo refits are too complex to understand... hmm.
17:18:44 <andythenorth> such cargo refits
17:19:11 <frosch> the key to livery refits is probably to make it only accessible during the sprite resolving, and hide it from all property callbacks
17:19:29 <frosch> so people do not yet again start modifying vehicle lengths and speed and stuff :p
17:19:31 <andythenorth> oops I abused the livery callback for capacity ๐ฆ
17:19:40 <andythenorth> I never actually use it
17:19:43 <petern> cargo subtypes for capacity is such a bad idea
17:19:52 <andythenorth> I just wanted to stop people moaning about precise capacity
17:20:03 <andythenorth> maybe throw it out?
17:20:47 <andythenorth> also what is the refit menu supposed to be for? ๐
17:21:54 <petern> Modifying capacity is fine as a side effect, but you have a wide range of capacities and that's the only change.
17:22:36 <andythenorth> tempted to remove it
17:22:37 <frosch> the refit menu is for mixed cargo consists
17:22:52 <andythenorth> can we please discuss that refittable capacity is a desync risk?
17:22:53 <petern> What you do makes autoreplace a nightmare
17:23:01 <andythenorth> then I can remove it
17:23:31 <andythenorth> a desync risk of 0% is still a valid risk? ๐
17:23:47 <andythenorth> I think frosch fixed autoreplace though
17:24:03 <petern> Would be nice if the refit window could preview the change.
17:24:37 <andythenorth> how does autoreplace handle liveries
17:24:56 <petern> I believe it tries to keep the same cargo subtype if possible, not sure.
17:25:47 <petern> But when you change capacity like that, the stats that are shown will be for the default, so won't be correct.
17:26:02 <frosch> autoreplace tries to pick a subtype with the same stringid
17:26:04 <petern> So you might think you are upgrading for capacity but end up making them smaller.
17:26:15 <frosch> so if you use "low/med/high capacity" it works
17:26:29 <frosch> if you use "103 item" for one veicle and "105 items" for another, it does not work
17:27:13 <petern> Oxygen (low capacity) Oxygen (medium capacity) Oxygen (high capacity) would work if you did them all like that.
17:27:17 <andythenorth> none of this works with station refits
17:27:24 <andythenorth> which are the only thing I ever use
17:27:31 <andythenorth> I try to never open the refit menu, I think it kills kittens ๐
17:27:33 <petern> But you're better off using different engine IDs
17:27:56 <petern> I think you have missed the point of it, you didn't seem to know it's for refitting cargo...
17:28:04 <andythenorth> BUT WHAT IF I NEED DIFFERENT CAPACITIES ^^
17:28:29 <petern> Logically a smaller ship has a smaller capacity. But who knows.
17:28:30 <JGR> You are allowed to run vehicles without them being completely full
17:28:54 <andythenorth> I think I remove the capacity refit silliness from Sam
17:28:55 <petern> Oh is THAT what he's trying to do!?
17:29:27 <andythenorth> this is literally only in Sam so people don't ask for 'can you make the 800 ton ship 900 tons just for my game thanks bai'
17:29:45 <JGR> You are also allowed to reply "No"
17:29:49 <andythenorth> they could have linear / log parameter scaling options
17:30:43 <TallTyler> I vote for telling those people to use different ships
17:30:44 <andythenorth> deleting things is fun
17:30:59 <andythenorth> JGR: also but how?
17:31:01 <andythenorth> and ratings ๐
17:31:19 <andythenorth> obviously for pax that's ok
17:31:42 <TallTyler> Ships should be set up like binary so they can choose precisely the route capacity they want. Draw some canoes with 1, 2, 4, 8 ton capacities, etc ๐
17:31:43 <petern> Timetable, load for a set time, then set off.
17:32:28 <andythenorth> how about composable ships?
17:32:32 <andythenorth> like building trains
17:32:38 <TallTyler> I think conditional orders let you load to a certain capacity if you must keep looping back to the โgo to stationโ order if the capacity is less than the chosen amount
17:32:38 <andythenorth> oh V did that already in NUTS
17:32:57 <andythenorth> someone showed me conditional orders for that once
17:33:02 <andythenorth> it's remarkably lol
17:33:08 <andythenorth> like...no, don't do that
17:33:19 <ag> Ships as trains sounds absolutely cursed
17:33:26 <andythenorth> it's quite compelling
17:33:36 <andythenorth> I didn't steal the idea though ๐
17:33:50 <andythenorth> in a V universe, it makes complete sense and improves the game a lot ๐
17:33:58 <JGR> Having more than one hold which you could refit independently would solve the issue without making it overly complicated
17:34:16 <andythenorth> I used to think that would be a good idea
17:34:30 <andythenorth> it's easier to just run 2 ships ๐
17:35:21 <andythenorth> there's one combined pax/mail train in Horse, and it basically has to be unique because it's not replaceable
17:35:44 <andythenorth> petern: so you're doing a livery feature in grf? ๐
17:36:48 <ag> Btw I would like shipbuilding industries to be added in Steeltown if that's doable
17:37:12 <andythenorth> they didn't make it to Steeltown
17:37:37 <andythenorth> hmm....an add-on maybe? ๐
17:38:59 <andythenorth> I want to do a dockyard in a different economy
17:39:04 <andythenorth> might include nukes ๐
17:39:07 <ag> I have more ideas for Steeltown
17:39:07 <ag> Adding Shipbuilding and Aircraft building is going to be very confusing and exhausting coding and playing wise
17:39:20 <andythenorth> Steeltown ran out of cargos
17:39:41 <andythenorth> one has to be left spare for regearing and liveries and stuff
17:39:50 <andythenorth> mostly 'and stuff'
17:40:10 <ag> Only if ottd had 512 cargos /s
17:40:53 <JGR> Even if an industry set has 63 cagoes, does any player ever actually transport all 63 of them in a single game?
17:41:06 <andythenorth> but it's the limit
17:41:31 <JGR> I end up ignoring whole cargo chains which aren't worth the bother
17:41:31 <petern> 16 would've been a nice limit.
17:41:54 <andythenorth> ^^ that was fun game, but there's no sense of 'more cargos would make this better'
17:42:06 <andythenorth> it's intricate enough
17:42:33 <andythenorth> needs GS to add another layer of depth, not even more cargo
17:42:45 <ag> I like playing the basic economies though
17:42:45 <ag> It's less headache logistics wise
17:43:19 <JGR> The trouble with lots of cargoes is that you end up with just large numbers of unrelated point to point links
17:43:53 <JGR> With the exception of stuff like supply cargoes
17:44:40 <ag> How do I use the same ID I have in discord with the one on IRC?
17:45:59 <JGR> One thing that I'd really like some day is something like a shipping container cargo, which actually integrated usefully with cargodest
17:46:00 <petern> I don't think the bridge bot supports linking to real accounts.
17:46:20 <petern> Hmm, I just hit `assert(_grf_text[stringid].grfid != 0);` :/
17:46:48 <ag> JGR: Shipping container cargo?
17:47:40 <petern> Anyone reported crashes when refitting :/
17:48:04 <JGR> ag: Those standard sized big metal boxes often seen on ships, trains, lorries, etc
17:49:34 <petern> Hmm, definitely a string issue in that window. Hmm.
17:50:21 <JGR> I think it'd make an interesting change, and encourage more interesting freight patterns than single point to points routes
17:50:27 <andythenorth> peter patched vehicles-in-vehicles once ๐
17:50:41 <andythenorth> probably not very far ๐
17:50:41 <JGR> Things like distribution centres, freight ports and such might actually be useful in game
17:50:52 <petern> That `(refittable)` text flashes
17:50:58 <petern> andythenorth: pretty sure I didn't.
17:51:38 <glx[d]> petern: I think someone had it recentrly
17:52:17 <petern> I think it's a bad string from NewGRF, using a code to include another string when it shouldn't.
17:52:56 <petern> Trying to trigger again.
17:53:11 <JGR> Given that a major criticism of cargodest is that the demand allocation is overly influenced by the network that is created, rather than the total set of destinations, adding some layer via GRF or otherwise to encourage connectivity to specified destinations to route cargo at all, by means of more universal cargo, would be a nice way to improve that IMO
17:53:42 <petern> That's because we have cargodist, not cargodest.
17:53:58 <JGR> Also, I happen to live not far from the UK's biggest container port, so I probably have shipping containers on the mind more than most people
17:56:51 <andythenorth> I wanted YetAnotherYACD ๐ฆ
17:57:02 <andythenorth> cdist won because performance reasons
17:57:08 <andythenorth> but maybe everyone could just get an M1
17:57:24 <petern> Oh custom window, that probably just means something is wrong with their code.
17:58:08 <glx[d]> maybe, but it was AI/GS stuff, not newgrf related
17:59:10 <petern> Apparently it's possible to build cargodest on top of cargodist, but ... i've never investigated.
17:59:22 *** wallabra has joined #openttd
18:00:27 <ag> It would take some ( lot) of time to develop though
18:04:11 <andythenorth> the thinking is that we modify the cdist demand function
18:04:15 <andythenorth> which could be good
18:04:25 <andythenorth> but it won't work like YACD, assigning specific destinations
18:40:05 *** wallabra_ has joined #openttd
18:43:05 *** wallabra has quit IRC (Ping timeout: 480 seconds)
18:43:05 *** wallabra_ is now known as wallabra
18:50:30 <DorpsGek> - Update: Translations from eints (by translators)
18:53:11 <petern> Hmm, can reproduce by opening the save window with the refit window open, heh.
18:54:18 <petern> Buggy NewGRFs shouldn't crash the game ๐ฆ
19:05:53 <frosch> i do not quite understand the difference between Feature, Add and Change
19:06:00 <frosch> many could be either of them
19:07:40 <michi_cc[d]> True answer: It is whatever the PR author chose.
19:09:07 <michi_cc[d]> Pragmatic reinterpretation: Feature is something new, not too small and directly player-visible. Add is either for GS/NewGRF etc or uninteresting for most players. Change is a modification of already existing behaviour.
19:09:24 <michi_cc[d]> Change is the most squishy category.
19:10:52 <frosch> check: 9959 would be a change to me, 9891 a fix?
19:11:10 <michi_cc[d]> The difference from Change to Fix is mostly that the existing behaviour for a Fix is not considered proper by anybody.
19:12:35 <michi_cc[d]> #9891 maybe more a Change, the previous behaviour isn't really wrong, just not aesthetically pleasing.
19:12:47 <michi_cc[d]> #9959 is open to interpretation ๐
19:14:14 <michi_cc[d]> I think the deciding feature of Feature is that it is listed on top so it is what the average player might still bother to read, i.e. but whatever you actually want players to see in there ๐
19:14:49 <michi_cc[d]> But feel free to edit the changelog.
19:17:25 <andythenorth> I used to use the OpenTTD commit message prefixes ๐
19:17:35 <andythenorth> but it requires a lot of very precise understanding of the rules ๐
19:17:46 <andythenorth> now I have Change, Fix, and Codechange ๐
19:18:01 <andythenorth> oh and Docs, but sometimes it's "Docs: (fix) foo"
20:05:50 *** Kitrana has quit IRC (Quit: Leaving.)
20:14:10 *** Kitrana has joined #openttd
20:17:05 *** Kitrana1 has joined #openttd
20:22:12 *** Kitrana has quit IRC (Ping timeout: 480 seconds)
20:28:28 <andythenorth> git commit -m "Bevel: chunky"
20:32:17 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
20:34:12 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
20:34:23 *** WormnestAndroid has joined #openttd
20:48:07 <petern> Oh yes, I got distracted from chunky by this NewGRF crashing, and then watching a 1hr44 music video.
20:51:22 <petern> Hmm, callback string validation. Probably tricky.
20:53:18 <petern> STR_LIVERY_RAILFREIGHT : Railfreight Two-Tone Grey {STRING}
20:53:23 <petern> Yeah, that {STRING} shouldn't be there.
20:54:11 <petern> Or cargo subtypes can do things with text stacks?
20:57:15 <petern> Of course they can. Seems to be no validation that an extra string is provided, though.
21:08:11 <Eddi|zuHause> that sounds like the kind of thing where you access random memory and corrupt a system
21:11:07 <petern> No, there's an assert, so it deliberately halts.
21:11:24 <petern> Although not sure what happens without asserts on.
21:14:55 <petern> recompiling after changing english.txt, woo
21:22:16 *** Wormnest has joined #openttd
21:29:53 <petern> Odd, it doesn't show the string I asked it to :/
21:30:03 *** WormnestAndroid has quit IRC (Read error: Connection reset by peer)
21:39:11 *** EER has quit IRC (Remote host closed the connection)
21:46:02 *** gelignite has quit IRC (Quit: Stay safe!)
21:57:50 *** WormnestAndroid has joined #openttd
22:01:39 <andythenorth> I have been trying 'not enough' sleep for too long
22:01:47 <andythenorth> I feel like it might not be working
22:01:51 *** sla_ro|master has quit IRC ()
22:13:13 <andythenorth> ok goes it stay up and add liveries to Horse?
22:13:22 <andythenorth> using the official callback, not the silly things I did so far?
22:14:21 <andythenorth> hmm how do I refit an entire group
22:15:47 <andythenorth> send 1 to depot, refit, delete all other trains, clone new ones?
22:15:53 *** nielsm has quit IRC (Ping timeout: 480 seconds)
22:23:07 *** WormnestAndroid has quit IRC (Ping timeout: 480 seconds)
22:25:28 <petern> There's no autoreplace-like-refit
22:25:50 *** WormnestAndroid has joined #openttd
22:27:39 <petern> What do you mean by "the official callback"
22:30:14 <andythenorth> conventional / official /s
22:31:53 <andythenorth> hmm animation for your rolling mill?
22:32:15 <andythenorth> that gap in the middle of the middle shed is where I could animate metal stuff
22:33:49 <andythenorth> more fire cycle ๐
22:50:33 <andythenorth> needs work, looks a bit weird
23:10:44 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
23:27:04 <petern> `uint x = rtl ? text_left : text_right;`
23:27:04 <petern> `DrawString(rtl ? x : text_left, rtl ? text_right : x, ...)`
23:38:30 *** Kitrana has joined #openttd
23:40:26 *** Wolf01 has quit IRC (Quit: Once again the world is quick to bury me.)
23:46:07 *** Kitrana1 has quit IRC (Ping timeout: 480 seconds)
23:46:32 *** Kitrana has quit IRC (Ping timeout: 480 seconds)
continue to next day โต