Help and Errors

live schach

orangutanfan, 1/14, 07. Jul '26

orangutanfan von meinem gegner gelenhard kommt kein zug, seine zeit läuft auf 0 runter und ich verlier die partie ??

daddeldu, 2/14, 07. Jul '26

Das ist mir auch schon passiert. Es hängt, glaube ich, mit schlechter Internetverbindung zusammen. Ich gehe dann aus live Schach kurz raus und gleich wieder rein, dann geht's.

Steinitz, 3/14, 08. Jul '26

Ihr müsst eine Sache beachten:

Wenn euer Gegner "scheinbar" nicht zieht, läuft eure (!!!!) eigene Zeit runter und euer Gegner, wartet auf einen Zug von euch!

PROBLEM:

Euer Internet ist gerade nicht so gut, das hat der SF daddeldu auch richtig erwähnt!

LÖSUNG:

Ihr, aktualisiert euren Browser genau dann, ....wenn der Gegner gerade
"scheinbar (!!!!)" nicht zieht!

Und dann seht ihr, das gerade eure Zeit runter läuft!

Woher ich das weiß?

Das ging mir schon so häufig selbst so.

Noch'n Tipp:

Wenn euer Internet nicht (durchgängig!!!!) stabil läuft, spielt im Liveschach KEINE Partien unter 5 Minuten!

Viele Grüße Uwe (Steinitz) und chesstiger

shaack, 4/14, 08. Jul '26

Wenn das wirklich ein Problem im Live Schach ist, kann das optimiert werden.

BANKHAR, 5/14, 08. Jul '26

Wurde schon so oft thematisiert. Wie kann das optimiert werden?

shaack, 6/14, 08. Jul '26

shaack
Seit dem Update im Frühjahr gab es so gut wie keine Fehlermeldungen mehr diesbezüglich. Ich weiss von 2 gemeldeten Fehlern in 3 Monaten bei mehreren tausend Spielen in der Zeit.

BANKHAR, 7/14, 08. Jul '26

Das könnte daran liegen, dass die betroffenen Spieler das Problem kennen, es akzeptiert haben, dass es an der jeweiligen Internetverbindung liegt und nicht bei jedem Vorfall Meldung machen. Die Frage ist nun, was du (shaack) von chessmail-Seite aus optimieren könntest um dem entgegen zu wirken?

shaack, 8/14, 08. Jul '26

Wie gesagt wurde der Live-Bereich im Frühjahr modernisiert und danach sind die Fehler stark zurückgegangen. Eine schlechte Internetverbindung bleibt aber immer eine schlechte Internetverbindung. Optimierungsmöglichkeiten wären eine bessere Erkennung von schlechten Internetverbindungen. Dass die Uhr durchläuft, sollte verhindert werden, dann besser einen Fehler anzeigen.

daddeldu, 9/14, 08. Jul '26

Was ich nicht verstehe: meine Internetverbindung ist stabil, Fernschach oder überhaupt cm ist kein Problem. In dem Augenblick, wenn ich ein Live Spiel starte, kommt bei mir die Meldung, daß die Verbindung schlecht ist.

Oli1970, 11/14, 08. Jul '26

Das Problem liegt meistens an minimalen Paketverlusten im WLAN (Mikroabbrüche). Bei Netflix & Co. merkt man das oft nicht, weil Videos im Voraus laden (Puffer).
Live-Schach nutzt, soweit ich mich erinnere, Websockets: Geht hier ein Datenpaket verloren, blockiert die Verbindung sofort den gesamten nachfolgenden Datenfluss. Der Zug des Gegners staut sich quasi in der Leitung und kommt nicht auf deinem Bildschirm an.
Dein Browser merkt das nicht sofort und zeigt dir ein normales Brett, während auf dem Server deine Uhr bereits abläuft.
Wenn der Gegner verdächtig lange nicht zieht, drück sofort F5 (Seite neu laden), wie oben schon gesagt. Das baut die Verbindung sofort neu auf und rettet ggf. die Partie.

