Back to Home / #openttd / 2014 / 11 / Prev Day | Next Day
#openttd IRC Logs for 2014-11-19

---Logopened Wed Nov 19 00:00:04 2014
00:15-!-Flygon__ [] has joined #openttd
00:21-!-Flygon_ [] has quit [Ping timeout: 480 seconds]
00:56-!-Eddi|zuHause [] has quit []
00:56-!-Eddi|zuHause [] has joined #openttd
00:59-!-Flygon [] has joined #openttd
01:01-!-Flygon_ [] has joined #openttd
01:06-!-Flygon__ [] has quit [Ping timeout: 480 seconds]
01:07-!-Flygon__ [] has joined #openttd
01:07-!-Flygon [] has quit [Ping timeout: 480 seconds]
01:10-!-Flygon_ [] has quit [Ping timeout: 480 seconds]
01:25-!-killertester [] has joined #openttd
01:31-!-Hazzard [] has joined #openttd
01:31-!-Hazzard_ [] has quit [Remote host closed the connection]
01:33-!-HerzogDeXtEr1 [~flex@] has joined #openttd
01:38-!-HerzogDeXtEr [~flex@] has quit [Ping timeout: 480 seconds]
01:40-!-supermop [] has joined #openttd
01:52-!-Flygon [] has joined #openttd
01:57-!-Flygon_ [] has joined #openttd
01:59-!-Flygon__ [] has quit [Ping timeout: 480 seconds]
01:59-!-DDR [] has quit [Read error: Connection reset by peer]
02:01-!-Flygon [] has quit [Ping timeout: 480 seconds]
02:03<George>since I do not see the resulting GRF. Where is it now?
02:17-!-TomyLobo [] has joined #openttd
02:34-!-HerzogDeXtEr1 [~flex@] has quit [Quit: Leaving.]
02:46-!-TomyLobo [] has quit [Quit: Standby mode...]
03:01-!-andythenorth [] has joined #openttd
03:01<andythenorth>Pikka: flooded?
03:01<Pikka>bit wet here and there.
03:02<Pikka>it does
03:08<andythenorth>Pikka: floating buses?
03:09<Pikka>just a car, apparently.
03:41<@planetmaker>George, it is there where it always has been: on the bundles server
03:41-!-andythenorth [] has quit [Quit: andythenorth]
03:41-!-Pikka is now known as Pikka|dindins
03:43<George>I know, but previously it was on the jenkins too
03:47<@planetmaker>yes. But we cannot afford to store everything twice
03:47<@planetmaker>jenkins is our build server. Not our storage server
03:49<@planetmaker>and it wouldn't build anything anymore due to out-of-disk space, had I not disabled storage of build results there
03:50<V453000>which I know nothing about
03:52<@planetmaker>lalalala ;)
03:53<@planetmaker>George, I can add you a link in the navbar on the left to the bundles server, if it helps you
03:54<George>no, thank, you, I've already fixed that page
03:54<@planetmaker>V453000, is going to make a nice link icon there today, I heard. Or maybe you make us one :)
03:54<George>I just got a report that there is no GRf on the link
03:55<@planetmaker>I also would to have liked to keep it. But I don't see how to keep a link in both places without duplication
03:56<George>So now fixed. But it would be nice next time something is changed to send some report to projects managers to make them to fix the links
04:00<@planetmaker>Sorry for the inconvenience. We always advertized the bundles server as the download portal for builds by the devzone. So changes the compiler itself which don't affect its operations didn't seem worth making a fuzz about
04:00-!-andythenorth [] has joined #openttd
04:01<@planetmaker>but you're right
04:10-!-Marshy [~oftc-webi@] has joined #openttd
04:15-!-andythenorth [] has quit [Quit: andythenorth]
04:18<@peter1138>You could always request a refund
04:19<FUZxxl>foamers gonna foam.
04:20<argoneus>how many planets have been made today?
04:22<Supercheese>Arguing from mass conservation, about as many as have been destroyed.
04:22<Supercheese> :P
04:22<@planetmaker>Supercheese, that's unlikely to be true :)
04:23<Supercheese>Yeah you could destroy/dismantle some other stuff
04:23<@planetmaker>some mass will remain in black holes ;)
04:23<Supercheese>but he, it sounded cool
04:23<@planetmaker>which is conserved. But never again will make new planets :P
04:23<argoneus>are black holes confirmed to be true anywya?
04:24<argoneus>or is it a concept that explains some things that are happening
04:24<Supercheese>Astronomy is all one big black hole
04:24<V453000>haha refunds peter1138
04:24<argoneus>we need someone to land a lander in a black hole
04:24<argoneus>though it'd be hard to get reception there
04:25<@planetmaker>black holes are as real as your house exists while you don't look at it
04:25<argoneus>"while you don't look at it"
04:25<argoneus>reminds me of a video about quantum mechanics I saw
04:26<Supercheese>probably was a cat video
04:26<Supercheese>most videos are
04:26<argoneus>it was about blasting some particles through a slit
04:26<argoneus>and if you looked at it it created diffrent results than if you didn't
04:26<argoneus>or something like that.
04:27<V453000>we need more pixels
04:27<Supercheese>need to fire up the Large Pixel Collider
04:27<Supercheese>look for the Higgs Pixel
04:27-!-JacobD88 [] has joined #openttd
04:28<V453000>supermop the community DEMANDS your buildings to be done now
04:29<@planetmaker>did anyone say cat? miow!
04:29<FUZxxl>planetmaker: that cat is made of cute
04:29<FUZxxl>and a little derp
04:29<@planetmaker>yep. Totally
04:30<FUZxxl>9.5/10 would view again
04:31<FUZxxl>planetmaker: for your effort, observe this:
04:33<FUZxxl>☑ productivity killed
04:34<Supercheese>Welcome to the Internet; porn aside, it's mostly cat .gifs
04:34<@planetmaker>damn you!
04:34<FUZxxl>I also have dog gifs:
04:35-!-JacobD88 [] has quit [Quit: JacobD88]
04:36<Supercheese> bwahahaha
04:37-!-ginko_ [] has joined #openttd
04:37<FUZxxl>nobody cares about dog gifs :-(
04:37<LordAro>file is empty :(
04:42-!-itsatacoshop247 [~itsatacos@2601:9:1180:b9c:f16d:3c7a:3ff5:b6bc] has quit [Ping timeout: 480 seconds]
04:45-!-andythenorth [] has joined #openttd
04:46-!-Jomann [] has joined #openttd
04:48-!-andythenorth [] has left #openttd []
04:51<V453000>#openttd, the place to be productive
04:55<V453000>not ok :D
04:56<@peter1138>epileptics, don't look
04:57-!-looptrooper [] has joined #openttd
04:58-!-SHOTbyGUN [] has joined #openttd
04:59-!-Pikka|dindins is now known as Pikka
05:01<Marshy>I just learnt there is such a thing called 'Maxillofacial Prosthetics'
05:02<Marshy>Fake eyes, chins, and whatnot
05:02<Pikka>how exciting
05:02<Marshy>I'm easily pleased when at work
05:15<FUZxxl>If somebody has new further cat gifs, please tell me
05:15<FUZxxl>I'll add them to my collection.
05:16-!-sla_ro|master [] has joined #openttd
05:19-!-Marshy [~oftc-webi@] has quit [Quit: Page closed]
05:29-!-sla_ro|master [] has quit []
05:33-!-sla_ro|master [] has joined #openttd
05:36-!-Quatroking [] has joined #openttd
05:55-!-Yotson [~Yotson@2001:980:6ac8:1:adbd:2865:f19f:6537] has joined #openttd
05:57-!-FLHerne [~flh@] has joined #openttd
05:59-!-zeknurn [] has quit [Read error: Connection reset by peer]
06:05-!-zeknurn [] has joined #openttd
06:15-!-looptrooper [] has quit [Read error: Connection reset by peer]
06:19-!-DabuYu [DabuYu@] has quit [Ping timeout: 480 seconds]
06:19-!-DabuYu [DabuYu@] has joined #openttd
06:23<V453000>I think I will try to re-code all of NUTS wagons XD
06:23<Pikka>sounds nuts
06:23<@planetmaker>why that, V453000 ?
06:23<V453000>increasing amoutn of reasons :d
06:24<V453000>1. duplicate sprites of empty wagons
06:24<V453000>2. when engines have built-in wagons, it would be nicer if wagons could adapt to them
06:24<V453000>3. making Ultimate Wagon that would adapt to engine, no more "this engine can haul this", would be awesome
06:25<V453000>when e.g. goods have 10 various spritesets, with 10 same empty sprites, the filesize increases a lot more than necessary, kind of considerable with 32bpp
06:25<V453000>the problems are:
06:25<V453000>1. HELL with re-aligning all templates
06:25<V453000>2. re-balancing whole NUTS because different length of wagons = different curve speed
06:26<V453000>3. like 40k lines of code to care about
06:26*V453000 is considering the options
06:26<V453000>I need Pikka or andythesouth to tell me if REDUCING the amount of wagons is the way to go :P
06:26<Pikka>almost certainly :P
06:27<V453000>but what if complaints
06:27<Pikka>what if complaints?
06:27<V453000>THE COMMUNITY
06:28<@planetmaker>not announcing it on tt-f didn't solve the problem?
06:29-!-Klanticus [~quassel@] has joined #openttd
06:31<V453000>probably? :P
06:31-!-FLHerne [~flh@] has quit [Ping timeout: 480 seconds]
06:32-!-Klanticus_ [~quassel@] has quit [Ping timeout: 480 seconds]
06:33<V453000>might write a super important blog about it
06:34<Pikka>you should
06:40<V453000>nice, pineapple finally getting yeti cargo :D
06:40<V453000>on the same day as NUTS :P
06:40<V453000>ok I was 1 day late
06:41<FUZxxl>Anybody of you want to get a postcard? I have this huge stack of cards and I want to get rid of them.
06:43<FUZxxl>see ya!
06:44-!-Klanticus_ [~quassel@] has joined #openttd
06:47-!-Klanticus [~quassel@] has quit [Ping timeout: 480 seconds]
07:05<Quatroking>is it possible to put trains on some sort of "ignore list" regarding their yearly incomes?
07:05<@planetmaker>yes. It's called "sell it" ;)
07:06<V453000>planetmaker bringing the bombs
07:07<@planetmaker>no no. the fjords
07:08<V453000>flooding the dutch?
07:09<Quatroking>planetmaker, teehee, but no, I have two trains that make year-long trips so one year they earn like 750m while the other year they run on -20k income
07:09<Eddi|zuHause>something tells me the dutch will be faster at building new dykes than the sealevel will be rising
07:09<Quatroking>Eddi|zuHause, we probably are
07:10<Quatroking>I live close by one of our delta works
07:10<Eddi|zuHause>countries like the maledives will have much bigger problems
07:10<V453000>Quatroking: if your company is making money in total, why care?
07:10<Quatroking>they're nice
07:10<Quatroking>V453000, because it still whines in the news messages
07:10<V453000>disable these messages?
07:10<Eddi|zuHause>V453000: filtering the news between irrelevant and relevant is somewhat tricky
07:10<V453000>vehicles -> warn about negative profit?
07:10<Eddi|zuHause>V453000: sometimes they show actual problems
07:11<V453000>well sure, build without problems? :P
07:11<Eddi|zuHause>he who builds with no problems, may throw the first message
07:11<Quatroking>I'm nearing 200 trains, building without problems doesn't exist
07:12<V453000>I dare disagree :P
07:16<Quatroking>you wouldn't!
07:17<V453000>and DO
07:18<V453000>just sort your vehicles by profit in the vehicle list and see if they have some problem occassionally
07:18<V453000>no need to be informed about neg profit in the messages
07:20<Eddi|zuHause>maybe it should be changed into "train made over x% less profit than last year"
07:25<Quatroking>that would solve the problem though, seeing how there's a 100%+ difference between 1m income and -20k income
07:27<Eddi|zuHause>you mean for trains arriving every other year?
07:27<Quatroking>one year it earns over a million, the other year it's 20k in the red
07:28<Quatroking>so in reality it's doing 500k a year
07:28<Eddi|zuHause>that problem should be solved in a different way
07:33-!-sla_ro|master [] has quit [Ping timeout: 480 seconds]
07:34-!-Flygon__ [] has joined #openttd
07:35-!-Flygon_ [] has quit [Ping timeout: 480 seconds]
07:38-!-Supercheese [] has quit [Ping timeout: 480 seconds]
07:43-!-killertester [] has quit [Quit: Leaving.]
07:44-!-Xrufuian [] has quit [Quit: Quit]
07:53-!-sla_ro|master [] has joined #openttd
08:00-!-supermop [] has quit [Remote host closed the connection]
08:18-!-Klanticus_ [~quassel@] has quit [Ping timeout: 480 seconds]
08:20-!-Klanticus [~quassel@] has joined #openttd
08:20-!-gelignite [] has joined #openttd
08:40-!-Klanticus_ [~quassel@] has joined #openttd
08:42<argoneus>I think instead of looking at individual trains
08:42<argoneus>you should look if your line is over or undersaturated, Quatroking
08:42-!-Klanticus [~quassel@] has quit [Ping timeout: 480 seconds]
08:43<argoneus>if it's saturated just enough, you're making a profit most likely 100% of the time
08:45-!-Klanticus [~quassel@] has joined #openttd
08:48<Quatroking>oh I am making a profit, I know that
08:48-!-Klanticus_ [~quassel@] has quit [Ping timeout: 480 seconds]
08:48<Quatroking>I have 6 trains running the line, the line is just really long
09:07-!-tokai|noir [] has joined #openttd
09:07-!-mode/#openttd [+v tokai|noir] by ChanServ
09:10<Pikka>obviously the answer is smaller map sizes :)
09:13-!-tokai|mdlx [] has quit [Ping timeout: 480 seconds]
09:14-!-slonik [] has quit [Ping timeout: 480 seconds]
09:33-!-slonik [] has joined #openttd
09:58-!-Pikka [] has quit [Quit: Leaving]
10:01<argoneus>sorry for not browsing through the code, but just a quick question if anyone knows
10:01<argoneus>if someone places a tunnel, is there any information in the tiles between "there's a tunnel here"?
10:02<argoneus>for easier detection if tunnels cross or such
10:06<Eddi|zuHause>because detecting whether tunnels cross is not a time-critical task
10:06<Eddi|zuHause>this is stored for bridges, because it's needed for drawing
10:09<@peter1138>And tunnels can overlap.
10:11<@planetmaker>via cheat :)
10:12<V453000>I think peter1138 means on a tile
10:13<Eddi|zuHause>there can be multiple parallel tunnels on top of each other and stuff
10:13<Eddi|zuHause>so caching this stuff and keeping the cache up to date would probably not save a lot of processing
10:17<argoneus>how do you tell
10:17<argoneus>if tunnels cross then
10:20<@peter1138>As in, test the map :p
10:21-!-Myhorta [] has joined #openttd
10:22<@peter1138>Listen son, you're wasting your time, there's a future for you in the fire escape trade.
10:22<argoneus>I'm not your son, buddy
10:25<Eddi|zuHause>argoneus: the test is really not that complicated. for every step you take in the tunnel, you go left and/or right until you find a tile of the same height as the tunnel entrance. if there's a tunnel there->conflict, otherwise->good
10:25<Eddi|zuHause>assuming that mountains are usually uniformly long as wide, that works out to an average runtime of O(n^2)
10:25<argoneus>so in the worst case
10:26<Eddi|zuHause>where n is the tunnel length
10:26<argoneus>it's O(kn)
10:26<Eddi|zuHause>in the worst case, it's n*map_x or n_map_y
10:26<argoneus>how did you get n^2
10:26<argoneus>you have a map of size n
10:26<argoneus>and tunnel of size k
10:26<argoneus>for each k, you go max n
10:28<Eddi|zuHause>on a perlin-generated map, you hardly ever will find such a map slice where it could reach the worst case runtime
10:29<argoneus>but kn is better than n^2
10:29<argoneus>yes it is
10:29<argoneus>k is always < n
10:29<Eddi|zuHause>because you didn't listen
10:29<argoneus>you can't have a tunnel longer than the map
10:29<Eddi|zuHause>i said n is the tunnel length
10:30-!-Hazzard [] has quit [Quit: Goodbye.]
10:30<argoneus>it's still kn and not k^2 though :<
10:30<Eddi|zuHause>in the worst case, yes
10:31<argoneus>well, O is usually used for the worst case
10:31<Eddi|zuHause>only if you're in your 2nd year of computer science :p
10:32<Eddi|zuHause>and haven't got to the good parts yet about probabilistic estimates and average values :p
10:32<argoneus>quicksort is O(n^2)
10:33<@peter1138>I never learnt all this O stuff :p
10:33<argoneus>but more often than not it's n log n
10:34<Eddi|zuHause>argoneus: yes, so if you sum up over the range of all possible inputs the values runtime(input)*probability(input), you get the expected (average) value
10:34<argoneus>but yeah, you are right
10:34<Eddi|zuHause>like if you throw a dice, you get 1*1/6+2*1/6+...*6*1/6 = 3,5
10:35<argoneus>O(...) is used for average cases and amortized cases etc too
10:35<argoneus>it's just that when someone says "algo X is O(n^2)" it usually means the worst case
10:35<argoneus>without context
10:35<Eddi|zuHause>but that's why i did give context.
10:35<argoneus>right, sorry :<
10:35<argoneus>I never really got into this theory
10:36<argoneus>like, I know that mergesort is O(nlogn) and I understand why
10:36<argoneus>but I can't show/prove it
10:36<argoneus>it just.. is..
10:36<Eddi|zuHause>heapsort is better
10:37<Eddi|zuHause>it's also nlogn, but it can be done in-place. with mergesort you have to make copies
10:37<argoneus>there is inplace mergesort
10:37<argoneus>but it's ugly as fuck
10:37<argoneus>you only need 2n memory
10:37<argoneus>for mergesort
10:38<Eddi|zuHause>yes, but if you have 2GB of input
10:38<Eddi|zuHause>then using 4GB may be troublesome
10:38<argoneus>how does heapsort work anyway
10:38<argoneus>do you just heapify an array and then call extractMax() until empty?
10:39<argoneus>so n to get all the items in the structure, and log n to get them out?
10:39<argoneus>since it's a binary tree p much
10:39<Eddi|zuHause>you treat the array as a heap, and call raise and sink on each element
10:40<Eddi|zuHause>raise is a log(n) operation, and sink is a log(n) operation
10:40<argoneus>what is raise and sink?
10:40<argoneus>maybe I know but I never heard these terms
10:41<argoneus>is that the process of adding elements to the heap?
10:41<Eddi|zuHause>yes, somewhat
10:41<argoneus>the idea of heaps was psychotic to me at first
10:41<Eddi|zuHause>you move upwards the tree until you find the place where the heap condition is invalid, and then go down again
10:41<argoneus>"just randomly fill this binary tree from the left and swap values"
10:42<Eddi|zuHause>after that, the heap condition is valid up to the n-th element
10:42<argoneus>so raise is when you add a new item, and you raise it until it meets the h-condition
10:42<Eddi|zuHause>which implies that your array is now sorted up to this element
10:42<argoneus>and sink is when you remove your root, replace it with the last item, and sink it down until h-condition applies?
10:43<Eddi|zuHause>not sure i get your explanation. but something of that sort, yes
10:43<argoneus>you can only remove the top item from the heap, no?
10:44<argoneus>or rather, it's built for that
10:44<argoneus>it's not built for searching inside it or such
10:44<Eddi|zuHause>not quite. this is about following the path your new element takes
10:45<argoneus>when you insert a new element
10:45<argoneus>you just put it at the end of the array
10:45<Eddi|zuHause>first it moves up the tree, until this branch of the tree complies to the heap-condition, and then it goes down another branch, until the whole tree is valid
10:45<argoneus>and then you raise it up through its parents
10:45<argoneus>until your condition no longer applies
10:45<argoneus>wait it goes down?
10:45<argoneus>I thought it's enough if it just goes up
10:45<Eddi|zuHause>it could still be inbetween some values in the other branch
10:46<argoneus>are binary heaps the same thing as heapsort?
10:46<argoneus>like, is the structure and operations the same?
10:46<Eddi|zuHause>hence the name
10:46<argoneus>we were told
10:46<argoneus>that it doesn't need to go down anymore
10:46<argoneus>because it's certain the h condition applies
10:46<Eddi|zuHause>i don't see how that is
10:47<argoneus>if you have number 7, with sons 3 and 4
10:47<argoneus>and you add 9
10:47<argoneus>then it swaps with 3
10:47<argoneus>and then swaps with 7
10:47<argoneus>and since 9 > 7
10:47<argoneus>it will be > than whatever is the other son
10:48<Eddi|zuHause>and if you add 3,5?
10:48<argoneus>then it won't swap with 7
10:48<argoneus>it will swap with 3
10:48<argoneus>and done
10:48<Eddi|zuHause>i think this example is too small
10:49<argoneus>my point is
10:49<argoneus>the idea is
10:49<argoneus>that any given node
10:49<argoneus>is of larger value than the two sons
10:49<argoneus>or smaller, depending on the kind
10:49<Eddi|zuHause>also, i think this 7->(3,4) is not satisfying the heap condition
10:49<Eddi|zuHause>it must be 4->(3,7)
10:49<argoneus>that's not a heap
10:49<argoneus>that's a binary tree
10:49<Eddi|zuHause>all things left of the root must be smaller, and all things right must be larger
10:50<argoneus>that's a binary tree
10:50<argoneus>not a heap
10:50<Eddi|zuHause>hm, no
10:50<Eddi|zuHause>it was still different
10:50<argoneus>I'm talking about maxHeap
10:50<Eddi|zuHause>but i probably misremember
10:50<argoneus>in a binary search tree (BST)
10:50<argoneus>for any node
10:50<argoneus>its left son is smaller
10:50<argoneus>and right son is higher
10:51<argoneus>in a maxheap
10:51<argoneus>the node just needs to have a higher value than both the sons
10:51<argoneus>I think so, at least
10:51<Eddi|zuHause>i'm probably missing some condition, but i don't find my script now
10:53<argoneus>this is what I meant
10:58<Eddi|zuHause>so, i found the script, and yes, sink is when you remove the root
10:59<Eddi|zuHause>first you add all the elements into the heap by raise, and then you remove all elements by sink
10:59<Eddi|zuHause>and then your array is sorted
11:00<Eddi|zuHause>you store the removed elements in the places that are not used up anymore in your tree
11:02-!-planetmaker [] has left #openttd [Verlassend]
11:02<Eddi|zuHause>hence it can be done in-place
11:03-!-Suicyder [~Suicyder@] has joined #openttd
11:03<argoneus>you just call extractMax() over and over
11:03<argoneus>because the root is the maximum always
11:03<argoneus>and what extractMax do
11:03<argoneus>is return the root value, put the last value in the root, and sink it down until it's in place
11:04<argoneus>thus you end up with the second max in root
11:04<argoneus>so basically
11:04<argoneus>you fill your array from end to beginning
11:04<argoneus>sorted ascending
11:05<Eddi|zuHause>so the order of functions is: (add, raise)*n, (swap, sink)*n and you're done
11:06<Eddi|zuHause>add and swap are O(1), raise and sink are O(logn)
11:08<argoneus>raise/sink is log n
11:08<argoneus>add is O(1)
11:09<argoneus>but you have n items
11:09<argoneus>so add is O(n)
11:09<argoneus>so n log n
11:09<argoneus>and then there's radix sort
11:09<argoneus>O(n) because LOL
11:10<argoneus>or rather
11:10<argoneus>k being the amount of digits
11:10<Eddi|zuHause>that's only if you have an additional condition
11:10<Eddi|zuHause>that the numbers are bounded by some maximum value
11:10<argoneus>all you need to know is how many digits max there are
11:11<Eddi|zuHause>which you can't know always
11:11<argoneus>if you have like 2 GB of 3 digit numbers
11:11<argoneus>it sorts really quick
11:11<argoneus>it's 3n
11:11<argoneus>that's as fast as it gets
11:11<argoneus>counting sort would be just 2n
11:11<argoneus>but take up a loooot of memory
11:11<Eddi|zuHause>if you have 2GB of floating point numbers
11:12<Eddi|zuHause>basically, k is ~ log(n) when you don't know the shape of the input data
11:12<Eddi|zuHause>so you're back to nlogn
11:13<Eddi|zuHause>there's also "lossy sort", which is O(1) :p
11:13<Eddi|zuHause>for every input, it returns [1,2,3,4,5,6,7,8,9,10]
11:14<Eddi|zuHause>which obviously is a sorted list :p
11:14<argoneus>bogosort is O(1)
11:15<argoneus>in the best case
11:15<argoneus>or is it
11:15<argoneus>it can't be faster than O(n)
11:15<argoneus>since it needs to check that every item is in place
11:15<argoneus>which takes at least n
11:16<argoneus>actually, no sorting algo can be faster than n for this reason
11:17<Eddi|zuHause>no operation can be faster than O(n) if you assume that the complete input is read at least once
11:17<argoneus>but it's proven that sorting can never be faster than O(n)
11:18<Eddi|zuHause>sorting in genera cannot be done faster than O(nlogn) in the worst or average case
11:19<argoneus>maybe it can
11:19<argoneus>but right now heapsort/mergesort/radixsort/quicksort are like the top 4
11:19<argoneus>depending on input data
11:27<Eddi|zuHause>there's a theoretical algorism called "FJA-sort"
11:27<Eddi|zuHause>that tries to reach the minimal upper bound
11:28<Eddi|zuHause>hello internet?
11:30<horazont>hello eddi
11:35-!-Alberth [~hat@2001:981:c6c5:1:be5f:f4ff:feac:e11] has joined #openttd
11:35-!-mode/#openttd [+o Alberth] by ChanServ
11:36-!-Progman [] has joined #openttd
11:36-!-ntx [] has quit [Ping timeout: 480 seconds]
11:40-!-ntx [] has joined #openttd
11:41-!-liq3 [] has quit []
11:55-!-TomyLobo [] has joined #openttd
11:56-!-Myhorta[1] [] has joined #openttd
11:57-!-frosch123 [] has joined #openttd
12:01-!-juzza1 [] has quit [Quit: Lost terminal]
12:11<Eddi|zuHause>oooh... i found the TTO savegame with the "one-way" system
12:15<@Alberth>TTO already had a single direction block signal, didn't it?
12:16<Eddi|zuHause>that was introduced in TTD
12:16<@Alberth>ah, ok
12:16<Eddi|zuHause>which i never had
12:17<@peter1138>"the alpha where the tiles meet doesn't quite sum to 1 so you get some marks between the tiles"
12:17<@peter1138>^ seems to be a misconception on how alpha works?
12:17<@peter1138>(That alpha is somehow "summed")
12:18<@Alberth>sounds like it
12:18<Eddi|zuHause>i'd expect alpha to be multiplicative
12:19<@Alberth>you draw several sprites at the same time?
12:20<@Alberth>hmm, when you draw a sprite on top of a non-opaque one, you mean
12:21<@peter1138>Once it's drawn, it's no longer transparent.
12:21<@Alberth>it's still wrong, a transparent pixel on top of an opaque one is not transparent
12:23<Eddi|zuHause>of all the sprites that are drawn on one particular pixel, at least one has to be completely opaque, otherwise a fraction of the original pixel will shine through
12:24-!-DDR [] has joined #openttd
12:24<Eddi|zuHause>and the fraction of the orgiginal pixel that is remaining is (1-product(alpha))
12:24<@Alberth>isn't that the idea of non-opaque pixels?
12:25<Eddi|zuHause>yes, but it's not the desired outcome for ground tiles
12:25<@Alberth>so how exactly is 1*0 == 1 ?
12:26<Eddi|zuHause>hm, then my expectation is probably wrong
12:34-!-killertester [] has joined #openttd
12:34-!-pxr [] has joined #openttd
12:36-!-Hazzard [~Hazzard@] has joined #openttd
12:36-!-oskari89 [] has joined #openttd
12:51-!-TheMask96 [] has quit [Ping timeout: 480 seconds]
12:52-!-mordant [] has joined #openttd
12:54-!-sla_ro|master [] has quit []
12:54-!-sla_ro|master [] has joined #openttd
12:55-!-TheMask96 [] has joined #openttd
12:58-!-FLHerne [] has joined #openttd
12:59-!-glx [] has joined #openttd
12:59-!-mode/#openttd [+v glx] by ChanServ
13:01-!-itsatacoshop247 [] has joined #openttd
13:11-!-itsatacoshop247 [] has quit [Ping timeout: 480 seconds]
13:14-!-andythenorth [] has joined #openttd
13:15<argoneus>evening my friends
13:15<argoneus>train friends even
13:18<V453000>death train infidel
13:19-!-sla_ro|master [] has quit []
13:22<Eddi|zuHause>i have a dial-a-pirate here
13:24<andythenorth>cat problem is now solved
14:06-!-sla_ro|master [] has joined #openttd
14:06-!-Klanticus [~quassel@] has quit [Remote host closed the connection]
14:07<frosch123>oh, the forums is pure gold today
14:10<andythenorth>really? :|
14:11<andythenorth>did I miss?
14:11<@Alberth> this one, perhaps
14:11<frosch123>two topics where i do not know who is trolling who
14:12<@Alberth>oh, max loan size :p
14:12<frosch123>nah, i ignore that
14:12<frosch123>i meant the one which explains eddi to google information loss, and the one with imaginary numbers
14:13<@Alberth>oh, "imaginary numbers" are great indeed :D
14:13<andythenorth>are they really imaginary numbers
14:14<frosch123>andythenorth: everything is measureable with imaginary numbers
14:14<andythenorth>like sqrt(-1) ?
14:14<frosch123>even intelligency
14:15<Eddi|zuHause>some people argue that the "real" numbers aren't as real as they sound, either
14:15<frosch123>the absolute amount of intelligence can be huge, with no impact on the real part
14:15<@Alberth>andythenorth: yes, you define i*i == -1 sqrt(-1) is thus i
14:16<frosch123>sqrt(-1) is {-i, i}
14:16<@Alberth>hmm, right :)
14:17<Eddi|zuHause>frosch123: you can define either of those as "i", it'll give the same result
14:17<andythenorth>imaginary numbers were about the last bit of fun I had doing engineering maths
14:17<andythenorth>after that it got way beyond me
14:18<andythenorth>mostly ever more complex differentation :P
14:18<andythenorth>and equation solving
14:18<frosch123>Eddi|zuHause: maybe write a book using j := -i
14:19<andythenorth>imaginary numbers are quite fascinating when you’re ~18
14:19<andythenorth>there’s nothing ‘imaginary’ about them for starters
14:19<andythenorth>as real as any other number
14:19<Eddi|zuHause>what? imaginary numbers were fun when i was 12
14:19<andythenorth>yes, but you live in a society that doesn’t see mathematical ability as shameful
14:19<andythenorth>whereas I live in England
14:20<frosch123>andythenorth: psst, just say that you got your mental state by considering the axiom of choice
14:20<frosch123>eddi will believe you everything after that
14:20<andythenorth>yes, but it’s using words I don’t understand
14:20<andythenorth>or at least, in that combination
14:20<Eddi|zuHause>the axiom of choice isn't that difficult to understand
14:21<frosch123>actually it is
14:21<andythenorth>google probably knows
14:21<Eddi|zuHause>it just says that for any set, you can pick a value from that set
14:21*andythenorth looks
14:21<Eddi|zuHause>it's just that it cannot be proven or disproven using "constructive" maths
14:22<Eddi|zuHause>thus creating a new level of maths, where things can now be proven
14:22<frosch123>every student is explained it like eddi just did, but i would claim that 99% do not understand what that really means
14:22<Eddi|zuHause>which couldn't be proven before
14:22<Eddi|zuHause>frosch123: maybe it's like quantum mechanics. if you have claimed to understand it, you didn't understand it :p
14:22<frosch123>i only understood it in a lecture specifically about set theory, and axiom stuff
14:23<andythenorth>if the students are anything like the (well-educated) students at the university I went to
14:23<andythenorth>they learn the formula
14:23<andythenorth>and the rote definition
14:23<Eddi|zuHause>anyway, there's loads of maths you can do without the axiom of choice
14:23<andythenorth>and they put those two together to the socially acceptable 63% exam mark
14:23<andythenorth>which shows they aren’t trying too hard
14:24<frosch123>Eddi|zuHause: you can say it more strict: you can do all math which have the slightest practical relevance without it :p
14:25<frosch123>that axiom basically separates the theoretical from the applied maths
14:25<frosch123>but ok, i guess number theory is not much affected by it
14:26<Eddi|zuHause>the only place where it was really needed was functional analysis
14:26<frosch123>well, and set theory
14:26<Eddi|zuHause>at least, among the fields of maths i came across
14:27<Eddi|zuHause>another place where it was used was to create non-borel sets
14:28<Eddi|zuHause>but nobody needs those :p
14:28-!-andythenorth [] has quit [Read error: Connection reset by peer]
14:29<Eddi|zuHause>i don't quite remember: can it be used to prove or disprove whether there is a cardinality between countable and continuum?
14:29-!-andythenorth [] has joined #openttd
14:39<andythenorth>learn how to write a GS in Squirrel?
14:39<andythenorth>or learn how to draw charts in Raphael.js?
14:44<andythenorth>[c] none of the above?
14:50-!-Supercheese [] has joined #openttd
14:51<@Alberth>feels like a deja-vu, but extend an existing one?
14:53<andythenorth>hack SV
14:54<@Alberth>NoCarGoal seems like an easier target to me, but it depends on what you want
14:56<andythenorth>what I want is people to write more GS :D
14:56<andythenorth>what I *get* is to do that myself :P
14:57<@Alberth>sorry :)
14:57-!-HerzogDeXtEr [~flex@] has joined #openttd
15:00*andythenorth learns a charting library by reading source
15:00<andythenorth>because github pages for manual are broken :P
15:03<@Alberth>GH is quite broken in itself, lots of edge cases that don't exactly work
15:05<andythenorth>maybe I start cloning more repos for dependencies :P
15:05<andythenorth>instead of getting the release bundle and assuming I can trust GH in future
15:16<@Alberth>you are generally getting the service you pay for :p
15:17<@Alberth>but that holds for everything :)
15:18<andythenorth>I want my money back
15:21-!-Wolf01 [] has joined #openttd
15:21<Wolf01>hi hi
15:30<__ln__>in bocca al lupo
15:48-!-Alberth [~hat@2001:981:c6c5:1:be5f:f4ff:feac:e11] has left #openttd []
15:55-!-Hazzard [~Hazzard@] has quit [Quit: Goodbye.]
16:01-!-Flygon [] has joined #openttd
16:07-!-Flygon__ [] has quit [Ping timeout: 480 seconds]
16:18-!-Quatroking_ [] has joined #openttd
16:19-!-[1]Suicyder [~Suicyder@] has joined #openttd
16:22-!-argoneus [] has quit [Remote host closed the connection]
16:22-!-argoneus [] has joined #openttd
16:23-!-funnel [] has quit [Remote host closed the connection]
16:23-!-funnel [] has joined #openttd
16:25-!-Suicyder [~Suicyder@] has quit [Ping timeout: 480 seconds]
16:25-!-[1]Suicyder is now known as Suicyder
16:25-!-Quatroking [] has quit [Ping timeout: 480 seconds]
16:47-!-luaduck_zzz is now known as luaduck
16:49-!-Yotson [~Yotson@2001:980:6ac8:1:adbd:2865:f19f:6537] has quit [Quit: .]
16:54-!-liq3 [] has joined #openttd
16:58-!-TomyLobo [] has quit [Quit: Standby mode...]
16:58-!-frosch123 [] has quit [Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn]
17:00-!-gelignite [] has quit [Quit:]
17:05-!-itsatacoshop247 [] has joined #openttd
17:07-!-Progman [] has quit [Remote host closed the connection]
17:14-!-dreck [] has joined #openttd
17:15<dreck>was wondering about it a bit for awhile and mm how do you code an engine to run like normal on one railtype but lose some power (and still run) on another railtype?
17:15<dreck>hi v453000 :P
17:15<V453000>just with a switch detecting current_railtype
17:15<V453000>see nuts code
17:22<dreck>mm ok
17:23<V453000>just ctrl f for that variable and you got it easy
17:25-!-andythenorth [] has quit [Quit: andythenorth]
17:30-!-Jomann [] has quit [Remote host closed the connection]
17:31<Eddi|zuHause>"for the next five years, yahoo will be the default search engine in firefox"
17:31-!-Wolf01 [] has quit [Quit: Once again the world is quick to bury me.]
17:32<FLHerne>Eddi|zuHause: Well, Bing isn't quite as awful as it used to be
17:32<V453000>1st april owat :)
17:34-!-sla_ro|master [] has quit []
17:34<Eddi|zuHause>apparently, google paid mozilla a large sum of money for being the default search engine, and now yahoo pays that...
17:34<V453000>nice enough
17:35<Eddi|zuHause>"in 2012, 280 million $ out of the 311 million $ income of mozilla came from the search engine deal"
17:37-!-jinks [~jinks@2602:ffe8:102:213::1c:34ac] has quit [Quit: ZNC -]
17:37-!-jinks [~jinks@2602:ffe8:102:213::1c:34ac] has joined #openttd
17:38-!-luaduck is now known as luaduck_zzz
17:39<dreck>mm and correct me if this is wrong, wagons can be introduced but never obsoleted?
17:40<Eddi|zuHause>they can
17:49-!-oskari89 [] has quit []
17:49-!-Suicyder [~Suicyder@] has quit [Quit: I love my HydraIRC -> <-]
17:51-!-ginko_ [] has quit [Remote host closed the connection]
17:53<dreck>have to eat now so
17:53-!-dreck [] has left #openttd []
18:03-!-Hazzard [] has joined #openttd
18:08-!-planetmaker [] has joined #openttd
18:08-!-mode/#openttd [+o planetmaker] by ChanServ
18:15<argoneus>what came first
18:15<argoneus>planets or planetmaker
18:18-!-Speedy [~speedy@] has quit [Ping timeout: 480 seconds]
18:35<Eddi|zuHause>first there was a singularity, then there was hot plasma, then there was hydrogen, and it all went downhill from there
18:36<Eddi|zuHause>and if there hadn't been some uneven wobbles in the fabric of the universe, nothing would have happened ever again
18:39<ST2>so, "planetmaker" is the Big Bang itself, I presume ;)
18:40<ST2>(itself, himself or herself, I couldnt decide what to use. so, came out that way :D)
18:57-!-Speedy` [~speedy@] has joined #openttd
18:58-!-Speedy` is now known as Speedy
19:01-!-jinks [~jinks@2602:ffe8:102:213::1c:34ac] has quit [Quit: ZNC -]
19:01-!-jinks [~jinks@2602:ffe8:102:213::1c:34ac] has joined #openttd
19:06-!-Speedy [~speedy@] has quit [Ping timeout: 480 seconds]
19:15-!-liq3 [] has quit []
19:30-!-Speedy` [] has joined #openttd
19:31-!-Speedy` is now known as Speedy
19:39-!-killertester [] has quit [Quit: Leaving.]
19:42-!-Speedy [] has quit [Remote host closed the connection]
20:11-!-Quatroking_ [] has quit [Read error: Connection reset by peer]
20:11-!-JacobD88 [] has joined #openttd
20:12-!-JacobD88 [] has quit []
20:17-!-FLHerne [] has quit [Ping timeout: 480 seconds]
20:30-!-Speedy` [] has joined #openttd
20:31-!-Speedy` is now known as Speedy
20:47-!-Flygon [] has quit [Ping timeout: 480 seconds]
20:49-!-Flygon [] has joined #openttd
21:04-!-Flygon_ [] has joined #openttd
21:09-!-Flygon [] has quit [Ping timeout: 480 seconds]
21:30-!-liq3 [] has joined #openttd
22:51-!-mordant [] has quit [Ping timeout: 480 seconds]
22:57-!-SHOTbyGUN [] has quit [Read error: Connection reset by peer]
23:27-!-slonik [] has quit [Read error: Connection reset by peer]
23:27-!-slonik [] has joined #openttd
23:27-!-Myhorta [] has quit [Remote host closed the connection]
23:27-!-Myhorta[1] [] has quit [Read error: Connection reset by peer]
23:33-!-KWKdesign [] has joined #openttd
23:38-!-glx [] has quit [Quit: Bye]
23:40-!-slonik [] has quit [Ping timeout: 480 seconds]
23:49-!-slonik [] has joined #openttd
23:55-!-KWKdesign [] has quit [Ping timeout: 480 seconds]
---Logclosed Thu Nov 20 00:00:05 2014