Log for #openttd on 9th July 2015:
Times are UTC Toggle Colours
00:27:31  *** Myhorta [] has quit [Ping timeout: 480 seconds]
00:33:40  *** liq3 [] has joined #openttd
00:46:16  *** JezK [~jez@2407:7800:400:107f:3db5:daca:8457:e66a] has joined #openttd
00:55:18  *** DDR [] has joined #openttd
01:08:11  *** Myhorta [] has joined #openttd
01:20:48  *** DDR [] has quit [Ping timeout: 480 seconds]
01:50:10  *** gnu_jj [] has quit [Remote host closed the connection]
01:51:14  *** gnu_jj [] has joined #openttd
02:30:39  *** mntasauri [~motesorri@] has quit [Ping timeout: 480 seconds]
02:38:16  *** mntasauri [~motesorri@] has joined #openttd
02:40:43  *** Kurimus [] has quit [Ping timeout: 480 seconds]
02:41:13  *** Kurimus [] has joined #openttd
02:49:05  *** glx [] has quit [Quit: Bye]
02:52:51  *** Myhorta [] has quit [Ping timeout: 480 seconds]
03:15:39  *** Kurimus [] has quit []
03:26:38  *** Kurimus [] has joined #openttd
03:30:11  *** sla_ro|master [slamaster@] has joined #openttd
03:30:18  *** liq3 [] has quit []
03:36:44  *** Kurimus [] has quit [Ping timeout: 480 seconds]
03:37:22  *** Kurimus [] has joined #openttd
03:47:26  *** Kurimus [] has quit [Ping timeout: 480 seconds]
03:54:32  *** liq3 [] has joined #openttd
04:56:02  *** Eddi|zuHause [] has quit []
04:56:16  *** Eddi|zuHause [] has joined #openttd
05:20:47  *** Kurimus [] has joined #openttd
05:40:15  <supermop> hello
05:43:33  <Flygon_> Yoooo
05:43:35  *** Flygon_ is now known as Flygon
06:05:57  <supermop> think i'll get a beer
06:14:50  <Supercheese> always a sensible plan
06:41:29  *** andythenorth [] has joined #openttd
06:41:42  <andythenorth> o/
06:42:21  <Supercheese> trams?
06:44:42  <andythenorth> :(
06:46:03  <supermop> beer too warm
06:48:38  <supermop> bourbon in stead i guess
06:51:06  <andythenorth> trams
06:51:11  <andythenorth> are bigger than narrow gauge trains
06:51:13  <andythenorth> it turns out
06:51:22  <andythenorth> Pikka: you did a tramz trackz grf?
06:51:30  <supermop> the ones here are standard gauge
06:52:18  <supermop> andy which brio wagon would you carry cotton candy in?
06:55:54  <andythenorth> supermop: there is a red version of these:
06:56:48  <supermop> not abstract enough looking
06:57:10  <supermop>
07:00:10  <supermop> or the green thing with the haybales?
07:02:44  <andythenorth> dunno :)
07:02:54  <andythenorth> all the brio we have is modern and detailed
07:03:11  <andythenorth> I don’t know much about it beyond that :)
07:04:06  <supermop> ah
07:05:45  <supermop> i feel like i should do a separate wagon for each cargo
07:06:27  <supermop> as the base set wagons are not refittable, they should all look different?
07:07:01  <Supercheese> not necessarily
07:07:26  <Supercheese> within the same climate perhaps
07:08:44  <supermop> only doing toyland
07:08:47  <supermop> for now
07:10:18  <Supercheese> right
07:10:38  <supermop> but idk i feel like separate hoppers are sort of silly
07:11:17  <andythenorth> if you’re only supporting original toyland cargos, then do one wagon per type
07:11:22  <andythenorth> gameplay is better without refits
07:11:33  <supermop> static grf
07:11:44  <supermop> but should the different wagons look the same
07:12:00  <andythenorth> do you have 2nd company colour available?
07:12:14  <supermop> does baseset?
07:12:17  <andythenorth> dunno )
07:12:18  <andythenorth> :P
07:12:32  <supermop> never seen it
07:12:34  <andythenorth> keep the gestalt, adjust the colourway
07:13:06  <supermop> andy the design school professor
07:14:16  * andythenorth keeps it under his hat
07:15:20  <supermop> so ogfx+ hopper wagon refits to three cargos
07:15:36  <supermop> so i assume that means i should have three hoppers
07:16:09  <supermop> idk
07:16:29  <supermop> sugar in cubes or loose?
07:17:17  <supermop> toffee ???
07:17:55  <Supercheese> toffee is bulk
07:17:58  <Supercheese> since it's quarried
07:18:20  <supermop> yeah but is it in like in chunks?
07:18:33  <supermop> or big blocks
07:18:45  <Supercheese> take your pick
07:18:54  <Supercheese> although the chunks appear fairly large IIRC
07:19:06  <supermop> or sort of slow flowing sticky mass?
07:20:09  <supermop> i feel like cotton candy should be in bales not a pile in a hopper
07:22:18  <supermop> should US english call fizzy drinks soda
07:23:19  <supermop> in tankers, barrels on flatbeds, of in boxcars?
07:24:08  <Pikka> hallo
07:24:28  <Pikka> andythenorth, I drew the tramtracks that are in the base set(s)...
07:25:05  * andythenorth is wondering about wider tramtracks
07:25:09  <andythenorth> might be a non-thing
07:25:14  <Pikka> they do need to be narrower than the rail tracks IMO
07:25:27  <Pikka> whether they should be the same as narrow gauge... depends how narrow your narrow gauge is
07:26:20  <andythenorth> turns out trams have a higher axle load than trains in my grf :P
07:26:28  <andythenorth> but let’s not ever mention axle load ever again
07:26:31  <andythenorth> ever
07:46:25  <supermop> need to get rid of these prints i made
07:49:10  <supermop> brio would really benefit from curvy tracks
08:09:13  *** smoke_fumus [~smoke_fum@] has quit [Quit: KVIrc 4.2.0 Equilibrium]
08:12:33  *** JezK [~jez@2407:7800:400:107f:3db5:daca:8457:e66a] has quit [Remote host closed the connection]
08:16:53  <Supercheese> It was discussed changing Fizzy Drinks to Soda for US English, but it's Toyland and it's supposed to sound very silly, and Fizzy Drinks is extremely silly
08:17:17  <Supercheese> that sentence is very awkward, but you get what I mean
08:21:02  *** sla_ro|master [slamaster@] has quit []
08:22:07  <andythenorth> Soda is silly :P
08:22:16  <Supercheese> Coke is also silly, but eh
08:22:30  <Supercheese> different parts of the country have completely different ideas what the stuff should be called
08:22:36  *** supermop_ [] has joined #openttd
08:22:46  <Supercheese> However, everyone thinks Fizzy Drinks is ridiculous, so therefore it fits Toyland well
08:23:10  <V453000> one dude on our server changed nick to Varoufakis ...
08:25:51  <^Spike^> V did the econmony of our game go to hell now? :)
08:27:46  <V453000> kind of
08:30:04  *** supermop [] has quit [Ping timeout: 480 seconds]
08:38:31  *** andythenorth [] has left #openttd []
08:40:28  *** Supercheese [] has quit [Ping timeout: 480 seconds]
08:54:35  *** wicope [] has joined #openttd
09:08:33  <supermop_> can a static grf change text strings?
09:10:20  <peter1138> Soda is a stupid name for fizzy drinks
09:25:39  <supermop_> better than pop
09:26:34  <supermop_> but the idea wasn't for a grf to change fizzy drink to soda, but to change plastic flatcar to plastic tanker or something
09:27:00  <supermop_> or candy boxcar to candy gondola
09:27:30  <supermop_> i think candy wagon should be the classic brio open wagon with a single swedish fish on it
09:27:57  <supermop_> how one makes a swedish fish from toffee i do not know
09:38:52  <supermop_> what candy can be made from cotton candy anyway
09:47:49  <supermop_> Burboun and stout leads to indignant forum posts
09:48:11  *** wicope [] has quit [Remote host closed the connection]
10:07:53  *** Hiddenfunstuff [] has joined #openttd
10:22:14  *** wicope [] has joined #openttd
11:06:13  *** Myhorta [] has joined #openttd
11:10:28  <Eddi|zuHause> supermop_: my guess is "yes", but why would you need your grf to be static, anyway?
11:19:01  *** wicope [] has quit [Remote host closed the connection]
11:38:13  *** Pikka [] has quit [Read error: Connection reset by peer]
12:01:05  *** a_sad_dude [~virtuall@] has joined #openttd
12:26:59  *** Myhorta[1] [] has joined #openttd
12:33:31  *** Phoenix_the_II [] has joined #openttd
12:34:41  *** Myhorta [] has quit [Ping timeout: 480 seconds]
12:42:55  *** Phoenix_the_II [] has quit [Ping timeout: 480 seconds]
13:51:16  *** sla_ro|master [slamaster@] has joined #openttd
14:29:49  *** supermop_ [] has quit [Ping timeout: 480 seconds]
14:40:37  <Terkhen> hello
14:53:37  *** Alberth [~alberth@2001:981:c6c5:1:be5f:f4ff:feac:e11] has joined #openttd
14:53:40  *** mode/#openttd [+o Alberth] by ChanServ
15:02:09  *** a_sad_dude [~virtuall@] has quit [Ping timeout: 480 seconds]
15:02:14  *** shirish [~quassel@] has joined #openttd
15:05:50  *** jottyfan [] has joined #openttd
15:18:10  *** shirish_ [~quassel@] has joined #openttd
15:19:45  *** shirish__ [~quassel@] has joined #openttd
15:24:05  *** shirish [] has quit [Ping timeout: 480 seconds]
15:26:15  *** shirish_ [~quassel@] has quit [Ping timeout: 480 seconds]
15:29:03  *** HerzogDeXtEr [] has joined #openttd
15:30:34  *** Eddi|zuHause [] has quit [Remote host closed the connection]
15:30:48  *** Eddi|zuHause [] has joined #openttd
15:35:25  *** liq3 [] has quit []
15:44:39  *** wicope [] has joined #openttd
15:54:31  *** TheMask96 [] has quit [Ping timeout: 480 seconds]
15:58:03  *** a_sad_dude [~virtuall@] has joined #openttd
15:59:59  *** TheMask96 [] has joined #openttd
16:11:12  *** shirish [~quassel@] has joined #openttd
16:17:34  *** shirish__ [~quassel@] has quit [Ping timeout: 480 seconds]
16:19:49  *** shirish [] has quit [Ping timeout: 480 seconds]
16:37:38  *** DDR [] has joined #openttd
16:51:33  *** glx [] has joined #openttd
16:51:36  *** mode/#openttd [+v glx] by ChanServ
17:01:20  *** wicope [] has quit [Remote host closed the connection]
17:08:02  *** FLHerne [] has joined #openttd
17:33:24  *** frosch123 [] has joined #openttd
17:36:29  *** Belugas [] has quit [Ping timeout: 480 seconds]
17:36:29  *** Belugas [~belugas@] has joined #openttd
17:36:32  *** mode/#openttd [+o Belugas] by ChanServ
17:37:17  *** snorre [~snorre@] has joined #openttd
17:37:18  *** a_sad_dude [~virtuall@] has quit [Ping timeout: 480 seconds]
17:39:03  *** snorre_ [~snorre@] has quit [Ping timeout: 480 seconds]
17:45:17  <DorpsGek> Commit by translators :: r27327 trunk/src/lang/korean.txt (2015-07-09 19:45:08 +0200 )
17:45:18  <DorpsGek> -Update from WebTranslator v3.0:
17:45:19  <DorpsGek> korean - 1 changes by telk5093
17:46:50  *** Pensacola [] has joined #openttd
18:08:34  *** FLHerne [] has quit [Remote host closed the connection]
18:11:57  *** shirish [~quassel@] has joined #openttd
18:12:05  *** FLHerne [] has joined #openttd
18:12:20  *** sla_ro|master [slamaster@] has quit []
18:16:57  *** andythenorth [] has joined #openttd
18:17:18  *** Belugas [] has quit [Ping timeout: 480 seconds]
18:17:20  <andythenorth> o/
18:17:41  *** smoke_fumus [~smoke_fum@] has joined #openttd
18:17:53  *** Belugas [~belugas@] has joined #openttd
18:17:56  *** mode/#openttd [+o Belugas] by ChanServ
18:23:31  *** a_sad_dude [~virtuall@] has joined #openttd
18:28:27  *** shirish_ [~quassel@] has joined #openttd
18:30:50  *** shirish__ [~quassel@] has joined #openttd
18:35:01  *** Progman [] has joined #openttd
18:35:09  *** shirish [] has quit [Ping timeout: 480 seconds]
18:37:54  *** shirish_ [~quassel@] has quit [Ping timeout: 480 seconds]
18:44:37  <andythenorth> GS really should be allowed to communicate with NewGRF
18:44:42  <andythenorth> really really
18:44:49  <andythenorth> just to see what happens mostly
18:48:45  *** shirish [~quassel@] has joined #openttd
18:49:40  <Alberth> being able to do some requests would be useful imho
18:50:26  <Alberth> but I wonder if you should really hook into industries
18:50:40  <Alberth> eg payment may be much more interesting
18:51:39  <andythenorth> ‘hook into’ is unlikely tbh
18:51:50  <andythenorth> but there is already a defined API for message passing
18:52:07  <andythenorth> and defined messages
18:52:29  <andythenorth> expose that to GS
18:53:04  <Alberth> where is that?
18:54:07  * andythenorth finds it
18:54:19  *** shirish__ [~quassel@] has quit [Ping timeout: 480 seconds]
18:54:23  <andythenorth>
18:54:28  <andythenorth> and the associated monthly change
18:54:59  <andythenorth> it would be better to extend it so the newgrf could detect if it was a GS or OpenTTD triggering the event
18:55:30  <andythenorth> there is no meaningful further control a GS could provide beyond production + closure
18:56:58  <andythenorth> certainly a GS can’t do anything like processing calculations, they run far too often
18:57:05  <andythenorth> nor tile animation etc
18:57:10  <andythenorth> totally inappropriate :)
18:57:33  <frosch123> so you want a gs event callback :)
18:57:38  <andythenorth> maybe
18:57:52  <andythenorth> a newgrf industry could be coded so that it can _optionally_ listen to GS events
18:58:25  <andythenorth> leaving the actual details in the hands of the newgrf, but allow GS to set the general direction more / less, stop / start, close
18:58:48  <andythenorth> similarly GS could control intro and expiry dates of a vehicle newgrf, via a technology level or such
18:59:03  <andythenorth> but it couldn’t set speeds and so on
18:59:47  <andythenorth> technology level would also solve every daylength justification I’ve seen, except realism freaks :P
19:03:20  <andythenorth> oops
19:03:22  *** Zuu [] has joined #openttd
19:03:27  * andythenorth monologing again :(
19:03:30  * andythenorth must stop
19:03:38  <andythenorth> soory
19:03:58  <Zuu> Hello
19:04:39  <Zuu> Too many threads about GS at the forum lately. :-)
19:05:02  <andythenorth> lo Zuu
19:08:11  <Zuu> GS could have a callback in info.nut which get called before the game start with a list of NewGRFs so it can veto and pass along a text message. While a bit constraint perhaps, GSes are distributed in their source form, so users who disagree could always hack the GS to bypass it.
19:09:28  <Zuu> It could then when game starts still have no knowledge about what GRFs is in the game if we wish.
19:10:03  <andythenorth> I don’t think it needs knowledge :)
19:10:22  <andythenorth> I have thought about this a bit, a GS tied to specific newgrfs is quite brittle
19:10:45  <andythenorth> for scripted scenarios it would make sense, but eh, who’s making those? o_O
19:11:09  <Zuu> There is already one city builder GS targeting FIRS. IIRC
19:12:14  <Zuu> Well, for cross domain logic like the forum guy, it could make sense.
19:12:35  <andythenorth> does the city build rely on specific cargos?
19:14:10  <Alberth> doesn't it have translation tables for cargoes of industry grfs?
19:14:27  <Zuu> Found the GS:
19:16:20  <Zuu> A GS made for a specific industry set can provide cargo specific settings labeled by cargo in the NewGRF. If you don't know how many cargos there will be and which cargos it will have, it is a bit hard to do per-cargo specific settings for the GS.
19:16:28  <andythenorth> so that GS doesn’t need FIRS, just the cargos
19:16:53  <andythenorth> but it does need all of the right cargos
19:17:00  <Zuu> Probably yes
19:17:51  <andythenorth> Zuu: I put some stuff in just before you joined btw (see the logs?)
19:18:03  <Zuu> I'll look it up
19:18:27  <andythenorth> hmm
19:18:41  <andythenorth> the ‘conquer the west’ GS should build primary industries on the frontier
19:18:52  <andythenorth> then towns and secondary industries on the newly settled lands
19:20:00  <Zuu> Looks like your monolog is sensible
19:20:09  <andythenorth> :P
19:20:42  <andythenorth> it doesn’t need any newgrf spec change if done dirty
19:20:53  <andythenorth> a secondary industry can still listen to the production change cb for example
19:21:20  <andythenorth> so if we wanted to stop / start production, set the production multiplier to a certain value
19:21:30  <andythenorth> FIRS could publish which values it will listen to
19:22:00  <Zuu> publish as via an API or publish as in a manual?
19:22:37  <andythenorth> manual
19:22:48  <andythenorth> but that is generated from FIRS source directly
19:23:01  <andythenorth> it would be a convention
19:23:43  <Zuu> So usually NewGRF set production multiplier, but you propose to allow GS to tap in and set it instead?
19:23:58  <andythenorth> OpenTTD sets it
19:24:14  <andythenorth> newgrf chooses to reset it (or not use it)
19:24:37  <Zuu> So it is read only to newgrf?
19:24:44  <andythenorth>
19:24:57  <andythenorth> if the newgrf uses value 04, then it does whatever OpenTTD wants
19:25:17  <andythenorth> as a nice to have, set a bit to say that a GS set the value, not OpenTTD
19:26:25  <andythenorth> because I don’t like OpenTTD’s industry handling so I ignore it, but would not want to stop a GS author providing a different approach
19:26:26  <Zuu> Yeah that would probably be nice. A sort of flag to the NewGRF that perhaps the GS has a plan why it ask you to do this. :-)
19:26:51  <andythenorth> so, e.g. in the case of FIRS primary industry, the supplies mechanic would still operate
19:27:01  <andythenorth> so you’d get 2x or 4x base production if supplies are delivered
19:27:10  <andythenorth> but the GS determines the base production
19:27:28  <andythenorth> it’s a separation of concerns that follows roughly how the game already is structured
19:27:59  <andythenorth> GS has no role trying to understand or manipulate supplies, that’s way too complex
19:29:01  <Zuu> So what GS get is something similar to the production change cheat?
19:29:11  <andythenorth> yes
19:29:34  <andythenorth> which requires no newgrf spec change, unless we want to add a nice-to-have ‘this is GS' flag
19:30:35  <andythenorth> if author(s) then wanted to write a closely integrated GS/industry newgrf, they could
19:30:44  <andythenorth> using the production cb as message passing
19:30:51  <andythenorth> I wouldn’t bother, but eh
19:31:08  <andythenorth> newgrf industry can ask / tell nothing of the GS btw
19:31:35  <Alberth> newgrf doesn't have enough info anyway
19:32:16  *** shirish_ [~quassel@] has joined #openttd
19:32:19  <Alberth> technically it can tell the GS things by reacting to messages in a certain way
19:34:00  <andythenorth> there’s not much that GS can read from the industry
19:34:01  <andythenorth> afaik
19:34:07  <andythenorth> production?
19:34:36  <Zuu>
19:35:06  <andythenorth> yeah very little there that could be used for messaging
19:35:20  <andythenorth> I don’t think messaging is needed newgrf -> GS
19:36:00  <andythenorth> the only case I can think of is ‘can I close?’
19:36:11  <andythenorth> or ‘I want to close, is it allowed?'
19:36:36  <Alberth> terrain shape for construction
19:37:02  <Zuu> Btw, the production that GS sees is historic and not an instant response on multiplier, so it is quite slow to use for communication.
19:37:15  *** Alberth [~alberth@2001:981:c6c5:1:be5f:f4ff:feac:e11] has left #openttd []
19:37:29  <andythenorth> yes
19:37:30  <Zuu> If NewGRF can control the stockpile size directly, that may be a possibility though.
19:37:40  <andythenorth> nah
19:37:47  <andythenorth> well, only by evil
19:37:50  <andythenorth> hmm
19:37:58  <andythenorth> does GS respond to OpenTTD events?
19:38:07  <Zuu> GS recieve OpenTTD events
19:38:07  <andythenorth> how would it handle the monthly / random CBs?
19:38:28  <Zuu> But it doesn't have callbacks that instantly return. Other than the save callback.
19:38:37  <frosch123> andythenorth: you need to keep in mind that passing info newgrf->gs is a lot easier than gs->newgrf
19:38:38  *** shirish [] has quit [Ping timeout: 480 seconds]
19:38:52  <frosch123> gs runs only on the server, so all info needs to be send as commands
19:39:04  <andythenorth> Zuu: could use a queue?
19:39:13  <andythenorth> dunno
19:39:20  <andythenorth> this is all in industry_cmd.cpp iirc
19:39:26  <andythenorth> if you want to try it, I could patch FIRS
19:39:38  <andythenorth> it might work with default industries even, not sure
19:39:41  <Zuu> GS has an event queue with events from OpenTTD. Eg. Vehicle crashed.
19:40:15  *** tycoondemon2 [] has joined #openttd
19:40:23  <andythenorth> frosch123: would that limitation make any difference if this is just an injection to monthly / random cb?
19:40:28  <Zuu> I'm trying to fetch current source code. My hg pull doesn't work. Probably due to the mirror change some months ago.
19:40:49  <andythenorth> mine neither
19:40:52  <andythenorth> I should fix that
19:41:10  <andythenorth> it’s documented in forums iirc
19:41:16  <Zuu> yep
19:41:33  <frosch123> andythenorth: i do not see any significany in a monthly callback
19:42:00  <frosch123> anyway, the question is, at what point does the gs give information?
19:42:16  <frosch123> does it do it in advance? and does newgrf tell whether to use or discard it?
19:42:28  <frosch123> or does the newgrf trigger the gs to make decision
19:42:42  <frosch123> newgrfs decide stuff instantly
19:42:48  <andythenorth> newgrf returns 04 to the production cbs
19:42:58  *** tycoondemon [] has quit [Ping timeout: 480 seconds]
19:43:05  <frosch123> gs have a hard time to pass information and being triggered from external
19:43:13  <frosch123> gs asking newgrf is a lot easier
19:43:48  <frosch123> andythenorth: what does the gs do?
19:43:51  <Zuu> NewGRF could possible expose information via properties that GS can look at if they like to.
19:44:07  <frosch123> does the gs have a function "next time the newgrf returns 04, do this"?
19:44:11  <andythenorth> no
19:44:28  <frosch123> or does the gs have to listen to newgrf returning 04, which may reach the gs months after the newgrf triggered it
19:44:42  <frosch123> read: gs have no concept of "instant decisions"
19:44:56  <andythenorth> ok, so that was my concern about this idea
19:45:03  <frosch123> they can either deposite information for newgrf to fetch at some point
19:45:04  <andythenorth> OpenTTD runs the monthly cb when it runs
19:45:11  <andythenorth> but GS can’t respond
19:45:12  <andythenorth> ?
19:45:16  <frosch123> or they can react months after newgrf requesting a gs to do something
19:45:31  <frosch123> there are no interrupts
19:45:36  <frosch123> gs can only poll
19:45:37  *** jottyfan [] has quit [Quit: Konversation terminated!]
19:45:56  <andythenorth> so the best GS could do is decide that the next time the monthly cb runs for a specific industry instance, the value should be x?
19:46:03  <andythenorth> and similarly for random cb
19:46:15  <frosch123> and even if there were interrupts, information cannot take effect immediately, because it needs to be send over the network first
19:46:31  <andythenorth> I am puzzled by the network issue
19:46:42  <andythenorth> it’s probably not a relevant puzzle though
19:47:17  <frosch123> basically a gs could ask newgrf to do something, and the newgrf may obey or ignore
19:47:24  <frosch123> newgrf can also answer when asked
19:47:33  <frosch123> but gs cannot quite answer to newgrf
19:47:51  <frosch123> so, essentially, it's always the gs that has to take initiative
19:48:23  <andythenorth> +1
19:48:57  <andythenorth> if newgrf can ask GS to do things, then I think we’re on a highway to hell
19:49:02  <frosch123> the lazy method would be to add a callback which gs can trigger with whatever values, and the newgrf can react to it in whatever way
19:49:03  <andythenorth> who is controlling the game at that point?
19:49:11  <frosch123> but in the past that apporach has always failed :p
19:49:26  <andythenorth> I would, for dirtiness, just modify the existing callbacks :P
19:49:28  <frosch123> see station classes, object classes, railtype labels, ...
19:50:12  <frosch123> andythenorth: modifying existing callbacks does not match the "gs taking iniitiative"
19:50:23  <frosch123> the existing callbacks are triggered by ottd
19:50:43  <frosch123> if yuo use them, you are back to gs storing information in "gs registers", which newgrf can read
19:51:03  <frosch123> which essentially turns it into "newgrf polling for gs information" :p
19:51:31  <andythenorth> yes
19:51:34  <andythenorth> that’s my design
19:51:37  <andythenorth> by design :)
19:51:39  <andythenorth> deliberately
19:51:51  <andythenorth> what’s the downside? o_O
19:52:09  <frosch123> well, there is a difference
19:52:16  <frosch123> "gs variables" are static
19:52:19  <frosch123> once set, they do not change
19:52:33  <frosch123> a callback would be a "trigger" that happens exactly as often as the gs triggers it
19:52:45  <frosch123> technically you can emulate both with each other
19:53:01  <frosch123> i..e the "trigger callback" could store a value in a newgrf register, resulting in a gs variable
19:53:20  <frosch123> and vice versa the "gs variable" could be compared to earlier values, or incremented or whatever
19:53:55  <frosch123> but the trigger callback could also answer to gs
19:54:04  *** shirish_ [~quassel@] has quit [Ping timeout: 480 seconds]
19:54:21  <frosch123> while the gs varibles could not answer, instead gs would have to read other newgrf variables, and noone knows who reads what when
19:55:34  <Zuu> Would it be feasible to have a DoCommand called by GS that would call ChangeIndustryProduction(Industry *i, bool monthly) in industry_cmd.cpp with an two extra argumnets: "I'm a GS" and the desired production multiplier?
19:55:58  <frosch123> that's essentially what i meant :)
19:56:17  <andythenorth> that’s also what I meant :)
19:56:23  <frosch123> just there is no point in trying to use an existing ChangeIndustryProduction
19:56:34  <frosch123> you can add a new one, with less confusing bloat
19:56:59  *** Wolf01 [] has joined #openttd
19:57:00  <Zuu> An improvement may be to have a bit in the industry that GS can flip via another API that would disable default OpenTTD production changes.
19:57:17  <Wolf01> o/
19:57:35  <Zuu> Or do it like the bit is flipped automatically when you make a manual adjustment and have a reset API method to zero this bit to pass back control to OpenTTD.
19:57:42  <frosch123> Zuu: the newgrf can store whatever the docommand passes to it
19:57:55  <frosch123> so the "flag" is already covered
19:58:18  <Zuu> So it is up to the NewGRF to ignore the usual OpenTTD calls and only listen to the GS?
19:58:42  <frosch123> yes, usually the newgrf ignore the ottd call anyway, don't they? :p
19:58:50  <frosch123> anyway, what happens with newly spawned industries?
19:59:04  <frosch123> can gs set default values for new industries?
19:59:20  <frosch123> or do they have to listen for new ones, and then inform then one by one about their presence
19:59:29  <frosch123> same when startnig a new game with 10k industries :p
19:59:43  <frosch123> would a gs want to control all industries? or only a hand full?
20:00:02  <frosch123> gs are bad at controlling 10k things, because it can only execute like 30 commands a second or something?
20:00:09  <frosch123> or only 15?
20:00:14  <frosch123> i don't know :p
20:00:22  <frosch123> does it need 1 or 2 ticks to execute a command?
20:04:17  *** Pensacola [] has quit [Remote host closed the connection]
20:05:35  <andythenorth> GS doesn’t get control of newly spawned
20:06:10  <frosch123> no, but the gs could leave a letter for every new one to read :p
20:06:25  <andythenorth> hmm
20:06:26  <frosch123> even the industry placement condition could read that
20:06:35  <frosch123> gs could say "more wood!!!"
20:06:39  <andythenorth> if there are 10k industries

