Back to Home / #openttd / 2019 / 01 / Prev Day | Next Day
#openttd IRC Logs for 2019-01-31

---Logopened Thu Jan 31 00:00:44 2019
00:05-!-snail_UES_ [] has quit [Quit: snail_UES_]
00:18-!-glx [] has quit []
01:15<@peter1138>01:09 < Eddi|zuHause> how crazy is it to rebase a pr onto another pr?
01:15<@peter1138>yeah, not crazy at all.
01:24<Pikka>they don't call him crazy Eddi for nothing
01:26<@peter1138>16 bits for X and 16 for Y would be simpler, but also then someone would cry when map sizes higher than 65535 don't work.
01:26<@peter1138>You can always request new variables, I guess.
01:27<Pikka>it was a faff, but I got it working, thanks Eddi :)
01:43<@peter1138>GarryG manages to make a .rar file which I can't open on Linux.
01:45<@peter1138>Ah, I need to add the "non-free" packages :/
01:49<@peter1138>Hmm, an industry called "Country Village"
01:50<@peter1138>World map needs to be tweaked.
01:58<Eddi|zuHause><peter1138> 16 bits for X and 16 for Y would be simpler, but also then someone would cry when map sizes higher than 65535 don't work. <-- patch var 13 breaks long before that
01:59<Eddi|zuHause>also, you can't iterate over the map like we do currently if you introduce gaps after every row
01:59<@peter1138>I'm not going to look that up.
01:59<Eddi|zuHause>peter1138: i linked it earlier, but it's a giant bitstuffing brainfuck
01:59<@peter1138>And I meant just as variable available to NewGRF, not changing how the game work.
02:00<Eddi|zuHause>peter1138: just add two 40+ vars for X and Y then
02:00-!-sla_ro|master [] has joined #openttd
02:00-!-sla_ro|master is "slamaster" on #sla #openttd
02:01<Eddi|zuHause>or add builtin newgrf ops for TileX and TileY
02:01<Pikka>but then all the clever nfo I just wrote would be worthless :)
02:07<@peter1138>And wouldn't work in previous versions.
02:08<Eddi|zuHause>the way patch var 13 and tileindex works hasn't changed in forever
02:14<Eddi|zuHause>git blame says the code for patch var 13 was last touched in 2008
02:15<@peter1138>My comment was clearly in reference to adding variables or ops.
02:17<@peter1138>Also it's -6
02:17<@peter1138>-6 deg C :/
02:18<Eddi|zuHause>it seems warmer here
02:47-!-Thedarkb-X40 [] has quit [Ping timeout: 480 seconds]
03:10-!-andythenorth [] has joined #openttd
03:10-!-andythenorth is "andythenorth" on #openttd
03:10<andythenorth>I might start an NRT game soon
03:11<@peter1138>Should I commit nrt fixes separately, or squash them every time?
03:11<@peter1138>I'm thinking separately, and then squash when we're ready later.
03:11<@peter1138>Otherwise it'll get difficult to track changes, obviously.
03:11<andythenorth>shows what changed recently yes
03:11<andythenorth>so what we need now is an NRT nightly again
03:12<@peter1138>Ok, I will force-push these changes, future changes will be non-force pushed, except for rebases of course.
03:12<DorpsGek_II>[OpenTTD/OpenTTD] PeterN updated pull request #6811: Feature: Add NotRoadTypes (NRT)
03:13<@peter1138>I'm also compiling with -Werror now :)
03:15<andythenorth>I have so many warnings, I think that would never finish :P
03:16<@peter1138>It would definitely finish with -Werror, but it wouldn't complete the compile.
03:16<andythenorth>yes what you said
03:16<@peter1138>Hmm, maybe I should set up an NRT server.
03:16<@peter1138>That's a good idea.
03:17<@peter1138>Then I don't have to worry about nightly revision compatibilies.
03:19-!-andythenorth [] has quit [Quit: andythenorth]
03:19<@peter1138>I see!
03:20<@peter1138>Oh, it compiled an ancient version. Hmm.
03:21-!-andythenorth [] has joined #openttd
03:21-!-andythenorth is "andythenorth" on #openttd
03:21<andythenorth>disconnected why? :P
03:21<@peter1138>Ah "git reset --hard origin/nrt-block" is quite simple to force an update.
03:21<andythenorth>git reset --hard is my favourite command
03:21<@peter1138>I accidentally built an ancient version of nrt :/
03:22<andythenorth>I accidentally wasn't running my "don't sleep network" app :P
03:22<Eddi|zuHause>anyone remind me why we're discarding the CI builds instead of having them available to test stuff with?
03:22<andythenorth>probably nobody made it do that?
03:22<andythenorth>also, possibly, infosec
03:23<@peter1138>Eddi|zuHause, because it's not set up to do that.
03:23<andythenorth>allowing binary distribution from any PR is.....curious
03:23<@peter1138>It's not one of TrueBrain's itches, so someone else has to set it up. But still nobody else knows how it works and fits together.
03:24<LordAro>i think it is one of his itches, actually
03:24<@peter1138>Yay, nrt-block server running!
03:24<@peter1138>Some NewGRFs might be useful, I suppose.
03:24<LordAro>he just wants it to be "approved" first (for infosec reasons)
03:25<LordAro>(the method in which it gets approved is aa yet unclear)
03:26<andythenorth>peter1138: add some newgrfs
03:26<andythenorth>there was a Hog somewhere
03:26<andythenorth>oh here
03:27<andythenorth>can't get it in bananas, because no way to distribute WIP grfs :P
03:28<@peter1138>Feature request!
03:31<LordAro>add it to the bananas2 spec :p
03:32<andythenorth>maybe I should find my Hog repo
03:33<andythenorth>need to give a test case for this
03:39<andythenorth>49 warnings on compile
03:39<andythenorth>'probably fine'
03:45<LordAro>the languages, probably
03:46<andythenorth>mac stuff I think
03:46<andythenorth>bunch of deprecation warnings
03:47<andythenorth>warning about libs
03:49<LordAro>ah yeah
03:49<andythenorth>dunno if the azure mac build shows them
03:50<LordAro>usually does
04:01<@peter1138>I think it does, yes.
04:02<@planetmaker><andythenorth> can't get it in bananas, because no way to distribute WIP grfs :P <-- depends. You can force certain OpenTTD version requirements
04:02<@planetmaker>so if we have properly named test builds... that would be feasible
04:10<Pikka>mmm, nrt
04:11<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on issue #7149: Town Y value reported by var 80 is inconsistent on different map sizes
04:11<DorpsGek_II>[OpenTTD/OpenTTD] PeterN closed issue #7149: Town Y value reported by var 80 is inconsistent on different map sizes
04:12<Pikka>thanks peter
04:13<@peter1138>LordAro, planetmaker, I guess if we were to start doing official test builds of stuff, we might want it to be a branch within the official repo rather than an external PR.
04:14<@peter1138>I guess the review & approve requirement can be disabled for non-master.
04:15<@peter1138>That auz industries NewGRF is... Hmm. The graphics are very familiar.
04:16<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on issue #7136: Sprite sorting issue with FIRS
04:17<@peter1138>Hmm, 6music, LBC or my own collection?
04:18<@peter1138>Ok, gone with the latter.
04:19<@planetmaker>peter1138, I think that's two different pair of shoes. For big features one might want separate branches hosted in our repo. Yet even for PRs it makes sense to have them accessible
04:19<@peter1138>planetmaker, okay.
04:20<@peter1138>If we selectively make PR builds available, then I see no need for feature branches in the main repo.
04:21<@planetmaker>true, usually that won't be necessary
04:22<@planetmaker>and tbh, it should usually not matter either whether a working branch resides in our repo, or say, yours. Or andys. or whoever created it
04:22<@peter1138>Yeah :)
04:23<@peter1138>Although with NRT I was wondering which to consider canonical. I ended up pushing to all, but if I'm doing more changes I will not push to Andy's as that'll keep badgering CI.
04:23<@peter1138>I mean, I guess that's what CI is for, but still.
04:24<@planetmaker>without clear borders, I'd consider openttd-side branches for nrt, or maybe yesterday's addition of trbr (?)... big enough to have a lot of commits and to warrant a lot of work from possibly a number of people
04:24<@planetmaker>and wanted-enough features. Let's say: we move it to us, when we decide that we want such feature :P
04:25<@peter1138>so, subsidiaries/infrastructure sharing next eh? :)
04:26<@planetmaker>Let's add a branch for each "yeah, that might be nice"-feature ;)
04:26<LordAro>nah, timetables
04:26<@peter1138>We have timetables
04:26<@peter1138>Hmm, where should I post my list of things which I'd like to do but haven't got around to yet.
04:27<@peter1138>I mostly mean things that are already in the game but could do with tweaking.
04:27<@peter1138>Like the mini-map window needs some love.
04:27<LordAro>1.9 Roadmap
04:27<@peter1138>Hmm, where is it, Wiki?
04:28<LordAro>i imagine it doesn't exist at all
04:28<LordAro>don't think there's been a roadmap since 1.0
04:28<@peter1138>Yay, found my wiki password.
04:29<@peter1138>Well, I can post it to my own page I guess.
04:29<LordAro>there's also a todo list page
04:30*andythenorth wonders how many nml coders there are
04:31<@peter1138>I wonder how much of that is implementable with NewGRF and GS these days.
04:31<andythenorth>probably most
04:31*andythenorth trying to figure out how to do some kind of reference.grf
04:31<@peter1138>This dates to 2007, when we didn't full (or any?) industry support.
04:32<andythenorth>newgrf stuff, both openttd and nml kind of lacks reference cases
04:32<andythenorth>means someone has to make a grf, usually a patch of their existing project
04:32<andythenorth>then distribute in forums
04:32<@peter1138>Quality graphics. I should make a baseset out of it.
04:33<@peter1138>IIRC it was done with... Sketchup, which got Googled.
04:34<@peter1138>I think that may have been a real-world thing, haha.
04:35<@planetmaker>he... I guess your TC can be done *completely* in GS and NewGRf meanwhile
04:36<@peter1138>It wasn't even mine, I just liked the idea at the time.
04:36<@peter1138>And yes, I'm sure that is implemented already.
04:36<@planetmaker>there are such goal servers around for years
04:36<@peter1138>Probably patched servers though, you know what people are like.
04:38<@planetmaker> <-- he... must be
04:41<@peter1138>Why bother improving the game for everyone when you can keep your own changes and be exclusive.
04:43<@planetmaker>the most popular one has some stuff in proper repos
04:46<@peter1138>JGR's has a lot of nice stuff but it's almost impossible to disentangle.
04:46<@planetmaker>yes... though it's all in a git repo. So one could get the related changesets. But not the related fixes easily
04:49<@peter1138>I believe he maintains things in branches.
04:49<@peter1138>But with his saveload changes, it's difficult.
04:49<@planetmaker>yes... but I understand why he did those...
04:49<@planetmaker>somewhat at least
04:49<@peter1138>I don't mean they're bad.
04:50<@peter1138>Just makes things trickier to merge.
04:50<@peter1138>Speaking of which, I have a PR open about saveload
04:57<andythenorth>saw that
05:07<@peter1138>Ooh my Garmin has a software update. I wonder what'll break.
05:09-!-sla_ro|master [] has quit []
05:09<@peter1138>Changes made from version 3.20 to 3.30:
05:09<@peter1138> Changes to support manufacturing
05:10<@peter1138>Ah, I was on 3.00
05:10<@peter1138>Add manual elevation calibration feature
05:10<@peter1138>Useful, because mine has been wrong for about a year.
05:14*andythenorth still watching the steel mill film
05:14<andythenorth>5 mins at a time
05:31<DorpsGek_II>[OpenTTD/OpenTTD] LordAro commented on pull request #7147: Change: Synchronize randomness in vehicle introduction…
05:35<@peter1138>I have a patch that adds a property to synchronise introduction dates, but I think it's either backwards or not flexible enough.
05:36<andythenorth>I haven't tested it, but Eddi's idea appeals
05:36<@peter1138>But I think that offers better control while still having randomness.
05:36<andythenorth>my use case is distorted
05:36<@peter1138>Oh yeah game seed, so it's still random.
05:36<andythenorth>I have vehicles appearing and disappearing when I reload_newgrfs
05:36<andythenorth>in same savegame, PITA
05:37<andythenorth>kinda want a random range prop
05:37<andythenorth>or signed result :P
05:40<@peter1138>How about my non-animated locks patch?
05:40<@peter1138>Ships stopping to go up/down instead of ... going up a water slope.
05:41<andythenorth>how many ships in the lock at once?
05:41<@peter1138>No limit.
05:41<@peter1138>That's a whole other change.
05:41<andythenorth>more ship nerfs? :|
05:41<@peter1138>Quite :/
05:41<andythenorth>uphill rivers
05:42<@peter1138>It's not that bad, ships are already slow so it doesn't slow them that much.
05:42<@peter1138>Except hovercraft I guess.
05:42<andythenorth>where is Pikka ?
05:42<@peter1138>So 5 years ago.
05:42<@peter1138>So56 years ago.
05:42<@peter1138>So 6 years ago.
05:43<andythenorth>it does kind of look nice eh
05:43<andythenorth>that water slope though
05:43<@peter1138>Could be... an option?
05:43<andythenorth>newgrf locks, state machines
05:43<@peter1138>How about drawing some graphics... Hmm..
05:44<@peter1138>Hmm, no.
05:44<@peter1138>That means only 1 ship at a time. :/
05:44<@peter1138>The cheap way to do it is to put a building in front of the slope.
05:46<andythenorth>nice hax
05:56<Pikka>mmm hoverzellepins
06:00<andythenorth>mmm river generator
06:01<andythenorth>I tried to haxor it, but it broke
06:07<Heiki> (news item stating that the ice road across a nearby lake has not yet been officially opened) – useless idea for OpenTTD: make water freeze every winter so that ships get stuck but road vehicles can use it :D
06:08<andythenorth>I even drew sprites for that somewhere
06:09<@peter1138>Heiki, only in arctic, yeah? :p
06:09<@peter1138>ICE ROAD TRUCKERS
06:10<Heiki>tropical ice road
06:10<andythenorth>just make frozen lakes a thing
06:10<andythenorth>and quicksand
06:10<andythenorth>add a new disaster
06:10<andythenorth>we don't have enough disasters
06:11<@peter1138>Most people turn them off?
06:11<andythenorth>I do
06:11<andythenorth>they're kind of lame
06:11<@peter1138>The UFO ones get ridiculous, the others are okay.
06:11<andythenorth>maybe I turn breakdowns on again
06:11<andythenorth>now they're fixed
06:11<@peter1138>Are they fixed?
06:12<andythenorth>I haven't tested yet :D
06:12<andythenorth>I hope so
06:12<@peter1138>Were they broken?
06:13<andythenorth>RVs couldn't find depots
06:13<andythenorth>pathfinder faff
06:13<andythenorth>so they just broke a lot
06:13<Heiki>breakdowns make things somewhat more interesting, but most disasters are plainly annoying
06:13<andythenorth>reduced speed limit on ice road
06:13<@peter1138>Disasters are meant to keep you on your toes
06:13<andythenorth>game gets quite monotonous otherwise
06:13<@peter1138>I wonder how AI deals with them...
06:14<andythenorth>bit of micro-management is useful
06:14<@peter1138>Is it lunch time yet?
06:14<andythenorth>ages ago
06:14<andythenorth>the most excitement I get is when a train gets stuck in a PBS block
06:15<andythenorth>and I build my networks all interconnected for $reasons
06:15<andythenorth>so everything eventually deadlocks
06:16<DorpsGek_II>[OpenTTD/OpenTTD] PeterN opened pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
06:17<@peter1138>Interconnected is more funner.
06:25<andythenorth>groups then
06:25<andythenorth>for 2.0?
06:25<andythenorth>(buy menu)
06:25<DorpsGek_II>[OpenTTD/OpenTTD] planetmaker commented on pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
06:27<andythenorth>India Horse
06:31<@planetmaker>hm... tt-f has cert issues?
06:32<@planetmaker> Das Zertifikat ist am 31. Januar 2019, 12:04 abgelaufen. Die aktuelle Zeit ist 31. Januar 2019, 12:31. Fehlercode: SEC_ERROR_EXPIRED_CERTIFICATE
06:32<@planetmaker>expired 30 minutes ago
06:39<andythenorth>when I said 'eggs' I meant mostly 'butter'
06:40<@orudge>planetmaker: blargh, it's meant to restart nginx, but it seems doesn't
06:41<@orudge>Ah, no, something else has cause an issue
06:45<@orudge>Should be fixed now
06:45<@planetmaker>yay :)
06:47-!-Pikka [] has quit [Quit: Leaving]
07:12-!-Samu [] has joined #openttd
07:12-!-Samu is "..." on #openttd
07:22-!-gelignite [] has joined #openttd
07:22-!-gelignite is "gelignite" on #openttd
07:27<@peter1138>Hmm, so if a road/tram type has an introduction date set, should it always be available, regardless of, say, any trams being available in the game?
07:28<andythenorth>can never remember that
07:29<andythenorth>any answer I give is pulled out of my ass and probably wrong :P
07:29<andythenorth>spec seems to know
07:29<@peter1138>I guess the question is will any become available.
07:29*andythenorth sometimes wonders if railtypes was all wrong :P
07:30<@peter1138> A railtype is introduced, if at least one of the following conditions is met:
07:30<@peter1138> The introduction date (railtype prop 17) is passed and all required railtypes (railtype prop 18) are available.
07:30<@peter1138>So according to that, the answer is yes.
07:31<andythenorth>I am going to move the railtypes I need into Horse grf, and hope it all goes away :P
07:31<andythenorth>bad behaviour
07:31<@peter1138>Don't be silly.
07:31<@peter1138>What problem do you have that you can't solve?
07:31<andythenorth>none :)
07:31<andythenorth>railtypes totally work for my case
07:31<@peter1138> Good.
07:31<@peter1138>I'm talking about road/tram types, here.
07:32<@peter1138>It's way more likely there are no trams available because there are no default trams.
07:32<andythenorth>isn't it
07:32<andythenorth>will we ever fix that?
07:32<@peter1138>It's not a bug, so no.
07:32<andythenorth>just make copies of the default buses that run on non-electrified tram tracks
07:32<andythenorth>beep beep
07:33<andythenorth>did it snow yet?
07:33<@peter1138>Not even then.
07:33<@peter1138>Nearly lunch time.
07:35<andythenorth>also this enterprise software won't make itself
07:35<@peter1138>Not yet.
07:35<@peter1138>No, no copies of default buses.
07:35<andythenorth>players will just have to use terrible grfs
07:35<andythenorth>or even good ones
07:36<@peter1138>Think of the mess it would cause loading old savegames.
07:36<@peter1138>You can't change NewGRFs mid game because it causes issues.
07:36<@peter1138>Btw lol we added some vehicles lols
07:36<@peter1138>I'm going to eat my salad early.
07:37<andythenorth>now I am hungry :P
07:41<@peter1138>Hmm, it's no good, there's no protein in it.
07:44<@peter1138>Oh, I forgot chutney :/
07:48<@peter1138>Maybe we should special case it to if there are no trams then no tramtypes will become available.
07:49<@peter1138>Or possibly no compatible trams
07:49<andythenorth>well we could
07:49<andythenorth>do we still provide tramtypes by default?
07:49<@peter1138>only the 1, and only if trams are loaded
07:49<@peter1138>it's only when introduction date is used that an issue occurs
08:05-!-Flygon [] has quit [Remote host closed the connection]
08:09-!-snail_UES_ [] has joined #openttd
08:09-!-snail_UES_ is "Jacopo Coletto" on #openttd
08:22<Samu>while (bla) {
08:22<Samu>while(bla) {
08:23<@planetmaker>haha, andythenorth :) railtype != cargo. You're absolutely right :)
08:24<andythenorth>we are ahead for once :)
08:24<Samu>why is it some times with a space, and some other times without?
08:25<@peter1138>Samu, without for function calls, with for C/C++ keywords.
08:25<@peter1138>You shouldn't find a while( in our code, but it's not impossible.
08:28<Samu>weird rules
08:28-!-snail_UES_ [] has quit [Quit: snail_UES_]
08:29<@peter1138>Sensible rules.
08:32<Samu>gonna PR something soon
08:32<Samu>watch out
08:34<@peter1138>If it's a fix for a "while(" ... :D
08:35<@peter1138>Squirrel's code uses while(, but we can ignore that.
08:44<@peter1138>Late for you?
08:47<@planetmaker>"while (bla) {" is our chosen style while "while(bla) {" is either an oversight or - as peter says - in imported the squirrel part.
08:54<andythenorth>anyone approved the livery UI yet? o_O
08:55<andythenorth>review is all well and good, but at some point stuff needs to go to nightlies
08:55<andythenorth>players find stuff
08:56<DorpsGek_II>[OpenTTD/OpenTTD] planetmaker commented on pull request #7108: Feature: Group liveries, and livery window usability enhancements.
08:56<@planetmaker>meh... always I find the comment button but not the review buttn :|
08:56<andythenorth>me too :D
08:56<andythenorth>github quirks
08:57<@peter1138>You need to view changed files.
08:57<@peter1138>"Files changed"
08:57<DorpsGek_II>[OpenTTD/OpenTTD] planetmaker approved pull request #7108: Feature: Group liveries, and livery window usability enhancements.
08:57<DorpsGek_II>[OpenTTD/OpenTTD] planetmaker merged pull request #7108: Feature: Group liveries, and livery window usability enhancements.
08:58<@planetmaker>incredible... I need to look at code to review it :D
08:58<@peter1138>It's nice to have every bug ironed out, but realistically it needs some players to come along and actually use stuff to find many corner cases.
08:59<andythenorth>do we cut the release manually by picking selected commits still?
08:59<andythenorth>or do we just tag master?
08:59<@planetmaker>there's also no shame really in additional fix-up commits like with the autoreplace for more cargoes
08:59<@planetmaker>that's a question for TB @ andy
09:00<andythenorth>used to be we picked commits?
09:00<andythenorth>at work we tag master, so merging broken to master is very very NO
09:00<@planetmaker>it used to be: we branch-off from dev. Do some commits which set the branch (or rather also update trunk to be the next major version)
09:01<@planetmaker>and then tag from the newly-created (or existing) release branch
09:01<@planetmaker>before tagging the changelog etc were updated
09:01<@planetmaker>in the release branch. Which subsequently got merged-back into master
09:02<Eddi|zuHause><andythenorth> I have vehicles appearing and disappearing when I reload_newgrfs <- that should be gone with my change
09:02<@peter1138>andythenorth, broken master vs small bug that rarely happens is kinda different.
09:02<@peter1138>Eddi|zuHause, that's why he mentioned it.
09:03<@planetmaker>my suggestion is to basically keep this procedure to create release-branches and tag from there the actual releases
09:03<andythenorth>no need for more change at the moment
09:04<andythenorth>plenty of change to handle
09:04<@planetmaker>what would be the alternatives and what would/could one gain?
09:04<@planetmaker>an alternative is to basically not make any minor versions anymore and just regularily tag master for a release
09:04<andythenorth>that basically
09:04<andythenorth>whatever's in master is what ships
09:05<andythenorth>it's not clearly better
09:05<@peter1138>Is my saveload enum change ever a big no-no or viable?
09:05<@peter1138>If it's viable, would be nice to have it before we merge many more savegame bumps.
09:05<@planetmaker>it basically can be done with the branch and tag mechanism, too. No-one says how many bug-fix and beta and rc tags we need to make
09:06<@planetmaker>peter1138, from what I read through the patch yesterday: I like it.
09:06<@planetmaker>makes maintaining versions for new patches much easier
09:06<Eddi|zuHause>i'd suggest merging it sooner rather than later
09:06<@planetmaker>and removes magic (saveload revision) numbers
09:07<@planetmaker>I actually wonder whether beyond that we should adopt more of the savegame version stuff from jgr (in a 2nd optional step)
09:08<Samu>this is called every tick, wondering if the code could be improved
09:08<Eddi|zuHause>i haven't looked at how JGR did things, but keeping saveload compatibility between patchpack versions always was a tricky subject
09:09<Eddi|zuHause>... while also continuing to support loading trunk games
09:09<Samu>the maybestartnewcompany could fail, right? hmm
09:10<@planetmaker>Eddi|zuHause, he seems to have found a solution for exactly that
09:10<@peter1138>planetmaker, yeah, that's the thing, but it's a major step further.
09:10<@planetmaker>from what I understand he introduced a chunk for loading PP data not found in trunk - so not dirtying the trunk chunks with PP variables
09:11<@peter1138>planetmaker, problem is it touches pretty much all of the saveload code again.
09:11<@planetmaker>absolutely, peter. A big step further. And not an alternative to your change. Just something beyond it
09:11<Samu>maybestartnewcompany could return true or false
09:11<Samu>for better control
09:12<@planetmaker>it's a one-time change... is that really a problem to touch that code and replacing magic numbers with enum entries?
09:12<@peter1138>If I rebase nrt now, I'll have to do the saveload changes twice, that's all :)
09:13<@planetmaker>all future patches which change / add saveload settings will profit when being merged
09:13<@peter1138>planetmaker, there is the difference that the "to" variable is not exclusive (so you say which revision removes this entry, rather than the last revision that contains it)
09:13<@peter1138>Everything else is pretty much search & replace.
09:15<@peter1138>is not -> is now
09:15<@peter1138>big difference heh
09:16<@peter1138>The only use we had for it being inclusive is you could remove stuff from future savegames but not "waste" a bump.
09:16<@peter1138>But I think that is pretty rare and probably a bad thing to do.
09:16<@planetmaker>well. We might waste about a handful of saveload revisions. Nothing I'm scared about.
09:16<@peter1138>I think we'll probably have made changes before we get to 65535 revisions.
09:17<@peter1138>Also, I'd just like to see SLV_ROADTYPES ;)
09:17<@planetmaker>at the current rate we have another 600 years of saveload revisions ;)
09:19<@peter1138>We actually had a few years of no bumps, or rather only bumping for a release.
09:19<@peter1138>We've had quite a few bumps in the past few months, however.
09:19<@planetmaker>if we're 10x as wasteful now, it's 600 years. Enough for me at least ;)
09:19<@planetmaker>our children can fix-up the saveload mess we might create
09:20<@peter1138>So it turns out my exception handling stuff I was working on wasn't working because... I... er... hadn't wrapped my method with it.
09:21<@peter1138>Now I need to figure out if that was deliberate or an oversight.
09:25<Samu> turned maybestartnewcompany into a bool
09:26<Samu>it was a void
09:27<DorpsGek_II>[OpenTTD/OpenTTD] Eddi-z commented on pull request #7147: Change: Synchronize randomness in vehicle introduction…
09:30<Eddi|zuHause><planetmaker> Eddi|zuHause, he seems to have found a solution for exactly that <-- like i said, i haven't looked at JGR's approach, but older patchpacks usually did that by using trunk saveload revision + X as kind of a "buffer", and then dropped loading of significantly older patchpack saves as trunk moved into this buffer
09:31<DorpsGek_II>[OpenTTD/OpenTTD] planetmaker requested changes for pull request #7068: Add: smart town name first steps - #7037
09:31<Eddi|zuHause>i kinda always wanted to use the "minor savegame version" instead
09:31<Eddi|zuHause>which is some leftover thing from ancient times, but has been always 0 in trunk for most of the time
09:33<Eddi|zuHause>just the usual response to that was "DON'T TOUCH THAT"
09:36<@peter1138>Minor doesn't really help though.
09:36<@peter1138>Maybe I should look at JGR's saveload changes again. It might be more feasible now, IIRC it required some C++ features.
09:36-!-Arveen [] has joined #openttd
09:36-!-Arveen is "realname" on #openttd
09:37<@planetmaker>nothing > c++11
09:37<@planetmaker>that's his explicit compiler setting
09:38<@peter1138>Yes, we didn't require it back when I last looked :)
09:40<@peter1138>Hmm, problem is his saveload stuff has merges with our master.
09:40<@peter1138>Usual problem :(
09:40-!-synchris [~synchris@] has joined #openttd
09:40-!-synchris is "Synesios Christou" on #openttd
09:42<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick opened pull request #7151: Codechange: Allow AI companies start_date to be 0
09:42<Samu>review asap
09:43<@peter1138>git log --author "j.g.r" is kinda useful, though.
09:45<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
09:45-!-nielsm [] has joined #openttd
09:45-!-nielsm is "Niels Martin Hansen" on #openttd
09:49<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
09:52<Samu>I need a way to make sure the parameter start_date really belongs to an AI and not to a GS
09:52<Samu>how would I do that?
09:53<Samu>(without touching everything)
09:54-!-supermop_work [~supermopw@] has joined #openttd
09:54-!-supermop_work is "A CIRC user" on #openttd
09:54<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
09:55<@peter1138>I thought GS didn't have start_date as a parameter?
09:55-!-supermop_work_ [~supermopw@] has joined #openttd
09:55-!-supermop_work_ is "A CIRC user" on #openttd
09:56<Samu>they can have it
09:56<Samu>i tried yesterday with glx
09:56<@peter1138>Also, does C++ allow runtime checking of types? I can't remember, I'm used to C# :D
09:56<@peter1138>Cos you use AIConfig for AIs, and GameConfig for GS
09:56<@peter1138>You could at least initialise is_ai based on that.
09:57<@peter1138>Have a virtual method in each that returns true/false depending.
09:57<@peter1138>Similar to how our drivers return static values.
09:57<@peter1138>if this->is_ai
09:57<@peter1138>Then it would not need passing around everywhere
09:59<@peter1138>milek7, Hmm, not clear how to do "typeid(x) is AIConfig"
09:59<@peter1138>Seems the examples only compare one instance to another, rather than just a type.
09:59<milek7>maybe typeid(x) == typeid(AIConfig)
10:02<Samu>a GS author can create a start_date parameter with description = ""
10:02<Samu>openttd picks it up
10:02<@peter1138>if (typeid(this) == typeid(AIConfig *))
10:02-!-supermop_work [~supermopw@] has quit [Ping timeout: 480 seconds]
10:03<@peter1138>So you could drop ALL the is_ai crap and use that condition.
10:03<@peter1138>#include <typeinfo>
10:03<@peter1138>If that's a no-go, then using virtual overrides is a nicer solution.
10:03<@peter1138>is_ai is just cruft that, especially passing it around everywhere.
10:04<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
10:05-!-glx [] has joined #openttd
10:05-!-mode/#openttd [+v glx] by ChanServ
10:05-!-glx is "Loïc GUILLOUX" on #openttd.noai #openttd.notice +#openttd
10:06-!-sla_ro|master [] has joined #openttd
10:06-!-sla_ro|master is "slamaster" on #sla #openttd
10:07<Samu>identifier AIConfig is undefined :|
10:08<Samu>typeid(this) == typeid(AIConfig *)
10:08<Samu>gonna try building
10:08<Samu>see if it's just intellisense being dumb
10:10<Samu>well, it built
10:10<Samu>let's see what the breakdown do in that part
10:10<@peter1138>Patch should be a lot smaller with that :-)
10:11<@peter1138>If it works.
10:11<Samu>‡ type_info::operator== returned false bool
10:12<+glx>dunno if it's been already said, but start_date exists only for AI and it's auto added to the settings list by openttd
10:14<Samu>‡ __std_type_info_compare returned 1 int
10:14<Samu>returned 1
10:15<Samu>1 == 0 is false
10:15<Samu>returns false
10:15<@peter1138>Can you output typeid(this).name and typeid(AIConfig *).name
10:15<milek7>just guessing, but maybe typeid(*this) == typeid(AIConfig)
10:15<@peter1138>maybe typeid(this) returns ScriptConfig *
10:15<@peter1138>milek7, maybe!
10:16<Samu>let' seee
10:16<@peter1138>milek7, very good point.
10:17<@peter1138>Also try "typeid(this) == typeid(AIConfig)" but you'd need to include headers for aiconfig then.
10:17<@peter1138>Probably no problem.
10:17<+glx>including headers of the derived class in the base class ?
10:18<@peter1138>I know :/
10:18<Samu>typeid(*this) == typeid(AIConfig) - error C2027: use of undefined type 'AIConfig'
10:18<+glx>maybe just a minimal forward declaration of the derived class
10:18<Samu>doesnt build
10:18<@peter1138>"but you'd need to include headers for aiconfig then."
10:18<Samu>where is
10:19<Samu>hmm wait
10:19<@peter1138>glx, hmm. It's not a pointer though, so I don't think so.
10:20<Samu>ah, included it
10:20<Samu>it builds now, let's see
10:20<@peter1138>this->SetSetting((*it).name, is_ai && StrEmpty((*it).description) && strcmp((*it).name, "start_date") ? r : (value != 0) ? max(1, r) : 0);
10:20<@peter1138>You know
10:20<@peter1138>Come to think of it
10:20<@peter1138>That whole line is pretty horrible :p
10:21<@peter1138>Why can't it be 0 there?
10:21<andythenorth>planetmaker: fancy cleaning up forum stickies a little bit? o_O
10:21<Samu>yees!!! it works
10:21<Samu>returned 0
10:21<Samu>0 == 0 is true
10:22<Samu>i want random deviation to occur for dates 1-3600
10:22<Samu>but not for 0
10:23<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
10:23<@peter1138>Samu, yes, but that's not what this particular line is handling.
10:23<@peter1138>Bah, I misread the old line :p
10:23<@peter1138>So it always sets a random start date.
10:24<@peter1138>if random_deviation is 0 it won't do the setting.
10:24<@peter1138>if start_date is 0 is random_deviation not 0?
10:26<+glx>by default it's 60 for start_date, but it should be possible to change that before setting the start_date
10:26<Samu>gonna make it clearer to read
10:27<+glx>this->ClearConfigList(); <-- this line will reset all start_date elements but keep the start_date value
10:27<andythenorth>manually set buy + run costs for 286 trains?
10:27<@peter1138>andythenorth, yes, that's normal.
10:27<andythenorth>or continue using an algorithm which doesn't give results I want :P
10:27<andythenorth>very labour saving
10:27<andythenorth>but wrong
10:28<@peter1138>andythenorth, add some random_deviation
10:28<andythenorth>on compile?
10:28<andythenorth>every release is slightly different?
10:29<Samu>strcmp((*it).name, "start_date") this is the confusing function
10:29<@peter1138>Use action 6 to set it based on game seed!
10:29<@peter1138>strcmp is not confusing
10:29<Samu>returns 0 when it's start_date
10:29<@peter1138>That's what strcmp does.
10:30<@peter1138>The strcmp() function compares the two strings s1 and s2. It returns an integer less than, equal to, or greater than zero if s1 is found, respectively, to be less than, to match, or be greater than s2.
10:30<+glx>strcmp("a", "b") returns -1
10:31<+glx>strcmp("b", "a") returns 1
10:31<+glx>very simple to understand
10:31<Samu>if (typeid(*this) == typeid(AIConfig) && StrEmpty((*it).description) && strcmp((*it).name, "start_date")) {
10:31<+glx>missing !
10:31<Samu>if is ai config, description is empty and not a start_date
10:31<Samu>use r
10:32<+glx>ah right then
10:32<andythenorth>oof BBL
10:32-!-andythenorth [] has left #openttd []
10:32<@planetmaker>andythenorth, later tonight maybe
10:33<+glx>but just checking for "start_date" should be enough, as only AIs have "start_date"
10:33<Samu>i think it's correct the way I have, but very confusing
10:33<Samu>because of that strcmp
10:33-!-Jortuny [~textual@] has joined #openttd
10:33-!-Jortuny is "Textual User" on #openttd
10:34-!-strawbs89 [~oftc-webi@2a02:c7d:3280:1e00:609e:912a:2d7e:7d27] has joined #openttd
10:34-!-strawbs89 is "OFTC WebIRC Client" on #openttd
10:35<@peter1138>glx, indeed.
10:35<Samu>maybe strcmp((*it).name, "start_date") != 0 would be less confusing?
10:36<@peter1138>(value != 0) ? max(1, r) : 0)
10:36<strawbs89>hi all i have a problem, i am trying to build a tourist centre in my game but it keeps tellin me to build on sloped land and build in forest now i am building in forest and i am building trying to build it on sloped land but it still wont work
10:36<@peter1138>I see.
10:36<@planetmaker>why... do AIs need to start at day 0 instead of 1? Just to piss-off the player? :P
10:36<Samu>to make them all compete fairly
10:36<@peter1138>planetmaker, day 0 is a special case
10:36<Samu>ai competitions
10:36<@peter1138>planetmaker, makes it start with no randomization added
10:37<@peter1138>I can understand that
10:37<+glx>strawbs89: ECS industries require very specific lands, there's a wiki showing that somewhere
10:37<strawbs89>oh brill glx could you link me please
10:38-!-mode/#openttd [+v DorpsGek] by ChanServ
10:38-!-mode/#openttd [+v planetmaker] by ChanServ
10:38-!-mode/#openttd [+v orudge] by ChanServ
10:38<@planetmaker>is there any randomness with AI dates? I thought that was only with vehicle introduction dates
10:39<strawbs89>oh ta fella thats great
10:40<+glx>start_date + (rand(60 * 2) - 60)
10:41<Samu>got this atm
10:43<Samu>oh, right, gotta remove the is_ai from everywhere now
10:46-!-Netsplit <-> quits: sla_ro|master, ^Spike^, TrueBrain, Exec, @Terkhen, TinoDidriksen, XeryusTC, Hirundo, tyteen4a03, OsteHovel, (+13 more, use /NETSPLIT to show all of them)
10:48<strawbs89>ok so i'v read the wiki how do i get those land signs that i gotta place
10:48<+glx>buy land
10:49<+glx>but it's not really mandatory
10:49<strawbs89>what, in game its self or build scenrio
10:49<@planetmaker>you don't need to buy the land. It just needs to be shaped exactly like shown
10:50<@planetmaker>It's just means to illustrate the footprint of the castle
10:50<strawbs89>no no i'm gonna do the casino tourist centre as shown on the wiki
10:50<@planetmaker>then... replace castle by casino.
10:50<@planetmaker>doesn't change the answer
10:51<+glx>Samu: can't you just check if name is "start_date" and current value is 0 and not add random in this case ?
10:51-!-Netsplit over, joins: eirc, Markk, Heiki, XeryusTC, sla_ro|master, +tokai|noir, TinoDidriksen, Speedy`, OsteHovel, avdg (+13 more)
10:51-!-Heiki is "Heikki Piirainen" on #openttd #debian-offtopic #debian #debian-next
10:52-!-WWacko1976-work [] has quit [Ping timeout: 480 seconds]
10:53<@peter1138>He's worried that a game script might use a setting called "start_date"
10:54<+glx>but that can't happen
10:54<+glx>at worse we can prevent it in AddSettings
10:54<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh approved pull request #7114: NPF bails out when source tile is also a destination tile
10:54<+glx>even AI should not create this setting themselves
10:54<@planetmaker>and... would it matter? A GS wanting to start an AI is a totally legit action, is it?
10:55<@planetmaker>but it just needs to call like 'start_ai' and then it starts. No questions asked
10:55<Samu>im not sure GS's can start companies themselves
10:56<Samu>doesn't seem like they can, but i'm not too familiar with GS'es
10:56<Samu>their api
10:58<@planetmaker>indeed I don't see that in the API description. Sad :)
10:59<+glx>seems it cannot remove company either ;)
10:59<@peter1138>Well, we don't need GS improvements, we just need to allow AIs to cheat!
10:59<@planetmaker>also sad
11:00<@planetmaker>I wonder whether you're serious or not, peter :)
11:00<Samu> /* allow multiple AIs to possibly start in the same tick */
11:00<Samu> } while (AI::GetStartNextTime() == 0);
11:00<Samu>good enough comment?
11:00<@peter1138>planetmaker, we had an argument here a couple of days ago where someone wanted to allow the AI to cheat.
11:00<@peter1138>"because players can"
11:01<@planetmaker>well... Add a AI-cheat gamescript :)
11:01<@planetmaker>the GS can cheat money to the AI and so on
11:01<@peter1138>The other argument was GS was useless because you can only have 1 of them
11:01<@planetmaker>well... I am still not sure I actually like the "only one GS" approach
11:02<@planetmaker>I can see benefit in both answers
11:02<@peter1138>Yes, same.
11:02<@peter1138>So it was a guy wanting to let AIs cheat, fighting against us saying "improve GS instead"
11:02<@peter1138>fun :D
11:03<@planetmaker>sounds fun
11:04<@planetmaker>but really... a GS should be able to invoke an AI company. And to delete one either at its own discretion
11:04<+glx>and it's possible to have more than 1 GS anyway, just merge them
11:04<@planetmaker>Scenarious would definitely profit from such functionality
11:04<Samu>adding comments is not my specialty :|
11:04<@planetmaker>glx, yes... but "just merge them" is easier said than done and makes composition of nice stuff like with newgrfs impossible
11:04<Samu>ok, gonna submit again
11:05<Samu>must rebase -i and fixup
11:06-!-Wormnest [~Wormnest@] has joined #openttd
11:06-!-Wormnest is "Wormnest" on #openttd
11:06<@planetmaker>e.g. with NewGRFs I choose my favourite station, vehicle and industry and objects newgrfs - and combine them modularily
11:07<@planetmaker>with GS I cannot choose a citybuilder GS and combine that with a "random disasters" GS
11:07<Samu>the currently selected base graphics set is missing 4 sprites? what?
11:08<+glx>group liveries in master Samu
11:09<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick updated pull request #7151: Codechange: Allow AI companies start_date to be 0
11:10<Samu>changed the order of that check, hope i didn't break it lol
11:10<Samu>i probably broke it
11:10<Samu>will check later
11:10<strawbs89>rite one more question, which ECS Town Vector Does This Tourist info work with cos i keep getting an error about the ecs town vector
11:11<@planetmaker>strawbs89, depends probably on what that error is. My crystal ball is sadly broken for decades
11:13<strawbs89>this is what im getting fatal newgrf error
11:14<@planetmaker>then obviously that NewGRF doesn't work
11:14<strawbs89>ok which one does
11:14<@planetmaker>and it will probably tell you which and why it does
11:15<@planetmaker>like the screenshot you posted in forums tells exactly the URL in the error - which is where to look to explain the message
11:15<strawbs89>i typed that url in and its giving me an error for that page
11:17<@planetmaker>Indeed. You should tell the author of that NewGRF.
11:18<strawbs89>see 404 not found
11:20<+glx>is mixing FIRS and ECS supported ?
11:20<@planetmaker>not at all
11:20<@planetmaker>if you simply removed the mutual exclusion checks, the industries and cargoes would simply explode
11:21<strawbs89>but when you goto the online content downloader theres two town vectors
11:22<+glx> <-- try this one
11:22<@planetmaker> is the better URL
11:23<@planetmaker>I know no or very few NewGRF which has a nicer documentation. Maybe ECS has similar
11:23<@planetmaker>but not auto-generated from source :P
11:25<+glx>so I guesse ECS Town is disabled by FIRS
11:25<@planetmaker>it probably disables itself
11:25<@planetmaker>or FIRS disables itself. Whatever gets the first try
11:25<+glx>anyway it's not really an error
11:26<+glx>works as intended
11:26<@planetmaker>but... the first answer in forums was already "do not use both NewGRF"
11:32<DorpsGek_II>[OpenTTD/OpenTTD] glx22 commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
11:38<@peter1138>Yeah as glx says, I'm sure it could be a lot simpler
11:38<@peter1138>No need to do any of the typeid checking.
11:38<@peter1138>And also thinking about it, I think that's a bad idea anyway. I prefer to see virtual overrides, like we already use.
11:40<+glx>indeed, like it's done for AIConfig::GetSetting(const char *name)
11:40<+glx>there it does special treatment for start_date
11:42<+glx>something like get value of start_date, call default randomise, set start_date to 0 if it was 0 before the call
11:42<+glx>clean and easy
11:43<Samu>got this atm
11:43<Samu>horizontal coding
11:43<@planetmaker>you really like long and complex conditions
11:45<Samu>becomes shorter, less repetitive :(
11:45<@planetmaker>but read what was said here above
11:45<Samu>this->GetSetting((*it).name) still repeats
11:46<Samu>what's a virtual override?
11:47<+glx>check ScriptConfig::GetSetting(), ScriptConfig::SetSetting(), AIIConfig::GetSetting() and AIConfig::SetSetting()
11:49<+glx>you can do something similar for AddRandomDeviation()
11:51<+glx>I even wrote the algo 2 lines before your "back"
11:52<Samu>what about game_script.cpp? it doesn't have these
11:52<+glx>doesn't need it
11:53<+glx>GameConfig just use ScriptConfig
11:53<+glx>it's the magic of objects :)
11:54<Samu>too magic i can't even see what happens
11:56<+glx>when you call a virtual function on a object it first checks if the object defines the function, if not it checks the parent, if not it checks the parent of parent, .... once found it execute the function
11:57<+glx>and if you can still call the parent function from the child function if needed
11:58<+glx>like it's done in GetSetting() and SetSetting()
11:58<Samu>hmm let's see
11:58<Samu> /* virtual */ void AddRandomDeviation();
11:58<Samu>virtual is just the comment
11:59<+glx>in ai_config.cpp yes, it's just a reminder
11:59<+glx>but the base class must have the virtual keyword
12:02<Samu>where is the virtual keyword?
12:04<Samu>ah found it
12:04<Samu>in script_config.hpp
12:04<strawbs89>ok i don't know if this can be done but when i load my game i goto newgrf settings and it comes up as custom how can i change this to my name
12:04<Samu>virtual void AddRandomDeviation();, like this
12:04<DorpsGek_II>[OpenTTD/OpenTTD] glx22 commented on pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
12:06<Samu> error C3861: 'InteractiveRandomRange': identifier not found
12:06<Samu>in ai_config.cpp it doesn't find
12:06<+glx>you don't need it there anyway
12:06<Samu>how come?
12:07<+glx>get start_date value, call parent AddRandomDeviation(), set start_date to 0 if it was 0
12:08<Samu>ah, i need to call the origial one yet?
12:08<Samu>hmm ok
12:08<+glx>parent AddRandomDeviation() will change start_date but you don't really care
12:08<Samu>i thought i would set it up right here
12:08<+glx>of course you need to call it, there are other settings than start_date
12:08<Samu>ah, i see
12:10-!-keoz [~keikoz@2a01:e35:2fd5:51e0:d790:795d:2cc7:b53d] has joined #openttd
12:10-!-keoz is "Grmph" on #openttd
12:12<DorpsGek_II>[OpenTTD/OpenTTD] flitzpiepe commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:18<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:20-!-Tirili [~Tirili@2a02:8108:96c0:19b0:260:6eff:fe42:7728] has joined #openttd
12:20-!-Tirili is "realname" on #openttd #holarse-gaming
12:21<@planetmaker>"The commit history should as far as possible contain logical changes, rather than read as a developer diary." <-- nicely worded
12:25<DorpsGek_II>[OpenTTD/OpenTTD] flitzpiepe commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:27<DorpsGek_II>[OpenTTD/OpenTTD] planetmaker commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:33<Samu>can't do this ScriptConfigItemList::const_iterator it = NULL;
12:33<Samu>can't set it to NULL, then what is the default value?
12:33<+glx>where do you need that ?
12:34<DorpsGek_II>[OpenTTD/OpenTTD] Eddi-z commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:34<+glx>you are again overthinking
12:34<+glx>check AIConfig::ClearConfigList()
12:35<+glx>you just need something like that, with an extra ==0 test before the end Set call
12:35<Samu>easier than expected
12:36<+glx>you get the value, random change it, you fix it if needef
12:37<+glx>can't be easier than that
12:41<Samu>it is assuming start_date parameter already exists
12:41<+glx>it does
12:41<+glx>all AIs have it
12:42<+glx>it's an internal settings auto added
12:42<Samu>i've had troubles dealing with that
12:42<Samu>sometimes it doesn't exist
12:42<Samu>it has to be added
12:42<Samu>let's see what happens
12:42<nielsm>then those "sometimes" have to be quantified, when it that actually?
12:42<nielsm>try assuming it exists and just add an assert that fails if it doesn't
12:43<nielsm>if that assert triggers, then it's time to investigate why
12:43-!-Progman [] has joined #openttd
12:43-!-Progman is "Peter Henschel" on #openttd
12:43<+glx>only time it doesn't exist means there's no script info, and that's handled by GetSetting
12:43<Samu>for my ai gui big patch, i had many situations where it didn't yet exist
12:44<DorpsGek_II>[OpenTTD/OpenTTD] flitzpiepe commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:44<Samu>for example, let me find...
12:45<+glx>but the GUI works mainly with ScriptConfig, not AIConfig
12:45<+glx>you need to cast for it to properly handle start_date
12:45<Samu>here, when AI is stopped
12:46<DorpsGek_II>[OpenTTD/OpenTTD] nielsmh commented on pull request #7145: TBTR 2.0 (Template-based Train replacement)
12:46<Samu>the config slot won't have start_date yet, unless i do that Change(NULL) right there
12:46<+glx>not a problem
12:46<Samu>an AI that is a random AI
12:47<Samu>the others are fine
12:47<+glx>as said AIConfig::GetSetting handle that
12:48<Samu>well, on master the window is closed
12:49<Samu>i guess it won't get into a crash
12:49<+glx>and as said GUI works with ScriptConfig, you need to cast to AIConfig if you want special start_date handling
12:52-!-HerzogDeXtEr [] has joined #openttd
12:52-!-HerzogDeXtEr is "purple" on #openttd
12:53<Samu>ah, there's an assert in GetSettings
12:53<+glx>yes only valid setting when no info is start_date
12:53<Samu>ok, it was exactly that damn assert where i was having crashes
12:54<+glx>because you tried to get a different setting
12:54<+glx>start_date is not a problem, it works
12:54<Samu>no, because it was not existing yet
12:54<Samu>Change(NULL) creates it
12:55<+glx>you fail to understand the code
12:55<+glx>assert(strcmp("start_date", name) == 0); <-- that means if name is not "start_date" then crash
12:55<Samu>well, i dunno, change(null) solved it
12:56<+glx>start_date was not the problem
12:56<+glx>and Change(NULL) doesn't create start_date at all
12:57<Samu>it does, i am sure it does
12:57<+glx>if removes the info
12:57<+glx>I'm quite sure it doesn't add any setting
12:58<+glx>NULL name means NULL info, NULL info means no settings
12:58<Samu>NULL is the name
12:58<+glx>just follow the code in Change()
12:59<Samu>void ScriptConfig::Change(const char *name, int version, bool force_exact_match, bool is_random)
12:59<Samu>if (this->config_list != NULL) this->PushExtraConfigList();
12:59<+glx>and the line above
12:59<Samu>it's this thing that puts the start_date into it
12:59<+glx>this->config_list = (info == NULL) ? NULL : new ScriptConfigItemList();
13:00<+glx>config_list is NULL
13:00<+glx>so no PushExtra
13:01<+glx>btw some this-> are missing in this function ;)
13:01<Samu>i can help u trigger a crash because of that missing start_date
13:02<+glx>the code is clear, no name = no info and no config
13:02<Samu>rename to InvalidateWindowData
13:02<Samu>then have the AI Settings window open
13:02<Samu>let a random ai start
13:02<Samu>then kill it
13:02<Samu>click reset button = crash
13:04-!-strawbs89 [~oftc-webi@2a02:c7d:3280:1e00:609e:912a:2d7e:7d27] has quit [Quit: Page closed]
13:04<+glx>but that's because it's using a wrong config
13:05<+glx>the problem is on the GUI side
13:05<+glx>not AIConfig
13:06<Samu>I suppose I agree
13:07<Samu>Change(NULL) has to be put somewhere though
13:07<+glx>yes to reset the config
13:07<+glx>and return to the randomAI one
13:08-!-andythenorth [] has joined #openttd
13:08-!-andythenorth is "andythenorth" on #openttd
13:08-!-Thedarkb-T60 [] has joined #openttd
13:08-!-Thedarkb-T60 is "realname" on #openttd #oolite
13:10<+glx>when a randomAI starts, the config is changed to the started AI
13:11<+glx>setting is_random
13:11<+glx>so when it stops you have to set it back to random
13:12<+glx>and that's exactly what you did
13:13*andythenorth nap time?
13:13*peter1138 returns.
13:13<@peter1138>No, it's NRT TIME
13:14<andythenorth>it might still be enterprise software time for me
13:14<andythenorth>do I really want to read the html validator results at 18.15?
13:14<nielsm>ugh html validation
13:15<nielsm>I haven't done that in maybe 15 years?
13:15<nielsm>(probably stopped caring)
13:15<andythenorth>yours always validates? o_O
13:15-!-Wormnest [~Wormnest@] has quit [Ping timeout: 480 seconds]
13:16<nielsm>(today at work I wrote javascript that generates combined line and bar graphs in svg)
13:16-!-cHawk [] has quit [Quit: Leaving]
13:17<@peter1138>I don't bother validating HTML these days because writing correct HTML is so simple... ;)
13:17<nielsm>(because I haven't been able to find any existing library to do that relibaly without adding infinite useless eyecandy features that break static rendering with wkhtmltopdf)
13:17<@peter1138>(Unless you're a WordPress theme developer, in which case...)
13:17<@peter1138>Right, what am I working on tonight?
13:17<nielsm>(and also they can never be coaxed to lay out things how I actually want it)
13:18<@peter1138>Good idea!
13:19<andythenorth>where the vehicles get on ferries
13:19<@peter1138>No, nrt.
13:19<@peter1138>But docks are in my list.
13:19<@peter1138>There may be patches to steal for that :D
13:20<andythenorth>snow for roads?
13:20<andythenorth>with snowploughs?
13:20*andythenorth had an evil idea
13:20<@peter1138>New road type: Snow.
13:21<@peter1138>Vehicle comes along and changes the roadtype behind it.
13:21<@peter1138>How about... no, but... hah.
13:21<andythenorth>my idea was the same but different :P
13:21<andythenorth>store a wear factor
13:21<@peter1138>Might have space.
13:21<andythenorth>do a statistical count of vehicles passing over each tile
13:21<andythenorth>or something
13:21<andythenorth>some vehicles have negative wear :P
13:21<andythenorth>expose it to newgrf
13:22-!-Gja [] has joined #openttd
13:22-!-Gja is "Martin" on #ceph #bcache #openttd
13:22<+glx>then holes on the road limiting speed ?
13:22<andythenorth>holes on the road
13:22<andythenorth>worn out rail track
13:22<andythenorth>snow increases or removes
13:22<andythenorth>adjust speed limit accordingly :P
13:22<@peter1138>So you have to buy and run road-maintenance vehicles.
13:22<andythenorth>dredging sea lanes
13:22<andythenorth>it's totally dumb
13:22<andythenorth>but might be fun
13:22<nielsm>how much precision do you want per tile, 8 or 16 bit?
13:23<andythenorth>utterly stupid, but might look really good
13:23<nielsm>(it's going to be expensive)
13:23<nielsm>(in storage)
13:23<@peter1138>nielsm, just add a couple of 64 bit ints.
13:23<andythenorth>it doesn't need much precision
13:23<andythenorth>I tried to work out if we could build the graph of nodes (junctions) and edges
13:23<andythenorth>then apply same wear factor to all tiles in the edge
13:23<andythenorth>but eh, andythenorth :(
13:23<andythenorth>stick to pixels :P
13:24<Samu>oh crap, i keep forgetting my ai does reset the config immediately to random ai state
13:24<andythenorth>or enterprise software
13:24<Samu>master doesn't do that
13:24<@peter1138>Hmm, so.
13:24<@peter1138>No trams loaded, yet tram tracks are available. What now?
13:24<Samu>it leaves it with the old random ai config that died
13:24*andythenorth wants a new command, git hmm
13:24<andythenorth>peter1138: delete it all? :P
13:25<andythenorth>or more seriously
13:25<andythenorth>what daft condition causes them to be available?
13:25<Samu>one could configure parameters on it for nothing, because when it'd start next time, it wouldn't care what u've set, it's just gonna start another random ai
13:25<Samu>i remember now
13:25<andythenorth>does jenkins hate me?
13:26<@peter1138>andythenorth, introduction date for road types.
13:26<@peter1138>Which is why I was talking about that earlier.
13:26<andythenorth>who set the intro date on the grf?
13:26<@peter1138>introduction date doesn't care if there are no vehicles available for it.
13:26<andythenorth>blame the author?
13:26-!-Thedarkb-T60 [] has quit [Ping timeout: 480 seconds]
13:26-!-Thedarkb-T60 [] has joined #openttd
13:26-!-Thedarkb-T60 is "realname" on #openttd #oolite
13:26<@peter1138>The feature is there, so...
13:26<@peter1138>I think it's fine.
13:26<@peter1138>It's a misconfigured game.
13:27<@peter1138>It is as least working better with my latest change.
13:27<@peter1138>Before that, the menu worked but the toolbar closed itself instantly.
13:27<@peter1138>> bad UI
13:27<+glx>disable in menu like rails without available engines ?
13:27<andythenorth>naughty step
13:28<@peter1138>glx, even with introduction dates on the rails?
13:28<Samu>ok, i'm gonna trust glx that this won't crash on master
13:28<+glx>no checked
13:29*andythenorth waits for staging to update
13:30<andythenorth>peter1138: specs say it's OR for conditions
13:30<andythenorth>so yeah, it should be available
13:30<andythenorth>or specs are wrong
13:30*andythenorth well aware that specs are not canonical :P
13:32<Samu>GameScripts don't have "start_date", so useless to check if it's a GameScript? yesterday i proved they could have it
13:32<+glx>they shouldn't
13:32<Samu>edited minimalGS
13:32<Samu>added a parameter start_date to it
13:33<+glx>no sane dev would add this parameter
13:33<Samu>openttd picked it up and added the in-built description
13:33<Samu>ok im removing the change anyway
13:34<+glx>anyway the default description is not a problem I think
13:34<+glx>if no description is provided for a potential start_date GS parameter
13:35<+glx>so no need to check that
13:35<@peter1138>if a gamescript does have a start parameter, then master will be changing it anyway
13:36<@peter1138>there is no need to "fix" that in a patch that's supposed to be about allowing AIs to start instantly.
13:37<+glx>indeed the handling for AI is done in AI class, GS are not a problem
13:40<Samu>pushing with force
13:40<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick updated pull request #7151: Codechange: Allow AI companies start_date to be 0
13:40<@peter1138>You think?
13:41<Samu>i think
13:42<@peter1138>Yes. That looks a LOT better than the original.
13:42<@peter1138>Welcome to C++ OOP :-)
13:43<Samu>about that asynchronous thing, I have no idea
13:43<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
13:44<DorpsGek_II>[OpenTTD/OpenTTD] J0anJosep commented on issue #7119: Ships turning around pixel alignment
13:44<@peter1138>Samu, it means a command is sent to the server, and you don't get a respond back about whether it actually succeeded or completed.
13:45<@peter1138>However in this case I don't think this would be being sent from client to server anyway.
13:45<+glx>only server can start AIs
13:45<Samu>so that means I'm lucky
13:45<Samu>but start_date is 0
13:45<Samu>why 0?
13:46<Samu>0 is a magic number
13:47<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on issue #7119: Ships turning around pixel alignment
13:48<Samu>actually there is a problem yet
13:48<nielsm>on a side note, Samu I think it should be Change and not Codechange, because it's going to have user-visible effects
13:48<Samu>forget about the (1-3600) range
13:48<nielsm>Codechange is only for changes that jigger code around without actually having an effect on the end result
13:49<@peter1138>Hmm, wonder if I made a booboo on ships turning.
13:49<Samu>ok, let me change that
13:49<Samu>i also have something to fix yet
13:49<@peter1138>Hmm, no I remember now, it glitched both ways.
13:52<DorpsGek_II>[OpenTTD/OpenTTD] glx22 commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
13:55-!-supermop_work_ [~supermopw@] has quit [Ping timeout: 480 seconds]
13:55<Samu>no glx, i forgot about max(1, the other value that could have been randomized to 0)
13:56<+glx>no it can't be randomised to 0
13:56<+glx>I think, not checked, you may be right
13:57<Samu>random deviation could
13:58<Samu>this->SetSetting("start_date", start_date ? max(1, this->GetSetting("start_date")) : start_date);
13:59<Samu>or 0
13:59<Samu>this->SetSetting("start_date", start_date ? max(1, this->GetSetting("start_date")) : 0);
14:01<Samu>hmm how do i rename a commit?
14:01<Samu>ammend during rebase?
14:01<Samu>gonna try
14:01<@peter1138>If it's the last commit, git commit --amend
14:01<@peter1138>Otherwise do an interactive rebase and follow the instructions.
14:02<nielsm>interactive rebase has an instruction called 'reword', that's changing the commit message
14:02<andythenorth>turning ships eh
14:02<andythenorth>shave a yak?
14:02<Samu>do you really want 0 instead of start_date?
14:03<@peter1138>I think it makes it clearer that you are explicitly setting it to 0.
14:04<@peter1138>Otherwise at first glance it looks like you might just be setting it to the value it already was.
14:04<Samu>oki, 0
14:04<@peter1138>Which, yes, happens to be 0, but still.
14:04<Samu>this->SetSetting("start_date", start_date != 0 ? max(1, this->GetSetting("start_date")) : 0);
14:07<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick updated pull request #7151: Codechange: Allow AI companies start_date to be 0
14:08<@peter1138>Hmm. I think you need a better comment than that.
14:08<DorpsGek_II>[OpenTTD/OpenTTD] J0anJosep commented on pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
14:08<@peter1138>I assume the issue now is that because you changed the min value to 0, it can now get randomized down to 0 instead of 1, right?
14:09<Samu>I don't want it to be randomized to 0
14:09<@peter1138>I'm aware
14:09<@peter1138>That's why it's an issue.
14:10<@peter1138>Okay, is AddRandomDeviation only called for start_date?
14:10<@peter1138>"** Randomize all settings the Script requested to be randomized."
14:11<@peter1138>Ah, I see, it's called *once*
14:11<@peter1138>Ignore that then :D
14:12<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7151: Codechange: Allow AI companies start_date to be 0
14:13-!-rm87 [] has joined #openttd
14:13-!-rm87 is "OFTC WebIRC Client" on #openttd
14:14-!-supermop_work [~supermopw@] has joined #openttd
14:14-!-supermop_work is "A CIRC user" on #openttd
14:16-!-supermop_work_ [~supermopw@] has joined #openttd
14:16-!-supermop_work_ is "A CIRC user" on #openttd
14:17<rm87>How to get in touch with translations admin? The email I sent 5 days ago has not been answered jet.
14:17<DorpsGek_II>[OpenTTD/OpenTTD] J0anJosep commented on pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
14:18<LordAro>i think planetmaker was the last person to look at that mailbox...
14:19<Heiki>rm87: I sent an email in October, still waiting for an answer…
14:21<rm87>Does anyone deal with the translation related issues at all or?
14:22<Samu>i'm bad with comments
14:23-!-supermop_work [~supermopw@] has quit [Ping timeout: 480 seconds]
14:23-!-Sheogorath [] has quit [Quit: Time to go I guess, let me check everything. Clothes? Check. Beard? Check! Luggage? Now where did I leave my luggage?]
14:24<LordAro>rm87: translator requests go into a shared mailbox that some of the devs look at some of the time
14:25<@peter1138>Who though?
14:25<LordAro>well, not me
14:25<LordAro>that's all i know
14:25-!-Sheogorath [] has joined #openttd
14:25-!-Sheogorath is "Daedric prince of madness" on #openttd #tor-de
14:26<@peter1138>whois Heiki
14:26<@peter1138>Well played.
14:27<@peter1138>So yes, who knows.
14:28<Samu>"Random deviation function could also return a value of 0, but if it wasn't 0, it means it must return a value inside interval 1-3600"
14:28<Samu>terrible comment
14:28<@peter1138>If start_date was not already 0, then it must be clamped to 1-3600
14:29<Samu>wow, great english skills
14:29<@peter1138>the code doesn't clamp it to 1-3600
14:29<@peter1138>It only ensures it is > 1
14:29<@peter1138>Which is fine.
14:30<@peter1138>If start_date was not already 0, then it must have a minimum value of 1
14:30<@peter1138>Something something something
14:30<Samu>something? what else is missing
14:30<@peter1138>The clamp explains it better, but the code doesn't do that.
14:31<Samu>clamp is done by SetSetting
14:31<@peter1138>Yes, but not here :)
14:31<@peter1138>If start_date was not already 0, then a minimum value of 1 must apply.
14:32<Heiki>peter1138: haha
14:32<Samu> /* start_date = 0 is a special case, where random deviation does not occur.
14:32<Samu> * If start_date was not already 0, then a minimum value of 1 must apply. */
14:32<Samu> this->SetSetting("start_date", start_date != 0 ? max(1, this->GetSetting("start_date")) : 0);
14:33<andythenorth>I don't understand the translator thing
14:33<@peter1138>Samu, great.
14:33<@peter1138>andythenorth, which bit?
14:33<andythenorth>planetmaker: how do we add translators to coop eints?
14:34<andythenorth>the weird thing of improving the web translator, but not letting people in
14:34-!-Thedarkb1-T60 [] has joined #openttd
14:34-!-Thedarkb1-T60 is "realname" on #openttd #oolite
14:35*andythenorth wonders if we should auth it on github, and add collaborators
14:35<andythenorth>dunno eh
14:35<andythenorth>also: Enterprise Software!
14:35*andythenorth must busy
14:35<Samu>what about the commit message itself, does it needs more editing?
14:36<@peter1138>I think so. It doesn't really explain it.
14:36<@peter1138>It prioritizes the wrong thing.
14:37<@peter1138>The main aim of this patch is to allow AIs to start "instantly" right?
14:37<@peter1138>The aim isn't to allow start_date to be 0.
14:37<LordAro>andythenorth: i imagine there's plenty of ancient translators that don't github
14:37<Samu>but but... it's part of the process
14:37<@peter1138>The former is achieved by the latter, the former is the goal, the latter is the method.
14:38<@peter1138>Yes, but prioritize the goal not the method.
14:38<@peter1138>(I think that's where you've been stuck on your previous changes)
14:38-!-Thedarkb-T60 [] has quit [Ping timeout: 480 seconds]
14:39<Samu>i mean, the start date can still be the other values
14:39<@peter1138>"Change: Allow AIs to start at once, by setting their start_date to 0."
14:39<Samu>but if it's 0, then all ais start right away
14:39<Samu>until it finds the next one with a start_date != 0
14:39<@peter1138>But you are still focusing on the method.
14:39<@peter1138>Stop focusing on the method and focus on the goal.
14:40<andythenorth>let's try: cod, spaghetti, olives, butter, yellow tomatos, and lemon
14:40<andythenorth>see if that works
14:40<@peter1138>Sounds good.
14:40<andythenorth>first beer
14:40<@peter1138>I'm going to have chicken, courgette, aubergine, curly kale, and sweet potato.
14:40<andythenorth>enterprise software can wait until tomorrow :P
14:41<andythenorth>sounds nice also
14:41<Samu>Change: Allow AI companies to start immediately one after the other?
14:41<Samu>Change: Allow AI companies to start immediately
14:41<andythenorth>am I the only person in the world making enterprise software for their own use? :P
14:42<Samu>Change: Allow AI companies to start at the same time?
14:42<Samu>Change: Allow AI companies to start instantly
14:44<@peter1138>immediately is a good word
14:45-!-rm87 [] has quit [Remote host closed the connection]
14:46<@peter1138>instantly might imply that started slowly, rather than delayed.
14:48<Samu>gonna copy paste all the comments into the commit message
14:51<Samu>dang it, the bash text editor is complete trash
14:53<TrueBrain>I had to cycle the old mirror; seems one of the mirror did some kind of rollback .. all kinds of files are missing in action :D
14:55<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick updated pull request #7151: Change: Allow AI companies to start immediately.
14:55<TrueBrain>okay .... rsync reports the files as being there
14:55<TrueBrain>http says no
14:55<Samu>i need a better editor when i do a git rebase -i upstream/master
14:56<Samu>cant use ctrl-c/ctrl-v
14:56<+glx>when I installed git for windows I told it to use notepad++
14:57<dwfreed>learn vim :P
14:58<TrueBrain>why does rsync report 1 thing, and http the other .. hmm
15:00<nielsm>oh, found out my login for the wiki
15:03<nielsm>...but that was not the wiki I was looking to log in to
15:03<nielsm>still can't find a working login to the newgrf-specs wiki
15:06-!-Thedarkb-T60 [] has joined #openttd
15:06-!-Thedarkb-T60 is "realname" on #openttd #oolite
15:06<andythenorth>check the sig here
15:06<andythenorth>old old
15:06<andythenorth>15 years :D
15:07-!-Thedarkb1-T60 [] has quit [Ping timeout: 480 seconds]
15:07<TrueBrain>this is very odd ... files are not showing up as I expect on one of the mirrors
15:08<andythenorth>"Did you bother to read any of the replies, or you just pressed 'Reply' and started typing?"
15:09<FLHerne>Samu: There is no 'bash text editor'
15:10<FLHerne>Samu: Applications will use whatever editor is set as $EDITOR
15:10<FLHerne>(and you can set EDITOR=whatever_you_like)
15:11<+glx>not on windows I think
15:11<+glx>but there's core.editor in git config
15:15<FLHerne>peter1138: I have a suspicion your ship-turning code will actually look worse in a lot of cases
15:15<FLHerne>Unless it avoids doing 180° spins at docks and I've missed that
15:16<FLHerne>Since FISH etc. ships are so much bigger than a tile, turning on the spot will tend to clip through docks/shore, and IME that's by far the most common case for large direction changes
15:17-!-Jortuny [~textual@] has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
15:18-!-Jortuny [~jortuny@] has joined #openttd
15:18-!-Jortuny is "jortuny" on #openttd
15:20<andythenorth>I tested it with Sam
15:20<andythenorth>looked ok to me
15:20<andythenorth>compared to the instant-reverse-with-bonus-dock-overlapping
15:22<andythenorth>FLHerne: you tested the PR
15:22<@peter1138>Cos some graphics that are too big and already glitch will glitch? :D
15:23<andythenorth>eh it's in the nightly
15:23<andythenorth>see what people say
15:26<andythenorth>revert FISH
15:26<andythenorth>I capped Sam to 128px
15:27<andythenorth>less glitch more
15:31-!-Thedarkb1-T60 [] has joined #openttd
15:31-!-Thedarkb1-T60 is "realname" on #openttd #oolite
15:36-!-tokai [] has joined #openttd
15:36-!-mode/#openttd [+v tokai] by ChanServ
15:36-!-tokai is "Christian Rosentreter" on +#openttd
15:36-!-Thedarkb-T60 [] has quit [Ping timeout: 480 seconds]
15:38-!-gelignite [] has quit [Quit: Good fight, good night!]
15:38<+glx>oh no, there's a warning at
15:39<+glx> ##[warning]src\company_gui.cpp(966,0): Warning C4018: '>=': signed/unsigned mismatch
15:40-!-Gja [] has quit []
15:41-!-Jortuny [~jortuny@] has quit [Ping timeout: 480 seconds]
15:41<Eddi|zuHause>am i the only one that thinks LiveryScheme doesn't work as a type that should be compared to a height?
15:41<nielsm>it looks strange yes
15:42<Eddi|zuHause>sounds like LiveryScheme is meant to be a colour?
15:43-!-synchris [~synchris@] has quit [Quit: yeeha!]
15:43-!-tokai|noir [] has quit [Ping timeout: 480 seconds]
15:46-!-cHawk [] has joined #openttd
15:46-!-cHawk is "realname" on #openttd
15:47<Eddi|zuHause>scrolling through the diff, i'd say "livery_height" should better be called "livery_count"
15:49<Eddi|zuHause>also this thing looks weird: "LiveryScheme j = (LiveryScheme)((pt.y - wid->pos_y) / this->line_height);" <-- you're calculating the position in the list by taking the pixel position, and dividing by line height?
15:50-!-octernion [~octernion@] has joined #openttd
15:50-!-octernion is "octernion" on #openttd
15:51<@peter1138>I see *now* the reviews come out...
15:55<Eddi|zuHause>well, why would you do that BEFORE merging? :p
15:55<@peter1138>No warnings for me with clang and -Werror :/
15:56<Eddi|zuHause>it's too intelligent and also checks the range of values before issuing spurious signed/unsigned warnings
15:57<@planetmaker>hm, translators. yes
15:57<@peter1138>Okay, that code hasn't actually changed since before my patch.
15:57<@planetmaker>i really would love to not be the only one to handle them
15:57<@peter1138>Only the addition of the comparison.
15:58<@peter1138>Yeah, livery_height is a bad name, it's the number of items shown.
15:58<@peter1138>Eddi|zuHause, so yes, that is how we calculate the position.
15:59<+glx>with the translation warnings it's easy to miss a valid warning on CI
16:00<@peter1138>Eddi|zuHause, however it probably can use the same method as for groups.
16:01<@planetmaker>and I really would like a less hassle-some way to add translators :)
16:01<@peter1138>planetmaker, give me information on what/how it's done then.
16:12<DorpsGek_II>[OpenTTD/OpenTTD] SamuXarick updated pull request #7084: Change: AI/GS Config GUI overhaul
16:14<@planetmaker> <-- that's the process
16:14<Samu>start as spectator my next goal
16:17-!-sla_ro|master [] has quit []
16:18-!-octernion [~octernion@] has quit [Quit: octernion]
16:20<@peter1138>Hmm, I just realised DMU/EMU are missing from the list
16:20<@peter1138>Because the default engines aren't flagged with required flags.
16:20<@peter1138>Is this for a reasonj?
16:22-!-octernion [~octernion@] has joined #openttd
16:22-!-octernion is "octernion" on #openttd
16:22<@peter1138>It used to be multihead == DMU/EMU
16:25<andythenorth>which list?
16:27<@peter1138>Livery list.
16:28<@peter1138>Strange, is_mu flag has always been set the same. Hmm.
16:28<andythenorth>caboose (wagon, no cargo) is treated as pax also
16:28<@peter1138>Like, since 2007 when liveries were introduced.
16:28<andythenorth>probs because cargo 0
16:28<andythenorth>or something
16:28<@peter1138>andythenorth, probably. Just set a freight cargo type :p
16:28*andythenorth tries
16:32-!-supermop_work_ [~supermopw@] has quit [Ping timeout: 480 seconds]
16:32<andythenorth>oh well
16:33<nielsm>hmm eints is asking me to translate STR_COLOUR_DEFAULT which does not exist in english.txt
16:33<@peter1138>Are you sure about that?
16:34<nielsm>oh... I haven't updated in a little while
16:35<@peter1138>Castello creamy blue. Yum.
16:35<@peter1138>How are you meant to eat beese and chiscuits without getting horrendously fat?
16:38<Eddi|zuHause><andythenorth> probs because cargo 0 <-- is the 0 set by property or by callback?
16:40<nielsm>hmm were {STRINGn} codes also supposed to become {STRING} in translations?
16:42<andythenorth>I tried changing the default cargo to a prop
16:42<andythenorth>but it's behind a few layers of abstraction, might get treated as a cb
16:43<@peter1138>Eddi|zuHause, did you get the compiler warnings or was it just glx?
16:43<+glx>I noticed them on azure
16:43<Eddi|zuHause>i don't remember any warnings
16:43<@peter1138>I see.
16:44<+glx>nielsm: yes {STRINGn} and {RAW_STRING} in english are {STRING} in translations
16:45<Eddi|zuHause>nope, no warnings on master, except for the strings
16:46<DorpsGek_II>[OpenTTD/OpenTTD] stale[bot] closed issue #6233: Lock price for when built on sloped river and bare land tiles
16:46<andythenorth>I have loads of mac specific warnings
16:46<DorpsGek_II>[OpenTTD/OpenTTD] stale[bot] closed issue #6797: Interface: Fractional Scale
16:49<DorpsGek_II>[OpenTTD/OpenTTD] PeterN opened pull request #7152: Fix 23960d0f2c: Scrollbar was broken for non-group liveries.
16:51-!-andythenorth is now known as Guest20
16:51-!-andythenorth [] has joined #openttd
16:51-!-andythenorth is "andythenorth" on #openttd
16:51<@peter1138>Hmm, were there no default EMUs?
16:51<andythenorth>the high speed trains are emus?
16:51<andythenorth>eurostar, tgv
16:51<andythenorth>asiastar whatever it was called
16:51<@peter1138>They're multihead. Is that the same thing?
16:52<andythenorth>think so
16:52<andythenorth>hmm maybe not
16:52<@peter1138>TIM, Asiastar
16:52<andythenorth>what does is_mu do?
16:53<@peter1138>I'd say SH125 kinda is.
16:53<@peter1138>andythenorth, it sets the multiunit livery flag
16:53<@peter1138>millennium Z1 is arguably an MU
16:53<@peter1138>but it's monorail :p
16:54<@peter1138>SH125 is the only one with capacity but that's diesel anyway.
16:54-!-Guest20 [] has quit [Ping timeout: 480 seconds]
16:55<@peter1138>Maybe it's time to fire up TTDPatch :D
16:56<@peter1138>it's obvious the manley-morel and dash are DMUs, at least
16:56<@peter1138>the MM even has DMU in its name :)
16:58<@peter1138>Hmm, azure says "11 warnings"
16:58<@peter1138>But I don't see them.
16:58<@peter1138>I saw 48 language warnings, but not compile warnings.
17:00<@peter1138>And I can't get the previous output since it's been merged.
17:00<@peter1138>Okay, I see it.
17:00<@peter1138>Still says 11 warnings, so that warning in the code isn't picked up.
17:01<@peter1138>On the other hand, the PR I ust made doesn't have that issue.
17:02<@peter1138>Eddi|zuHause, better code?
17:04-!-HerzogDeXtEr [] has quit [Read error: Connection reset by peer]
17:05<@peter1138>That says TGV is a MU
17:06<andythenorth>I saw there's a flag in newgrf for MU :P
17:06<@peter1138>And the asiastar...
17:06<andythenorth>prop 27 bit 2
17:06<@peter1138>That flag just was never set for default vehicles.
17:07<nielsm>STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2018 The OpenTTD team
17:07<@peter1138>PR :-)
17:07<@peter1138>Are any other vehicles MUs?
17:08<@peter1138>Should I brave looking at toyland?
17:08<andythenorth>is there a turner turbo thing in arctic?
17:08*andythenorth could look
17:08<Heiki>oh wow, just replied
17:09-!-urdh [] has quit [Quit: Boom!]
17:09<andythenorth>millenium z1
17:09<Heiki>i.e. thank you, planetmaker :D
17:09<@planetmaker>you're welcome
17:09<@planetmaker>thanks for dropping by and reminding us
17:09<andythenorth>turner turbo
17:09<andythenorth>peter1138: ^
17:10<@planetmaker>the translators account was... "a bit" neglected the last half year or so. at least :|
17:10<@peter1138>MU? Hmm
17:10<@peter1138>it's multihead, but is a dmu?
17:10<andythenorth>dunno :)
17:11<@planetmaker>its admin interface does not exactly invoke joy in me... on the contrary
17:11<@peter1138>it's a *gas* multiple unit, apparently
17:11<@peter1138>so yes
17:11<@peter1138>technically not disel but stil.
17:12-!-urdh [] has joined #openttd
17:12-!-urdh is "Simon Sigurdhsson" on #oftc #openttd #moocows
17:13<@peter1138>Hmm, the "used features" doesn't take account of "climate"
17:14<andythenorth>how even is the translators account admined?
17:14<@peter1138>I have the information now.
17:14<@peter1138>I... will look when I'm feeling braver.
17:14<andythenorth>I only saw newgrf eints, which I think was admined with coop redmine
17:15<DorpsGek_II>[OpenTTD/OpenTTD] LordAro approved pull request #7106: Fix #7089: close NewGRF textfile windows when their data are invalid
17:15<andythenorth>'saw' / 'wrote the UI for' /s :P
17:15<andythenorth>eints ui could do with a rework but eh
17:15<DorpsGek_II>[OpenTTD/OpenTTD] LordAro merged pull request #7106: Fix #7089: close NewGRF textfile windows when their data are invalid
17:15<DorpsGek_II>[OpenTTD/OpenTTD] LordAro closed issue #7089: Crash when Removing NewGRF from Active list
17:15<@planetmaker>andythenorth, that's a "nice to have". Not a requirement. It works
17:15<DorpsGek_II>[OpenTTD/OpenTTD] LordAro merged pull request #7114: NPF bails out when source tile is also a destination tile
17:16<andythenorth>I won't be doing it any time soon :D
17:16<DorpsGek_II>[OpenTTD/OpenTTD] LordAro closed issue #7060: NPF refuses to pathfind when the destination tile is the same as where the vehicle currently is
17:16<@planetmaker>so put it on the "will do when I have nothing better to do" :P
17:16<@planetmaker>(i.e. "never" :P)
17:16<@peter1138>Cool EMU/Electric is no longer available.
17:17<andythenorth>Horse is 93% sprites done, and the costs are weird
17:17<andythenorth>call it 1.0?
17:19<nielsm>oh god so many inconsistencies in this langfile
17:19<nielsm>three terms for the same concept
17:19<nielsm>now going on a quest to fix all strings talking about path signals to use the actual railroading term
17:21<@peter1138>Hmm, damn, this is probably two PRs.
17:22<DorpsGek_II>[OpenTTD/OpenTTD] PeterN opened pull request #7153: Fix engines not in current climate affecting available livery classes, and default engines not using MU class
17:22<andythenorth>I should set some engines to MU eh?
17:23<@peter1138>If they're MUs, yes please.
17:23<@peter1138>#7152 is pretty important, the UI is buggy at the moment.
17:23<@peter1138>No crashy crash though.
17:23<@peter1138>#7153 is a makes the available livery classes actually match what is available, so also nice.
17:24<@planetmaker>what are... "livery classes"?
17:24<andythenorth>the funny company colour options for trains :)
17:24-!-heffer [] has quit [Ping timeout: 480 seconds]
17:24<@peter1138>Yeah, those funny colour options we borrowed from ttdpatch.
17:24<@peter1138>About 12 years ago.
17:24<andythenorth>they're weird
17:25<andythenorth>but ok
17:26<@planetmaker>you can actually build them... or could. With a climate cheat. Which does not exist anymore
17:26<@planetmaker>But unavailable due to climate still means not necessarily "not running around on the map"
17:27<@planetmaker>and you could still attach them via callback to MU, couldn't you - even when unavailable (or does that not apply here?)
17:27<@planetmaker>gn, niels
17:29*andythenorth patches horse
17:30-!-Progman [] has quit [Remote host closed the connection]
17:30<andythenorth>what's an MU then?
17:30<andythenorth>pax railcar?
17:30<andythenorth>mail railcar?
17:30<@peter1138>I think it'd be fairly hard to test if something is attached by callback.
17:31<@planetmaker>I totally agree. But I'm pretty sure that there's more than one NewGRF which makes vehicles unavailable via climate but uses them in MU via CB
17:31<@planetmaker>iirc I was even once told that it was THE way to handle this
17:32<@peter1138>As long as there is one that IS available, the flag will be set.
17:32<andythenorth>why do I piss around with electro-diesels :P
17:34<@peter1138>planetmaker, and if not, they won't get to use the livery scheme which hardly anyone uses anyway :D
17:35<andythenorth>MY? or engines?
17:35-!-nielsm [] has quit [Ping timeout: 480 seconds]
17:35<andythenorth>MU *
17:35<@peter1138>Well that hot chocolate disappeared rather quickly.
17:35<@planetmaker>it's definitely not a game-breaking thing either way ;)
17:35<@peter1138>It looked weird having EMU/Electric available, with default vehicles, in arctic/tropic.
17:36<@peter1138>andythenorth, yes except the head of Train 3.
17:37<andythenorth>error: no electro-diesel livery option :P
17:37*andythenorth expects that immediately
17:37<@peter1138>It'll be diesel.
17:37<andythenorth>or instantly
17:38<@peter1138>Hmm, custom livery classes? :p
17:38<andythenorth>maybe :P
17:38<@peter1138>Let's say no.
17:38<@peter1138>Actually that's possible.
17:38<@peter1138>Just make a group "Electro-diesel"
17:38<@peter1138>Put them all under there.
17:39<andythenorth>oh I broke it
17:39<andythenorth>mu vehicles with 0hp when built
17:39<andythenorth>don't get the livery
17:41*andythenorth tries default game
17:41<andythenorth>so blue MU engines, red pax carriages?
17:42<DorpsGek_II>[OpenTTD/OpenTTD] michicc approved pull request #7153: Fix engines not in current climate affecting available livery classes, and default engines not using MU class
17:42<andythenorth>let's add more :P
17:42<andythenorth>'high speed engine or wagon' :P
17:42<andythenorth>'brake van'
17:43<andythenorth>let's have 16, and a byte property for newgrf to set
17:43<andythenorth>I am only going to use groups always anyway
17:44<@peter1138>We should add RGB colours and let you have a mega rainbow.
17:45<andythenorth>can we have 255 RGB colours?
17:45<andythenorth>arranged in groups of 8 or so?
17:45<andythenorth>with 1 more for alpha?
17:45<@peter1138>Currently it's 4 sliders.
17:46<@peter1138>R, G, B and 'contrast'
17:46<@peter1138>Invisible vehicles is not a thing.
17:46<@peter1138>(Sort of)
17:47<andythenorth>I was thinking of just choosing 255 nice ones :P
17:47<andythenorth>maybe saving them to a palette :P
17:47<andythenorth>people are snowballing outside my house
17:47<andythenorth>GTFO to bed people :P
17:49<Samu>Calls to 'SetLocalCompany'... too many
17:50-!-octernion [~octernion@] has quit [Quit: octernion]
17:51<andythenorth>also very bed
17:51-!-andythenorth [] has quit [Quit: andythenorth]
17:56<@peter1138>Oops, finish rebase before making other changes.
17:57<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
17:58<Samu>there is no spectator slot in single player t.t
17:58<Samu>how to solve
17:59<@peter1138>Run in multiplayer.
18:00<LordAro>spectator makes no sense for a "single player" game
18:00<ST2>my vote is with LordAro's statement :)
18:01<ST2>it's a game - "single player" it's because someone wants to play alone, on MP's makes sense to spectate
18:01<ST2>my opinion, ofc :)
18:02-!-Tirili [~Tirili@2a02:8108:96c0:19b0:260:6eff:fe42:7728] has quit [Quit: Leaving]
18:02<Samu>i wanna spectate AIs
18:02<LordAro>so run a multiplayer server
18:02<LordAro>it's not that hard
18:02<LordAro>or run 1 fewer AI
18:02<Samu>can't fast forward :|
18:02<ST2>start them on a local MP game and watch
18:03<Samu>the company button crashes when there's nothing to list
18:03<@peter1138>In a while, there'll be a PR... "Allow FF in MP when no clients connected"
18:03<Samu>must disable button
18:05<@peter1138>Hmm, I think I can do this savegame conversion without a bump.
18:06<@peter1138>Although, then it will always fix ships.
18:06<@peter1138>Even when they're not broken.
18:06<DorpsGek_II>[OpenTTD/OpenTTD] LordAro approved pull request #6988: Change: AI/GS ScriptBridge::GetName takes one extra parameter to refer the vehicle type
18:07<Samu>oh, New Company
18:07<Samu>that's what it needs
18:08<DorpsGek_II>[OpenTTD/OpenTTD] LordAro merged pull request #6988: Change: AI/GS ScriptBridge::GetName takes one extra parameter to refer the vehicle type
18:11-!-Flygon [] has joined #openttd
18:11-!-Flygon is "Flygon" on #openttd
18:13<Samu>#ifdef ENABLE_NETWORK hmm this complicates things
18:15-!-cHawk [] has quit [Quit: Leaving]
18:16<Eddi|zuHause><nielsm> update? <-- someone missed the yearly obiwan?
18:18<@peter1138>Hmm, how can I test if a ship is on the lower or uppersecond half of a slope?
18:18<@peter1138>Hmm, not quite.
18:18<@peter1138>first or second was right.
18:19<@peter1138>I know if it's going up or down, I don't know if its past the centre (in relation to the ship direction) or not.
18:21<Samu>client list not needed for single player
18:22-!-cHawk [] has joined #openttd
18:22-!-cHawk is "realname" on #openttd
18:23<Samu>New Company widget is disabled :|
18:28-!-strawbs89 [~oftc-webi@2a02:c7d:3280:1e00:609e:912a:2d7e:7d27] has joined #openttd
18:28-!-strawbs89 is "OFTC WebIRC Client" on #openttd
18:29<Eddi|zuHause>there's a variable for progress through a tile, right?
18:29<strawbs89>rite hi i am going from what the wiki told me to do about the casino info centre but nothing seems to happen please help
18:29<Eddi|zuHause>or you need to implement a state machine
18:30<strawbs89>a state machine????
18:31<@peter1138>I don't think progress has this info.
18:32<@peter1138>progress is like sub-1/16th units.
18:33<strawbs89>anyone listening lol
18:33<LordAro>strawbs89: your question has nearly no information in it
18:35<strawbs89>ok im using openttd 1.8.0 and i want to implement a casino tourist info centre and someone sent me a wiki on it earlyer today and im doing what it said im still getting build on slope like what the hell
18:35<Eddi|zuHause>peter1138: no, progress is wrong, there needs to be a position one level above that
18:36<Eddi|zuHause>peter1138: but that might already be in world coordinates, not in tile coordinates, not sure
18:36<@peter1138>There's x_pos and y_pos obviously, but I'll to mangle them depending on the direction, and I can't think :-)
18:36<strawbs89>i'v attached a pic here
18:38<Eddi|zuHause>strawbs89: it might not work with canals but needs a real shoreline
18:38<strawbs89>i have shoreline tiles would that work?
18:39<ST2>strawbs89: had you checked this:
18:39<Eddi|zuHause>with a real seashore, the slopes count as water tiles, the industry might check those
18:40<strawbs89>that's the exact wiki i am on about
18:40<ST2>strawbs89: and there's a very specific one:
18:40<strawbs89>i have ecs town vector but openttd 1.8.0 don't seem to like it
18:40<Eddi|zuHause>(must also demolish the purchased land to allow flooding of the shore in that case)
18:41<ST2>strawbs89: maybe that tile that isn't water?
18:42<ST2>top right
18:42<ST2>of the marked area here
18:43<strawbs89>oooh ok rite i have now demolished the brought land
18:46<Eddi|zuHause>seems to work fine here with "pristine" seashore
18:46<Samu>kek, playing as company 256
18:46<Samu>the cheat gui is broken
18:47<strawbs89>will the demolished brought land flood over now then
18:48<Eddi|zuHause>not with canals
18:48<strawbs89>plus i have animated watertiles would that work if i put them down
18:49<Eddi|zuHause>must be original sea
18:49<Eddi|zuHause>nothing else floods
18:49<strawbs89>how would i get original sea then lol
18:49<@peter1138>Well it has to be at sealevel.
18:49<Eddi|zuHause>could use the scenario editor
18:50<Eddi|zuHause>or terraform from a place that still has sea tiles
18:50<@peter1138>Oh, you've replaced all sea with canals?
18:50<strawbs89>i'v tried to lower that bit thats on the sea and it says already at sea level
18:51<ST2>just a swear about: putting our server plugins on git and I already hate it (on a good way for some code lines)
18:51<ST2>don't laugh, I'm a git noob :D
18:51<ST2>not on OpenTTD official git ^^
18:52<ST2>a git I created to our plugin stuff
18:52<@peter1138>Sure, I mean what ... issues are you having?
18:52<ST2>at the moment aren't real issues - so won't disturb with it
18:53<strawbs89>i'v demolished the canal so should it start flooding now if its already at sealevel
18:53<@peter1138>It'll only flood if it's next to existing sea water.
18:53<ST2>many stuff made on SVN, by diff people
18:54<ST2>I'll survive, google is my friend :D
18:55<ST2>thx peter1138 for asking :)
18:55<@peter1138>git is <3
18:55<@peter1138>Just takes a little getting used to from svn.
18:55<ST2>after you get used to it, I bet
18:55<ST2>the "baby steps" aren't easy :D
18:57<LordAro>it is a steep learning curve
18:57<ST2>big nap time. gn8 all :)
19:01<strawbs89>rite now i'v lowered things to sea level it's not showing me sea i know someone said about existing sea but is there any acutal sea tiles i can put down or can i edit my scene in scenario editor and reload my game again so it shows what i'v already built
19:01<@peter1138>No, you can't place sea tiles as a player.
19:01<LordAro>it'll flood in from the map edge
19:02<strawbs89>oooh ok
19:03<Samu>i'm failing to allow a new company to be created in single player, grr
19:03<Samu>getting stuck into "this command is only for multiplayer"
19:03<@peter1138>Oh, it's snowing. Just noticed.
19:04<LordAro>peter1138: nothing here
19:04<LordAro>Samu: almost as if you're trying to overcome a fundamental assumption of the last 15 years
19:04<LordAro>did you think it was going to be easy?
19:08-!-Thedarkb1-T60 [] has quit [Ping timeout: 480 seconds]
19:11-!-Thedarkb-T60 [] has joined #openttd
19:11-!-Thedarkb-T60 is "realname" on #openttd #oolite
19:19<@peter1138> byte progress; ///< The percentage (if divided by 256) this vehicle already crossed the tile unit.
19:19<@peter1138>Hmm, maybe it is.
19:19<@peter1138>I guess I was thinking of subspeed.
19:20<@peter1138>I wonder.
19:24<Eddi|zuHause>i still think that's the progress of a single movement step
19:24<@peter1138>Yeah, probably.
19:25<Samu>error C2360: initialization of 'company' is skipped by 'case' label
19:25<Samu>hmm :)
19:26<Eddi|zuHause>i'd probably check the code that makes vehicles enter wormhole
19:26<Eddi|zuHause>because it must add a special counter there that counts down until it leaves the wormhole
19:26<Eddi|zuHause>that should be the right counter
19:27<@peter1138>Why would it add a special counter?
19:27<Eddi|zuHause>i mean there should be a countdown how many steps until you leave the tile
19:27<Eddi|zuHause>and that is set to a very high value on entering wormhole
19:27<Eddi|zuHause>because while it's on the wormhole, it's counted as on the end tile
19:28<Eddi|zuHause>but it must keep track of how far throught the wormhole it is
19:29<@peter1138>No, it just keeps going in its current direction until it reaches the end tile.
19:29<Samu>switch case failed me
19:29<Eddi|zuHause>a normal tile has 16 steps, a diagonal tile 8 steps, and a wormhole has 16*(length+1) steps
19:29<Eddi|zuHause>or something like that
19:30<Eddi|zuHause>every time progress overflows, it must decrease the counter of steps by 1
19:30<strawbs89>rite i'v built a river from edge of map rite up to my town and theres two slopes there and yet its still saying must be built on sloped land
19:30<+glx>progress is a byte, can't be 16*length
19:30<Eddi|zuHause>and if it reaches 0 it's entering a new tile
19:30<Eddi|zuHause>glx: yes, progress is not the right one, it's one level too low
19:30<@peter1138>Trust me, there is no "wormhole counter"
19:31<strawbs89>whats one level to low
19:33<Samu> extern Company *DoStartupNewCompany(bool is_ai, CompanyID company = INVALID_COMPANY);
19:33<Samu>can you explain how the extern works?
19:33<Samu>had to use it
19:33<Eddi|zuHause>peter1138: there's a _fractcoords_enter and _deltacoord_leaveoffset
19:33<Eddi|zuHause>peter1138: and some magic in VehicleEnter_Track
19:34<Eddi|zuHause>that might be depot magic
19:34<strawbs89>i'v built a river from edge of map rite up to my town and theres two slopes there and yet its still saying must be built on sloped land
19:35<@peter1138>Eddi|zuHause, there is no magic.
19:35<@peter1138>In a wormhole, there is no counting, it just moves forward until it reaches the tile.
19:35<@peter1138>It knows that by the vehicle's x and y position.
19:35<+glx>just TRACK_BIT_WORMHOLE when entering
19:36<Eddi|zuHause>yeah, it must calculate it from the coords somehow
19:37<@peter1138>That's not hard.
19:37<@peter1138>x / 16 and y / 16 gives you tile coords.
19:37<Samu>ok toolbar is now working almost fine
19:37<+glx>and normal trackbit at exit
19:37<Samu>no crash, i can create new company and i can spectate
19:37<@peter1138>when it reaches 0, it's at a tile edge.
19:38<Samu>but i can't join a company ye
19:38<@peter1138>yes, that one.
19:38<Samu>and i can't cheat out of company 256, is this the spectator slot?
19:38<Eddi|zuHause>so at 0-7 and 8-15 is the two halves
19:38<+glx>spectator is 255 IIRC
19:39<Samu>shows me 256
19:39<@peter1138>Eddi|zuHause, yes.
19:39<Eddi|zuHause>however, that's the front of the ship, not the middle
19:40<@peter1138>A ship is only one piece, and its coordinates are in the centre of it.
19:40<Eddi|zuHause>hm, ok
19:40<+glx> COMPANY_SPECTATOR = 255, ///< The client is spectating <-- definitely 255
19:40<Eddi|zuHause>how is a ship ever centered on a tile?
19:41<@peter1138>When it's... in the middle? :p
19:41<Eddi|zuHause>but there is no middle with even steps?
19:42<Samu>company 256 even has a color
19:42<@peter1138>Okay well half of 16 is 8.
19:42<@peter1138>So I'll say. 8.
19:42<Samu>must fix the cheat gui, who would have thought
19:43<Eddi|zuHause>strawbs89: all slope tiles must be shore tiles, and you have to click on the topmost tile of the area for the future industry
19:43<+glx>tourist stuff are beautiful, but a pain to place :)
19:45<Samu> case STR_CHEAT_CHANGE_COMPANY: {
19:45<Samu> SetDParam(0, val + 1);
19:45<Samu>that's why it's 256
19:45<@peter1138>More nonexistant problems?
19:46<Samu>i guess it's not a problem
19:49-!-snail_UES_ [] has joined #openttd
19:49-!-snail_UES_ is "Jacopo Coletto" on #openttd
19:49-!-strawbs89 [~oftc-webi@2a02:c7d:3280:1e00:609e:912a:2d7e:7d27] has quit [Remote host closed the connection]
19:51-!-cHawk [] has quit [Quit: Leaving]
19:52<Samu>i wanna be able to move out of company 256 though
19:52<+glx>I think the best to watch a 15 AI game, would be to do it in network mode
19:53<+glx>it already supports spectator
19:54<+glx>you just need an option to put an AI in company 0
19:55<+glx>dedicated can already have AI in slot 0, but GUI server need some work
19:56<Samu>multiplayer has some debugging limitations only the cheat gui could help
19:57<Samu>and can't fast forward, but it also has some advantages
19:57<Samu>can log stuff
19:59<@peter1138>Debugging with the cheat window? What?
19:59<Samu>give money to AI, see how it performs, it's helpful
20:00<Samu>helps find out what can be the cause of some problems
20:00<+glx>but server can already do that
20:00<Samu>most of the time, money is the problem
20:01<Samu>it used to be worse
20:01<Samu>now they don't bankrupt that much
20:02<Samu>speaking of bankrupt... i gotta check how bankrupt is handled in single player
20:03<Samu>it could bankrupt all but one, if I recall
20:06<+glx>there's even a command for that (used by GS)
20:06<+glx>no need to use the cheat window
20:07<+glx>but indeed the command is currently only called from game script
20:08<+glx>you just need a console command for the server
20:11-!-Wormnest [~Wormnest@] has joined #openttd
20:11-!-Wormnest is "Wormnest" on #openttd
20:14<@peter1138>glx, eaiser to hack multiplayer support into singleplayer mode!
20:20<Samu>i can't pass up the advantage of fast forward
20:30<Samu>looks like I don't have to do anything about bankruptcy
20:30<Samu>if I am in spectator company
20:31<Samu>all 15 AIs can bankrupt, and be back to 0 companies, as long as I'm spectator
20:37-!-supermop_Home [] has joined #openttd
20:37-!-supermop_Home is "Guest" on #openttd
20:38<@peter1138>Eddi|zuHause, (v->direction == ((x < 8) ? DIR_NE : DIR_SW)) || (v->direction == ((y < 8) ? DIR_NW : DIR_SE))
20:38<Eddi|zuHause>it is
20:46<Samu>#ifdef ENABLE_NETWORK / #endif /* ENABLE_NETWORK */
20:46<Samu>surelly complicates
20:58<@peter1138>I don't know why we bother to allow building without network support.
21:01<DorpsGek_II>[OpenTTD/OpenTTD] PeterN updated pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
21:02<DorpsGek_II>[OpenTTD/OpenTTD] PeterN commented on pull request #7150: Change: Make ships stop in locks to move up/down instead of following the slope.
21:03<@peter1138>Oh well, way too late to bed again.
21:10-!-Thedarkb-X40 [] has joined #openttd
21:10-!-Thedarkb-X40 is "realname" on #openttd #/r/openttd #oolite
21:13-!-WWacko1976-work [] has joined #openttd
21:13-!-WWacko1976-work is "YO!" on #openttd #/r/openttd
21:17-!-Thedarkb-T60 [] has quit [Ping timeout: 480 seconds]
21:32-!-Thedarkb-X40 [] has quit [Ping timeout: 480 seconds]
21:33-!-Samu [] has quit []
21:39<Eddi|zuHause>peter1138: ancient platforms that we don't support anymore anyway had no network libs?
21:49-!-Wormnest [~Wormnest@] has quit [Quit: Leaving]
21:50-!-snail_UES_ [] has quit [Quit: snail_UES_]
22:43-!-D-HUND [~debdog@2a00:79c0:610:1000:7a24:afff:fe8a:d04d] has joined #openttd
22:43-!-D-HUND is "Wowbagger" on #openttd #bitlbee
22:46-!-debdog [~debdog@2a00:79c0:665:f000:7a24:afff:fe8a:d04d] has quit [Ping timeout: 480 seconds]
23:05-!-glx [] has quit []
23:18-!-cHawk [] has joined #openttd
23:18-!-cHawk is "realname" on #openttd
23:59-!-tokai|noir [] has joined #openttd
23:59-!-mode/#openttd [+v tokai|noir] by ChanServ
23:59-!-tokai|noir is "Christian Rosentreter" on +#openttd
---Logclosed Fri Feb 01 00:00:45 2019