IRC logs for #openttd on OFTC at 2020-06-17
        
        
        
            ⏴ go to previous day
00:00:39  <TrueBrain> main difference I guess is that it can be in 16bit mode
 
00:00:47  <TrueBrain> and code constantly changes between 8bit and 16bit mode, all the time
 
00:00:51  <TrueBrain> which is very annoying :P
 
00:00:59  <glx> and more registers it seems
 
00:01:12  <TrueBrain> not ones that are useful
 
00:01:23  <TrueBrain> there is "pbr" and "dbr", but that is only to address 24bit pointers (instead of 16bit)
 
00:01:39  <TrueBrain> but those are the banks for pc and d, which is not something you can use for calculation
 
00:01:54  <TrueBrain> so still a / x / y register ..  well, a is called c here, because it is 16bit :P
 
00:02:43  <TrueBrain> (CPU-specs are weird in those details .. names .. references ...)
 
00:22:54  <glx> just reading wiki, switching mode seems to use weird ops
 
00:23:56  <TrueBrain> "This is the only instruction in the 6502 family where the flags affected depends on the addressing mode."
 
00:24:00  <TrueBrain> I love those ... exceptions
 
00:25:21  <glx> and even in native mode you can also be partially in 8bit
 
00:26:09  <glx> it really looks like a hack of 6502 for 16bit
 
00:26:45  <TrueBrain> for example, if you switch from 16bit to 8bit
 
00:26:55  <TrueBrain> C keeps its higher-bits
 
00:26:58  <TrueBrain> but X and Y are cleaned
 
00:27:05  <TrueBrain> which makes next to ZERO sense
 
00:27:17  <TrueBrain> (well, most likely it does in the microcode, ofc :P)
 
00:28:04  <glx> yeah and switching back to 16bit doesn't touch accumulator bits but still resets MSB of X and Y
 
00:28:27  <TrueBrain> pretty difficult to implement, I found out
 
00:28:29  <TrueBrain> well .. not difficult ..
 
00:28:35  <TrueBrain> you need to keep paying attention
 
00:28:48  <TrueBrain>     cpu.c = (cpu.c & 0xff00) + value
 
00:28:52  <glx> oh and it also depends on m flag
 
00:29:05  <TrueBrain> or the x, depending what register :P
 
00:29:35  <TrueBrain> and mind the (DIRECT,X) and (DIRECT),Y
 
00:29:44  <TrueBrain> which means two totally different things
 
00:29:51  <TrueBrain> (found out the hard way)
 
00:30:13  <glx> 6502 accessing modes are easy
 
00:30:15  <TrueBrain> but .. as that is with CPUs ... easy to bitch about the specs now .. implementing it was most likely not so easy ;)
 
00:30:29  <TrueBrain> why did you do anything with a 6502?
 
00:31:00  <glx> never touched, but I watched ben eater videos on youtube
 
00:31:27  <TrueBrain> ah, that crazy bastard :P
 
00:31:29  <TrueBrain> (in a positive sense)
 
00:31:48  <TrueBrain> I like his CPU on breadboard :)
 
00:32:20  <glx> and I also follow someone writing a NES game on twitch
 
00:32:52  <TrueBrain> yeah, the CPU I am working on is the SNES ;)
 
00:34:34  <TrueBrain> okay, I really do not know why my pc gets corrupted .. I am missing something :D
 
00:34:41  <TrueBrain> implemented a lot of other instructions .. but alas ..
 
00:35:21  <glx> and you can't trace PC changes ?
 
00:35:42  <TrueBrain> I don't track PC really
 
00:36:01  <TrueBrain> (as you might hav eguessed .. I am decompiling it to Python and executing that, instead of emulation every opcode)
 
00:36:10  <TrueBrain> so PC is irrelevant to me .. except when it is not :D
 
00:36:18  <glx> seems to be a nice debug option
 
00:37:15  <glx> yeah you do it libEMU style
 
00:37:18  <TrueBrain> more things are not completely correct .. and so far it has been that every bug I fix, a lot of other problems resolve too :P
 
00:37:35  <TrueBrain> yeah .. I really like that approach :) As my goal is to take a peek under the hood, understand how they did stuff
 
