Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Where are the basic color values coded?


Recommended Posts

In my lines there i use the clear names DyeColor and WHITE.

I taught, maybe i have to use the SRG-Names for theese things, too, in the positions for class and instance in the code-line...


But maybe not, because it don´t want theese names as a string, like the fieldname.


Another thing, yout discord-link stucks on connecting (a black page with a rotating discord-logo)...

Edited by Drachenbauer
Link to comment
Share on other sites

Now i have theese lines for all 15 colors.


Is this all i need to show all this stuff in the new colors?


Now i found the class MaterialColors, where i als want to change fields now.

What must i put there as the class-instance?



The colors of banners and stuff are not changed now.

What else must i do, to make it work?

Edited by Drachenbauer
Link to comment
Share on other sites

20 minutes ago, Drachenbauer said:

Is this all i need to show all this stuff in the new colors?

I don't know. Have you checked?


20 minutes ago, Drachenbauer said:

Now i found the class MaterialColors, where i als want to change fields now.

What must i put there as the class-instance?

Are you serious? Use your IDE to find where new instances are created. It is not hard.

Link to comment
Share on other sites

I made a test, but the banners, sheeps and other stuff still appear in old colors.

I tried the code in common-setup and client-registries in my main-class, both the same.


Now my lines look like this:

        ObfuscationReflectionHelper.setPrivateValue(DyeColor.class, DyeColor.RED, 0xff0000, "field_193351_w"); //colorvalue
        ObfuscationReflectionHelper.setPrivateValue(DyeColor.class, DyeColor.RED, 0xff0000, "field_196067_y"); //fireworkColor
        ObfuscationReflectionHelper.setPrivateValue(DyeColor.class, DyeColor.RED, 0xff0000, "field_218390_z"); //textColor

Such a stack for each color.


And for the material-color, i found out, that the colors there are such class-instances, zoo.

So i was able to make this:

ObfuscationReflectionHelper.setPrivateValue(MaterialColor.class, MaterialColor.RED, 0xff0000, "field_76291_p");//colorvalue

also for all theese 16 colors and terracotta-colors. (there are some more values, but i don´t want to change them.)


What do i miss, to get this stuff to work?

Edited by Drachenbauer
Link to comment
Share on other sites

i decided to watch a video, how to use the debugger, than try this, and than tell more here.

Like the guy in the video, i made a breakpoint at the first one of theese lines and clicked the debug-button, but it does not stop there.


in other mods, other code, located in common-setup and client-registries is executed.

So i´m wondering about this.

Edited by Drachenbauer
Link to comment
Share on other sites

Now i finally found the solution:

i remembered, that there is a calculation for colorComponentValues.

i placed it in a function in my main-class and passed the result of this function into another reflection-line for each color, that uses the field colorComponentValues.

now the game-stuff appears in the new colors.

Link to comment
Share on other sites

Now i noticed, there seems to be a slightly different shader, if the color comes from a texture pnr or from a colorvalue-number in the code:


The leather-armour is dyed with the new shade of pink, i gave with my mod-code.

And in my skin png (Stella from Angry Birds) i used the same color value for the pink color.

So i wonder, why it looks different on almost horizontal surfaces (like the character´s face, if looking upward, like in the upper picture or the top of the body-ModelBox)


in this more vertical orientation, you can see, that the lighter pink in the middie of th helmet-front is exctly the same as at the face of the character.

And directly below the head, you can see the different shading between body and armour again


another sample:

bed and banner


In this bed-texture png i also used the same shade of pink and the banner get´s it´s color from my mod-code.

both models are TileEntity models

The same difference at the horizontal surfaces (the narrow top of the banner looks closer to white, than the top of the bed).


Why it makes a difference there, if the color comes from the texture or from a value in the code?

