Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AT works with SS, but does not work in FML at runtime #22

Open
AbrarSyed opened this issue Aug 24, 2014 · 9 comments
Open

AT works with SS, but does not work in FML at runtime #22

AbrarSyed opened this issue Aug 24, 2014 · 9 comments

Comments

@AbrarSyed
Copy link
Contributor

This works with the AT loader in SS, but does not work in FML at runtime.
protected net.minecraft.entity.monster.EntityCreeper.field_70833_d #timeSinceIgnited

This is what FML loads, and this is how its supposed to be.
protected net.minecraft.entity.monster.EntityCreeper field_70833_d #timeSinceIgnited

The only difference is that the period between the className and the field/method name has been changed to a space.

@md-5
Copy link
Owner

md-5 commented Aug 24, 2014

? But you said SS works

@AbrarSyed
Copy link
Contributor Author

Yes, it works when it shouldn't. Causing people to have issues using their AT at runtime when it works at dev.

@ReikaKalseki
Copy link

Basically, the issue is an inconsistency in behavior; there is no good reason for a file to work in the development environment when it fails to do so at runtime. This leads to needless hours - or in my case, WEEKS - spent searching for other bugs.

@md-5
Copy link
Owner

md-5 commented Aug 24, 2014

Our code is basically just a copy pasta from FML, so this must be something that was fixed in FML. Should be as trivial as checking there are 3 parts to the AT.

OR

FML should be more permissive like we are since its a correctable error :p

@cpw
Copy link

cpw commented Aug 25, 2014

Don't care. You might have been a copy some years ago, you're probably not now @md-5. The period was removed. No, I'm not gonna add it back, it's a pain enough as it is handling parsing that file.

@LexManos
Copy link
Contributor

Note: As far as I can remember FML has never supported a . there. We have always used the space to split the different segments as it makes it really easy to determine if the modifier is targeting a class {no spaces} field {one space} or method {two spaces}

SS is more permissive in the format, it should not be.

@md-5
Copy link
Owner

md-5 commented Aug 27, 2014

@AbrarSyed can I please have some more sample ATs using method descriptors too. Not sure where they are in the FML repos

@ReikaKalseki
Copy link

Here are some (in the incorrect dot format).

protected net.minecraft.client.gui.inventory.GuiContainer.func_146977_a(Lnet/minecraft/inventory/Slot;)V #drawSlotInventory

public net.minecraft.client.audio.SoundEventAccessor.(Lnet/minecraft/client/audio/SoundPoolEntry;I)V #constructor

@AbrarSyed
Copy link
Contributor Author

taken from the forge AT, these lines work in both dev and runtime.

fields

public net.minecraft.world.gen.structure.StructureMineshaftPieces field_78818_a
public net.minecraft.world.gen.structure.ComponentScatteredFeaturePieces$DesertPyramid field_74941_i
public net.minecraft.world.gen.structure.ComponentScatteredFeaturePieces$JunglePyramid field_74943_l
public net.minecraft.world.gen.structure.ComponentScatteredFeaturePieces$JunglePyramid field_74944_m

methods

public net.minecraft.item.Item func_77656_e(I)Lnet.minecraft.item.Item; #setMaxDamage
public-f net.minecraft.item.Item func_77650_f(Lnet.minecraft.item.ItemStack;)Lnet.minecraft.util.IIcon; #getIcon is Final for unknown reason
public net.minecraft.item.Item func_77627_a(Z)Lnet.minecraft.item.Item; #setHasSubtypes
public net.minecraft.item.Item func_77631_c(Ljava.lang.String;)Lnet.minecraft.item.Item; #setPotionEffect
public net.minecraft.item.Item func_111206_d(Ljava.lang.String;)Lnet.minecraft.item.Item; #setTextureName

@AbrarSyed AbrarSyed changed the title someClass.func_123 works with SS, but does not work in FML at runtime AT works with SS, but does not work in FML at runtime Sep 22, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants