KI Probleme

Fragen zum Szenarienbau und Mapdesign

Moderatoren: Henning, Björn_Jernside

Hi,

ich hab ein Problem:

Ich habe eine Map gemacht, aber die .... KI schickt andauernd Nachrichten von wegen: schick mir 200 Rohstoffe von allem...

Wie krieg ich die weg?:KopfgegenWand:


Und: Gibt es einen Schalter, wo ich eine Bedingung einfügen kann, wo man einen Bestimmten Tribut zahlen muss?


Bitte meldet euch
I) Einfach ne andere Ki nehmen :P, oder selber basteln

II) Du brauchst einen Spieler ohne Rohstoffe.
Schalter I
Bedingung I
~ Eigenschaften ansammeln
~ Rohstoff Gold
~ 200
~ Spieler 2
Effekt I
~ zb Tor öffnen etc..

Sobald du Rot dann 200 Gold gegeben hast öffnet sich zb das Tor
Danke, aber woher bekomme ich eine andere KI?


Und wenn ich es so machen möchte, dass man 2 mal an den jenigen Zahlen muss, aber es egal, in welcher reihenfolge die Zahlung erfolgt? :tieftraurig:
Hi Lukas.

Wenn du NUR willst daß KEINE Chat-Einblendungen von der KI kommen, nimmst du z.B. eine passende KI von AokHeaven.

http://http://aok.heavengames.com/black ... ategory=ai

Da gibts Millionen von. :D
Runterladen, in den Ordner "AI" im AoE-Verzeichnis kopieren. Fertig.

Falls du da keine findest ohne Chats, lad dir einfach den
AI_Editor von der Arena runter (unter "Downloads" ).

Damit öffnest du die gewünschte KI (die *.per-Datei).
Nun siehst du das Skript als Textdatei.
Mit der STRG+f Suchfunktion suchst du nun alle Skripteinträge die mit

chat-to-player 1

anfangen.
Diese Zeilen löschst du einfach oder setzt ein Semikolon davor (dadurch werden sie als graue Kommentare markiert und damit von der KI ignoriert).
Danke schön.

Wenn ich die Map fertig hab, kann ich die hier rein stellen?
Klar.
Einfach alle Rechte an MICH abtreten ^^ und dann an aMa schicken (auf der Arena-Hauptseite unter "Uploads" ).

Würde dir aber unbedingt empfehlen sie vorher einem oder zwei Arena-Freiwilligen zum Testen zu schicken.
Ist hier so üblich, um das Uppen grob fehlerhafter oder zu schlechter Maps zu vermeiden.
Die Betatester finden immer mal ein Problem das man übersehen hat oder können einen zumindest auf Verbesserungsmöglichkeiten hinweisen.
Klar.
Einfach alle Rechte an MICH abtreten ^^ und dann an aMa schicken (auf der Arena-Hauptseite unter "Uploads" ).

Würde dir aber unbedingt empfehlen sie vorher einem oder zwei Arena-Freiwilligen zum Testen zu schicken.
Ist hier so üblich, um das Uppen grob fehlerhafter oder zu schlechter Maps zu vermeiden.
Die Betatester finden immer mal ein Problem das man übersehen hat oder können einen zumindest auf Verbesserungsmöglichkeiten hinweisen.
Glaub mir.
Nie mehr würde Ama nochma n vollverbuggtes Spiel uppen ^^
falls dei map mal fertig is kannst se an mich schicken. ich test se dann (ich hab mom nix zu tun^^)

Dark

PS: endlich mal ein namensvetter in der arena^^
Glaub mir.
Nie mehr würde Ama nochma n vollverbuggtes Spiel uppen ^^
Dann gäbe es auch sicher gar keine uploads mehr! ^^
Welche Map ist denn je 100% fehlerfrei?
Es würde ihn doch sehr viel mehr Mühe kosten (und den Autor) wenn es nicht vorher beta-getestet würde.

BTW: Wurde denn mal ein vollverbuggtes Spiel geuppt?
Ist aber sicher scho länger her.
Glaub mir.
Nie mehr würde Ama nochma n vollverbuggtes Spiel uppen ^^
Dann gäbe es auch sicher gar keine uploads mehr! ^^
Welche Map ist denn je 100% fehlerfrei?
Es würde ihn doch sehr viel mehr Mühe kosten (und den Autor) wenn es nicht vorher beta-getestet würde.

BTW: Wurde denn mal ein vollverbuggtes Spiel geuppt?
Ist aber sicher scho länger her.
Mein Siggis zum Beispiel hat doch erst nach Update gefunzt
Seit dem guckt Ama immer ma ins Spiel, obs auch im Groben und Ganzen läuft
Ahh stimmt.
Kann mich entsinnen.

