Times are UTC Toggle Colours
00:39:06 *** Progman has quit IRC 00:39:23 *** snail_UES_ has joined #openttd 00:52:27 *** tyteen4a03 is now known as t4 00:55:43 *** t4 is now known as tyteen4a03 02:10:52 *** Ttech has joined #openttd 02:31:25 *** WHamilton has joined #openttd 02:33:01 <WHamilton> help, my first plane won't land! is the airport too close to the road? https://gfycat.com/VerifiableGraveIberiannase 02:35:35 <Eddi|zuHause> that doesn't sound like a legit url 02:37:55 <Eddi|zuHause> anyway, there might be a "close airport" button somewhere that you ticked 02:39:16 <WHamilton> forgot i closed it earlier, thanks 02:39:18 *** WHamilton has quit IRC 05:21:18 *** Alberth has joined #openttd 05:21:18 *** ChanServ sets mode: +o Alberth 05:21:23 <Alberth> o/ 05:53:51 *** nielsm has joined #openttd 05:54:08 <nielsm> morning 06:03:56 *** andythenorth has joined #openttd 06:04:14 <andythenorth> moin 06:07:46 <peter1138> yes 06:07:50 <andythenorth> @seen pikka 06:07:50 <DorpsGek> andythenorth: pikka was last seen in #openttd 6 weeks, 4 days, 20 hours, 49 minutes, and 53 seconds ago: <Pikka> oops 06:07:55 <peter1138> o_O 06:09:09 <andythenorth> I have 90 trains to draw :P 06:09:19 <andythenorth> somehow pikka reminds me to do it 06:09:30 <andythenorth> but no pikka so eh 06:39:48 <Alberth> apparently, pikka doesn't need to be around for you to remind it? 06:40:13 <Alberth> *remember 06:40:42 *** SpComb has joined #openttd 06:42:23 <andythenorth> apparently 06:49:29 <nielsm> I just spent way too long on painting this :D https://user-images.githubusercontent.com/1062071/43353938-720a617c-9242-11e8-8de6-72a2136b8282.png 06:54:23 <andythenorth> o_O 06:54:28 <andythenorth> moin nielsm 06:57:32 <andythenorth> is 'type city produces accepts' a dropdown filter? 07:02:24 <nielsm> yes that's the intention 07:09:43 <peter1138> Argh at Chain Reaction 07:09:52 <peter1138> Ordered something last night for 4-5 day free delivery. 07:10:05 <peter1138> They shipped it. Today. To my work address, of course, because 4-5 day free delivery. 07:12:22 <andythenorth> :P 07:13:20 <andythenorth> I hate drawing tank wagons :P 07:13:23 <andythenorth> or anything round 07:13:27 <andythenorth> or pointy 07:16:08 <Alberth> that leaves box wagons and open wagons I guess? :) 07:16:24 <andythenorth> they're ok 07:16:33 <andythenorth> also hoppers mostly ok 07:17:03 <Alberth> except for the cargo 07:19:01 <andythenorth> once I have one good tank wagon, the other 14 will be easier 07:21:34 <Alberth> can't pixa compute the color based on position on the tank? 07:25:15 <andythenorth> probably could teach it 07:40:42 *** chomwitt has joined #openttd 08:00:55 <andythenorth> nielsm: this industry stuff is pretty exciting :) 08:03:11 <nielsm> have you managed to do anything useful yet? 08:09:17 <andythenorth> I haven't tried patching nml yet 08:09:24 <andythenorth> waiting to see what happens with the github import 08:16:30 <andythenorth> getting nml reviewed without github is kind of daft 08:40:17 *** Progman has joined #openttd 08:53:22 <Alberth> nielsm: you were talking about cargo slots instead of ids? https://newgrf-specs.tt-wiki.net/wiki/Version_numbers#GRF_version_7 seems to have done the reverse change 08:55:30 <nielsm> nah my "cargo slots" means something else 08:55:52 <nielsm> it's position in the array of accepted/produced cargoes for the industry in question 08:58:44 <nielsm> hmm I seem to have broken cargo suffixes on industries 08:59:34 <nielsm> https://0x0.st/sV7w.png 09:01:14 * andythenorth afk a bit 09:03:03 *** keoz has joined #openttd 09:03:44 <Rubidium> peter1138: but then the 4-5 day shipping holds, right? Friday, Saturday, Sunday and finally arriving on Monday; I count 4 days of shipping ;) 09:32:10 *** Wormnest has joined #openttd 09:39:08 <Alberth> oh joy, there are several tables for grf actions, and they overlap 09:40:53 *** keoz has quit IRC 09:46:07 *** Eddi|zuHause has quit IRC 10:13:18 <nielsm> /* There are no callbacks 0x3E - 0x13F */ 10:13:36 <nielsm> is that because it's impossible, or just that they haven't been defined? 10:24:11 <Alberth> who knows, it's all one pile of legacy crap 10:27:57 <nielsm> I have a suspicion AddAcceptedCargo_Industry has been broken for years and per-tile cargo acceptance callbacks don't actually work 10:29:43 <nielsm> oh wait never mind 10:41:34 <andythenorth> :) 10:43:29 <nielsm> should also add the variable length acceptance to house tiles, but they're annoying because of special logic surrounding goods/food/toys acceptance 10:45:25 <nielsm> also will have to write an updated spec update including all the changes to frosch's initial :D 10:45:27 <andythenorth> :P 10:53:28 <nielsm> should I add some kind of global a grf can query about actual max number of accepted/produced cargoes? 10:56:23 <Alberth> would be implied by a grf version number, wouldn't ? 10:57:09 <nielsm> could query openttd version and assume 1.9+ has minimum 16 of each ya 10:57:20 <nielsm> that might be good enough 10:58:09 <Alberth> you can specify 16 cargos input/output in the current definition? 10:59:16 <Alberth> https://newgrf-specs.tt-wiki.net/wiki/Action0/Industries#Production_cargo_types_.2810.29 <-- says "two", so no 10:59:33 <nielsm> https://github.com/OpenTTD/OpenTTD/pull/6867 10:59:40 <nielsm> the patch I'm working on :) 10:59:51 <nielsm> about to write an updated spec update 11:01:19 <Alberth> property 10 is a word, so I fail to see how it does not change the grfspec 11:02:31 <nielsm> by adding new properties instead 11:02:48 <nielsm> the old properties don't change meaning in an incompatible way 11:05:39 <Alberth> andythenorth: so you can read NFO only if you have all the wiki pages in your head, with all the edge cases and exceptions???!!! 11:09:25 <andythenorth> I have them in my browser Alberth 11:10:31 <Alberth> so have I, but specs are ambigious, and don't say how to decode to the right page, or not even mention which pages exist 11:11:56 <Alberth> https://newgrf-specs.tt-wiki.net/wiki/ActionD nice, simple, generic, but no mention of \DR 11:12:58 <Alberth> https://newgrf-specs.tt-wiki.net/wiki/GRFResourceManagement so that's here apparently, but that table fits in the previous table, so D is ambigious 11:13:55 <Alberth> and there are at least 2 more D tables 11:15:48 *** Wacko1976-work has quit IRC 11:17:06 <andythenorth> :P 11:21:53 <Alberth> you can laugh, but I don't know what to do now 11:23:22 <Alberth> so how is this not ambigious? 11:25:24 <andythenorth> I don't know :) 11:25:32 <andythenorth> I have never used the GRM stuff 11:26:00 <andythenorth> I've never had a problem that I need it to solve 11:26:32 <Alberth> you do use it, read chips/sprites/nfo/grm_sprites.pnfo :p 11:27:41 <andythenorth> yexo wrote that :) 11:28:01 <andythenorth> when I add things to CHIPS, I do it by cargo culy 11:28:03 <andythenorth> cult * 11:28:10 <andythenorth> I have no real idea how the set is built 11:28:18 <andythenorth> I just find the action 2 / 3 I need to change 11:28:48 <Alberth> yeah, that fails if you need to write a station compiler :p 11:28:56 <andythenorth> sorry :( 11:29:48 <Alberth> hopefully someone else knows 11:45:37 <peter1138> don't look at me 12:03:59 <nielsm> okay, finished the long post with spec changes 12:04:02 <nielsm> phew 12:14:01 <andythenorth> :) 12:20:32 <peter1138> hmm so 12:25:33 <andythenorth> I like the tree spec 12:27:08 <nielsm> it's basically a cellular automaton ruleset :P 12:29:00 *** Compu has joined #openttd 12:33:35 <andythenorth> it looks really nice 12:33:48 <andythenorth> there is zero requirement for controlling per tree, per tile 13:08:24 *** ToBeFree has joined #openttd 13:08:50 <nielsm> big question of TT world: what happens to the cargo industries produce but don't transport? 13:11:39 <peter1138> They transported it by hand. 13:12:22 <andythenorth> invisble movers 13:12:28 <andythenorth> like in railroad tycoon 3 13:22:30 <Alberth> simple track .tnfo 966 lines, omg 13:24:33 *** andythenorth has quit IRC 13:38:47 *** sim-al2 has quit IRC 14:07:30 <nielsm> test newgrf: Super Power Plant! https://0x0.st/sVhC.png 14:11:44 *** andythenorth has joined #openttd 14:13:15 <nielsm> https://0x0.st/sVFX.png 14:19:57 *** keoz has joined #openttd 14:23:37 <andythenorth> nielsm: \o/ 14:23:46 <andythenorth> this is great :) 14:24:45 <andythenorth> snail_UES_: https://github.com/OpenTTD/OpenTTD/pull/6805 14:26:19 <nielsm> andythenorth, also upgrading house tiles to support var length accepts lists? y/n 14:28:19 <nielsm> https://0x0.st/sVFB.nfo <- superpowerstation.nfo 14:29:38 <nielsm> (I think I attempted to make some trains back in 2003 or something, but this is the most successful .nfo file I've authored) 14:29:40 <andythenorth> ok :) 14:30:03 <andythenorth> if house tiles follow naturally from industry tiles, it seems legit 14:30:32 <andythenorth> it's not essential though 14:31:41 <nielsm> https://github.com/OpenTTD/OpenTTD/blob/master/src/newgrf.cpp#L2404 14:31:58 <nielsm> it's a bit annoying because of special rules regarding goods/food/drinks 14:34:23 <nielsm> huh, prop 1E is suspicious 14:34:53 <nielsm> oh, right just three bytes in a dword 14:35:10 <snail_UES_> andythenorth: saw that… so now it’s in trunk? :) 14:40:16 <andythenorth> snail_UES_: yes 14:40:22 <andythenorth> but there's no compile farm at the moment 14:40:43 <snail_UES_> hmm, what does thst mean? 14:40:57 <andythenorth> no binaries are getting built 14:41:05 <andythenorth> if you want to try it, you'll have to compile your own 14:45:19 <snail_UES_> ok, I use a mac anyway :p 14:45:27 <snail_UES_> I’ve always had to compile my OTTD 14:46:42 *** Kippers has joined #openttd 14:47:30 <andythenorth> binaries never worked? :o 14:48:03 <snail_UES_> honestly I never tried… 14:48:32 <snail_UES_> I leanrt how to apply patches OTTD time ago so I became familiar with compiling my own 14:48:38 <snail_UES_> so never cared for binaries since :D 14:50:23 <nielsm> I'm reading nml's code right now 14:50:46 <nielsm> wondering what's a better approach to the variable lenth acceptance 14:51:18 <nielsm> write old properties if <=3 cargoes accepted and new properties it >3 cargoes accepted, or define a separate property name in nml for the new properties 14:52:35 <andythenorth> nml tends towards magic 14:52:39 <andythenorth> I'd favour magic 14:53:05 <andythenorth> magic makes it use nfo docs to understand nml, which I often have to do 14:53:05 <andythenorth> but 14:53:11 <andythenorth> it's easier for authors on average 14:53:51 <snail_UES_> question for you guys. Could we have certain railtypes only allow 90-degree curves, instead of “all or nothing”? 14:54:15 <snail_UES_> I think this request was pushed back time ago, but was wondering if our progress since would make it possible 14:54:17 <andythenorth> oof, I made a tactical coffee error 14:54:30 <andythenorth> I didn't drink coffee due to my gut hurting 14:54:42 <andythenorth> now I have shakes and sweats and no-coffee rage 14:55:02 <nielsm> snail_UES_: without knowing much about the pathfinding logic, I think having train types be limited instead is easier to implement at least 14:58:32 <snail_UES_> nielsm: meaning, only trains coded with certain railtypes would be able to run on 90-degrees line? 14:58:48 <snail_UES_> that would be a useful feature by itself 14:59:24 <nielsm> I think you might be able implement it as a per-vehicle flag 14:59:48 <snail_UES_> that would work... 15:00:00 <nielsm> so you could have wagons with widely spaced axles unable to cross narrow turns, but closely set axles/flexible bogies would be able to 15:00:02 <nielsm> for example 15:00:33 <snail_UES_> nielsm: yes, I was thinking about using gauge as the criterion 15:00:40 <snail_UES_> I’ve always felt narrow gauge would be much more interesting if it had an in-game advantage, and this would suit them well (in reality they had sharper curves) 15:03:44 <andythenorth> that is an interesting idea 15:03:55 <andythenorth> like a reverse-tilt bonus :P 15:04:14 <andythenorth> due to pathfinding, I'd rather nerf the speed than ban 90 degrees 15:04:50 <snail_UES_> andythenorth: speed is already limited 15:05:52 <andythenorth> for me the interesting question is 'how to buff narrow gauge' 15:06:03 <andythenorth> are there other ways? o_O 15:07:29 <nielsm> can't imagine anything other than making slopes even steeper 15:07:51 *** ToBeFree has quit IRC 15:09:16 <nielsm> make a narrow gauge variation that costs significantly more in construction/maintenance but allows supporting vehs much greater power going uphill? (chain pull up hills) 15:09:38 <andythenorth> just buff TE 15:11:28 <snail_UES_> nielsm: that’s rackrail… 15:11:51 <snail_UES_> as you said, unfortunately all slopes in the game have the same steep 15:12:15 <snail_UES_> so rackrail trains, even if I give them a zillion kN of TE, don’t really have a real in-game advantage 15:12:41 <snail_UES_> especially because, in reality, their speed was very limited, so it’d be silly for me to allow them to do more than, say, 25 km/h 15:13:18 <snail_UES_> that’s why I was thinking about sharper (90-degree) curves 15:37:44 *** Kippers has quit IRC 15:40:37 *** chomwitt has quit IRC 16:05:02 <andythenorth> the thing with NG 16:05:12 <andythenorth> is that it is still 1 track per tile, so no density gain 16:05:20 <andythenorth> and the vehicles tend to be lower capacity per unit length 16:05:25 <andythenorth> so negative density there 16:05:30 <andythenorth> so it's quite nerfed :D 16:09:12 <michi_cc> snail_UES_: Absolutely untested in any way: https://gist.github.com/michicc/8d16426de023d015ce4f16d85d77a606 16:10:24 <michi_cc> Two more flags for prop 10, bit 2 always allow, bit 3 always disallow, disallow wins (also when two different railtypes connect). 16:11:06 <snail_UES_> michi_cc: looks great... 16:11:30 <michi_cc> I didn't even press run, so YMMV :p 16:14:31 <snail_UES_> I can test it myself if that helps 16:14:53 <michi_cc> I was expecting that :p 16:15:03 <snail_UES_> if I download ottd’s source code from github, how can I apply this patch? (sorry for the silly question) 16:15:19 <michi_cc> patch -p1 -i <insert file name here> 16:15:26 <snail_UES_> ok 16:20:57 <snail_UES_> michi_cc: any particular things/train behaviors I should be specifically test for? 16:21:06 <michi_cc> Maybe even: curl -s https://gist.githubusercontent.com/michicc/8d16426de023d015ce4f16d85d77a606/raw/3947816604d7c2b03988caec66a59bb0edf78908/railtype_90deg_curve.patch | patch -p1 16:21:24 <michi_cc> snail_UES_: Everything, I literally didn't even run openttd :) 16:21:34 <snail_UES_> haha ok 16:23:58 <snail_UES_> michi_cc: again sorry for the silly question: what step should I run “patch -p1” etc. at? between the “./configure” and “make”? 16:24:04 <snail_UES_> or before “configure”? 16:24:51 <michi_cc> Before usually, but in this case the patch doesn't change anything in configure, so it doesn't matter here. 16:24:59 <snail_UES_> ok, thanks 16:25:01 *** Kippers has joined #openttd 16:31:03 <snail_UES_> michi_cc: it compiled fine, I’ll test it later today 16:32:11 <snail_UES_> however, something weird is happening as I compile OTTD (not just this patch: I’ve noticed it many times lately). I get the following warnings: 16:32:13 <snail_UES_> “checking revision... no detection” 16:32:18 <snail_UES_> “WARNING: there is no means to determine the version.” 16:32:24 <snail_UES_> "WARNING: please use a subversion, mercurial, or git checkout of OpenTTD." 16:32:31 <snail_UES_> “WARNING: you can only join game servers that have been compiled without” 16:32:37 <snail_UES_> “WARNING: version detection.” 16:32:42 <snail_UES_> “WARNING: there is a great chance you desync." 16:33:10 <snail_UES_> and when I run the game, the window label is “OpenTTD norev000"... 16:33:20 <michi_cc> You need to make a proper git clone and not just download a source archive. 16:33:20 <snail_UES_> what am I doing wrong? 16:33:53 <michi_cc> And additionally have git on your PATH. 16:34:53 <snail_UES_> ahguess I need GitHubDesktop? 16:35:49 <Alberth> just plain git is what you need, no idea if that GH thing has it 16:39:59 *** haudrauf has joined #openttd 16:49:32 *** Kippers has quit IRC 16:49:48 <andythenorth> snail_UES_: mac OS right? 16:49:50 <andythenorth> git is built in 16:49:54 <snail_UES_> yes 16:50:14 *** virtualrandomnumber has joined #openttd 16:53:08 <snail_UES_> I tried to run a SVN CHECKOUT on the URL I found on github and it’s now downloading a huge amount of files :P 17:04:55 <nielsm> making an svn checkout is almost certainly wrong? 17:05:20 <snail_UES_> right… silly move of mine 17:10:49 *** imdak has joined #openttd 17:29:32 <virtualrandomnumber> found weird behaviour regarding two-way path signals: https://i.imgur.com/eR2KkGK.png 17:43:34 <LordAro> nielsm: is this the thing where github actually has svn repos? 17:52:51 *** Kippers has joined #openttd 17:54:10 <nielsm> LordAro, never heard of it and strongly doubt it 17:54:37 <LordAro> nielsm: https://help.github.com/articles/support-for-subversion-clients/ ;) 17:54:51 <nielsm> huh okay 17:54:56 *** keoz has quit IRC 18:03:09 <peter1138> It's still wrong, we use git ;p 18:03:50 *** Kippers has quit IRC 18:07:06 *** haudrauf has quit IRC 18:07:44 *** haudrauf has joined #openttd 18:13:24 *** Kippers has joined #openttd 18:15:02 <planetmaker> virtualrandomnumber, and what exactly is weired there? 18:16:26 <virtualrandomnumber> one of the trains is waiting at the block signal, but it should be able to proceed to the path signal 18:20:24 <nielsm> I'd say "just don't put signals up right against each other, it's plain wrong to do" 18:20:32 <nielsm> (because it is, in my opinion) 18:21:00 <nielsm> but the actual reason is something to do with two behaviors of the signal types being too different 18:22:30 <Alberth> path signals sometimes block trains a little longer in an attempt to get a better path, so that could be happening. Also, the train can't reach it destination it seems, so it's lost. At that point it acts weird, and usual rules don't apply 18:24:56 <nielsm> I wonder if it's really worth it to keep allowing vehicles with no orders to move 18:25:06 <nielsm> not having a pathfinding destination causes weirdness all over 18:25:08 <nielsm> doesn't it? 18:29:50 <planetmaker> virtualrandomnumber, 'stopped' at that position looks very much like manually stopped 18:30:19 <nielsm> planetmaker, it's train 3 that's interesting 18:31:20 *** Hobbyboy has joined #openttd 18:31:34 <virtualrandomnumber> the rightmost train is stopped to showcase that it reserved a path despite coming from a block signal 18:31:59 <planetmaker> hm, you mean #3 should move to the next signal and then wait? 18:32:29 <planetmaker> maybe... 18:35:26 <SpComb> what kind of person mixes path and block signals together? 18:36:14 <nielsm> I often build line blocks, possibly just a bad habit 18:36:38 <nielsm> and then path signals at junctions 18:37:27 <planetmaker> the mixture there is not bad as only one signal type controls a block. It's only bad to have block and path signals control the same block of track 18:41:38 <Alberth> not bad, just crashy :p 18:43:49 <planetmaker> na, if you have one line of tracks, you can alternate the signals. You may just not have a join with a block and a path signal controlling different sides of it. 18:44:58 <Alberth> I know, it's a very good way to crash your trains 18:56:21 <Kippers> But what if you just want to watch the world burn? 18:57:19 <Alberth> is not a development goal of the game 18:58:16 <Alberth> planetmaker: https://webster.openttdcoop.org/index.php?channel=openttd&date=1532736000#1532775939 halp :( 18:59:14 <Alberth> also, made GH project for the macro-thingie, but didn't push yet 19:00:53 <nielsm> yay it's raining here! 19:04:27 <andythenorth> Alberth: hope frosch knows how Action D works :| 19:06:10 <Alberth> this was the 5th or so NFO statement I looked at, not promising :( 19:06:35 *** Kippers has quit IRC 19:07:04 <Alberth> maybe I should write a GRF disassembler 19:07:57 <andythenorth> might help :) 19:08:13 <Alberth> I 'll run into all problems at least then 19:08:15 <nielsm> call it lmn 19:08:18 <nielsm> logic matcher for nfo 19:08:22 <andythenorth> seems like quite an organic spec eh 19:08:50 <Alberth> I could look in the openttd source code, but it should be in the spec 19:09:13 <andythenorth> https://dev.openttdcoop.org/issues/954 19:09:26 <nielsm> what we need is NotGRF 19:09:39 <nielsm> something that isn't GRF, for modding 19:09:47 <Alberth> there is no entry point to decode an arbitrary nfo sequence, it seems 19:10:15 <andythenorth> xml :P 19:10:46 <nielsm> yes you pretty much have to execute the GRF program to determine its meaning 19:12:24 <Alberth> I am aware of that, but it's a too simple approach, besides I would start from grf rather than nfo 19:13:36 <nielsm> as far as I understand, there is very little distance between NFO and GRF 19:14:08 <nielsm> pretty much the difference between looking at an enlarged picture of a ROM die, and a hex dump printout of the contents of the ROM 19:18:23 <Alberth> yep, although grf container 2 shuffles the realsprites and the nfo statements into two separate sections 19:18:56 * planetmaker reads 19:19:01 <Alberth> but it eliminates all the text stuff, and syntactic shorthands 19:19:26 <Alberth> ie just plain bytes :) 19:20:10 <Alberth> (and words and double words :p ) 19:20:36 <planetmaker> Alberth, so your confusion is as of the different types of Action D? 19:21:15 <planetmaker> or do I need to scroll up more to understand the question? :D 19:21:17 <Alberth> curently, yes 19:22:07 <Alberth> the 2 links describe different things, but the latter (GRM stuff) fits in the former template 19:22:27 <planetmaker> yes, it should at least 19:22:28 <Alberth> so no way to differentiate between both 19:22:49 <Alberth> it should? 19:24:30 <Alberth> so I want some math operation, invent source1, source2, and data or whatever, and suddenly it's interpreted as GRM? 19:25:20 <planetmaker> I think there is a way... hm 19:25:50 <Alberth> not to mention this isn't even mentioned at the action D page 19:26:06 <Alberth> there is a list of alternative interpretations in the overview only 19:26:29 <Alberth> no idea if there is overlap there too 19:28:45 <Alberth> I hope that is the complete list, there could be more tables that overlap 19:29:08 <planetmaker> "If <source2> is FE, then this action D will perform one of the following special variable accesses. In this case, <operation> must be assignment and <data> is an argument to the data access, not a source value. " might be the clue 19:29:44 <michi_cc> Alberth: The Action D pages says that source2 == FE means special stuff, which are the linked sub-pages. The GRM page isn't explicit about it, but the action bytes shown match each other. 19:30:45 <planetmaker> https://newgrf-specs.tt-wiki.net/wiki/ActionD#target.2C_source1.2C_source2 19:30:53 <Alberth> yeah, I see 19:31:20 <Alberth> oh joy, let's just remove value 254 19:32:08 *** Supercheese has joined #openttd 19:32:21 <Alberth> ok, thanks 19:32:27 <planetmaker> Removing that, and making it a separate action for those things, might actually simplify stuff :) 19:32:33 <planetmaker> but... legacy... 19:32:39 <planetmaker> grf v9 19:33:11 <Alberth> let's just start from action 20 then 19:33:31 <Alberth> everything < x20 is obsolete by definition 19:33:47 <planetmaker> <0x20 for what? 19:33:57 <planetmaker> ah, new actions. Hm 19:34:01 <Alberth> not use it at all 19:34:02 <planetmaker> yeah. 19:34:20 <planetmaker> Doing so, jointly with implementing stuff in NML would probably be a nice thing :) 19:34:28 <planetmaker> could be added step by step 19:35:28 <Alberth> not sure it makes sense to change nml 19:35:44 <Alberth> but not there by a long shot currently 19:35:57 *** Kippers has joined #openttd 19:36:26 <planetmaker> ok, so your take is rather "starting with action 0x20 and nmlc2 (or by whatever name it goes)"? 19:36:40 <Alberth> the core is expressions, but with the dynamic Python, it's very hard to refactor it 19:37:28 <Alberth> oh, I don't know, I would say stations should work in current grf :p 19:37:30 <planetmaker> not sure I understand what you're telling me 19:38:29 <Alberth> nml is huge and messy in the core; expressions aren't done right as far as I can tell 19:38:49 <planetmaker> hm 19:39:07 <Alberth> causing massive memory needs and being slow 19:39:43 <Alberth> I think it tries to optimize the same expressions a zillion times, making new copies all the time 19:41:17 <Alberth> I tried improving it, but the entire programs comes down, since nml is basically expression manipulation and not much more 19:41:39 <nielsm> ottd would kinda benefit from putting newgrf and squirrel into the "legacy" corner of shame and replacing both with a single modern language 19:41:48 <nielsm> but the effort would be gigantic 19:41:51 <nielsm> to reach feature parity 19:41:53 <Alberth> and Python makes it hard to change the code, since there is not hard typing available 19:43:08 <Alberth> or rather. consistency checks, with "x.expr" are BinOp.expr field accesses? no simple way to tell. 19:43:18 <Alberth> s/with/which/ 19:44:49 <Alberth> so improving nml is a major effort at least 19:45:13 <Alberth> nielsm: I don't think newgrf and squirrel can be merged into one language 19:45:33 <Alberth> you'd be trying to get machine language and eg Python into one language 19:46:11 <nielsm> I'm not saying to just blind copy the way everything is done 19:46:24 <nielsm> but rather reimagine and build a new programming interface for it 19:46:50 <planetmaker> Then include the game scripts, too. But that's... indeed very huge 19:47:12 <Alberth> you'd need much higher level newgrf-like primitives then 19:47:30 <Alberth> and it's hard to sell, as authors give up a lot of control that they have now 19:48:12 <Alberth> squirrel mat be weird, but it's simple enough that people can write AIs in it 19:48:38 <Alberth> just like Andy can hack nml, as it's Python and not C++ 19:49:07 <Alberth> or C 19:50:48 <planetmaker> hm... yes-ish 19:52:09 <nielsm> I don't think it'd actuallyh be a good idea to try making a replacement though :) 19:52:20 *** glx has joined #openttd 19:52:20 *** ChanServ sets mode: +v glx 19:52:29 <nielsm> OTTD itself is just a gigantic ball of legacy rolled onto legacy 19:53:59 <Alberth> yep :) 19:54:25 <nielsm> in other words, may as well write a brand new game from ground up 19:56:10 <nielsm> (and not walk into the pit Train/Transport Fever did with making all modding entirely table based, allowing no kinds of runtime scripts at all. imo that's 75% of what's killed interest in those, the remaining 25% being the bad performance) 19:56:14 <Alberth> yes, but then you get the problem of what to build 19:57:32 <Alberth> having nice looking graphics is what sells, good scaling doesn't 19:59:14 <nielsm> eh, for the hardcore transport sim crowd, mechanics and customizability sells 20:00:28 <FLHerne> Alberth: There was grf2html at one time 20:00:54 <Alberth> there was, wasn't it :) 20:01:03 <Alberth> no idea what that did :p 20:01:04 <planetmaker> but that was only to somewhat display the NewGRF contents, not any of its logic 20:01:07 <Alberth> but good thought 20:02:10 *** imdak has quit IRC 20:03:01 <FLHerne> I was thinking about trying to make a newer version of that 20:03:52 <FLHerne> (currently, I'm on restart-from-scratch n+1 of trying to make a GRFMaker-esque tool that reads/writes NML) 20:04:05 <Alberth> https://www.tt-forums.net/viewtopic.php?f=68&t=34279&sid=614f3171947f084600ba31d249d852bc it does show links between sprites 20:04:37 <planetmaker> ah, true 20:05:05 <Alberth> starting behind the parser, or after it is converted to a data structure FLHerne ? 20:05:39 <planetmaker> FLHerne, I never quite understood the advantage of grfmaker over NML... what does it make easier? 20:05:44 <Alberth> so grf2html may do a lot of things I need to have as well 20:07:05 <Alberth> pre-grfcontainer 2 though :p 20:07:25 <FLHerne> Alberth: Using a lightly-modified version of nmlc, currently 20:07:40 <FLHerne> http://www.flherne.uk/files/munge_screenshot.png 20:08:02 <FLHerne> (still not at all what I actually want) 20:08:25 <FLHerne> planetmaker: It's nice for people who just want to click some buttons to put their sprites in the game 20:08:45 <FLHerne> And don't want to learn a new programming language (or the concept of a programming language) to do so 20:09:06 <FLHerne> (the problem with GRFMaker being that if you want to do anything else, you're stuck at a dead end) 20:09:41 <FLHerne> Currently I'm working on being able to edit strings 20:10:47 <FLHerne> Alberth: To be clearer - it's working pretty much directly on the output of NMLParser.parse() 20:11:12 <FLHerne> But I'm using various other methods where they're useful 20:12:41 <FLHerne> Odds on it ever being finished are...not good - I made a thing to express switches, spritegroups etc. as a flowchart a few years ago, then got distracted and now I can't even find the damn code 20:12:53 <nielsm> should make a html5 page where you can upload some photos of a train and have it spit out a fully working grf from it!! 20:12:54 <nielsm> ;) 20:13:31 <planetmaker> hehe 20:14:16 <Alberth> I am pondering if we could have something else than switches, they seem too low level 20:14:30 <planetmaker> I actually once had a devzone project (though never made public) which allows to upload the files needed to build the grf (written in nml) and as result spits-out the ready-built newgrf 20:14:46 <planetmaker> so people wouldn't even need to install anything other than a text editor and graphics editor 20:15:03 <Alberth> app :p 20:15:15 <FLHerne> It would be nice to have something like grf2html aimed at end-users running on Bananas 20:15:56 <Alberth> too techy probably, you want some nice screenshots 20:15:59 <FLHerne> So people could browse the contents of grfs rather than just look at the names 20:16:19 <Alberth> ie advertising :) 20:16:21 <planetmaker> it would indeed... Both actually. I think DevZone once used grf2html to document the grfs it built 20:16:34 <planetmaker> but... grf2html failed to parse the container2 stuff, so was discontinued 20:16:59 *** frosch123 has joined #openttd 20:17:10 <FLHerne> Alberth: Was thinking of andy's shiny docs http://bundles.openttdcoop.org/iron-horse/push/LATEST/docs/html/trains.html 20:17:56 <FLHerne> They're a bit techy, but if that's too techy then OTTD is the wrong game for you 20:18:04 <Alberth> yep, all nicely automagically generated from Python tables 20:18:33 <Alberth> or objects nowadays, I think 20:18:58 <Alberth> which also generates the nml code, so it's always consistent :) 20:19:16 <Alberth> andy has a very nice setup for making grfs 20:19:38 <planetmaker> very much indeed 20:20:14 <frosch123> nielsm: callbacks 3e-13f do not exist to trick oldschool newgrf authors to check the whole callback id, instead of only the low 8 bit 20:20:55 <Alberth> FLHerne: maybe you should start simpler, your screenshot already has a lot of details for someone wanting to click stuff 20:21:06 <Alberth> eg a table like andy has 20:21:13 <FLHerne> Alberth: I'm kind of doing it backwards ;-) 20:21:49 <frosch123> https://newgrf-specs.tt-wiki.net/wiki/ActionD <- Alberth: there are three links in the target,source1,source 2 section 20:21:56 <frosch123> the third one is the one you were missing 20:22:03 <FLHerne> I started out with just having all the properties editable as plaintext NML expressions, then incrementally making UI editors per type 20:23:00 <FLHerne> That way if you feed it something I've not thought of yet (i.e. most things...), you can still edit it manually 20:24:03 <Alberth> frosch123: I was confused by no way to distinguish between that page and the page behind the 3rd link 20:24:12 <nielsm> frosch123: So adding something in that range risks breaking things? i.e. I should renumber the new callbacks I defined 20:24:25 <Alberth> but apparently there is, I missed a sentence above the links 20:24:38 <frosch123> nielsm: i did not catch up so far, no idea what callbacks you added 20:27:06 <nielsm> hmm I think HouseSpec::watched_cargoes got missed in the extension to 64 cargo types, it seems to be a bitfield of cargo types watched 20:27:29 <Alberth> together with expecting the table to be complete in differentiating all the cases, rather than hiding stuff in text 20:28:15 <frosch123> well, i think there is a single usecase left for GRM 20:28:18 <frosch123> so hardly important 20:28:50 <planetmaker> reading parameters from other NewGRFs is done 20:29:14 <planetmaker> and checking for the presence of those, of course 20:30:49 <Alberth> doesn't matter whether it is used, if it's part of the spec it must be described 20:31:33 <planetmaker> Well. NML does not try to implement *everything*. Just the useful bits. Leaving out some stuff on purpose 20:31:50 <planetmaker> That stuff which we want to phase-out from being used 20:32:10 <Alberth> oh that's fine 20:32:43 <planetmaker> especially of course, when there's several ways to the same end... then choosing the nicer one is an easy choice :) 20:32:54 <Alberth> code generator has the freedom to implement it in any way such that it works 20:34:32 <frosch123> planetmaker: https://paste.openttdcoop.org/psdklxgfg/jjtegn <- that's the mapping i used 20:34:36 <frosch123> for nml 20:34:41 <Alberth> hmm, x86 instructions perhaps? :p 20:34:57 <frosch123> i found some magic thingie to convert redmine issues to gh, i'll try that one tomorrow 20:35:13 <planetmaker> yay :) 20:36:16 <planetmaker> and yes, that clone you made worked/s nicely for me 20:36:17 <frosch123> i think the only mail that does not exist is hirundo's 20:36:20 <frosch123> i invented that one 20:37:27 <planetmaker> :) 20:39:39 <Alberth> @example.org :) 20:42:16 <planetmaker> @coop is ok 20:45:00 <Alberth> yeah, should be fine 21:00:09 *** Alberth has left #openttd 21:00:29 <frosch123> anyway, if you find any typos, it's a few seconds to do a conversion with different author mapping 21:01:10 <planetmaker> FWIW: I didn't see any yesterday. Nor when I looked a few minutes ago. 21:07:13 <Kippers> What's a good place to start contributing for a nub C coder? I tried looking through the codebase and the github issue tracker, but I get so confused whenever I try actually fixing an issue, because I don't know which files contain which logic. 21:10:29 <planetmaker> Kippers, there's http://docs.openttd.org - but usually the files are named according to what they contain... and it's a good idea to start looking at a place. And then grep the codebase for possible follow-ups of interesting search terms you find 21:10:49 <frosch123> some issues have a label "good first issue" 21:10:52 <frosch123> or similar 21:10:54 <planetmaker> like "tree" when you look for things related to tree generation/drawing/... and then go from what you need 21:11:41 <planetmaker> bed time though. Last nights all were late. Good night :) 21:12:04 <Kippers> Thanks, I'll try it tomorrow 21:16:02 *** sim-al2 has joined #openttd 21:17:35 *** argoneus has quit IRC 21:21:00 <andythenorth> bed 21:21:01 *** andythenorth has left #openttd 21:35:22 *** Kippers has quit IRC 21:37:18 *** peter1138 is now known as Guest2335 21:37:25 *** peter1138 has joined #openttd 21:37:25 *** ChanServ sets mode: +o peter1138 21:38:26 *** Guest2335 has quit IRC 21:40:09 <nielsm> okay I think that's also 16 cargo types acceptance for houses done 21:57:46 <nielsm> and gn 22:03:39 *** frosch123 has quit IRC 22:05:51 *** nielsm has quit IRC 22:15:29 *** chomwitt has joined #openttd 22:22:04 *** Wormnest has quit IRC 22:39:17 *** Supercheese has quit IRC 22:39:38 *** Supercheese has joined #openttd 23:02:13 *** keoz has joined #openttd 23:07:22 *** Progman has quit IRC 23:12:12 *** keoz has quit IRC 23:16:15 *** snail_UES_ has quit IRC 23:16:43 *** snail_UES_ has joined #openttd 23:40:33 *** ccfreak2k has quit IRC 23:41:15 *** ccfreak2k has joined #openttd