Hi would it be possible to make the value 0,0,0 for colour to be black? or maybe 1,1,1 i am not sure if you already have a black light colour or if it is just not possible but if it is can you please add it i think it would look amazing.
Hi would it be possible to make the value 0,0,0 for colour to be black? or maybe 1,1,1 i am not sure if you already have a black light colour or if it is just not possible but if it is can you please add it i think it would look amazing.
0,0,0 would make it look like a vanilla light source, (because those don't have color) , and 1,1,1 is definitely possible.
You aren't supposed to make lights that have a light brightness that's larger than your largest color component. In your second example, I would expect the light brightness to only be 1. The block would be VERY dim, and would only have an effect one block away.
The second one is more interesting. You could probably get away with setting all color channels to 0, while setting brightness to some number that's not 0, which will spread uncolored light... This is undefined behavior. Most of the time, it should be ignored, and it will render at full uncolored brightness anyways, but I think the latest commits don't preserve this behavior...
Long story short, set light brightness to the brightest channel... setting light brightness to 0 does exactly what you'd think... make a light with no color, or just set the light value and don't ever specify the light value. The API will set the light brightness appropriately.
I was just trying out your latest work from the GitHub which I compiled for 1.7.10 forge.
It works alright in some places but I noticed two things... maybe I broke something when I slit off the little example mod that was in the source with your colored lights coremod. It compiled just fine and I put it into my minecraft modpack to try it out (on a new world).
Alone, it had a very funny effect on the lava down in a deep trench. It made the lava black, with lightly glowing bluish highlights. And lighting did not seem to update very soon... I sometimes had to trigger it by placing a block. This was in the eclipse dev environment.
When I ran it with my other mods in Minecraft actual launcher profile, it did everything up to showing the world. Then it crashed.
The crash related to a bad cast exception (in coloredlightscore.src.helper.CLEntityRendererHelper.java[line 86]) from an unchecked cast of DynamicTexture to CLDynamicTexture3D. Of course, such a thing is not possible unless the casted class is an instance of the target class or a subclass of it. It could be put inside a try/catch or tested with instanceOf (which might be better), but I'm not sure what the idea was. There is a tranformer that adds a getter and setter with the types "DynamicTexture" but the CLEntityRenderInterface interface declares a getter for that field expects to return CLDynamicTexture3D. I'm not sure if this was intentional or an oversight.
I might try playing with it and see if I can make it work more reliably.
I was just trying out your latest work from the GitHub which I compiled for 1.7.10 forge.
It works alright in some places but I noticed two things... maybe I broke something when I slit off the little example mod that was in the source with your colored lights coremod. It compiled just fine and I put it into my minecraft modpack to try it out (on a new world).
Alone, it had a very funny effect on the lava down in a deep trench. It made the lava black, with lightly glowing bluish highlights. And lighting did not seem to update very soon... I sometimes had to trigger it by placing a block. This was in the eclipse dev environment.
When I ran it with my other mods in Minecraft actual launcher profile, it did everything up to showing the world. Then it crashed.
The crash related to a bad cast exception (in coloredlightscore.src.helper.CLEntityRendererHelper.java[line 86]) from an unchecked cast of DynamicTexture to CLDynamicTexture3D. Of course, such a thing is not possible unless the casted class is an instance of the target class or a subclass of it. It could be put inside a try/catch or tested with instanceOf (which might be better), but I'm not sure what the idea was. There is a tranformer that adds a getter and setter with the types "DynamicTexture" but the CLEntityRenderInterface interface declares a getter for that field expects to return CLDynamicTexture3D. I'm not sure if this was intentional or an oversight.
I might try playing with it and see if I can make it work more reliably.
BTW, thanks for making such a great mod!!!
And now you know why I haven't released yet!
Thanks for giving it a try
The lava is a victim of a somewhat larger bug: All tile entities that aren't solid blocks (lava, anvils, half blocks, etc) only use the available blue component when coloring themselves... it's a bug. Blue colored lava = brown nasty... the Lava SHOULD be lighting itself up, but it's only paying attention to the blue component it has.
The other problem you have is a bug in the obfuscation state... The mod works as expected in the dev environment, but when it's put into an obfuscated environment, several of the transformers miss, or do bad things. I squashed a couple of the problems, but it's the next thing on the list.
Then I need to see what's going on with the lava nonsense
Edit. I'm also pretty worried about the laggy light updates... something slowed that down quite a bit, and I think it might have been in the change that I crammed in the network code. Again, thanks for the update. I'll have to create a list of issues that are "open" somehow, because you're not the only one to follow my isntall directions, only to tell me a lot of what I had experienced myself. I REALLY appreciate you doing stuff though, and I hope you'll be willing to play with it some more!
Tip: Go ahead and open git issues if you're willing to spend the time. Just head to github's page, and add an issue. Write a short description of the problem + steps to repeat. Link to code if you're able. I'm only able to spend so much time on the project, but if you're willing to help me out with some of the documentation, that'd be super amazing!
I get this error when trying to run mc in eclipse with the extra argument: -Dfml.coreMods.load=coloredlightscore.src.asm.ColoredLightsCoreLoadingPlugin
[15:50:44] [main/INFO] [FML]: ColoredLightsCore: MCP_ENVIORNMENT=true
[15:50:44] [main/INFO] [LaunchWrapper]: Launching wrapped minecraft {net.minecraft.client.main.Main}
[15:50:45] [main/INFO] [FML]: Class net.minecraft.world.World is a candidate for transforming
[15:50:45] [main/INFO] [FML]: Transforming method getBlockLightValue_do
[15:50:45] [main/INFO] [FML]: Transforming method getLightBrightnessForSkyBlocks
[15:50:45] [main/INFO] [FML]: Transforming method getLightBrightness
[15:50:45] [main/INFO] [FML]: Transforming method computeLightValue
[15:50:45] [main/INFO] [FML]: Transforming method updateLightByType
[15:50:45] [main/INFO] [FML]: Finished Transforming class net.minecraft.world.World
[15:50:45] [main/INFO]: Setting user: ForgeDevName
[15:50:45] [main/INFO] [FML]: Class net.minecraft.block.Block is a candidate for transforming
[15:50:45] [main/INFO] [FML]: Transforming method setLightLevel
[15:50:45] [main/INFO] [FML]: Finished Transforming class net.minecraft.block.Block
[15:50:45] [main/ERROR] [LaunchWrapper]: Unable to launch
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_25]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_25]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:134) [launchwrapper-1.9.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.9.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_25]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_25]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_25]
at GradleStart.bounce(GradleStart.java:107) [start/:?]
at GradleStart.startClient(GradleStart.java:100) [start/:?]
at GradleStart.main(GradleStart.java:55) [start/:?]
Caused by: java.lang.IllegalAccessError: tried to access field net.minecraft.block.Block.lightValue from class coloredlightscore.src.api.CLApi
at coloredlightscore.src.api.CLApi.setBlockColorRGB(CLApi.java:224) ~[CLApi.class:?]
at coloredlightscore.src.helper.CLBlockHelper.setLightLevel(CLBlockHelper.java:12) ~[CLBlockHelper.class:?]
at net.minecraft.block.Block.setLightLevel(Block.java:490) ~[Block.class:?]
at net.minecraft.block.Block.registerBlocks(Block.java:255) ~[Block.class:?]
at net.minecraft.init.Bootstrap.func_151354_b(Bootstrap.java:457) ~[Bootstrap.class:?]
at net.minecraft.client.Minecraft.(Minecraft.java:333) ~[Minecraft.class:?]
at net.minecraft.client.main.Main.main(Main.java:141) ~[Main.class:?]
... 13 more
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at GradleStart.main(GradleStart.java:59)
I did everything as in the tutorial, I used the forge version I found in the github build file: 1.7.10-10.13.0.1184
Could you help me?
Thanks in advance! Before I go TOO far into debugging this, please verify you put the AccessTransformer in the right place, and please make sure you re-ran (right click, save link as) gradle clean gradle setupDecompWorkspace
It works for 1.7.10, so I don't really know where to start with your problem... and the API is for 1.7.10, so you're going to have a bad time on 1.7.2
Edit: On IRC: esper.net#ColoredLightCore EditEdit: I was waiting on Issue 12 before releaseing the mess again for 1.7.2..... I'll see if I can get to that soon.
Also the shader mod crashes with colored lights for me
java.lang.ArrayIndexOutOfBoundsException: 5888
at net.minecraft.client.renderer.Tessellator.func_147564_a(Tessellator.java:175)
at net.minecraft.client.renderer.WorldRenderer.func_147891_a(WorldRenderer.java:248)
at net.minecraft.client.renderer.WorldRenderer.func_147892_a(WorldRenderer.java:204)
at net.minecraft.client.renderer.RenderGlobal.func_72716_a(RenderGlobal.java:1522)
at net.minecraft.client.renderer.EntityRenderer.func_78471_a(EntityRenderer.java:1178)
at shadersmodcore.client.Shaders.beginRender(Shaders.java:2619)
at net.minecraft.client.renderer.EntityRenderer.func_78471_a(EntityRenderer.java)
at net.minecraft.client.renderer.EntityRenderer.func_78480_b(EntityRenderer.java:1011)
How did you load the shaders in the images?
That worked for an older release of 1.7.2... but ever since the change to the fixed function pipeline shader thingy, the shader core isn't happy. I don't know what isn't behaving, but I know that a couple of objects and things draw on screen before it throws the OOB... So I'm not sure what breaks, but it sounds fixable, considering we just need to find out what's overflowing where, and why. I'm guessing it's something I did, and I'd be more than interested in fixing it, but I'm not sure where to go for that at the moment.
Uhmmmmmm..... We're going to have to hold off on 1.8 while I figure out how to make 1.7.10 do everything I want. Thank you for being eager... but 1.8 just can't happen for a while.
You might want to update the api and source downloads to 1.2.2.
1.2.2 is latest stable, but the API doesn't change on the front end.
I should make a couple of changes eventually, but I want to move to a recommended build environment that simply loads CLC through the Code Chicken Core. Way easier to install, and only a couple steps, and then all you need is the latest stable, and none of the mumbo-jumbo with various library files here and there.
1.2.2 is latest stable, but the API doesn't change on the front end.
I should make a couple of changes eventually, but I want to move to a recommended build environment that simply loads CLC through the Code Chicken Core. Way easier to install, and only a couple steps, and then all you need is the latest stable, and none of the mumbo-jumbo with various library files here and there.
Seems like a much better way of doing things. I think I'll try out this way of installing the API. Thanks for clarifying the differences between the two versions though.
Seems like a much better way of doing things. I think I'll try out this way of installing the API. Thanks for clarifying the differences between the two versions though.
If you hang out on IRC, I'm usually readily available for help and support. Then I can hear how it works out for you
Hello I am using ColoredLightsCore-1.3.7.39 for 1.7.10 and am having an issue with decocraft making stuff from that mod invisible or just a plain colour texture. It is definitely this mod as I removed all my other mods except this and decocraft. Will this be fixed soon as I would love this to be compatible with it.
http://www.stuff.co.nz/technology/6069704/Review-Minecraft-for-PC/
0,0,0 would make it look like a vanilla light source, (because those don't have color) , and 1,1,1 is definitely possible.
You aren't supposed to make lights that have a light brightness that's larger than your largest color component. In your second example, I would expect the light brightness to only be 1. The block would be VERY dim, and would only have an effect one block away.
The second one is more interesting. You could probably get away with setting all color channels to 0, while setting brightness to some number that's not 0, which will spread uncolored light... This is undefined behavior. Most of the time, it should be ignored, and it will render at full uncolored brightness anyways, but I think the latest commits don't preserve this behavior...
Long story short, set light brightness to the brightest channel... setting light brightness to 0 does exactly what you'd think... make a light with no color, or just set the light value and don't ever specify the light value. The API will set the light brightness appropriately.
Thanks for the API. I have managed to integrate it into my mod: http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/1290263-rainbow-liquids-mod-v1-2-2-colored-lighting
It works really well! (aside from the lag of light updating, but that's my own fault).
It works alright in some places but I noticed two things... maybe I broke something when I slit off the little example mod that was in the source with your colored lights coremod. It compiled just fine and I put it into my minecraft modpack to try it out (on a new world).
Alone, it had a very funny effect on the lava down in a deep trench. It made the lava black, with lightly glowing bluish highlights. And lighting did not seem to update very soon... I sometimes had to trigger it by placing a block. This was in the eclipse dev environment.
When I ran it with my other mods in Minecraft actual launcher profile, it did everything up to showing the world. Then it crashed.
The crash related to a bad cast exception (in coloredlightscore.src.helper.CLEntityRendererHelper.java[line 86]) from an unchecked cast of DynamicTexture to CLDynamicTexture3D. Of course, such a thing is not possible unless the casted class is an instance of the target class or a subclass of it. It could be put inside a try/catch or tested with instanceOf (which might be better), but I'm not sure what the idea was. There is a tranformer that adds a getter and setter with the types "DynamicTexture" but the CLEntityRenderInterface interface declares a getter for that field expects to return CLDynamicTexture3D. I'm not sure if this was intentional or an oversight.
I might try playing with it and see if I can make it work more reliably.
BTW, thanks for making such a great mod!!!
And now you know why I haven't released yet!
Thanks for giving it a try
The lava is a victim of a somewhat larger bug: All tile entities that aren't solid blocks (lava, anvils, half blocks, etc) only use the available blue component when coloring themselves... it's a bug. Blue colored lava = brown nasty... the Lava SHOULD be lighting itself up, but it's only paying attention to the blue component it has.
The other problem you have is a bug in the obfuscation state... The mod works as expected in the dev environment, but when it's put into an obfuscated environment, several of the transformers miss, or do bad things. I squashed a couple of the problems, but it's the next thing on the list.
Then I need to see what's going on with the lava nonsense
Edit. I'm also pretty worried about the laggy light updates... something slowed that down quite a bit, and I think it might have been in the change that I crammed in the network code. Again, thanks for the update. I'll have to create a list of issues that are "open" somehow, because you're not the only one to follow my isntall directions, only to tell me a lot of what I had experienced myself. I REALLY appreciate you doing stuff though, and I hope you'll be willing to play with it some more!
Tip: Go ahead and open git issues if you're willing to spend the time. Just head to github's page, and add an issue. Write a short description of the problem + steps to repeat. Link to code if you're able. I'm only able to spend so much time on the project, but if you're willing to help me out with some of the documentation, that'd be super amazing!
Thanks in advance! Before I go TOO far into debugging this, please verify you put the AccessTransformer in the right place, and please make sure you re-ran (right click, save link as)
gradle clean
gradle setupDecompWorkspace
I just got it to build and compile a mod for Forge 1.7.10
Take a look at this setup/example forge project: https://github.com/CptSpaceToaster/TestingColoredLightAPI
It works for 1.7.10, so I don't really know where to start with your problem... and the API is for 1.7.10, so you're going to have a bad time on 1.7.2
Edit: On IRC: esper.net#ColoredLightCore
EditEdit: I was waiting on Issue 12 before releaseing the mess again for 1.7.2..... I'll see if I can get to that soon.
That worked for an older release of 1.7.2... but ever since the change to the fixed function pipeline shader thingy, the shader core isn't happy. I don't know what isn't behaving, but I know that a couple of objects and things draw on screen before it throws the OOB... So I'm not sure what breaks, but it sounds fixable, considering we just need to find out what's overflowing where, and why. I'm guessing it's something I did, and I'd be more than interested in fixing it, but I'm not sure where to go for that at the moment.
Uhmmmmmm..... We're going to have to hold off on 1.8 while I figure out how to make 1.7.10 do everything I want. Thank you for being eager... but 1.8 just can't happen for a while.
There's so much todo!
Monoblocks and Vehicular Movement: The greatest additions to a modern Minecraft city. Grab them here: http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/2236322-goldensilver853s-mod-hub
You are now breathing manually.
1.2.2 is latest stable, but the API doesn't change on the front end.
I should make a couple of changes eventually, but I want to move to a recommended build environment that simply loads CLC through the Code Chicken Core. Way easier to install, and only a couple steps, and then all you need is the latest stable, and none of the mumbo-jumbo with various library files here and there.
Early idea of where I'd like to go; https://github.com/CptSpaceToaster/CptsModdingLight/blob/1.7.10/docs/SETUP_API.md
Seems like a much better way of doing things. I think I'll try out this way of installing the API. Thanks for clarifying the differences between the two versions though.
Monoblocks and Vehicular Movement: The greatest additions to a modern Minecraft city. Grab them here: http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/2236322-goldensilver853s-mod-hub
You are now breathing manually.
If you hang out on IRC, I'm usually readily available for help and support. Then I can hear how it works out for you
Hello I am using ColoredLightsCore-1.3.7.39 for 1.7.10 and am having an issue with decocraft making stuff from that mod invisible or just a plain colour texture. It is definitely this mod as I removed all my other mods except this and decocraft. Will this be fixed soon as I would love this to be compatible with it.