CobbleGen Zähler

Wievchen

Berater
15 November 2014
234
334
91
Account bestätigt
Ja

Sky Helper 1.3.1​


Ein clientseitiger Mod für Skyblock: Er zählt, was du abbaust, und rechnet aus, was dabei herauskommt. Kein Eingriff ins Spiel, keine Automatisierung – der Mod liest nur mit.


Fabric · Minecraft 26.1.2 und 1.21.11 · benötigt Fabric API · reiner Client-Mod (26.1.2 erscheint erst, wenn der Server wirklich auf der Version mit den Blöcken läuft)




Warum es den Mod gibt​


Ursprünglich ging es um eine einzige Frage: Was kommt eigentlich aus meinem Generator raus – und in welchem Verhältnis?


Die Verteilung steht nirgends. Man sieht, dass zwischendurch etwas anderes kommt als der Grundblock, aber wie oft, lässt sich nur messen. Genau dafür ist der Blockzähler gebaut: eine Weile am Generator stehen, und die Verteilung steht im HUD.

Abgebaut
Stein 7.152
Eisenerz 397 ~ 1.059 Roheisen (Glück IV)
Schneeblock 6.251
Eis 3.721
Moosblock 3.555
Packeis 2.512
Kupfererz 304 ~ 2.837 Rohkupfer (Glück IV)
Golderz 213 ~ 568 Rohgold (Glück IV)
Andesit 263
Blaueis 240
Podsol 209
Grobe Erde 174

Gesamt 25,0k

Nach knapp 25.000 Blöcken ergibt das ein belastbares Bild:


Block
Anzahl​
Anteil​
Stein
7.152​
28,6 %​
Schneeblock
6.251​
25,0 %​
Eis
3.721​
14,9 %​
Moosblock
3.555​
14,2 %​
Packeis
2.512​
10,1 %​
Eisenerz
397​
1,6 %​
Kupfererz
304​
1,2 %​
Andesit
263​
1,1 %​
Blaueis
240​
1,0 %​
Golderz
213​
0,9 %​
Podsol
209​
0,8 %​
Grobe Erde
174​
0,7 %​

Und die Ertragsschätzung sagt dazu, was in der Kiste landet: Aus 397 Eisenerz werden mit Glück IV rund 1.059 Roheisen, aus 304 Kupfererz sogar 2.837 Rohkupfer – Kupfer droppt mehrfach pro Block, deshalb der Unterschied trotz ähnlicher Blockzahl.


Alles Weitere ist drumherum gewachsen: die Pausen, weil Stehzeiten die Statistik verfälschten. Und die Gegenprüfung beim Abbau, weil abgelehnte Abbauten sonst als echte mitgezählt wurden.




Was der Mod macht​


Blöcke zählen​


Zählt jeden zerstörten Block, sortiert nach Menge. Gezählt wird der Abbau, nicht der Drop – Blöcke, die ins Void fallen oder gar nichts hinterlassen, zählen also mit.

Abgebaut
Stein 7.152
Schneeblock 6.251
Eis 3.721
Gesamt 25,0k


Abgelehnte Abbauten zählen nicht. Wenn ein Plugin dir das Abbauen verbietet – zu wenig Hunger, fremde Insel, geschützte Region – bricht dein Client den Block trotzdem kurz weg und der Server schickt ihn zurück. Der Mod prüft deshalb kurz nach, ob der Block wirklich verschwunden ist, bevor er zählt.


Ertrag schätzen​


Für Erze rechnet der Mod aus, wie viel Rohstoff dabei herauskommt:

Kupfererz 304
~ 2.837 Rohkupfer (Glück IV)


Die Glück-Stufe wird automatisch aus deiner Spitzhacke gelesen und beim Abbau festgehalten. Wechselst du mitten in der Sitzung das Werkzeug, werden die Blöcke getrennt gezählt, statt die neue Verzauberung rückwirkend auf alles anzuwenden. Mit Behutsamkeit abgebaute Blöcke bekommen keine Zeile – dort ist der Ertrag der Block selbst. Gerechnet wird nach den Vanilla-Formeln, inklusive der Unterschiede zwischen Multiplikator-Erzen (Kohle, Diamant, Eisen, Nether-Gold …) und Zuschlag-Erzen (Redstone, Glowstone) sowie der harten Obergrenze bei Glowstone.


Items zählen​


Zählt zusätzlich, was tatsächlich in dein Inventar wandert. Auf Servern, die Drops direkt in ein Lager schieben, bleibt dieser Abschnitt leer – sinnvoll wird er, sobald du das Einsammeln für einen Blocktyp abschaltest. Dann siehst du für diesen Typ beides nebeneinander und damit deinen echten Glück-Ertrag.


Wegwerfen und Wiederaufheben zählt dabei nicht doppelt.


Automatisch pausieren​


Damit die Statistik nicht durch Stehzeiten verwässert wird, pausiert der Mod von selbst:


  • beim Essen (egal ob von Hand oder per Auto-Eat-Mod)
  • solange ein Fenster offen ist – Chat, Inventar, Lager, Menü
  • nach dem Betreten einer Welt, bis du den ersten Block abbaust (nur 1.21.11)
  • nach ein paar Sekunden ohne Abbau (nur 1.21.11)

Die Sitzungsuhr steht währenddessen ebenfalls still. Im HUD ist immer sichtbar, warum gerade pausiert wird.


