Minecraft Mods erstellen [ModLoader]

06/16/2012 12:18 morice1999#376
Hey, du musst nochmal im Tut erklären, wiedie worldgeneration geht. Das steht da überhaupt net mehr, aber ich brauch das für meinen Bauernhof-Mod.
06/16/2012 14:26 the_cake#377
Ja mach ich heute noch nur ist das Bei Elitepvpers so dumm mit den beiträgrn da man schnell die übersicht verliert ^^
06/16/2012 19:51 morice1999#378
okay, aber mhh.. ein Fehlerbericht:
Quote:
Mods loaded: 3
ModLoader 1.2.5
mod_Bauernhofmod Minecraft-Bauernhofmod 1.1
mod_crafting Craftings für den Bauernhofmod

Minecraft has crashed!
----------------------

Minecraft has stopped running because it encountered a problem.




--- BEGIN ERROR REPORT 8cbfa1e --------
Generated 16.06.12 19:50

Minecraft: Minecraft 1.2.5
OS: Windows 7 (amd64) version 6.1
Java: 1.7.0_04, Oracle Corporation
VM: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
LWJGL: 2.4.2
OpenGL: Intel(R) HD Graphics Family version 3.1.0 - Build 8.15.10.2372, Intel

java.lang.NullPointerException
at aan.<init>(SourceFile:38)
at mod_crafting.load(mod_crafting.java:27)
at ModLoader.init(ModLoader.java:891)
at ModLoader.addAllRenderers(ModLoader.java:189)
at ahu.<init>(ahu.java:77)
at ahu.<clinit>(ahu.java:8)
at net.minecraft.client.Minecraft.a(SourceFile:273)
at net.minecraft.client.Minecraft.run(SourceFile:657)
at java.lang.Thread.run(Unknown Source)
--- END ERROR REPORT aabe6a1 ----------
Eclipse zeigt mir keinen Fehler an

PS. Echt klasse Tut. Ich habe sogar einen eigenen HeuSlap hingegriegt, der die Hälfte von einem Block hat, ohne dass du das genauer erklärt hast, und ich hätte 4 Ideen für Tuts:
►Eigene Flüssigkeiten
►Eigene Slaps (so dass man die 2 aufeinander setzten kann, da weiß ich nämlich nicht wie´s geht [weißt hoffentlich was ich meine])
►Eigene Dimension (Halt so, dass man dort auf ner kleinen fliegenden Insel spawt (wie das End), oder dass sich eine ganze Welt aufbaut(wie die Hölle), und natürlich eigene Portale und das man in den Welten die Blöcke selbst bestimmen kann und dort neue Biome machen kann)
►Eigene Treppenstufen

Problem gelöst:
Quote:
okay, aber mhh.. ein Fehlerbericht:
hab irgendwie einen code-Schnipsel aus meiner Westernzaungitter.class in die mod_crating.class datei geschrieben, wie das passieren konnte? Ich hab keinen blassen Schimmer.
06/16/2012 21:53 the_cake#379
Ich werde mein tut ja noch updaten ich bin ja schon fleißig am rumschreiben
06/17/2012 13:18 morice1999#380
Ähhmm ich hätte noch ne Frage:
Ich will meinem Mod ein neues Essen hinzufügen. Nun bleibt die Frage: Was muss in der Fischbrötchen.java stehen? In meiner Hauptdatei hab ich folgendes:
Quote:
package net.minecraft.src;

public class mod_Bauernhofmod extends BaseMod{

public static final Item Fischbrötchen;

static{
Fischbrötchen = new Fischbrötchen(149).setItemName("Fischbrötchen").se tIconCoord(0,0);


ModLoader.addName(Fischbrötchen, "Fischbrötchen");

Fischbrötchen.iconIndex = ModLoader.addOverride("/gui/items.png","/Bauernhof/Fischbrötchen.png");

}



public String getVersion() {return "Minecraft-Bauernhofmod 1.1";}
public void load() {}

}
Der Code ist eigentlich länger, aber das andere hat tut hier nichts zur Sache.

Problem wieder selbst gelöst ;-)
06/17/2012 20:31 Julizi#381
Also ich habe alles genaustens verfolgt und habe zwei Warnungen und Zehn Fehler SUPER!!!!
edit2:So jetzt hab ich die Class erstellt(10 FEHLER) was soll ich jetzt machen? Ist schon dürftig
06/18/2012 18:52 morice1999#382
Bitte, ich brauche den Code für World-Generation. Meinetwegenschick ihn mir per PN, aaber bitte ich brauche ihn.
06/18/2012 19:31 the_cake#383
Quote:
Originally Posted by morice1999 View Post
Bitte, ich brauche den Code für World-Generation. Meinetwegenschick ihn mir per PN, aaber bitte ich brauche ihn.
Sry ich habe es verpennt es schaut so aus

Code:
package net.minecraft.src;
import java.util.Random;

