# Mod settings #region mod modName = FalsePatternLib # This is a case-sensitive string to identify your mod. Convention is to use lower case. modId = falsepatternlib # The "root package" of your mod. All of your mod classes *should* be placed under this package for simplicity. modGroup = com.falsepattern.lib # In case your mod provides an API for other mods to implement you may declare its package here. Otherwise, you can # leave this property empty. # Example value: apiPackage = api # ... api + (modGroup -> com.myname.mymodid) -> com.myname.mymodid.api apiPackage = # Same thing, but for multi-poackage APIs, if said API packages cannot be easily split from internals. # Packages separated by semicolons # ExampleValue: apiPackages = foo;bar;baz # ... foo;bar;baz -> com.myname.mymodid.foo;com.myname.mymodid.bar;com.myname.mymodid.baz apiPackages = asm;compat;config;dependencies;mapping;mixin;optifine;text;toasts;turboasm;util # Same as apiPackages, but does not pull in inner packages apiPackagesNoRecurse = . # WHY is there no version field? # The build script relies on git to provide a version via tags. It is super easy and will enable you to always know the # code base or your binary. Check out this tutorial: https://blog.mattclemente.com/2017/10/13/versioning-with-git-tags/ # However, if you really want to, you can use the VERSION environment variable to override this. minecraftVersion = 1.7.10 forgeVersion = 10.13.4.1614 # Select a username for testing your mod with breakpoints. You may leave this empty for a random username each time you # restart Minecraft in development. Choose this dependent on your mod: # Do you need consistent player progressing (for example Thaumcraft)? -> Select a name # Do you need to test how your custom blocks interacts with a player that is not the owner? -> leave name empty developmentEnvironmentUserName = Developer #endregion mod # Publishing settings #region publishing # Note: Both the modrinth and the curseforge publications are invoked by the "publish" gradle task # (when the respective publication's project ID is set up correctly, of course). You don't need to individually run # each of them. # Maven publishing #region maven # The maven server to upload the artifacts to repositoryURL = https://mvn.falsepattern.com/releases # What name is the login information inside ~/.m2/settings.xml stored under # (see https://gist.github.com/FalsePattern/82d93e3cfab01f671cc5f4a95931cfe3 for an example) # You can also use the MAVEN_DEPLOY_USER and MAVEN_DEPLOY_PASSWORD environment variables to set this information! repositoryName = mavenpattern # What the artifact should be called. These will be the "name" of the published package, suffixed with the minecraft # version with a -mc prefix (groupid:artifactid-mcminecraftVersion:version:qualifier). # For instance, the default values this example ships with would turn into com.myname:mymodid-mc1.7.10:version # The version is determined automatically from the git version. mavenGroupId = com.falsepattern mavenArtifactId = falsepatternlib #endregion maven # Modrinth publishing #region modrinth # Publishing to modrinth requires you to set the MODRINTH_TOKEN environment variable to your current modrinth API token. # The project's ID on Modrinth. Can be either the slug or the ID. # Leave this empty if you don't want to publish on Modrinth. modrinthProjectId = eGLBEILf # The project's dependencies on Modrinth. You can use this to refer to other projects on Modrinth. # Syntax: scope1-type1:name1;scope2-type2:name2;... # Where scope can be one of [required, optional, incompatible, embedded], # type can be one of [project, version], # and the name is the Modrinth project or version slug/id of the other mod. # Example: required-project:fplib;optional-project:spongemixin1710;incompatible-project:gregtech modrinthDependencies = #endregion modrinth # CurseForge publishing #region curseforge # Publishing to CurseForge requires you to set the CURSEFORGE_TOKEN environment variable to one of your CurseForge API tokens. # The project's numeric ID on CurseForge. You can find this in the About Project box. # Leave this empty if you don't want to publish on CurseForge. curseForgeProjectId = 665627 # The project's relations on CurseForge. You can use this to refer to other projects on CurseForge. # Syntax: type1:name1;type2:name2;... # Where type can be one of [requiredDependency, embeddedLibrary, optionalDependency, tool, incompatible], # and the name is the CurseForge project id of the other mod. # Example: requiredDependency:railcraft;embeddedLibrary:cofhlib;incompatible:buildcraft curseForgeRelations = #endregion curseforge # This will be inserted as the changelog text in the Modrinth/CurseForge publications. # If the text contains "{version}", it will be replaced with the current mod version. This is useful when the changelog # is just a URL pointing to a GitHub release tag. # If left empty, the changelog text will be set to "No changelog URL was provided." # Example: https://github.com/myname/mymod/releases/tag/{version} changelog = https://github.com/FalsePattern/FalsePatternLib/releases/tag/{version} # endregion publishing # Buildscript automatic update checker settings #region autoupdates # Will update your build.gradle automatically whenever an update is available autoUpdateBuildScript = false # Disable checking of buildscript updates. skipBuildScriptUpdateCheck = false #endregion autoupdates # Gradle token strings #region gradletokens # Define a source file of your project with: # public static final String VERSION = "GRADLETOKEN_VERSION"; # The string's content will be replaced with your mods version when compiled. You should use this to specify your mod's # version in @Mod([...], version = VERSION, [...]) # Leave these properties empty to skip individual token replacements replaceGradleTokenInFile = Tags.java gradleTokenModId = GRADLETOKEN_MODID gradleTokenModName = GRADLETOKEN_MODNAME gradleTokenVersion = GRADLETOKEN_VERSION gradleTokenGroupName = GRADLETOKEN_GROUPNAME #endregion gradletokens # Mixins #region mixins # Provides setup for Mixins if enabled. If you don't know what mixins are: Keep it disabled! usesMixins = false # Enable this if one of the dependencies uses SpongeMixins. hasMixinDeps = false # Specify the location of your implementation of IMixinConfigPlugin. Leave it empty otherwise. mixinPlugin = # Whether you want the plugin to be configured as a PREINIT mixin mixinPluginPreInit = false # The minimum SpongePowered Mixins version required by the plugin. Internal default is 0.8.5 (GasStation) mixinPluginMinimumVersion = # Specify the package that contains all of your Mixins. You may only place Mixins in this package or the build will fail! mixinsPackage = # Specify any custom mixin .json configs here. If you have multiple, comma-separate them. If you don't want to load # any jsons manually, leave this empty. You can use custom configs even if you already have a plugin added. # note: mixins..json is used by the mixinPlugin's autogenerated config. Additionally, the refmap from the mixinsPackage # is always put into mixins..refmap.json. # example: mixins.foo.json,mixins.bar.json mixinConfigs = #endregion mixins # Coremod and access transformers #region core # Specify the configuration file for Forge's access transformers here. I must be placed into /src/main/resources/META-INF/ # Example value: mymodid_at.cfg accessTransformersFile = # Specify the core mod entry class if you use a core mod. This class must implement IFMLLoadingPlugin! # This parameter is for legacy compatibility only # Example value: coreModClass = asm.FMLPlugin + modGroup = com.myname.mymodid -> com.myname.mymodid.asm.FMLPlugin coreModClass = internal.asm.CoreLoadingPlugin #endregion core # Dependency deobfuscation settings (advanced) #region ddeobf # These 3 entries specify the location where the SRG mappings should be fetched from. Only set these if you know # what you're doing. The defaults inside the buildscript should just work without any extra configuration. remoteMappings = mappingsChannel = mappingsVersion = #endregion ddeobf # Miscellaneous settings #region misc # If your project is only a consolidation of mixins or a core mod and does NOT contain a 'normal' mod ( = some class # that is annotated with @Mod) you want this to be true. When in doubt: leave it on false! containsMixinsAndOrCoreModOnly = false # If enabled, you may use 'shadowCompile' for dependencies. They will be integrated in your jar. It is your # responsibility check the licence and request permission for distribution, if required. usesShadowedDependencies = true # If enabled, class stubbing will be enabled. In this mode, all classes with a package named "stubpackage" in their # path will be removed, and all classes that refer to said classes will be modified so that the "stubpackage" will map # to the root package instead. This is useful for referring to compile-time inaccessible classes, such as classes in the # default package remapStubs = true # Optional parameter to customize the produced artifacts. Use this to preserver artifact naming when migrating older # projects. New projects should not use this parameter. #customArchiveBaseName = #endregion misc