
Install the jdk 17 and set the path and java home; install IntelliJ idea community edition, create a new java project, and run hello world.
Explore the Java datatypes used in Minecraft modding, including integers, floats, doubles, booleans, chars, strings, and null, and learn how variables store values.
Learn the basics of Java syntax for Minecraft modding: read code from top to bottom, understand variable declarations, assignments, and initialization, and use the dot operator to access methods.
This lecture introduces outputting to the console and reading user input in Java, covering Hello World, printing variables, and using a scanner to capture and echo a username.
Learn to diagnose common Java errors in Minecraft modding, read stack traces, stay calm, and craft clear error logs when asking for help.
Learn how to declare integers, perform addition, subtraction, multiplication, division, and modulo, and use math methods like max and abs in Java for Minecraft modding.
Explore Java assignment operators in Minecraft modding, comparing x = x + y with x += y, and mastering increment and decrement with ++ and --, plus equals and related operations.
Learn booleans and comparison operators in Java for Minecraft modding, using true/false, score-based checks like pass class and has perfect score, and negation with exclamation marks.
Master Java boolean logic for Minecraft modding by exploring and, or, and not on booleans, with practical examples like finishing lectures and assignments, and chaining operators for complex conditions.
Learn to use if and else statements in Java to evaluate exam results, print pass or fail messages, and build interactive code with user input via Scanner.
Explore how to use the switch statement in Java for Minecraft modding, including cases, default, and break, with guidance on enums and avoiding floats.
Master Java strings by creating a sentence and applying length, toUpperCase, toLowerCase, replace, indexOf, charAt, and substring, while checking isEmpty, contains, startsWith, and endsWith.
Explore casting in Java by converting data types between integers and floats, using implicit and explicit casts, and understanding how truncation and warnings affect calculations like loan and interest.
Master the ternary operator in Java for Minecraft modding by converting a pass/fail exam example into a single-line gift assignment, and prioritize readability over compactness.
Explore Java arrays for Minecraft modding, creating string arrays for questions and answers, initializing with new, indexing from zero, printing values, and handling array length and out-of-bounds exceptions.
Explore Java loops for Minecraft modding, including for loops, for-each loops, and while loops, with arrays, length-based indexing, and break and continue control.
Explore how Java methods work in Minecraft modding: define and call methods with parameters, understand method signatures, including public static void return values and overloading, with practical examples.
Explore Java collections, including lists, maps, and sets, and learn dynamic lists, key-value maps, and no-duplicate sets. Understand common operations like add, get, remove, contains, size, and handling primitive wrappers.
Explore the basics of object oriented programming in Java for Minecraft modding, defining classes and objects, understanding members, and mastering inheritance with animal and dog examples.
Create and instantiate custom Java classes with fields and methods, explore default and custom constructors, and use this to refer to object attributes in Minecraft modding.
Explore access modifiers in Java for Minecraft modding with public, protected, and private, and learn static and final modifiers, plus getters and setters using dog example to illustrate access control.
Explore inheritance and polymorphism in Java for Minecraft modding with an animal superclass. Override makesound in subclasses and use super constructors to demonstrate polymorphism with dog and cat.
Explore interfaces and abstract classes in Java by contrasting abstract animal that cannot be instantiated with concrete dog and cat, showing abstract methods, interface implementation, and multi-interface polymorphism.
Learn how anonymous classes extend a base class to override methods, creating a one-off manager variant of a person and get the full name output, with implications for Minecraft modding.
Define enums in Java to represent values such as easy, medium, and hard, and explore advanced enums with constructors and fields for tool tiers such as diamond and attack multiplier.
Master how to work with exceptions in Java for Minecraft modding by creating a custom test exception, applying try-catch blocks, and using finally to guarantee continuation.
Explore a brief overview of lambda expressions by examining suppliers, consumers, callables, runnables, and functions, and how a supplier's get method can delay loading in forge and fabric modding.
Explore generics in Java with a pair class that stores two typed values, and learn about type parameters, bounds like extends, and wildcard generics in Minecraft modding context.
Set up a fabric mod development environment by installing JDK 17, IntelliJ community, and the Fabric template; configure mod id and data gen, then run Minecraft and push to GitHub.
Add a custom item to Minecraft using Fabric by creating a mod items class and registering the item. Configure item groups, translations, and texture assets to display in-game.
Learn how to add a custom block to Minecraft using Fabric by creating a block class, registering the block and its item, and configuring block states, models, textures, and translations.
Create a custom item group for Minecraft Fabric, register the group, and configure its display name and icon to add items and blocks to the Pink Garnet group.
Create custom Minecraft recipes for the Fabric mod using data json files in the resources data folder; define shapeless and shaped crafting with blasting and smelting.
Create custom loot drops for blocks in fabric mods by building block loot tables, organizing data under loot_tables/blocks, and using tags to specify mineable tools and drops.
Create a custom advanced item class for a metal detector, implement use on block to scan downward for valuable ores, output coordinates to chat, and damage the item.
Deliver a custom advanced sound block for fabric by building a sound block class, overriding use and step behaviors, handling client and server logic, and playing banjo and cowbell sounds.
Add a custom cauliflower food item to Minecraft using a food component with hunger, saturation, and a status effect, defined in mod food components and item classes.
Create a custom fuel item for Minecraft furnaces and blasting furnaces in this fabric course lecture, using a peat brick registered in mod registries with a 200-tick burn.
Add custom tooltips to items and blocks in Fabric by overriding appendTooltip, showing shift-for-more-information text, and using translatable keys to reveal detailed lines when Shift is pressed.
Create custom tags for blocks and items in the fabric mod using data tags and a ModTags class, enabling the metal detector to use a blocks tag for valuables.
Learn how to implement custom data generation in fabric Minecraft modding, replacing json files with code across block, item, loot table, model, and recipe data.
Add custom pink garnet stairs and slabs in a fabric mod using block state json, block model json, and a pink garnet texture pool for automated data generation.
Learn how to add a pink garnet button and pink garnet pressure plate to Minecraft using Fabric, configuring settings, activation rules, data generation, loot drops, and textures.
Learn to add custom fences, fence gates, and a wall in a Fabric mod for Minecraft 1.20.x, including data gen, tagging, and model setup for proper in-game connections.
Create custom doors and trapdoors in fabric for Minecraft modding 1.20.x, register door and trap door blocks, add textures, and configure data generation and rendering for transparent textures.
Explore vanilla code by inspecting item and block classes in net.minecraft, using middle mouse and Ctrl H to access vanilla functionality, and leverage external libraries and the Merge project.
Learn to add custom tools in fabric by creating a pink garnet tool material with mining level five, defining five tools, and configuring datagen, textures, and translations.
Add a custom paxel by creating a pixel minable tag, defining a pixel item class that extends mining tool, and configuring data generation to include pickaxe, axe, and shovel minables.
Build a fabric mod sword that applies a poison status effect on hit, using a custom sword item and overriding postHit to grant 10 seconds of poison with amplifier 1.
Develop a custom armor set in a fabric course, creating pink garnet helmet, chest plate, leggings and boots, plus a mod armor materials enum and trimmable armor via data generation.
Implement a custom full armor effect in a fabric mod by mapping armor materials to status effects and applying them to players wearing a complete set on the server.
Add a custom horse armor item to a fabric mod by duplicating boots, configuring an armor bonus, naming the item, setting textures, generating data, and testing in Minecraft.
Learn to add a custom enchantment in Fabric by registering a Lightning striker that triggers on target damage and spawns lightning bolts on the server, based on enchantment level.
Explore block states and block state properties in Fabric Minecraft modding. Build a pink garnet lamp that uses a clicked boolean to toggle light and compute luminance.
Learn to implement a data tablet item that saves and erases block data using a key-value map, with tooltips, glint, and right-click interactions in Fabric modding.
Learn to create custom item model properties in fabric using model predicates, register them in the mod client, and switch a data tablet's texture based on its stored data.
Learn to add a cauliflower crop block in fabric: create a crop block class with age 0–6, register seeds without a block item, and configure textures, models, and loot.
Add custom compostable items in a fabric mod by defining register mod compostables with level increases (50% for cauliflower, 25% for seeds) and testing in game.
Discover how mixins enable modifying vanilla code in fabric, and implement a persistent data saver to store custom entity data using injected write and read methods on a compound.
Master custom Minecraft Fabric commands, including set home and return home, saving the home position in player persistent data via a mixin, and registering commands with a dispatcher.
Explore Fabric events in Minecraft modding by implementing an attack entity callback and a player copy handler, registering events, and triggering custom messages when hitting entities like sheep.
Register a custom petunia and a potted petunia in Minecraft Fabric, apply a bad omen status effect, configure models, textures, cutout render type, data generation, and translations.
Create a custom metal detector sound in a fabric mod by registering a sound event, adding sounds.json, and wiring an ogg mono file to play when the detector is used.
Create a custom block sound group for the pink garnet lamp, defining break, step, place, hit, and fall sounds, update sounds.json, and test in Minecraft.
Add a custom music disk to the fabric mod by defining the bar_brawl sound event, updating sounds.json, and creating the bar_brawl_music_disk item with mono playback.
Export a Blockbench model to a block item json and texture for Fabric. Implement a custom block with a facing property and a simple voxel shape for an accurate hitbox.
Export a Blockbench 3d item model as json and png, then import it in IntelliJ to add a radiation staff as a custom item in Minecraft using Fabric.
Add a custom bow to Minecraft using Fabric by creating a new bow item, its json models, textures, and predicates, then register it so textures update when pulled.
Learn to add a custom shield in Fabric for Minecraft, including creating Blockbench models for normal and blocking states, exporting textures, and using a mixin to manage shield damage.
Modify vanilla loot tables in fabric course for 1.20.x by applying mod loot table modifiers to add seeds to grass block, a metal detector to igloo chests, and creeper drops.
Modding by kaupenjoe demonstrates adding custom paintings to Minecraft using fabric, including registering painting variants, tagging placeable paintings, and generating data for textures and translations.
Add a custom slimy status effect to Minecraft using Fabric, register the effect, adjust movement speed, and enable wall climbing on horizontal collisions.
Create and register a custom slimy potion in Fabric Minecraft modding by adding a potions class, a mixin for brewing recipes, and translating keys for in-game use.
Learn to add and spawn custom particles in Fabric, create a pink garnet particle, register it, and spawn it from a tool on the server.
Build custom advancements for fabric by generating json definitions with a data generator, including display, background, and criteria, demonstrated with pink garnet and metal detector examples.
Add custom villager trades to vanilla villagers in a Fabric mod, using the Mod registries class and trade offer helper to define trades with item stacks, emerald costs, and balancing.
Learn to add a custom villager profession in fabric by registering a point of interest, defining trades, creating textures, translations, and a poi tag provider.
Create and register a custom soap water fluid for Fabric Minecraft modding, defining flowing and still variants, a soap water block and bucket, and configuring water-like physics, tags, and rendering.
Learn to render a 3d model in hand and 2d texture in inventory for a fabric mod item. Use item renderer accessors, mixins, and a model loader to switch representations.
Learn to create animated item and block textures in Minecraft using meta files and frame times, including magma block as example, for custom 3D and 2D models in Fabric mods.
Explore GitHub as a library of fabric resources, review build.gradle references for fabric and forge, and deepen Java knowledge before the block entities lecture.
Add a custom block entity to a fabric mod, implement its inventory and screen, and use a tick-based process to craft pink garnets from raw pink garnet with JSON recipes.
Learn to add a custom recipe type for a Fabric Minecraft mod by creating json-based gem empowering recipes and registering serializers.
Add re compatibility to your fabric mod by integrating Roughly Enough Items, updating build.gradle with repository and fabric dependencies, and registering a custom gem empowering category and display for recipes.
Add sided inventory to a block entity by overriding can insert and can extract, accounting for cardinal world directions, local rotation, and input and output slots with hopper integration.
Add energy handling to a fabric block entity using the Tech Reborn energy API, implementing energy storage, server-client synchronization, a GUI energy display, and crafting energy requirements.
Learn how to add fluid handling to a Fabric block entity, including setting up fluid storage, transferring water from buckets, and rendering the fluid in a custom gui.
Implement a custom block entity renderer in Fabric for Minecraft modding, including a server-to-client inventory sync using a data packet, rendering the tray item or output, and registering the renderer.
Add a custom driftwood wood type to minecraft, including driftwood log and wood variants, stripped forms, planks, leaves, a driftwood sapling, and make them strippable and flammable.
Explore adding a custom driftwood sign and driftwood hanging sign in Minecraft with Fabric, covering block and block entity setup, textures, items, and datagen models.
Learn how to add custom tree generation in Minecraft using Fabric by creating driftwood sapling trees with configured and placed features, and generating world-gen JSON for biomes.
Add custom ore generation to your fabric mod by configuring pink garnet ores across overworld, nether, and end with configured and placed features, using rule tests and height range modifiers.
Add custom petunia flower generation to your fabric Minecraft mod by configuring a configured feature and placed feature with a random patch, square, biome, and rarity modifiers, then test in-game.
Add a custom porcupine mob to Minecraft with Fabric, exporting a Java entity, model, and animations from Blockbench without gecko lib, and wire in goals, textures, and a spawn egg.
add custom attack animations by exporting Blockbench animations to Java, wiring a tracked data boolean for attacking, and implementing a porcupine attack goal that syncs timing with the attack animation.
Create custom porcupine variants in fabric modding with a PorcupineVariant enum and a data tracker for IDs, initialize random variants, and map variants to textures for rendering.
Add custom entity sounds in the fabric course by overriding ambient, hurt, and death sound methods and returning sound events like fox ambient, cat heart, or dolphin death.
Learn to create a tameable custom entity in fabric, using an apple to tame, set owner, sit and follow behaviors, and implement a set animation with a tameable state.
Learn how to make a tame entity rideable in Fabric Minecraft modding 1.20.x by implementing mount and writable interfaces. Examine managing passengers, updating travel, and sneaking to dismount.
Learn how to make a porcupine mob breedable in fabric for Minecraft 1.20.x by adding mating and following behavior triggered by right-clicking with cooked beef, producing a baby entity.
Add a custom boss bar to a porcupine entity in a Fabric mod, configuring color, style, and health-based percentage updates.
Add porcupine spawns in plains and forest biomes for Fabric modding by registering biome spawns with weight 50 and group size 1–3, enforcing ground spawning and biome restrictions.
Add a custom throwable item with a dedicated dice projectile entity in a fabric mod, register it, render with a dice block, and generate textures to simulate dice rolls.
Create a custom projectile in fabric 1.20.x by exporting a Blockbench model and texture as a Java entity, then wire a renderer and collision effects with particles and poison.
Create a custom sapling class that extends the sapling block to plant on end stone, overriding canPlantOnTop and using a block state provider for end stone.
Learn to create and register a driftwood trunk placer for Minecraft Fabric 1.20.x, implementing the generate method and codec, and wiring registration via mixin and trunk placer types.
Add a driftwood foliage placer for Minecraft Fabric by extending foliage placer, implementing the required methods, and wiring a codec and height into the constructor. Experiment with radius and offset in the generate method to control the leaves pattern, then test in game to see how different values shape the 3x3 or larger foliage.
Learn to add a custom pink garnet geode in fabric modding by configuring geode layers, block states, and placement rules. Test spawning at specific heights.
Add custom boats to your fabric mod with the TerraForm wood API, bundling the API in the jar and registering driftwood boat and driftwood chess board.
Build a two-block-high cat tail crop in Fabric Minecraft modding by creating a custom crop block with upper and lower portions, age-based growth, per-age shapes, drops, and data generation.
Create a biome-aware colored leaves block in fabric, using a color provider and block color registry. Learn registration, data generation, textures, and adding it to creative tab.
Add a custom item to suspicious sand via the loot table replace event, inserting the metal detector. Test in a desert temple to see it drop with other loot.
Add custom biomes to the overworld by integrating Terra Blender with fabric, then configure material rules to shape top layers and surface blocks, and generate biomes via data gen.
Build a custom dimension for a fabric mod using the cryptonote portal api, configure world and dimension type keys, and use Gradle include to bundle the portal.
Minecraft is the most popular game of all time! Minecraft Modding for the Java version of the game is known to be used in many YouTube videos and is played by a huge community! The Minecraft Modding Community keeps growing every day and it's a great and creative outlet!
This course will teach you how to make your own Minecraft Mod! You will learn the programming language Java as well as how to effectively use the Minecraft Modding API Fabric.
For absolutely beginners, I have added a Java Introduction for you, so even with no experience in programming you can start making Minecraft Mods by first going through the Java Introduction!
In the Basics Concepts part of the course, you will learn how to add Items, Blocks and Custom Recipes! A section on Tools and how to add those is presented as well!
The Intermediate Concepts is where you'll really pick up some amazing skill needed for proper Minecraft Modding with Fabric! You'll learn Custom Crops, Sounds, Custom Shields and so, so much more!
But that's not all! We will also cover advanced topics such as Block Entities, Custom Mobs and even Ore Generation amongst others and Structure Generation.
With a bit of creativity and applying the lessons you get from this course, you might just make the next Minecraft Mod hit!
This course is accessible to complete beginners. Even if you have never programmed in your life! The only requirement is that you own Minecraft and are vaguely familiar with the Game and some popular Minecraft Mods or even Minecraft Modpacks.
All files and the entire Source Code will be available so you can follow along with everything I do in the videos.
NOT AN OFFICIAL MINECRAFT PRODUCT. NOT APPROVED BY OR ASSOCIATED WITH MOJANG.