00:37:39  <TrueBrain> that requires code to be in an AST
 
00:37:45  <TrueBrain> and do .. a lot of manipulation on it :)
 
00:38:30  <glx> and it's probably even simpler with python
 
00:38:41  *** FLHerne has joined #openttd
 
00:38:50  <TrueBrain> writing those AST visitors, yes
 
00:39:00  <TrueBrain> but the lack of real interrupts is a bit more challenging than I expected
 
00:39:04  <TrueBrain> but generators mostly solved that issue
 
00:39:25  <TrueBrain> but my codebase is already 3300 lines of code :P
 
00:39:42  <glx> yeah python tends to grow fast :)
 
00:41:52  <TrueBrain> this is also really complex :P
 
00:41:59  <TrueBrain> libemu was larger, so what-ever :P
 
00:47:28  <glx> oh no it's really the same opcode, but data length changes
 
00:47:51  <glx> so even on your side it's not easy
 
00:48:31  <glx> but an error in this handling could corrupt PC I guess
 
00:50:10  <TrueBrain> yeah, but I think I fixed most bugs related to that
 
00:50:14  <TrueBrain> that documentation is pretty well done
 
00:50:21  <TrueBrain> so for every instruction it mentioned what flags to watch out for
 
00:50:33  <TrueBrain> but it made decoding at first very difficult
 
00:50:53  <glx> yeah this CPU is really a hack :)
 
00:51:00  <TrueBrain> yeah .. and that is why I love it :)
 
00:51:06  <TrueBrain> and I mean .. I already got an image on the screen :D
 
00:51:16  <TrueBrain> not always the right one .. but details details
 
00:51:21  <TrueBrain> right, enough for today .. night!
 
00:51:59  <glx> yeah it's a very good start if you get an output in the right place (maybe not with the right sprites)
 
01:20:12  *** Progman has joined #openttd
 
01:21:52  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz updated pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf9yI
 
01:31:10  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz updated pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf9yI
 
01:33:16  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz updated pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf9yI
 
01:37:26  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz commented on pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf578
 
02:24:36  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz updated pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf9yI
 
03:00:57  *** karoline[m] has joined #openttd
 
03:07:50  *** gelignite_ has joined #openttd
 
04:07:32  *** snail_UES_ has joined #openttd
 
04:11:31  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz updated pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf9yI
 
04:13:57  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz updated pull request #8217: Port GUI rendering improvements from JGRPP https://git.io/Jf9yI
 
05:44:13  *** einar[m]1 has joined #openttd
 
06:17:58  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz commented on issue #8213: Crash while maximizing the window on first run after compilation https://git.io/JfyF0
 
06:23:44  <DorpsGek_III> [OpenTTD/OpenTTD] techgeeknz commented on issue #8213: Crash while maximizing the window on first run after compilation https://git.io/JfyF0
 
06:45:48  *** Flygon_ has joined #openttd
 
07:13:53  *** dihedral has joined #openttd
 
07:27:01  *** Speeder__ has joined #openttd
 
07:51:10  *** Corns[m] has joined #openttd
 
08:05:39  *** sla_ro|master has joined #openttd
 
08:16:26  *** arikover has joined #openttd
 
08:22:12  *** andythenorth has joined #openttd
 
08:25:30  *** lastmikoi has joined #openttd
 
09:40:31  *** welterde has joined #openttd
 
10:30:11  *** Progman has joined #openttd
 
10:35:11  <FLHerne> andythenorth, LordAro: In British English, can you "cheese a pizza" in the same sense as salt, sugar, batter, etc... ?
 
10:35:38  <FLHerne> (survey to inform an argument in a different channel :p)
 
10:36:07  <LordAro> i wouldn't claim it to be any sort of proper English
 
10:36:08  <FLHerne> Not that battered pizza is a thing anywhere except, presumably, Glasgow
 
10:36:14  <LordAro> but i'd understand what you meant
 
10:36:54  <FLHerne> I understand it, but to me it just sounds wrong
 
10:37:15  <FLHerne> Of course, there's clearly no explicable reason /why/ it should be wrong when the others are fine
 
10:37:27  <LordAro> it's the whole "verbing a noun" thing
 
