User Tools

Site Tools


start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
start [2022/11/14 14:08] – Adds publishing_using_github_actions to the homepage xipitstart [2023/11/13 21:24] (current) modmuss50
Line 1: Line 1:
 ====== Welcome to the Fabric Wiki! ====== ====== Welcome to the Fabric Wiki! ======
  
-Fabric is a modular modding toolchain targeting Minecraft 1.14 and above, including snapshots.+This resource is dedicated to Fabric. Fabric is a modular modding toolchain targeting Minecraft: Java Edition 1.14 and above, including snapshots.
  
-**Hint:**+Some pages on the wiki may be out-of-date or a work in progress.
  
-This is an early work-in-progress wiki dedicated to documenting the methods, tools and APIs of the Fabric project+This wiki is also available in the following languages: 
- +  * {{:china.png?nolink&32|}} [[zh_cn:start|简体中文 (Simplified Chinese)]] 
-Learn how to **[[wiki_meta|contribute]]** to the wiki! +  * {{:france.png?nolink&32|}} [[fr:accueil|Français (French)]] 
 +  {{:germany.png?nolink&32|}} [[de:start|Deutsch (German)]] 
 +  {{:south-korea.png?nolink&32|}} [[ko_kr:start|한국어 (Korean)]] 
 +  {{:russia.png?nolink&32|}} [[ru:start|Русский (Russian)]] 
 +  {{:japan.png?nolink&32|}} [[ja:start|日本語 (Japanese)]] 
 +  * {{:es.png?nolink&32|}} [[es:start| Español]]
  
-**Make sure to check out [[community_discords|our community spaces]], and read our [[rules|Community Rules]]!**+**Make sure to check out our [[community:official_community_spaces|community spaces and rules]]!**
  
   * [[faq:user|Frequently Asked Questions (from users)]]   * [[faq:user|Frequently Asked Questions (from users)]]
   * [[faq:expert|Frequently Asked Questions (expert mode)]] - a supplement to the above with more detailed answers   * [[faq:expert|Frequently Asked Questions (expert mode)]] - a supplement to the above with more detailed answers
  
-This wiki is also available in the following languages: +====== Player Tutorials ======
-  * [[zh_cn:start|简体中文 (Simplified Chinese)]] +
-  * [[fr:accueil|Français (French)]] +
-  * [[de:start|Deutsch (German)]] +
-  * [[ko_kr:start|한국어 (Korean)]] +
-  * [[ru:start|Русский (Russian)]] +
-  * [[ja:start|日本語 (Japanese)]]+
  
-===== Player tutorials =====+If you wish to use Fabric as a player, server administrator or modpack developer, you should view the [[player:tutorials:start|Player Tutorials]] section of the wiki.
  