20:06:47  <andythenorth> and GS tries to control all monthly?
20:06:48  <andythenorth> bad?
20:07:04  <andythenorth> is this basically infeasible? :)
20:07:08  <frosch123> hmm,,.. though if a gs wants more wood, it would proably fund industries itself
20:07:40  <frosch123> @calc 74*30
20:07:40  <DorpsGek> frosch123: 2220
20:07:54  <frosch123> i guess a gs has no chance to control more than 2k industries per month :p
20:08:11  <andythenorth> how many on a map?
20:08:20  <andythenorth> :P
20:08:28  <frosch123> 64x64 maps only \o/
20:08:52  <andythenorth> I read that as 64kx64k :(
20:10:38  <frosch123> so well, i guess it's down to "a gs can only control industries the player services"
20:10:55  <andythenorth> hmm
20:10:56  <frosch123> it can not control all industries on maps way too huge for players
20:11:14  <frosch123> maybe we should just loop maps
20:11:14  <andythenorth> “gs controls all instances of an industry type at same time” o_O
20:11:25  <frosch123> make the map 256x256 and display it as looped
20:11:27  <andythenorth> “all coal mines increase production” :P
20:11:28  <frosch123> noone will notice :p
20:11:31  <andythenorth> looping maps :)
20:12:03  <frosch123> andythenorth: maybe "industry type + area + event"?
20:12:23  <frosch123> then gs could control single industries, or a buch in an area
20:12:26  <andythenorth> ‘area’ is an interesting concept :P
20:12:36  <andythenorth> if we divided the map into segments :P
20:12:38  <frosch123> frankly it make no sense to give 5k different commands to 5k industries
20:12:43  <frosch123> that' just random then
20:12:46  <frosch123> which needs no gs
20:12:50  <andythenorth> we could also set a profit calculation in a segment :P
20:12:54  <andythenorth> 100% separate issue but eh
20:12:55  <Zuu> A very basic start
20:13:22  * andythenorth should patch FIRS
20:14:12  <Zuu> I don't know exactly what to use from ChangeIndustryProduction, but the rest to setup the command is not so hard, just some work. :-)
20:17:09  *** tokai [] has joined #openttd
20:17:12  *** mode/#openttd [+v tokai] by ChanServ
20:19:17  * andythenorth wonders if OpenGFX + industries listens to prod. change
20:19:31  <andythenorth> oh this would be a new cb anyway?
20:21:20  <frosch123> <- something less specific
20:22:24  <frosch123> hmm, the area command has no space to set a industry type though :p
20:22:29  <frosch123> we need more command parameters :)
20:23:47  <frosch123> i considered a patch to merge the parameters tile, p1, p2 and text into a variable amount of parameters
20:23:54  <frosch123> only limited by a maximum size
20:23:54  <andythenorth> “coal in the east are running out”
20:24:02  <andythenorth> “coal mines in the west are increasing production"
20:24:08  *** tokai|noir [] has quit [Ping timeout: 480 seconds]
20:24:39  <andythenorth> “coal mines in the west will be spinning their wheels faster” :P
20:24:43  <Zuu> If you limit the size of the rect, it may be possible to use a limited number of bits to specify the width/height of the rect. :-)
20:24:44  * andythenorth saw l12
20:24:58  *** dustinm` [~dustinm`@2607:5300:100:200::160d] has quit [Ping timeout: 480 seconds]
20:25:01  <frosch123> Zuu: good point :)
20:25:09  <Zuu> And save some for other use. Depending on how many you nead for industry type.
20:25:18  <andythenorth> 64x64?
20:26:23  <Zuu> A third command could possible be to broadcast to the entire map.
20:26:47  <andythenorth> could that just work down a queue?
20:26:52  * andythenorth has a queue obsession
20:26:53  <frosch123> <- more like that?
20:27:04  <andythenorth> ‘next time this node is processed, the value is x'
20:27:11  <andythenorth> whenever that is :P
20:27:58  <frosch123> s/vor/for/ btw :p
20:28:11  <Zuu> I assume var 10 and 18 are vars that are usful for the NewGRF.
20:28:25  <frosch123> it's just something the newgrf can read
20:28:34  <frosch123> it's essentially a parameter like p1 and p2
20:28:50  <Zuu> right
20:28:56  <frosch123> call "p1" as "var 10", and "p2" ans "var 18" :p
20:29:01  <Zuu> :-)
20:29:12  <frosch123> but some parts of the parameter are already used, so only some parts are free
20:29:41  <frosch123> so for cb29 var10 is free and var18 is used, while for cb25 it is the other way around :p
20:30:00  <frosch123> but maybe it is a good idea to not use cb29, but add a new one
20:30:16  <frosch123> cb25 otoh has a "trigger type" parameter, so we can just add a "gs trigger"
20:30:30  <andythenorth> I was only -1 to a new cb so we didn’t have to patch the tools :)
20:30:34  *** dustinm` [~dustinm`] has joined #openttd
20:30:39  <andythenorth> and I can’t edit the wiki anymore :P
20:30:41  *** HerzogDeXtEr [] has quit [Quit: Leaving.]
20:30:43  <frosch123> the newgrf can then start a animation of money raining down on it
20:30:57  <Zuu> :-)
20:30:58  <andythenorth> v can animate that
20:31:20  <Zuu> I like your proposal
20:32:31  <Zuu> I can code the part untill those commands are called. But beyond that I'm a bit lost. :-)
20:33:53  <Zuu> Not saying it is impossible, but will take more time :-)
20:36:22  <Zuu> frosch123: would it not be good to also gave CmdIndustryGSWorldEvent or similar name that affects all industries of given type on the map?
20:37:19  <Zuu> Hmm.. and then someone want a town selector.
20:37:50  <andythenorth> keep it simple :)
20:39:05  <Zuu> Better simple that gets done than complex that never get done :-)
20:39:10  <frosch123> Zuu: i have no idea, we need more experimental ottd versions :)
20:39:18  <frosch123> we should start a patchpack or something
20:39:44  <andythenorth> froschpack
20:39:53  <andythenorth> but remember, nobody will read your bug reports ;)
20:40:25  <frosch123> i also have a company colours patch :p
20:40:30  <frosch123> it works for one blitter
20:41:34  <frosch123> anyway, i am unsure about whether to execute all callbacks at once
20:41:41  <frosch123> or whether to distribute them randomly over some ticks
20:41:45  <Zuu> I have some acient vehicle overtake patch which didn't workout they way I wanted it to.
20:42:35  <planetmaker> o/
20:42:36  <frosch123> so yes, i think an experimental version for gs and newgrf to try stuff
20:42:52  <frosch123> i don't think rushing for trunk is a good idea :p (is it ever?)
20:44:11  <andythenorth> tech-ladder patch :P
20:44:24  <andythenorth> GS sets an openttd global var
20:44:31  <andythenorth> newgrfs decide what they do with it
20:45:23  <andythenorth> or
20:45:29  <andythenorth> something better :P
20:53:53  <andythenorth> “technology level 9: your steel mills now produce more efficiently"
20:54:02  <andythenorth> “technology level 12: here is a new electric engine"
21:01:34  <Zuu> I've updated the initial patch to follow the frosch123 proposal.
21:01:39  <Zuu> Now I'm off to bed
21:02:02  <Zuu> Night all
21:02:09  *** Zuu [] has quit [Quit: Leaving]
21:16:11  *** frosch123 [] has quit [Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn]
21:16:18  *** andythenorth [] has left #openttd []
21:19:49  *** Progman [] has quit [Remote host closed the connection]
21:31:18  *** tokai|noir [] has joined #openttd
21:31:21  *** mode/#openttd [+v tokai|noir] by ChanServ
21:37:04  *** tokai [] has quit [Ping timeout: 480 seconds]
22:03:38  *** tokai|noir [] has quit [Ping timeout: 480 seconds]
22:07:15  *** liq3 [] has joined #openttd
22:08:33  <Wolf01> 'night
22:08:38  *** Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
22:14:42  *** newbie2 [] has joined #openttd
22:18:11  <newbie2> hi i can not figure out how to set up orders for mail trucks: do they need train stations to 'Go To'? If I click 'Go To', no tiles work as a place to go to for a mail truck.
22:20:14  <a_sad_dude> newbie2, no, they need truck stations
22:20:43  <a_sad_dude> just build two in different cities and go between them
22:22:58  <newbie2> a_sad_dude: is a truck station the same thing as a lorry loading bay mentioned on ?
22:23:33  <a_sad_dude> newbie2, yes. or a drive-through one
22:24:40  <planetmaker> newbie2, they need a truck station
22:24:53  <planetmaker> and yes, those are the same things
22:25:14  *** liq3 [] has quit []
22:25:46  <newbie2> a_sad_dude, planetmaker: i see thanks :)
22:26:59  *** liq3 [] has joined #openttd
22:34:36  *** newbie2 [] has quit [Quit: leaving]
22:34:44  <a_sad_dude> does anyone want to play with me today? :)
22:46:48  *** supermop [] has joined #openttd
23:51:05  *** glevans2 [~glevans2@] has quit [Quit: Leaving.]
23:52:06  *** Myhorta[1] [] has quit [Ping timeout: 480 seconds]

Powered by YARRSTE version: svn-trunk