10:38:27  <andythenorth> you can cheese out
 
10:38:36  <andythenorth> in Jeeves and Wooster
 
10:38:52  <andythenorth> not sure you can currently cheese a pizza
 
10:39:51  <andythenorth> my kids find it ridiculous that anyone would say 'cheese a pizza'
 
10:39:55  <andythenorth> so that's categorical
 
10:43:08  <EER> (non-native speaker) If you asked me to cheese your pizza, I would prepare a bechemel-like cheese sauce and throw your pizza in it until it was properly cheesed.
 
10:43:50  <EER> Depending on the size of pizza and pot it may have to be folded to undergo cheesing
 
10:44:06  <andythenorth> also we reached peak everything
 
10:44:15  <andythenorth> fake solar power calculators
 
10:45:50  <EER> fake solar power?! I am aghast
 
10:45:59  <LordAro> andythenorth: have you seen Matt Parker's calculator reviews?
 
10:47:21  <Eddi|zuHause> man, i haven't watched those in years
 
10:50:34  <andythenorth> there is only one calculator, Casio FX82B
 
10:50:51  <andythenorth> ideally with the metal cover ripped off and everything covered in marker pen
 
10:57:45  <Eddi|zuHause> i have a fx7400G, with 20 year old batteries in it that are probably not very healthy
 
10:58:37  *** Aileen[m] has joined #openttd
 
10:59:32  <andythenorth> can't remember if it was 3 colour display or not
 
11:00:16  *** Wormnest has joined #openttd
 
11:01:18  <Eddi|zuHause> yes, that looks like a successor to mine
 
11:04:44  <b_jonas> How close to the edge of the map can new oil rigs spawn? I'm wondering if I should sink some unused land to make them more likely to appear
 
11:06:19  <_dp_> b_jonas, it's configurable in settings
 
11:06:48  <Eddi|zuHause> no, that setting is for refineries
 
11:07:10  <_dp_> pretty sure rigs use it as well
 
11:07:12  <Eddi|zuHause> oil rigs can go anywhere, but they need a large enough body of water with no obstructions around it
 
11:09:19  <Eddi|zuHause> _dp_: ok, that's news to me
 
11:16:59  <b_jonas> then sinking some land on the northeast side of my map could help
 
11:19:31  <b_jonas> whereas I should raise some land on the southeast to give more space for the city to grow, because I don't care for oil rigs there
 
12:06:07  *** DorpsGek has joined #openttd
 
12:06:07  *** ChanServ sets mode: +o DorpsGek
 
12:27:02  *** gelignite has joined #openttd
 
12:57:20  *** karl[m] has joined #openttd
 
13:06:56  *** vanessa[m] has joined #openttd
 
13:20:31  *** andythenorth_ has joined #openttd
 
13:51:04  *** Wormnest has joined #openttd
 
13:58:52  <supermop_Home> andythenorth_ to cheese implies to me it must be something absurd beyond the normal application of cheese to a pizza
 
13:59:22  <supermop_Home> as the bizarre wording hints at some kind of 90s marketing campaign
 
14:00:01  <supermop_Home> also the only calculator in my house growing up was 12c
 
14:00:30  <supermop_Home> dad insisted i learn rpn for some reason
 
14:01:42  <supermop_Home> he would tell stories of how when he was in grad school he bought a '57 BelAire for $300 and his first HP calculator for $350
 
14:05:12  <supermop_Home> i think he still has that somewhere around the house
 
14:08:46  <andythenorth_> innovation is remarkable
 
14:13:21  <supermop_Home> did you see my pacer andy?
 
14:14:50  <andythenorth_> supermop_Home no o_O
 
14:20:57  <supermop_Home> i need a way to put a bounty out on the RES design manual binder
 
14:21:12  <supermop_Home> sure those turn up for sale from time to time
 
14:23:50  <andythenorth_> double arrow disturbs me greatly there :)
 
14:59:06  *** WormnestAndroid has quit IRC
 
14:59:19  *** WormnestAndroid has joined #openttd
 
