Minecraft Singleplayer Survival: Part One - Planning
Minecraft Survival Singleplayer Project
I've been itching to do a new Minecraft survival world. I've done a few before, but I want to make something bigger, grander, more complex than I have have before, with a focus on automation. "Grander" and "complex" comes with a lot of work. Specifically, it requires a lot of planning.
When I conceived of this idea, it was a few months after the minecraft 1.16 update had released. 1.16 seemed like a good place to make my new home. It had lots of new features and seemed like a pretty "complete" version of minecraft. The modding support was and still is becoming more and more excellent in this community. Then, there were rumors about Mojang turning up the build height limit. This intrigued me, so I waited to see more.
These rumors turned out to be true. Mojang has indeed taken up the task of increasing the height limit of minecraft worlds and offering huge changes to the world generation. I simply do not want to start a world without these features. Unfortunately, I will have to wait a little longer: Mojang pushed back the release of those features to the back half of the summer or fall. On the positive side, this gives me plenty of time to plan. If need be, I could probably be content with the snapshot versions to hold me over until an official release.
An sample of the new world generation in 1.17: mountains!
So what do I plan first? I'm actually going to start with mods. I want to keep this not "heavily" modded, in the sense that I won't be installing massive modpacks like FTB or ROTN that could almost be considered different games. However, my pedestrian, "vanilla" experience is already loaded with almost 100 quality-of-life mods, so "heavy" is relative. In order to sus out what mods I should choose, I should define what I want from this singleplayer world, first.
I mentioned it briefly before, but I want a lot of automation. I have an idea in my head of a world with massive farms running automatically and transporting items to a centralized storage so that I can take those items and use them on the next massive build or farm. A beautiful system of redstone designed and built with hundreds of hours of work. It's definitely ambitious, but with my 10 years of minecrafting experience I think it is doable.
With this idea in mind, I'll be choosing a bunch of mods to improve my minecraft experience and add a few that will actually change how the game is played (though in my opinion not by much.) For example only one mod actually adds an item to the game.
Here's an actual list of mods I have chosen that are more specific to the "technical" aspect of minecraft. These are things that will improve performance and ultimately help with automation:
- Carpet mod
Let's explain these choices one by one.
Carpet mod by gnembon and includes many of the bug fixes and features relevant to a technical minecraft experience. Basically any relevant technically-focused SMP has carpet installed. It is also incredibly powerful for testing and used as a platform for other technical mods, as a way to standardize how features are implemented. A few examples of these carpet "extension" mods would be TIS-Carpet-Addition, QuickCarpet and Epsilon-Carpet.
Litematica is authored by masa. Litematica is for creating schematics. With this I can iterate on a project in creative, export the structure to a schematic and build it in survival using the schematic as a guide. It's also great for placing large or complicated structures in a mirror world to see how they would look.
Lithium, Phosphor and Sodium are authored by JellySquid. Put simply, these mods provide performance improvements. For compatibility reasons, it's not clear to me if Sodium or Lithium will make it in to the final modpack. This will be explained later.
MiniHUD, authored by masa, is like a customizable F3 menu that most users leave up on their screen at all times. It can show very useful information like tickrate, fps, coordinates, etc.
An example HUD
Tweakeroo is authored by masa. Tweakeroo is a large list of client side bug-fixes and features known as "tweaks".
Epsilon-Carpet is authored by Timstario and I. It contains a few technical features I am interested in and features that I am currently working on.
TellMe is authored by masa. TellMe is for dumping game information in-game. Not necessary for most people, but good for debugging issues in-game.
Example TellMe commands
Finally, MCMT is a server-side multithreading mod authored by jediminer543. This could provide massive performance benefits for large farms where lots of entities are involved. Unfortunately it is a forge mod, but there is a fabric port currently in progress and I will bet that it will be ready after a few months. However, I'm not sure if it will work with the Lithium mod. I will have to test this in the future.
Quality of Life Mods
Next is a list of quality-of-life or other "miscellaneous" mods along with a brief description. If you're not interested scroll down for the list of feature mods.
- AntiGhost provides a hotey to reload chunks from the server in the case of "ghost blocks".
- Auto-Run provides a hotkey to toggle walk so you don't have to hold down 'w'.
- Dark Loading Screen is so that you aren't blinded by the Mojang logo when you start the game.
- Don't Drop It! prevents the removal of valuable items from you inventory, in case of misclick.
- Dynamic FPS stops rendering when you tab away from the window.
- Fabrishot takes screenshots at non-native resolutions (ex 4k screenshots on a 1080p display).
- Giselbaer's Durability Viewer shows your tool and armor durability onscreen
- Inventory Profiles is an inventory and chest sorter.
- Mod Menu provides a standard in-game menu to configure mods.
- Not Enough Crashes will crash to the title screen instead of closing the game.
- Ok Zoomer is a client zooming mod providing functionality similar to Optifine zoom.
- ReAuth provides a way to log in when your yggdrasil token expires. There's no MS account support, yet.
- Reload Audio Driver to refresh the sound engine with F3 + R.
- Shulker Box Tooltip provides a preview of shulker box contents when you hover over.
- Time To Live shows the countdown time of a creeper or TNT.
- VoxelMap provides a world map with waypoint features.
- Smooth Scrolling Everywhere adds smooth scrolling to config menus.
- Replay Mod provides demo recording so you can rewatch things and create video files if wanted.
- Fabric Capes provides support for various different capes mods including Optifine.
Here are the mods that provide features that I would argue truly stray from the "vanilla" experience:
- Proximity Chat
- Iris (Shaders)
- Experience Beacons
- Better Shulkers
- Immersive Portals
Simple Voice Chat, authored by henkelmax, provides in-game voice chat. I'm definitely going to play with friends from time to time so having this as an option will be nice.
Iris is a shaders mod by coderbot16 meant to replicate the behavior of Optifine's shaders mod. It is receiving rapid development and at some point I may never have to use Optifine again. I'm not sure if Sodium support will be ready by the time 1.17 rolls around, but Iris takes priority over Sodium; my framerates are usually high enough, anyway.
Silder's Vibrant Medium working with Iris mod in MC 1.16.5.
Baritone is an automation mod by afroak. It provides pathfinding and automatic travel/mining functionality. This one I'm not actually sure if I should include; it's almost like cheating. At the same time I don't want to always have to grind for ores or fly for an eternity on the nether roof. This would alleviate those problems, but it's essentially zero cost. I'm going to try to find solutions for those types of problems, maybe in the form of other mods, but for now this is a stopgap or backup solution.
Baritone mod pathfinding
QuickCarpet is a carpet extension mod maintained by DeadlyMC that has a few interesting features. There is one I am particularly interested in called auto-crafting. Using redstone, you can create machinery to craft items with a typical crafting bench. It's a great automation mechanic that has a fair amount of cost to use. I think I will have a lot of fun designing contraptions to take advantage of this.
Experience Beacons is authored by me. It's a way to incentivize not dying and/or gaining levels. Basically, the more levels you acquire, the stronger beacon status effects become. So at like level 8000 or something crazy you have speed 5 and resistance 10 or whatever. It is configurable so you can cap maximum effect strength and level requirement.
Inmis is a backpack mod by Draylar. The hunger for inventory space is real, and this will help alleviate the issue. I don't want this to be over-powered, so I will limit myself to having one backpack.
Backpack recipes for Inmis
Better Shulkers by arxenix, on the topic of inventory management, offers a few machanics related to shulker boxes related to getting and putting items in shulker boxes automatically.
Immersive Portals is a seamless portals mod by quoteall that allows you to produce a lot of cool effects. I look forward to being creative with these mechanics.
Cool effect with Immersive Portals mod
So that is my preliminary mod list. It is subject to change as we get closer to the release of 1.17, but most of these are locked-in in my mind. The great thing about minecraft mods these days is that the majority of them seem to be open source. Even if the developers drag their feet or don't update these mods, I can ultimately just do it myself.
I'm not sure what the next article in this series will be about. It will be a little abstract, though. Probably about my base, seed finding or a general layout of the world and/or the automation system. See you next week.