Line 16:
Line 16:
As Forge is loading, it scans the jar file for the META-INF/accesstransformers.cfg file. if it's found, it is parsed according to the specification:
As Forge is loading, it scans the jar file for the META-INF/accesstransformers.cfg file. if it's found, it is parsed according to the specification:
−
<code ->
+
<code ->NewAccessSpecifier MemberSignature # comment</code>
−
NewAccessSpecifier MemberSignature # comment
−
</code>
A random example to understand the syntax:
A random example to understand the syntax:
−
<code ->
+
<code ->public net.minecraft.util.palette.IResizeCallback # makes IResizeCallback public</code>
−
public net.minecraft.util.palette.IResizeCallback # makes IResizeCallback public
−
</code>
If a valid entry is found on a line, Forge will look into the bytecode of the file where that member is defined, and change its access to whatever you desire it to be.
If a valid entry is found on a line, Forge will look into the bytecode of the file where that member is defined, and change its access to whatever you desire it to be.
−
This startup modification means accessing is O(1) for all accesses after this initial change, which makes it a great option for performance if you're looking at something a <code>lot.</code>
+
This startup modification means accessing is O(1) for all accesses after this initial change, which makes it a great option for performance if you're looking at something a lot.
== Using Access Transformers in your mod ==
== Using Access Transformers in your mod ==