Brauch ne KI

Fragen zum Szenarienbau und Mapdesign

Moderatoren: Henning, Björn_Jernside

Für meine Weihnachtsmap brauche ich ne Ki:
am Anfang soll sie nichts tun ...
.. wenn sie 100 Stein hat viele Einheiten (Ritter, Plänkler, Speerkämpfer, Skorpione, Rammen) bauen und zu 2 -3 Gruppen a 5-7 Einheiten angreifen ... Und natürlich sollte sie nicht aufgeben :)
Ich könnte dir eine zur Verfügung stellen (die ich mir auch geklaut habe). Die macht am Anfang nix und nach nem KI-Signal fängt sie an, Einheiten zu bauen. Das kann man dann ohne größere Kenntnisse an die eigenen Bedürfnisse (Wahl der Einheiten, Angriffsgruppen etc.) anpassen.
Schickst du die mir dann ma an jernside.aoe@web.de
?
thx
*auch haben will*

brauch sie fürs letzte szenario da ichs nicht mit schaltern ordentlich hinbekomme :>

Lukas.ermer@web.de
Was meinen diese Zeilen?

(defrule
(event-detected trigger 2)
=>
(set-goal 10 1)
(disable-self))
Wenn KI-Skriptziel 2, dann Goal 10 einmal ausführen. Danach selbst deaktivierne.
So nicht ganz richtig.

Wenn das KI-Ziel 2 erkannt wird, wird Ziel 10 (einmalig) auf Wert 1 gesetzt. Das bedeutet, dass alle KI-Effekte, die "goal 10 1" als Bedingung haben, aktiviert werden. Sollten sie deaktiviert werden, kann man z.B. den Effekt "set-goal 10 2" einführen, also Ziel 10 auf Wert 2 setzen. ;)
Danke :)
Hey Leute ich missbrauch den Thread etzt einfach mal, da ich nicht extra dafür einen aufmachen wollte.

Kann mir einer von euch eine KI empfehlen bei dem sie nur die Dorfbewohner zur Arbeit schickt und ansonsten keine Militäreinheit anrührt? Wenn mir einer so´n Tutorial zum KI machen geben könnte fänd ich das natürlich noch besser.

P.S.: Wenn mir einer die KI um dies vorher ging schicken könnte fänd ich das ganz cool, weil ich die auch gebrauchen könnte.
Von Ingo ist ein Passive Ai in Aok heaven zu finden. Für ein Link bin ich z faul^^

Ach ja ich arbeite gerade an ein Tutorial fürs Flushen und ein neuartiges Tor also mit ein Ai tutorial wird nichts! Frag mal Janworks oder blauer hunf
Hmmm... Also eine KI machen, werd ich dir ganz sicher nicht. Für ein Tutorial bin ich derzeit zu faul, also rate ich dir zur Datei cpsb.doc, die Deutsche übersetzung. Dort stehen alle nötigen Codes, und ein paar Erklärungen. Dann fängst du einfach mal an zu schreiben (ist wirklich kinderleicht) und kannst dann mir oder Janworks eine E-Mail schreiben, wenn du nicht weiterkommst, oder etwas nicht funktioniert.

Im Englischen Editor, sieht das Grundschema so aus:

(defrule
(Bedingung 1)
(evtl. Bedingung 2)
(evtl. Bedingung 3)
(etc.)
=>
(Effekt 1)
(evtl. Effekt 2)
(evtl. Effekt 3)
(etc.)
)
Nimm einfach die Immobile Units Ki
Die lässt so ziemlich alle Einheiten in Ruhe (keine Marktkarren, Handelsboote, Fischkutter, Mönche wenn sie Reliquien erreichen können)
Weise die Drofbewohner einfach mit Schaltern ihren Aufgaben zu
du kennst lukas schlecht^^ der ist zu faul dafür, stimmts dicker?;)
Hmja nicht direkt, das Problem ist ja dass die KI schon selbst ständig denken und handeln soll, nur halt eben die Militäreinheiten stehen lassen soll...