14:59:26  <_dp_> these bloody desyncs are getting to a point where 80 or so ticks that pass till server gets the message completely hide all the evidence :(
 
15:00:12  *** snail_UES_ has joined #openttd
 
15:10:49  *** WormnestAndroid has quit IRC
 
15:11:02  *** WormnestAndroid has joined #openttd
 
15:11:38  <_dp_> hmm.. I wonder if I saved random state for every frame and forced it back for those 80 frames would it make a difference...
 
16:30:45  <nielsm> newbridges would still be good tho
 
16:32:47  <supermop_Home> anyway to make a bridge in nml would be nice thouh
 
16:33:05  <supermop_Home> likewise with stations
 
16:35:59  <nielsm>  have anyone worked on newbridges before?
 
16:36:20  <nielsm> even just a spec proposal
 
16:45:00  <glx> current bridge spec seems to use the very old way without action1
 
16:45:05  <supermop_Home> maybe like 8 years ago i probably rambled on about a wishlist of ponies i'd like to see in bridges
 
16:46:01  <supermop_Home> mostly about beable to have different patterns of sprites than the current hardcoded ones
 
16:46:36  <supermop_Home> different costs / types per waytype as well
 
16:46:50  <supermop_Home> (TTO monorail bridge)
 
16:53:25  *** Wormnest has joined #openttd
 
16:53:43  <nielsm> my current idea is that each bridge type has one or more segment types, a segment type has a length in tiles and each tile has a tilelayout
 
16:54:18  <nielsm> a tile can also indicate that it has pylons and how they should be drawn, and the maximum height those pylong can be built over
 
16:55:21  <nielsm> (can also be extended to support maximum water depth pylons can be built in, if I ever finish deepwater)
 
16:55:56  <nielsm> and then a cost per tile or per segment, perhaps per pylon height level
 
16:57:09  <nielsm> building a bridge could allow two modes, automatic or manual, in automatic the game selects an appropriate combination of segments to construct the bridge, in manual the player selects which segments in which order
 
16:58:36  <nielsm> I suppose having manual construction would need more data in the map array to store those, or have bridges as a new object type with extra data outside the map array=
 
17:04:40  <supermop_Home> that all sounds good
 
17:05:04  <supermop_Home> with maybe a deck thickness
 
17:05:20  <nielsm> you mean tile height of bridge deck?
 
17:05:28  <nielsm> i.e. depth below bridge that can not be obstructed
 
17:05:57  <supermop_Home> for objects/stations that allow bridge above a certain height
 
17:06:54  <supermop_Home> so underdeck truss or similar 'thick' bridge could not be built over a station where an overdeck truss could
 
17:07:12  <nielsm> that could also solve the issue of the thin aqueducts looking silly
 
17:07:46  <supermop_Home> either cannot build under 'thick' bridges, or must allow extra clearance
 
17:08:08  <nielsm> hm maybe always require at least one free tile height below a bridge
 
17:22:24  <spnda> I just tried building my NRS patch and uh.... "Windows headers require the default packing option. Changing this can lead to memory corruption. This diagnostic can be disabled by building with WINDOWS_IGNORE_PACKING_MISMATCH defined."
 
17:22:38  <spnda> New error, never seen this before. Does anyone here know that?
 
17:23:17  <nielsm> I think we need more context
 
17:23:29  <nielsm> and did you try making a full clean and rebuild?
 
17:24:22  <nielsm> is it building one particular file, or all files?
 
17:24:27  <spnda> it's throwing this error from a static_assert in winnt.h, which from what I see is part of the Windows SDK
 
17:24:39  <spnda> the error comes from multiple files that seem to refernce that
 
17:26:05  <nielsm> go nuclear then: toggle the build option to make the compiler dump the full preprocessed source along the object file
 
17:26:23  <nielsm> and then search for "pragma pack" in that preprocessed source
 
17:26:28  <nielsm> and you can hopefully trace it from there
 
17:27:06  <glx> check if master builds fine first
 
17:28:22  <spnda> it also fails on master
 
17:28:35  <glx> because I know we change packing at some places, but usually we restore the old one right after
 
17:29:53  <spnda> hmm maybe this is just a issue with my windows sdk or so....
 
17:39:04  <spnda> also weird that this is ONLY happening on release config
 
17:39:43  <glx> release uses different optimisations
 
17:41:36  <DorpsGek_III> [OpenTTD/OpenTTD] spnda updated pull request #7955: WIP Feature: NewGRF Road Stops (Feature 14) https://git.io/JvLQL
 
17:42:33  <spnda> wait what the hell did I do? "This branch is 391 commits ahead, 644 commits behind OpenTTD:master. "
 
17:44:22  <nielsm> merge instead of rebase?
 
17:44:51  <spnda> i don't ever remember rebasing/merging whatever
 
17:44:56  <spnda> but I must've done something at some point
 
17:44:58  <nielsm> no merge should also not make that kind of divergence
 
17:46:43  <spnda> i apparently commited all of them... what... should I force rmeove all commits that shouldn't belong to my PR?
 
17:46:50  <glx> spnda: rebase HEAD~1 --onto master
 
17:47:44  <spnda> I have to resolve some conflicts... never done this before. how should i resolve the conflicts?
 
17:48:24  <nielsm> edit the conflicted code so it does the right thing, add the merged file, then continue the rebase
 
17:48:51  *** HerzogDeXtEr has joined #openttd
 
17:49:12  <glx> I configured winmerge as mergetool, but the manual way works too
 
17:50:59  <glx> oh of course you'll have conflicts in all project files
 
17:54:37  <spnda> glx: I just did that rebase and now in "git status" I see a LOOOOOOOONG list of various object files inside OpenTTD/objs/Win32/Debug. What's this?
 
17:55:46  <glx> it's where build happened before the cmake switch
 
18:01:59  <spnda> uh did I break the commit checker on my PR?
 
18:05:10  <spnda> can I not remove changes that I don't want in my commit with "git stash" when rebasing?
 
18:05:26  <LordAro> not if they're already staged
 
18:05:33  <spnda> i've rebased and I've commited all the changes I want
 
18:06:10  <LordAro> is your master branch actually up to date?
 
18:06:19  <LordAro> you should be rebasing against origin/master to ensure it
 
18:06:29  <LordAro> because that's a huge mess right now
 
18:07:45  <spnda> yes, my master branch is even with OpenTTD:master
 
18:10:47  <DorpsGek_III> [OpenTTD/OpenTTD] spnda updated pull request #7955: WIP Feature: NewGRF Road Stops (Feature 14) https://git.io/JvLQL
 
18:12:27  <spnda> I guess it's fixed now? pfew
 
18:15:23  <glx> almost, you forgot to edit src/CMakeFiles.txt
 
18:23:40  <spnda> ok, done that. Now, from where would I build the game? I don't see any VS Project files anywhere anymore and I have no idea how to really use CMake
 
18:24:37  <LordAro> glx: really need those updated build docs
 
18:25:00  <glx> well compiling.md contains basic instructions
 
18:28:20  <glx> oh you failed to fix a conflict in road_gui.cpp
 
18:33:15  <spnda> 1) when opening the folder cmake does get detected but I have no extra build buttons or whatever
 
