Verbesserungs- und Lösungsvorschläge

Sehr geehrtes Ottonien Serverteam, liebe Spieler,

 

in diesem Beitrag möchte ich einige Bugs melden, welche mir aufgefallen sind, Verbesserungsvorschläge äußern, aber auch Lösungsvorschläge geben. Ich möchte an dieser Stelle unterstreichen, dass es sich hierbei um konstruktive Kritik handelt und dass dieser Beitrag bitte nicht falsch verstanden wird. Ich finde das Konzept des Servers klasse und habe wie viele andere Spieler große Freude daran, auf Ottonien zu spielen. Ich kenne keinen anderen RP Server, auf dem das Roleplay und die sonstigen Umstände so realistisch und gut durchdacht umgesetzt sind. Zudem möchte ich auch erwähnen, dass ich mir keinen der Bugs zum eigenen Vorteil gemacht habe und auch nicht machen werde.

 

Viele der mir aufgefallenen Bugs werden (hoffentlich und leider) schon bekannt sein. Um die Problematik zu verdeutlichen und um mich in den Lösungsvorschlägen darauf beziehen zu können, erlaube ich mir diese der Vollständigkeit halber aufzuzählen.

 

Bugs:

  1. Wenn man vom Pferd absteigt, ist das Pferd manchmal unsichtbar. Man muss sich neu verbinden, um dieses wieder sehen zu können.

  2. Rüstungs-Debuffs (Effekte) kommen auch, wenn man nur in die Rüstungsslots klickt

  3. Wenn man Rüstung in der Hand hält und über eine Druckplatte läuft, bekommt man die Rüstungs-Debuffs (Effekte)

  4. Wenn man Sachen craftet laggt es (/c -> Rezepte)

  5. Die NPC's sind manchmal nicht oder doppelt da

  6. Manchmal sieht man Chat Nachrichten aus anderen Chats (W/S/R/D)

  7. VIPs können von anderen VIPs gekickt werden

  8. Man wird teilweise wegen "Flying is not enabled on this Server" gekickt, wenn man reitet

  9. Manche Waffen machen nicht den Schaden, den sie angeben zu machen (Beispielsweise steht beim Steinspeer, dass dieser mehr Schaden macht, als ein einfaches Steinschwert. Man braucht mit einem Steinschwert aber nur 2-3 Schläge um ein Tier zu töten, während es bei einem Steinspeer mindestens 4 sind)

  10. Wenn man disconnected während man stirbt, stirbt man nicht

  11. Setzlinge, Samen und Karotten buggen weg, wenn man diese in der falschen Region setzt

  12. Items buggen weg, wenn man Sachen craftet und das Inventar voll ist

  13. Man kann sich in den Gebieten von den Bienenstöcken nicht porten

  14. Es spawnen beim Paaren manchmal 2 Jungtiere

  15. Man kann mit einem Schwert Blutung bei Faction Mitgliedern verursachen

  16. Wildschweine spawnen im Boden, wenn man einen Frischling angreift

  17. Wenn man per Schiff reist, aber noch TP-Cooldown hat, verliert man das Geld, wird aber nicht geportet

  18. Wenn man mit einem Wurzelbogen, bestimmten Pfeilen und "etwas Magie" schießt, machen die Pfeile beim Hit eine Explosion

  19. Man kann Eisenklumpen nicht zu Barren craften

  20. Man kann Schätze mehrfach looten, indem man sich umbenennt

  21. Die Anmeldung im Forum ist nicht verschlüsselt

  22. Wenn man das Ausweiden-Menü der Jagdbeute öffnet und das Inventar wieder schließt ist die Jagdbeute weg

  23. Man wird wegen "Klickspam" gekickt, wenn man Sachen in der Gerberei/Schmiede herstellt und der Server gleichzeitig laggt

 

Hinzu kommt, dass aktuell der Kontor und das Voten nicht funktioniert.

 