Edited by Drachenbauer
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • i re-made the player model with RenderPlayerEvent so i can modify the model, but the event is making a "double" of steve like a mirror, i dont know which steve is the real and which one is the fake but i need to remove or make invisible the one below i tried to use .Pre to make invisible the model this is how it looks without the bipedPART.showModel = false: https://imgur.com/a/fMuXsBR i tried to make the steve that is rotated down invisible but im doing the opposite(made invisible the one that is looking up or the correct one) and thats not what i want @SubscribeEvent public static void renderPre(RenderPlayerEvent.Pre event) { event.getRenderer().getEntityModel().bipedHead.showModel = false; event.getRenderer().getEntityModel().bipedBody.showModel = false; event.getRenderer().getEntityModel().bipedRightArm.showModel = false; event.getRenderer().getEntityModel().bipedLeftArm.showModel = false; event.getRenderer().getEntityModel().bipedRightLeg.showModel = false; event.getRenderer().getEntityModel().bipedLeftLeg.showModel = false; } @SubscribeEvent public static void renderPost(RenderPlayerEvent.Post event) { event.getRenderer().getEntityModel().bipedHead.showModel = true; event.getRenderer().getEntityModel().bipedBody.showModel = true; event.getRenderer().getEntityModel().bipedRightArm.showModel = true; event.getRenderer().getEntityModel().bipedLeftArm.showModel = true; event.getRenderer().getEntityModel().bipedRightLeg.showModel = true; event.getRenderer().getEntityModel().bipedLeftLeg.showModel = true; if(ModKeys.ability1Key.isKeyDown()) { PlayerEntity player = event.getPlayer(); GlStateManager.enableBlend(); PlayerModel<AbstractClientPlayerEntity> model = event.getRenderer().getEntityModel(); ModelRenderer head = model.bipedHead; ModelRenderer rightarm = model.bipedRightArm; ModelRenderer leftarm = model.bipedLeftArm; ModelRenderer body = model.bipedBody; ModelRenderer rightleg = model.bipedRightLeg; ModelRenderer leftleg = model.bipedLeftLeg; head.render(event.getMatrixStack(), event.getBuffers().getBuffer(RenderType.getEntitySolid(((AbstractClientPlayerEntity)player).getLocationSkin())), Minecraft.getInstance().getRenderManager().getPackedLight(player, 1f), OverlayTexture.NO_OVERLAY); rightarm.render(event.getMatrixStack(), event.getBuffers().getBuffer(RenderType.getEntitySolid(((AbstractClientPlayerEntity)player).getLocationSkin())), Minecraft.getInstance().getRenderManager().getPackedLight(player, 1f), OverlayTexture.NO_OVERLAY); leftarm.render(event.getMatrixStack(), event.getBuffers().getBuffer(RenderType.getEntitySolid(((AbstractClientPlayerEntity)player).getLocationSkin())), Minecraft.getInstance().getRenderManager().getPackedLight(player, 1f), OverlayTexture.NO_OVERLAY); body.render(event.getMatrixStack(), event.getBuffers().getBuffer(RenderType.getEntitySolid(((AbstractClientPlayerEntity)player).getLocationSkin())), Minecraft.getInstance().getRenderManager().getPackedLight(player, 1f), OverlayTexture.NO_OVERLAY); rightleg.render(event.getMatrixStack(), event.getBuffers().getBuffer(RenderType.getEntitySolid(((AbstractClientPlayerEntity)player).getLocationSkin())), Minecraft.getInstance().getRenderManager().getPackedLight(player, 1f), OverlayTexture.NO_OVERLAY); leftleg.render(event.getMatrixStack(), event.getBuffers().getBuffer(RenderType.getEntitySolid(((AbstractClientPlayerEntity)player).getLocationSkin())), Minecraft.getInstance().getRenderManager().getPackedLight(player, 1f), OverlayTexture.NO_OVERLAY); } }      
    • I figured it out! i had an extra "2" in the port. A personal paste error! Darn.
    • The voicechat-server.toml file is invalid. Correct it or delete it to regenerate the default.
    • 1.12 is no longer supported on this forum. Please update to a modern version of Minecraft to receive support.
    • debug.log must be explicitly enabled when using curse launcher, maybe that is the issue.
  • Topics

  • Who's Online (See full list)

  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.