@BlauerHund: Wo krieg ich die Datei her? Dann könnte ich sie mir selbst schreiben so schwer stell ich mir das auch nicht vor umehrlich zusein :P
Ich bedanke mich. Ich werd ich mal dran machen...
Hmm ist es nicht einfacher Ingos passiv Ai zu suchen??
Was macht die?
Naja genau das was du willst ich kopier mal die beschreibung rein:

Here is a zip with three very basic and simple passive.per files. Soldiers stay in their places and don't walk about, while villagers build farms, gather resources, and look busy. There is a text file in the zip for more info.

Enjoy!

wenn du nicht willst das sie farmen bauen sperre es einfach oder streich es einfach aus editor


Link:http://aok.heavengames.com/blacksmith/s ... ileid=4117
Ich hab ne Ki gemacht .. aber nach KI-Skriptziel greift sie ncht an bzw baut keine Einheiten

(defconst Schwert1 3)
(defconst Schwert2 4)
(defconst Schwert3 6)

(defconst Speer1 2)
(defconst Speer2 4)
(defconst Speer3 6)

(defconst Bogen1 4)
(defconst Bogen2 6)
(defconst Bogen3 8)

(defconst Ritter 5)

(defconst Plänkler 4)

(defconst Kav 5)

(defconst Mange 1)
(defconst Skorp 1)

(defconst min-Angriffstrupp 12)
(defconst max-Angriffstrupp 21)
(defconst Prozent-Angriff 100)
(defconst Angriffs-Intervall 360)

(defrule
(true)
=>
(set-strategic-number sn-maximum-food-drop-distance 0)
(set-strategic-number sn-maximum-wood-drop-distance 0)
(set-strategic-number sn-maximum-gold-drop-distance 0)
(set-strategic-number sn-maximum-hunt-drop-distance 0)
(set-strategic-number sn-maximum-stone-drop-distance 0)
(set-strategic-number sn-food-gatherer-percentage 0)
(set-strategic-number sn-wood-gatherer-percentage 0)
(set-strategic-number sn-gold-gatherer-percentage 0)
(set-strategic-number sn-stone-gatherer-percentage 0)
(set-strategic-number sn-cap-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-builders 0)
(set-strategic-number sn-cap-civilian-explorers 0)
(disable-self))
(defrule
(true)
=>
(set-strategic-number sn-percent-enemy-sighted-response 100)
(set-strategic-number sn-enemy-sighted-response-distance 100)
(set-strategic-number sn-hits-before-alliance-change 25)
(set-strategic-number sn-percent-attack-boats 0)
(set-strategic-number sn-percent-attack-soldiers 0)
(set-strategic-number sn-task-ungrouped-soldiers 0)
(set-strategic-number sn-consecutive-idle-unit-limit 0)
(set-difficulty-parameter ability-to-maintain-distance 100)
(set-difficulty-parameter ability-to-dodge-missiles 100)
(disable-self))
(defrule
(true)
=>
(set-strategic-number sn-number-explore-groups 0)
(set-strategic-number sn-minimum-explore-group-size 0)
(set-strategic-number sn-maximum-explore-group-size 0)
(disable-self))
(defrule
(true)
=>
(set-strategic-number sn-number-boat-explore-groups 0)
(set-strategic-number sn-minimum-boat-explore-group-size 0)
(set-strategic-number sn-maximum-boat-explore-group-size 0)
(disable-self))


(defrule
(event-detected trigger 4)
=>
(set-goal 10 1)
(disable-self))

(defrule
(goal 10 1)
=>
(set-strategic-number sn-maximum-food-drop-distance 0)
(set-strategic-number sn-maximum-wood-drop-distance 0)
(set-strategic-number sn-maximum-gold-drop-distance 0)
(set-strategic-number sn-maximum-hunt-drop-distance 0)
(set-strategic-number sn-maximum-stone-drop-distance 0)
(set-strategic-number sn-food-gatherer-percentage 0)
(set-strategic-number sn-wood-gatherer-percentage 0)
(set-strategic-number sn-gold-gatherer-percentage 0)
(set-strategic-number sn-stone-gatherer-percentage 0)
(set-strategic-number sn-cap-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-builders 0)
(disable-self))
(defrule
(goal 10 1)
=>
(set-strategic-number sn-number-explore-groups 0)
(set-strategic-number sn-minimum-explore-group-size 0)
(set-strategic-number sn-maximum-explore-group-size 0)
(disable-self))
(defrule
(goal 10 1)
=>
(set-strategic-number sn-percent-attack-soldiers Prozent-Angriff)
(set-strategic-number sn-attack-intelligence 100)
(set-strategic-number sn-defense-distance 100)
(set-strategic-number sn-sentry-distance 100)
(set-strategic-number sn-target-evaluation-siege-weapon 100)
(set-strategic-number sn-target-evaluation-damage-capability 100)
(set-strategic-number sn-number-attack-groups 3)
(set-strategic-number sn-minimum-attack-group-size min-Angriffstrupp)
(set-strategic-number sn-maximum-attack-group-size max-Angriffstrupp)
(attack-now)
(enable-timer 1 Angriffs-Intervall)
(enable-timer 3 6)
(enable-timer 4 6)
(enable-timer 5 6)
(disable-self))

(defrule
(timer-triggered 1)
=>
(disable-timer 1)
(enable-timer 1 Angriffs-Intervall)
(attack-now))

(defrule
(goal 10 1)
(unit-type-count-total militiaman-line less-than Schwert1)
(can-train militiaman-line)
=>
(train militiaman-line))

(defrule
(goal 10 1)
(unit-type-count-total spearman-line less-than Speer1)
(can-train spearman-line)
=>
(train spearman-line))

(defrule
(goal 10 1)
(unit-type-count-total archer-line less-than Bogen1)
(can-train archer-line)
=>
(train archer-line))

(defrule
(goal 10 1)
(unit-type-count-total skirmisher-line less-than Plänkler)
(can-train skirmisher-line)
=>
(train skirmisher-line))

(defrule
(goal 10 1)
(unit-type-count-total scout-cavalry-line less-than Kav)
(can-train scout-cavalry-line)
=>
(train scout-cavalry-line))

(defrule
(event-detected trigger 5)
=>
(set-goal 10 1)
(disable-self))

(defrule
(goal 10 1)
=>
(set-strategic-number sn-maximum-food-drop-distance 0)
(set-strategic-number sn-maximum-wood-drop-distance 0)
(set-strategic-number sn-maximum-gold-drop-distance 0)
(set-strategic-number sn-maximum-hunt-drop-distance 0)
(set-strategic-number sn-maximum-stone-drop-distance 0)
(set-strategic-number sn-food-gatherer-percentage 0)
(set-strategic-number sn-wood-gatherer-percentage 0)
(set-strategic-number sn-gold-gatherer-percentage 0)
(set-strategic-number sn-stone-gatherer-percentage 0)
(set-strategic-number sn-cap-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-builders 0)
(disable-self))
(defrule
(goal 10 1)
=>
(set-strategic-number sn-number-explore-groups 0)
(set-strategic-number sn-minimum-explore-group-size 0)
(set-strategic-number sn-maximum-explore-group-size 0)
(disable-self))
(defrule
(goal 10 1)
=>
(set-strategic-number sn-percent-attack-soldiers Prozent-Angriff)
(set-strategic-number sn-attack-intelligence 100)
(set-strategic-number sn-defense-distance 100)
(set-strategic-number sn-sentry-distance 100)
(set-strategic-number sn-target-evaluation-siege-weapon 100)
(set-strategic-number sn-target-evaluation-damage-capability 100)
(set-strategic-number sn-number-attack-groups 3)
(set-strategic-number sn-minimum-attack-group-size min-Angriffstrupp)
(set-strategic-number sn-maximum-attack-group-size max-Angriffstrupp)
(attack-now)
(enable-timer 1 Angriffs-Intervall)
(enable-timer 3 6)
(enable-timer 4 6)
(enable-timer 5 6)
(disable-self))