18:33:28  <spnda> 2) glx: which conflict, I don't see any in the PR or in git
 
18:36:05  <glx> once cmake step passed you build like before
 
18:36:35  *** Gustavo6046 has joined #openttd
 
18:37:12  <spnda> either im missing out on something or nope
 
18:37:28  <spnda> I don't have the options anywhere in VS 2019 to build or whatever
 
18:37:51  <nielsm> find the CMakeLists.txt file in the solution browser in VS
 
18:38:03  <nielsm> there's a bunch of things to configure the project then
 
18:40:20  <spnda> inside the cmake settings i have one config, which seems to have found all of my tools etc
 
18:40:26  <spnda> still don't see any build options anywhere
 
18:41:12  <spnda> I only see Generate Cache
 
18:41:25  <spnda> And even that throws CMake errors in CreateRegression.cmake
 
18:41:45  <glx> generate cache is in project menu
 
19:05:48  <spnda> where does CMake look for vcpkg packages?
 
19:05:56  <spnda> I've got all packages installed but it can't find them
 
19:11:50  <glx> oh you need to set the triplet
 
19:12:34  <spnda> i just copied what you've got in COMPILING.md
 
19:12:46  <spnda> "vcpkg install liblzma:x64-windows-static libpng:x64-windows-static lzo:x64-windows-static zlib:x64-windows-static"
 
