Jump to content

Recommended Posts

Posted

Forge Version: 36.1.0

Minecraft Version: 1.16.5

Downloads:

 


Intro:
Lots of fixes, Mojang bugs crushed, and modder facing features added.

First and foremost, we have changed our repository to use the Mojang Obfuscation Mappings.
See our thoughts on that (here). 


In short:  

We understand that the people at Mojang want this to be allowed, but the license does not clearly back their words, and puts us in this difficult position.  
However, we have almost a decade worth of working experience with the people at Mojang. To the best of our knowledge we are in good standing, and they explicitly wish to allow us to use this data for our purposes. As such, we have decided to move forward with the license in it's current form, while still trying to get Mojang to better clarify certain edge cases related to our projects.

We advise that all modders using the Official Mojang mappings be aware of the license they are under. You can make your own decision on how you want to proceed.


Toolchain:
We've also updated our tool chain to more modern Gradle versions which should allow better development experiences for modders.
If you choose to use official names, there is an automated way to migrate your mod's sources to new mappings. The same updateMappings task that has existed for years. If you do not know how to use this, check the Forge discord. However, be aware that currently, these names do not contain javadocs or parameter names. Simply because this data does not exist in the official mappings. There is a community effort to crowdsource data for that. So pitch in if you can.

MCP Data:

This isn't specifically related to Forge, however, I have been given the official go ahead to relicense MCP's crowdsourced data, and the old intermediate values as modified zlib. This means it actually has a official license now. This will only matter to a super small set of the community. See the MCPConfig repo for more details.

 

Changelog:
New:

 

  • New feature for mods to define new world types
  • TileEntities now invalidate capabilities when the chunk they are in unloads, including vanilla TEs.
  • ExistingFileHelper can now track generated resources.
  • Mod data packs can now be disabled.
  • mods.toml URLs are now invalid by default, quieting errors in large modpacks.
  • New ItemAttributeModifierEvent
  • New LivingConversionEvent.
  • New IWeatherParticleRenderHandler to allow a mod to take control over weather particles and sounds.
  • Add a SoundType subclass that uses suppliers, to make this system easier for modders.
  • Shear interactions new extend to subclasses.
  • Add supplier variant to `AbstractBlock.Properties#lootFrom`.
  • Set WM_CLASS and WM_INSTANCE_NAME for early progress window.
  • Allow Chunk loading Tickets to opt-into forcing chunk ticks.
  • Add milk fluid to the bucket.
  • Allow addition of modded biomes to overworld biome list.
  • Add new ASM transformers for modders (field_to_instanceof, itemstack delegate).
  • Add a block tag to allow mods to blacklist blocks endermen should not be able to place blocks on top of.
  • Add loot table ID in Global Loot Modifiers
  • Added generic multi part entity API
  • Reintroduce forge's chunk manager to allow mods to persistently force chunks
  • Log stacktraces in NettyPacketEncoder.
  • Add IExtensibleEnum to GrassColorModifier
  • Disable syncing of Feature and Biome registries
  • Fix shaders breaking almost every overlay that uses textures
  • Reworked player visibility event
  • Add ForgeHooks.canEntitySpawn to Cat, Phantom, and Patrol spawners.
  • Allow mods to use additional custom LootParameter when querying existing loot tables
  • Added MultipartBakedModel.getModelData for modders
  • Deprecated Forge's setDimension command
  • Reduce default logging markers in the MDK.
  • Add a way to specify a custom background texture with namespaces in the Creative GUI.
  • New entity attribute setup events
  • Add support for caching config values
  • Add Opacity to ForgeHooksClient#renderMainMenu
  • Add vanilla packet splitting for forge<->forge connections
  • Add a way to let mods know if optional mods and optional network channels are present in the remote.
  • New automatic fix mod configurations deemed invalid for simple reasons. Modders should make sure their configs contain valid default values.
  • New hook to make custom WoodTypes easier
  • New hook to allow ITeleporter to override the vanilla teleport sound


