Config
Log for #openttd on 14th April 2019:
Times are UTC Toggle Colours
00:01:43  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 updated pull request #7510: Emscripten support https://git.io/fjm0r
00:36:37  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm0B
01:01:54  <Eddi|zuHause> Artea: just ban the IP?
01:02:47  <Samu> squery spam is normal
01:03:23  <Samu> happens each time someone clicks "Find Server"
01:03:43  <Samu> or Refresh Server
01:04:40  <Samu> you set up newgrfs on your server...
01:05:51  *** chomwitt has quit IRC
01:05:54  <Samu> btw, I just rebased (road-bridges-store-town-indexes-in-map-array) if there was still an interest in that
01:06:38  <Samu> probably there still is, but not from me
01:14:14  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm0B
01:24:33  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7510: Emscripten support https://git.io/fjmEt
01:35:24  *** Flygon has joined #openttd
01:36:18  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7510: Emscripten support https://git.io/fjmEs
01:39:23  *** tycoondemon has quit IRC
02:19:22  *** Samu has quit IRC
02:32:23  *** debdog has joined #openttd
02:35:43  *** D-HUND has quit IRC
02:42:26  *** Wormnest has joined #openttd
02:47:06  *** Supercheese has quit IRC
02:47:28  *** Supercheese has joined #openttd
03:39:08  *** glx has quit IRC
03:39:24  *** Wormnest has quit IRC
03:50:51  *** Flygon has quit IRC
06:21:24  *** andythenorth has joined #openttd
06:29:28  <andythenorth> moin
06:31:16  *** Supercheese has quit IRC
06:43:32  *** tycoondemon has joined #openttd
06:44:07  <andythenorth> 142 identical spritesheet templates in Horse, twice
06:44:31  *** sla_ro|master has joined #openttd
06:44:35  <andythenorth> wonder if conolidating makes it compile faster
07:09:03  *** nielsm has joined #openttd
07:11:16  *** sla_ro|master has quit IRC
07:14:05  *** sla_ro|master has joined #openttd
07:23:27  *** argoneus has quit IRC
07:25:25  *** Progman has joined #openttd
07:38:51  *** argoneus has joined #openttd
07:45:02  *** andythenorth has quit IRC
07:45:21  *** andythenorth has joined #openttd
07:46:24  *** argoneus has quit IRC
07:47:33  *** argoneus has joined #openttd
08:03:59  *** chomwitt has joined #openttd
08:47:16  <DorpsGek_II> [OpenTTD/website] TrueBrain commented on pull request #82: Discussion basis for rework of the general HTML structure and the CSS rules https://git.io/fjmgO
08:50:29  <DorpsGek_II> [OpenTTD/website] andythenorth commented on pull request #82: Discussion basis for rework of the general HTML structure and the CSS rules https://git.io/fjmgZ
08:52:45  <TrueBrain> NML even reprocesses all the images
08:52:46  <TrueBrain> damn
08:53:28  <andythenorth> yes
08:53:44  <andythenorth> that's how it can detect white, animated pixels etc
08:53:51  <andythenorth> compress the bounding boxes
08:58:37  <TrueBrain> is there an example NML for houses?
08:59:09  <DorpsGek_II> [OpenTTD/OpenTTD] YJSoft opened issue #7511: Strings not loaded correctly on CJK Windows version below RS5 https://git.io/fjmgB
09:01:21  <DorpsGek_II> [OpenTTD/OpenTTD] nielsmh commented on issue #7511: Strings not loaded correctly on CJK Windows version below RS5 https://git.io/fjmg0
09:02:10  <andythenorth> seems not
09:10:13  <TrueBrain> sad
09:12:35  *** chomwitt has quit IRC
09:12:46  <Artea> how can Airports expire ?
09:15:01  <Artea> hmmm
09:15:03  <Artea> no info on wiki
09:15:12  <Artea> it is implemented ?
09:15:30  <nielsm> you mean airport types become obsolete so you can't build the type any longer?
09:15:47  <nielsm> that has always been in the game
09:15:58  <Artea> that would be small airports
09:18:14  <Artea> I wonder how many years needs to small airports expire
09:18:36  <Artea> because last time I checked, 2070 and some years still have small airports
09:18:55  <nielsm> modern small airports don't become obsolete
09:19:23  <nielsm> the old small airport becomes obsolete at a specific year
09:20:21  <Artea> I think most don't use old classic vehicles anymore
09:20:40  <nielsm> what are you even talking about?
09:20:47  <Artea> dont know
09:21:03  <Artea> my brain is getting blank
09:21:50  <nielsm> https://wiki.openttd.org/Airports
09:22:03  <nielsm> old small airport is until 1959
09:22:25  <nielsm> modern small airport (commuter) becomes available in 1983
09:22:26  <Artea> oh
09:22:33  <Artea> that's why we dont see in my server
09:22:36  <nielsm> (is there really such a long gap with no small airports?)
09:22:57  <Artea> my server starts at 1984
09:23:17  <Artea> not just that
09:23:25  <Artea> ships seems useless
09:23:46  <Artea> at least now with FISH by andy
09:23:54  <Artea> have more ships to choose
09:24:04  <Artea> but still, speed bugs me
09:28:58  <Artea> nielsm
09:29:07  <Artea> how can I get a full openttd.cfg ?
09:29:42  <Artea> there is options on GUI I can't find in console / openttd.cfg in wiki
09:31:22  <nielsm> all settings are described here: https://github.com/OpenTTD/OpenTTD/blob/master/src/table/settings.ini
09:31:35  <nielsm> note that it's not "described" as in actual explanation of them
09:31:47  <nielsm> but that's the file used to generate the code that reads and writes openttd.cfg
09:32:16  <andythenorth> Artea: ships are a tradeoff
09:32:27  <andythenorth> they are slow, but they have ~infinite capacity per tile
09:32:33  <andythenorth> unlike other transport types
09:32:39  <nielsm> and if you want to read the strings for name/description then look them up in english.txt: https://github.com/OpenTTD/OpenTTD/blob/master/src/lang/english.txt
09:36:22  <andythenorth> Artea: if you want to fix silly airport dates, use OpenGFX+ Airports grf
09:38:03  <Artea> opengfx_airports-0.5.0
09:38:08  <Artea> already using in dedicated server
09:39:00  <Artea> another thign
09:39:02  <Artea> * thing
09:39:09  <Artea> how to send money to other companies ?
09:39:38  <nielsm> open the client list (companies button)
09:39:50  <nielsm> and click the player controlling the company you want to send to
09:41:17  <Artea> oh
09:41:47  <Artea> simple then
09:42:16  <Artea> should have a button on company
09:43:36  <Artea> now AroAI is going to pump up
09:43:47  <Artea> changed number of road vehicles
09:43:48  <Artea> ;)
09:44:27  <TrueBrain> "Your code has been rated at 1.11/10"
09:44:29  <TrueBrain> so mean :(
09:45:04  <Artea> :S
09:46:21  <Artea> wow
09:46:51  <Artea> Small Seaplane Port
09:46:52  <Artea> nice
09:52:14  <andythenorth> not many seaplanes :)
09:58:47  <nielsm> hmm... the "can only be built near edges of the map" condition for oil refineries does not scale with map size
09:58:52  *** gelignite has joined #openttd
09:58:55  <nielsm> https://0x0.st/zN2S.jpg that is not "near the edge" on a 2kx4k map
10:12:01  <Artea> nice
10:12:09  <Artea> 2 airplanes made me pay my 700k euros loan
10:13:32  <Artea> seems that is not
10:20:46  <TrueBrain> okay, some initial version .. https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7
10:20:52  <TrueBrain> not sure what to think of it myself, but you have to start somewhere
10:21:34  <TrueBrain> typing in Python is always a bit off
10:30:57  * andythenorth reads
10:32:23  <andythenorth> TrueBrain it makes complete sense conceptually
10:32:48  * andythenorth must to go out for a bit
10:34:27  *** andythenorth has quit IRC
10:36:30  <TrueBrain> on top of that I also have some boilerplating to make type checkers happy btw
10:50:58  *** milek7 has quit IRC
10:51:59  *** milek7 has joined #openttd
10:57:09  *** milek7 has quit IRC
10:58:09  *** milek7 has joined #openttd
11:22:47  *** supermop_Home has quit IRC
11:32:37  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 updated pull request #7510: Emscripten support https://git.io/fjm0r
11:43:50  *** andythenorth has joined #openttd
11:59:03  *** Gustavo6046 has quit IRC
11:59:15  *** Gustavo6046 has joined #openttd
12:05:43  <TrueBrain> andythenorth: now you implement something in similar syntax yes yes? :P
12:07:59  <milek7> why python? it is annoying for embedding
12:11:21  <andythenorth> TrueBrain: eh what now? :)
12:11:26  <andythenorth> do we have a repo? :P
12:11:30  <TrueBrain> nah
12:11:40  <TrueBrain> I just want to know what kind of ideas you would have
12:11:48  <TrueBrain> to find out what is important and what is not
12:12:55  <andythenorth> is it best if I just ignore all existing GS / newgrf possibilities (and limitations)?
12:12:55  <TrueBrain> anything you would like to do that I currently didn't add in some form in the example, basically :)
12:12:59  <TrueBrain> yes
12:13:02  <andythenorth> yair ok
12:13:57  <andythenorth> hmm the town probably needs to know if it has enough cheese
12:14:18  * andythenorth will think
12:15:04  <TrueBrain> made the gist a bit easier on the eye
12:19:47  <TrueBrain> and updated again with some yumminess :)
12:21:50  *** gelignite has quit IRC
12:26:23  <milek7> YUMMINESS is modified externally by others, or why does it needs to be loaded every time?
12:26:34  *** frosch123 has joined #openttd
12:26:51  <TrueBrain> milek7: these Python objects are stateless
12:27:57  <TrueBrain> https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7 <- updated, now handles registers more clean
12:28:24  <milek7> it cannot be stateful? it'll be cumbersome to push all data through those load/store
12:28:43  <Xaroth> I like the yumminess
12:32:27  <milek7> or it is stateless because it still GRF in disguise?
12:32:50  <TrueBrain> updated, better event system
12:34:47  <TrueBrain> how far to go with GUI stuff .. hmm
12:35:30  <Xaroth> alllll the way
12:39:50  <TrueBrain> added first draft for client<->server communication
12:45:25  <TrueBrain> bi-directional communication, including an if-case
12:47:08  <andythenorth> so
12:47:21  <andythenorth> ideas
12:48:04  <andythenorth> - is there sufficient water in this town?
12:48:20  <andythenorth> - is there natural gas under the ground in this town?
12:48:38  <TrueBrain> is water per house?
12:48:40  <TrueBrain> or per town?
12:48:43  <andythenorth> dunno
12:48:45  <TrueBrain> and if there is enough water, what then?
12:48:48  <TrueBrain> and if there isn't, what then?
12:48:52  <TrueBrain> don't make me do all the work plz
12:49:02  <TrueBrain> open your editor, copy/paste my Python, and butcher it :P
12:49:20  <andythenorth> I need someone to bounce ideas off, mine are like 30%
12:49:20  <TrueBrain> I don't need ideas; I need to know if we canmake things look pretty and still workable ;)
12:49:24  <andythenorth> watch some TV :)
12:49:37  <andythenorth> where is Eddi|zuHause?
12:50:05  <TrueBrain> Python type hinting suuuccckkkkssss
12:52:53  <TrueBrain> okay, updated, this should work fine now
12:53:07  <TrueBrain> that should allow enough freedom in GUI
12:55:09  <andythenorth> all state is via registers?
12:55:16  <TrueBrain> reload, now 'storage'
12:55:31  <andythenorth> registers can have arbitrary contents?
12:55:34  <andythenorth> lists etc?
12:55:44  <andythenorth> storages :P
12:55:47  <TrueBrain> no; primitives only
12:55:53  <TrueBrain> at least .. the size has to be known
12:56:50  <TrueBrain> owh, and it is persistent
12:56:54  <TrueBrain> there is no 'temporary' one
12:58:04  <TrueBrain> another update; you now have 'town.api' to talk via API
12:58:11  <TrueBrain> I think this is more clear/readable now
13:01:16  <andythenorth> yeah storage got clearer too
13:02:01  <TrueBrain> so you have onEventNNN, which is triggered on event (async), you have onHookNNN, which is called to get a response (sync), you have NNN.api to call API functions, NNN.storage to store information, and some NNN.MMM to give access to things like parents
13:02:12  <TrueBrain> owh, and onCommand for Server/Client
13:02:37  <andythenorth> I am just going to make some crap up and you can lol at it
13:02:42  <TrueBrain> please :)
13:03:12  <milek7> why actions BRIBE/GROW is not just another event?
13:05:25  <TrueBrain> I think this is an easier abstraction
13:06:32  *** glx has joined #openttd
13:06:32  *** ChanServ sets mode: +v glx
13:06:57  <TrueBrain> https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7 <- but good point, made Actions dynamic
13:08:13  <TrueBrain> and added purpose to the actions
13:10:04  *** Samu has joined #openttd
13:10:08  <Samu> hi
13:10:52  <TrueBrain> and now you can disable it with a reason :D
13:12:01  <TrueBrain> milek7: basically, actions are defined by the mod author; events are defined by the API
13:12:17  <TrueBrain> but cleaned up actions some more
13:17:15  <andythenorth> TrueBrain: I've put some random crap https://gist.github.com/andythenorth/62061f0b1992a280842d7ddb93d48383
13:17:18  <andythenorth> I have more :P
13:17:21  <TrueBrain> ty :)
13:17:23  <TrueBrain> keep it coming
13:18:11  <TrueBrain> I am fiddling to increase readability :D
13:18:20  <Xaroth> you forgot a ', andythenorth.
13:18:49  <andythenorth> oops :)
13:18:57  <andythenorth> that won't compile
13:20:42  <TrueBrain> I am copy/pasting it anyway :)
13:20:57  <TrueBrain> what do you mean with onEventPeriodicLoop ?
13:21:01  <TrueBrain> how does it differ from onTick?
13:22:55  <glx> less frequent
13:24:13  <TrueBrain> okay, added a timer
13:26:30  <TrueBrain> andythenorth: onEventGlobalIndustryCreation <- onEvent cannot return values
13:26:36  <TrueBrain> so I guess you wanted a hook here, where you can prevert it?
13:28:51  <TrueBrain> okay, most things are indeed easy to do .. the industry satisfaction level is a bit more tricky
13:28:52  <TrueBrain> lets see ..
13:29:28  <andythenorth> I made some assumptions about there being industry satisfaction levels, managed internally by the industry
13:29:32  <andythenorth> and town can just read them
13:29:52  <andythenorth> TrueBrain: https://gist.github.com/andythenorth/62061f0b1992a280842d7ddb93d48383
13:29:56  <andythenorth> added a cargo demand function
13:30:59  <andythenorth> also was this game known outside UK in 1980s? http://tommcdaid.co.uk/wp-content/uploads/2014/10/bockbusters_06.jpg
13:31:25  <TrueBrain> https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7 <- added your first example
13:31:52  <TrueBrain> butchered industry thingy a bit,as I dont want to touch industries for now :)
13:31:55  <andythenorth> yeah
13:32:09  <andythenorth> the electricity is a deliberately tricksy example, it's not a produced cargo
13:32:14  <andythenorth> as it can't be transported
13:32:57  <TrueBrain> I understand; something for another day tbh :)
13:33:05  <TrueBrain> sounds like a property for cargo :P
13:33:32  <TrueBrain> what is 'local price'?
13:33:34  <TrueBrain> isn't it just price?
13:33:43  <andythenorth> probably
13:33:52  <andythenorth> preferably specific to this town
13:33:56  <TrueBrain> ah
13:34:05  <andythenorth> might be tracked in storages, but ideally it would be added to the game :P
13:34:20  <andythenorth> then cdist :P
13:34:35  <andythenorth> again, I'm being tricksy
13:35:07  <TrueBrain> I was hoping as much :)
13:35:14  * andythenorth trying to figure out how to do 'this town is locked for company x until certain conditions are met'
13:35:29  <TrueBrain> I am trying to balance a clear structure vs ease of use
13:35:36  <TrueBrain> I like what you did with cargo, but it is also unclear when something is an action
13:35:51  <andythenorth> yeah, I just blatted it out
13:36:05  <andythenorth> it's much easier to assume you'll rewrite it 100%
13:36:12  <TrueBrain> :)
13:36:32  <andythenorth> specifically, in I want to show this town is locked (per company) until at least one neighbouring town is happy (per company)
13:36:46  * andythenorth thinks about that
13:37:03  <andythenorth> probably on tick
13:37:12  <TrueBrain> give me a sec to clean up my example
13:37:15  <TrueBrain> so you can work from there again
13:37:16  <andythenorth> yair yair
13:37:18  <andythenorth> ok
13:37:41  <andythenorth> might need an onPlayerAction event or something
13:38:09  <andythenorth> still no eddi? o_O
13:38:14  <andythenorth> Eddi|zuHause where are you :)
13:38:35  <TrueBrain> https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7 <- updated
13:38:42  <TrueBrain> I am not sure yet how to do cats
13:38:57  <TrueBrain> for now I pushed it in the local storage
13:39:16  <andythenorth> yeah i saw
13:39:51  <TrueBrain> I like the 'class Event' and 'class hook'
13:40:01  <TrueBrain> but event.town.storage ... it gets so long
13:40:13  <andythenorth> it does
13:40:22  <TrueBrain> but it is verbose
13:40:23  <TrueBrain> meh
13:40:50  <TrueBrain> hook.house.town.api
13:40:51  <TrueBrain> lol
13:45:18  <andythenorth> ha ha
13:45:30  * andythenorth tries to work out how to have the town set the RoadType
13:45:35  <andythenorth> :P
13:45:43  <TrueBrain> oh-oh
13:45:50  <andythenorth> NRT needs tech levels for roadtypes :P
13:46:11  <andythenorth> yeah can't figure that one out, moving on :P
13:46:25  <TrueBrain> we can revisit these things later :)
13:49:45  <TrueBrain> fixed cats :)
13:50:41  <TrueBrain> well, no, this is not correct, from a gameplay point of view
13:50:42  <TrueBrain> lets fix that
13:51:29  <andythenorth> TrueBrain: I've added something :P https://gist.github.com/andythenorth/fa91106044e0d62afe485443a1681a43
13:51:34  <andythenorth> in onTick
13:51:36  <TrueBrain> there we go, cats now work
13:52:03  <TrueBrain> always xmas, how cute
13:52:24  <andythenorth> I thought so
13:52:28  <andythenorth> it's like an Easter Egg
13:52:32  <andythenorth> but Christmas Egg
13:53:31  <andythenorth> yeah so the 'unlock the  town' thing I can't think of a clean way
13:53:40  <andythenorth> I await inspiration :P
13:53:42  <TrueBrain> let me think in a bit
13:53:54  <TrueBrain> first let me make your zone example exuctable :)
13:56:03  <TrueBrain> okay, I am now starting to push what will be possible .. but that is okay
13:56:49  <andythenorth> FWIW, christmas can already be done in newgrf, it's not a new feature, just a silly one
13:58:10  *** crem has joined #openttd
13:58:24  <TrueBrain> okay, updated
13:59:02  <TrueBrain> andythenorth: but you can now do it per zone :P
13:59:11  <andythenorth> well
13:59:28  <andythenorth> newgrf can do sprites on arbitrary conditions, but we don't need to know that :P
13:59:39  * andythenorth trying 'rubbish' cargo
13:59:52  <andythenorth> town is PISSED if you don't transport enough rubbish away
14:00:12  <TrueBrain> okay, a bit more realistic xmas implementation now
14:00:21  <TrueBrain> Zones need more thinking I notice :)
14:00:41  <TrueBrain> owh, I am being silly
14:02:05  <TrueBrain> okay, this is better
14:02:53  <andythenorth> https://gist.github.com/andythenorth/fa91106044e0d62afe485443a1681a43
14:03:41  <andythenorth> my assumption is that somehow town.api.ProducedCargos sums all the possible production in (some period??) for town houses and local industries
14:03:48  * andythenorth wavey hands
14:04:23  <andythenorth> possible / actual /s
14:05:31  <TrueBrain> made timers declerative
14:06:15  <milek7> https://milek7.pl/openttd-wasm/
14:06:17  <milek7> removed bezels, made canvas fullpage and switched to 32bpp mode
14:07:57  <Xaroth> holy earbleed
14:09:36  <TrueBrain> andythenorth: updated my example :)
14:10:04  <TrueBrain> milek7: toob ad the mouse can escape :)
14:10:45  <TrueBrain> I like this way of defining timers
14:11:29  <TrueBrain> event.house.town.storage.MY_HOUSE_LOCATION <- longer and longer :D
14:11:54  <Samu> why is cherry-pick so stupid :( i thought the feature would pick the entire commits from a branch, not just the last of it
14:13:50  <nielsm> cherry-pick picks a single commit
14:13:59  <nielsm> if you want more than one commit you need to name all the commits
14:14:03  <nielsm> individually
14:14:35  <TrueBrain> andythenorth: this "example" got pretty big already :P
14:14:46  <Samu> but i right clicked the branch
14:14:50  <Samu> not a single commit
14:15:03  <LordAro> technically speaking, a branch is a single commit
14:15:14  <LordAro> that just happens to have a load of other commits preceding it
14:15:42  <LordAro> i might suggest that it's a limitation of whatever UI you're using though
14:16:44  <TrueBrain> always nice if people make things more confusing by wanting to be STRICTLY correct :P
14:18:19  <andythenorth> TrueBrain: yeah I do like those timers
14:18:40  <andythenorth> one of my worries was that it would be hard to encapsulate concerns cleanly
14:18:50  <andythenorth> this does it
14:19:15  <TrueBrain> hmm ...
14:19:18  <TrueBrain> that gives me an idea
14:19:33  <LordAro> TrueBrain: is this python stuff "a new syntax for NML", or "embedding python in OTTD"?
14:19:36  <LordAro> or just fun?
14:19:44  <TrueBrain> LordAro: https://devs.openttd.org/~truebrain/mods/towns.txt
14:19:51  <TrueBrain> its a way to make mods for OpenTTD
14:19:58  <LordAro> hmm
14:20:04  <LordAro> embedding python is ..hard
14:20:16  <LordAro> and we do already have squirrel
14:20:40  <TrueBrain> did you read the URL? Or did you just start assuming some more? :)
14:21:07  <LordAro> - Single "higher level" language, which compiles everything to something  OpenTTD can digest. For example: Python
14:21:10  <LordAro> i read that
14:21:29  <TrueBrain> so lets break down that sentence: "something OpenTTD can digest" .. so .. that is currently NFO and Squirrel
14:21:35  <TrueBrain> "compiles everything" .. so it is a compiler
14:21:37  <LordAro> which doesn't necessarily mean embedding python, i'll grant you
14:21:40  <TrueBrain> :D
14:21:45  * andythenorth afk for a bit 
14:21:55  <andythenorth> I assume it will all be done when I get back
14:21:59  <TrueBrain> andythenorth: ofc!
14:22:42  <TrueBrain> LordAro: we were spinning a bit about it last night .. basically, it needs to be a language that supports typing
14:22:57  <TrueBrain> what ever happens after that higher-level language is for me not my current priority :)
14:23:01  <TrueBrain> those are solvable things
14:23:51  <nielsm> as long as you don't invent something that requires solving the halting problem!
14:24:11  <TrueBrain> "as long as you don't invent something"
14:24:14  <TrueBrain> I stopped reading after that :P
14:26:18  *** Wormnest has joined #openttd
14:26:44  <TrueBrain> nielsm: more seriously, all these functions will have the demand that they are solvable and halt
14:27:03  <TrueBrain> so it doesn't require solving the halting problem as much as it demands it halts
14:27:08  <TrueBrain> (which is not really solving it, tbh)
14:27:25  <TrueBrain> so the control flow will be restricted etc
14:27:36  <TrueBrain> (much like eBPF)
14:28:32  <LordAro> ban loops :p
14:28:44  <TrueBrain>             for industry in event.town.api.GetIndustries():
14:28:44  <TrueBrain>                 amount = industry.api.GetProduction(Cargo.ELECTRICITY)
14:28:47  <TrueBrain> I am fine with these loops
14:28:49  <TrueBrain> but we know they end
14:28:55  <TrueBrain> so some control flow is allowed
14:33:07  <LordAro> how do you determine if the loops end?
14:33:09  <milek7> for i in range(10000000): if not real_condition(): break; do_something()
14:33:16  <milek7> is that allowed?
14:33:19  <TrueBrain> milek7: no
14:33:41  <TrueBrain> LordAro: that is honestly pretty easy
14:33:45  <TrueBrain> but lets get there when we get there
14:33:55  <LordAro> that's not an answer :p
14:34:01  <LordAro> are you going to ban range?
14:34:09  <TrueBrain> yeah, we can focus completely on a single thing
14:34:17  <TrueBrain> or we can just first see how we want to write mods
14:34:19  <Xaroth> Isn't that also a bit of a non-issue? if people write crappy loops, the code will perform crappy.
14:34:19  <TrueBrain> and take it from there
14:34:26  <TrueBrain> and have a bit of faith that I am an awesome programmer ;)
14:34:34  <Xaroth> so the incentive to not write crappy loops is there :P
14:34:41  <TrueBrain> (I would like to be creative today, and not talk for hours about a single part of the implementation :D)
14:34:45  *** Artea has quit IRC
14:35:01  <TrueBrain> so I rather hear what you think of the example
14:35:03  <TrueBrain> what you would like to see
14:35:06  <TrueBrain> etc
14:35:24  <LordAro> Xaroth: the ability for 3rd parties to run arbitrary code that hangs is a DoS, which is generally rather important when you have server/client architectures
14:35:52  <TrueBrain> andythenorth: I think I did something that increases readability
14:36:31  <TrueBrain> not sure if I can do hooks like this
14:36:39  <TrueBrain> if two subclasses define the same hook .. what happens
14:36:40  <TrueBrain> hmm
14:36:44  <TrueBrain> possibly not helping readability
14:45:09  <TrueBrain> okay, solved that pretty clean I think
14:47:19  <TrueBrain> frosch123: if you have some time, https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7, specifically the Client/Server part .. is that enough to do the things you mentioned yesterday, you think?
15:00:23  *** sla_ro|master has quit IRC
15:07:57  *** Corns has joined #openttd
15:09:10  <Corns> hi - is there a function that converts a Point to a TileIndex?
15:09:49  <Samu> TileXY?
15:10:23  <Corns> yay thanks it, thank you
15:10:42  <Corns> actually I think TileVirtXY is what I need
15:11:09  <Samu> TileX, TileY
15:11:30  <Samu> milek7, how's the 240 ais?
15:11:40  <Samu> erm, companies, but for me they're all gonna be ais :p
15:12:39  <Samu> can't wait to test it
15:12:43  <Corns> oml
15:14:58  <frosch123> TrueBrain: what does that code do?
15:15:11  <frosch123> is "storage" something that is automatically stored in savegames?
15:15:16  <Samu> what i'm more excited about is testing the self adjusting max opcodes with that many AIs running
15:15:25  <frosch123> i would expect some simliar defintion for "commands"
15:15:49  <frosch123> which you can then schedule for execution, and to which you can subscribe for upon execution
15:15:53  <DorpsGek_II> [OpenTTD/OpenTTD] michicc commented on pull request #7248: Change: Group processing of vehicle ticks by type of vehicle. This allows use of PerformanceCounter instead of PerformanceAccumulator. https://git.io/fjmrN
15:16:35  <frosch123> i guess both of the storage and the commands imply "storage per town" and "command for town"
15:16:46  <frosch123> so there are some assumtions about command parameters
15:19:17  *** Artea has joined #openttd
15:20:39  <frosch123> hmm, thinking about storage classes: we have global variables, variables per town, but we also have variables per company (possibly secret to other companies), per client (secret to other clients, and also to the server?) and per server (secret to everyone)
15:20:54  *** sla_ro|master has joined #openttd
15:21:11  <frosch123> i guess declaring the storage inside the Town class makes it per town
15:21:32  <frosch123> but maybe there could be some annotation about which role can read and write the storage
15:23:04  <frosch123> @Storage(SERVER_WRITE_CLIENT_READ) PISSED: CompanyDict[bool]
15:25:07  <frosch123> @Command(COMPANY_TRIGGERED) CmdPromiseCats : Command
15:26:32  <frosch123> CmdPromiseCats.SignalTestRun.Connect(Server._onCatTest)
15:26:54  <frosch123> CmdPromiseCats.SignalExecute.Connect(Server._onCatPromise)
15:27:34  <frosch123> def _onClickButton(): CmdPromiseCats.Emit()
15:28:06  <TrueBrain> can you cook something in that gist and share? would be awesome :)
15:28:34  <TrueBrain> I like where you want to go with this :(
15:28:38  <TrueBrain> :)
15:28:48  <TrueBrain> stupid keyboard... misspelling smileys ...
15:28:52  *** Progman has quit IRC
15:29:41  *** Progman has joined #openttd
15:30:31  <Samu> https://imgur.com/a/2q2Krld the so called SamuPatchPack
15:30:45  <Samu> only AI stuff
15:34:33  <Samu> 15 ais in single player, start spectator, ai gui overhaul, self-adjusting max opcodes, hmm... custom profile, start date = 0, maybe a few other things
15:36:05  <Samu> yeah, nobody cares :o
15:36:39  <LordAro> people cared enough to reject it ;)
15:52:21  <Eddi|zuHause> so, i didn't look in the OpenTTD General forum for a week, and suddenly all topics are by one guy?
15:53:32  <Samu> hmmm borkai on a 4k map usually crashes openttd
15:53:38  <Samu> waiting for it
15:58:20  <Samu> unless something was fixed in the meantime
15:58:42  <Samu> it used to use too much ram
15:58:42  <LordAro> you know where crash reports should go :)
15:59:01  <Samu> so much that once openttd was above 4 GB, it would poof with a WER crash
15:59:12  <LordAro> OTTD should never be able to be crashed, especially not by any external addons
15:59:27  <LordAro> 4GB... are you using the 32bit version instead of 64bit?
15:59:32  <Samu> 64-bit
16:00:01  <Samu> but the squirrel vm is 32-bit isn't it?
16:00:04  <Samu> i dunno
16:00:44  <Samu> memory seems to be in-check atm
16:00:48  <Samu> only 1 GB
16:00:50  <LordAro> hmm, possibly
16:00:51  <Samu> with all 15 ais
16:04:08  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjmoz
16:05:48  *** Wormnest has quit IRC
16:06:40  <glx> LordAro: yeah, micchi already commented about std::begin and std::end ;)
16:06:59  <LordAro> so he did
16:09:46  <glx> hmm using std::vector for _resolutions could remove the fixed size limit
16:10:04  <LordAro> that was one of the ones i noticed
16:10:33  <LordAro> also _sorted_cargo_specs, but you'd need to keep standard_cargo_specs_size regardless, not sure if that would work
16:10:58  <glx> _language_dropdown can be a vectore too I think
16:11:56  <LordAro> _sorted_railtypes too
16:12:19  *** Corns has quit IRC
16:12:26  <glx> for highscore I could keep it unchanged and use std::begin
16:24:28  *** andythenorth is now known as Guest249
16:24:29  *** andythenorth has joined #openttd
16:27:58  *** Guest249 has quit IRC
16:33:11  <DorpsGek_II> [OpenTTD/OpenTTD] michicc opened pull request #7512: Replace SmallStackSafeStackAlloc and AutoFreePtr https://git.io/fjmoj
16:34:15  * andythenorth reading a gist
16:35:34  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7512: Replace SmallStackSafeStackAlloc and AutoFreePtr https://git.io/fjmKv
16:37:12  <Eddi|zuHause> wtf is wrong with steam? i'm trying to download a 32MB game and it takes an hour?
16:37:38  <DorpsGek_II> [OpenTTD/OpenTTD] michicc commented on pull request #7512: Replace SmallStackSafeStackAlloc and AutoFreePtr https://git.io/fjmKf
16:37:42  <TrueBrain> upgrade your connection yo!
16:41:49  <andythenorth> TrueBrain: without getting stuck in implementation details, would this approach generalise to industry?
16:42:01  <andythenorth> industries don't actually do much, outside of tile graphics
16:42:12  <TrueBrain> so they are more like House, right?
16:42:21  <andythenorth> they are like house^2
16:42:23  <TrueBrain> and yes, the idea would be that this can work for everything
16:43:08  <andythenorth> class AirportStateMachine :P
16:43:27  <TrueBrain> after all, the idea is that this is just a higher language
16:43:29  <TrueBrain> nothing else
16:43:45  <TrueBrain> what frosch123 is suggesting, if I abstract it correctly, is to move to a more pub/sub method
16:44:11  <TrueBrain> decorators often makes code very unreadable
16:45:19  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7512: Replace SmallStackSafeStackAlloc and AutoFreePtr https://git.io/fjmKI
16:45:24  <TrueBrain> so we have to find a balancer there I guess
16:47:47  * andythenorth needs a train nerd for Horse chat
16:52:31  <Eddi|zuHause> ... download now finished
16:56:27  <TrueBrain> and now it turns out not to be what you want? :P
17:01:20  <V453000> andythenorth: bad feature, make ship
17:03:09  <andythenorth> V453000 is a bad feature
17:03:11  <andythenorth> make yeti
17:05:45  <DorpsGek_II> [OpenTTD/website] auge8472 commented on pull request #82: Discussion basis for rework of the general HTML structure and the CSS rules https://git.io/fjmKE
17:08:03  <V453000> dem
17:18:37  <V453000> I'm digging through my old NUTS code ... some parts are really fabulous, like 3rd generation of wagons being called wagon2, 2nd generation being called wagon3 ... in MOST cases :D ... of course because the first version of NUTS only had what now is 1st and 3rd generation...
17:18:55  <TrueBrain> maybe V453000 has an opinion on https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7 :P
17:21:15  <andythenorth> V453000: that sounds awesome
17:21:19  <andythenorth> and quite correct
17:26:48  <V453000> town mods in python ? :D
17:27:09  <TrueBrain> the language is more a matter of lack of anything better atm :P
17:27:14  <V453000> event.town._make_pissed()
17:27:15  <V453000> like
17:27:42  <TrueBrain> I am mostly looking for ideas what we would like to do in mods :)
17:29:24  <DorpsGek_II> [OpenTTD/OpenTTD] michicc commented on pull request #7512: Replace SmallStackSafeStackAlloc and AutoFreePtr https://git.io/fjmKQ
17:29:49  <nielsm> https://0x0.st/zNps.jpg   "there's never a bus here when you need it!"
17:29:54  <V453000> is that like a GS or newgrf?
17:30:03  <TrueBrain> both, and a bit more
17:30:06  <DorpsGek_II> [OpenTTD/website] auge8472 opened pull request #83: Two small changes with only a small effect to the output  https://git.io/fjmK7
17:30:11  <V453000> wtf :D
17:30:39  <TrueBrain> currently I think this Python will be compiled into some NewGRFs, some GS, and something new
17:30:40  <andythenorth> hmm
17:30:49  <andythenorth> town.api.disaster.bees()
17:30:53  <TrueBrain> not sure yet .. more wondering if this is the right approach to the problem, from a creator point of view
17:31:06  <TrueBrain> dynamic disasters ... hmm
17:31:15  <TrueBrain> the more things I see, the more I think Injectors are a better fit for our need
17:31:18  <TrueBrain> they are just a bit more magic
17:31:21  <TrueBrain> not sure if that is a real issue
17:31:35  <V453000> I'll go put baby to bed and I'm back :) interesting thing
17:31:36  <TrueBrain> basically, that means we only use Python as an already-defined language, not as execution mechanism
17:31:43  <TrueBrain> :)
17:34:10  <V453000> well python is the only language I know non-zero about so it automatically makes me excited, sorry :P
17:34:27  <V453000> regarding the rest, idk, more better :D I've never really coded town behaviour
17:34:50  <TrueBrain> fair :)
17:35:07  <TrueBrain> already working this out for Industry etc might be a bit much ..
17:35:08  <TrueBrain> sadly :P
17:35:19  <V453000> aww
17:35:40  <V453000> I could think about new possibilities in trains probably
17:36:03  <TrueBrain> fork my code, and modify it ? :D
17:36:11  <TrueBrain> replace House with Train, or what-ever :P
17:36:18  <V453000> XD
17:36:32  <andythenorth> Slug
17:36:57  <TrueBrain> took me a while to find out how to make slug .. Sea Block is kinda difficult to start with :P
17:37:10  <V453000> LOL
17:37:27  <V453000> had no idea seablock has slugs
17:37:30  <TrueBrain> owh, that is slag btw
17:37:36  <TrueBrain> tomato tomato
17:37:36  <V453000> ah thought so
17:37:44  <V453000> didn't play seablock tbh
17:37:59  <TrueBrain> it is just an easy way to get nice mods dragged in
17:38:07  <TrueBrain> too lazy to look up what other packs are out there :D
17:38:16  <V453000> :D OH.
17:38:35  <TrueBrain> could disable Seablock itself after downloading it, I guess
17:40:18  <TrueBrain> I like Bob's mods .. mostly inserts being able to go 45 degrees is nice
17:40:25  *** ConiKost has joined #openttd
17:40:29  <V453000> say no more :D
17:40:46  * V453000 summons logistic-challenge-nazi frosch123
17:41:02  <TrueBrain> an insult and a compliment! :P
17:41:09  <V453000> <3
17:41:34  <ConiKost> Hi. I want to report a bug in nml, as it doen't work with pillow-6.0.0. I see, that's now hosted on Github, but Issues tab are disabled. Is this correct, to report still on openttdcoop?
17:42:42  <frosch123> make a PR instead :)
17:43:06  <ConiKost> frosch123: Well, I don't have a solution for that :/
17:44:58  *** pnda has joined #openttd
17:49:21  <DorpsGek_II> [OpenTTD/website] TrueBrain approved pull request #83: Two small changes with only a small effect to the output  https://git.io/fjm6E
17:49:29  <DorpsGek_II> [OpenTTD/website] TrueBrain merged pull request #83: Two small changes with only a small effect to the output  https://git.io/fjmK7
17:54:55  <peter1138> Hi
17:55:53  <peter1138> Have I missed anything much today?
17:56:18  <TrueBrain> just https://gist.github.com/TrueBrain/51d914880f1090ea574aa40db748c1a7 :)
17:56:34  <michi_cc> TB is trying to reinvent stuff again :P
17:56:50  <TrueBrain> I kinda take insult to that
17:56:56  <TrueBrain> both the "again" and  "reinvent"
17:57:50  <LordAro> not "trying" ? :p
17:58:08  <TrueBrain> still not funny
17:58:20  <TrueBrain> it rarely is a nice thing to stab someone who indicates he feels insulted
17:58:24  <TrueBrain> but okay .. guess that is what we do here
17:58:29  <andythenorth> broken with pillow 6.0.0?
17:58:32  <andythenorth> what broke?
17:58:52  <peter1138> TrueBrain, I don't think anyone *meant* to insult you.
17:59:04  <michi_cc> Well, yes, reinvent it isn't really, but for again *cough*gpmi*cough*. Even if that wasn't really the same.
17:59:27  <peter1138> Hmm, well, money bug in NRT... I should look into it.
17:59:33  <TrueBrain> peter1138: how ever that might be the case, you have to realise it does not motivate at all
18:00:16  <TrueBrain> it is also not constructive
18:00:18  <TrueBrain> or helpful
18:00:45  <michi_cc> There's nothing really wrong with reinventing stuff though, often lead to unexpected progress.
18:00:53  <LordAro> it's like you're brand new to the internet or something
18:01:05  <TrueBrain> if that is the excuse, I am done
18:02:33  <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjLdR
18:03:32  <michi_cc> TrueBrain: If you don't like the word reinvent, okay. But that is what you are trying to do: reinvent how content for OTTD is created, and I don't see how that would be something negative.
18:03:43  <pnda> wait did that just commit 37 commits into my master branch? ... oh no
18:04:13  <LordAro> pnda: looks like you merged instead of rebased
18:04:32  <michi_cc> pnda: Always create PR's in a branch, helps with stuff like that.
18:04:46  <pnda> github just asked me if I wanted to resolve conflicts
18:05:16  <LordAro> yeah, it does that by merging :p
18:05:17  <ConiKost> andythenorth: when you upgrade vom pillow-5 to pillow-6, and want to run nmlc, for example, which is used by opengfx to compile, you get an error directly on running without any args
18:05:33  <pnda> "all checks have failed"
18:05:36  <pnda> uhm ok
18:05:42  <ConiKost> andythenorth: https://pastebin.com/C7tJwuYf
18:06:18  <andythenorth> hmm
18:06:28  <LordAro> pnda: seems you've merged, but not in a way that actually works
18:06:39  <pnda> i have no idea what i've done
18:06:40  <LordAro> you'll need to do it locally
18:07:21  *** TrueBrain has quit IRC
18:07:28  <LordAro> ConiKost: andythenorth: https://github.com/python-pillow/Pillow/pull/3624
18:07:52  <andythenorth> hmm
18:08:05  <ConiKost> LordAro: Great, does this work with pillow-5 too?
18:08:08  *** TrueBrain_ has left #openttd
18:08:44  <pnda> ok so I have absolutely no idea what to do now
18:08:54  <pnda> was that bad or is it ok?
18:09:29  <LordAro> ConiKost: since 5.2, i think?
18:09:40  <Xaroth> Guess he really is done
18:09:59  <LordAro> pnda: "all checks have failed" usually indicates that it is bad, yes
18:10:16  <pnda> ok so how do I revoke without stashing my local changes
18:11:06  <LordAro> i'm not sure you can do it without stashing local changes
18:11:46  <ConiKost> LordAro: Sounds good, thanks :)
18:14:14  <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjLdR
18:14:34  <pnda> ok I reset it back to the commit form michi_cc
18:14:58  <LordAro> yeah, that's worked
18:15:02  <michi_cc> pnda: Did you do git pull before?
18:15:07  <LordAro> still needs rebasing though, NULL -> nullptr happened
18:15:25  <michi_cc> If yes, do git pull --rebase instead
18:15:52  <pnda> that does what
18:15:59  <LordAro> peter1138: "2109"
18:16:08  <peter1138> ?
18:16:11  <LordAro> strava
18:16:14  <peter1138> oh
18:16:21  <LordAro> good effort though
18:16:24  <LordAro> beat me this week :p
18:17:16  <pnda> I did a git pull --rebase but it's showing that thread.h was modified
18:17:35  <ConiKost> LordAro: But will be there a fix for nml?
18:18:01  <LordAro> ConiKost: probably at some point
18:18:13  <LordAro> unless someone PRs it first :>
18:18:15  <peter1138> Fixed, thanks
18:19:41  <michi_cc> pnda: Where does it show you that? You can't rebase if you have uncommited changes in your working dir.
18:19:56  <pnda> Why the hell is thread.h showing up when I do git status, but if I try to stash them, and call status again it's still there
18:19:58  <ConiKost> LordAro: Well, should I create a bug report for this? ;-)
18:21:40  <pnda> Or better asking, why the hell did thread.h duplicate into src/thread.h...
18:29:01  <michi_cc> pnda: If git status tells you it is a new file, you have to manually delete it. The file was moved in master.
18:29:10  <pnda> Ok yeah noticed
18:29:13  <pnda> I already moved it
18:29:33  <pnda> Currently just searching where each string is used, to see if it works everywhere when I apply changes.
18:43:06  <pnda> michi_cc, uhm, the string fixed you performed, seems to break the city names, but not in the town list directory
18:43:50  <pnda> https://cdn.discordapp.com/attachments/442748131898032138/567057415455899650/unknown.png
18:47:29  <frosch123> andythenorth: https://gist.github.com/frosch123/2d36e092815df797e3dfc9bd4cff11b0#file-traptown-py <- OpenTTD Minesweeper
18:58:05  <nielsm> pnda: lol that's kinda wrong way around :P
18:58:14  <pnda> yup indeed
18:58:35  <pnda> We fixed the strings in the menu, but the strings in the world are now broken
18:59:29  <andythenorth> frosch123: someone at work made risk in irc
19:00:58  <frosch123> i hope it did not spam the map into the chat after each move
19:01:26  <andythenorth> I think it did with ascii
19:01:26  *** Wolf01 has joined #openttd
19:04:03  *** Xaroth has quit IRC
19:09:53  <Samu> I need more ram to run openttd https://imgur.com/NgNGqyL
19:12:47  <Samu> lol, it's still "exiting" openttd
19:15:19  * peter1138 flashes his NodeMCU.
19:15:47  <Samu> it finally exited!
19:17:08  <DorpsGek_II> [OpenTTD/website] auge8472 opened pull request #84: Change: semantic HTML-elements for the pages main sections and corresponding CSS-rules https://git.io/fjmi9
19:17:34  <Samu> i'm surprised it was still running with 21,8 GB memory reserved
19:17:43  <Samu> considering I only got 16GB installed
19:18:39  <Samu> what kind of magic the OS can do, it's not really worth it. too many slowdowns
19:18:59  <LordAro> "reserved memory" usually has a specific meaning that doesn't correspond to allocated memory or amount of memory installed
19:19:09  <LordAro> i've seen programs "reserve" 2TB of memory before
19:20:02  <pnda> why not
19:20:11  <pnda> who doesn't have 2tb ram :p
19:20:21  <Samu> not sure what to call it
19:20:31  <peter1138> I... only have 32GB :/
19:23:39  <milek7> what is MP_VOID for?
19:24:24  <DorpsGek_II> [OpenTTD/website] auge8472 commented on pull request #84: Change: semantic HTML-elements for the pages main sections and corresponding CSS-rules https://git.io/fjmiF
19:24:25  <Samu> ok, the english version of that column is Commit (KB)
19:24:45  <Samu> openttd commited 21,800,000 KB
19:24:52  <Samu> then i decided to exit it
19:26:11  <Samu> and took about 7 minutes to "exit"
19:26:21  <Samu> was unloading it from disk it seems
19:27:37  *** ConiKost has quit IRC
19:29:01  <LordAro> milek7: the void ;)
19:29:07  <LordAro> or, the edge of the map
19:29:18  <Samu> they're the black tiles
19:29:44  <LordAro> for hysterical raisins, the map is surrounded by "actual" tiles that you can't see or touch
19:29:59  <LordAro> (which is why maps are actually only (e.g.) 62x62
19:30:01  <LordAro> )
19:30:03  <LordAro> i think
19:30:09  <LordAro> i don't think i've made any of that up
19:33:13  <peter1138> Originally it was 63x63. Void tiles were only on two edges.
19:33:40  <peter1138> You can still get that by disabling freeform edges.
19:34:07  <peter1138> You might then encounter a whole new load of bugs from routines which expect the edges to be invalid tiles.
19:34:56  <Samu> yes! openttd crashed
19:35:05  <Samu> too bad there's no dump
19:37:37  <Samu> let's try 1.9.1, maybe that can create dump
19:38:06  *** tycoondemon has quit IRC
19:38:59  *** Arveen has joined #openttd
19:45:00  *** gelignite has joined #openttd
19:47:52  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro requested changes for pull request #7510: Emscripten support https://git.io/fjmPm
19:49:16  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro requested changes for pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjmP3
19:50:04  <andythenorth> hmm
19:50:09  <andythenorth> let's make container wagons
19:50:46  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm0B
19:51:34  <glx> LordAro: I was doing it ;)
19:51:46  <LordAro> ;)
19:54:14  <glx> let's hope I didn't introduce any errors or warnings
19:54:41  <glx> ok OSX failed
19:55:26  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on pull request #7510: Emscripten support https://git.io/fjmPl
19:55:29  <andythenorth> rude of it
19:55:43  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7396: Fix: Saving SDT_INTLIST handle unsigned values properly https://git.io/fjmP8
19:56:52  <glx> nice it failed on a part I haven't touched when rebasing
19:58:01  <glx> oops syntax error in sdl
20:02:04  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on pull request #7510: Emscripten support https://git.io/fjmP0
20:05:14  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on pull request #7510: Emscripten support https://git.io/fjmPz
20:07:02  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on pull request #7510: Emscripten support https://git.io/fjmPg
20:08:21  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on pull request #7510: Emscripten support https://git.io/fjmP2
20:10:29  <pnda> I take it that png_create_read_struct(PNG_LIBPNG_VER_STRING) is to load a heightmap png? And when that's NULL, does the heightmap not exist/is it not a png?
20:10:30  <Samu> crashed with no dump :(
20:11:18  <LordAro> Samu: run within visual studio so you get a proper stack trace?
20:11:29  *** arikover has joined #openttd
20:11:38  <peter1138> If the stack isn't smashed
20:11:42  <Samu> hmm, ok
20:11:54  <Samu> in debug mode, right?
20:12:09  <glx> no, release mode works too
20:12:47  <Samu> I can wait, for months I've been trying to reproduce this bug
20:12:55  <Samu> but
20:12:57  <glx> it's easier to debug with debug mode as there's less optimisation, but stack trace should be the same
20:13:11  <Samu> 4k map, 250k ops, debug mode... aww the pain
20:13:22  <DorpsGek_II> [OpenTTD/OpenTTD] Milek7 commented on pull request #7510: Emscripten support https://git.io/fjmPw
20:14:17  <pnda> Does anyone here know who made the Brianum sets?
20:17:04  <frosch123> that's literally the name of the author
20:17:12  <frosch123> probably has not been around for 10 years though
20:19:58  <pnda> there's been some sprite license issues with the guys sets
20:20:15  <frosch123> https://www.tt-forums.net/memberlist.php?mode=viewprofile&u=1601 <- hmm, i think it is that guy
20:20:29  <frosch123> i associate brianum with autopilot
20:20:37  <frosch123> and that guy has that as most active topic :p
20:21:13  <pnda> He also created that topic
20:21:29  <frosch123> so, ask him whether he is associated with brianum set :)
20:24:54  *** Supercheese has joined #openttd
20:28:32  <milek7> peter1138: https://github.com/OpenTTD/OpenTTD/blob/master/src/cargomonitor.h#L30
20:28:36  <milek7> this comment is outdated, right?
20:28:57  <peter1138> Looks like it. I never noticed it.
20:29:49  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm0B
20:30:12  <peter1138> milek7, trying to fit 250 into 7 bits might be fun :/
20:30:38  <milek7> ;P
20:30:42  <peter1138> Maybe you can make CargoMonitorID a uint64.
20:33:29  <glx> oh weird MSVC was failing too, but it was ok locally
20:36:41  <peter1138> Hmm, cmake is ready for merge?
20:36:55  <peter1138> I better try it again :D
20:37:42  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7510: Emscripten support https://git.io/fjmXT
20:38:20  <glx> ok 2 warnings for win64, I don't have any locally
20:38:24  *** andythenorth is now known as Guest266
20:38:24  *** andythenorth has joined #openttd
20:39:08  *** Guest266 has quit IRC
20:47:43  *** Supercheese has quit IRC
20:48:04  *** Supercheese has joined #openttd
20:48:52  <glx> oh I was building for win32 locally, that explains
20:50:59  <peter1138> Hmm, AIs seem broken in the CMake PR.
20:52:04  <peter1138> I guess the compat* files are not in the right place. Hmm.
20:52:33  <glx> possible yes
20:57:12  *** Xaroth has joined #openttd
20:57:28  *** Supercheese has quit IRC
20:57:50  *** Supercheese has joined #openttd
20:58:25  <LordAro> would've thought the regression script would pick that up?
21:01:27  <glx> regression doesn't use compatiblity mode I think
21:01:39  <LordAro> that would make sense
21:01:46  *** sla_ro|master has quit IRC
21:01:55  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 updated pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm0B
21:02:30  *** andythenorth has quit IRC
21:06:44  <Samu> crash happened
21:07:03  <Samu> start live share session?
21:07:05  <Samu> keks
21:07:40  <Samu> https://prod.liveshare.vsengsaas.visualstudio.com/join?74B1F5FD33C5893FD1BB41F71E2EEB43F824
21:07:51  <Samu> invitation link
21:08:01  <DorpsGek_II> [OpenTTD/website] auge8472 updated pull request #84: Change: semantic HTML-elements for the pages main sections and corresponding CSS-rules https://git.io/fjmi9
21:09:35  *** gelignite has quit IRC
21:10:52  <milek7> Samu: https://github.com/Milek7/OpenTTD/commits/more_companies
21:10:58  <milek7> but I haven't tested it much
21:11:10  <Samu> cool
21:11:11  <milek7> framerate window needs fixing for more AI entries
21:11:52  <milek7> and I'm not sure of correctness of savegame conversion code
21:11:57  <Samu> glx, u using vs 2019? is that link of any use?
21:14:11  <DorpsGek_II> [OpenTTD/OpenTTD] LordAro commented on pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjmX6
21:15:14  <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjLdR
21:15:28  <pnda> PR is complete now ^
21:15:40  <pnda> If there's any errors on Linux or Max OSX, please say so.
21:16:19  <Samu> this is the crash: https://imgur.com/djaHWkv
21:16:23  <Samu> doesn't show much :(
21:18:06  *** arikover has quit IRC
21:18:43  <LordAro> Samu: that is suspiciously short
21:18:48  <glx> enough to see an segfault
21:19:20  <glx> and probably corrupted stack too :)
21:19:23  <pnda> Why is this? This branch has conflicts that must be resolved
21:19:45  <glx> you rebased ?
21:20:01  <LordAro> pnda: master branch has other changes in similar areas, so you must update your branch to match
21:20:17  <LordAro> you did this with merging earlier, but for OTTD we like to use rebasing
21:20:56  <pnda> LordAro: so what would I do exactly
21:21:31  <LordAro> pnda: https://help.github.com/en/articles/about-git-rebase probably a good place to start
21:21:48  <DorpsGek_II> [OpenTTD/website] auge8472 opened pull request #85: Change: HTML5-elements and corresponding CSS-rules for the blog article template https://git.io/fjmXN
21:22:46  <pnda> LordAro: So just git rebase upstream/master?
21:23:03  <LordAro> pnda: in theory, yes
21:23:09  <LordAro> but you may get conflicts that you have to resolve
21:23:19  <LordAro> from what i can tell, it should be relatively easy
21:23:31  <pnda> will this remove any commits I have done to this branch? I guess no
21:23:52  *** Wolf01 has quit IRC
21:27:07  <pnda> git is soooo annoying
21:27:20  <pnda> hint: Updates were rejected because the tip of your current branch is behind its remote counterpart.
21:28:29  <pnda> I did git rebase and it basically did a merge
21:31:54  <LordAro> pnda: define "basically"
21:32:00  <pnda> idk
21:32:04  <pnda> i still have no idea of git
21:32:14  <pnda> if I want to rebase
21:32:15  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick opened issue #7513: OpenTTD closes itself with no crash dump https://git.io/fjm1f
21:32:19  <pnda> it wants to pull 42 commits
21:32:25  <Samu> somebody else can try reproduce it?
21:32:47  <LordAro> pnda: probably related to you using master
21:33:17  <LordAro> try `git fetch upstream`, then `git rebase upstream/master` ?
21:33:31  <LordAro> if you could paste all the output somewhere, that would be lovely
21:35:14  <pnda> https://pastebin.com/AE392zid
21:35:38  <pnda> Then if I resolve the conflict and then continue rebase it wants to pull
21:36:10  <LordAro> did you add changes before continuing rebase?
21:36:42  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on issue #7513: OpenTTD closes itself with no crash dump https://git.io/fjm1k
21:36:54  <pnda> Yes I did, I resolved the conflict
21:37:15  <LordAro> can you paste that output?
21:37:30  <pnda> Wait this worked fine this time
21:37:39  <pnda> Applying: Fix: Improve formatting of mixed RTL and LRT content when using ICU text layout.
21:37:47  <LordAro> :)
21:37:56  <LordAro> right, now force push
21:38:09  <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjLdR
21:38:16  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm1L
21:38:30  <pnda> why did that add so many commits
21:38:31  <LordAro> pnda: that seems better :)
21:38:51  <LordAro> pnda: were you not expecting 6 commits?
21:39:02  <pnda> well those are old commits
21:39:11  <pnda> that look like they're recommited
21:39:31  <pnda> Or is this normal that this looks like this?
21:39:38  <DorpsGek_II> [OpenTTD/OpenTTD] glx22 commented on pull request #7509: Codechange: replace left QSortT() with std::sort() https://git.io/fjm1Y
21:39:38  <LordAro> hmm, perhaps
21:39:44  <LordAro> i think you have actually created 6 commits
21:39:52  <LordAro> they should probably be squashed together
21:40:03  <LordAro> you can do this with rebase -i
21:40:15  <LordAro> and also you didn't actually merge correctly - you reintroduced "NULL"
21:40:30  <pnda> i've got no idea anymore
21:41:00  <LordAro> that's not a very helpful comment
21:41:06  <LordAro> about what?
21:41:10  <LordAro> what have you tried?
21:41:11  <pnda> I am so confused
21:41:13  <LordAro> what are you trying to do?
21:41:23  <pnda> I have no idea what I can do or should do
21:41:43  <LordAro> ok, let's take it one step at a time
21:41:54  <LordAro> you want to merge all those commits together, into a single commit
21:42:06  <pnda> yes
21:42:12  <pnda> git squash?
21:42:12  <LordAro> you can do this via a rebase, specifically an interactive rebase
21:42:27  <pnda> yes, it has opened my editor
21:42:33  <glx> git rebase -i HEAD~<number of your commits>
21:42:40  *** frosch123 has quit IRC
21:42:46  <LordAro> glx: upstream/master is more helpful in this case
21:43:16  <pnda> so what now?
21:43:23  <LordAro> pnda: ok, now modify that file according to what you want to do to each commit. in this case, it's replace "pick" with "squash" for all except the first commit in the list
21:43:29  <glx> keep "pick" on first commit, replace other "pick" with "fixup"
21:43:40  <LordAro> ^ yes, fixup would be better
21:44:34  <pnda> so I just do pick <sha1 of commit> and then all other ones "fixup"?
21:45:06  <LordAro> don't touch anything other than the first word of each line
21:45:08  <LordAro> but yes
21:45:21  <pnda> I have no lines
21:45:31  <LordAro> screenshot please?
21:45:35  <pnda> it's just "noop"
21:45:47  <LordAro> ah
21:45:54  <pnda> https://cdn.discordapp.com/attachments/442748131898032138/567103243193286666/unknown.png
21:45:56  <LordAro> what command did you run to get the rebase?
21:46:01  <pnda> git rebase -i
21:46:14  <LordAro> `git rebase -i upstream/master`
21:46:14  <pnda> oh I should have done HEAD~1
21:46:35  <pnda> ok yes I have
21:46:40  <LordAro> ~1 would've only picked the "top" commit, whereas you want all the commits in your branch
21:46:46  <LordAro> all your commits*
21:47:01  <pnda> Ok I have 6 commits here
21:47:09  <pnda> 2 of which are not mine
21:47:09  <LordAro> :)
21:47:21  <LordAro> indeed, they're michi's
21:47:45  <glx> but they are part of the PR
21:47:55  <pnda> they just broke everything for me rly
21:48:12  <pnda> So this is correct? https://cdn.discordapp.com/attachments/442748131898032138/567103811680993291/unknown.png
21:48:17  <LordAro> doesn't matter, we're squashing everything together
21:48:26  <LordAro> yup
21:48:58  <pnda> So I closed the editor
21:49:06  <pnda> What now
21:49:09  <pnda> force push?
21:49:12  <LordAro> yup
21:49:23  <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjLdR
21:50:10  <LordAro> that looks good
21:50:16  <pnda> I am annoyed that those other commits still show up in the PR and as referenced in #6666
21:50:25  <LordAro> yeah, that's a GH thing
21:50:34  <LordAro> just ignore them
21:50:42  <pnda> Ok good
21:51:10  <LordAro> now we need to redo the merge to remove the NULLs
21:51:13  <pnda> Oh it's back to NULL instead of nullptr tho
21:51:26  *** Progman has quit IRC
21:51:30  <LordAro> so rebase -i again, but use "edit" this time
21:52:03  <pnda> so this? edit d0664161f Fix #6666: Fixed arabic town name directory string
21:52:10  <glx> yes
21:52:39  <pnda> So now I edit the file and all changes are put into that commit?
21:52:42  <glx> then fix the NULL, git add, git commit --amend
21:52:49  <pnda> ok thought so
21:52:50  <pnda> thanks
21:53:02  <glx> and finally git rebase --continue
21:53:03  <LordAro> might also want to change the commit message while you're at it
21:53:38  <pnda> how would I do that?
21:53:41  <glx> other option as it's the last commit is to skip rebase and just fix NULL, git add, git commit --amend
21:53:49  <LordAro> pnda: during the commit --amend
21:54:16  <pnda> git commit -m "commit message" --amend?
21:54:27  <glx> just git commit --amend
21:54:32  <glx> it will open an editor
21:54:35  <LordAro> i think that would work, usually --amend opens an editor
21:54:42  <pnda> Ok well I'll check
21:54:59  <pnda> So changing those three NULL to nullptr is enough?
21:55:04  <glx> yes
21:55:27  <pnda> Ok it did
21:55:49  <pnda> Is this good? "Fix #6666: Fix brackets in arabic strings"
21:56:10  <nielsm> Arabic, capitalised
21:56:13  <LordAro> duplicated Fix is not so good
21:56:35  <pnda> so just remove the second Fix?
21:56:40  <pnda> nielsm: thanks... lol
21:56:41  <nielsm> or write LTR instead of language
21:57:07  <nielsm> (though that would imply also going over the hebrew file)
21:57:45  <LordAro> i'd probably go with something like "Mismatched parentheses in RTL languages"
21:58:03  <pnda> Ok that sounds better yes
21:58:23  <pnda> but it's only one language
21:58:33  <pnda> So maybe "Mismatched parentheses in Arabic"?
21:59:08  <glx> the gfx_layout.cpp changes touches all RTL languages ;)
21:59:13  <LordAro> pnda: except the change in gfx_layout.cpp- ^
21:59:22  <pnda> well true
21:59:27  <pnda> So yeah I'll do languages
21:59:56  <pnda> So I've closed the editor
22:00:00  <pnda> Now it's git push -f
22:00:02  <pnda> ?
22:00:06  <glx> yes
22:00:32  <pnda> fatal: You are not currently on a branch. To push the history leading to the current (detached HEAD) state now, use "git push origin HEAD:<name-of-remote-branch>"
22:00:46  <pnda> Just do that?
22:00:49  <glx> oh git rebase --continue
22:01:01  <nielsm> if it says that you're usually in a bad state
22:01:12  <pnda> ah yes the rebase wasn't finished
22:01:20  <pnda> now force push tho
22:01:27  <nielsm> and should check "git status" to get some hints on why the state is bad
22:01:30  <DorpsGek_II> [OpenTTD/OpenTTD] spnda updated pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjLdR
22:01:47  <nielsm> ("git status" will tell you if you're in the middle of a rebase, merge, or whatever)
22:02:10  <pnda> Yeah
22:02:37  <glx> if you're on windows there is posh-git for powershell
22:03:04  <glx> a nice extension displaying the state in the prompt
22:03:31  <pnda> Yeah I am on Windows
22:03:34  <pnda> But I like sticking to cmd
22:04:19  <glx> there's also autocompletion for git commands with posh-git
22:11:04  <michi_cc> pnda: If you are more into GUIs, I'd recommend Git Extensions. As usual, there are always some things the command line can do better, but git extensions map quite a lot of the git cmds.
22:11:21  <pnda> I'm mostly into usability
22:11:58  <michi_cc> Well, the graphical repo view is _the_ advantage of any GUI tool.
22:14:00  <DorpsGek_II> [OpenTTD/OpenTTD] michicc commented on pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjm1a
22:15:01  <DorpsGek_II> [OpenTTD/OpenTTD] spnda commented on pull request #7480: Fix #6666: brackets in arabic strings https://git.io/fjm1r
22:15:51  *** nielsm has quit IRC
22:37:13  <Samu> minor nitpicking
22:37:27  <Samu> aircraft and ships are switched in the finances window
22:37:52  <Samu> at least for me
22:38:18  <Samu> everywhere else, ships come first, aircraft comes last
22:39:58  <Samu> max num of aircraft / ships also switched
22:40:10  <Samu> hmm, looks like it's not everywhere else
22:42:04  <Samu> companies command too
22:42:10  <Samu> well, guess I was wrong
22:43:04  *** arikover has joined #openttd
22:49:04  *** pnda has quit IRC
22:52:53  *** pnda has joined #openttd
22:56:31  *** arikover has quit IRC
22:57:27  <DorpsGek_II> [OpenTTD/OpenTTD] SamuXarick commented on issue #7513: OpenTTD closes itself with no crash dump https://git.io/fjmMT
23:13:15  <Samu> poof
23:13:30  <pnda> i rly need a new irc client
23:13:34  <pnda> but I want to make my own
23:22:37  <Eddi|zuHause> "make my own"? none of the two dozen existing ones suit your needs?
23:33:06  <Samu> stack overflow is actually not just a website
23:33:26  <Samu> could it be the cause of this crash?
23:34:20  <Samu> corrupted stack?
23:35:15  *** cHawk- has quit IRC
23:39:22  <Samu> reading random answers on what could corrupt a stack: "Throwing an exception inside a destructor is a good candidate. It would mess up the stack unwinding."
23:40:00  <milek7> compile with addresssanitizer?
23:40:13  <milek7> oh, it's on windows
23:53:27  <Samu> got another crash
23:53:32  <Samu> the stack got something now
23:54:45  *** Maarten has quit IRC
23:57:32  <Samu> oops, can't comment, more than 65536 characters

Powered by YARRSTE version: svn-trunk