Zähler überleben den Neustart​


Beim nächsten Start stehen die Werte wieder da, wo sie waren. Gesichert wird regelmäßig und beim Verlassen der Welt.

1787491236025.png
Mit Behutsamkeit

1787491442693.png
Mit Glück 4 (Fix für Kupfererz ist schon drin, war ein reiner Anzeigefehler)



Bedienung​


TasteFunktion
HHUD an/aus
JZähler zurücksetzen
XPause an/aus
OEinstellungsfenster

Alle vier unter Optionen → Steuerung umbelegbar.


Das Einstellungsfenster deckt die wichtigsten Optionen mit Reglern und Schaltern ab und verteilt sich bei kleinen Fenstern automatisch auf mehrere Seiten. Alles Weitere steht in config/skyhelper.json, die im laufenden Spiel neu geladen wird – Datei speichern genügt.




Alle Einstellungen​


Anzeige​


OptionStandardBedeutung
showHudanHUD anzeigen
hudX, hudY4, 4Position in Pixeln von links oben
hudMaxLines6Höchstzahl angezeigter Blockarten (nicht Zeilen)
hudMaxItemLines4Höchstzahl angezeigter Itemarten
hudMinAmount1Einträge unter dieser Menge ausblenden
showTotalanSummenzeile über alle Blöcke
showRateausRate pro Stunde hinter jeder Zeile
showSessionTimeausSitzungsdauer in der Kopfzeile
showBackgroundanHalbtransparenter Hintergrund

Ertragsschätzung​


OptionStandardBedeutung
showEstimatedDropsausSchätzzeilen unter Erzen anzeigen
autoDetectFortuneanGlück-Stufe aus der Spitzhacke lesen
fortuneLevel0Manueller Wert – Rückfall- und Bezugsgröße

Zählen​


OptionStandardBedeutung
countItemsanAufgesammelte Items mitzählen
ignoreBlocksleerBlöcke, die nicht gezählt werden
ignoreItemsleerItems, die nicht gezählt werden
dropCreditSeconds300Verfallszeit für das Wegwerf-Guthaben
verifyBreaksanAbbau gegenprüfen, bevor gezählt wird
verifyDelayTicks3Wartezeit bis zur Prüfung – nicht über 5

Zu verifyDelayTicks: Der Wert liegt zwischen zwei Grenzen. Nach unten begrenzt ihn dein Ping (so lange braucht eine Ablehnung zurück), nach oben die Regeneration von Generatoren – ein Cobblestone-Generator baut nach etwa 5 Ticks nach, und ein nachgewachsener Block sieht für den Mod aus wie eine Ablehnung. Der Standard 3 trifft beide Bedingungen bis etwa 100 ms Ping.

Pausen​


OptionStandardBedeutung
pauseWhileEatinganBeim Essen pausieren
pauseWhileScreenOpenanBei offenem Chat/Inventar/Menü pausieren
resumeOnMininganDanach erst beim nächsten Abbau weiterzählen
pauseOnJoinanPausiert starten (nur 1.21.11)
pauseWhenIdleanBei Inaktivität pausieren (nur 1.21.11)
idleTimeoutSeconds5Ab wann als inaktiv gilt (nur 1.21.11)

Speichern​


OptionStandardBedeutung
persistCountersanZählerstände über Neustarts behalten
saveIntervalSeconds30Abstand der automatischen Sicherungen
resetOnJoinausZähler beim Betreten einer Welt leeren



1787490727258.png
1787491833462.png

Grenzen, ehrlich gesagt​


  • Kein Ertrag ohne eigenes Inventar. Schiebt der Server Drops direkt ins Inselager, berühren sie dein Inventar nie und sind für einen Client-Mod unsichtbar. Der Blockzähler funktioniert trotzdem, die Ertragsschätzung bleibt eine Rechnung.
  • Die Schätzung ist Vanilla-Mathematik. Server mit eigenen Werkzeugen oder Drop-Regeln können abweichen. Deshalb steht überall ein ~ davor.
  • Die Abbau-Prüfung ist ein Kompromiss. Client-Vorhersage lässt sich ohne tieferen Eingriff nicht sauber von echter Regeneration trennen; getrennt wird über das Timing.
  • HUD und Menü sind auf Deutsch. Nur die Item- und Blocknamen kommen aus dem Spiel und sind damit in der Sprache des Clients.

Geplant, wenn Interesse besteht​


Die Prozentverteilung, die oben von Hand ausgerechnet ist, könnte der Mod auch live im HUD anzeigen – direkt neben der Blockmenge:

Abgebaut
Stein 7.152 28,6 %
Schneeblock 6.251 25,0 %
Eis 3.721 14,9 %
Eisenerz 397 1,6 %
Golderz 213 0,9 %
Gesamt 25,0k

Damit müsste niemand mehr selbst rechnen, um die Verteilung seines Generators zu kennen – man stellt sich hin, baut ab und liest ab. Die Zahlen sind ohnehin alle vorhanden, es ist also eher eine Frage der Anzeige als der Berechnung.


Wenn das jemand gebrauchen kann, baue ich es ein. Sagt einfach Bescheid.
 

Anhänge

  • skyhelper-1.3.1.zip
    41 KB · Aufrufe: 0
  • Like
Reaktionen: LoDiMa