Config
Log for #openttd on 16th November 2021:
Times are UTC Toggle Colours
2021-1111:12:34  *** tokai|noir has joined #openttd
11:12:35  *** ChanServ sets mode: +v tokai|noir
12:57:39  *** WormnestAndroid has joined #openttd
13:05:58  *** glx has joined #openttd
13:05:58  *** ChanServ sets mode: +v glx
14:10:15  *** tokai|noir has quit IRC
14:10:36  *** tokai has joined #openttd
14:10:36  *** ChanServ sets mode: +v tokai
14:44:08  *** nielsm has joined #openttd
14:49:48  *** supermop_work has joined #openttd
14:49:51  <supermop_work> yo
16:06:42  *** iSoSyS has joined #openttd
16:44:51  *** HerzogDeXtEr has joined #openttd
17:00:27  *** Flygon has quit IRC
17:04:08  <DorpsGek> [OpenTTD/OpenTTD] JGRennison opened pull request #9701: Codechange: Remove CargoSpec::multipliertowngrowth which is unused https://git.io/J1CUs
17:21:39  <DorpsGek> [OpenTTD/OpenTTD] JGRennison updated pull request #9701: Codechange: Remove CargoSpec::multipliertowngrowth which is unused https://git.io/J1CUs
17:33:50  <DorpsGek> [OpenTTD/OpenTTD] Rau117 commented on discussion #9687: Suggestion: Change behaviour of the «expand signal menu» btn https://git.io/JXig1
18:17:29  *** Wormnest has joined #openttd
18:21:24  *** Wolf01 has joined #openttd
18:35:28  <TrueBrain> hmm .. I do not get industry tiles .. I first need to claim a number via 08 .. but that always wants to copy an existing industry tile? I just want to start a new one :P
18:38:49  <nielsm> yes, a lot of things in newgrf are based on "copy existing (base) item and customise it"
18:39:25  <nielsm> which is one of the reasons the original vehicles can't actually be moved to become newgrf definitions: all newgrf's depend on them existing in the base game
18:39:41  <TrueBrain> hmm .. so what is a safe industry tile to copy :P
18:39:56  <nielsm> I think 0 or 1 is something from the coal mine
18:40:05  <TrueBrain> some are animated
18:40:14  <TrueBrain> well, guess I overwrite that anyway
18:40:28  <nielsm> if you just want a basic land industry tile without cargo accepts or animations
18:40:32  <TrueBrain> tile acceptance is the more annoying one
18:41:28  <TrueBrain> 0 has no animation
18:41:32  <TrueBrain> and no acceptance
18:41:36  <TrueBrain> that will work, I guess
18:41:51  <nielsm> I think 0 is a pile of coal
18:42:15  <TrueBrain> no, those are a bit later .. it is one of the buildings I think
18:42:21  <TrueBrain> but it is fine for now, I guess :D
18:42:58  <TrueBrain> okay, at least that works .. w00p :D
18:55:35  <nielsm> the hard part of newgrf industries is (initially) the art
18:55:51  <nielsm> ofc if you want to do advanced production rules that can get fun too
18:56:09  <TrueBrain> depends .. if you try to write binary NewGRF, that is pretty hard too :D :D :D
18:58:07  <TrueBrain> @base 10 16 2022
18:58:07  <DorpsGek> TrueBrain: 7E6
18:59:13  <TrueBrain> okay .. chained an action 0 to an action 2 to an action 3 .. I am getting the hang of this :D
19:00:51  <TrueBrain> now for my own realsprite ..
19:20:34  <supermop_work> what are you making TrueBrain ?
19:20:50  <TrueBrain> things so other people can make things!
19:20:58  <TrueBrain> https://truebrain.github.io/TrueGRF/
19:21:48  <supermop_work> for some reason i can't open that here at the office
19:22:48  <TrueBrain> funny, it is a white page here too :P
19:23:23  <TrueBrain> no clue what broke .. will have to investigate :D
19:23:28  <TrueBrain> was working yesterday .. lol
19:25:11  <dP> internet seems kinda broken today
19:26:03  <TrueBrain> lol, I am a potato
19:26:06  <TrueBrain> let me fix this
19:31:08  <TrueBrain> supermop_work: try it again :)
19:36:15  *** WormnestAndroid has quit IRC
19:41:31  *** frosch123 has joined #openttd
19:47:55  <DorpsGek> [OpenTTD/BaNaNaS] frosch123 opened pull request #109: Change: migrate OpenTTD user Dukeman to GitHub user HollyDuke https://git.io/J1CM9
19:48:54  <DorpsGek> [OpenTTD/OpenTTD] frosch123 approved pull request #9701: Codechange: Remove CargoSpec::multipliertowngrowth which is unused https://git.io/J1CDv
19:49:03  <LordAro> dP: https://status.cloud.google.com/incidents/6PM5mNd43NbMqjCZ5REh possibly?
19:49:40  <DorpsGek> [OpenTTD/BaNaNaS] TrueBrain approved pull request #109: Change: migrate OpenTTD user Dukeman to GitHub user HollyDuke https://git.io/J1CD3
19:49:45  <DorpsGek> [OpenTTD/BaNaNaS] TrueBrain merged pull request #109: Change: migrate OpenTTD user Dukeman to GitHub user HollyDuke https://git.io/J1CM9
19:51:59  <dP> LordAro, yeah, that too
19:52:12  *** andythenorth has joined #openttd
19:55:30  <supermop_work> hi andy
19:55:54  <supermop_work> TrueBrain: looks neat
19:56:00  <TrueBrain> :D
19:56:13  <supermop_work> i was out getting coffee just got back to desk
19:57:37  *** WormnestAndroid has joined #openttd
19:58:47  <andythenorth> yo
19:59:31  <TrueBrain> hmm .. NewGRF specs were "fine" to see what I need to write, till realsprites
19:59:41  <TrueBrain> and NML is also .. a bit .. "abstracted", to really understand :D
19:59:54  <glx> that's the main goal of NML
19:59:57  <TrueBrain> normally I open the OpenTTD source to figure out what happens exactly ..
20:00:03  <TrueBrain> but that too is not easy for this case :P
20:00:08  <TrueBrain> HUNTING TIME!
20:00:34  <frosch123> did you succeed with encoding?
20:01:28  <TrueBrain> not even tried
20:01:34  <TrueBrain> just trying to feed a realsprite into the system :P
20:02:20  <TrueBrain> my action 0, 2 and 3 works
20:02:28  <frosch123> next is action1 then
20:02:30  <TrueBrain> now added an action 1 .. but it is a bit of a puzzle how it actual works :)
20:03:03  <TrueBrain> so far I wrote \x09\x01\x01 for action 1 .. and after that a "realsprite" (0xfd) referencing spritenum 0
20:03:17  <TrueBrain> I think I did that correctly .. at least, it now shows a blue ?
20:03:24  <TrueBrain> next is to actually add the sprite I guess :P
20:05:48  <michi_cc> Writing a container format 1 grf file might be easier for the first try as you don't have to worry about the separate sections.
20:06:16  <frosch123> https://github.com/OpenTTD/grfcodec/blob/master/docs/grf.txt <- quite sure that was linked at some time, but maybe you forgot
20:07:02  <TrueBrain> michi_cc: already a bit balls deep in v2 :P That would have been a good idea earlier :D
20:07:09  <TrueBrain> frosch123: absolutely forgot, tnx :)
20:07:17  <TrueBrain> we have documentation in so many places, it is not trackable for me :P
20:07:35  <TrueBrain> owh, right, sprite-section offset
20:07:39  <TrueBrain> that bullshit .. eeuuhhhh
20:08:41  <frosch123> https://github.com/OpenTTD/nml/blob/master/nml/output_grf.py#L48 <- nml code is here
20:09:26  <TrueBrain> yeah, did find that file
20:09:32  <TrueBrain> the issue is how it writes sprites
20:09:37  <TrueBrain> it jumps to the base-class sometimes
20:09:43  <TrueBrain> and it is very difficult to see if that actually does something
20:09:49  <TrueBrain> most of the time the answer is: no, it doesn't do anything :P
20:13:53  <glx> there's only one annoying thing for me in nfo realsprite, the order of parameters : x, y, height, length, ...
20:16:27  <TrueBrain> any of you happen to have a small sprite lz77 encoded at hand? Or a way I can get one easily? Just to test if everything else is working :P
20:18:04  <frosch123> open existing grf in hexeditor?
20:18:35  <TrueBrain> hard to find the right offset :D
20:18:41  <TrueBrain> and size
20:18:45  <frosch123> it's in the header :p
20:18:49  <TrueBrain> yeah ......
20:18:54  <TrueBrain> as I said: hard :P
20:18:57  <TrueBrain> but worth a swing
20:19:06  <glx> size is the first dword no ?
20:19:45  <glx> maybe after the magic thing
20:19:54  <TrueBrain> and so it goes ;)
20:21:55  <TrueBrain> as the size is relative
20:22:01  <TrueBrain> and after that you need to find the size of the sprite
20:22:02  <TrueBrain> etc :P
20:22:53  <frosch123> just copy all sprites
20:23:19  <frosch123> concatenate your nfo section with the graphics section of some other grf
20:28:15  <TrueBrain> @calc 0x44
20:28:15  <DorpsGek> TrueBrain: 68
20:29:09  <LordAro> TrueBrain: noob
20:29:22  <TrueBrain> :( My DNS server is down, I AM SORRY
20:29:48  <LordAro> your dns server does hex conversions?
20:30:04  <TrueBrain> you clearly missed a conversation a while ago :P
20:30:15  <glx> wasn't it the router ?
20:30:26  <TrueBrain> DHCP server, I think
20:30:28  <TrueBrain> can't even remember :P
20:30:48  * LordAro confused
20:31:12  <TrueBrain> a while ago a dude was gatekeeping that I used DorpsGek to do some calculations, claiming I should just know that, and blabla
20:31:20  <TrueBrain> he didn't survive long
20:31:24  <LordAro> i see
20:31:47  <TrueBrain> we have been referencing that often since :P
20:32:02  <TrueBrain> I simply assumed your noob also referenced that, but here we are :D
20:35:23  <TrueBrain> "The data sections is termindated by a WORD (format 1) / DWORD (format 2) of value 0."
20:35:25  <TrueBrain> found a typo :P
20:36:11  *** HerzogDeXtEr has quit IRC
20:36:23  <frosch123> truejames
20:36:36  <TrueBrain> :D
20:37:00  <TrueBrain> took me a bit to notice I cannot start sprite-num at 0 :P
20:37:03  <TrueBrain> NML even has a lovely "rant" about it :D
20:42:16  <TrueBrain> bah, I think I did everything correct, yet .. hmm .. guess I need to get the GRF out and run it with grfcodec :)
20:43:58  <TrueBrain> @base 16 10 294
20:43:58  <DorpsGek> TrueBrain: 660
20:45:12  <TrueBrain> @base 10 16 610
20:45:12  <DorpsGek> TrueBrain: 262
20:48:14  <TrueBrain> okay, sprite aligner now shows the sprite
20:48:17  <TrueBrain> just not showing up on the tile :P
20:51:23  <frosch123> probably the action2 missing some flags
20:51:49  <TrueBrain> there we go!
20:52:19  <TrueBrain> okay .. next thing I do not understand: I only have 256 set-ids
20:52:30  <TrueBrain> can I use a single set-id for all sprites of an industry?
20:52:42  <TrueBrain> or do I need to load them all in an individual?
20:52:53  <frosch123> you can reuse setids
20:53:22  <frosch123> usually its: action1 with sprites for first industry, action2..3 for first industry, action1 with sprites for second industry, ...
20:53:32  <TrueBrain> owh, those aren't global
20:53:33  <TrueBrain> gotcha
20:53:46  <TrueBrain> not always clear what survives how long :D
20:53:49  <frosch123> you can also share spritesets between industries by not redefining them
20:54:09  <TrueBrain> ah, like that
20:54:10  <TrueBrain> k
20:54:11  <glx> and an action 2 chain can use the same id
20:54:29  <TrueBrain> so the information need to be correct when referencing
20:54:32  <TrueBrain> the rest is: what-ever!
20:54:42  <TrueBrain> so an industry can only have 256 sprites, basically :P
20:54:44  <TrueBrain> "only" :D
20:55:07  <frosch123> no, you can have 64k sprites per spritelayout
20:55:37  <frosch123> 256 sets of 256 sprites each, redefineable for every action2
20:55:45  <TrueBrain> ah, lol .. okay ..
20:55:55  <TrueBrain> and even more, I guess, if you use all 256 tile-ids :P
20:56:15  <frosch123> by default each spriteset is indexed by construction stage (up to 4 sprites per spriteset), but you can change that
20:56:16  <glx> well you can modify a spritelayout dynamically anyway
20:56:49  <peter1138> TrueBrain, just google it
20:56:55  <frosch123> oh, wait, the number of sprites per spriteset is a word, so you can have 24M :p
20:57:59  <TrueBrain> frosch123: "For houses and industry tiles, this should be between 1 and 4 and specifies the number of different construction stages. Sprites after the first four are always ignored. See also action 2 and 3. "
20:58:04  <TrueBrain> that suggests that not being the case? :)
20:58:57  <frosch123> it's the default :)
20:59:18  <TrueBrain> "Sprites after the first four are always ignored." gave me the impression you cannot have more than 4 in a sprite-set
20:59:43  <frosch123> https://newgrf-specs.tt-wiki.net/wiki/Action2/Sprite_Layout#Flags_in_advanced_sprite_layouts <- set bit 1 in flags to have a different behavior
21:00:08  <TrueBrain> "if there are four or more sprites, the first four will be used for the four construction stages. Sprites after the first four are always ignored."
21:00:11  <TrueBrain> it also marks it there?
21:00:16  <glx> by default the game uses only first 4, but you can tell it to use different ones
21:00:38  <TrueBrain> owh, wait
21:00:44  <TrueBrain> that link gives the wrong impression of what you linked
21:00:45  <TrueBrain> lol
21:00:53  <TrueBrain> I fucking hate that of browsers
21:00:59  <frosch123> "Add offset to sprite, disable default usage of construction stage or railtype-offset"
21:01:24  <TrueBrain> okay, I would not have read in that what you just mentioned :D
21:01:25  <TrueBrain> haha
21:01:39  <TrueBrain> what does it even mean .. "add offset to sprite" :P
21:02:15  <frosch123> for industries it means: layout specifies a spriteset and a register for the sprite inside the set
21:02:24  <frosch123> you can compute the value of the register at runtime
21:02:44  <frosch123> dynamically pick sprites depending on date, phase of the moon, etc
21:02:52  <TrueBrain> what is a good approach .. a sprite-set per sprite for industry tiles, or a single sprite-set for a single industry?
21:03:55  <frosch123> start with the former
21:03:59  <frosch123> one sprite per spriteset
21:04:15  <frosch123> multiple sprites per spriteset is meant, if you show different sprites in the same position
21:04:25  <frosch123> construction stage, animation, cargo amount, ...
21:04:27  <TrueBrain> okay, make sense
21:04:44  <TrueBrain> so biggest industry TrueGRF can handle will be 16x16, basically, for now :)
21:04:50  <TrueBrain> pretty sure that is fine :P
21:05:00  <frosch123> isn't that the limit anyway?
21:05:09  <glx> 16x16 is huge
21:05:09  <TrueBrain> no clue
21:05:32  <frosch123> i think industries and objects are limited to 16x16 in the tile layout
21:05:42  <TrueBrain> okay ... guess next step is to figure out how to read a PNG in Rust, make it 8bpp, and lz77 the hell out of it :P
21:06:10  <TrueBrain> and figure out why I am using a Legacy palette ..
21:06:19  <DorpsGek> [OpenTTD/OpenTTD] LC-Zorg opened issue #9702: [Bug]: It is not possible to transfer vehicles sharing orders between groups (using Ctrl+drag doesn't work) https://git.io/J1CpR
21:06:20  <frosch123> every evening you end on the same "next thing" :p
21:06:31  <TrueBrain> frosch123: :D I know right ;)
21:06:37  <TrueBrain> well, made some big steps today, so I am not complaining
21:06:47  <frosch123> for palette, you need an action14
21:07:44  <frosch123> https://newgrf-specs.tt-wiki.net/wiki/Action14#GRF_palette_.28.22INFO.22_-.3E_.22PALS.22.29
21:15:28  <TrueBrain> tnx .. now to get it to work :P Lol
21:16:09  <frosch123> the nfo is in the spec, put that in front of your action8
21:17:42  <TrueBrain> before action8 was my last mistake, tnx :)
21:18:17  <frosch123> i am sure it's written somewhere on that page :)
21:18:52  <TrueBrain> yeah, reading is not my strongest skill :P
21:19:09  <TrueBrain> its funny, I am building this whole thing fully experimental
21:19:09  <TrueBrain> that is, I have no debug output
21:19:12  <TrueBrain> so .. just hoping the bytes align :P
21:19:48  <glx> oh usually the important info is hidden somewhere in a totally different place
21:19:56  <TrueBrain> https://cdn.discordapp.com/attachments/337701432230805505/910277990766747758/unknown.png <- proof I can load stuff :P
21:20:24  <TrueBrain> well, it is there: "The action is processed while scanning for GRFs and their action 8 descriptions. This scanning stops when encountering an action 8, thus action 14 needs to appear earlier in the GRF. "
21:30:24  <andythenorth> 16x16 is huge and won't locate on most maps without special measures :P
21:30:28  * andythenorth catching up
21:30:56  <andythenorth> no debug output = grf coding :P
21:33:30  <frosch123> https://gist.githubusercontent.com/frosch123/889b6478a6d5d7b10f89d9b014845331/raw/bf202561a30ab4e739d5c80e8fb0f2dff0182076/inspect_backtrace.png <- maybe tb implements that as emscripten hook :)
21:37:29  <TrueBrain> or you just finish that PR :P
21:39:20  <frosch123> it's just 7 years out of date :)
21:39:40  <andythenorth> did anything change since then? :)
21:39:46  * andythenorth doesn't see many svn commits
21:40:00  <frosch123> yeah, we stopped svn 3 years ago :p
21:40:34  <DorpsGek> [OpenTTD/OpenTTD] LC-Zorg commented on discussion #9687: Suggestion: Change behaviour of the «expand signal menu» btn https://git.io/JXig1
21:40:49  <andythenorth> we did what now? :o
21:40:51  <frosch123> anyway, i stopped it because noone would be able to use it anyway
21:41:11  <andythenorth> I would keep forgetting about it
21:41:51  <DorpsGek> [OpenTTD/OpenTTD] Rau117 commented on issue #9702: [Bug]: It is not possible to transfer vehicles sharing orders between groups (using Ctrl+drag doesn't work) https://git.io/J1CpR
21:44:39  <TrueBrain> wow, compiling PNG support is slow as fuck :P
21:44:43  <TrueBrain> from 5s compiles to 15s compile :P
21:46:00  <TrueBrain> well, I also get JPEG support etc
21:46:05  <TrueBrain> not sure I can strip that away :P
21:46:42  <DorpsGek> [OpenTTD/OpenTTD] LC-Zorg commented on issue #9702: [Bug]: It is not possible to transfer vehicles sharing orders between groups (using Ctrl+drag doesn't work) https://git.io/J1CpR
21:47:36  *** nielsm has quit IRC
21:47:43  *** WormnestAndroid has quit IRC
21:55:32  <andythenorth> 15s!
21:55:33  <andythenorth> ouch
21:55:54  *** sla_ro|master has quit IRC
21:56:36  <andythenorth> hmm these bug reports
21:56:45  <andythenorth> I sense petrol has met a discarded match
21:57:14  <andythenorth> if this was my project I'd close them now for tone
21:57:24  <andythenorth> however some people are better than me :P
22:04:57  <TrueBrain> right .. time for some lz77 .. eeuuuhhhh
22:05:50  <TrueBrain> the question is, is it normal lz77
22:05:52  <TrueBrain> or some special version :P
22:06:04  <TrueBrain> deflate::lz77 exists
22:06:07  <TrueBrain> but seems to do other things
22:06:49  <frosch123> pretty sure is no regular lz77
22:07:40  <TrueBrain> bah
22:07:44  <TrueBrain> means I need to pay attention :P
22:08:37  <frosch123> so far everyone copied the grfcodec algorithm 1:1
22:08:56  <TrueBrain> bit difficult in Rust :P
22:09:01  <frosch123> though nml source is easier to read
22:10:32  <TrueBrain> yeah, just typing over the C variant from NML
22:11:29  *** WormnestAndroid has joined #openttd
22:15:19  <DorpsGek> [OpenTTD/OpenTTD] Rau117 commented on issue #9702: [Bug]: It is not possible to transfer vehicles sharing orders between groups (using Ctrl+drag doesn't work) https://git.io/J1CpR
22:17:01  <LordAro> i mean, there's an easy way to find out
22:19:18  <TrueBrain> I love it when people can keep coming back to the same thing over and over and over and over and over again :P
22:19:22  <TrueBrain> little toddlers :)
22:19:56  <frosch123> didn't you already give a last warning?
22:22:13  <andythenorth> yeah that's over
22:22:25  <andythenorth> it's needlessly hostile
22:22:26  <andythenorth> ban
22:22:29  <frosch123> yay, cppcon videos are being uploaded now
22:22:44  <frosch123> LordAro: TrueBrain: strawpoll?
22:22:49  <frosch123> or poll on reddit?
22:23:36  <TrueBrain> I don't disagree; and the honours is all LordAro .. he has been wanting to this for a few weeks now :P
22:30:14  <frosch123> the effects of blocking are funny. not that it matters here, but it blocks users forking the repositories, and stops counting their past contributions
22:30:26  <TrueBrain> haha
22:30:28  <TrueBrain> nasty
22:31:28  <frosch123> https://docs.github.com/en/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization
22:31:46  <frosch123> they do not even get notifications
22:31:59  <TrueBrain> lol
22:32:06  <TrueBrain> right, okay, first attempt on lz77 is a bit of a failure :P
22:38:58  <TrueBrain> meh; and I can't find what would be wrong :P
22:39:37  <TrueBrain> owh, dimensions maybe
22:40:54  <TrueBrain> @base 10 16 114
22:40:54  <DorpsGek> TrueBrain: 72
22:41:42  <TrueBrain> it loads something
22:41:45  <TrueBrain> nothing of any sanity
22:41:49  <TrueBrain> but at least it aint broken :P
22:44:13  <TrueBrain> https://cdn.discordapp.com/attachments/337701432230805505/910299192394657792/unknown.png
22:44:28  <TrueBrain> (I am outputting the "r" channel as if it the palette index :P)
22:45:25  <TrueBrain> okay, there is still something fishy ...
22:46:59  <frosch123> yeah, if the source image uses a palette, then using the r channel would still resemble some kind of image
22:47:06  <frosch123> this is just noise :)
22:48:25  <DorpsGek> [OpenTTD/OpenTTD] LordAro merged pull request #9701: Codechange: Remove CargoSpec::multipliertowngrowth which is unused https://git.io/J1CUs
22:48:37  <LordAro> ooh, has Rau inevitably fucked up again?
22:48:50  <frosch123> yes, 9702
22:49:10  <frosch123> the floor is yours :) just make sure to not state any reason, or you will have to defend it tomorrow on reddit :p
22:49:53  <LordAro> https://pasteboard.co/1dk0fuA4AqN3.png i mean, i'm quite happy to do this
22:53:02  <DorpsGek> [OpenTTD/OpenTTD] LordAro commented on issue #9702: [Bug]: It is not possible to transfer vehicles sharing orders between groups (using Ctrl+drag doesn't work) https://git.io/J1CpR
22:53:04  <LordAro> in the meantime
22:53:46  <TrueBrain> but picking up a torc

Powered by YARRSTE version: svn-trunk