Je Satz in allen drei Punkteskalen, systematisch kodiert

Sven 2026-09-09: „Bei ‚Spielpunkt' ‚Für jeden Satz einzeln': hier wuerde ich
analog zu den Auswahlen oben ergaenzend noch ‚Sieg: 1 Punkt' und ‚Sieg: 3 Punkte,
Unentschieden: 1 Punkt' noch mit vorsehen wollen in geeigneter Reihenfolge." Und:
„solange es kompatibel zu dem Stand vor #304/#306 ist" — der Wert des Modus war
also frei gestaltbar.

Statt weitere Einzelwerte anzuhaengen (4, dann 5, dann 6) traegt der Wert die
Bedeutung jetzt selbst:

    Wert % 10  = die Punkteskala   (0 = Sieg 2/Remis 1, 1 = Sieg 3/Remis 1,
                                    2 = ohne Umrechnung, 3 = Sieg 1)
    Wert >= 10 = je SATZ statt je Spiel

    je Spiel:  3   0   1   2        je Satz:  13  10  11
                                              ^^  ^^  ^^ dieselbe Skala, +10

Die ueberlieferten Werte 0 bis 3 behalten damit ihre Bedeutung unveraendert —
das ist die geforderte Kompatibilitaet zum Stand vor #304. Und jede der drei
Rechenstellen leitet Siegwert und Remiswert aus demselben Grundwert ab, statt
einen Sonderfall je Wert zu fuehren: aus einer Fallunterscheidung mit vier
Zweigen wurden zwei Zeilen.

