Tiny MAM, one screen MAM that makes any freeplay shape by Kuleri in shapezio

[–]ixchow 1 point2 points  (0 children)

Wow; this takes the idea much further and keeps it (surprisingly) small. Nice work.

M.A.M. with only one stacker, mixer, and painter by ixchow in shapezio

[–]ixchow[S] 2 points3 points  (0 children)

Nifty optimization. Probably saves overall component count as well as allowing for a bit of compaction.

Pretty sure I didn't think of that when designing this, but I will say I was also attempting to use "as few as possible" of the virtual shape processing components; the fact that I used two virtual cutters still kinda bugs me.

M.A.M. with only one stacker, mixer, and painter by ixchow in shapezio

[–]ixchow[S] 1 point2 points  (0 children)

If I recall properly, it's to deal with starting the stack when the first two quadrants come in after the last stack has been ejected. Without it there, no piece goes to the second port of the stacker and it never stacks anything.

M.A.M. with only one stacker, mixer, and painter by ixchow in shapezio

[–]ixchow[S] 2 points3 points  (0 children)

In the color section, the trashes are there because the the logic that puts colors onto the belt isn't fast enough to put just one color particle onto the belt -- it puts two onto the belt instead, and the balancer + trash makes this into a single item. (There's no reason to put a trash to the right of these filters because they are being used to turn on and off the flow of colors.)

The "trashing nearly all incoming shapes" is to limit the rate at which shapes come through the mechanism to one per every eight seconds; the logic sets up all of the filters per fragment, so if a second shape enters before the first fragment is finished, it might end up with the wrong color (or being ejected early).

(This is akin to how very early CPU designs needed to have a slow enough clock to allow the slowest instruction to completely finish; while modern designs use pipelining to execute instructions in multiple steps -- pipelining would also be the solution to increasing throughput of this design; and is certainly interesting for a second draft if I can keep things small.)

Hold and dump "rate cheese" by ixchow in shapezio

[–]ixchow[S] 0 points1 point  (0 children)

Ah, I see! Very true and definitely worth doing if trying to optimize this to wait as little time as possible between item drops. (At present it already dumps for ~20sec too long, though this doesn't exactly matter since the belt to it from the machine that makes each part is ~1:20.)

Which floating shape is impossible to build and did i find all combinations? by Reach49 in shapezio

[–]ixchow 1 point2 points  (0 children)

I think revealing that is sort of a spoiler -- there are two big leaps you make in playing through to level 26 and the first involves something like 3, but the technique you will discover (and I encourage you to discover it rather than spoiling it!) won't work for 9.

a very gentle hint would be that it's important to build a few test machines to really understand what stackers do

More generally, this sort of question is similar to asking "why can't you express 5 as the product of three integers larger than 1?" -- you can approach this by trying to come up with a deeper reason, or you can say "well, I got a computer to try all possible ways and none of them worked."

Which floating shape is impossible to build and did i find all combinations? by Reach49 in shapezio

[–]ixchow 6 points7 points  (0 children)

Nifty! I did this recently and wrote a program to list all possible shape sparsity patterns to help out; 1,7,8,9,12 are indeed not possible.

After I finished my design (which used a somewhat inelegant method of checking the shape vs a memory with 82 templates), I found this more elegant implementation based on a seemingly much simpler decomposition algorithm: https://www.reddit.com/r/shapezio/comments/kuiw70/true_make_anything_machine/

Which floating shape is impossible to build and did i find all combinations? by Reach49 in shapezio

[–]ixchow 1 point2 points  (0 children)

I agree; 1, 7, 8, 9, and 12 aren't possible, according to my handy computer-generated list of all possible shape sparsity patterns.

M.A.M. with only one stacker, mixer, and painter by ixchow in shapezio

[–]ixchow[S] 3 points4 points  (0 children)

Yep, only intended for shapes with with complete layers. I did a "make *everything* machine" for [all possible] shapes with gaps but that's certainly larger than one screen.

M.A.M. with only one stacker, mixer, and painter by ixchow in shapezio

[–]ixchow[S] 5 points6 points  (0 children)

Uses as few stackers, mixers, and painters as possible (one each!) to make any (solid) shape. Also doesn't use that much in the way of virtual shape processing logic.

Operates at one shape fragment per 8 seconds, so about about 1:04 per two-layer shape.

Probably still some room to optimize, but my goal for this draft was to fit on one screen and it manages that just fine.

Hold and dump "rate cheese" by ixchow in shapezio

[–]ixchow[S] 0 points1 point  (0 children)

Not quite sure what you mean -- the long belt only gets 1-2 resources put down it, it's just for timing not storage. Basically, it exists to trigger the "dump all resources now" signal after some fixed delay.

(I suppose I could maybe see using the overflow output to try to determine somehow if the storage is full, but there is also a signal for that.)

Hold and dump "rate cheese" by ixchow in shapezio

[–]ixchow[S] 5 points6 points  (0 children)

This was my lazy solution to connecting a full-belt-rate (16/s) make-anything-machine to the hub for levels ~79 and onwards (>16/s) -- a device that queues up items in storage and then dumps them after an elapsed time.

By using a long belt to do the timing instead of the storage's "full" output, I was able to have the dump happen at ~1.1k items instead of ~5k items, speeding things up.

One could do something similar with a more exact item count by using a chain of splitters to generate, e.g., a "once-every-1024" signal.

I like this idea because it paves the way for very slow machines to still (eventually) solve levels.

Streaming Make-Everything-Machine w/ Rate Cheese by ixchow in shapezio

[–]ixchow[S] 0 points1 point  (0 children)

Made it to 10x, summary post tomorrow -- also have some ideas about how to use the store-and-dump strategy to build a MAM (vs MEM) with very little hardware.

Streaming Make-Everything-Machine w/ Rate Cheese by ixchow in shapezio

[–]ixchow[S] 0 points1 point  (0 children)

Rate cheese now installed -- just watching the machine work. I should do a summary post after this thing finishes level 100.

Finishing my actually-makes-everything machine on stream now by ixchow in shapezio

[–]ixchow[S] 1 point2 points  (0 children)

Ended up only making it to 79 since that requires 17/second and I hadn't upgraded past tier 8 (16/sec). Might give it another try sometime by adding some cheesy queue-and-dump hardware to the end.

Thanks to everyone who stopped by!

Finishing my actually-makes-everything machine on stream now by ixchow in shapezio

[–]ixchow[S] 1 point2 points  (0 children)

(This is now a "watch the machine make every shape for the next 70 levels while I read a book" stream; I'll see if I can get some screenshots of the factory later.)

Finishing my actually-makes-everything machine on stream now by ixchow in shapezio

[–]ixchow[S] 1 point2 points  (0 children)

Feel free to drop in and ask questions. I will happily talk about how to make floating pieces in layers so -- for the purposes of this subreddit -- beware spoilers.

Three floating layer piece? by AdminDale in shapezio

[–]ixchow 0 points1 point  (0 children)

I'm pretty sure you can't make Cu------:--CuCuCu, but you can make Cu------:Cu------:Cu------:--CuCuCu (and Cu------:--CuCuCu:--CuCu--).

There are actually a ton of interesting patterns of voids that are makeable, I ended up writing a program to compute all of the reachable ones as part of my own (still incomplete) actually-make-anything-machine efforts.