Noch kurz zur „stabilen Internetverbindung“: Sowas gibt es nicht. Paketverluste, Latenzen, Jitter kommen vor, werden aber in der Regel schnell genug kompensiert, so dass der Nutzer Unterbrechungen oder fehlende Daten-Pakete nicht wahrnimmt. Trotzdem z. B. ruckelt manchmal das Streaming-Video oder das Bild wird kurz körniger. Nimm eine übliche Verbindung: WLAN, Router, DSL-Leitung, Provider-Hardware, mehr Leitung, mehr Router, Switches, Server. Alles muss miteinander „reden“, geteilt mit vielen anderen Nutzern und Geräten, die auf den gleichen Wellen kommunizieren oder den Datenstrom überlagern. Das Zeug ist „stabil“ in dem Sinne, dass es meistens irgendwie läuft, so dass am Ende was am Rechner ankommt. Aber nicht so, dass garantiert alle Daten in gewünschter Zeit und richtiger Reihenfolge ankommen. Du hast am Ende das gewünschte Ergebnis, weißt aber nicht, ob die Post den kürzesten Weg genommen hat oder der Brief zwischenzeitlich im Verteilzentrum lag (oder schlimmstenfalls, ob er überhaupt geschickt wurde).

c7c5, 12/14, 08. Jul '26

c7c5
Das Problem besteht seit jeher und wurde bereits oftmals thematisiert. Ich hatte das sogar sowohl via LAN/WLAN. Daher ist es unabhängig und muss zwangsläufig nicht am Client oder einer kabellosen Verbindung liegen. Klar ist eine kabelgebundene Verbindung zu bevorzugen. Das ist natürlich ärgerlich. Selbst ein Mitschneiden im Browser brachte keine wirkliche Erkenntnis.

Aber grundsätzlich wird die Kommunikation zwischen Server und Client hergestellt, ist aus welchem Grund auch immer die Verbindung gestört/unterbrochen gibt es kein Intervall, in dem versucht wird diese Verbindung wieder aufzubauen. Das resultiert dann in dem Status, das die eigene Zeit herunterläuft. Selbst wenn der Gegner zieht, löst das seitens des Servers keinen Rediscover aus, was ja eigentlich der Fall sein sollte.

Solch ein Rediscover sollte im Fehlerfall periodisch bei Identifizierung eines Abbruchs erfolgen. Die Frage ist grundsätzlich wie das im WebSocket dann implementiert werden kann.

@shaack Sowas sollte sich doch implementieren lassen?

shaack, 13/14, 09. Jul '26

Danke @c7c5, deine Analyse trifft den Kern schon ziemlich gut. Einen Punkt möchte ich aber gerade rücken.

chessmail nutzt im Live Schach socket.io, und die automatische Wiederverbindung ist aktiv. Der Client versucht bei einem Abbruch von selbst, im Sekundentakt und über mehrere Minuten hinweg, die Verbindung wieder aufzubauen. Ein fehlendes Reconnect-Intervall ist also nicht die Ursache.

Der wunde Punkt liegt woanders. Es fehlt bislang ein sauberes Nachziehen des Spielstands nach einer Unterbrechung. Fällt die Verbindung im falschen Moment kurz weg, verschickt der Server den Gegnerzug genau einmal. Kommt er nicht an, fragt der Client den aktuellen Stand danach nicht noch einmal aktiv ab. Genau das meinst du mit Rediscover, und das ergibt Sinn.

Dazu kommt die halb offene Verbindung, bei der kein sauberes Disconnect ausgelöst wird, die Daten aber trotzdem nicht mehr fließen. Die tritt, wie du sagst, unabhängig von LAN oder WLAN auf.

Umsetzbar ist beides. Ich nehme es auf die Liste, das Erkennen eines toten Kanals und das Nachsynchronisieren beim Wiederverbinden.

shaack, 14/14, 10. Jul '26

shaack
UPDATE: die beschriebene Verbesserung ist jetzt live.

Nach euren Rückmeldungen habe ich genau den beschriebenen Punkt optimiert. Bisher hat der Client nach einer kurzen Verbindungsunterbrechung den Spielstand nicht aktiv nachgezogen. Fiel ein Zug des Gegners genau in diese Lücke, kam er nicht an und die eigene Uhr lief weiter.

Ab sofort holt sich der Client nach einem Reconnect den aktuellen Stand vom Server, also Stellung und beide Uhren, und baut das Brett neu auf. Ein in der Zwischenzeit verpasster Zug wird damit nachgeholt, statt dass die Zeit einfach herunterläuft. Das ist im Kern der Rediscover, den @c7c5 vorgeschlagen hat.

Probiert es gern aus und schreibt, ob sich das Verhalten bei euch bessert. Danke fürs genaue Beschreiben! 👍