Hallo!
ElvenRider, vielen Dank für deine Bemühungen. Echt nett von dir, dass du dir extra die INIs etc. angeguckt hast.
Skripte hab ich bisher in den SuM2 Maps noch nicht entdeckt, werd mal nachgucken. Das mit dem Dump Map to file hört sich nach ner guten Sache an, das manuelle rumklicken in den Skripts ist doch sehr unübersichtlich.
Skripts mit Textanzeige? Ich habe glaub mal irgendwo von einem Verknüpfungs-Suffix in der Verknüpfung gelesen, das die Game.dat Skripts während dem Spiel anzeigen lässt. Weiß da jmd von euch etwas drüber? Werd nochmal rumsuchen ...
ElvenRider, wie ist das genau mit der AI_CURRENT_CONSTUCTION_S
ITE? Woher weiß die KI, was das ist? Ich hab einfach mal testweise die playeraitypes.ini von SUM1 eingefügt sowie die Libraries von SUM1 zusätzlich in die Mod.big gepackt.
Die KI baut jetzt Helden in der Zitadelle und greift mit diesen auch an (Mordor nutzt auch das Auge, und hab sogar einmal gesehen, wie die Mordor KI ein Sägewerk eingenommen hat), aber die KI baut nichts in der Base und bewegt auch keine Einheiten bis sie 2-3 Helden ausgeblidet hat.
Die SuM1-Bauskripts scheinen nicht zu funktionieren. Hab mir die Skripts angesehen, soweit ich das verstanden habe müssten sie eigentlich noch in Ordnung sein, d.h. die Objektnamen eig. aller Gebäude stimmen noch, daran kann's also nicht liegen. Vllt weiß die SuM2 KI nicht, was eine "AI_CURRENT_CONSTRUCTION_
SITE" ist? Diese ist stets in den Skripts angegeben.
Wichtige Frage an SuM2ler:
Was braucht die KI in SuM2 dass sie "anläuft"? Hab gemerkt, dass sie nur was macht, wenn die KI eine Festung hat. Wieso ist das so? Welche Dinge sind so besonders an der Festung, dass sie die KI "aktivieren"? Könnt ich so nicht auch die KI aktivieren? Den Zitadellen der SuM1 Basen einfach die INI der Fortress zu geben reicht leider NICHT aus.
Es muss irgendwas anderes sein ...
Das wäre hilfreich zu wissen, wenn ich weiter mit der SuM2 KI experimentieren will. Im Moment tut sie nur etwas, wenn sie als Startgebäude die Festung erhält. Sie tappt dann jedoch auch nur sinnlos mit den Startunits rum, benutzt bestenfalls noch das Auge und baut Helden in der Festung, die sie in der Mod eigentlich gar nicht haben soll. Insgesamt also noch ein sehr spärlicher Ansatz. -.-
@Reshef
Danke für die Erklärungen. Die ai_men of the west.map ist zumindest die einzige, die in den SuM2-Libraries angegeben wird. Und in Sûls SuM2 KI Tutorial heißt es auch, dass standardmäßig in SuM2 nur noch Spells durch Skripts gesteuert werden.
EDIT: Suffix für die KI gefunden (Suls KI Tutorial auf 3rdage):
With SkirmishAI_1's scripts you could always see what was going on ingame by starting it using '-scriptdebug2', an awesomely useful (and needed) tool!
EDIT2: Spiel mit -scriptdebug2 gestartet.
Sehr interessanter Unterschied zwischen SuM1 und SuM2 bei den Variablen:
SuM1:
Player_1/l_Econ - Current Construction Site Buildable = 1
SuM2:
Player_1/l_Econ - Current Construction Site Buildable = 0
Das könnte natürlich entscheidend sein. Werd mal forschen, wieso das in SuM2 so ist.
EDIT3: @ElvenRider
In den SuM2 maps befinden sich nur Scripts bezüglich Gollum, wie er über die Map zu tappen hat um den Spielern das Erreichen von Ringhelden schwerer zu machen. Da ist nichts wichtiges über das Bausystem ...
EDIT4: Mit ElvenRiders Methode (geht echt gut
) die AI_Mordor.map-Library aus SuM1 durchsucht, die aktuell auch in meiner Mod verwendet wird.
Erste interessante Details:
[ns na nd] [E N H]e_Update Current Construction Site:
//:This set of scripts will check if the econ urgency has crossed the expansion threshold. If so, then it will check if the current construction site can no longer build before trying to set a new expansion as the current site. An arbitrary site will be chosen from the ones that are available to be built at.:
*** IF ***
True.
*** THEN ***
Run Subroutine 'ee_Check Current Construction Site'.
Run Subroutine 'ee_Set Current Construction Site'.
[ns A nd] [E N H]ee_Check Current Construction Site:
*** IF ***
Can player Player '<This Player>' build at base Unit 'AI_CURRENT_CONSTRUCTION_SITE'
*** THEN ***
Set Flag named 'l_Econ - Current Construction Site Buildable' to TRUE
*** ELSE ***
Set Flag named 'l_Econ - Current Construction Site Buildable' to FALSE