Registriert seit: 15. Aug 2004
Ort: Wien
841 Beiträge
Delphi 2010 Enterprise
|
Re: TicTacToe mit mittlerer KI und für 1vs1
2. Nov 2005, 17:13
Hallo,
Eigentlich war das schon mit dem Auflisten von vorher total dum,
ich habe nur ein wenig Quelltext hinzugefügt und zwar in der procedure KI_Zug
Delphi-Quellcode:
// ZUG 3 oder höher
if (zug>2) and (KI_schwer.checked) then
begin
for i:=1 to 2 do
begin
KI_S2(1,2,3,i);
KI_S2(4,5,6,i);
KI_S2(7,8,9,i);
KI_S2(1,4,7,i);
KI_S2(2,5,8,i);
KI_S2(3,6,9,i);
KI_S2(3,5,7,i);
KI_S2(1,5,9,i);
end;
end;
wobei KI_S2 das ist:
Delphi-Quellcode:
procedure KI_S2(a,b,c,wert:byte);
begin
if (feldwert[a]=wert) and (feldwert[b]=wert) and (feldwert[c]=0) then wahl:=c;
if (feldwert[b]=wert) and (feldwert[c]=wert) and (feldwert[a]=0) then wahl:=a;
if (feldwert[c]=wert) and (feldwert[a]=wert) and (feldwert[b]=0) then wahl:=b;
end;
Im Prinzip könnte ich sogar den ganzen zug eins und zwei Weglasen (also die ganze KI besteht nur noch aus dem was ich jetzt hinzugefügt habe), und sie wäre noch immer fast unbesiegbar.
Ferby
|
|
Zitat
|