Eigene Villager-Trades erstellen

Hier könnt ihr anderen Leuten helfen, indem ihr Anleitungen oder praktische Codesegmente zur Verfügung stellt.

Re: Eigene Villager-Trades erstellen

Beitragvon Smite » Di 25. Mär 2014, 20:38

Es ist craftbukkit... nicht Bukkit.
3 Dinge die unendlich sind: Das Universum, die Menschliche Dummheit und die WinRAR Testversion. ~Smite
Benutzeravatar
Smite
 
Beiträge: 170
Registriert: Sa 28. Dez 2013, 14:46
Wohnort: Düsseldorf

Re: Eigene Villager-Trades erstellen

Beitragvon DonXs » Sa 29. Mär 2014, 09:53

Hey Summerfeeling,
schon krass was ein 13 Jähriger heutzutage kann ;)
Ein sehr gutes Tutorial, jedoch würde ich nicht die NMS Klassen benutzten (Das soll keine Kritik an deinem Programmieren oder deiner Art sein!),
ich würde dort lieber komplett mit Reflection rangehen oder was auch noch eine lösung sein könnte, wäre ProtocolLib.
Es sind zwar beide Varianten aufwendiger und schwieriger zu implementieren,
jedoch erweisen sie eine Dynamische umsetztung zudem ohne NMS Klassen,
die man allgemein vermeiden sollte.

MfG DonXs
Benutzeravatar
DonXs
 
Beiträge: 102
Registriert: So 2. Feb 2014, 17:15
Wohnort: NRW

Re: Eigene Villager-Trades erstellen

Beitragvon Summerfeeling » Sa 29. Mär 2014, 10:53

McSmite hat geschrieben:Es ist craftbukkit... nicht Bukkit.


Hier mal die ganzen Imports:
Code: Alles auswählen
  1. import net.minecraft.server.v1_7_R1.EntityVillager;
  2. import net.minecraft.server.v1_7_R1.MerchantRecipe;
  3. import net.minecraft.server.v1_7_R1.MerchantRecipeList;
  4. import net.minecraft.server.v1_7_R1.WorldServer;
  5. import org.bukkit.craftbukkit.v1_7_R1.CraftWorld;
  6. import org.bukkit.craftbukkit.v1_7_R1.inventory.CraftItemStack;
Grüße
Summerfeeling | Timo
Benutzeravatar
Summerfeeling
 
Beiträge: 1300
Registriert: Sa 15. Jun 2013, 18:43
Wohnort: Viersen

Re: Eigene Villager-Trades erstellen

Beitragvon Summerfeeling » Sa 29. Mär 2014, 10:56

DonXs hat geschrieben:Hey Summerfeeling,
schon krass was ein 13 Jähriger heutzutage kann ;)
Ein sehr gutes Tutorial, jedoch würde ich nicht die NMS Klassen benutzten (Das soll keine Kritik an deinem Programmieren oder deiner Art sein!),
ich würde dort lieber komplett mit Reflection rangehen oder was auch noch eine lösung sein könnte, wäre ProtocolLib.
Es sind zwar beide Varianten aufwendiger und schwieriger zu implementieren,
jedoch erweisen sie eine Dynamische umsetztung zudem ohne NMS Klassen,
die man allgemein vermeiden sollte.

MfG DonXs

Hey,
danke für die Indirekte Kritik und das Lob.
Ich habe gerade erst angefangen, mich generell mit dieser Packetmodifizierung, und editieren von fremden Klassen zu befassen, und bin da noch nicht so Erfahren. Bin da für jeden Hinweiß offen^^. Mit ProtocolLib habe ich noch nie programmiert, und kenn mich damit nicht aus, werde es mir aber zu Herzen nehmen, und mir das Plugin/die API/die Lib mal angucken. :)

Grüße! :)
Grüße
Summerfeeling | Timo
Benutzeravatar
Summerfeeling
 
Beiträge: 1300
Registriert: Sa 15. Jun 2013, 18:43
Wohnort: Viersen

Re: Eigene Villager-Trades erstellen

Beitragvon DonXs » Sa 29. Mär 2014, 11:17

Ich kann nur eins sagen ProtocolLib ist enorm einfacher als Reflections ;) :D

MfG DonXs
Benutzeravatar
DonXs
 
Beiträge: 102
Registriert: So 2. Feb 2014, 17:15
Wohnort: NRW

Re: Eigene Villager-Trades erstellen

Beitragvon PostCrafter » Sa 29. Mär 2014, 11:38

DonXs hat geschrieben:Ich kann nur eins sagen ProtocolLib ist enorm einfacher als Reflections ;) :D


