IRC logs for #openttd on OFTC at 2022-06-28
⏴ go to previous day
00:35:10 *** Wormnest has quit IRC (Ping timeout: 480 seconds)
01:09:09 *** Wormnest has joined #openttd
01:28:50 *** Wormnest has quit IRC (Quit: Leaving)
02:06:19 *** wallabra has joined #openttd
02:29:46 *** debdog has quit IRC (Ping timeout: 480 seconds)
03:22:35 *** andythenorth has joined #openttd
03:30:40 *** andythenorth has quit IRC (Ping timeout: 480 seconds)
04:23:59 *** andythenorth has joined #openttd
04:32:00 *** andythenorth has quit IRC (Ping timeout: 480 seconds)
05:41:41 *** andythenorth has joined #openttd
05:49:45 *** andythenorth has quit IRC (Ping timeout: 480 seconds)
06:04:37 *** andythenorth has joined #openttd
06:06:20 *** Smedles has joined #openttd
06:47:05 *** sla_ro|master has joined #openttd
08:26:15 *** Xaroth has quit IRC (Read error: Connection reset by peer)
10:25:04 *** andythenorth has quit IRC (Quit: andythenorth)
10:28:11 *** andythenorth has joined #openttd
11:08:05 <Samu> the logic for deciding best station orientation is very exquisite
11:40:07 <peter1138> The original cheating AI could just demolish a town with no ill-effect for that reason.
12:36:09 <Samu> how do i ... ask this question. I want to get the perpendicular line to another line, in a (x, y) manner
12:38:15 <Samu> i have the coordinates of town A and B, i want to get a line perpendicular to the line that goes from A to B
12:38:28 <Samu> starting at point A, and point B
12:38:52 <Samu> i want my stations to be build only between that are
12:41:57 <Samu> goal is to have only half of area around the town where to work where to place my stations
12:42:40 <LordAro> you can search for this stuff in Portuguese too ;)
12:44:28 <Samu> with airports it's just so simple
12:44:51 <Samu> it wouldn't really matter in wich side of the town the airport would be placed
12:45:07 <Samu> but with train stations, it matters more
12:47:05 <Samu> i think i did something similar with the canal pathfinder, let me take a look
13:13:42 <Samu> now i only want the "x"'s between the towns
13:14:13 <Samu> wanna exclude the the "x"'s on the outer sides
13:15:23 *** WormnestAndroid has quit IRC (Remote host closed the connection)
13:15:46 <glx> using min/max of towns' x and y should be enough
13:59:52 *** WormnestAndroid has joined #openttd
15:27:04 <Samu> it's almost this what I want, but i'm not quite there
16:17:05 *** HerzogDeXtEr has joined #openttd
16:23:51 *** virtualrandomnumber has joined #openttd
16:24:54 *** virtualrandomnumber has quit IRC ()
16:36:46 *** Smedles has joined #openttd
16:45:30 *** D-HUND is now known as debdog
16:59:12 *** Smedles has joined #openttd
17:04:18 *** Flygon has quit IRC (Quit: A toaster's basically a soldering iron designed to toast bread)
17:30:07 *** frosch123 has joined #openttd
17:43:17 *** gelignite has joined #openttd
17:45:42 *** supermop_work has joined #openttd
18:17:41 *** Wormnest has joined #openttd
18:23:27 <andythenorth> hi supermop_work
18:23:47 <supermop_work> how's it going andy
18:25:49 <supermop_work> moose cargo sprites?
18:40:04 *** emorrp1 has joined #openttd
18:48:48 <andythenorth> Moose is NARS Horse Revival 7
18:49:10 <andythenorth> which is Euro Olive Sausage Lederhosen Horse
18:54:35 <DorpsGek> - Update: Translations from eints (by translators)
19:03:45 <andythenorth> how shall I balance Euro Pony?
19:03:59 <andythenorth> Swiss engines are inconveniently high HP in RL
19:04:30 <andythenorth> frosch said 'make them slower' last time this was discussed in any depth
19:04:59 <frosch123> "if you search long enough, everything has been said by someone somewhen"
19:05:39 <nielsm> isn't that usually the tradeoff of gearing? you can have higher power or higher speed or a tradeoff
19:05:51 <frosch123> i could attribute that quote to a professor from my university, but going by it, someone else must have said it already before
19:06:11 <nielsm> and if you want both you need a stronger engine that uses more energy and is more expensive to build and maintain
19:06:58 <frosch123> just make red engines cheaper than yellow ones
19:07:05 <andythenorth> can we have less steep slopes in the game?
19:07:12 <andythenorth> usually it's cliffs that get asked for
19:07:23 <andythenorth> but actually half-gradient-slopes might be better :P
19:07:30 <andythenorth> trains don't go up cliffs usually
19:07:36 <frosch123> ottd defines "slope steepness" as the "number of slopes along the train"
19:07:50 <frosch123> so the longer the train, the more possible slopws
19:08:28 <frosch123> trains don't go up hills with 10 consecutive slope
19:10:43 <frosch123> andythenorth: you could also limit train length :p
19:10:46 <Samu> why is IsBuildableRectangle such a pain to use
19:11:16 <Samu> i have top tile and bottom tile, i wanna do a IsBuildableRectangle with these
19:11:18 <frosch123> strong engine may be strong because it only allows 5 tile-length trains
19:11:19 <andythenorth> I could just make the Swiss trains high HP and that's fine :P
19:11:35 <Samu> but no, I got to compute a width and a height
19:11:55 <frosch123> did you know that ottd allows sorting the purchase list by "power / running_cost"?
19:12:13 <frosch123> i assume it's for figuring out, whether to attach a single strong engine, or multiple weak ones
19:12:49 <frosch123> but i doubt it's used by as many people as the author assumed
19:13:01 <frosch123> do you ever resort the puchase list?
19:14:00 <andythenorth> I never resort the purchase list
19:14:17 <andythenorth> I wouldn't be able to find anything :P
19:31:01 <glx> clearly we need gdb for #9935, it's very weird
19:31:14 *** tokai|noir has joined #openttd
19:31:14 *** ChanServ sets mode: +v tokai|noir
19:38:16 *** tokai has quit IRC (Ping timeout: 480 seconds)
19:56:04 <nielsm> I don't understand why GCC and/or clang require -msse4.1 to use intrinsics, I thought part of the point of intrinsics was to be able to use specific CPU features without having them enabled in general for the compiler
19:57:17 <dwfreed> I think the value of intrinsics is more towards not having to write inline ASM
19:59:04 <dwfreed> as the compiler would handle getting data into and out of the right registers, ensuring it's properly aligned, and whatever register preservation and/or restoration is required upon entering/leaving the function
20:00:11 <frosch123> nielsm: technically ViewportSortParentSpritesSSE41Checker should not be inside the file, which is compiled with -msse4.1
20:00:27 <frosch123> though i can't imagine gcc using sse instructions in such function :)
20:00:42 <nielsm> yeah it would be odd if it did
20:00:49 <glx> crash log shows the crash is not in this function anyway
20:01:08 <nielsm> but JGR is probably right that it's ODR that's the culprit
20:01:29 <nielsm> so linking order and phase of the moon
20:01:51 <dwfreed> too bad you need VC++ support
20:02:18 <nielsm> so the sse4 file is presumably linked last instead of first
20:03:09 <glx> not sure it changes a lot
20:03:49 <frosch123> oh dear, so we may end up with a std::map using sse in other files
20:04:18 <frosch123> can we restrict visibility of symbols?
20:04:48 <frosch123> oh, that doesn't help, since it is part of the interface
20:05:23 <frosch123> ah, different idea, it's likely possible to enable sse only in parts of the file using pragma magic
20:07:13 <dwfreed> could see if vc++ ignores __attribute__((target("sse4.1")))
20:08:33 <glx> worst case we can use #ifdef for gcc/clang
20:08:38 <dwfreed> this is how you would do function multiversioning if all compilers you use support it, and in gcc and clang, it results in sse4.1 being enabled for the function
20:09:30 <glx> and even a macro in stdafx.h
20:09:34 <nielsm> and I'm pretty sure microsoft C++ doesn't require the compiler to be in SSE-enabled mode to use intrinsics
20:09:35 <frosch123> ok, clang says: you cannot enable sse on per-function basis
20:09:44 <frosch123> also, sse4.cpp includes <map>, but does not use it?
20:10:23 <frosch123> it looks like ParentSpriteToSortVector only gets a vector of POD stuff
20:10:42 <frosch123> which could be a std:span, and then we get a C interface, without any templates
20:10:53 <frosch123> however, stdafx.h is still a problem
20:14:32 <nielsm> let's switch to C++20 and change everything up to use modules!
20:15:05 <frosch123> how does that help here?
20:15:28 <nielsm> dunno, it sounds like it could separate things a bit
20:15:51 <frosch123> it does not change template instantiation
20:19:17 <Eddi|zuHause> when do we use blockchain?
20:20:05 <Eddi|zuHause> zero-trust-multiplayer :)
20:20:39 <frosch123> i used blockchain to filter bad job offers
20:20:59 <frosch123> probably the best application of blockchain
20:24:05 <milek7_> doesn't -fvisibility only matter for resulting executable, not individual object files?
20:27:10 <nielsm> it would suck having to make a dynamic library of the thing, or rewrite it in pure assembly
20:42:39 <frosch123> my research was wrong
20:42:44 <frosch123> i edited my comment
20:42:56 <frosch123> it's possible to enable sse4.1 on a per-function basis
20:54:20 *** sla_ro|master2 has joined #openttd
20:59:01 *** sla_ro|master has quit IRC (Ping timeout: 480 seconds)
20:59:19 <nielsm> (code is meaningless, just some randomly picked functions that fit the criteria of SSE4.1 and not entirely trivial)
21:13:01 *** nielsm has quit IRC (Ping timeout: 480 seconds)
21:29:52 *** andythenorth has quit IRC (Quit: andythenorth)
21:42:34 *** sla_ro|master2 has quit IRC ()
21:48:21 *** lobster has joined #openttd
21:55:21 *** HerzogDeXtEr has quit IRC (Read error: Connection reset by peer)
21:59:36 *** frosch123 has quit IRC (Quit: be yourself, except: if you have the opportunity to be a unicorn, then be a unicorn)
22:03:46 *** Samu has quit IRC (Quit: Leaving)
22:17:46 *** sla_ro|master has joined #openttd
22:26:18 *** sla_ro|master has quit IRC ()
23:27:31 *** gelignite has quit IRC (Quit: Stay safe!)
continue to next day ⏵