Verbesserungsvorschläge:

  1. Weg von Nitrado -> Speicher bei läuft manchmal voll; Gewinn kann nicht für andere Investitionen außerhalb von Nitrado genutzt werden; Preise sind unverschämt teuer

  2. Man kann nicht Stack-weise kochen/gerben/...

  3. Man kann im Kampf ge-vip-kickt werden (Sorgt nur für unnötig viel Support-Aufwand)

  4. Man kann die Spawn-Städte verlassen, ohne dass man allen Zünften beigetreten ist. Einfach nur unpraktisch, da man früher oder später eh zurück muss

  5. Man kann sich nicht automatisch auf dem Discord bewegen, wenn man nicht vorher manuell von einem Teamler freigeschaltet wurde. Das könnte man automatisieren

  6. 5 Min nach Neustart kommt ein Punkt im Chat (Ich weiß nicht von welchem Plugin der Punkt kommt. Ihr werdet es aber. Sofern es Opensource ist: Forken, Fixen, Pull-Requesten, fertig.)

  7. Man kommt nicht an Lapis (Ich finde es ist durchaus ein “Fehler” im Konzept, dass man nicht mehr an Lapis kommt. Es sollte die Möglichkeit durch (z.B. einen Alchemieskill o.ä.) an Lapis zu kommen. Ein unfairer Vorteil für die “alten Hasen”)

  8. Unnötig häufiger und langer Serverneustart (Anscheinend auch teilweise Nitrado bedingt)

  9. Ordentliches Ticketsystem, bei dem man Rückmeldung bekommt, ob und mit welchem Ergebnis sein Ticket bearbeitet wurde (z.B. meins https://www.spigotmc.org/resources/ticket.53731/ )

  10. Einige Befehle wie beispielsweise /vip funktionieren nicht (Konfigurationsfehler in MyCommand)

 

Puh. Also als ich vor knapp einem halben Jahr auf den Server gekommen bin und die ersten Bugs “erleben” durfte, musste ich schon stark Schlucken. Ich hoffe, dass ich nicht als einziger bei der Spielerumfrage diese Fehler zu Wort gebracht habe. Und dass das Team diese zur Kenntnis genommen hat und dabei ist Lösungen dafür zu finden.

 

Falls sich mit einigen der Bugs noch nicht befasst wurde möchte ich an dieser Stelle meine Meinung und Expertise einfließen lassen, um hoffentlich kurzfristig Lösungen zu finden.

 

Lösungsvorschläge für die genannten Bugs:

  1. Dass Pferde manchmal unsichtbar sind scheint wohl ein Fehler in PaperMC und anderen Servern zu sein. Ein Workaround dafür wäre dem Pferd beim EntityDismountEvent unsichtbar und daraufhin sichtbar zu machen (entity.setInvisible(true/false)). In einem Beitrag habe ich auch gelesen, dass es helfen soll, dem Pferd für wenige Ticks einen Unsichtbarkeitseffekt zu geben (livingEntity.addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, 1 (ggf. mehr?), 1));), so dass Clientseitig das Rendern getriggert wird.

 

  1. & 3. Bei den Rüstungs-Debuffs wurde zum einen scheinbar das InventoryClickEvent nicht richtig ausgewertet. Zum einen wird hier das aktuell in dem Curser befindliche Item ignoriert. Ist dieses (getCursor()) Null, braucht der Debuff nicht zu triggern. Auch wenn man mit einem Rüstungsteil rechtsklickt um es anzuziehen, aber schon eine Rüstung an hat, bekommt man den Effekt. Auch hier fehlt beim PlayerInteractEvent die Überprüfung, ob zuvor schon eine Rüstung ausgerüstet (inventory.getArmorContents()[X]) war. Wenn man über eine Druckplatte läuft wird auch das EntitiyInteractEvent getriggert. Da hier nicht abgefragt wurde, ob die Aktion (getAction()) ein Klick ist, sondern wie in dem Fall einer Druckplatte die Action “PHYSICAL”, bekommt man auch hier den Rüstungs-Debuff.

 

  1. Ich kann mir auch nur schwer erklären, wie es beim Craften zu so heftigen Laggs kommen kann, dass dadurch sogar der Server abstürzen kann. Ich könnte mir vorstellen, dass hier eventuell Dateizugriffe auf die möglichen Rezepte gemacht werden. In dem Fall würde ich empfehlen diese einmalig auszulesen und zu cachen. Ansonsten müsste man analysieren, weshalb es zu den Laggs kommt.

 

  1. Laut den bekannten Fehlern von Shopkeepers hängt das Verschwinden und doppelte Auftauchen der NPS’s wohl mit den Serverabstürzen zusammen. Sofern also die Crafting-Laggs behoben sind, wird sich dieser Bug auch verabschieden.

 

  1. Wahrscheinlich ein Bug in VentureChat. Eventuell wird der Bug auch durch ein anderes Plugin verursacht, welches das Chatverhalten beeinflusst.

 

  1.  Ja, ich sehe das als Bug an. Wozu bezahle ich für einen “freien Slot”, wenn mir dieser temporär genommen werden kann?

 

  1. “allow-flight=true” in der server.properties konfigurieren und ein ordentliches AntiCheat Plugin installieren

 

  1. Selbsterklärend. Die Stats der Waffen sind wahrscheinlich selbst umgesetzt und können entsprechend angepasst werden.

 

  1. Keine Ahnung wie ihr das geschafft habt. Ist und bleibt mir ein Rätzel.

 

  1. Anstatt das Item hier zu entfernen könnte man das Event einfach canceln. Das würde das Item nicht verschwinden lassen und man hätte trotzdem den gleichen Effekt.

 

  1. Hier würde es reichen zu überprüfen, ob das Inventar zum Zeitpunkt des Craftvorgangs voll ist. Falls ja, das Item einfach an der Position des Spielers droppen

 

  1. Ich habe hier auch schon wilde Sachen über die Bienenstöcke gehört. Von rumbuggenden Pferden und co. Falls das der Grund ist, weshalb man sich im Gebiet der Bienenstöcker nicht porten kann würde ich versuchen die Ursache des Problems zu beheben und nicht das Symptom.

 

  1. Ich konnte noch nicht 100%ig identifizieren, weshalb manchmal 2 Jungtiere spawnen, aber ich würde sagen es liegt an den Laggs/geringen TPS, denn immer wenn man viele (8) Tiere schnell hintereinander paart, entstehen manchmal 2 Jungtiere. Paart man die Tiere nacheinander entstehen nie(?) 2 Jungtiere. Ist kein gravierender Bug, doch frage ich mich, wie das passieren kann.

 

  1. Der Blutungseffekt scheint mir durch ein eigenes Plugin eingefügt zu sein. Bevor der Effekt also angewendet wird, muss überprüft werden, ob das Event schon gecanceled wurde. Eventuell muss die Priorität des Events erhöht werden, damit es erst nach dem Abbruch des Events durch Factions mitbekommt, dass das Event unterbrochen wurde.

 

  1. Es gibt eine super praktische Funktion namens getHighestBlockAt mit der man den höchsten Block an einer Position ermitteln kann. Das würde dem Wildschwein gut tun.

 

  1. Vorher den TP Cooldown von Essentials abzufragen würde so manchem Geldbeutel gut tun… (Essentials.getUser(player).getTeleportRequestTime()...)

 

  1. Fragt mich nicht wie das passieren kann. Ich weiß selbst noch nicht, ob das ein Feature oder Bug ist und wie das genau geht, aber würde ich den Code sehen, nein, ich glaube ich will die Stelle im Code gar nicht sehen.

 

  1. Kann ich nachvollziehen, dass man das blockiert hat, damit man nicht aus Hellern Eisen machen kann. Man kann beim Craften aber auch den Namen/die Tags der Items abfragen um dies doch zu ermöglichen.

 

  1. TreasureChestReloaded ist Open Source. Also auch behebbar.

 

  1. Finde ich persönlich einfach nur fahrlässig. Ein SSL Zertifikat kostet nichts. Und einfach so Passwörter unverschlüsselt durch Internet jagen, kommt bei den neuen DSGVO Richtlinen auch nicht sooo gut an.

  2. Man könnte das Item einfach erst entfernen, wenn die Jagdbeute tatsächlich ausgeweidet wurde.

  3. Hier könnte man an den Stellschrauben des "Klickspamms" noch ein wenig pfeilen bzw. diesen entfernen, da ein Delay die Herstellung nicht gerade einfacherer macht, wenn man schon nicht Stack-weise herstellen kann.

 