public class mod_name extends BaseMod{				
public static final Block testblock;		

static {			
testblock = new Block(160, Material.rock).setHardness(1.2F).setBlockName("testblock");			

ModLoader.registerBlock(testblock);		

ModLoader.addName(testblock,"\u00a7c Test Ore");		

testblock.blockIndexInTexture = ModLoader.addOverride("/terrain.png","/block/testblock.png");	
}
		
public void generateSurface(World world, Random rand, int chunkX, int chunkZ) {		
for(int i = 0; i < Rate; i++) {			
int randPosX = chunkX + rand.nextInt(16);			
int randPosY = rand.nextInt(512);			
int randPosZ = chunkZ + rand.nextInt(16);			
(new WorldGenMinable(this.testblock.blockID, 16)).generate(world, rand, randPosX, randPosY, randPosZ);
}
}					

public void load() {}			

public String getVersion() {return "1.2.3";}}
06/19/2012 13:57 morice1999#384
Perfekt, danke. Du rettest damit mein Leben (oder eher wohl meinen Mod...) ;-)
06/20/2012 16:24 stovon#385
Hallo hab ne Frage hab das jetzt mit dem Worldgenerator hinbekommen.
Aber ich möchte nun ein eigenes Festeres Glas machen.
Also hab ich nen ganz stinknormalen Block erstellt und ne Glas Textur (durchsichtig) gemacht.
Alles funkt ohne Probleme. Aber wenn ich das Glas platziere sehe ich durch den Boden wie z.b. beim Xray Mod (Also man sieht wo Lava und Höhlen und so sind).
Hat das was mit der Textur zu tun oder mus ich beim Code noch was ändern?
Wie gesagt stinknormaler Block, Glastextur.
06/20/2012 21:16 the_cake#386
Das muss ihn deine Block datei
Code:
	public boolean renderAsNormalBlock()
	{
	    return false;
	}

	public boolean isOpaqueCube()
	{
	    return false;
	}
06/21/2012 18:20 Darkangel44#387
Frage: Wie kann ichs so machen, dass ich so eine Textur wie zB die Fackel hat machen? (oder Blume etc.) D.h. das es nicht einfach nur vier mal das Gleich ist auf den Seiten sondern ein Mantel und dann der Kopf anders (v.g. Fackel). Wie klappt das? Danke schonmal
06/24/2012 19:50 nikolaij1998#388
Wie kann man machen dass eigener sound abgespielt wird? Ich kriegs leider nich hin...

Ja ich habe den Audio Mod drinnen
06/27/2012 19:53 morice1999#389
So ich habe einige Tut-Ideen zusammengefasst, von mir und von anderen:
- Blockmodelle für Blumen, Pilze und Fackeln
- Eigene Flüssigkeiten
- Eigene Dimensionen
- Blöcke nur in bestimmten Dimensionen spawnen lassen (+ Mobs)
- Eigene Verwandlungsmöglichkeiten: (z.B.: einen Extra Ofen für nur bestimmte Steine oder einen Block, wo mit Rechtsklick ein Menüaufgeht, und wenn man ein Item rein tut, dass man verschiedene tauschmöglichkeiten bekommt)
- eigene NPC-Dörfer
- eigene Portale zu eigenen Dimensionen
- neuen Status (z.B.: Durst)
- neue Pfeile
- neue Bögen
- eigenes Glass
- eigene Redstone auslöser (z.B. Knopf, Schalter, Redstone-Fackel)
- eigene Slaps
- eigene Treppenstufen
06/28/2012 10:38 -i[Gyxx]*#390
Quote:
Originally Posted by morice1999 View Post
So ich habe einige Tut-Ideen zusammengefasst, von mir und von anderen:
- Blockmodelle für Blumen, Pilze und Fackeln
- Eigene Flüssigkeiten
- Eigene Dimensionen
- Blöcke nur in bestimmten Dimensionen spawnen lassen (+ Mobs)
- Eigene Verwandlungsmöglichkeiten: (z.B.: einen Extra Ofen für nur bestimmte Steine oder einen Block, wo mit Rechtsklick ein Menüaufgeht, und wenn man ein Item rein tut, dass man verschiedene tauschmöglichkeiten bekommt)
- eigene NPC-Dörfer
- eigene Portale zu eigenen Dimensionen
- neuen Status (z.B.: Durst)
- neue Pfeile
- neue Bögen
- eigenes Glass
- eigene Redstone auslöser (z.B. Knopf, Schalter, Redstone-Fackel)
- eigene Slaps
- eigene Treppenstufen
Blumen und Pilze werden verwenden unteranderem BlockFlower dadurch ist es einfach neue Pflanzen zu erstellen.
Flüssigkeiten müsste man die Datein BlockFluid und BlockFlowing kopieren und leicht ab ändern.
Dimensions kann man am einfachsten wenn man kaum Java kann mit Pudelhunds Dimension Api erstellen.
Die Blöcke in den jeweiligen Dimensionen spawnen zu lassen kann man über den WorldGen Befehl und der ChunkProvider datei der Dimension machen.
Die Mobs kann man denn über die Funktion spawnen das sie nur auf speziellen Block spawnen, oder über die Biome Datei.
Ofen zu erstellen ist auch einfach, nur alle Datein vom Ofen kopieren und die Datein namen alle ändern und die neuen Rezepte in der Datei eintragen.
Das Tausch System kann man ab der 1.3 abändern.
Für ein Eigenes Npc Dorf muss man die Component und die Sturcture Datein ab ändern und neu zuordnen.
Portal wird mit in der Api erstellt.
Eine neue Leiste zu erstellen ist auch recht einfach, guck dir einfach mal die FoodStats an.
Für neue Pfeile wird nur ein neues Item und eine neue EntityArrow benötigt.
Für ein neuen Bogen muss man nur ein Neues Item erstellen und die ItemBow kopieren.
Glass ist ein ganz normaler Durchsichtiger Block, wobei der Befehl isOpaqueCube() wichtig ist, damit man nich durch den Boden gucken kann.
Ein neuen Kopf zum beispiel zu erstellen wird der Befehl:
Code:
    public void onBlockClicked(World par1World, int par2, int par3, int par4, EntityPlayer par5EntityPlayer)
    {
        blockActivated(par1World, par2, par3, par4, par5EntityPlayer);
    }
Bei über ein weiterer Wert geladen wird undwar :tickRate 20 das währe jetzt 1 Sekunde output.
Über Slaps und Stairs gibt es schon genügend Tutorials.