Shouldn't this be posted in Released Mods? Because it edits Minecraft class files and is installed like a mod. Why is this in tools while Modloader is in mods?
The original idea of forge, was that players would come here, download, and leave - if they needed support, they would go to the mod that told them to use forge. This was originally going to be a place for modders to mingle and solve problems. Its not worked out this way, 92% of the past 60 or so pages are all requests for help.
This being said - I don't see why they don't just move it into the released mod section. - I mean all you see here is occasional post from the contributers, and alot of request helps - same thing you would get overthere just on a larger scale..the only real difference is that this project would end up more known by more mod authors and such.
Is it possible to (In essence) copy and paste two classes together and then write in a statement that points to one of the two if it's called by one set of .classes and the other for all other calls?
Really? I like it a lot, myself. I like it so much, that there's a dozen or so of them in RedPower. And no more global variables holding my sprite IDs. Nice clean magic numbers.
Well then, I have a question. Does the file HAVE to be 256x256? Or just enough space to hold the sprites?
Is it possible to (In essence) copy and paste two classes together and then write in a statement that points to one of the two if it's called by one set of .classes and the other for all other calls?
You might be able to fake something along these lines by abusing reflection, but even if it works it'd probably have horrible performance and be incredibly fragile to future updates. What are you trying to do? There may be a better way.
Pretty sweet mod with all that it lets you do but I don't think I'm going to use it because the instructions are minimal. (Yes, I do know that I can post the errors etc. but that always takes way too long.) If space toad or someone working on it sees this Clarify the instructions!. For example it doesn't say anywhere whether or not the forge requires modloadermp.
I'm going to use this because I found a very helpful tut on another website :wink.gif:
Is it possible to (In essence) copy and paste two classes together and then write in a statement that points to one of the two if it's called by one set of .classes and the other for all other calls?
IDK of any if calledby(class) statements , but u may be able to add in a line of code to the function your calling in it
for example :
void funct(<normal inputs>, boolean calledByOther = false){
if (calleByOther){
do the stuff for it being called by that
}else{
do the normal stuff
}
i THINK by the creating it and with a default that it should work w/o having to edit all the functions calling it , just the ones that are calling it from a special place
Trying to install buildcraft. Started with a new .minecraft folder installed modloader and modloadermp by draging the files from the zips into the minecraft.jar. Then, I went and installed the latest version of Minecraftforge, closed the minecraft.jar and opened minecraft to see if it would work and all i got was a black screen. What am i doing wrong???? :sad.gif:
Trying to install buildcraft. Started with a new .minecraft folder installed modloader and modloadermp by draging the files from the zips into the minecraft.jar. Then, I went and installed the latest version of Minecraftforge, closed the minecraft.jar and opened minecraft to see if it would work and all i got was a black screen. What am i doing wrong???? :sad.gif:
Did you delete the Meta-inf? And did you drag buildcraft into the minecraft.jar? If you did, DO NOT! DRAG THE FOLDERS WITH BUILDCRAFT INTO THE MOD FOLDER!!! ALSO REMEMBER TO DELETE THE META INF!!! It's ALSO not compatible with 1.8.
Trying to install buildcraft. Started with a new .minecraft folder installed modloader and modloadermp by draging the files from the zips into the minecraft.jar. Then, I went and installed the latest version of Minecraftforge, closed the minecraft.jar and opened minecraft to see if it would work and all i got was a black screen. What am i doing wrong???? :sad.gif:
So I committed a 1.8.1 version to SVN. It's not going to get released directly in this state, because there are still a couple bugs, but for those savvy modders who know how to use SVN, you can get an early start now if you want.
I'm using MyCraft to organize all my mods and everytime i try to install Minecraft Forge it says it's out of date (1.8.1 btw) i dont know if it's wrong or not. Can someone help me out?
I'm using MyCraft to organize all my mods and everytime i try to install Minecraft Forge it says it's out of date (1.8.1 btw) i dont know if it's wrong or not. Can someone help me out?
because this is 1.7.3 still that would be why its saying its out of date
You might be able to fake something along these lines by abusing reflection, but even if it works it'd probably have horrible performance and be incredibly fragile to future updates. What are you trying to do? There may be a better way.
Well the original idea was to just cobble together incompatible .classes and write in the statements so that things like the aether and forge could run side by side but i see your point of that being really slow when you consider that the hooks might be several calls back... that and it would probably triple the cpu load with all the boolean calls you would need to write into all the calling .classes.
Edit: @etopsirhc However, what if there where multiple versions of the same class, that would render this method useless.... except if you wrote in multiple if calledbyother altho that would still be a major cpu strain to go through each of those statements if there were multiples of a class like the block damage class. idk this was just an idea that i wanted to throw out there for patchers so that they didnt have to go in and break copyright law and rewrite specific mod classes.
Well the original idea was to just cobble together incompatible .classes and write in the statements so that things like the aether and forge could run side by side but i see your point of that being really slow when you consider that the hooks might be several calls back... that and it would probably triple the cpu load with all the boolean calls you would need to write into all the calling .classes.
Edit: @etopsirhc However, what if there where multiple versions of the same class, that would render this method useless.... except if you wrote in multiple if calledbyother altho that would still be a major cpu strain to go through each of those statements if there were multiples of a class like the block damage class. idk this was just an idea that i wanted to throw out there for patchers so that they didnt have to go in and break copyright law and rewrite specific mod classes.
It would be far easier to manually merge the changes between those multiple modified classes than figure this out, trust me. It's not impossible, it's not even really that hard in most cases, it's just a pain in the butt because there's so many changes. If one modification to class A adds method X and another adds method Y, then all you have to do is make a modified A with both X and Y. That's an ideal case and there's certainly harder integrations to make, but you get the idea.
Also, making a single reflection call is probably more expensive than a hundred boolean comparisons. But as with all performance discussions - everything is meaningless until you actually try it and measure.
Now, as you can see, I have a list of blocks that will allow the torch to be placed on the side of them, and a list that will allow the torch to be placed on top. I then altered this method, so that it looks like this:
public boolean canPlaceBlockAt(World world, int i, int j, int k)
{
if(canPlaceSide(world, i - 1, j , k))
{
return true;
}
if(canPlaceSide(world, i + 1, j , k))
{
return true;
}
if(canPlaceSide(world, i, j , k - 1))
{
return true;
}
if(canPlaceSide(world, i, j , k + 1))
{
return true;
}
return canPlaceTop(world, i, j - 1, k);
}
Now, these blocks are hard-coded into the game. However, it should be reasonably simple to have an array of blocks defined elsewhere, and for the checks to scan through the array. It could be extremely useful for mods that want to alter the placement of torches. What do you think?
What exactly does this do? I'm a modder, and I'm wondering what I can do using this API.
I'm not sure what you want to hear... You can find useful for your mod hooks or if there none just send them and next release would be useful for you =) It's main difference from other apis.
The original idea of forge, was that players would come here, download, and leave - if they needed support, they would go to the mod that told them to use forge. This was originally going to be a place for modders to mingle and solve problems. Its not worked out this way, 92% of the past 60 or so pages are all requests for help.
This being said - I don't see why they don't just move it into the released mod section. - I mean all you see here is occasional post from the contributers, and alot of request helps - same thing you would get overthere just on a larger scale..the only real difference is that this project would end up more known by more mod authors and such.
You might be able to fake something along these lines by abusing reflection, but even if it works it'd probably have horrible performance and be incredibly fragile to future updates. What are you trying to do? There may be a better way.
INFORMATION WANTS TO BE WRONG
I'm going to use this because I found a very helpful tut on another website :wink.gif:
Link: F4113n's IC2 Addons
IDK of any if calledby(class) statements , but u may be able to add in a line of code to the function your calling in it
for example :
i THINK by the creating it and with a default that it should work w/o having to edit all the functions calling it , just the ones that are calling it from a special place
Did you delete the Meta-inf? And did you drag buildcraft into the minecraft.jar? If you did, DO NOT! DRAG THE FOLDERS WITH BUILDCRAFT INTO THE MOD FOLDER!!!
ALSO REMEMBER TO DELETE THE META INF!!! It's ALSO not compatible with 1.8.
For 1.8 or?
Life is a Learning Curve....
Unfortunately, you're stuck on the bottom...amongst the bones of the stupid.
INFORMATION WANTS TO BE WRONG
because this is 1.7.3 still that would be why its saying its out of date
Well the original idea was to just cobble together incompatible .classes and write in the statements so that things like the aether and forge could run side by side but i see your point of that being really slow when you consider that the hooks might be several calls back... that and it would probably triple the cpu load with all the boolean calls you would need to write into all the calling .classes.
Edit: @etopsirhc However, what if there where multiple versions of the same class, that would render this method useless.... except if you wrote in multiple if calledbyother altho that would still be a major cpu strain to go through each of those statements if there were multiples of a class like the block damage class. idk this was just an idea that i wanted to throw out there for patchers so that they didnt have to go in and break copyright law and rewrite specific mod classes.
It would be far easier to manually merge the changes between those multiple modified classes than figure this out, trust me. It's not impossible, it's not even really that hard in most cases, it's just a pain in the butt because there's so many changes. If one modification to class A adds method X and another adds method Y, then all you have to do is make a modified A with both X and Y. That's an ideal case and there's certainly harder integrations to make, but you get the idea.
Also, making a single reflection call is probably more expensive than a hundred boolean comparisons. But as with all performance discussions - everything is meaningless until you actually try it and measure.
INFORMATION WANTS TO BE WRONG
Okay, those are just some simple suggestions, and I'm going to go into a little detail about the last one:
In my mod, I redirected the torch to allow it to be placed on half blocks and glass. To do this, I used two methods:
Now, as you can see, I have a list of blocks that will allow the torch to be placed on the side of them, and a list that will allow the torch to be placed on top. I then altered this method, so that it looks like this:
Now, these blocks are hard-coded into the game. However, it should be reasonably simple to have an array of blocks defined elsewhere, and for the checks to scan through the array. It could be extremely useful for mods that want to alter the placement of torches. What do you think?
I'm not sure what you want to hear... You can find useful for your mod hooks or if there none just send them and next release would be useful for you =) It's main difference from other apis.