19:13:04  <spnda> (I've had these packages for a while and they've never caused problems"
 
19:15:07  <glx> you need to add VCPKG_TARGET_TRIPLET
 
19:31:11  *** Progman has joined #openttd
 
19:41:28  <spnda> glx: would the value of that not be a path to the vcpkg dir or installation?
 
19:42:39  <glx> as it worked before cmake
 
19:45:34  <spnda> Can't find the packages and also has a bunch of Regex compilation errors
 
19:47:49  <glx> hmm ok regex errors are weird
 
19:50:10  <glx> something to look at later :)
 
19:52:19  <glx> hmm ok VCPKG doesn't seem to be detected by VS
 
19:53:19  <glx> you probably need to run "vcpkg integrate install"
 
19:54:08  <spnda> ok that seems to have worked, I think
 
19:54:35  <spnda> Probably should add that to the COMPILING.md
 
19:55:59  <glx> well it's in vcpkg quick start instructions, link is in compiling.md ;)
 
19:56:37  <spnda> eh i didn't see it and i doubt many others will, but sure.
 
19:56:56  <spnda> so uh, what's with these regex errors now. You say that they come from spaces inside the path?
 
19:57:36  <glx> it's probably because there are spaces in the path, but I need to test that
 
19:59:43  <spnda> spaces aren't it either
 
20:04:10  *** Speeder_ has joined #openttd
 
20:37:05  <TrueBrain> w00p, I finally fixed my bug I had yesterday .... my gfx decoder is still not showing any useful renders .. but my decompiler is doing a lot more now :D Sweet :D
 
20:56:05  <andythenorth_> actually send tanks, I am playing Blitz
 
21:03:02  <glx> spnda: I think it's the "+" they have meaning in regexp, and we should escape them I guess
 
21:11:00  <spnda> yeah, removing the ++ fixes it yes. I can now build again. Thanks, and I hope you can find an easy fix
 
21:13:34  *** jottyfan has joined #openttd
 
21:15:10  <DorpsGek_III> [OpenTTD/OpenTTD] spnda updated pull request #7955: WIP Feature: NewGRF Road Stops (Feature 14) https://git.io/JvLQL
 
21:16:44  <spnda> So I think I've got it error-free now. Now it's really just adding some extra features for NRS
 
21:52:45  <andythenorth_> shall we talk about newgrf ponies? o_O
 
21:57:16  <Wolf01> Holy shit, I linked all the platforms inb GoG Galaxy... I have so many games I don't know what to play
 
21:58:16  <Wolf01> An a lot of duplicated games too
 
22:14:18  <Eddi|zuHause> that's why i don't get bundles
 
22:14:35  <Eddi|zuHause> and even most of the free games i got from <wherever> i haven't played
 
22:14:59  <supermop_Home> we need NewTrees
 
22:17:45  <andythenorth_> in which case Iron Horse is mis-named
 
22:18:08  <andythenorth_> because Iron Horse would be more applicable to a USA version
 
22:18:22  <andythenorth_> I'd have to rename it to Iron Pont
 
22:19:06  <supermop_Home> are you just randomly picking up your conversation from 1-2 days ago in medias res?
 
22:27:58  *** arikover has joined #openttd
 
22:31:54  <nielsm> NewTrees is a risky endavour I think, it'll be very easy to make it too simple to be interesting, or too complex to be performant
 
22:32:33  <nielsm> and when talking vegetation the question of climate zones is almost inevitable
 
22:36:08  <nielsm> e.g. collecting stats on a 15x15 tile area around the tile you want to grow a tree on, just to figure out general things about elevation, proximity to water/snow/desert/built up areas
 
22:37:26  <nielsm> and possibly rules about kinds of vegetation that just don't grow together (e.g. "if tree type B is nearby in sufficient numbers then tree type A population should decrease" rules)
 
22:37:56  <nielsm> and if forest formation should somehow be controlled by it too
 
22:39:41  <nielsm> and what about recognising forestry/plantation industries and have those naturally spread trees of related types?
 