Ist auch einer der Gründe warum mich dieses bei Talshia und Henning gelegentlich aufgetretene Laggen so beunruhigt.
Aber im Großen und Ganzen sollte das kein Prob sein.
Zumindest schmiert die Map ja nicht wie schon bei anderen passiert mittendrin ab oder sowas... *3-Kreuze-mach* :rolleyes:
falls dei map mal fertig is kannst se an mich schicken. ich test se dann (ich hab mom nix zu tun^^)

Dark

PS: endlich mal ein namensvetter in der arena^^
Heisst du auch Lukas?:Respekt:

Kann ich dir dann ma schicken, hab aber mom nen anderes Projekt am laufen. Habs mom auf Eis gelegt, wird aber nächstes Jahr wahrscheinlich wieder aufgenommen.


Und ich glaub auch, dass es eigentlich keine Map gibt, die 100% Fehlerfrei ist. :D
Ich stehe nun auch mal wieder vor einem KI-Problem.
Folgende drei Fälle würde ich gerne in ein Scenario einbauen. :)

1.
Der Computerspieler soll alle x Minuten angreifen, solange seine Town nicht "under-attack" ist.

2.
Ein weiterer Spieler soll eigentlich selbiges tun, doch soll hier das Angriffsintervall erst aktiviert werden, wenn Spieler 1 das Hoheitsgebiet dieses Spielers betreten hat.

3.
Die Soldaten eines dritten Spielers sollen "in Panik" verfallen, wenn Ihr König gestorben ist, das heißt, sie sollen anfangen, wie wild "rumzuwuseln" und das Angriffsintervall soll deaktiviert werden.

Jemand 'ne Idee auf Lager? :confused:
Das Dritte kann man, wenn es egal ist, wohin die Truppen laufen, mit der Anzahl der Erkundungstruppen lösen. Wie das genau aussieht (und ob es gut funktioniert) kann ich jetzt auf die Schnelle nicht sagen.

Zu den beiden anderen: Ich hab irgendwo mal was dazu gelesen und glaube, dass das mit einer Kombination aus Schaltern und KI gehen sollte. Genaueres weiß ich leider nicht mehr.
Gibt 'ne provisorische Möglichkeit, Angriffsintervalle mit Schaltern zu basteln, indem man die KI angreifen lässt durch kurzeitig aktivierte variable Bedingungen. Setzt man die in die Schleife, kann man das Angriffsintervall ganz gut austangieren. Ist aber provisorisch und daher nicht so cool ...
Ist nicht sehr zuverlässig und zu umständlich.
Du musst in der KI mit Timern arbeiten.
Doch, das ist eigentlich sehr zuverlässig. Also ich habe damit nur gute Erfahrungen gemacht.
Bloß zu amateurmäßig ...

EDIT: Gerade, wie man das mit den Timern macht, weiß ich ja nicht ... :rolleyes:

So jetzt muss ich erstmal offline und früh ins Bettchen.
Morgen mündl. Abitur-Prüfung ... :\
Ganz einfach:
<pre>
(defconst Angriffsintervall 300);Zeit in Spielsekunden

(defrule
(enable-timer 1 Angriffsintervall)
(disable-self))

(defrule
(timer-triggered 1)
=>
(attack-now)
(enable-timer 1 Angriffsintervall)
(disable-self))

</pre>

So wird sofort nach dem Starten des Angriffes der Timerfür das nächste Angriffsintervall wieder gestartet.
Mit den strategic-numbers kannst du dann die Anzahl und Größen der Angriffsgruppen festlegen.
Das Umschalten von Angriff auf Verteidigung macht die KI automatisch, wenn die Stadt angegriffen wird.

Falls die Angriffe aufhören sollen einfach die strategic-numbers der Angriffsgruppen und die Größen auf 0 setzen. Dabei nicht vergessen, dass dann auch keine Einheiten mehr erschaffen werden müssen/dürfen.
Ich glaube nicht, dass das von Günter richtig ist, da "disable-self" doch bedeutet, dass die Regel samt Facts und Actions für immer deaktiviert wird, bis die KI neu gestartet wird. Ich überleg auch mal, aber ich glaube, das könnte auch mit Zielen (goals) gehen... :confused:
Hallo Jan,

hast natürlich Recht.
Der Timer muss in der Regel deaktiviert werden.
Das Beispiel hätte aber eh nicht funktioniert, ich wollte auch nur ein Beispiel geben.
Ein sehr gutes Beispiel für Timer wird auf der AOK-CD mitgeliefert.

So sollte es aussehen (um keine unfertigen Sachen herumliegen zu lassen):

<pre>
(defrule
(true)
=>
(enable-timer 1 20)
(disable-self)
)

(defrule
(timer-triggered 1)
=>
(chat-to-all "Timer")
(disable-timer 1)
(enable-timer 1 20)
)
</pre>


EDIT:
@Henning:
Versuchs mal mit einer KI aus Daniel the Brave (dtb5).
Dort ist eine Komplette KI (für die Ritterzeit) mit Angriffstimer (und Cheat dazu, damit die Rohstoffe auch nicht ausgehen ;) )...