Line 13: |
Line 13: |
| **** <code>resources</code> - The resources for the <code>main</code> source set | | **** <code>resources</code> - The resources for the <code>main</code> source set |
| ***** <code>META-INF</code> - The folder for '''metadata inf'''ormation files<ref>[https://stackoverflow.com/a/6075320/14416954 StackOverflow answer]: ''... Basically, if it was stored in META-INF, it was Meta-data Information...''</ref> | | ***** <code>META-INF</code> - The folder for '''metadata inf'''ormation files<ref>[https://stackoverflow.com/a/6075320/14416954 StackOverflow answer]: ''... Basically, if it was stored in META-INF, it was Meta-data Information...''</ref> |
− | ****** <code>mods.toml</code> - The [[Proper Mod Structuring#The mods.toml file|<tt>mods.toml</tt> file/1.16]], where mods are declared | + | ****** <code>mods.toml</code> - The [[Proper Mod Structuring#The mods.toml file/1.16|<tt>mods.toml</tt> file]], where mods are declared |
− | ***** <code>pack.mcmeta</code> - File used by Minecraft to [[mc:Data Pack#pack.mcmeta|identify data and resource packs/1.16]] | + | ***** <code>pack.mcmeta</code> - File used by Minecraft to [[mc:Data Pack#pack.mcmeta/1.16|identify data and resource packs]] |
− | ** <code>.gitattributes</code> - Used by [[wikipedia:Git|Git/1.16]] for specifying attributes for files<ref>[https://git-scm.com/docs/gitattributes Official git documentation on <tt>.gitattributes</tt>]</ref> | + | ** <code>.gitattributes</code> - Used by [[wikipedia:Git/1.16|Git]] for specifying attributes for files<ref>[https://git-scm.com/docs/gitattributes Official git documentation on <tt>.gitattributes</tt>]</ref> |
| ** <code>.gitignore</code> - Used by Git for specifying intentionally untracked/ignored files<ref>[https://git-scm.com/docs/gitignore Official git documentation on <tt>.gitignore</tt>]</ref> | | ** <code>.gitignore</code> - Used by Git for specifying intentionally untracked/ignored files<ref>[https://git-scm.com/docs/gitignore Official git documentation on <tt>.gitignore</tt>]</ref> |
| ** <code>build.gradle</code> - The Gradle buildscript, which defines the project and tasks<ref>[https://docs.gradle.org/6.9/userguide/tutorial_using_tasks.html Gradle User Guide for 6.9: ''Build Script Basics'']</ref> | | ** <code>build.gradle</code> - The Gradle buildscript, which defines the project and tasks<ref>[https://docs.gradle.org/6.9/userguide/tutorial_using_tasks.html Gradle User Guide for 6.9: ''Build Script Basics'']</ref> |
Line 48: |
Line 48: |
| ** Pick a unique and memorable modid. The modid must be between 2 and 64 characters, and must consist of lowercase letters, numbers, underscores (<code>_</code>) and hyphens (<code>-</code>). The recommendation is to avoid using acronyms and abbreviations. | | ** Pick a unique and memorable modid. The modid must be between 2 and 64 characters, and must consist of lowercase letters, numbers, underscores (<code>_</code>) and hyphens (<code>-</code>). The recommendation is to avoid using acronyms and abbreviations. |
| * Change the <code>archivesBaseName</code> variable to your modid. This is used as the base name for the JAR file when you build your mod, and as the <tt>artifactId</tt> of your mod's [https://maven.apache.org/pom.html#Maven_Coordinates maven coordinates]. | | * Change the <code>archivesBaseName</code> variable to your modid. This is used as the base name for the JAR file when you build your mod, and as the <tt>artifactId</tt> of your mod's [https://maven.apache.org/pom.html#Maven_Coordinates maven coordinates]. |
− | * Change the <code>group</code> to your [[Proper Mod Structuring#Packaging|unique root java package/1.16]]. This is used as the <tt>groupId</tt> of your mod's maven coordinates. | + | * Change the <code>group</code> to your [[Proper Mod Structuring#Packaging/1.16|unique root java package]]. This is used as the <tt>groupId</tt> of your mod's maven coordinates. |
| * In the <code>jar</code> task, change the values of the <code>Specification-Vendor</code> and <code>Implementation-Vendor</code> keys to your username/brand name or other form of identification. | | * In the <code>jar</code> task, change the values of the <code>Specification-Vendor</code> and <code>Implementation-Vendor</code> keys to your username/brand name or other form of identification. |
− | * ''Optional suggestion: '' Change the <code>version</code> variable to have a 0 as the major version (ex. <code>'0.1'</code>. This is to follow [[Semantic Versioning#During Development|semantic versioning guidelines/1.16]] for versions in active development. | + | * ''Optional suggestion: '' Change the <code>version</code> variable to have a 0 as the major version (ex. <code>'0.1'</code>. This is to follow [[Semantic Versioning#During Development/1.16|semantic versioning guidelines]] for versions in active development. |
| | | |
| == Building and Testing == | | == Building and Testing == |
Line 58: |
Line 58: |
| * <code>runClient</code>, for starting the client. | | * <code>runClient</code>, for starting the client. |
| * <code>runServer</code>, for starting the dedicated server. ''You will need to accept the EULA through the <tt>eula.txt</tt> after running the server for the first time.'' | | * <code>runServer</code>, for starting the dedicated server. ''You will need to accept the EULA through the <tt>eula.txt</tt> after running the server for the first time.'' |
− | * <code>runData</code>, for starting the client in [[Datageneration|data generation/1.16]] mode. | + | * <code>runData</code>, for starting the client in [[Datageneration/1.16|data generation]] mode. |
| | | |
| {{Tip|Always test your mod in both the client and the dedicated server, even if you are making a one-sided mod. Mods should not crash when running on both sides, and one-sided mods should not crash if they run on the wrong side.}} | | {{Tip|Always test your mod in both the client and the dedicated server, even if you are making a one-sided mod. Mods should not crash when running on both sides, and one-sided mods should not crash if they run on the wrong side.}} |
Line 64: |
Line 64: |
| You can build your mod's final JAR using the <code>build</code> task. The resulting JAR will be located in the <code>build/libs</code> folder under your project directory. | | You can build your mod's final JAR using the <code>build</code> task. The resulting JAR will be located in the <code>build/libs</code> folder under your project directory. |
| | | |
− | [[Category:Getting Started/1.16]] | + | [[Category:Getting Started/1.16|Category:Getting Started]] |
| | | |
| | | |
− | [[Category:Beginner Topics/1.16]] | + | [[Category:Beginner Topics/1.16|Category:Beginner Topics]] |