G’day ladies and gents cubic meter here welcome to the wonderful world of wireless redstone i am of course talking about the process in which two redstone machines can communicate with each other over some arbitrarily long distance without any physical connection between the machines for example if i hit this button right here We can see this lamp will light up even though there’s no physical connection going from this button to that lamp this form of wireless redstone is based upon a very specific property of item entities which was discovered by none other than to know to name be sure to Check out his video on the topic to learn exactly how he discovered this extremely ambiguous mechanic in fact when he made his original discovery i was extremely privileged to be able to work with him on some of the very first wireless redstone prototypes he taught me how to assign communication channels Using repeaters and comparators and i taught him how to make compact and modular wiring however these early prototypes tended to come with a lot of issues such as interference and unintended behaviors and so i finally decided to sit down and develop a rigorous foundation for the field of Wireless redstone in this video we will go over the mechanic and different terminologies to both understand and apply walls redstone or useful contraptions the field of wilds redstone is a very complicated topic the establishing names of things is a great start allowing people to communicate and collaborate as they build upon the Foundations set in this video in order to begin understanding wild’s redstone we first need to understand subtic mechanics in minecraft events such as this piston extending are processed in steps and each one of these steps is known as a game tick exactly equal to 1 20th of a Second this means that one game tick is equal to 50 milliseconds making the free game tick extension of this piston exactly equal to milliseconds events that happen in different game ticks are very easy to visualize because you can physically see the difference in time between things like these pistons extending However what then happens if two mutually exclusive events occur in the exact same game tick if we look at these observers right here each observer has two game ticks of delay meaning we have one two three four game ticks before this piston starts extending but notice that we have the same delay For both of these pistons meaning both of these pistons will start extending in the same game tick this can easily be visualized by pulling the pistons upwards and powering them at exactly the same time but then what happens if both of these pistons try to extend in the same game tick Well if one piston extends then the other piston cannot extend how on earth does the game decide which piston should extend well if we power this redstone wire with some observers we can clearly see that the first piston to extend is also the one that’s closest to our Power source however i should note that with redstone wire this is not always the case redstone wire can be quite random in the way in which it orders block updates such as pistons extending but with this simple case of a straight wire you can clearly see that the closest Piston is the one that gets chosen to extend on this channel i’ve already introduced how rails will in fact reverse this order so if i power this side the farthest piston will extend first so what we can infer from these two tests is that the game has a specific order in Which it processes block events from different redstone components let’s then have a look at a circuit like this where we have repeaters and comparators after our power sources both of these tile sets have exactly the same amount of delay so we have two game ticks in the comparator and two game ticks from The repeater meaning we get four game ticks for this tile set and four game ticks for this tile set the order of these observers will be dependent on this rail however if we go ahead and power both of the observers in the same game tick we will see That is the piston that is entirely powered by repeaters that always powers first this is because this tile set completely resets the order from these observers this is because in order to keep track of what things need to happen with redstone the game will make a list of everything That needs to happen and the amount of time before that event happens this repeater and this comparator are scheduled to power two game ticks later by these observers in any situation the game will schedule updates for a repeater before they schedule the updates for a comparator this means our tiles set with repeaters Always has priority over our tile set with a comparator this is known as tile tick and it even applies to repeaters with different delays if we have a look at these tile sets we can clearly see that we have one two three four game dicks before this piston And one two three four gain ticks before this piston once again no matter which way that we power this we always see that piston powering first this is because when the game is creating the list of components that need the power this repeater is scheduled to power four Game ticks after this observer however this repeater is only scheduled to power two game ticks after the observer meaning after two gametes have gone by we then add another repeater to the list which goes in behind this repeater that has already been scheduled the result is that the longer delay repeater always Has a higher priority this allows the creation of something known as a tile set here are the two combinations of tile set that we can get for two repeaters of two game ticks and four gametex delay no matter how i power this rail here we will always see These two lamps turning on in the same game deck however the order in the same game tick is dependent on the tile set and this tile set will always be scheduled to power before this tile set adding in more components gives us more combinations of tile sets And the amount of different tile sets that you can have scheduled in the same game tick goes by the factorial of the number of different components you can compose that tileset from the factorial is simply a mathematical expression in which the factorial of any number is the multiplication of every number That precedes it including that number so with three different redstone components we are able to obtain three factorial combinations which is equal to exactly six different combinations making use of all four variants of a repeater we can get four factorial combinations or 24 different tick phases within The same game tick we can take this even further adding in a comparator as a resident component so that we now have 120 different combinations so how do all these tile sets correlate to wireless redstone by using these tile sets we can obtain an extremely precise ordering for Any type of event that we want to happen inside the game what i’ve got here is a bunch of redstone components to demonstrate how we create item entities in a specific order if i trigger this entire system what it will do it will tick freeze at the moment that It’s about to remove these blocks below the items now this is where the item entity comes into our redstone every single one of these item entities has been created in a very precise order defined by these tile sets but what’s important to remember is that all of These items were created in the exact same game tick if i go ahead and tick step what you’ll see is some items will begin falling immediately here you can see a very clean modular force separation of the items falling looking from a distance as i unfreeze this modular full separation becomes Extremely evident this separation that we can see between the items is based upon an important optimization that merging has added to item entities sitting on the floor instead of checking whether there is a block underneath them and whether they can start falling every single game tick an item will only check for this Every fourth game tick in order to create the illusion of continuous falling between item entities what they will do is separate the phase in which they check for the block underneath them meaning that every fourth item will start falling in the same game tick which you can clearly see When i start untick freezing so by using unique tile sets we can very precisely control the order in which we create item entities in the world and this process is done globally for an entire dimension this means if you have a one configuration of tiles in one location And another configuration of tiles in another location or defining the phase in which items are dispensed into the world these machines can communicate to each other by the order in which items are falling so what we are literally doing is shooting the items out of droppers on top of these trapdoors And then opening both of the trapdoors at the same moment and then seeing which phase the item entities start falling at which point they’ll merely be picked up by the hopper and then be detected by the comparator and that way we can very precisely compare the phase in which the items Begin to fall so how do we actually translate the order of item entities being shot out of droppers into a message which can be sent to another machine somewhere on the server but what you need to do is develop a protocol these resource blocks represent the phase which repeats every Fourth game tick each one of these wall blocks represents an item being shot out of a dropper for each wall that sticks up a block we have an item that is being measured so what we have is the tile set for orange like so this one will have the highest priority And then we have it powering this rail right here we have the dropper which is dispensing the item that we measure in different positions of the rail we can also have filler items that can change the phase of other items that get dispensed down the line so we Have the item being measured and then two filler items giving us the phase diagram for our orange the magenta is given a tile set with a priority after our orange our magenta will have two filler items dispensed before the item that we measure and then another two filler items Dispensed afterwards giving us the phase diagram for our magenta somewhere else in the world we also have the module which is represented by this blue and yellow wall this particular machine features a clock which will self-synchronize over any distance because in order to actually communicate first we need to actually make sure That our tiles are being powered in the same game tick if our modules are not synchronized as in they are not being powered in the same game tick their phases will look like these two sets and what you can clearly see is that the item that we measure for Orange is going to start falling in a different game tick to the item that we measure for magenta the same is also true for blue and yellow what this actually means is that we have given orange the highest pearly tile set we then give blue the next highest priority tile set Then we give it to magenta and then we give it to yellow if these modules happen to power in exactly the same game tick our phase will look like this where we have the orange always power first on top of the netherright block it will push over the blue they have its Item measured on top of the netherite block the magenta would be pushed over to the netherright block and also the yellow this means if they happen to align all of the items will start falling in exactly the same game tick that allows these machines to actually detect if they randomly coincide So if i was to disrupt their clock like so there we go the modules have now desynchronized and this one will run on a 32 gauge clock while this module will run on a 31 game tick clock sooner or later these modules will happen to randomly coincide And at that point they will know that they have synchronized and all of a sudden they both switch over to the same 32 gauge clock and now they are perfectly synchronized and with both modules perfectly synchronized i am now able to send a message by activating this system right here There we go the message is sent almost instantly and here’s the really cool thing you can experiment with different protocols for sending messages for example this other part of the module is actually what sends the message this system is simply to synchronize both sides of the telemetry i need to Use this protocol for the self-synchronizing modules because i want to make sure that their clocks are all synchronized meaning the items that we need to detect all need to fall in the same phase when i’m sending the message however i don’t need them to be falling in the same game tick meaning That i can use a different protocol that uses less items this protocol is very similar but only uses two items in each of the modules and the coolest thing about this protocol is that not only does it send the message it also sends a confirmation signal back To the transmitter to confirm that the message was sent over here i have a different system which uses a different protocol to only transmit signals now in order to get around this whole complicated synchronizing fiasco if we are transmitting signals in the overworld we can develop a very simple clock which Can synchronize over any distance in the overworld daylight sensors will update in the same game tick everywhere meaning if i go ahead and activate all of these receivers all these daylight sensors will be in sync with each other and so i can go over to the transmitter select any one of the colors And transmit to that color because i’m not receiving a confirmation signal i can use a much simpler protocol here in the modules i simply dispense two items and they start falling in different game ticks these two items in the receivers can be represented on our phase diagram by these two blocks right Here when i trigger the transmitter it will then shove three filler items in between them forcing the items in the receivers to align in the same phase this is how we are able to transmit a signal to a particular module so what we do is we grab our ordered tile set Our receivers will have the tile sets on the outside then our transmitter will have the tile set on the inside so that means that our receivers will have the items on the outside transmitter will then shove the filler items on the inside these phase diagrams can be very useful for defining Properties about different protocols for example what if i was to add another white receiver somewhere else in the world well this means that the protocol would have an item like this then another item like this and then two more items representing our two modules if i was to then Activate the transmitter in between these we would see one two like this the free filler items from our transmitter then the two reference items from our receiver you can clearly see now that if i was to add another white receiver somewhere in the world our protocol breaks down because now This first item from the first receiver is no longer aligning with the second item from the first receiver and the same for the second receiver so i’ve just got a schematic ready for a second receiver we can check to see that with only one receiver it works perfectly Fine if i however go ahead and add the second receiver like so now if i try and send a signal on the white frequency it won’t work at all from this example you can clearly see how the protocol defines what you can actually do with a particular wireless redstone machine This makes designing the protocol one of the most important steps before you start with some really clever wireless redstone we can make some really powerful tech such as this binary encoded enderpearl stasis chamber i had some help from a player named jawabro who designed this amazing protocol with Some redstone trickery in the receivers jabro managed to turn the modulo 4 that we get by default into a modular 2 making this perfect for sending binary signals in the receiver we have six different channels representing our bits as well as a single reference channel at All times every one of our bits is constantly being compared to our reference channel as you can clearly see lies on the diamond block while everything else sits on the nether right block by default however if we want to target a particular channel such as the red What we can do is from our transmitter dispense an item after the red has fired and this will shift all the other colors across as well as our reference item at the end which now lands in the same phase as our red channel if we want to select a Different channel such as the blue what we need to do is dispense the channel before it such as the red as well as the channel for blue meaning everything gets shifted across such that the reference item now lands in the same phase as our blue channel the best part about this protocol is That you can add as many receivers as you want on the same network and they can all receive the same signals from any transmitter and so this is what i have right here i have three different receivers as well as three different transmitters all with their own enderpearl stasis Chambers if we have a look at our tile sets we can see we have the tartic priority being set by these repeaters and then the network is then set by all of these repeaters so for all receivers that you want to be on the same network you want these repeaters to be exactly The same and if you want a receiver to be on a different network all you need to do is change these repeaters slightly and then you have a new network inside the binary decoders i have assigned this receiver to a binary value of 1 right here then over here we have two bits Dedicated to the particular slice of enderpeal stasis chamber so with this particular network we are capable of storing 15 different locations and on each location we can have one to four ender pearl stasis chambers i just go ahead and activate the clocks for all of these receivers I can go down to the interface i can select location one i can select status chamber two if i hit this note block it should now take me straight there there we go we’re in the second stasis chamber of our first location let me just put the independent back in I can now go to this interface select another destination hit this note block and we should be teleported straight over there perfect so clearly you can see how powerful wild western can become with some clever mechanics if you want to have a play around with wiles redstone yourself i Will be living a world download of this world down the description however a note of warning in single player the whilst redstone can be unreliable this is because for some reason in single player the client being present and actually loading an area can cause items to randomly be Reassigned in the entity list this means if you’re trying to use wireless redstone in singleplayer and you see some unexpected behavior it is likely because your client is causing items to get rehashed on the multiplayer server however the wireless telemetry should be perfectly reliable for now that will be all from the Wonderful world of wireless redstone there should be plenty of new protocols and uses to discover for this emerging field of redstone and if you like technical content like this feel free to subscribe it will notify you about any future videos i post and show youtube that people do in fact enjoy the Technical side of minecraft thank you all very much for watching and i will see you next time Video Information
This video, titled ‘The Wonderful World of Wireless Redstone’, was uploaded by cubicmetre on 2022-01-14 11:19:06. It has garnered 285448 views and 15993 likes. The duration of the video is 00:24:08 or 1448 seconds.
It’s about time we formalise the foundations of wireless redstone to make the concept more accessible to the wider technical community. In this video we build conventions for wireless redstone from the ground up to obtain an understanding not only of the mechanic itself but how to apply and communicate the terminology of the subject.
Wireless Redstone Discovered by @2No2Name: https://www.youtube.com/watch?v=hr-twzxs6FM
World Download: https://www.mediafire.com/file/wuvecj872bqzjbi/Wireless_Redstone.zip/file
Wavetech Server Discord: https://discord.gg/SR6q7sC
Mods that I use: https://github.com/Fallen-Breath/tweakermore https://masa.dy.fi/mcmods/client_mods/?mcver=All https://github.com/gnembon/fabric-carpet https://github.com/Andrews54757/itemscroller-crafting-fix
Second Channel where I post my Music: https://www.youtube.com/channel/UCU__v62MRRYVO8IRDKh0adQ