00:01:40 -!- simcop2387 has quit (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in).
00:02:03 -!- simcop2387 has joined.
00:03:38 -!- slavfox has quit (Ping timeout: 240 seconds).
00:04:16 -!- slavfox has joined.
00:19:05 -!- Sgeo has joined.
01:19:15 <esolangs> [[Special:Log/newusers]] create * Natejoestev * New user account
01:22:28 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=101874&oldid=101832 * Natejoestev * (+61) /* Introductions */
01:37:49 <esolangs> [[Special:Log/newusers]] create * Alanmalan * New user account
01:41:25 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=101875&oldid=101874 * Alanmalan * (+129) added my own hi guys
01:42:52 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=101876&oldid=101875 * Alanmalan * (+42)
01:53:00 <esolangs> [[ITM]] N https://esolangs.org/w/index.php?oldid=101877 * Alanmalan * (+1550) brainfuck but worse and made by me
01:54:50 <esolangs> [[ITM]] M https://esolangs.org/w/index.php?diff=101878&oldid=101877 * Alanmalan * (+1)
01:58:30 <esolangs> [[ITM]] M https://esolangs.org/w/index.php?diff=101879&oldid=101878 * Alanmalan * (+54)
02:33:31 <esolangs> [[BunnyBell]] https://esolangs.org/w/index.php?diff=101880&oldid=101859 * PixelatedStarfish * (+67) /* Structs: Defining a Data Type */
02:57:32 -!- Soni has joined.
03:01:48 -!- lagash has joined.
03:02:59 -!- mich181189_ has joined.
03:03:03 -!- pikhq_ has joined.
03:03:04 -!- lagash_ has quit (*.net *.split).
03:03:05 -!- SoniEx2 has quit (*.net *.split).
03:03:07 -!- fizzie has quit (*.net *.split).
03:03:07 -!- pikhq has quit (*.net *.split).
03:03:07 -!- mich181189 has quit (*.net *.split).
03:03:09 -!- oren has quit (*.net *.split).
03:03:10 -!- leah2 has quit (*.net *.split).
03:03:11 -!- mich181189_ has changed nick to mich181189.
03:03:11 -!- pikhq_ has changed nick to pikhq.
03:05:42 -!- oren has joined.
03:12:05 -!- leah2 has joined.
04:23:03 <esolangs> [[lang]] https://esolangs.org/w/index.php?diff=101881&oldid=101558 * Salpynx * (+1473) /* Interpeters */ shameful
05:33:01 <esolangs> [[Special:Log/newusers]] create * Jmibo * New user account
05:34:19 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=101882&oldid=101876 * Jmibo * (+114) /* Introductions */
06:22:54 -!- Sgeo has quit (Read error: Connection reset by peer).
08:17:48 -!- fizzie has joined.
08:21:03 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101883&oldid=101867 * Ilikecreepers * (+49)
08:21:44 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101884&oldid=101883 * Ilikecreepers * (+34)
08:22:51 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101885&oldid=101884 * Ilikecreepers * (+1) /* basics */
08:25:16 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101886&oldid=101885 * Ilikecreepers * (+124) /* the complcated stuff */
08:26:33 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101887&oldid=101886 * Ilikecreepers * (+54) /* programs made in this */
08:28:01 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101888&oldid=101887 * Ilikecreepers * (+35)
08:28:43 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101889&oldid=101888 * Ilikecreepers * (+2) /* basics */
08:51:36 <esolangs> [[MASL]] https://esolangs.org/w/index.php?diff=101890&oldid=101870 * Matto * (+616) Added Fibonacci seq. + some other stuff
10:20:04 -!- genpaku has quit (Remote host closed the connection).
10:20:44 -!- genpaku has joined.
10:37:03 -!- Noisytoot has quit (Ping timeout: 268 seconds).
10:37:40 -!- sprout has quit (Ping timeout: 268 seconds).
11:02:44 -!- wib_jonas has joined.
11:11:15 -!- sprout has joined.
11:21:46 <int-e> wib_jonas: I did a saturation test: https://int-e.eu/~bf3/tmp/shapez-saturation.png
11:23:13 <esolangs> [[Roundabout]] https://esolangs.org/w/index.php?diff=101891&oldid=101803 * AndrewToasterr * (+3467)
11:23:39 <wib_jonas> int-e: nice. what did the speed stabilize at if you flushed the buffers for longer than required to pass the level? the displayed 62/s looks too low
11:23:55 <wib_jonas> int-e: also what's your nominal belt speed?
11:25:16 <wib_jonas> also why are there 32 belts going towards the hub, when afair you can only actually feed 20 belts' worth? is that so you can later switch quickly between upgrade shapes and freeplay shapes at low latency?
11:25:55 <int-e> Nah, it's just simplifying the load balancing because it's a power of 2
11:26:53 <wib_jonas> partly because shapez.io doesn't have a simple merger with input priority (so that you'd prioritize the freeplay shape if available), partly because low latency to supply the new freeplay shape is important it and works against the switching
11:28:30 <wib_jonas> why is there a merger of two belts before each buffer?
11:29:20 <int-e> My speedup is 9.6 (9.7 for belts, but that doesn't really help). So let's say 19.2 per belt. The balancer bumps this up to 20. But I suspect that'll change once the speedup goes above 10.
11:30:06 <wib_jonas> there's a switch after the buffer, but that's just for the upgrade or tape roll shape
11:30:56 <int-e> And there's a filter before the buffer. And a switch before and after the buffer that can quickly drain both. Not that I'll really need that...
11:30:59 <wib_jonas> there's a split path before the buffers that comes from the same belt, I don't know why that is but it's less werid
11:31:21 <wib_jonas> sure, the filters I understand, and you *do* want a switch to quickly drain the buffer
11:31:53 <int-e> hmm... let me make another screenshot
11:32:33 <int-e> If the game lets me... responsiveness has become an issue, especially after it regains focus.
11:36:44 <wib_jonas> basically you want to flush your buffers as soon as possible when it's already very likely that it will trigger completion of the level. knowing whether it will trigger is hard, because you need 2000 shapes within a 10 second interval that is synchronized to an even 10 seconds on a map-global timer, and it's hard to synchronize with that timer, so
11:36:45 <wib_jonas> ideally you just send somewhat less than 4000 shapes and hope it works. to make average progress the fastest, you want to empty the shape when there's a small chance of failure, so you want to continue feeding the buffers with the shame level shape until you can verify that the level shape has indeed changed, at which point you drain the buffer.
11:36:45 <wib_jonas> the drain is easy to implement: just connect the hub's level shape signal to the filter, and put a trash at the bad end of the filter. and this is almost free, because your freeplay machine will be slow enough that it won't start filling the buffer before you can drain it.
11:38:11 <int-e> wib_jonas: https://int-e.eu/~bf3/tmp/shapez-buffer.png
11:40:00 <int-e> wib_jonas: Oh. I guess it was all there after all. So the splitter is to make the filters clean... they don't work well at full rate, but they do work at half rate.
11:40:39 <int-e> It's kind of useless the way things turned out, because the input lines themselves are split up as well.
11:41:03 <int-e> but I /could/ fully saturate that input and it would still not clog the storage.
11:41:19 <int-e> even if some dirt arrives
11:41:44 <wib_jonas> in other news, I've been playing Mindustry. it's another simulation game inspired by Factorio, with items traveling on belts, crafter buildings. also there's built-in in-game programmability similar to Factorio or shapez.io but with a language deliberately more full-featured than those (not a high bar) and interesting limitations in how those
11:41:44 <wib_jonas> programs can interface the in-game world. it can have some esoteric interest similar to Factorio or shapez.io or openttd with its deliberate and accidental programmability potentials.
11:42:53 <int-e> So I did over-engineer that buffer gadget a little bit.
11:42:56 <wib_jonas> int-e: interesting, so you can filter trash the line faster this way? I didn't know
11:44:32 <wib_jonas> I have lots of these trash filters, not just in the buffers but the guts of the freeplay shape making machine, because otherwise shapes or pigment tends to get stuck in it when one input of a crafting machine is present but the other isn't.
11:44:46 <int-e> If I just have a single line then the detector's pulse is too long to let just one item through.
11:45:15 <wib_jonas> so for most of the internal belts I compute the exact shape or pigment that ought to be present there and filter for it
11:45:16 <int-e> so if I have a correct item immediately followed by garbage, the garbage will tail the good item through the filter.
11:45:48 <wib_jonas> int-e: if your freeplay machine, not just the buffer, works, I'll be interested to see that as well
11:45:50 <int-e> Yeah I remade large parts of the factory to have more filters and some logic to drain lines on switchover.
11:47:12 <wib_jonas> I didn't actually remake any parts for that, there was generally enough space to fit the filters with small changes
11:47:33 <wib_jonas> and half of the machine was designed knowing that I need the filters too
11:48:05 <wib_jonas> oh, not for speed but to trash a bad item that follows a good item? that makes sense
11:49:26 <int-e> Ah, I kind of golfed the first attempt already... and it turns out there wasn't enough space.
11:49:47 <int-e> Or let's call it the first version. It worked well enough, really.
11:53:56 <esolangs> [[Roundabout]] M https://esolangs.org/w/index.php?diff=101892&oldid=101891 * AndrewToasterr * (+318)
12:01:03 <esolangs> [[Roundabout]] M https://esolangs.org/w/index.php?diff=101893&oldid=101892 * AndrewToasterr * (+46)
12:02:56 <wib_jonas> int-e: if it *worked* as in it's already working I'll be interested to see it
12:03:07 <wib_jonas> but if you want to improve it, don't feel pressured too much
12:09:33 -!- sebbu has quit (Ping timeout: 268 seconds).
12:36:41 <esolangs> [[LRL]] https://esolangs.org/w/index.php?diff=101894&oldid=101823 * ChuckEsoteric08 * (+3)
12:39:25 <int-e> wib_jonas: https://int-e.eu/~bf3/tmp/Exhibit.bin is the working second version. (I trimmed it down to a single factory and a quarter of the delivery mechanism... this also makes it run smoothly at 60 ticks/s, which the full version doesn't.
12:40:05 <int-e> Actually the first version is now lost, I overwrote that save file.
12:40:27 <int-e> But it wasn't dramatically different from this one anyway, it mostly had fewer filters.
12:41:54 <int-e> I have no automation for the delivery mechanism yet, it's just two buttons.
12:48:53 -!- chiselfuse has joined.
12:49:41 <esolangs> [[User:ChuckEsoteric08/Interpreters]] M https://esolangs.org/w/index.php?diff=101895&oldid=98382 * ChuckEsoteric08 * (+430)
13:03:16 -!- wib_jonas has quit (Quit: Client closed).
13:06:55 -!- sebbu has joined.
13:49:54 -!- SGautam has joined.
13:52:03 <esolangs> [[++C]] M https://esolangs.org/w/index.php?diff=101896&oldid=101873 * Yee haw * (+0) Thanks to rampion for catching a bug in the calculator program!
13:52:47 -!- UserYes has joined.
13:53:20 <esolangs> [[Weeeeeeeeeeeeeeeeeeeeeeeeeeeeee]] https://esolangs.org/w/index.php?diff=101897&oldid=101439 * ChuckEsoteric08 * (+117) Scratch interpreter
13:58:15 -!- UserYes has quit (Ping timeout: 252 seconds).
14:05:54 <esolangs> [[User:ChuckEsoteric08]] https://esolangs.org/w/index.php?diff=101898&oldid=101829 * ChuckEsoteric08 * (+209)
15:07:14 <esolangs> [[ITM]] M https://esolangs.org/w/index.php?diff=101899&oldid=101879 * PythonshellDebugwindow * (+172) Formatting, external resources, categories
15:52:16 <esolangs> [[Special:Log/upload]] upload * CNK * uploaded "[[File:Dang.png]]"
15:52:54 <b_jonas_> int-e: I'm looking at your shapez.io save. you have more drain filters than I do, you added one between the output of every painter/stacker/cutter and the input of the next one where the shape can change. I have steps combined a bit more often than this.
15:52:58 <esolangs> [[Color Scheme]] M https://esolangs.org/w/index.php?diff=101901&oldid=97991 * CNK * (-4)
15:52:58 -!- b_jonas_ has changed nick to b_jonas.
15:54:11 <esolangs> [[Special:Log/upload]] upload * CNK * uploaded "[[File:Dang2.png]]"
15:55:31 <b_jonas> also now I see what you meant about the double painters
15:55:35 <esolangs> [[Color Scheme]] https://esolangs.org/w/index.php?diff=101903&oldid=101901 * CNK * (+44)
15:56:16 <esolangs> [[Color Scheme]] https://esolangs.org/w/index.php?diff=101904&oldid=101903 * CNK * (+0)
15:56:34 <esolangs> [[Color Scheme]] https://esolangs.org/w/index.php?diff=101905&oldid=101904 * CNK * (+0)
15:57:54 <esolangs> [[BunnyBell]] https://esolangs.org/w/index.php?diff=101906&oldid=101880 * PixelatedStarfish * (+125) /* Data */
15:57:57 <esolangs> [[Color Scheme]] https://esolangs.org/w/index.php?diff=101907&oldid=101905 * CNK * (+9)
15:58:42 <b_jonas> also I have a single big machine producing four belts, with repetitions only inside its modules, rather than a machine that produces one belt repeated multiple times
16:05:10 -!- Noisytoot_ has joined.
16:06:13 -!- Noisytoot_ has quit (Read error: Connection reset by peer).
16:09:25 -!- Noisytoot_ has joined.
16:18:57 -!- Noisytoot_ has changed nick to Noisytoot.
17:09:26 -!- SGautam has quit (Quit: Connection closed for inactivity).
17:11:32 <river> https://twitter.com/CihanPostsThms/status/1556355541865095169
17:27:07 <esolangs> [[BunnyBell]] https://esolangs.org/w/index.php?diff=101908&oldid=101906 * PixelatedStarfish * (+7) /* Data */
17:47:38 <int-e> b_jonas: https://int-e.eu/~bf3/tmp/shapez-upgrading-again.png
17:48:25 <int-e> b_jonas: I considered producing multiple belts at once but the routing doesn't get easier... of course not doing that means quite a bit of duplicated logic in the second layer.
17:50:14 <int-e> b_jonas: yeah those extra drains at every stage is what I did for version 2 of the thing. it does improve switch over time a bit. It doesn't really matter in the grand scheme of things.
17:55:37 <int-e> b_jonas: My reasoning was that as long as I saturate the building blocks (filters, cutters, painters, stackers) it doesn't really matter whether I replicate them locally or by copying the whole factory several times.
17:57:09 <int-e> Oh and inputs too.
17:57:59 <int-e> Which... hmm. I guess is a case in favor of producing 2 things at once since I'm not saturating the paint inputs. But paint is abundant.
18:04:47 <int-e> I designed the paint mixing stage without accounting for the double painter
18:08:52 -!- Lord_of_Life_ has joined.
18:10:18 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
18:10:19 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
18:13:09 <int-e> Anyway, I'm now making 4 belts worth of flowers and 2 each of logos and rockets. I'm not making blueprints... I don't expect to run out, and if I actually do, I can use the freeplay factory to make more.
18:13:28 <int-e> (it does cope with missing slices)
18:14:22 <b_jonas> int-e: sure, the locality just made me easier to modify my machine
18:14:51 <int-e> But... meh, I think I'm done except for some gadget/logic for controlling the buffering. Which... won't need much copying.
18:15:23 <int-e> I mostly succeeded in debugging the thing before I replicated it.
18:16:02 <b_jonas> int-e: do take it over level 800 so you can measure its speed for bragging rights though
18:22:38 -!- user3456 has quit (Ping timeout: 240 seconds).
18:23:02 <int-e> b_jonas: I've seen a 320/s delivery rate. But I want to see whether that changes when I get the speedup multiplier above 10.
18:28:33 -!- user3456 has joined.
18:33:54 <int-e> it was actually fun to make the rocket again... the factory is far more compact (and I made a dual factory, duplicating each stage locally)
18:35:36 <int-e> note to self: don't blindly use storage for latency reduction, there might be circuits below
18:39:40 <b_jonas> int-e: it's not the delivery rate that matters the most, but how quickly you can pass levels (above 810) in average
18:41:01 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101909&oldid=101889 * Ilikecreepers * (+180) /* programs made in this */
18:48:01 <b_jonas> and as for that, yes, I have some places where I clearly have a evade one tile left just for crossing a storage line
18:49:14 <b_jonas> I have five total crossings of wires with storage lines, each of them crosses four parallel lines of storage
18:51:10 -!- Thelie has joined.
18:52:26 -!- user3456 has quit (Ping timeout: 255 seconds).
18:53:43 <b_jonas> also to avoid the opposite problem, where I build storages without looking at the wire layer, I have walls of trash blocks to delimit some areas are that in use but not obvious from the belt layer
18:54:34 <int-e> one late insight... there's hardly any point in having more bypasses than hub connections.
18:54:59 <b_jonas> there are three larger areas with just complex logic, no belts, and some smaller areas
18:56:45 <int-e> I don't think I'll have any complex logic. What I have in mind will take maybe half a dozen rs flip-flops.
18:58:03 <int-e> there's logic under the factories of course... but the complexity is mostly in squeezing it to fit into the desired grid, to keep belts short
18:58:29 <int-e> the freeplay factories that is... I have no other factories with logic parts
18:59:00 <b_jonas> the three are: (1) the needlessly overcomplicated timer mechanism for when to flush the freeplay shapes to the hub, (2) the logic part that determines which three layers definitely aren't missing a corner and what symmetry these have, and (3) the logic that determines what symmetry the fourth layer has, since there's a rare case when the other three layers appear to have multiple symmetries and the
18:59:06 <b_jonas> previous logic picks the wrong one because it doesn't take into account of the fourth layer
18:59:57 <b_jonas> and sure, the constant shape factories have no logic
19:00:07 <int-e> right, so (2) and (3) don't come up for me because I just make arbitrary slices
19:00:39 <int-e> and my plan for (1) is mechatronic, leaving most of the timing to items on belts.
19:01:30 <b_jonas> the only logic I use are for the freeplay factory, the freeplay flusing mechanism, and a small one for the museum single shape separator. and some of the logic is for debugging only.
19:01:31 <int-e> but it'll take some fiddling, haven't done all the work yet.
19:01:51 <b_jonas> yes, everyone other than me builds freeplay factories that don't care about the symmetry invariants
19:02:42 <b_jonas> and yes, for (1) the easiest way to do a counter is to send a stream of shapes (either the freeplay shapes or constant shapes tied to them) through a sequence of 1/2 splitters, to divide the count by a power of two
19:02:51 <b_jonas> instead I built a stupid quasi-binary counter in logic
19:03:30 <int-e> Yeah I did realise that splitters can make binary counters.
19:03:54 <int-e> Anyway, future work, not for today.
19:04:22 <int-e> I meant to do some of this on Sunday but my monitor decided it was time to break.
19:05:09 <int-e> And yesterday I was exhausted from getting a new monitor :P
19:05:09 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101910&oldid=101909 * Ilikecreepers * (+94) /* programs made in this */
19:06:18 <b_jonas> ouch, monitor breaking sucks
19:06:44 <int-e> I wish the game would display the ticks per seconds it executes
19:06:54 <esolangs> [[Dot's]] https://esolangs.org/w/index.php?diff=101911&oldid=101910 * Ilikecreepers * (+5) /* programs made in this */
19:07:14 <int-e> maybe there's a mod for that?
19:09:44 <b_jonas> int-e: there's a key shortcut to show debug info which includes FPS
19:10:02 <b_jonas> it's not perfect, but it's usable
19:11:56 <int-e> Oh let me find that
19:13:28 <int-e> somewhere between 14 and 15.
19:14:24 <int-e> Ah, the time per tick is more relevant, that 33ms. So... 1 second takes 2 seconds then.
19:14:28 <b_jonas> btw the funniest unused logic is the one that could force the freeplay factory to continue producing the previous freeplay shape even after I leveled if the museum separator hasn't managed to separate any shape yet. I don't think that ever happened or could happen, because the museum separator is fast and leveling is slow, but I can't prove that it can't happen so adding logic was easier
19:17:09 <int-e> Interesting. I guess a transistor can be fed its own output and thus keep it alive.
19:17:36 <b_jonas> yes, that's how you make a memory cell
19:18:01 <b_jonas> in theory you could do it with one of those virtual shape thingies instead of a transistor, but a transistor is easiest
19:18:07 <int-e> somehow, I have not needed one yet
19:22:12 -!- user3456 has joined.
19:25:43 <int-e> (tick times are relevant because I think when I got those ~40s numbers, apart from my factory being closer to the hub, the ticks were still managed at their nominal rate (so 16ms))
19:42:09 <zzo38> If I have audio being generated at a higher sample rate, which is a integer multiple of the output sample rate, then how should the signal be reduced to the output sample rate? Would a table be used of numbers for the current and previous output, and if so then how to know what numbers to use?
20:06:21 <int-e> b_jonas: on the plus side I actually have a better monitor now
20:07:11 <int-e> (the other one was 12 years old, and display technology has improved quite a lot in that time)
20:23:40 <esolangs> [[BunnyBell]] https://esolangs.org/w/index.php?diff=101912&oldid=101908 * PixelatedStarfish * (-20) /* Structs: Defining a Data Type */
20:45:44 -!- chiselfuse has quit (Remote host closed the connection).
20:45:59 -!- chiselfuse has joined.
20:47:11 <b_jonas> int-e: well yes, a better monitor is what came out of my old monitor dying too. but I had to pay a ton for it.
20:47:59 <b_jonas> more on the plus side, I just got a better monitor at work a few days ago. it's larger and can actually do 3840*2160 resolution, though I don't really need the larger resolution.
20:48:20 <b_jonas> I'm not sure yet if I want to use it on full resolution or 1920*1080 on the longer term.
20:49:02 <b_jonas> this one is rare because almost all the monitors in the company are the same kind, but the boss was kind enough to give me the larger one that he used to use before he bought an even bigger one
20:49:11 <b_jonas> (for use at the company that is; I don't own it)
21:05:21 -!- chiselfuse has quit (Remote host closed the connection).
21:05:37 -!- chiselfuse has joined.
21:08:01 -!- chiselfuse has quit (Remote host closed the connection).
21:10:44 -!- chiselfuse has joined.
21:56:46 -!- chiselfu1e has joined.
21:57:10 -!- chiselfuse has quit (Ping timeout: 268 seconds).
22:05:37 <esolangs> [[Special:Log/newusers]] create * PartehTheEsolangDev * New user account
22:09:15 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=101913&oldid=101882 * PartehTheEsolangDev * (+188)
22:13:38 <esolangs> [[User:PartehTheEsolangDev]] N https://esolangs.org/w/index.php?oldid=101914 * PartehTheEsolangDev * (+56) make my user page
22:14:22 <esolangs> [[User talk:PartehTheEsolangDev]] N https://esolangs.org/w/index.php?oldid=101915 * PartehTheEsolangDev * (+20) Created page with "this is my talk page"
22:17:12 -!- Cale has quit (Remote host closed the connection).
22:18:38 -!- Cale has joined.
22:33:08 <esolangs> [[Special:Log/newusers]] create * * New user account
22:39:40 -!- Thelie has quit (Ping timeout: 268 seconds).
23:13:33 -!- slavfox has quit (Ping timeout: 268 seconds).
23:15:57 -!- slavfox has joined.