(defrule
(timer-triggered 1)
=>
(disable-timer 1)
(enable-timer 1 Angriffs-Intervall)
(attack-now))

(defrule
(goal 10 1)
(unit-type-count-total militiaman-line less-than Schwert2)
(can-train militiaman-line)
=>
(train militiaman-line))

(defrule
(goal 10 1)
(unit-type-count-total spearman-line less-than Speer2)
(can-train spearman-line)
=>
(train spearman-line))

(defrule
(goal 10 1)
(unit-type-count-total archer-line less-than Bogen2)
(can-train archer-line)
=>
(train archer-line))

(defrule
(goal 10 1)
(unit-type-count-total skirmisher-line less-than Plänkler)
(can-train skirmisher-line)
=>
(train skirmisher-line))

(defrule
(goal 10 1)
(unit-type-count-total scout-cavalry-line less-than Kav)
(can-train scout-cavalry-line)
=>
(train scout-cavalry-line))

(defrule
(event-detected trigger 6)
=>
(set-goal 10 1)
(disable-self))

(defrule
(goal 10 1)
=>
(set-strategic-number sn-maximum-food-drop-distance 0)
(set-strategic-number sn-maximum-wood-drop-distance 0)
(set-strategic-number sn-maximum-gold-drop-distance 0)
(set-strategic-number sn-maximum-hunt-drop-distance 0)
(set-strategic-number sn-maximum-stone-drop-distance 0)
(set-strategic-number sn-food-gatherer-percentage 0)
(set-strategic-number sn-wood-gatherer-percentage 0)
(set-strategic-number sn-gold-gatherer-percentage 0)
(set-strategic-number sn-stone-gatherer-percentage 0)
(set-strategic-number sn-cap-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-explorers 0)
(set-strategic-number sn-percent-civilian-builders 0)
(disable-self))
(defrule
(goal 10 1)
=>
(set-strategic-number sn-number-explore-groups 0)
(set-strategic-number sn-minimum-explore-group-size 0)
(set-strategic-number sn-maximum-explore-group-size 0)
(disable-self))
(defrule
(goal 10 1)
=>
(set-strategic-number sn-percent-attack-soldiers Prozent-Angriff)
(set-strategic-number sn-attack-intelligence 100)
(set-strategic-number sn-defense-distance 100)
(set-strategic-number sn-sentry-distance 100)
(set-strategic-number sn-target-evaluation-siege-weapon 100)
(set-strategic-number sn-target-evaluation-damage-capability 100)
(set-strategic-number sn-number-attack-groups 3)
(set-strategic-number sn-minimum-attack-group-size min-Angriffstrupp)
(set-strategic-number sn-maximum-attack-group-size max-Angriffstrupp)
(attack-now)
(enable-timer 1 Angriffs-Intervall)
(enable-timer 3 6)
(enable-timer 4 6)
(enable-timer 5 6)
(disable-self))

(defrule
(timer-triggered 1)
=>
(disable-timer 1)
(enable-timer 1 Angriffs-Intervall)
(attack-now))

(defrule
(goal 10 1)
(unit-type-count-total militiaman-line less-than Schwert3)
(can-train militiaman-line)
=>
(train militiaman-line))

(defrule
(goal 10 1)
(unit-type-count-total spearman-line less-than Speer3)
(can-train spearman-line)
=>
(train spearman-line))

(defrule
(goal 10 1)
(unit-type-count-total archer-line less-than Bogen3)
(can-train archer-line)
=>
(train archer-line))

(defrule
(goal 10 1)
(unit-type-count-total skirmisher-line less-than Plänkler)
(can-train skirmisher-line)
=>
(train skirmisher-line))

(defrule
(goal 10 1)
(unit-type-count-total knight-line less-than Ritter)
(can-train knight-line)
=>
(train knight-line))

(defrule
(goal 10 1)
(unit-type-count-total scorpion-line less-than Skorp)
(can-train scorpion-line)
=>
(train scorpion-line))

(defrule
(goal 10 1)
(unit-type-count-total mangonel-line less-than Mange)
(can-train mangonel-line)
=>
(train mangonel-line))



:(