Aber im Ernst - die Entwickler sind dran. Die Schwierigkeit dürfte auch darin liegen, dass der Bug nicht so einfach zu reproduzieren ist - was nötig ist, um die Ursache zu finden.
Als Bug-Sucher in nem Mod-Projekt von nem Game finde ich ist folgender Auslößer definitiv bekannt: Schlafen/Hotelauffenthalt
Das abrechen von Schlafaufträgen wird nicht richtig in der DB gespeichert/gelöscht wodurch die Zeit immer noch mit berechnet wird(Ich gehe davon aus, das das ne eigene Tabelle ist), aber der Auftrag so nicht existiert. Also steht irgendwo in einer anderen Tabellen, die die Zeit mit dem des User´s verknüpft, drin, dass er <=8h oder >=8h(Bei mehreren Aufträgen die man nicht mehr abbrechen kann) noch gespeichert hat und "abarbeitet", aber die nicht mit ner Arbeit verbunden ist wodurch man die nicht abbrechen kann in den UI-Fenster ingame.
Also die Tabelle die den Fehler ausmacht könnte so aussehen:
T_UserArbeitZeit
User_ID, Arbeit_1, Zeit_1, Arbeit_2, Zeit_2, PA_Arbeit3, PA_Zeit_3, PA_Arbeit_4, PA_Zeit_4
User_ID ist eine Spalte mit der man auf die
Tabelle(T_***) zugreifen kann. Der Rest sind Werte ohne
Fremdschlüssel die eine weitere Tabelle verknüpft.
Beispielwerte die den Fehler auslößen
User_ID = 'Grunt Mesar' oder ein numerrischer wert wäre logischer also '1234567890'
Arbeit_1 = 'Brunnen bohren' oder eine ID dafür also '123456'
Zeit_1 = '600' in Sekunden. In Min also 10min die dann durch nen Dienst/Skript runtergezäht wird. Sekunden sind logischer als Millisekunden
Arbeit_2 = 'Bruhnen bohren' oder '123456'
Zeit_2 = '3600' also 1h
PA_Arbeit3 = 'Schlafen' oder '1'
PA_Zeit_3 = '28800'
PA_Arbeit_4 = 'Tabak pflücken' oder '12'
PA_Zeit_4 = '600'
So, die mit dem "PA_" am Anfang werden nur beschrieben wenn der User Automatik als PV hat, ansonsten nicht.
Jetzt nehmen wir an, ich breche die Arbeit 2(In der UI) ab. Durch ein fehler in der Übertragung und/oder des Skriptes und/oder des Servers selbst, kommt es dazu, das nur der Name also Arbeit_2 geleert/gelöscht wird. das heißt das die Zeit_2 noch da ist und mitgezählt wird weil etwas nicht abgefangen wurde or so(Ich will hier mal anmerken das ich nicht weiß was auf dem Server läuft.).
Erst wenn man x-Mal ne Arbeit reinstellt und abbricht wird auch der Zeit-Wert mitgelöscht und man muss nicht mehr 2h laufen/arbeiten/schlafen um die nächste zu machen die an der Reihe ist.
Ich hab das mal so kurz wie möglich gehalten damit das nicht so lang wird. Bitte spart euch die Frage wie eine Arbeit hochrutscht oder Abgebrochen wird und dadurch das letzte Feld für normal User oder PA´s frei wird. Das geschieht alles durch Skripte und co...
Ich hoffe auch das es klar rüberkommt für nen einfachen Server-Laien was ich so meine
Korrekturen dürfen in nem Zitat gerne vorgenommen werden falls ich was falsch erklärt oder sonstwas gemacht hab.
Ich hoffe ihr versteht jetzt was wahrscheinlich passiert wenn der Fehler kommt. Das hab ich hier jetzt rein zur Verständniss für alle Laien geschrieben innerhalb von... ~20min. Fehler oder falschdenken(z.B. Tabelle hat nen anderen Namen etc) können vorkommen und sind vorprogrammiert