Config
Log for #openttd on 4th January 2022:
Times are UTC Toggle Colours
00:27:40  *** snail_UES_ has joined #openttd
00:45:37  *** roadt__ has joined #openttd
00:50:43  *** esselfe has joined #openttd
00:52:40  *** roadt_ has quit IRC
01:14:18  *** Gustavo6046 has quit IRC
01:19:41  *** Gustavo6046 has joined #openttd
02:33:49  *** Wormnest has quit IRC
03:12:54  *** Flygon has joined #openttd
03:36:00  *** glx has quit IRC
03:47:53  *** D-HUND has joined #openttd
03:51:16  *** debdog has quit IRC
03:54:08  *** D-HUND is now known as debdog
05:59:50  <supermop_Home_> with rams you need to make sure they are in the right order
05:59:54  <supermop_Home_> *trams
06:00:25  <supermop_Home_> if not you can have one duck into a depot so the one behind can pass it
06:01:16  <supermop_Home_> ships usually work well, espescially if they have some slack that can allow a late running one to catch up
06:03:40  <supermop_Home_> vehicles will have trouble if their start date is set in the past, or if it is never possible to catch up
06:04:53  <supermop_Home_> also, if a vehicle is 30 days from getting to order 1, but its start date is tomorrow, its going to be hopelessly late unless order 1 has a long lay up time
06:07:04  <supermop_Home_> if you have a clump of 3 ships on a 90 day timetable and set the start date for the last ship for when it reaches order 1, ships 1 and 2 will be 60 and 30 days late already - it may take them years to catch up
06:07:39  <supermop_Home_> if instead you set the start date for the first ship, ships 2 and 3 will be 30 and 60 days early
06:21:18  *** snail_UES_ has quit IRC
07:25:01  *** sla_ro|master has joined #openttd
07:52:28  *** tokai|noir has joined #openttd
07:52:28  *** ChanServ sets mode: +v tokai|noir
07:59:21  *** tokai has quit IRC
08:17:41  *** Gustavo6046 has quit IRC
08:28:12  *** Wolf01 has joined #openttd
08:55:23  *** WormnestAndroid has quit IRC
09:07:14  *** andythenorth has joined #openttd
10:22:55  *** roadt__ has quit IRC
10:23:08  *** roadt__ has joined #openttd
11:25:07  <TrueBrain> orudge: nightlies are failing: "* You must first sign the relevant contracts online. (1048) (1048)" on MacOS Notarize .. lol
12:04:16  *** WormnestAndroid has joined #openttd
12:57:16  <peter1138> okay how do i store an attribute table in SQL... where the value could be decimal, or text, or...
12:57:40  <peter1138> I could just lazily use varchar and enforce it in code.
12:59:04  <TrueBrain> both!
13:03:29  <peter1138> Yeah, I could have separate columns depending on the type :/
13:10:11  <milek7> don't bother and store attributes as json in row :P
13:13:29  *** WormnestAndroid has quit IRC
13:13:42  *** WormnestAndroid has joined #openttd
13:17:35  <peter1138> It's not the worst idea but... it is also the worst idea.
13:18:00  <TrueBrain> and one is not like the other, right? :D
13:37:29  <peter1138> Although JSON would solve the issue of having to do joins as well... Hmm
13:40:13  *** snail_UES_ has joined #openttd
13:49:48  <TrueBrain> https://truebrain.github.io/TrueGRF/ <- first iteration of "ground sprite" support .. you can now edit tiles and change their ground-sprite.
13:50:25  <TrueBrain> I went for the lazy solution, and every tile has his own spriteset, even if they share ground-sprites with others :P
13:50:41  <TrueBrain> GRF is still only 500KB
13:52:03  <Wolf01> <peter1138> okay how do i store an attribute table in SQL... where the value could be decimal, or text, or... <- I use 2, 3 different typed fields and one "data type" field, then I read the right field according with the declared type
13:52:19  <TrueBrain> transparent buildings still aren't working, and I don't know why not :P
13:54:02  <TrueBrain> I think I need frosch to help me out with that :P
13:57:52  <TrueBrain> I wonder if the issue is that action2 ignores the transparent setting or something .. but then why is it a flag to begin with
13:59:06  *** snail_UES_ has quit IRC
14:19:20  *** glx has joined #openttd
14:19:20  *** ChanServ sets mode: +v glx
14:27:03  <glx> TrueBrain: I think there's a mix of bits 14-15 and 30
14:30:09  <glx> but using 0 for both should be enough
14:30:34  <supermop_Home_> TrueBrain can i drag existing sprites from other industries?
14:39:52  <TrueBrain> supermop_Home_: right click, copy image, click on another tile, click on the image, hit paste
14:40:03  <TrueBrain> I have yet to fix that you can paste anywhere in the window .. now you first have to click the HTML element before it works :)
14:40:17  <TrueBrain> glx: bit 14-15 is set to 2, to have colour remapping
14:40:21  <TrueBrain> but the rest is 0
14:41:27  <TrueBrain> funny, specs say bit 14-15, but in reality there is a bit 14, and a bit 15 :P
14:41:41  <TrueBrain> 3 is also a valid value, for example :)
14:48:41  <glx> transparency seems to work for me
14:49:02  <glx> it's just the transparent building menu option doesn't affect industries
14:49:08  <TrueBrain> ......
14:49:12  <TrueBrain> you got to be kidding me
14:49:25  <TrueBrain> tnx
14:49:37  <TrueBrain> the grf-specs keeps mentioning the toggle, that it toggles industry buildings
14:49:42  <TrueBrain> ... what a weird thing
14:50:02  <glx> it may be a regression
14:52:51  <TrueBrain> nah
14:52:57  <TrueBrain> has been like this for at least 14 years
14:53:11  <glx> hmm keyboard doesn't want to work in the preview
14:53:19  <TrueBrain> it is just that the language is rather ambiguous, and the specs kept saying it should do what I expected it to do
14:53:28  <TrueBrain> ugh, yeah, the iframe needs focus
14:53:34  <TrueBrain> otherwise keyboard actions are not send there
14:54:16  <TrueBrain> anyway, tnx glx, at least it does work :)
14:55:33  <glx> ok after some press on TAB it works (clicking is not enough)
14:55:43  <TrueBrain> no, you can't click the iframe
14:55:56  <TrueBrain> I need to give it focus when you change tabs, I guess
14:58:08  <glx> anyway the "X" shortcut works very well for transparency :)
14:58:14  <glx> and it affects everything
14:58:26  <TrueBrain> yeah, it is what I normally use .. but as I couldn't use keyboard, I was using the menu one
14:58:32  <TrueBrain> and "building" is the wrong word there
14:58:34  <TrueBrain> "houses" would be 10x better :)
15:02:29  <TrueBrain> right, now to figure out what "production multiplier" actually is
15:02:34  <TrueBrain> as it means very little to me :P
15:05:53  <TrueBrain> ah .. it is randomized on construction
15:05:55  <TrueBrain> that explains :)
15:06:12  <TrueBrain> between halve that value and double that value
15:06:13  <TrueBrain> k
15:06:35  <TrueBrain> other than that, it is multiplier * 8
15:26:02  <TrueBrain> oof, and I forgot there are different sets of economy ofc .. eeuuuhhhmmm .. yeah, that just sucks :P
15:32:06  <TrueBrain> "UsesOriginalEconomy", taking guesses to what the function actually does
15:32:07  <TrueBrain> no cheating
15:40:59  *** nielsm has joined #openttd
16:33:59  *** andythenorth has quit IRC
16:35:57  *** andythenorth has joined #openttd
16:39:41  *** andythenorth has quit IRC
16:59:30  *** andythenorth has joined #openttd
17:03:57  *** frosch123 has joined #openttd
17:08:41  *** Flygon has quit IRC
17:09:03  <frosch123> TrueBrain: since you are doing tile layouts: https://github.com/OpenTTD/OpenTTD/blob/master/src/viewport.cpp#L109 <- there is a largely unknown limitation about how big a sprite on a tile can be
17:09:39  <frosch123> if a sprite extends over the left/bottom/right border of a tile, the tile will not be properly considered for drawing, and the sprite will glitch
17:09:56  <frosch123> towards the top there is also a maximum height
17:12:58  <frosch123> TrueBrain: about economy: "smooth economy" is an ottd invention not known to newgrf. once a newgrf does anything with industry production, non-smooth/original economy is enforced for the industry
17:15:14  <TrueBrain> and that is why the name UsesOriginalEconomy is just shitty :P
17:15:24  <TrueBrain> DoesntUseSmoothEconomy would be more correct, I guess :P
17:15:56  <TrueBrain> as for the sprite limits, good point; not going to do anything with it now, but it is something I should add eventually :D
17:16:19  <TrueBrain> which brings us rather close to the: support drawing 1x2 buildings, and TrueGRF should do the splitting etc :P
17:17:33  <frosch123> ah right, forgot about that thing :)
17:17:47  <TrueBrain> is there a way in NewGRF to read what kind of economy is running?
17:20:00  <frosch123> no, noone cares about smooth economy
17:20:15  <frosch123> newgrf do their own economies
17:20:42  <TrueBrain> what I am pondering about, is to make production/acceptance a bit more intuitive in TrueGRF
17:20:49  <frosch123> "smooth economy" missed the "rejected, can be done via newgrf" line :)
17:20:52  <TrueBrain> the current way of doing is just .. well, I don't even understand it
17:21:13  <TrueBrain> but I guess people might want to use the vanilla behaviour
17:21:39  <TrueBrain> I can also just say: fuck that shit, and force you to pick original, smooth, or a custom :P
17:21:57  <TrueBrain> and that the economy setting becomes pointless :)
17:22:06  <frosch123> what is the problem? there is primary production, producing at a default rate, that can change during the game
17:22:17  <frosch123> and there is secondary production, processing input cargos into output cargos
17:22:22  <TrueBrain> there isn't a problem
17:22:29  <TrueBrain> there are choices to be made :)
17:22:32  <TrueBrain> I was hoping I could read the type of economy
17:22:37  <TrueBrain> so I could have a "vanilla" callback chain
17:23:17  <frosch123> once you enable the production callbacks or produciton change callbacks, original/non-smooth is enforced
17:23:23  <TrueBrain> I know
17:23:28  <TrueBrain> but I can fake smooth economy in the callback
17:23:31  <frosch123> so from a newgrf POV "smooth" and "frozen" do not exist
17:23:51  <TrueBrain> so I could have made the cb aware of the economy ;)
17:24:20  <glx> I think only thing newgrf may access is a GS status
17:24:52  <frosch123> is that thing documented meanwhile?
17:25:01  <TrueBrain> and now I am wondering if it would be an issue if a NewGRF forces an economy on the user .. hmm
17:25:16  <TrueBrain> FIRS already does, ofc
17:25:35  <frosch123> https://wiki.openttd.org/en/Development/NewGRF/Specification%20Status#openttd-1-11 <- nope, still missing
17:25:50  <frosch123> i guess we can revert it after a year
17:28:06  <TrueBrain> okay, so each industry basically gets a dropdown with what kind of economy they run .. either origin, smooth, custom1, custom2, etc
17:28:28  <TrueBrain> will that be an issue .. guess someone will complain changing economy from original to smooth doesn't change NewGRF behaviour ..
17:29:08  <TrueBrain> but this is already try for FIRS
17:29:13  <TrueBrain> even frozen doesn't work, I guess
17:29:17  <TrueBrain> try = true
17:29:50  <frosch123> all those types make no sense for FIRS
17:30:09  <frosch123> FIRS industries do not change production, they only react to supplies
17:31:17  <frosch123> i think the same holds for all the firs forks. some add different production mechanics like needing workers etc. but noone likes random changes like original/smooth economy
17:32:22  <TrueBrain> so basically you say, don't even bother with "original" and "smooth", just make custom1, custom2, ..
17:32:23  <frosch123> so, i claim noone wants a "original"/"smooth" dropdown :) only a "game default"/"custom" option
17:32:31  <TrueBrain> ;)
17:33:58  <TrueBrain> so in a cb I can either set prod_level, or manipulate it with basic math
17:34:10  <TrueBrain> guess I can use a register to do the latter myself
17:34:15  <TrueBrain> so I only need to care about the first
17:35:22  <glx> you have CB29 to decide what random changes do
17:36:15  <TrueBrain> so now for the unit of production_rate .. it is 8 cargo?
17:36:16  <TrueBrain> or is it done 8 times a month
17:36:16  <frosch123> industries have persistent storage, so technically you can ignore prod_level and do your own thing
17:36:23  <TrueBrain> trying to decypher the "* 8" I see everywhere :P
17:36:29  <frosch123> it's done every 256 ticks
17:36:35  <frosch123> which is 8 or 9 times per month
17:36:44  <TrueBrain> ah
17:37:49  <TrueBrain> so if I initialize the multipliers at zero, I can just do my own thing in IndustryProductionCallback?
17:37:59  <frosch123> correct
17:38:11  <TrueBrain> that would make a lot of things a lot easier
17:39:09  <frosch123> just don't tell the GS-should-do-industry-production faction :p
17:39:37  <TrueBrain> economy vs industry
17:39:49  <TrueBrain> global vs local :)
17:43:45  *** jottyfan has joined #openttd
17:46:36  <TrueBrain> so just make cb29 and cb35 return 0, and I disable production changes .. after that, production callback takes control
17:49:15  <frosch123> the monthly callback can be used to change your internal variables and make the industry time-aware. but it still returns 0 then :)
17:49:38  <frosch123> firs uses it to track supply delivery over time
17:49:39  <TrueBrain> similar with the random one, could be useful, if you so decide :)
17:49:58  <frosch123> i think the monthly callback also gets random data in some variable
17:50:03  <TrueBrain> okay, and it sets incoming_cargo_waiting and produced_cargo_waiting directly
17:50:19  <TrueBrain> so it would totally bypass the whole prod_level and production_rate stuff
17:50:21  <TrueBrain> good
17:51:09  <TrueBrain> multiplier is 1 by default, so that just makes it a bit easier to understand for the human :)
17:51:36  <frosch123> for secondary production YETI uses a method to not process all cargo at once, but stockpile everything and process like 15% of it every 256 ticks
17:51:53  <frosch123> that smoothes the output and makes train departure look more nicely
17:52:07  <TrueBrain> it is one of the things I personally don't like about OpenTTD .. no matter how much you deliver to a secondary, it will process it for you
17:52:12  <TrueBrain> makes for stupid networks
17:52:30  <frosch123> ah, there are also newgrf who set an upper limit
17:52:33  <TrueBrain> so I wouldn't even do % :P
17:52:48  <frosch123> but once the cargo is rejected, your vehicles leave full-loaded, which messes up your network :p
17:53:06  <TrueBrain> it is not for the weakminded :P
17:53:57  <frosch123> anyway, callback 3D is called to figure out whether a industry's stockpile is full
17:54:10  *** oldp has joined #openttd
17:54:21  <frosch123> it's called in the station-tile-processing, so updates are never immediate
17:55:14  <frosch123> if a industry says "stop accepting cargo, if stockpile > 1000", it may still take up to 255 ticks for the station to notice and stop accepting
17:56:03  <frosch123> oh, and cargo is delivered in cargopackets, so if stockpile is at 999 and 10 is delivered, the stockpile goes to 1009
17:56:12  <TrueBrain> yeah, okay .. so the game puts the cargo in the stockpile
17:56:13  <frosch123> ECS people were very upset about that :p
17:56:17  <TrueBrain> there is not a cb handling that
17:57:04  <frosch123> you can use the on-delivery-production-cb to discard cargo, if you really want to
17:57:10  <frosch123> but it will be paid nevertheless
17:57:22  <TrueBrain> yeah, so that is rather pointless :D
17:57:46  <TrueBrain> for now, I don't really care about the stockpile
17:57:57  <TrueBrain> I just want to give control for primary/secondary, how much they output
17:59:10  *** oldp has quit IRC
17:59:40  <TrueBrain> right .. guess I finally need to look into registers etc :P
18:00:26  <TrueBrain> hmm .. industry var69, is that per cargo, or a global value?
18:00:40  <frosch123> hmm, how about defining secondary production in a table: each row specifies "amount of input needed" and "output", and truegrf makes the production cb pick the first row that is fulfilled
18:01:00  <frosch123> that way authors can define different output amounts if multiple input cargos are available, vs only some
18:01:23  <frosch123> var69 takes a cargotype as parameter
18:01:29  <TrueBrain> not sure I follow, but I have already come to terms that what-ever I come up with, someone else will have another request .. so I am thinking about something more dynamic
18:01:48  <TrueBrain> frosch123: ah .. I forgot they could have parameters ..
18:03:21  <frosch123> don't worry, i just like spreadsheets sometimes :)
18:03:27  <TrueBrain> :P
18:03:33  <TrueBrain> I think in the backend I make the cb an RPN
18:04:09  <TrueBrain> so something like: waiting[COAL] 4 / produce[BATTERY] =
18:04:31  <TrueBrain> for the frontend, I think I will add "economies" which you can select per industry
18:04:42  <TrueBrain> and each economy has different questions for you to answer
18:04:47  <dwfreed> RPN is great
18:04:57  <TrueBrain> so you can have an economy like "secondary with boost"
18:05:06  <TrueBrain> which takes care of the boosting part etc etc
18:05:15  <TrueBrain> and just asks you: what are the inputs, what is the output, how do they relate
18:05:22  <TrueBrain> frontend generates the RPN to the backend
18:05:27  <TrueBrain> and that makes the GRF
18:05:40  <frosch123> how do you make conditions in RPN?
18:05:46  <TrueBrain> dwfreed: my last attempted used a DAG instead ... I am not happy about it :P
18:05:59  <frosch123> like lisp?
18:06:08  <TrueBrain> I do not know lisp
18:06:13  <frosch123> me neither :p
18:06:29  <frosch123> but i guess they have some tertiary-thingie
18:06:40  <TrueBrain> yeah
18:06:54  <TrueBrain> "stack-based language"
18:09:12  <TrueBrain> anyway, the only drawback is that for every type of economy, TrueGRF needs an update
18:09:22  <TrueBrain> but .. yeah ... you can't have it all :P
18:10:47  <frosch123> oh... i missed the "backend" part... i thought you would let the user enter the RPN
18:10:55  <TrueBrain> they could
18:10:58  <TrueBrain> as "advanced" option
18:11:00  <TrueBrain> for sure
18:11:13  <TrueBrain> but some boilerplating for the common case won't hurt
18:12:28  <TrueBrain> I wonder if I could pull off a Javascript -> GRF ..... :P
18:12:38  *** gelignite has joined #openttd
18:12:53  <andythenorth> TrueBrain sometimes the * 8 is just to deal with integer maths
18:13:09  <andythenorth> not sure how much of that is left but eh
18:13:45  <TrueBrain> andythenorth: question you might not know the answer to: https://github.com/andythenorth/firs/blob/master/src/templates/produce_primary.pynml talks about incoming cargo
18:13:52  <TrueBrain> but .. it is a primary industry?
18:14:14  *** Compu has joined #openttd
18:17:01  <frosch123> primary industries take supplies
18:17:06  <frosch123> in FIRS
18:17:16  <TrueBrain> so primary but not really :D
18:17:22  <glx> like boost cargo
18:17:25  <frosch123> they also produce without supplies :)
18:17:28  <frosch123> just les
18:17:39  <TrueBrain> ah, boosts
18:18:20  <frosch123> i think it was YETI... industries produce nothing on their own, you first have to deliver workers
18:19:19  <TrueBrain> okay ... so "primary" is taken with a bit of salt there
18:19:22  <TrueBrain> not complaining
18:19:34  <TrueBrain> just confirming my current method of doing this will fail horribly
18:19:36  <glx> primary in FIRS chains
18:19:39  <TrueBrain> and my new idea indeed would fix it :)
18:19:48  <frosch123> "primary"/"secondary" is still important for player-funding
18:20:14  <glx> but yeah secondary industries never produce without input
18:20:20  <frosch123> secondary are always built at player-choosen position
18:20:44  <frosch123> primary are different depending on setting, and possibly way more expensive (different base cost)
18:21:02  <glx> prospecting being the most annoying one :)
18:21:10  <glx> expensive and may fail
18:21:23  <TrueBrain> does the game differ between secondary and tertiary?
18:22:20  <frosch123> with default-production changes, tertiary industries never close down
18:22:35  <frosch123> or something weird
18:22:54  <TrueBrain> yeah, okay
18:23:00  <glx> https://newgrf-specs.tt-wiki.net/wiki/Action0/Industries#Industry_production_type_.280B.29
18:23:01  <frosch123> but if you do production with newgrf, then secondary/tertiary is the same
18:23:01  <TrueBrain> I just leave it in there, it is fine
18:24:56  <TrueBrain> in what scenarios do you think branching in RPN is important btw frosch123 ?
18:25:22  <TrueBrain> aren't they all solvable by multiplying by 1 / 0?
18:25:46  <frosch123> probably :)
18:26:09  <glx> nml does just that for most ternary operations
18:26:12  *** Wormnest has joined #openttd
18:26:24  <frosch123> i was thinking of "if inputs A and B are available, produce C. if only A is available, produce D. if only B is available, produce E"
18:26:44  <TrueBrain> C, D, and E the same cargo, but different amounts?
18:26:48  <TrueBrain> or completely different cargoes?
18:26:57  <frosch123> which may be hard to express in your RPN, if you include operations with side-effects, like "consume input cargo"
18:27:26  <frosch123> TrueBrain: former, but maybe both :p
18:27:35  *** jottyfan has quit IRC
18:29:27  <TrueBrain> I kinda wanted to get ride of the DAG, which does allow branching etc etc
18:29:38  <TrueBrain> visual languages are really nice, especially for non-coders
18:29:44  <TrueBrain> but they are a bitch in JSON format :P
18:31:13  <frosch123> so labview... :p
18:31:58  <TrueBrain> seems Flight Simulator (the latest) uses RPN :P
18:32:11  <TrueBrain> someone wrote a tool to write a slightly higher language that converts to RPN :P
18:32:38  <Rubidium> frosch123: no, rather code in G ;)
18:32:50  <TrueBrain> l0 0 > if{
18:32:52  <TrueBrain>   l0 0 - 100 25 - * 100 0 - / 25 +
18:32:56  <TrueBrain> } els{
18:32:58  <TrueBrain> l0 -20 - 25 0 - * 100 -20 - / 0 +
18:33:01  <TrueBrain> } (>L:MY_THROTTLE)
18:33:09  <TrueBrain> I love the "els" there
18:33:19  <TrueBrain> like: fuck it, I wrote 3 characters, not going to do the 4th!
18:33:20  <frosch123> oh, so that was not your typo?
18:34:07  <frosch123> Rubidium: i haven't used labview in 15 years... back then it was incompatible with every release, so it was impossible to share code with others
18:34:57  <TrueBrain> https://www.prepar3d.com/SDKv5/sdk/scripting/rpn_scripting.html
18:35:00  <frosch123> someone wrote something in labview3, you had to upgrade it with labview5 before you could use it in labview6
18:35:10  <frosch123> even though nothing really changed in the language
18:35:46  <Rubidium> well, LabVIEW is still crap for cooperation in a project with multiple people... though not that crap
18:37:02  <Rubidium> though upgrading through a few versions is not that bad anymore
18:42:21  <TrueBrain>  (LOAD_PERM(${get_perm_num("total_produced_cargo_available")}) / 8) >= 1 <- why not just >= 8, I wonder ..
18:43:31  <TrueBrain> hard to understand what FIRS actually does .. but that is mostly because NML is just weird to read
18:48:56  <TrueBrain> wow, 256 persistent registers? That is more than I expected ..
18:50:29  <TrueBrain> lol @ persistent storage accesses by GRFID ..
18:50:30  <TrueBrain> someone had an idea there
18:50:37  <frosch123> people wanted to track 16 input cargos over 16 months or something...
18:50:40  <TrueBrain> pretty sure it never actually became something? :)
18:51:02  <frosch123> andy is using the town-registers only now
18:51:22  <frosch123> i think they were implemented in 2011, and in 2019 people reported them not working in nml or so :p
18:51:52  <TrueBrain> so basically, if I just always write 0xffffffff in var100, it is just a global register
18:51:56  <TrueBrain> too bad it is only for towns :P
18:52:38  <glx> 0x100 is write only
18:53:37  <TrueBrain> not sure how that matters glx :P
18:54:15  <frosch123> newgrf is like an old CISC cpu :) 8051 has all kind of registers and output-ports which interact in weird ways
18:55:01  <TrueBrain> having global registers for industries could be interesting .. well, I guess it can, via towns?
18:55:13  <andythenorth> only via the town though
18:55:15  <andythenorth> no global
18:55:21  * andythenorth has newsletter
18:55:23  <andythenorth> :(
18:55:27  <andythenorth> but apparently GS is for that
18:56:38  <glx> industries can share data via towns, but synchronisation may be hard
18:56:56  <andythenorth> it's really quite hard
18:57:30  <TrueBrain> right, I regret mentioning any of this
18:57:45  * andythenorth doesn't
18:57:52  <andythenorth> it's one of the last interesting areas of the game to explore
18:58:15  <glx> debugging that is even harder
18:58:23  <andythenorth> it really is
18:58:41  <andythenorth> it took me a couple of days just to get a reliable monthly loop
18:58:55  <andythenorth> although I think 15 bit callback results were the actual confusion there :P
18:59:30  <glx> 15bit signed values, always fun :)
19:00:55  <andythenorth> can't remember what it was I wanted
19:01:02  <andythenorth> maybe it was a monthly town loop
19:01:37  <frosch123> you wanted access to town GUI, to show spreadsheets
19:08:06  <andythenorth> oh yeah
19:08:16  <andythenorth> I do that with an industry instead
19:08:26  <andythenorth> and I'm adding a GS to build the industry in every town
19:08:38  <andythenorth> then I need to merge nocargoal and silicon valley into my GS
19:09:03  <andythenorth> this will be interesting
19:14:37  * andythenorth wonders if a GS can wrap a GS
19:14:59  <andythenorth> it has some kind of import / module thing?
19:15:16  <andythenorth> maybe I can call out from main loop to the main loop of an existing GS
19:15:19  <frosch123> no threads afaik, so you have to solve the two-event-loops problem
19:15:38  <andythenorth> I'm so out of my depth :)
19:15:52  <andythenorth> but I was wondering if I could delegate the event loop
19:15:57  <DorpsGek> [OpenTTD/OpenTTD] rubidium42 approved pull request #9767: Fix #9766: Don't write uninitialised data in config file https://git.io/JSDsS
19:16:08  <andythenorth> possibly by editing the wrapped GS :P
19:16:16  <frosch123> though i guess you can monkey-patch the event api and do context switches there
19:16:42  <andythenorth> I was wondering more if I could rewrite event loop handler in wrapped GS and call it as a function :P
19:16:55  <andythenorth> I don't know what vars are in scope...or anything really
19:17:04  <andythenorth> let's assume mass ignorance on my part
19:26:08  <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #9761: Change: add a timestamp in name of crash files https://git.io/JSDGc
19:34:49  <DorpsGek> [OpenTTD/OpenTTD] rubidium42 commented on pull request #9772: Fix missing icon https://git.io/JSDGV
20:02:35  <DorpsGek> [OpenTTD/OpenTTD] JGRennison commented on pull request #9761: Change: add a timestamp in name of crash files https://git.io/JSDnk
20:37:33  *** Smedles has quit IRC
20:38:49  *** Smedles has joined #openttd
21:12:10  <DorpsGek> [OpenTTD/OpenTTD] glx22 merged pull request #9767: Fix #9766: Don't write uninitialised data in config file https://git.io/JyLmD
21:12:13  <DorpsGek> [OpenTTD/OpenTTD] glx22 closed issue #9766: [Bug]: SDTG_MMANY/ManyOfMany settings may write unintiailised bytes into the config file when no bits are set https://git.io/JyLkB
21:25:53  <andythenorth> hmm
21:25:58  <andythenorth> WASM BBC Micro games
21:26:44  <NGC3982> https://pbs.twimg.com/media/FIRneKhXIAYuHHs?format=jpg&name=large
21:43:55  *** gelignite has quit IRC
21:56:39  *** frosch123 has quit IRC
22:20:16  *** Gustavo6046 has joined #openttd
22:21:22  <Gustavo6046> So I have this two lane, two way railway track, and each lane has one way path signals.
22:21:33  <Gustavo6046> And a city right next to it
22:21:57  <Gustavo6046> So with a little rail roundabout I built a station and depot
22:22:11  <Gustavo6046> How do I connect with the railway? Fancy bridges?
22:24:30  *** Wormnest has quit IRC
22:26:55  *** WormnestAndroid has quit IRC
22:29:28  *** WormnestAndroid has joined #openttd
22:44:26  *** _aD has joined #openttd
22:52:02  *** WormnestAndroid has quit IRC
22:52:15  *** WormnestAndroid has joined #openttd
22:53:51  *** sla_ro|master has quit IRC
22:57:09  *** jottyfan has joined #openttd
23:02:43  *** Wormnest has joined #openttd
23:13:28  *** andythenorth has quit IRC
23:19:27  *** Wolf01 has quit IRC
23:24:50  *** WormnestAndroid has quit IRC
23:25:55  *** WormnestAndroid has joined #openttd
23:35:35  *** nielsm has quit IRC
23:48:32  <supermop_Home_> do CEO ties get CC recolor?
23:51:20  *** Gustavo6046 has quit IRC

Powered by YARRSTE version: svn-trunk