Schaue gerade recht viele AoE2 Spiele. Habe mir jetzt mal ein paar Gedanken gemacht wie das wohl aufgezeichnet wird.
Eine interessanten Thread gefunden:
http://stackoverflow.com/questions/30643…-work-in-a-game
Ein paar Fragen hätte ich da aber noch, falls sich da jemand genauer auskennt:
1. Weiss jemand wie das effektiv bei AoE2 läuft? Gibts da einen Artikel oder so?
2. Grundsätzlich ist klar, dass man da irgendwie User Inputs aufzeichnet und diese dann abspielt. Mit dem PRNG seeds kommt da wohl schon etwas recht gut abspielbares raus. Dass da Artefakte genau gleich auftreten kommt wohl auf die Art des Artefakts an (falls es etwas HW spezifisches ist könnte ich mir schon vorstellen, dass der dann nicht bei allen kommt). Jedoch frage ich mich da, wie das bei aufgezeichneten Spielen ist, welche dann auf einer neueren Version laufen. Da kann ja die noch so kleine Änderung ein komplett anderes Ergebnis ergeben. Man kann da also nicht einfach User Inputs abspielen, sondern muss an sich auch die AI Inputs abspielen (anstatt nur die Logik laufen zu lassen). Zusätzlich müsste wohl auch noch der Versionsstand und die jeweiligen Daten (Angrifsstärke, HP, etc.) für jede Version gespeichert werden. Und, falls doch die Logik abgespielt wird, die gleiche Logik garantiert werden. Weiss da jemand mehr? Stelle ich mir das richtig vor?
Prinzipiell hat man ja die gleichen Probleme, wie bei aller Software, die Dateien hat, die über verschiedene Versionen gehen, aber ich stelle mir das bei Spielen besonders komplex vor, weil das ja üblicherweise viel weniger standardisiert ist als bei 3D Programmen z.B.
Ich stelle mir da gerade Regression Testing lustig vor. Ok, spielen wir mal 100 aufgezeichnete Spiele ab und schauen ob da immer noch die gleichen Ergebnise heraus kommen.