Topic: Neues Volk - Europäer
MarkMcWire![]() Topic Opener |
Posted at:
2021-05-25, 20:09 UTC+2.0
> *Nordfriese wrote:*
Error rendering richtext: ../src/graphic/image_io.h:34 Image not found: tribes/workers/europeans/soldier/evade_level0.png. Text is:
Edited:
2021-05-25, 20:10 UTC+2.0
My widelands addons: https://drive.google.com/file/d/1jopANlODo41T2reHJ0zaCOMYxq_rxXP-/view?usp=sharing ![]() ![]() |
hessenfarmer![]() |
Posted at:
2021-05-29, 22:29 UTC+2.0
Ich hab mir das Addon runtergeladen und mal geschaut und ausprobiert, wie die KI mit den Europäern umgeht. Die Antwort ist ziemlich schlecht. Die Gründe dafür sind vor allem das die KI in einen zuverlässigen deadlock läuft. Hier ist was ich bisher herausfinden konnte: wenn diese Probleme gefixt sind müsste ich neu analysieren, was es noch für Probleme gibt. Generell ist das Management von Gebäudeupgrades eher sehr grob im Vergleich zum Management von Neubauten, das kann einen Einfluss haben. ![]() ![]() |
MarkMcWire![]() Topic Opener |
Posted at:
2021-05-30, 09:40 UTC+2.0
Dann setze ich mich heute noch mal dran und mache ein Update auf 1.1.5. Das mit dem Verbot von Gebäuden war nur ein Experiment, ich wollte sehen ob es der KI irgendwie hilft, wenn sie nicht gleich die Baumaterialien für zu Spielbeginn nicht notwendige Gebäude und Upgrades verschwendet. Die AI Hints wollte ich eh mehr oder weniger komplett los werden. Ich wollte, siehe Punkt 6, das AI-Management über die Startbedingungen und eigene Skripte steuern. So wollte ich unabhängig von den hardcodierten Algorithmen werden. My widelands addons: https://drive.google.com/file/d/1jopANlODo41T2reHJ0zaCOMYxq_rxXP-/view?usp=sharing ![]() ![]() |
MarkMcWire![]() Topic Opener |
Posted at:
2021-05-30, 10:55 UTC+2.0
Neue Version gepusht, müsst ihr nur noch freischalten.
Removing most of AI hints for normal and advanced buildings (only basic buildings have hints)
Edited:
2021-05-30, 11:46 UTC+2.0
My widelands addons: https://drive.google.com/file/d/1jopANlODo41T2reHJ0zaCOMYxq_rxXP-/view?usp=sharing ![]() ![]() |
hessenfarmer![]() |
Posted at:
2021-05-30, 12:10 UTC+2.0
Die Idee kann ich nachvollziehen. Allerdings kann das nicht funktionieren, weil: werde mit der neuen Version mal testen ![]() ![]() |
hessenfarmer![]() |
Posted at:
2021-05-30, 22:32 UTC+2.0
Hallo Mark, Ich denke langsam kommen wir voran. Mit der aktuellen Version wird das Recruitment Center als Ochsenfarm von der AI behandelt. Deshalb müssen wir die AI ein wenig bescheissen. Ich habe ein Dummy Productionsprogramm hinzugefügt, das niemals aufgerufen wird und lediglich aus der Zeile "produce=chisel" besteht. Weill die Europäer aber keinen Meissel kennen will die AI unendlich viel davon bauen, deshalb brauchen wir noch einen AI Hint "normal_AI_limit = 1" Für v1.1 würde ich den AI Code modifizieren, um diesen Hack wieder loszuwerden. Mit diesen Änderungen kommt die AI schon ein ganzes Stück weiter. Was mir sonst noch aufgefallen ist: Schmiede bekommen am schnellsten Erfahrung, wenn man die Inputs auf 0 setzt (alle programme failen). --> evtl. ein Bug muss ich noch analysieren. Für die Rekrutierung von Soldaten sollte das Basisgebäude kein Gold kosten. Da die Europäer mit nur 16 Soldaten starten kann die Expansion zum erliegen kommen bevor Gold gefunden bzw. erreichbar ist. Wenn du selber testen willst dann kannst du das so machen wie ich: Multiplayer - lokales Netzwerk Spiel mit ausschließlich AI Spielern und dir als Beobachter. Ich nehme meist die Karte Full Moon. Die Starbedingung Ports finde ich interessant. Allerdings funktioniert sie mit dem gegenwärtigen Setup nur auf der Europa Karte. Vielleicht kannst du ja mal ein Zwei Gedanken verchwenden, wie man die verallgemeinern kann. ![]() ![]() |
Nordfriese![]() |
Posted at:
2021-05-30, 22:54 UTC+2.0
Ich hab mir die Harbors-Starbedingung zufällig auch gerade angeschaut (auf Europa 1.2), aber sie scheint einen Bug zu enthalten:
(Version 1.1.5 mit git-bc1c355)
Edited:
2021-05-30, 22:55 UTC+2.0
![]() ![]() |
MarkMcWire![]() Topic Opener |
Posted at:
2021-05-30, 23:55 UTC+2.0
Bei mir im Einzelspielermodus wurde das Center überhaupt nicht gebaut.
Hab ich in Version 1.1.6 abgeändert.
Ich füge Gold den Startbedingungen hinzu. Ich möchte gerne, dass alle Militärgebäude (Trainingssites und Barracks) Gold kosten, um sie wertvoller zu machen.
Die Startbedingung funktioniert auf allen Karten, jedoch bekommt man nur auf der Europa-Karte die Zusatz-Ports auf den abgelegenen Inseln, wenn man bestimmte Völker spielt. My widelands addons: https://drive.google.com/file/d/1jopANlODo41T2reHJ0zaCOMYxq_rxXP-/view?usp=sharing ![]() ![]() |
hessenfarmer![]() |
Posted at:
2021-05-31, 09:06 UTC+2.0
Ja weil es als Ochsenfarm behandelt wird, wenn man den oben beschriebenen Hack nicht macht
Geht natürlich auch. obwohl die Lösung das erste Barracks Gebäude ohne Gold bauen zu können ein wenig sicherer für die AI ist. Aber testen wir es mal so.
Dann hab ich das missverstanden, schau ich mir nochmal an. Das wäre aus meiner Sicht etwas, was man auch ins Hauptspiel integrieren kann. ![]() ![]() |
MarkMcWire![]() Topic Opener |
Posted at:
2021-05-31, 09:29 UTC+2.0
Ich iteriere über alle Hafenbauplätze (map.port_spaces) der Karte und wähle dann diejenigen aus, die in einem bestimmten Umkreis (im konkreten Fall 12 Felder) um den Startpunkt liegen. Dann generiere ich dort jeweils Häfen. Die Zuteilung der Waren erfolgt dann separat, da ich die Gesamtzahl ja erst durch die tatsächlich erbaute Anzahl der Häfen teilen muss. Sonst hätte ein Spieler mit 3 Häfen bei den Waren ja einen Vorteil gegenüber einem Spieler mit 2 Häfen. Bei den Arbeitern werde ich genauso verfahren, nur da habe ich noch keine Funktion set_workers in die Startbedingungen eingebaut, deswegen fülle ich die Häfen noch über den alten Algorithmus (prefield buildings) mit Arbeitern. Schau dir auch mal die neue starting_conditions.lua an, ob ihr Funktionen davon ins Hauptspiel übernehmen könnt. Hab viele nützliche Funktionen aus der debug.lua ausgeliedert.
Edited:
2021-05-31, 09:30 UTC+2.0
My widelands addons: https://drive.google.com/file/d/1jopANlODo41T2reHJ0zaCOMYxq_rxXP-/view?usp=sharing ![]() ![]() |