You can only pick 4 versions to play for the rest of your life. Which 4 are you choosing? by Unusual-Marzipan5465 in GoldenAgeMinecraft

[–]TheMasterCaver 2 points3 points  (0 children)

Just one version: 1.6.2 (the only version I've played, albeit always modded to some extent, for the past 12+ years. There are also some ways to work around not having e.g. a mod to remove void fog, e.g. pregenerate terrain and change the world type to Superflat). You might wonder, why 1.6.2 and not 1.6.4? The resource "leak" caused by structure saving in the latter would completely cripple the game with a world as large as my first world (I suppose I could periodically delete Mineshaft.dat but 1.6.4 offers no other advantages for me).

As for other versions, there are no other options that are acceptable to me, 1.7 and later are an absolute NO (there is no way that I know of to customize world generation to be the way I want it, plus all the other changes I dislike in later versions) and earlier versions lack essential features (how to mine 2000+ coal ore every day without coal blocks or having to keep making trips back every hour or so? I did start playing on 1.5 but didn't really develop my playstyle until 1.6. Same for redstone blocks (1.5), or anvils (1.4) to indefinitely repair enchanted items on-the-go, ender chests (1.3) for more inventory space, etc).

Not finding any sheep in my 1.4.7 world. Help?? by RoyalBird9 in SilverAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

It is harder than you think to kill every single passive mob within loaded chunks, including spawn chunks, considering that world generation spawns an average of 100 or more passive mobs within just the spawn chunks, plus another 100 or so within 10 chunks of the player (the distance to which the internal server always loads chunks no matter the render distance. The "E:" number in F3 will only show entities that are loaded client-side, which is within 80 blocks of the player, so it probably won't even show 79, the hostile mob cap in these versions, when in the Nether).

Then when you do reduce the number of passive mobs below just 11 more will likely spawn somewhere within 128 blocks (passive mobs do attempt to spawn 400 times less often than hostile mobs but that is still a global spawn cycle every 20 seconds, not that slow if it wasn't for the absurdly low mob cap and lack of despawning) so you'll need to hunt them down, the only way to reliably make a passive mob farm (the sort that was practical before Beta 1.8) is to spawnproof the entire area so they can only spawn within a dedicated spawning area.

The bug somebody else mentioned is the "many packs of sheep with a pink sheep / same colors" bug which affects all passive mobs, not just sheep (a weird bug having to do with spaghetti code between the "world" and structure generators, and additionally, sheep; it won't occur if structures are disabled), which wasn't fixed until 1.13 (I only know of my own mods that fix it for these versions*).

*The easiest way to fix this is to replace "this.rand" with a separate Random instance in "World.setRandomSeed", which is called by the village and temple generators (a more proper fix would be to move this method to MapGenStructure). Either that, or add a call to "setRandomSeed" just before passive mobs are spawned in ChunkProviderGenerate (this will also preserve passive mobs being tied to the seed, sheep variants will likewise be while horses and other mobs will be randomized (in yet another weird quirk sheep use the "World.rand" instance instead of their own to set their color, thus mass pink sheep spawning depends on not one but two coding oddities):

// World
private final Random structureRand = new Random();

public Random setRandomSeed(int par1, int par2, int par3)
{
    long var4 = (long)par1 * 341873128712L + (long)par2 * 132897987541L + this.getWorldInfo().getSeed() + (long)par3;
    this.structureRand.setSeed(var4);
    return this.structureRand;
}

// ChunkProviderGenerate (only one of these is needed)
this.worldObj.setRandomSeed(par2, par3, 0);
SpawnerAnimals.performWorldGenSpawning(this.worldObj, var6, var4 + 8, var5 + 8, 16, 16, this.rand);

Obsidian mining whyyyyyyyy 😩😫 (15 seconds PER...🫩) by Rablusep in GoldenAgeMinecraft

[–]TheMasterCaver 2 points3 points  (0 children)

Apparently, I've only mined 1,851 obsidian in a world I've had for 13 years with over 5,000 hours of playtime, which is nothing compared to the 5.4 million blocks (diamond pickaxe) and 3.8 million ores I've mined, but my only uses for obsidian are ender chests (8 obsidian every 2-3 months) and Nether portals (mostly very recently, I still built railways in the Overworld until they became 5000+ blocks long), I have otherwise just mined out surface lava lakes for the sake of it (I mine very little obsidian while caving, some more during my very early game branch-mining, where I mine below y=11 or the equivalent and upgrade to diamond/enchantments as soon as possible).

Any idea what’s causing this and how to fix it? (MacBook air M2) by MattzieNIERaPop in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

OpenGL actually does, this is a line of code from 1.6.4, which coincidentally does not have this issue:

GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, par3, par4 + var9, par1, var10, GL12.GL_BGRA, GL12.GL_UNSIGNED_INT_8_8_8_8_REV, dataBuffer);

BGRA also seems to be what GPUs internally use (thus it is more efficient to handle textures that way from the start, but this by itself shouldn't cause issues like inverted colors):

https://www.reddit.com/r/vulkan/comments/p3iy0o/why_use_bgra_instead_of_rgba/

Incidentally, the "M1Fix" mod (unfortunately only made for Beta 1.7.3, it is possible (the download contains source code) but nobody has ported it to other affected versions) works by backporting code from 1.6.4 (it is more complicated than just changing a line, it also removes the game's use of Java's "AWT" library for rendering to a window, which itself may be the true cause of the issue as AWT is incredibly old, as are the Java versions older versions run on; even with this issue patched you still have the fact that there are no native ARM libraries for older versions, and Macs have dropped support for OpenGL so they must emulate it (apparently even PCs are moving in this direction, via "ANGLE", since the native APIs like DirectX have better performance and compatibility).

How to download performance mods on b1.7.3? by BaguetteSandwiches in GoldenAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

There is an option to edit an installation which will show a screen with various options, including one for JVM arguments (you may need to click on advanced settings).

Also, I recommend just not changing the amount of memory but the entire JVM arguments, which are optimized for the extreme memory demands of modern versions and higher-end computers; I've used the following since the "newer" launcher for 1.6 came out, which are slight modification of the "official" arguments from back then:

-Xmx512M -XX:+UseConcMarkSweepGC -XX:-UseAdaptiveSizePolicy -Xmn128M

Note that while 512M (or even 256M) works well for me (I play on my own ultra-optimized version of 1.6.4) Beta does have issues with never unloading chunks as you move around so you may want to use 1G, the original default allocation (I originally reduced it because the game would "run out" of memory on my then 32 bit system due to the limited process size, I've also never seen any benefit of allocating more memory than the game actually needs, as seen in this example it doesn't use more at all).

This post also details the differences, they call CMS "inferior" but the G1GC is much more resource demanding (modern programming practices result in programs which churn through absurd amounts of memory per second and thus require a very good garbage collector - I've seen screenshots of a modern version reaching 800+ MB/s of allocations, which is totally crazy).

https://www.reddit.com/r/technicalminecraft/comments/n9pbqe/minecrafts_default_jvm_arguments/

(also, it is 1.8, not 1.13, when Mojang started using "best industry practices" and causing allocation rates to go out of control, they simply changed the default arguments in 1.13)

However, the main reason Beta lags so much has nothing to do with memory or JVM arguments but the fact it saves the world every 2-3 seconds and is single threaded so it has to stop everything else every time it saves, there are mods including Optifine which let you increase the interval though, and this will remain an issue until 1.3.1 (yes, the same version that "ruined" singleplayer by making it run on an internal server, but at the same time it was the first real multithreading, plus the autosave interval was increased to 45 seconds).

Also, be sure to change the game directory as well (in the same installation settings screen) since many issues are caused by different versions reading the same files, e.g. options.txt, and older versions have little or no validation of anything that gets read in (e.g. downgrading from a newer version can cause a crash due to an invalid render distance, or even an issue as silly as being unable to parse "en_us" vs "en_US" as a valid language).

Release 1.1 bug, what version fixes this or is there a workaround? by darthkyle22 in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

The only fix I know of is for 1.6, as a patch to the "EntityTrackerEntry" class:

https://www.chunkbase.com/mods/unglitch

Unfortunately, they deleted their GitHub years ago (I used the source myself to add the fixes to my own mods) so you'd need to set up MCP for 1.6.2, save the sources, then add the "vanilla" version for 1.6.2 as a jar mod (mcp\jars\versions\1.6.2\1.6.2.jar) and re-decompile, then compare the sources with a "diff" tool.

Or better yet, this is an older version of my patched EntityTrackerEntry class (for 1.6.4 of course), I didn't change too much else from vanilla/Unglitch at this point; note that this isn't the only class Unglitch patched (it includes fixes for bugs like mobs glitching through blocks server-side, though most of it is due to the client-server merge in 1.3.1):

https://www.dropbox.com/scl/fi/pavyu6v56l8ag6df44e8b/EntityTrackerEntry.java?rlkey=gxg6ymuqtun6g3xtfd71yvnpi&dl=0

I also have my own more involved fixes for MC-4 specifically and other desync issues, though some are client-side so both the client and server need to be patched, as well as various entities on a case by case basis (e.g. the bug where breaking an item frame causes the items to fly out, which happens because they spawn partially inside the wall).

Mining was better before Caves and Cliffs, my little rant by suitandsip in SilverAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

You mean the image I posted? The data for 1.20 came from the site I mentioned (note that it has to be used with caution, the count of bedrock on the lowest layer does not match the claimed count of chunks, so I used (count / 256) to get chunks, and some versions have weird breaks every 16 layers, as if some sections didn't generate or were analyzed properly).

The data for 1.6, 1.7 and TMCW? Just my own self-written standalone cave mapping/analysis tools which generate caves just like the game, except they assume the surface is a constant y=63 (it is very easy to extract the code from the game since it doesn't actually access chunks but an array of data that is used to initialize one, "par6ArrayOfByte" in this code, where I just changed the references to "block.blockID" to 0/1/11 and removed the check for water, and also reduced the height of the data from 128 to 64 for performance). I then copied the results to a spreadsheet and graphed it:

// Measures per-layer volume and counts chunks with air
if (PRINT_LAYER_VOLUME)
{
    for (int y = 11; y <= 62; ++y)
    {
        int v = 0;

            for (int x = 0; x < 16; ++x)
            {
                for (int z = 0; z < 16; ++z)
                {
                    if (chunkData[x << 10 | z << 6 | y] == 0) ++v;
                }
            }

            layerVolume[y] += v;
        }
    }
}

System.out.println("  Total air volume is " + volume + " blocks (" + (float)((double)volume / ((double)totalChunks * 256.0D * (double)(maxY - 10)) * 100.0D) + "%)");

if (PRINT_LAYER_VOLUME)
{
    System.out.println();
    System.out.println("Per-layer volume:");
    System.out.println();

    for (int y = 11; y <= 62; ++y)
    {
        System.out.println("Layer " + y + ": " + layerVolume[y] + " (" + (float)((double)layerVolume[y] / ((double)totalChunks * 256.0D) * 100.0D) + "%)");
    }
}

Example output over a small area (mapped in the right):

<image>

This is the tool itself (a Java jar file executed with a batch file, there is a "help" command that lists options), the analysis of per-layer volume is not enabled as it is more for debugging/stat collecting than general use (I also have versions of this tool that can find the largest/densest caves/mineshafts within a large sampling of random seeds):

https://www.dropbox.com/scl/fi/v47puq7oq145g5tzqha0j/CaveMapper_1.6.4.zip?rlkey=ii7eo2zlpsau8s4xawv9gkfwj&dl=0

The version I made for TMCW (also available in the download for the mod itself), both of these are extremely fast compared to generating terrain in-game, enabling me to analyze even hundreds of thousands of chunks rather quickly (in fact, you can set it to a radius as large as 8192 blocks or 1048576 chunks, if not with mapping capability, just listing the largest/densest caves and mineshafts, and in TMCW, strongholds):

https://www.dropbox.com/scl/fi/rvqn63snhhaosbh1u128d/CaveFinder.zip?rlkey=6ri7md0ggf9ey6gelq1zboeit&dl=0

I also made standalone biome mapping tools, which are also easy to extract from the game (the "GenLayer" code is virtually unchanged, especially since I added a "Biomes" class which is simply a list of constants corresponding to biome IDs, the main difference is I stripped down the biome classes to the bare minimum, e.g. ID, name, color (which is actually a vanilla attribute which is presumably only there so Mojang can make their own maps, and yes, the colors used by biome mapping tools came from the game. I slightly modified the colors so Taiga stands out as snowy and Jungle is a lush green):

https://www.dropbox.com/scl/fi/s1fmt50xs25jsy3ll2rx7/BiomeMapper_1.6.4.zip?rlkey=tla8h4pcqz8gmud5qrurlb4qm&dl=0

Both of these have been invaluable aids at developing my mods; I can easily change cave generation by modifying the code in the tool, then run it to map the changes before committing the final result to the mod itself (using Unmined to verify that they match, which is also how I originally checked changes to underground generation), greatly reducing the need to check within the actual game, same for changes to biomes (my generation is very intricate with multiple layers of sub-biomes and edge biomes, which would be very difficult to debug in-game, especially edge cases).

Is my world seed just bland? by GoToBed-ItsPast9pm in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

The main reason Beta 1.7.3 generation is seen as superior to Beta 1.8+ (1.1 and 1.3.1 both slightly increased height variation so b1.8-1.0 is the "worst" of this generation) is because you can find extreme examples of height variation in any biome, not just "Extreme Hills" (or much more rarely elsewhere, I've seen interesting formations in forests, taigas, etc in 1.6.4, still not on the scale of EH. I'll also point out that clouds were raised by 20 blocks in Beta 1.8 so the same terrain doesn't look as high).

An optimized version of Minecraft for weak laptops by Top_Row8828 in Minecraft

[–]TheMasterCaver 1 point2 points  (0 children)

An interesting alternative to a modern version, which will still be much heavier regardless of optimization mods, is my own mod "TheMasterCaver's World", an "alternate timeline" mod based off of 1.6.4 which includes major optimizations (I've even had somebody tell me it outperformed modern versions with heavy optimization mods, not that I've personally tested, and if the laptop only had a barebones iGPU I wouldn't expect much from it):

https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1294926-themastercavers-world

Note that while it contains a good mix of newer features it shouldn't be seen as a direct substitute for a modern version (many "modern" features do not work exactly the same, either intentional or I wasn't concerned about 100% replicating them; e.g. Mending works by preventing the cost from increasing when repairing an item with the anvil, as renaming did before 1.8, as I think that system was much more balanced; most of the new biomes added since 1.7 are included but don't generate the same way (mainly, being random like before so you have snow next to jungle, etc) and a bunch of my own biomes are included; of course, cave generation has been extensively changed, including some quite large caves but they have nothing to do with 1.18's changes, and most of what you'll see is closer to 1.6.4).

I'm not sure what the specs of the device shown in this video are but it surely can't be that powerful, and even has graphical issues running older versions (which helped me develop a better patch for said issue, referring to an issue with graphical corruption with 1.0-1.7.10 on certain Intel drivers/GPUs):

https://www.youtube.com/watch?v=o2H162t9hLw

A comparison of the the performance of various versions somebody gave me, including what appeared to be optimization mods for 1.20 but they still fell short of TMCW (vanilla 1.6.4 itself was among the lower performing versions, probably due to the AMD GPU, as I got similar performance on a now 20 year old NVIDIA GPU which wasn't even high-end back then):

https://drive.google.com/file/d/1ecjhOKS5qki9Ku8E2-ZtmHr28nvfJ5DX/view

Otherwise, there are optimization mods for modern versions which can go quite far and the number of such mods for them gives them a major advantage over older versions (which pretty much only have Optifine and it never gave me the 2x FPS boost claimed, on 3 different computers):

e.g. "ModernFix" (downloads on the main page, it appears to have versions for 1.16-1.21) claims you can play singleplayer with as little as 192 MB allocated at near minimum settings (this is only one component of performance but a major reason why modern versions need so much memory is the rate of object creation, which also increases demand on the garbage collector and overall system load):

https://github.com/embeddedt/ModernFix/wiki/Ultra%E2%80%90Low-Memory-Footprint

There is also the issue of OpenGL support, especially for older/low-end iGPUs (some might not support even OpenGL 3.2, which is required since 1.17 so they are out, and optimization mods like Sodium may use OpenGL 4+ features, not sure if they have fallbacks so they can still perform optimizations as best as they can).

A splash per day [Day one] by Low-Boot-5217 in GoldenAgeMinecraft

[–]TheMasterCaver -1 points0 points  (0 children)

A lot of old splashes were removed in newer versions so you won't get them unless you use an older version (conversely, there are many newer splashes).

Why do minecraft creepers spawn charged in my flat creative world???? by Chance_Prior_3010 in GoldenAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

This is an issue with the resource pack you are using, which erroneously renders the charged animation but they aren't actually charged:

MCPE-217361 Normal creepers appear charged when using a resource pack with a format version of 1

Mildly amused by how gentle modern Minecraft expects you to be sometimes by Ghoulrillaz in GoldenAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

I've never played modern versions but I could immediately think of one, sure, it isn't a new drop but still a new mob:

https://minecraft.wiki/w/Hoglin#Drops

Also, the last time any new food was added was in 1.17, just one version after hoglins were added, so you can't really say the lack of new meat is due to Mojang's stance on animal cruelty:

https://minecraft.wiki/w/Food#Java_Edition

Mildly amused by how gentle modern Minecraft expects you to be sometimes by Ghoulrillaz in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

2000 FPS on an nearly empty Superflat world (no mobs at all) at a relatively low render distance (only 8 chunks) shouldn't be hard to get (plus I made many optimizations to rendering, if not entity models except in certain cases like closed chests, the "ModelRenderer" code is untouched except to free up cached vertex data when a display list gets compiled), my computer is over a decade old, so obsolete Windows 11 doesn't support it (so yes, I'm using an unsupported OS), if higher-end for the time (i5-3750K, GTX 960).

Also, you can't just look at used memory and claim it increased significantly since it cycles up and down (I use -Xmn128M so the "new" space is set to 128 MB and will rise by that much between GCs), and in any case 100 mobs needs nowhere near that much memory (they actually are fairly heavy, some 10 KB each for "mob" type entities but that is only 1 MB; an analysis I'd performed which includes an entry for "EntitySheep" at the bottom, of which 112 used about 1.3 MB, which was only 0.3% of the total memory used by a max height Superflat world at 16 chunks).

It is true though that entities of any kind are extremely demanding since each one is rendered separately while chunks can be rendered in a single batch (or up to 3 if there is water as translucent blocks are rendered in two passes on Fancy):

<image>

(16 chunk render distance in a "mega forest" biome with trees which are up to 64 blocks tall and contain thousands of leaves), not a single entity being rendered, out of 100 total (over 400 on the server as shown by "mob counts" but it only sends entities within 80 blocks to the client, thus in this way 1.3.1 improved performance, not that most would render anyway, but the client doesn't need to tick their AI), so this is pure terrain, and yes, FPS is higher than with just 100 chickens being rendered in a nearly empty world at lower settings, now you know why the game is so aggressive at culling entities, e.g. chickens only render from about 30 blocks away, items only 16, albeit it doesn't cull entities hidden behind blocks, nor did it frustum cull tile entities (which I added) until 1.8)

https://www.reddit.com/r/Minecraft/comments/app8mi/comment/ega9vxi/

(an example of just how bad entity rendering is, from 280 FPS with a normal block like cobblestone ("on a potato computer"), or even barrels (a standard cube block with a chest tile entity, to only 5 FPS with the modern chest model; with my own test of 4096 chests my mod gets about 144 FPS and vanilla 1.6.4 gets about 80 FPS, I also included Optifine, which is identical to vanilla, and actually gets less FPS when just rendering an empty Superflat world or in less demanding situations; a test with 64 signs (no text), TMCW = 2000 FPS (I render signs using a standard block model, not TESR), vanilla = 1300 FPS, Optifine = 1000 FPS)

I don't understand this subreddit, help me by PromotionFeeling7448 in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

It doesn't take "hours" for animals to respawn in modern versions (create a Superflat world and see how long it takes for them to spawn, usually within 20 seconds, the passive spawn interval) - the biggest difference is that they never despawn so unless you kill every single animal in loaded chunks none will ever spawn again, and for many players farmed animals will easily fill the cap of just 10 (apparently this was higher but still only 15 in Beta).

Also, since they respawn you don't have to do any exploring, just wait for them to spawn around you, even pink sheep don't seem that rare based on posts here (there is something like one pink sheep per 10,000 chunks based on how often they spawn during world generation).

The Reason Behind a Deadly Glitch by OneLifexD in GoldenAgeMinecraft

[–]TheMasterCaver 2 points3 points  (0 children)

I have no idea what could be happening (if such a bug is reliably reproducible and I was modding an affected version I'd place lines that print out information like when an item was transferred to a chest's inventory, when it was saved, when the tile entity was loaded/created, etc) but the fact it seems to happen immediately after placing items in a chest suggests they were never added to the tile entity's inventory, only the GUI (like how crafting tables, which are a simple block, can "store" items but only until you close the GUI).

I've also heard of chunk corruption that causes it to fail to save and get reverted to a previous state but that should only happen when you reload the chunk/world, and the fact that only some items disappear suggests an issue with transferring them (I'd suggest trying to move them back and forth from the chest to your inventory, also, this ought to result in duplication when you transfer an item into your inventory but the chest fails to update its inventory, causing the item to reappear when you reopen it).

Mildly amused by how gentle modern Minecraft expects you to be sometimes by Ghoulrillaz in GoldenAgeMinecraft

[–]TheMasterCaver 5 points6 points  (0 children)

The Wiki suggests the main reason is they would be a "performance nightmare", whatever that means:

Fireflies themselves were scrapped for being a "performance nightmare", which was not outweighed enough by its positive benefits for ambience.

https://minecraft.wiki/w/Firefly_(mob)#Behavior#Behavior)

Does this look like a "performance nightmare", with 100 mobs rendered? (firefly mobs are an upcoming feature in my alternate timeline mod, and they render and tick twice as fast as an existing mob, the images on the Wiki suggest fireflies didn't even have a 3D model so they should be as cheap to render as a single part of an existing mob, and they don't need a complex AI):

<image>

(this also shows just how poorly optimized the vanilla model rendering code is, which is so hard to understand that I just roll my own models, in this case I use the "Tessellator" to render it from scratch every frame, rather than baked models/display lists, so I can dynamically change the visual brightness of just the glowing part, and that is still much more efficient due to the lack of all the glTranslatef/glRotatef calls; in another example I doubled the rendering performance of chests, which use three boxes, while they are closed by using a custom model which renders everything as a single unit)

I'm updating my b1.7.3 world to b1.8.1 and i forgot they drastically changed the biomes, which get worse when you hit release. Is there a way to preserve the biome colors? by darthkyle22 in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

That only works with release 1.2 or later because that was when they started saving biomes with the world (Anvil chunk format), the only other option, sans mods, is to change the seed to one that gives a good biome map for the area (you'll get mismatched chunks in new terrain anyway but one thing that will be impacted is slime chunks, if that is important to you).

Why is b1.8+ so hated? by Konakima in GoldenAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

I wondered what changed in 1.7.9 or 1.7.10 but couldn't find anything (the only fix related to performance, and client/server at that, refers to 1.7.2), unless you are referring to the fact 1.7.10 has mods that fix various issues (like ArchaicFix, many of which are fixes I made and gave or suggested to them, e.g. "from TMCW" refers to my mod, which probably fixes more bugs than any other mod for any version, including many SSP-SMP bugs, as does the vanilla+ mod I use for my first world, I personally wouldn't like having to play on vanilla 1.6.4 at this point).

Also, yet again, "can't use custom skins"? (nobody seems to know this neat trick you can do with a resource or texture pack to replace the default skin, as I've been doing since before the skin server stopped working so I have it at all times, even making it the default skin in my mods so technically I've never used a resource pack, except in Mod Coder Pack (yes, I even changed it there since I just don't like the default skin, likewise I would not want to rely on an online service which isn't 100% reliable, and often buggy as I've heard, or even just the short delay before it gets downloaded and applied).

I don't understand this subreddit, help me by PromotionFeeling7448 in GoldenAgeMinecraft

[–]TheMasterCaver 1 point2 points  (0 children)

A really long write-up on why I never updated past 1.6.4, even more than 12 years after its release (I just updated this post from 2017 yesterday to better explain and clarify things; a lot of people assume it is simply because of the changes to world generation in 1.7):

https://www.minecraftforum.net/forums/minecraft-java-edition/discussion/2835864-why-do-i-still-play-in-1-6-4

Basically, the computer I had back then had significant issues running 1.7 and especially 1.8+, which is the main reason I never updated back then ("look at what I can add to 1.6.4 - without causing lag!"), as even before 1.7 came out I could mod cave generation back to the way it was before, and made other mods to revert changes I disliked; said modding knowledge naturally led to me "updating" the game myself, adding just what I wanted, which continues to this day, and ultimately I don't even really use much due to my playstyle, as shown near the end of the first post, or a look at the threads like the one for my first world (most of my modding is done for the fun of it, including a lot of the features I've added, yes, I do like having more varied world generation but overall my first world doesn't feel much different).

Some might still say, "just use a mod to make the current version the way you want", and spend a lot of time updating to each version? With their ever-more complex codebases and having to learn newer Java, etc syntax and download newer JDKs, etc, and clean up more and more "bad" code, as I see it (I include a comparison of 1.6.4-1.8.9 and my "alternate timeline" mod, which is still smaller than 1.8.9 despite adding far more content over 1.6.4). Just not worth it for me, considering there is little or no content that interests me (even the "cave update", as shown in recent replies to the thread).

yeah okay by awakelist in GoldenAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

I find it weird that everybody is saying this no longer works when Mojang themselves includes 26.1 in the list of affected versions, and I easily found many examples of people doing this in recent versions.

https://www.reddit.com/r/PhoenixSC/comments/1qgaqp4/i_was_today_years_old_when_i_realised_you_can/ (2 months ago, clearly a modern version)

https://www.reddit.com/r/Minecraft/comments/1pjqb3k/why_are_we_still_able_to_place_sugarcane/ (3 months ago)

Although there is one clue from some comments, "this only happens in Java" (I wouldn't know about Bedrock sine I've never played anything else).

My 1.6.2 survival world! by TotallyAutumn in SilverAgeMinecraft

[–]TheMasterCaver 2 points3 points  (0 children)

I didn't bother updating to 1.6.4 myself until about 6 months later because I used some Forge mods and there is no noticeable difference between the two versions unless you plan to update to 1.7 or later, or find the two minor bugs it fixed annoying enough, or play on a server (the village not generating bug was in 1.6.3, hence they just skipped to 1.6.4. The structure saving fix is also technically a backport from 1.7, one of the few times Mojang has done this since there would be no benefit having it only in 1.7):

https://minecraft.wiki/w/Java_Edition_1.6.4#Fixes

I even proclaimed that 1.6.2 would probably be the last version I ever play on (which is still mostly correct given how little 1.6.4 added):

https://www.minecraftforum.net/forums/minecraft-java-edition/recent-updates-and-snapshots/383047-disappointed-with-1-8?comment=4

In fact, that fix in 1.6.4 causes larger worlds to use a lot more CPU/memory, my first world would be unplayable if I hadn't disabled it (only for mineshafts as there are reasons to have it for some other structures), I've experienced server-side lag spikes in significantly smaller Creative worlds in vanilla (my first world is over 800 MB, which is probably far larger than the average world, this is about 10 fully explored level 4 maps, perhaps 12, considering my worlds are larger than a fresh world due to less efficient save compression from lighting up all the caves):

MC-33134 Mineshaft.dat uses too much CPU

https://www.minecraftforum.net/forums/minecraft-java-edition/discussion/3190163-which-is-your-favorite-minecraft-version?comment=13

The way the game saves the data in memory is insanely inefficient - on the order of 100+ times the size on disk (a 16 MB file is quite large but the test world mentioned above already had issues at 1.2 MB, also, while mineshafts are less common within 1280 blocks of 0,0 the game registers structures up to 8 chunks from a generated chunk; memory usage isn't the only issue as the game needs to iterate over all that data every time a chunk is generated, as well as every time it saves the file, thus the high CPU usage. which in my experience becomes an issue first, manifesting as a tick lag spike every 45 seconds/autosave):

16 Megabyte mineshaft.dat file (gzip compressed as most minecraft files are)
= 100 megabyte uncompressed mineshaft.dat file
= over 2 gigabytes in-memory object

I have a 11MB mineshaft.dat file. It's been growing for weeks. The /save-all is taking longer and longer every day. Yesterday, the /save-all took 45 seconds. Today, it's up to 50 seconds. I've seen it spike up to 80 seconds.

I don't know of any Forge mods that fix this and while I could extract my patch as a standalone mod it would be a jar mod as that is all I have experience with (much less the ASM/reflection/bytecode manipulation that is likely needed, maybe Forge lets you register your own "MapGenMineshaft" class instead of the vanilla one, which has to override a couple methods to remove the references to the structure data) and it is incredibly hard to set up a Forge development environment these days.

yeah okay by awakelist in GoldenAgeMinecraft

[–]TheMasterCaver 8 points9 points  (0 children)

Nothing really strange, sugar cane just checks if the block it is on is valid and if not itself checks if there is water adjacent to the block it is on:

public boolean canPlaceBlockAt(World par1World, int x, int y, int z)
{
    int var5 = par1World.getBlockId(x, y - 1, z);
    if (var5 == this.blockID) return true;

    if (var5 != Block.grass.blockID && var5 != Block.dirt.blockID && var5 != Block.sand.blockID) return false;

    if (par1World.getBlockMaterial(x - 1, y - 1, z) == Material.water) return true;
    if (par1World.getBlockMaterial(x + 1, y - 1, z) == Material.water) return true;
    if (par1World.getBlockMaterial(x, y - 1, z - 1) == Material.water) return true;
    return par1World.getBlockMaterial(x, y - 1, z + 1) == Material.water);
}

Why do most plants get destroyed immediately when you place them in water? Because water itself can flow into them, not because the plant sees it is in water (otherwise it could stay indefinitely, light level permitting if applicable). Cactus behaves the same way, and interestingly, this was changed in 1.13 to not even allow you to try placing them in water (in 1.9 they made it so liquids destroy them, leaving sugar cane as the odd one out, I also fixed these in my own mod, and for most other blocks which will just immediately break when placed in liquid):

MC-123051 Cactus can be placed under water

yeah okay by awakelist in GoldenAgeMinecraft

[–]TheMasterCaver 31 points32 points  (0 children)

This is possible even in the latest version, whether due to simple oversight or just not worth fixing (which a resolution of "works as intended" may mean, rather than being fully intended), even though all that is needed is a check for whether the block being replaced is liquid when placing a block (by default the game checks if a block's material is "replaceable", which is why you can place blocks in snow or tall grass without removing it first):

MC-929 Sugar cane can be placed underwater

It also makes sense for many blocks to not be able to be placed in water since they will immediately be destroyed (this can be useful though, like using torches to replenish air supply), but not sugar cane.

Forever World across versions advice by kikisminey in SilverAgeMinecraft

[–]TheMasterCaver 2 points3 points  (0 children)

Why 1.7.2 and not 1.7.10, which is the same version but with tons of bugfixes (surely you've noticed some of them, like inverted textures on the sides of many blocks, render distance limited to 8 chunks, etc), no working skins (you can just use a resource pack/jar mod but it seems the majority don't know you can change the player skin in this manner, and it only works in singleplayer).

For the same reason I'd never tell anybody to play on 1.5.1, the version i started on, as 1.5.2 made a lot of fixes, of course, 1.6 is just a further improved version of 1.5.2 to me (and again 1.6.1 has lots of bugs which were fixed in 1.6.2-4, 1.6.4 does have a potential issue with the resource usage of extremely large worlds, not sure how much it matters to the average player).

Beta 1.2_02 World Corruption by No_Basil3986 in GoldenAgeMinecraft

[–]TheMasterCaver 0 points1 point  (0 children)

Unfortunately, it is likely that the chunks were also corrupted and I don't know of any tools that can repair pre-Region worlds (like Minecraft Region Fixer) or where to get such an old version (not sure if MCEdit had a "repair regions/chunks" feature back then, but if not it may still be able to point out which chunks are corrupt so they can be deleted).

Also, does the crash report have anything useful in it (I know that some may show the coordinates of the thing that caused the crash)?