Auf Packets bezogen auf jeden Fall, jedoch ist eine Implementierung von veränderten Villagertrades mit ProtocolLib nicht nur extrem viel aufwendiger, sondern auch nicht permanent andauernd wie bei diesem Tutorial (falls man es nur kurz braucht, um ein paar Villager zu modifizieren).
TeamSpeak-Server zur freien Nutzung: postcrafter.de
Benutzeravatar
PostCrafter
Administrator
 
Beiträge: 1443
Registriert: Do 6. Jun 2013, 19:16
Wohnort: Ebersberg

Re: Eigene Villager-Trades erstellen

Beitragvon DonXs » Sa 29. Mär 2014, 12:31

PostCrafter hat geschrieben:
DonXs hat geschrieben:Ich kann nur eins sagen ProtocolLib ist enorm einfacher als Reflections ;) :D


Auf Packets bezogen auf jeden Fall, jedoch ist eine Implementierung von veränderten Villagertrades mit ProtocolLib nicht nur extrem viel aufwendiger, sondern auch nicht permanent andauernd wie bei diesem Tutorial (falls man es nur kurz braucht, um ein paar Villager zu modifizieren).


Ich meine die benutzung allgemein mit ProtocolLib ist einfacher als mit Reflections an NMS ranzugehen.

MfG DonXs
Benutzeravatar
DonXs
 
Beiträge: 102
Registriert: So 2. Feb 2014, 17:15
Wohnort: NRW

Re: Eigene Villager-Trades erstellen

Beitragvon tahu98 » Sa 29. Mär 2014, 17:35

Bei diesem Thema (und auch einigen anderen) ist aber NMS einfacher, da der Spieler mit ProtocoLib einfach nur sehen würde as er etwas tauschen kann, das aber eigentlich Serverseitig gar nicht kann.
Bild
Benutzeravatar
tahu98
 
Beiträge: 231
Registriert: Mo 2. Sep 2013, 13:46

Re: Eigene Villager-Trades erstellen

Beitragvon b4cteria » Sa 5. Jul 2014, 18:38

Bei mir gibt es dann diese Fehlermeldung:

Code: Alles auswählen
  1. [19:43:19 WARN]: Can't keep up! Did the system time change, or is the server ove
  2. rloaded? Running 3531ms behind, skipping 70 tick(s)
  3. [19:43:26 ERROR]: Could not pass event InventoryClickEvent to Rush v1.0
  4. org.bukkit.event.EventException
  5.         at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
  6. va:294) ~[craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  7.         at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
  8. a:62) ~[craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  9.         at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j
  10. ava:501) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  11.         at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
  12. ava:486) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  13.         at net.minecraft.server.v1_7_R3.PlayerConnection.a(PlayerConnection.java
  14. :1364) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  15.         at net.minecraft.server.v1_7_R3.PacketPlayInWindowClick.a(SourceFile:32)
  16. [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  17.         at net.minecraft.server.v1_7_R3.PacketPlayInWindowClick.handle(SourceFil
  18. e:10) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  19.         at net.minecraft.server.v1_7_R3.NetworkManager.a(NetworkManager.java:157
  20. ) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  21.         at net.minecraft.server.v1_7_R3.ServerConnection.c(SourceFile:134) [craf
  22. tbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  23.         at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:6
  24. 67) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  25.         at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:2
  26. 60) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  27.         at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:5
  28. 58) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  29.         at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java
  30. :469) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  31.         at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:6
  32. 28) [craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  33. Caused by: java.lang.NullPointerException
  34.         at Game.VillagerTrades.VillagerTrades(VillagerTrades.java:27) ~[?:?]
  35.         at Listener.ShopBuy.on(ShopBuy.java:23) ~[?:?]
  36.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0
  37. _51]
  38.         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0
  39. _51]
  40.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1
  41. .7.0_51]
  42.         at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_51]
  43.         at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
  44. va:292) ~[craftbukkit.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
  45.         ... 13 more
  46. >
Benutzeravatar
b4cteria
 
Beiträge: 207
Registriert: Mo 21. Apr 2014, 15:46

Re: Eigene Villager-Trades erstellen

Beitragvon Jofkos » Sa 5. Jul 2014, 18:51

Summerfeeling hat geschrieben: WorldServer world = ((CraftWorld) Bukkit.getPlayer("world")).getHandle();
Du meinst wohl getWorld!? also
Code: Alles auswählen
  1. WorldServer world = ((CraftWorld) Bukkit.getWorld("world")).getHandle();
Jofkos

...........

..Bild
Benutzeravatar
Jofkos
 
Beiträge: 1537
Registriert: So 16. Jun 2013, 22:45

VorherigeNächste

Zurück zu Anleitungen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron