Skip to content

Adds game over on no moves with test.#438

Open
soerendomroes wants to merge 3 commits intomainfrom
fix/noGameOver
Open

Adds game over on no moves with test.#438
soerendomroes wants to merge 3 commits intomainfrom
fix/noGameOver

Conversation

@soerendomroes
Copy link
Member

Fixes #437

@soerendomroes soerendomroes requested a review from xeruf as a code owner February 19, 2026 12:48
@soerendomroes
Copy link
Member Author

@xeruf

Warum werden in den Github Actions die 2024/25 Tests ausgeführt?

sc.plugin2024.GameResultTest > sc.plugin2024.GameResultTest > work with regular result FAILED
io.kotest.assertions.AssertionFailedError at GameResultTest.kt:239

@soerendomroes
Copy link
Member Author

Task :plugin:test

sc.GamePlayTest > sc.GamePlayTest > sc.GamePlayTest > return regular scores FAILED
io.kotest.assertions.AssertionFailedError at GamePlayTest.kt:103

Das ist auch der Test für das 2024 plugin, oder?

@xeruf
Copy link
Member

xeruf commented Feb 22, 2026

weil die auch weiterhin funktionieren sollen - schließlich werden wir ja dann durch die plugins rotieren, wenn wir alle funktionsfähig halten müssen wir dann kaum noch saisonspezifische arbeiten verrichten

@xeruf
Copy link
Member

xeruf commented Feb 22, 2026

bitte auch wincondition testen - wenn der swarm connected ist (ein fisch corenered) und die runde vorbei sollte der spieler gewinnen, aber wenn die runde nicht vorbei ist muss er verlieren

@xeruf
Copy link
Member

xeruf commented Feb 22, 2026

und dann das todo comment entfernen

aber bis hierhin sieht alles gut aus

@xeruf
Copy link
Member

xeruf commented Feb 22, 2026

bzgl CI ist alles nochmal im gradle 9 update überarbeitet

@soerendomroes
Copy link
Member Author

weil die auch weiterhin funktionieren sollen - schließlich werden wir ja dann durch die plugins rotieren, wenn wir alle funktionsfähig halten müssen wir dann kaum noch saisonspezifische arbeiten verrichten

Genau das verwirrt mich ja. Ich habe ja nichts Saisonübergreifendes angefasst. Wie kann das sein?

@soerendomroes
Copy link
Member Author

@xeruf Die andere WinReason wird in dieser Implementierung gar nicht genutzt. Ist die noch hier, weil die in der vorherigen Implementierung vorhanden war? Ist der Plan alte Code-Schnipsel zu behalten?

@xeruf
Copy link
Member

xeruf commented Feb 27, 2026

ja gibt flaky tests, hab ich im gradle update auch verbessert

bitte noch weiter Fälle testen:

bitte auch wincondition testen - wenn der swarm connected ist (ein fisch corenered) und die runde vorbei sollte der spieler gewinnen, aber wenn die runde nicht vorbei ist muss er verlieren

aber beachten, nachden den Regeln:
Der Spieler gewinnt, der am Ende des Spiels den schwersten zusammenhängenden Schwarm besitzt, wobei es sich auch um einen Teilschwarm handeln kann (Gewichtskriterium). Dafür wird für jeden Schwarm jeweils die Summe der Gewichte aller Fische in dem Schwarm gebildet. Ist der schwerste Schwarm von Rot genauso schwer, wie der schwerste Schwarm von Blau, gewinnt der Spieler, der während des Spiels zuerst einen Schwarm (kein Teilschwarm) gebildet hat, unabhängig davon, ob es ein eigener oder der des Gegners ist. Falls dies auch nicht der Fall ist, gibt es ein Unentschieden.

das heißt der cornered fisch gewinnt nicht unbedingt am ende einer runde, kommt drauf an ob das der größte zusammenhängende schwarm ist (wahrscheinlich nicht)

FIRST_UNION sollte das zweite kriterium im text abbilden, weiß nicht ob das überhaupt schon korrekt implementiert ist? müsste ja irgendwo getrackt werden...

@soerendomroes
Copy link
Member Author

bitte auch wincondition testen - wenn der swarm connected ist (ein fisch corenered) und die runde vorbei sollte der spieler gewinnen, aber wenn die runde nicht vorbei ist muss er verlieren

Ich glaube nicht, dass wir es hinbekommen, dass so viele Fische gecornered sind, dass sie mehr sind als der größte Schwarm des Gegners der cornered.

@soerendomroes
Copy link
Member Author

FIRST_UNION ist dieses Jahr gar keine Wincondition. Deshalb meine Frage.

Ist das da noch aus legacy Gründen, damit man die alten Regeln schneller findet?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Move Request trotz keiner Möglichen Züge gesendet

2 participants