Post AVBON4lUQaKBvvKaSO by SRAZKVT@tech.lgbt
 (DIR) More posts by SRAZKVT@tech.lgbt
 (DIR) Post #AVBON2WAmYssxq9KIy by SRAZKVT@tech.lgbt
       2023-04-30T14:58:39Z
       
       1 likes, 0 repeats
       
       of all the cursed things ive ever done / tried, modding a server with bad ram to hope quantum tunneling would flip enough bits to get an unobtainable item in a minecraft server is probably all the way up there
       
 (DIR) Post #AVBON3hYNja8dQTvgO by SRAZKVT@tech.lgbt
       2023-04-30T15:20:12Z
       
       0 likes, 0 repeats
       
       i should probably explain this shouldn't iwelp, we go back to 2020, when i was still a member in HammerSMP, we were in the process of making the End Of Light process public, and we got asked question by oreo "the madman" lamp about it, it drifted off, and at one point we started talking about theoretical ways bedrock could be obtained as an item (in version 1.15.2, latest at the time). obviously we talked about what was figured out previously, such as piston replace (patched in 1.9), silk touch (patched in 1.14), and finally, falling sand. Falling sand is very interesting since there are two check for block data at position, i will not go in details, but basically, if we have sand in the first check, then we change the block to any other, and the second check happels, we will get a falling sand version of that block. if you've played minecraft, you probably know falling sand are very easy to transform into an item. 1/???
       
 (DIR) Post #AVBON4lUQaKBvvKaSO by SRAZKVT@tech.lgbt
       2023-04-30T15:27:11Z
       
       0 likes, 0 repeats
       
       the issue is, there is basically nothing in between the two checks that allow us to hook in and get bedrock placed in. that is already the case in 12, and in this version, it has since (some time in 2021 / 2022) been solved using multithreading (with beacons and stained glass, ill link a vid about this later). The issue is. There is basically no way to place a block of bedrock in place of the sand in 1.15.2. That is where oreo comes in again. "what if we corrupt it ?" he says. obviously, everyone wonders how, and that's how he starts talking about quantum tunneling, and how if we hammer calls to the physical ram addresses near where the sand (to be bedrock) block is, there is a non zero chance that it gets transmuted into bedrock. now, how to do a lot of calls to specific memory addresses, in minecraft vanilla survival ? well, we can handle hitting the address properly later, and first just hit a lot of things, as should a hammer be used. 2/???
       
 (DIR) Post #AVBON5tKEwBdQW0MJE by SRAZKVT@tech.lgbt
       2023-04-30T15:35:05Z
       
       0 likes, 0 repeats
       
       well, we can just use refstone dust. having 2 pieces of redstone dust next to eachother will cause a *lot* of block updates in the world chunks. The issue is : how do we know we are hitting the right places ? that is where jvm internals come into play. the JVM has a custom way to deal with memory being staggered all over the place, and that is : object references are references to an internal map, not pointers. references are constants, and the plages of memory with our delicate little objects get moved to a lower point so there is more contingent memory for the jvm to allocate. oh also every jvm program is basically just one massive linked list, with references to classes everywhere. all objects and arrays are references. so : all the objects are moved to nearby places in virtual memory for us. 3/???
       
 (DIR) Post #AVBON71A3I34v6g8A4 by SRAZKVT@tech.lgbt
       2023-04-30T15:42:53Z
       
       0 likes, 0 repeats
       
       but that is just virtual memory, not physical yet. and we have even less control over where the virtual plages get mapped in ram than with where references point to in virtual memory. We have two choices : run on an operating system where the way physical memory is mapped is completely deterministic and predictable, or just stay with the linux machines, and try to get all the memory plages in the same place. Before we could figure that out, Kayleigh (my gf, absolute genius) informed us of a flaw in our plan. ECC ram. This is specifically made so what we were trying to do would specifically not happen. Thus is memory made to be resistant to quantum tunneling by being self reconstructing. If we wanted anything to work, we would need to find ram that isn't ecc ram. obviously, you should never use non ecc ram at home (or anywhere really) as it is a massive security and everything issue. 4/???
       
 (DIR) Post #AVBON8CBfmSkZaqRzE by SRAZKVT@tech.lgbt
       2023-04-30T15:47:24Z
       
       0 likes, 0 repeats
       
       using non ecc ram would mean the whole system would be probably about as stable as I am straight, anything could fail from the kernel, to the c library, to the opengl driver, the disk driver writing the save, the jvm itself, and obviously minecraft. and obviously everything else too. After looking at that, pretty much everyone just decided to give up, as it would just not be worth it, and would likely be easier to find another way, or wait for mojang to put a new exploit in the game. 5/5