enbydInitial proof of concept with @lntricateuwu. Still have to make the wiring better and get it to reset. *please check pinned comment for updates* Extending the stuff XCOM, Punchster, Myren, and 2no2name were doing here: youtube.com/watch?v=r4-oKWbAIgc (check here for written description of the mechanic) Based on block layout by @JoaBro to make it compatible with smaller entities. Based on concept by @bldhf
Instant Entity Conveyor for TNT and Minecartenbyd2022-12-22 | Initial proof of concept with @lntricateuwu. Still have to make the wiring better and get it to reset. *please check pinned comment for updates* Extending the stuff XCOM, Punchster, Myren, and 2no2name were doing here: youtube.com/watch?v=r4-oKWbAIgc (check here for written description of the mechanic) Based on block layout by @JoaBro to make it compatible with smaller entities. Based on concept by @bldhfUnlimited Obsidian Platform Deletion [Works: 1.13-1.20.6][Silly String tripwire disarming][Java]enbyd2023-03-01 | Had a burst of un-lazy and finally made a sort of "how to" video to demonstrate a cool thing that @lntricateuwu and I made a few months ago, around the time I uploaded the video on silly string portal slicing. In the meantime I also made the tripwire resourcepack that you see in the video, and it is available for download here: www.mediafire.com/folder/w2p6txq4v240s/silly_string_resource_pack (youtube will no longer make this link click-able, for some reason, sorry).
The pattern of tripwire you can see in the video thumbnail and at the end of the video is oriented so North is towards the top of the screen, and the tripwires that look trimmed are the disarmed ones. To disarm tripwire, left click on it with shears while it is in the "attached" state.
Version compatibility note: In and before snapshot 20w20b (i.e. before 1.16), the obsidian generation order is different. However, it is still consistent, and the same tripwire pattern can be used, but must first be rotated 90 degrees anti-clockwise -- so instead you should set up the pattern so that West is towards the top of the screen.
If you're not familiar with the concept of "silly string", or using disarmed tripwires to prevent the placement of blocks: the gist is that tripwire can be "disarmed", or put into a state where it no longer triggers the tripwire hooks. However, it was implemented in a silly way, and now in certain cases attempting to replace disarmed tripwire with another block will basically prevent that new block from sticking around, and instead the tripwire stays.
The pattern of tripwire in this video is special because it fully resets to its initial state when it is activated by the obsidian platform attempting to generate, meaning it can be reused right away -- even within the same gametick. In other words, it can be used to send as many entities as your computer/server can handle through the End portal every gametick, without the obsidian platform ever generating.
The reason this works is that when the obsidian platform is placed, it goes block by block, in the same order each time. So, we made a pattern that takes advantage of that placement order and pre-arranges the blockstates so that the tripwire hooks and tripwires are always in the correct state(s) to replace the next block in the sequence. As a sidenote, this is just one of many 5x5 tripwire patterns with this "self-resetting" property, but it was the first one we found, so it's the one that gets published.
The very first iteration of this concept (featured briefly at the start of intricate's video youtu.be/d5laSjE3QPA ) is a simple checkerboard pattern of armed and disarmed tripwire, with the disarmed states in the corners, and alternating based on that. The big downside with that version is that you need to wait for the tripwire to reset on its own before any more entities can go through the portal. After some picking away at the problem, we made another working version which could handle 1 entity every gametick, but it relied on fluid destruction to reset the tripwire states, so it could never be faster than one per gt, and it needed to already be running in order to work. It was an exciting step in the process, but not worth sharing here because the version in this video is much more robust and practical. If for some reason you're still interested in the other things we tried, just ask, and I'll share details eventually.Update-supression-less sliced portal [Works: 1.13-1.21.1+][Silly String tripwire disarming][Java]enbyd2022-11-01 | Using a funny feature of tripwires (shear disarming) to make things disappear again. See intricate's video where we mess with the same mechanic in The End: youtube.com/watch?v=d5laSjE3QPA
Does this work in [X] version? - I keep the title of the video updated with the range of compatible versions. This specific portal slicing test was performed in 1.13.2, 1.17.1, 1.19.2 (this video), 1.19.3, 1.20, 1.20.1, 1.20.2, 1.20.5, and 1.21.1 and they were all successful. These (and other) tests indicate that silly string works exactly the same for *everything* 1.13+. If you've tested it in a version not listed here and it works, leave a comment listing your game version and saying it works.
Why is the video quality so bad? - Bad OBS settings that I didn't notice until after recording. This was just supposed to be a simple proof of concept, not a well thought-out tutorial. Definitely didn't expect many people to be using it for reference. I have considered making a clearer re-recording of the process so that it is easier to see what is going on, but I'm not sure if it would have the same reach as this one... let me know if you need a clearer recording for accessibility reasons and I will do it as soon as I can.
How does this work? (String edition) - String is silly, and under certain conditions when a block replaces some string, that string can replace that block with itself! I explain a bit more about silly string in the description of this video: youtube.com/watch?v=UK0ITdepa24 You can also do more than just remove the base layer. Give it a go yourself and see what funny things you can make.
How does this work? (Portal edition) - When a player goes through a portal and there are no portal blocks in teleport range, and no "preferred" places for the game to generate a portal, a portal will be forced to generate at the search point, even if that spot would not typically be a preferred location (You may have noticed this before when the portal generates in the air / embedded in the ground with a small platform on either side). This behavior makes it possible to force a portal to generate inside the silly string setup and get our desired results. The "search point" is in the destination dimension, and is chosen by taking the player's exact position before being teleported and scaling up or down by 8 to match the destination dimension, and then rounding that down to the nearest block. The "search range" for generating a portal is a 33x33 column from y0 to y128 with the search point in the center of the column (no matter which dimension you are going to). The forced portal position is the search point (x, y, z). But if the search point is below y70, the forced portal position is directly above the search point (x, 70, z).
How do I remove "preferred" portal generation spots? - Preferred spots are, generally speaking, flat strips of blocks in the footprint of a portal (1x1x4), and in the same axis as the portal you are entering. You can remove a preferred spot by making the floor there uneven, for example by adding extra blocks on top (being careful to not introduce any new preferred spots in the process). It also works to flood a spot with lava or water. Any preferred position inside the search column will be taken before the forced portal position is used. A forced portal will generate only once the condition of "no preferred spaces" is met.
What method did you use in the video? - I went through the nether side portal to generate one in the overworld. If it was in a cave, I broke the portal and flooded any part of that cave that was inside the search column that I could get to by walking. Then I went back to the nether via another portal that was just out of range and repeated this flooding/blocking process until it used the forced position. I did it this way to see if it would be viable to do it similarly in survival, without using any external tools or anything that lets you locate caves ahead of time, and without needing a fully-dug perimeter. This is also why I did it in a large ocean, so that many of the caves would be flooded, reducing the number of places I had to block manually. Sometimes it works right away because there are no dry caves in range. While flooding does work, I would recommend using the "make the floor uneven" method, since water makes it very hard to move around unless you have depth strider boots, and lava is ... also difficult to navigate.
Does the minecart matter? - Yes, kind of. I'm using minecart dismounting on a powered activator rail to set my position in a repeatable way, but you can align yourself on anything as long as it is consistent.Minecart Desync Demoenbyd2022-03-24 | Minecart positions are interpolated on the client over several ticks, presumably so the motion of the cart appears smoother than it otherwise would. This can present some technical challenges, but there are also some workarounds.
This is a brief demonstration of the client-side minecart interpolation/desync phenomenon, as well as a carpet script that CommandLeo wrote that lets you visualize the exact server-side location of carts (as well as some other helpful info that I'm not demonstrating here).