Noch ein paar Worte zu meiner Wenigkeit. Wie vielleicht schon aus dem Beitrag hervorgegangen ist, bin ich technisch nicht ganz unversiert. Genau genommen bin ich Softwareentwickler und programmiere schon über 10 Jahre privat mit Java. Zudem habe ich schon den ein oder anderen Server aufgesetzt, administriert und/oder mitentwickelt. Somit sind ist mir die Bukkit-/Spigot-/PaperAPI nicht unbekannt. Da mir dadurch die erwähnten Bugs besonders in den Fingern jucken und mir das Spielen auf Ottonien (abgesehen von den Bugs) sehr viel Spaß macht, möchte ich den Vorschlag äußern, mich in die Verbesserung und Weiterentwicklung des Servers und insbesondere der Plugins hinzuzuziehen. Ich hoffe damit das Team und den Server bereichern zu können. Ich habe mir bereits sagen lassen, dass es “genug” Entwickler gibt, doch denke ich, dass es hier wie auch im Bereich der Administration nicht nur auf die Anzahl der Teammitglieder sondern auch die Aktivität dieser drauf an kommt.

 

Es vergeht derzeit kaum ein Tag ohne Serverabsturz. Bitte tut was.

 

Ich danke recht herzlich für die Aufmerksamkeit und freue mich auf Rückmeldung vom Team

MfG Mr