-If you wish to use Fabric as a player, server administrator or modpack developer, these articles are for  +  * [[player:tutorials:start#installing_fabric_loader|Installing Fabric Loader]] 
-you:+  * [[player:tutorials:start#updating_fabric_loader|Updating Fabric Loader]] 
 +  * [[player:tutorials:start#installing_java|Installing Java]] 
 +  * [[player:tutorials:start#troubleshooting|Troubleshooting]]
  
-==== Installing Fabric Loader ====+---- 
 +====== Modpack and Launcher Developers ======
  
-  * [[install|Installing Fabric]] +:!: //These pages may be slightly outdated, we are currently in process of rewriting them.//
-  * [[player:tutorials:install_mcl:windows|Installing Fabric using the Minecraft Launcher (Windows)]] +
-  * [[player:tutorials:install_multimc:windows|Installing Fabric using MultiMC (Windows)]] +
-  * [[player:tutorials:install_multimc:mac|Installing Fabric using MultiMC (macOS)]] +
-  * [[player:tutorials:install_gdlauncher:windows|Installing Fabric using GDLauncher (Windows)]] +
-  * [[player:tutorials:install_gdlauncher:linux|Installing Fabric using GDLauncher (Linux)]] +
-  * [[player:tutorials:server:windows|Installing a Minecraft/Fabric Server]] +
-  * [[player:tutorials:install_server|Installing a Fabric server without a GUI (e.g. Linux)]] +
-  * [[player:tutorials:adding_mods|Adding mods]]+
  
-==== Updating Fabric Loader ==== +**Please keep in mind that we recommend using Minecraft Launcher and MCUpdater for modpack play and distribution.** However, that doesn't stop us from trying to support other solutions!
-  * [[player:tutorials:update_mcl|Update in MC Launcher]] +
-  * [[player:tutorials:updating_fabric_using_multimc_launcher|Updating an existing MultiMC Instance]] +
- +
-==== Installing Java ==== +
-  * [[player:tutorials:java:windows|Install/Verify Java (Windows)]] +
-  * [[player:tutorials:java:mac|Install/Verify Java (macOS)]] +
-  * [[player:tutorials:java:linux|Install/Verify Java (Linux)]] +
- +
-==== Troubleshooting ==== +
- +
-  * [[player:tutorials:logs_ml:windows|How to post your logs to get help (Win)]] +
-  * [[player:tutorials:logs_ml:mac|How to post your logs to get help (macOS)]] +
- +
-==== Misc ==== +
- +
-  * [[player:tutorials:muljava_mmc|Multiple Java versions in MultiMC]] +
- +
----- +
-===== Modpack and Launcher Developers ===== +
- +
-**Please keep in mind that we recommend using MultiMC and MCUpdater for modpack play and distribution.** However, that doesn't stop us from trying to support other solutions!+
  
   * [[tutorial:mcupdater_modpacks|Using MCUpdater for Fabric modpacks]] (covers usage and creation)   * [[tutorial:mcupdater_modpacks|Using MCUpdater for Fabric modpacks]] (covers usage and creation)
Line 69: Line 42:
  
 ---- ----
-===== Tutorials for Developing with Fabric =====+====== Mod Developer Tutorials ======
  
-If you'd like to start developing with Fabric, here are some articles which might interest you+If you'd like to start developing with Fabric, you should check out the [[tutorial:start|Mod Developer Tutorials]] section of the wiki.
- +
-==== Setup ==== +
- +
-These pages will help you setup a productive development environment and semi-automated releases. +
- +
-  * [[tutorial:setup|Setting up a Development Environment]] +
-  * [[https://wiki.vg/Debugging|Enabling Log4j Debug Messages]] +
-  * [[tutorial:minotaur|Publishing Mods on Modrinth with Minotaur]] +
-  * [[tutorial:cursegradle|Publishing Mods on Curseforge with CurseGradle]] +
-  * [[tutorial:publishing_mods_using_github_actions|Publishing Mods on Curseforge, Modrinth & Github using the MC-Publish Github Action by Kir-Antipov]] +
- +
-==== Basics ==== +
- +
-These pages are essential must-reads when modding with Fabric, and modding Minecraft in general, if you are new to modding, it is recommended you read the following. +
- +
-  * [[tutorial:primer|Introduction to Modding Minecraft in General]] +
-  * [[tutorial:introduction|Introduction to Modding with Fabric]] +
-  * [[tutorial:reading_mc_code|Reading the Minecraft source]] +
-  * Conventions and Terminology +
-    * [[tutorial:terms|Basic Conventions and Terminology]] +
-    * [[tutorial:side|Server and Client Side Terminology]] +
-  * Registries +
-    * [[tutorial:registry|Intro to Registries]] +
-    * [[tutorial:registry_types|Standard Registries]] +
-  * Development Tools  +
-    * [[tutorial:libraries|Third-party Library Mods]] +
-    * [[tutorial:applychanges|Applying Changes without Restarting Minecraft]] +
-  * [[tutorial:lang|Creating a lang file]] +
-  * [[tutorial:mappings|Using Mappings]] +
- +
-==== Items ==== +
- +
-These pages will guide you on the creation of items, such as tools, armor and food. Alongside crafting recipes and enchantments. +
- +
-  * [[tutorial:items_docs|Item Documentation]] +
-  * [[tutorial:items|Practical Example: Adding an Item]] +
-    * [[tutorial:itemgroup|Creating an ItemGroup for your items]] +
-    * [[tutorial:tooltip|Adding a custom tooltip to your item]] +
-  * [[tutorial:recipes|Adding a Crafting Recipe]] +
-  * [[tutorial:armor|Adding Armor]] +
-  * [[tutorial:tools|Adding Tools]] +
-  * [[tutorial:shield|Adding a Shield]] +
-  * [[tutorial:enchantments|Adding Custom Enchantments]] +
-  * [[tutorial:model_predicate_providers|Adding Model Predicate Providers]] +
- +
-==== Blocks and Block Entities==== +
- +
-These pages will guide you through the creation of blocks, storage of items and data in blocks via block entities, and the creation of models and blockstates. +
- +
-  * [[tutorial:blocks|Adding a Block]] +
-  * [[tutorial:blockstate|Giving a Block State]] +
-    * [[tutorial:directionalblock|Making a Directional Block]] +
-    * [[tutorial:waterloggable|Make the Block Waterloggable]] +
-  * [[tutorial:blockentity|Adding a BlockEntity]] +
-  * [[tutorial:inventory|Storing Items in a Block as an Inventory]] +
-  * [[tutorial:colorprovider|Dynamically Change the Color of a Block or Item]] +
-  * [[tutorial:blockappearance|Manipulating a Block's Appearance]] +
-  * [[tutorial:dynamic_block_rendering|Rendering Blocks and Items Dynamically]] +
-    * [[tutorial:custom_model|Rendering Blocks and Items Dynamically using a custom Model]] +
-    * [[tutorial:blockentityrenderers|Rendering Blocks and Items Dynamically using Block Entity Renderers]] +
-  * [[tutorial:screenhandler|Creating a Container Block]] +
-    * [[tutorial:extendedscreenhandler|Syncing Custom Data with Extended ScreenHandlers]] +
-    * [[tutorial:propertydelegates|Syncing Integers with PropertyDelegates]] +
-  * [[tutorial:crops|Adding a Custom Crop]] +
- +
-==== Data Generation ==== +
- +
-These pages will guide you through the [[https://github.com/FabricMC/fabric/tree/HEAD/fabric-data-generation-api-v1|Fabric Data Generation API]], which generates JSON files through data generators. +
- +
-  * [[tutorial:datagen_setup|Getting started using Data Generation]] +
-  * [[tutorial:datagen_advancements|Advancements Generation]] +
-  * [[tutorial:datagen_loot|Loot Table Generation]] +
-  * [[tutorial:datagen_model|Model Generation]] +
-  * [[tutorial:datagen_tags|Tag Generation]] +
-  * [[tutorial:datagen_recipe|Recipe Generation]] +
-  * [[tutorial:datagen_language|Language File Generation]] +
- +
-==== World Generation ==== +
- +
-These pages will guide you through world generation concepts. +
- +
-  * [[tutorial:dimensionconcepts|Dimension Concepts]] +
-  * [[tutorial:ores|Generating Custom Ores]] +
-  * [[tutorial:features|Adding Features]] +
-  * [[tutorial:trees|Adding Trees (Advanced)]] +
-  * [[https://misode.github.io/guides/adding-custom-structures/|Adding Structure Features]] +
-  * [[tutorial:biomes|Adding Biomes]] +
-  * [[tutorial:chunkgenerator|Custom Chunk Generators (DRAFT)]] +
-  * [[tutorial:world_presets|Adding World Presets]] +
-  * [[https://minecraft.fandom.com/wiki/Custom_dimension|Adding Dimensions]] +
-    * [[tutorial:custom_portals|Creating a Custom Portal]] +
- +
-==== Commands ==== +
- +
-These pages will guide you through [[https://github.com/Mojang/brigadier|Mojang's Brigadier library]] which allows you to create commands with complex arguments and actions.+
  
 +  * [[tutorial:start#creating_your_first_mod|Creating Your First Mod]]
 +  * [[tutorial:items|Adding Items]]
 +  * [[tutorial:blocks|Adding Blocks]]
 +  * [[tutorial:persistent_states|Saving Custom Data Across Restarts]]
 +  * [[tutorial:datagen_setup|Data Generation]]
 +  * [[tutorial:dimensionconcepts|World Generation]]
 +  * [[tutorial:mixin_introduction|Introduction to Mixins]]
   * [[tutorial:commands|Creating Commands]]   * [[tutorial:commands|Creating Commands]]
-  * [[tutorial:command_exceptions|Command Exceptions]] +  * [[tutorial:callbacks|Events]] 
-  * [[tutorial:command_suggestions|Command Suggestions]] +  * [[tutorial:entity|Entities]] 
-  * [[tutorial:command_redirects|Command Redirects]] +  * [[tutorial:fluids|Fluids]]
-  * [[tutorial:command_argument_types|Command Argument Types]] +
-  * [[tutorial:command_examples|Command Examples]]+
  
-==== Events ====+----
  
-These pages will guide you through using the many events included in [[https://github.com/FabricMC/fabric|Fabric API]], and how to create your own events for you or other mods to use.+====== Documentation ======
  
-  * [[tutorial:callbacks|Listening to Events (DRAFT)]] +If you want to know how projects in the Fabric toolchain work, you should check out the [[documentation:start|Documentation]] section of the wiki.
-  * [[tutorial:events|Creating Custom Events]] +
-  * [[tutorial:adding_to_loot_tables|Adding Items to Existing Loot Tables]] +
-  * [[tutorial:event_index|Event Index (DRAFT)]]+
  
-==== Entities ==== +  * [[documentation:start#specifications|Specifications]] 
-  * [[tutorial:entity|Adding an Entity]] +  * [[documentation:start#technical_documentation|Technical Information]] 
-  * [[tutorial:spawn_egg|Adding a Custom Spawn Egg]] +  * [[documentation:start#external_documentation|External Documentation]]
-  * [[tutorial:projectiles|Creating a Custom Projectile]]+
  
-==== Fluids ==== +---- 
-  * [[tutorial:fluids|Creating a Fluid]]+====== Contributing to the Wiki ======
  
-==== Mixins & ASM ==== +The Wiki is mostly maintained by the communityfor the communityIf you are interested in contributing to the wiki, check out the following pages first:
- +
-These pages will guide you through the usage of [[https://github.com/SpongePowered/Mixin|SpongePowered's Mixin library]]which is a highly complex topicWe recommend you read these pages thoroughly.  +
- +
-  * [[tutorial:mixin_introduction|Introduction]] +
-  * [[tutorial:mixin_registration|Mixin registration]] +
-  * [[tutorial:mixin_injects|Injects]] +
-  * [[tutorial:mixin_accessors|Accessors and Invokers]] +
-  * [[tutorial:mixin_redirectors|Redirectors]] +
-    * [[tutorial:mixin_redirectors_methods|Method redirectors]] +
-  * [[tutorial:mixin_tips|Tips]] +
-  * [[tutorial:mixin_examples|Examples]] +
-  * [[tutorial:mixin_hotswaps|Hotswapping Mixins]] +
-  * [[tutorial:mixin_export|Exporting Mixin Classes]] +
-  * [[tutorial:accesswideners |Access Wideners]] +
-  * [[tutorial:reflection|Reflection]] +
-  * [[tutorial:interface_injection|Interface Injection]]  +
- +
-==== Miscellaneous ==== +
- +
-:!: //Some of these pages are currently being written, some may not be available.// +
- +
-  * [[tutorial:recipe_types_introduction|Introduction to RecipeTypes]] +
-    * [[tutorial:recipe_type|Adding a recipe type (DRAFT)]] +
-    * [[tutorial:cooking_recipe_type|Adding a cooking recipe type]] +
-    * [[tutorial:cutting_recipe_type|Adding a cutting recipe type]] +
-  * [[tutorial:mining_levels|Mining Levels]] +
-  * [[tutorial:global_data|Global World Data]] +
-    * [[tutorial:persistent_states|Persistent States]] +
-    * [[tutorial:cardinal_components|Cardinal Components]] +
-  * [[tutorial:pixel_raycast|Raycasting]] +
-  * [[tutorial:keybinds|Custom Keybindings]] +
-  * [[tutorial:networking|Networking]] +
-  * [[tutorial:status_effects|Status Effects]] +
-  * [[tutorial:particles|Adding a Particle]] +
-  * [[tutorial:sounds|Playing Sounds]] +
-  * [[tutorial:gamerule|Custom Gamerule]] +
-  * [[tutorial:custom_resources|Custom Data/Resource Pack Resources]] +
-  * [[tutorial:tags|Tag Conventions]] +
-  * [[tutorial:list_of_useful_gists|List of Useful Tutorials]] +
-  * [[tutorial:stats|Adding Player Statistics]] +
-  * [[tutorial:modding_tips|Modding Tips]]  +
-  * [[tutorial:datafixer|DataFixers [WIP]]] +
-  * [[tutorial:transfer-api|Fluid, Item and Energy Transfer]] +
- +
-==== Yarn ==== +
-  * [[tutorial:migratemappings|Updating Yarn mappings in a Java codebase]] +
-  * [[tutorial:updating_yarn|Updating Yarn to a new Minecraft version]] +
- +
-==== Contribute to Fabric ==== +
- +
-  * [[tutorial:feature_procedure|The Fabric Feature Procedure]] +
-  * [[tutorial:fablabs|FabLabs]] +
-  * [[https://github.com/FabricMC|Fabric on GitHub]] +
-  * [[https://github.com/FabricMC/yarn|Yarn Mappings on GitHub]] +
- +
-Looking for old tutorials? They've probably been archived. [[tutorial:archived_pages|You can view archived pages here.]] +
- +
-===== Documentation ===== +
- +
-  * [[documentation:fabric_mod_json|Structure of fabric.mod.json]] +
-  * [[documentation:fabric_mod_json_spec|fabric.mod.json specification]] +
-  * [[documentation:entrypoint|Entrypoints]] +
-  * [[http://github.com/SpongePowered/Mixin/wiki|Mixin library wiki]] +
-  * [[documentation:rendering|Rendering in Fabric (DRAFT)]] +
-  * [[documentation:build_pipelines|Fabric build pipelines (DRAFT)]] +
-  * [[documentation:fabric_loader|Fabric Loader]] +
-  * [[documentation:fabric_loom|Fabric Loom]] +
- +
-==== Examples ==== +
- +
-  * [[https://github.com/FabricMC/fabric-example-mod|Mod environment template]] +
-  * [[https://github.com/FabricMC/fabric/tree/master/fabric-testmods/java/net/fabricmc/fabric|Fabric API test mods]] (Outdated) - not a direct tutorialbut may come in handy +
- +
----- +
-===== Contributing to the Wiki =====+
  
-  * [[wiki_meta|Wiki Meta]] - Starting point for contributing to the wiki +  * [[wiki:meta|Wiki Meta]] - Starting point for contributing to the wiki 
-  * [[wiki_agenda|Wiki Agenda]] - See what is on the current agenda, and what other contributors are currently working on.+  * [[wiki:agenda|Wiki Agenda]] - See what is on the current agenda, and what other contributors are currently working on.
start.1668434909.txt.gz · Last modified: 2022/11/14 14:08 by xipit