Der Entwicklungswert 4 (nur in #306, nie ausgeliefert) entfaellt ersatzlos; er
existierte allein auf dem Testserver und ist dort auf 10 gesetzt. Deshalb auch
keine Migration dafuer — in keiner Installation steht er.

Der Server nimmt nur noch die sieben gueltigen Werte an; alles andere faellt auf
0 zurueck. Fehlt die Satzerfassung, faellt eine Je-Satz-Wertung auf IHRE EIGENE
Skala je Spiel zurueck (13 -> 3, nicht mehr pauschal auf 0): die gewaehlte
Punkteskala ist eine andere Aussage als die Bezugsebene und bleibt erhalten.

VERIFIZIERT, alles gemessen statt angenommen:

1. Bestand unveraendert: Ausgangsstand gesichert, alle sieben Pruefmodi ueber die
   echten Formulare neu gespeichert, 784-Zeilen-Dump aller wertungsrelevanten
   Tabellen — IDENTISCH. Am Ende, nach dem Durchlauf aller drei neuen Skalen und
   Ruecksetzen auf 10, erneut identisch.
2. Spielpunkte je Skala gegen eine UNABHAENGIGE Nachrechnung in Python (parst
   ergebnis_detailliert selbst, kein PHP beteiligt): 8 Spiele + 3 Begegnungen,
   je Skala 0 Abweichungen. Darunter der Faelligkeitsfall, dass „Sieg 1 Punkt"
   fuer Unentschieden NICHTS gibt (Spiel mit 1 Sieg, 1 Niederlage, 2 Remis:
   1:1 statt 2:2) und der Rueckfall ohne Satzdetails (Skala x Satzsiege).
3. Spielerstatistik je Skala gegen dieselbe Art Nachrechnung: 7 Spieler, je
   Skala 0 Abweichungen. Siege/Unentschieden/Niederlagen sind ueber alle Skalen
   gleich (die Skala aendert nur Spielpunkte, nicht wer einen Satz gewann), die
   Spielpunkte skalieren mit 1/2/3.
4. Das erzeugte JavaScript traegt je Skala die passenden Faktoren
   (1*/0*, 2*/1*, 3*/1*) — aus der gerenderten Seite gelesen.
5. Die Auswahl zeigt drei Je-Satz-Eintraege in derselben Reihenfolge wie oben
   (Sieg 1, Sieg 2/Remis 1, Sieg 3/Remis 1); ohne Satzerfassung bleibt die ganze
   Gruppe verborgen.

Der Warnhinweis spricht nicht mehr von „2 Punkten je gewonnenem Satz", sondern
vom vollen Siegwert — mit drei Skalen waere die Zahl falsch gewesen.
This commit is contained in:
svennickel
2026-09-09 22:52:18 +02:00
parent fa63e1e2d6
commit 1a111b792f
7 changed files with 744 additions and 721 deletions
@@ -501,7 +501,9 @@ COM_SPORTSMANAGER_ADD_SEASON="Saison hinzufügen"
COM_SPORTSMANAGER_GAME_POINTS_GAME="Spielpunkte"
COM_SPORTSMANAGER_WIN_1_POINT="Sieg: 1 Punkt"
COM_SPORTSMANAGER_WIN_2_POINTS="Sieg: 2 Punkte, Unentschieden: 1 Punkt"
COM_SPORTSMANAGER_WIN_1_POINT_PER_SET="Je Satz: Sieg 1 Punkt"
COM_SPORTSMANAGER_WIN_2_POINTS_PER_SET="Je Satz: Sieg 2 Punkte, Unentschieden 1 Punkt"
COM_SPORTSMANAGER_WIN_3_POINTS_PER_SET="Je Satz: Sieg 3 Punkte, Unentschieden 1 Punkt"
COM_SPORTSMANAGER_GAME_POINTS_FOR_GAME="Für das ganze Spiel"
COM_SPORTSMANAGER_GAME_POINTS_FOR_SET="Für jeden Satz einzeln"
COM_SPORTSMANAGER_WIN_3_POINTS="Sieg: 3 Punkte, Unentschieden: 1 Punkt"
@@ -1177,6 +1179,6 @@ COM_SPORTSMANAGER_GROUP_SEQUENCE="Spielfolge"
COM_SPORTSMANAGER_GAMES_IN_STATISTIK_FIRST_ONE="nur das erste Spiel"
COM_SPORTSMANAGER_GAMES_IN_STATISTIK_FIRST="nur die ersten %d Spiele"
COM_SPORTSMANAGER_POINT_TYPE_CHANGED_WARNING="Für diesen Mannschaftsspielplan sind bereits Ergebnisse eingetragen. Die gespeicherten Zahlen werden NICHT umgerechnet sie bedeuten danach etwas anderes (Tore statt Sätze bzw. umgekehrt). Trotzdem speichern?"
COM_SPORTSMANAGER_PER_SET_VALUATION_CHANGED_WARNING="Für diesen Mannschaftsspielplan sind bereits Ergebnisse eingetragen. Beim Wechsel der Wertung „je Satz" wird nichts umgerechnet: Spiele ohne gespeicherte Satzergebnisse werden mit 2 Punkten je gewonnenem Satz gewertet, ihre Satz-Unentschieden gehen verloren. Und wo unter „Mehrere" in Wahrheit Tore in den Punkte-Feldern stehen (statt Sätzen), zählt ab jetzt jedes Tor wie ein gewonnener Satz doppelt. Trotzdem speichern?"
COM_SPORTSMANAGER_PER_SET_VALUATION_CHANGED_WARNING="Für diesen Mannschaftsspielplan sind bereits Ergebnisse eingetragen. Beim Wechsel der Wertung „je Satz" wird nichts umgerechnet: Spiele ohne gespeicherte Satzergebnisse werden mit dem vollen Siegwert je gewonnenem Satz gewertet, ihre Satz-Unentschieden gehen verloren. Und wo unter „Mehrere" in Wahrheit Tore in den Punkte-Feldern stehen (statt Sätzen), zählt ab jetzt jedes Tor wie ein gewonnener Satz doppelt. Trotzdem speichern?"
COM_SPORTSMANAGER_RACE_RUNNING="Stand"
COM_SPORTSMANAGER_TOTAL_SCORE="Gesamtstand"