22:40:21  <supermop_Home> i mostly just want to know the average slope of a tile (based on 8 surrounding tiles)
 
22:40:58  <supermop_Home> to differentiate based on what side of the hill its on
 
22:41:56  <supermop_Home> which could be for like pines on the north slope etc
 
22:42:26  <supermop_Home> but i mostly want it to just the station transparency to shade trees on the shaded slopes of hills
 
22:42:30  <nielsm> my point is just that if you want to allow customisation of trees, the rabbit hole goes very deep and you will almost certainly have to choose somewhere to stop descending and inevitably disappoint someone :)
 
22:42:52  <supermop_Home> so you can still see the slope of land without turning off trees
 
22:46:33  <_dp_> imo first thing to be done about trees should be savegame size fix
 
22:46:47  <_dp_> otherwise it will just end in "unfixable coz newgrf" state
 
22:50:07  *** jottyfan has joined #openttd
 
22:56:54  <nielsm> if you mean that trees are effectively noise in the map array that cause it to compress poorly and thus bloat the size of the save, I'm not sure how you'd fix that without removing trees entirely
 
22:57:04  <_dp_> nielsm, enabling trees increases savegame size like 3-4x
 
22:57:14  <FLHerne> nielsm: An exorbitant proportion of savegame space is taken up with storing the exact state of every tree
 
22:57:18  <_dp_> nielsm, procedural trees, move all randomness out of the map
 
22:57:23  <FLHerne> Which no-one cares about in the slightest
 
22:57:55  <_dp_> FLHerne, savegame size matters a lot in multiplayer
 
22:58:16  <FLHerne> _dp_: I mean they don't care about the tree state, not the size :p
 
22:58:52  <FLHerne> You could just randomly place tree types on load, and literally no-one would notice
 
22:59:19  <FLHerne> Well, I'm sure there's some Simuscape person painstakingly choosing each tree...
 
22:59:50  <nielsm> well it has to be the same tiles that have trees, and trees on a tile could never be allowed to die out if the current tree simulation is kept but every client potentially has different trees
 
22:59:51  <_dp_> it's nice to have some trees just coz it looks better, but trees are those exactly doesn't matetr
 
23:02:20  <nielsm> you may as well then just make trees not exist as such and remove the trees affect town rating mechanics
 
23:02:26  <_dp_> nielsm, they can have same trees if all tree data is just a function of tile and tick for example
 
23:03:07  <_dp_> nielsm, so only a fact that tile has trees is stored
 
23:03:46  <_dp_> nielsm, that way even existing gameplay can be kept intact
 
23:03:53  <_dp_> only spreading trees would be a bit tricky
 
23:04:55  <nielsm> spnda: "git reflog" to see what your previous heads were (on that and other branches) so you can hard reset back to those and push the right thing back :)
 
23:05:44  <spnda> nah i've got no idea what you guys were talking about so idk, someone else can take that over
 
23:07:56  <spnda> i still think boolean values are quite a good addition but I don't have a clue how nml works internally so yeah, I would rather let someone else implement it
 
23:08:52  <spnda> i'll rather focus on finishing implementing my NRS GRF data into NML
 
23:09:42  <nielsm> I think making trees "virtual" would take away a lot of the charm the game has and would not be popular at all as a forced change. it's definitely not something that could be made reasonably controlled by newgrf, it would rather have to be a game setting then
 
23:09:49  <nielsm> but it's late and time to sleep
 
23:09:57  <nielsm> no more good arguments can be produced today
 
23:13:16  <supermop_Home> i certainly would care about the trees
 
23:13:17  <_dp_> nielsm, it can be optional, like just adding "random tree type" that will be placed by mapgen, but all manual trees will still work witthout changes
 
23:14:13  <supermop_Home> and what i'd want for treetypes would be things like 'pine trees go here' 'oak trees go there' which could maybe be procedural
 
23:14:48  <spnda> also is there something up with the OpenTTD commit checkers? They're all failing
 
23:36:25  <supermop_Home> vendor presentation with wine
 
23:36:51  <supermop_Home> they sent each of us a bottle
 
23:37:00  <supermop_Home> but now i have to be on video
 
23:41:37  *** jottyfan has joined #openttd
 
continue to next day ⏵