The Meaning of Life, the Universe, and Everything.
Join Date:
4/3/2014
Posts:
56
Member Details
I have changed nothing in my MCP
but there are some errors appear when I decompile the MCP
Error in Display tye method:
src\minecraft\net\minecraft\src\Minecraft.java:293: error: cannot find symbol
Display.setResizable(true);
^
symbol: method setResizable(boolean)
location: class Display
src\minecraft\net\minecraft\src\Minecraft.java:851: error: cannot find symbol
if (!this.fullscreen && Display.wasResized())
^
symbol: method wasResized()
location: class Display
src\minecraft\net\minecraft\src\Minecraft.java:853: error: cannot find symbol
this.displayWidth = Display.getWidth();
^
symbol: method getWidth()
location: class Display
src\minecraft\net\minecraft\src\Minecraft.java:854: error: cannot find symbol
this.displayHeight = Display.getHeight();
^
symbol: method getHeight()
location: class Display
src\minecraft\net\minecraft\src\MouseHelper.java:29: error: cannot find symbol
Mouse.setCursorPosition(Display.getWidth() / 2, Display.getHeight() / 2)
;
^
symbol: method getWidth()
location: class Display
src\minecraft\net\minecraft\src\MouseHelper.java:29: error: cannot find symbol
Mouse.setCursorPosition(Display.getWidth() / 2, Display.getHeight() / 2)
;
^
symbol: method getHeight()
location: class Display
I have solved these errors by copying the MCP/jars/libraries/org/lwjgl/lwjgl/lwjgl/2.9.0/lwjgl-2.9.0.jar into
MCP/lib
but it didn't really fix the errors,they still exist but don't appear when decompile
so when I use Eclipse to open the files,
all these errors come back and I can do nothing to fix it
We need more details. What version of minecraft is this for? Are you using an API (or, as I think they should be called, MPIs)? What version of MCP is this? Only when you answer these questions can anyone actually help.
this is for minecraft1.7.2
I don't know what is API or MPIs
the version of MCP is 9.03
No, not at all. I'm not sure what error is causing your problem. Are you using Java 8 or Java 7? If Java 8, try downgrading to Java 7. If that doesn't work, try redownloading MCP. Now we're getting somewhere.
I think I'm using Java7 since there are jdk1.7.0_51 and jre7 in my java file
and I have tried redownloading MCP 3 times...It doesn't work
It might be a problem with the 1.7.2.jar in your .minecraft. Try and run 1.7.2 in the launcher and delete/move the 1.7.2 folder currently in your versions folder. It should be in the launcher version select afterwards still.
What do you mean?
what are going to be run or deleted?
1. Go to your .minecraft folder.
2. Go into the folder versions.
3. Right click the folder called 1.7.2 and select cut.
4. Somewhere else (eg. your desktop) right click again and select paste.
5. Open the minecraft launcher and go into edit profile and under versions select 1.7.2.
6. Click save profile.
7. Run minecraft once.
8. Once minecraft reaches the title screen (don't open a world!), press the X in the corner to close it.
9. Try and run the MCP decompile.bat command again.
Do I really need to explain this any simpler?
I have done what you say
I put the 1.7.2file to desktop
run minecraft and change the profile version to 1.7.2
then run minecraft and close it when it reaches the title screen
after that,I clean up the MCP and decompile it again
but the errors are still here
I've read the post again, and it seems to be on the Eclipse side, I think Eclipse hasn't had it's lwjgl library linked. Find the same lwjgl-2.9.0.jar file and, in eclipse, drag it into the folder that says "lib". It should fix the Eclipse errors as the lwjgl library is now linked in the project.
when I open mcp/src in eclipse,it's filled with errors
I need to add everything in mcp/jars/libraries into java build path>library to fix them
after that,the errors left is the sound exception error,display errors and GL20 errors(symbol not found : method glGetProgrami and glGetShaderi)
sound exception error can be fixed by changing that "catch(SoundSystemException var4)"
to "catch(Exception var4)", but I don't know if this may cause out any other problems
and for the display and GL20,
you said I can fix it by drag the lwjgl-2.9.0.jar file to "lib" folder.
I don't understand what you mean at all
but I have added lwjgl-2.9.0.jar into java build path
it should be fixed but I've said,display errors and GL20 errors are still here
This is all advanced java, which only people who fuss around with 3rd party libraries dare touch. I can understand your confusion. I'm also not that amazing at explaining things. Pray that I don't go into teaching.
As I've said, these errors are to do with the fact the lwjgl library is somehow missing. Lwjgl contains the packages that's absence is where GL20 errors come from.
I think you link it in eclipse like this:
Right click the project "Client" and select Build path. There should be a side menu - select "configure build path" and go to the section "Libraries". Select "Add External JARs" and find your way to the MCP folder which, if it's on your desktop, is under the section Desktop. Then select your MCP folder and navigate to the folder in MCP called "jars". Go into the folder "libraries" and then go to where you put your lwjgl-2.9.0.jar file to fix the error you had when you tried to decompile. It should be under org, lwjgl, lwjgl (again) and then 2.9.0. At least, it is for me. Then, select it and press the "Open" button. The file "lwjgl-2.9.0.jar" should be on the list where it takes you back to. If it still doesn't work, you'll have to link two extra .jar files - lwjgl-platform-2.9.0-natives.jar and lwjgl_util-2.9.0.jar.
I added lwjgl-2.9.0.jar into java build path>libraries of net.minecraft.client project but nothing happened
so I added lwjgl-platform-2.9.0-natives.jar and lwjgl_util-2.9.0.jar into java build path>libraries of net.minecraft.client project
this doesn't work...
Did I do it wrong?
Don't right click the PACKAGE net.minecraft.client, click the blue folder (The PROJECT) that contains the src folder called just "Client" and do what I said there. I'm fairly certain this should work. Packages are not projects. Projects are Eclipse things but packages are Java things.
If it still doesn't work.
Hmm... Can you provide a screenshot or at least a list of the .jar files you see when you right click the project "Client" and "Configure Build Path" under the section "Libraries"? It should be the same tab with the button "Add External Jars". You may be missing other libraries.
my workspace is in mcp/src, and I can't find a project called "Client" there
but I see a file called "Client" in mcp/eclipse, is it the "Client" you said?
if it is,do I need to change my workspace for opening the Client file?
When you open Eclipse, point the screen that first shows up that asks you to select a workspace, you need to point it to the eclipse folder (EG: C:\\MCPDIR\eclipse). It should have every eclipse thing set up already. I thought it was obvious you had to point it to that folder .-. The MCP eclipse directory contains the Client project setup.
I see no errors in the Client project,and a lwjgl-2.9.0.jar is already in a file called "lib" inside Client project
all the jars you tell me to add into java build path>libraries of Client project are already exsist there
The screenshot is just a weird obscure picture of a hill for me... I see it all of the time, don't worry, but it is detrimental when I'm attempting to solve a problem. Notch darn it google chrome!
ON TOPIC:
I'm really confused... I can't really say to look up a tutorial because all of them are for Forge, and you don't seem to want to use it (or in my case, can't). If the image worked I'd be able to compare it to my libraries in my eclipse and say which ones are missing. Not sure why it isn't showing for me...
I have installed serveral versions of forge recently,
but my laucher's version is too old,so I can't use any of them
I'm now for certain confused. You have all of the libraries referenced that I do... I'm not sure what's up with the code... Try and run the project. That usually refreshes it, it's possible Eclipse hasn't been fully updated with the new libraries.
I found that the "Minecraft" option in run configuration disappeared
so I can't run it...how can I make it appear again?
Hm... The Eclipse folder provided by MCP should have 2 run configurations... To set up the Client configuration (the one to launch the main Minecraft, not the server), go to the green play button, click the arrow next to it and select "Run Configurations". Where it says Project, you will want to put Client, as that is the project being launched. Where it says Main Class, put simply "Start", as the Start class is the MCP main class for MCP. Next, go to the section "Arguments". Where it says "Program Arguments", put the following:
Now, select "Other" under "Working Directory" and paste this:
${workspace_loc:Client/jars}
.
The last thing to do is to name it. MCP names it as Client, and I follow that convention. At the top, where it says "Name:", put "Client".
Now, under that green play arrow, select Client and you're good to go.
So do you mean that I need to write mods in mcp/eclipse ?
---------------------------------------------------------------------------------
I have done what you tell me to do in client project
but there are some errros
Exception in thread "main" joptsimple.MultipleArgumentsForOptionException: Found multiple arguments for option ['version'], but you asked for only one
at joptsimple.OptionSet.valueOf(OptionSet.java:178)
at net.minecraft.client.main.Main.main(Main.java:80)
at Start.main(Start.java:11)
Hm, remove the arguments in Program Arguments... It works for me, not sure why it doesn't for you.
As for the bit above the -------, sort of. It will write to the src folder if you have your eclipse set to the eclipse folder. Just have your workspace set to the eclipse folder, which, if I understand what you're asking me, means yes to your question. Just remember to recompile.bat and it should be fine.
It can run now^^
if I want to create a mod,which method(not the method in java) should I use?
somebody create mods by starting a project and write something like @mod
and some just create new things or changes something in mcp
I'm confused with them
They're using Forge, which you aren't. It's best to look around in the organised packages to see how Minecraft does it. For example, look in the package net.minecraft.block to see all of the blocks and how they're registered. Just be aware that any mods made like this will almost certainly get flamed for not being Forge (Notch dammit modders, not everyone wants to use Forge), so it's best to have these as private mods. Just expand src in the Client project by clicking the left arrow.
I have installed forge in my minecraft,
but what do I need to do to make mods with forge?
----------------------------------------------------------------------
if I make mods without modloader or forge,
does it mean that I only need to create .java like how the things being created by Notch
or change something inside the .java
then recompile it?
Well besides the Forge MPI and a knowledge of Forge (which is hard to come by because there's NO DOCUMENTATION!), and something to write the code in, not much. I've always found vanilla to be easier. The deobfuscated class names make so much more sense than Forge's. The real gem in Forge's eye is the modloader, FML.
do you mean I better use modloader instead of forge?
and I tried to make a little change in mcp/client
I changed creeper's explosion radius and run it,
the explosion is really great
then I recompile it,
it says that there's an error(in java code):
src/minecraft/net/minecraft/client/audio/SoundManager.java:70: error: exception
SoundSystemException is never thrown in body of corresponding try statement
catch <SoundSystemException var4>
^
1 error
===============
it doesn't exist in mcp/eclipse/client
but when I decompile or recompile or updatemd5,it appear
ModLoader is dead. You CAN'T use it, even if you wanted to. Plus, Forge is probably the better MPI, I'd say definitely use Forge out of the 2.
As for your error, it's entirely Mojang/MCP side, if this is completely fresh code (as in, just after you decompile.bat it). Did you change anything to do with the code in the try block before the catch it mentions in SoundManager?
I only changed creeper's explosion radius,
but actually the error has appeared when I decompile it(no lwjgl-2.9.0.jar in mcp/lib --> no this error but lots of other errors,
lwjgl-2.9.0.jar is in mcp/lib ---> only this error)
I've got no idea of what's causing these errors then .-.
I can fix it by changing the SoundSystemException into Exception
but will it cause out any problems?
--------------------
for forge mods,
are they created like this?
1.create a new project in a workspace
2.link source to mcp/eclipse/client
3.create .java or change .java in src
4.obfuscate the code
4.1 open mcp/conf/client_conf.txt
4.2 Remove all the lines in the file
4.3 Add the classes you changed
4.4 Run 'reobf.bat'
4.5 All the classes contained within C:/MCP/final_out/minecraft/ are the mod classes. Add these to minecraft.jar to add your mod to the game.
but there are some errors appear when I decompile the MCP
Error in Display tye method:
src\minecraft\net\minecraft\src\Minecraft.java:293: error: cannot find symbol
Display.setResizable(true);
^
symbol: method setResizable(boolean)
location: class Display
src\minecraft\net\minecraft\src\Minecraft.java:851: error: cannot find symbol
if (!this.fullscreen && Display.wasResized())
^
symbol: method wasResized()
location: class Display
src\minecraft\net\minecraft\src\Minecraft.java:853: error: cannot find symbol
this.displayWidth = Display.getWidth();
^
symbol: method getWidth()
location: class Display
src\minecraft\net\minecraft\src\Minecraft.java:854: error: cannot find symbol
this.displayHeight = Display.getHeight();
^
symbol: method getHeight()
location: class Display
src\minecraft\net\minecraft\src\MouseHelper.java:29: error: cannot find symbol
Mouse.setCursorPosition(Display.getWidth() / 2, Display.getHeight() / 2)
;
^
symbol: method getWidth()
location: class Display
src\minecraft\net\minecraft\src\MouseHelper.java:29: error: cannot find symbol
Mouse.setCursorPosition(Display.getWidth() / 2, Display.getHeight() / 2)
;
^
symbol: method getHeight()
location: class Display
I have solved these errors by copying the MCP/jars/libraries/org/lwjgl/lwjgl/lwjgl/2.9.0/lwjgl-2.9.0.jar into
MCP/lib
but it didn't really fix the errors,they still exist but don't appear when decompile
so when I use Eclipse to open the files,
all these errors come back and I can do nothing to fix it
Help
this is for minecraft1.7.2
I don't know what is API or MPIs
the version of MCP is 9.03
ah...
I didn't download APIs or Forge...
Is that we must make mods with any of them?
I think I'm using Java7 since there are jdk1.7.0_51 and jre7 in my java file
and I have tried redownloading MCP 3 times...It doesn't work
What do you mean?
what are going to be run or deleted?
I have done what you say
I put the 1.7.2file to desktop
run minecraft and change the profile version to 1.7.2
then run minecraft and close it when it reaches the title screen
after that,I clean up the MCP and decompile it again
but the errors are still here
when I open mcp/src in eclipse,it's filled with errors
I need to add everything in mcp/jars/libraries into java build path>library to fix them
after that,the errors left is the sound exception error,display errors and GL20 errors(symbol not found : method glGetProgrami and glGetShaderi)
sound exception error can be fixed by changing that "catch(SoundSystemException var4)"
to "catch(Exception var4)", but I don't know if this may cause out any other problems
and for the display and GL20,
you said I can fix it by drag the lwjgl-2.9.0.jar file to "lib" folder.
I don't understand what you mean at all
but I have added lwjgl-2.9.0.jar into java build path
it should be fixed but I've said,display errors and GL20 errors are still here
I added lwjgl-2.9.0.jar into java build path>libraries of net.minecraft.client project but nothing happened
so I added lwjgl-platform-2.9.0-natives.jar and lwjgl_util-2.9.0.jar into java build path>libraries of net.minecraft.client project
this doesn't work...
Did I do it wrong?
my workspace is in mcp/src, and I can't find a project called "Client" there
but I see a file called "Client" in mcp/eclipse, is it the "Client" you said?
if it is,do I need to change my workspace for opening the Client file?
I see no errors in the Client project,and a lwjgl-2.9.0.jar is already in a file called "lib" inside Client project
all the jars you tell me to add into java build path>libraries of Client project are already exsist there
but the errors in mcp/src are still not fixed
Should I write mods here instead of in mcp/src?
here is the screenshot:
I have installed serveral versions of forge recently,
but my laucher's version is too old,so I can't use any of them
and about the image,
I think you can see the image here:
http://postimg.org/image/cfpgou919/
I found that the "Minecraft" option in run configuration disappeared
so I can't run it...how can I make it appear again?
So do you mean that I need to write mods in mcp/eclipse ?
---------------------------------------------------------------------------------
I have done what you tell me to do in client project
but there are some errros
It can run now^^
if I want to create a mod,which method(not the method in java) should I use?
somebody create mods by starting a project and write something like @mod
and some just create new things or changes something in mcp
I'm confused with them
I have installed forge in my minecraft,
but what do I need to do to make mods with forge?
----------------------------------------------------------------------
if I make mods without modloader or forge,
does it mean that I only need to create .java like how the things being created by Notch
or change something inside the .java
then recompile it?
what do you mean?
do I need any additional set up to write forge mods?
do you mean I better use modloader instead of forge?
and I tried to make a little change in mcp/client
I changed creeper's explosion radius and run it,
the explosion is really great
then I recompile it,
it says that there's an error(in java code):
it doesn't exist in mcp/eclipse/client
but when I decompile or recompile or updatemd5,it appear
I only changed creeper's explosion radius,
but actually the error has appeared when I decompile it(no lwjgl-2.9.0.jar in mcp/lib --> no this error but lots of other errors,
lwjgl-2.9.0.jar is in mcp/lib ---> only this error)
I can fix it by changing the SoundSystemException into Exception
but will it cause out any problems?
--------------------
for forge mods,
are they created like this?
1.create a new project in a workspace
2.link source to mcp/eclipse/client
3.create .java or change .java in src
4.obfuscate the code
4.1 open mcp/conf/client_conf.txt
4.2 Remove all the lines in the file
4.3 Add the classes you changed
4.4 Run 'reobf.bat'
4.5 All the classes contained within C:/MCP/final_out/minecraft/ are the mod classes. Add these to minecraft.jar to add your mod to the game.