Fixes:

  • Fixed crashing when using Java 15
  • Fixed loosing vanilla dimensions if cutom dimensions can not be read from datapacks/world. Fixes MC-197860
  • Also Inject vanilla dimensions inside worlds missing them, thus reviving vanilla dimensions in worlds that were effected by the above issue.
  • Fixed crash when mods add goals to skeleton horses. Fixes MC-206338
  • Fixed entity navigation to stop entities spinning - MC-94054
  • Fixed MC-181464 persisting for modded shields
  • Fixed datagen order of multipart conditions being unstable
  • Fixed BlockStateProvider item models not knowing about block models
  • Fixed wrong function call in BlockStateProvider.horizontalFaceBlock
  • Fixed LazyOptional potentially notifying invalidation listeners multiple times.
  • Fixed RightClickBlock ALLOW not being implemented
  • Fixed modded PointOfInterestType's not populating blockstate map when registered
  • Fixed potential NPE in ForgeHooks.onItemPlaceIntoWorld when passing in null player.
  • Fixed compound ingredient in shapeless recipes
  • Fixed VanillaConnectionNetworkFilter sending out invalid entity properties packets without an entity ID
  • Fixed missing serializers when deserializing global loot modifiers
  • Fixed ModFileResourcePack.getAllResourceLocations ignoring resourceNamespace.
  • Fixed crash when beehive is broken by fake player 
  • Fixed entities not correctly being able to be ridden under water.
  • Fixed FML's Config Sync packet not allowing same length filenames in encoder and decoder.
  • Fixed dynamic registries not getting ids assigned correctly from old worlds.
  • Fixed existing file tag provider support looking in the wrong folder for custom tag types.
  • Fixed translucent model parts of MultiLayerModels rendering as missing models due to differing rendertypes when rendering block model.
  • Fixed Scheduled events being called by derived worlds.
  • Fixed IAngerable entities crashing when reading nbt on client
  • Fixed NullPointerException when adding new loot pool
  • Fixed onBlockAdded being called twice for ItemEntity placing non-TE blocks
  • Fixed config spec in cases of enum class discrepancies
  • Fixed two places where querying an object for the new "valid" capability from a capability invalidation listener could cause the object to return the old invalid capability.
  • Fixed race condition in LazyOptional
  • Fixed Forge eating GLFW errors in startup
  • Fixed global cache not being a block render type
  • Fixed ItemTextureQuadConverter.convertTexture generating wrong quads
  • Fixed food bar not rendering when non-living entities are mounted
  • Fixed Configs not correcting when hot-loaded from changes on disk
  • Fixed a few FluidUtil issues that were causing DispenseFluidContainer to not function properly
  • Fixed updateItemStackNBT not properly being called 
  • Fixed a few places where the forge hooks weren't being called, in vanilla code
  • Fixed potential Deadlock when using custom Item entities, modders be careful when using chunk load events.
  • Fixed Nashorn wrapper's issue with Java 8 and some methods of creating the scripting engine in mods
  • Fixed datapack exception related to EnumArgument when used with string arguments as siblings.
  • Fixed wrong eye height when entity size changes (esp. baby animals)

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Im trying to build my mod using shade since i use the luaj library however i keep getting this error Reason: Task ':reobfJar' uses this output of task ':shadowJar' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. So i try adding reobfJar.dependsOn shadowJar  Could not get unknown property 'reobfJar' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler. my gradle file plugins { id 'eclipse' id 'idea' id 'maven-publish' id 'net.minecraftforge.gradle' version '[6.0,6.2)' id 'com.github.johnrengelman.shadow' version '7.1.2' id 'org.spongepowered.mixin' version '0.7.+' } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'org.spongepowered.mixin' apply plugin: 'com.github.johnrengelman.shadow' version = mod_version group = mod_group_id base { archivesName = mod_id } // Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17. java.toolchain.languageVersion = JavaLanguageVersion.of(17) //jarJar.enable() println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}" minecraft { mappings channel: mapping_channel, version: mapping_version copyIdeResources = true runs { configureEach { workingDirectory project.file('run') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' arg "-mixin.config=derp.mixin.json" mods { "${mod_id}" { source sourceSets.main } } } client { // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. property 'forge.enabledGameTestNamespaces', mod_id } server { property 'forge.enabledGameTestNamespaces', mod_id args '--nogui' } gameTestServer { property 'forge.enabledGameTestNamespaces', mod_id } data { workingDirectory project.file('run-data') args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') } } } sourceSets.main.resources { srcDir 'src/generated/resources' } repositories { flatDir { dirs './libs' } maven { url = "https://jitpack.io" } } configurations { shade implementation.extendsFrom shade } dependencies { minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}" implementation 'org.luaj:luaj-jse-3.0.2' implementation fg.deobf("com.github.Virtuoel:Pehkui:${pehkui_version}") annotationProcessor 'org.spongepowered:mixin:0.8.5:processor' minecraftLibrary 'luaj:luaj-jse:3.0.2' shade 'luaj:luaj-jse:3.0.2' } // Example for how to get properties into the manifest for reading at runtime. tasks.named('jar', Jar).configure { manifest { attributes([ 'Specification-Title' : mod_id, 'Specification-Vendor' : mod_authors, 'Specification-Version' : '1', // We are version 1 of ourselves 'Implementation-Title' : project.name, 'Implementation-Version' : project.jar.archiveVersion, 'Implementation-Vendor' : mod_authors, 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), "TweakClass" : "org.spongepowered.asm.launch.MixinTweaker", "TweakOrder" : 0, "MixinConfigs" : "derp.mixin.json" ]) } rename 'mixin.refmap.json', 'derp.mixin-refmap.json' } shadowJar { archiveClassifier = '' configurations = [project.configurations.shade] finalizedBy 'reobfShadowJar' } assemble.dependsOn shadowJar reobf { re shadowJar {} } publishing { publications { mavenJava(MavenPublication) { artifact jar } } repositories { maven { url "file://${project.projectDir}/mcmodsrepo" } } }  
    • All versions of Minecraft Forge suddenly black screen even without mods (tried reinstalling original Minecraft, Java, updating drivers doesn't work)
    • When i join minecraft all ok, when i join world all working fine, but when i open indentity menu, i get this The game crashed whilst unexpected error Error: java.lang.NullPointerException: Cannot invoke "top.ribs.scguns.common.Gun$Projectile.getDamage()" because "this.projectile" is null crash report here https://paste.ee/p/0vKaf
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.