Wieso ist dein Quellcode teilweise eingerückt und dann wieder nicht? Das ist alles sehr unübersichtlich und du lässt zwischen den Prozeduren teilweise nichtmal eine Zeile frei.
Deine
Unit hat auch keinen Namen, nur "
Unit".
Bei
procedure TForm1.dateiSpeichern;
fehlt zudem ein end; um die Prozedur zu schließen.
Zwischendurch greifst du auch auf OClientGame zu.
if assigned(OClientGame) then OClientGame.FeldAuswahl(X,Y);
Deine
Unit nennt sich aber
UClientGame. Oder übersehe ich da etwas?