Modderecke > Allgemeine Modding-Fragen

Upgrade durch Einheiten erhalten

(1/3) > >>

Hexenkönig_von_Angmar:
Hey,

ich habe folgende Fragen:

Wie kann man durch das erstellen einer oder mehreren Einheiten ein Upgrade erstellen?

(Z.B. will ich wie in eurem Mod bei dem Level-Aufstieg für Sauron, wenn man alle z.B. Nazguls baut, ein Upgrade für Sauron geben, das er ein Level aufsteigt)

Muss man das irgendwie mit Lua Scripten? Oder kann man das über "normales Coden" (Über die Inis) machen?

 Habe (falls es über die Inis geht) nichts gefunden, das mir weiterhilft.

Hoffe jemand kann mir dazu weiterhelfen.

Gruß Hexenkönig_von_Angmar

Only True Witchking:
Achtung: Sehr viele ""Fachbegriffe""  [ugly]
Kann ich aber auf Nachfrage gerne genauer erklären.

-----------------------------------------------------------------

Das hängt davon ab, was genau dein Ziel ist.

Option A: Das Object, was das Upgrade erhält [folgend "Object U"], befindet sich definitiv immer auf dem Schlachtfeld, wenn die Einheit, die das Upgrade auslöst ["Einheit E"], rekrutiert wird (das erscheint mir unwahrscheinlich, und ist z.B. bei Sauron nicht der Fall).

Wenn die Rekrutierung einer einzelnen Einheit ausreicht, um das Upgrade zu triggern, sollte das recht simpel sein - das rekrutierte Object muss nur ein Behaviour haben, mit dem es einmalig eine Weapon schießt, was dann automatisch bei der Rekrutierung ausgelöst werden sollte.

Diese weapon muss dann nur auf das Object U zielen und diesem einen AttributeModifier verpassen, welcher ein Upgrade gibt.

--

Option B: Object U ist nicht unbedingt vor Einheit E auf dem Schlachtfeld und selbst wenn E tot ist und U dann erst rekrutiert wird soll U noch das Upgrade erhalten.
[Also grob gesagt das Sauron-System, wobei da auch Option C dabei ist, und ich habe auch keine Ahnung, ob das so oder komplett anders umgesetzt wurde].

Bleibt es dabei, dass nur eine Einheit E rekrutiert werden muss (bzw. jede Einheit E genau ein Upgrade gibt, und jedes Upgrade von genau einer Einheit E kommt; wobei alle "E" unterschiedliche Einheiten sind), dann könnte man das möglicherweise so lösen, dass E bei der Rekrutierung ein unsichtbares Objekt erschafft (vermutlich über eine Weapon mit WeaponOCL, denke ich; wobei vllt auch sowas wie bei Rumil und Orophin funktioniert), welches permanent eine Führerschaft ausstrahlt, die nur auf U wirkt und diesem ein Upgrade gibt.

--

Option C: Wie B; nur müssen Einheiten gezählt werden - nicht "Rekrutiere Mollok", sondern "Rekrutiere 4 Trolle", "Rekrutiere alle Nazgûl" oder sogar "Kontrolliere X Aufseher".

Ehrlich gesagt - keine Ahnung. Zumindest für "kontrolliere" könnte ich mir denken, dass es vllt ein eigenes Behaviour gibt, was die Anzahl von Einheiten auf der Karte zählt, weiß ich aber nicht. Außerdem könnte das Behaviour ja nicht in Sauron selbst stecken - wenn die X Aufseher auf der Karte sind, erhält man ja sofort das Upgrade, ohne dass Sauron rekrutiert sein muss.

Das ist aber onehin nur Spekulation, habe ich noch nie nachgeschaut.

---

Gibt hier sicherlich noch viele Details und Lösungsansätze, die ich übersehen oder ausgelassen habe; überhaupt ist das ganze sehr grob und verwendet Begriffe, die nicht selbsterklärend sind - bei Fragen, fragen!  :)

PS: Namensdieb  :D

Elendils Cousin 3. Grades:
Option C läuft über Scripts in den libraries ab. Da kann man dann einfach abfragen, ob eine Bedingung vorhanden ist - z.B. ob man vier Trolle kontrolliert - und dann ein Upgrade vergeben.

Falls du dir ansehen willst, wie das bei Sauron funktioniert: Guck in der edain_maps.big unter libraries\spieler\spieler.map nach, dort findest du in den Scripts das entsprechende System.

Hexenkönig_von_Angmar:
Hey,

danke für die schnellen Rückantworten!

Habe schon gedacht das es über die Scripts geht aber nicht gewusst das es über Map-Scripts läuft... (Aber klar klingt Logisch)

D.h. es geht nur über die Scripts? Also gibt es keine Möglichkeit abzufragen wie viele Einheiten (z.B. Nazguls oder Trolle) auf der Karte sind über Inis (z.B. über ein Behavior)?

Wenn dem so wäre, ist es nicht so schlimm. Muss dann immer wenn ich nach Einheiten (>1) frage, über die spieler.map gehen.

Cool, Danke!!! (Habe schon ewig danach gesucht...)

Danke auch an "Only True Witchking" für die Vorschläge, ich persönlich bin bisschen anders an die Sache gegangen:
genauer gesagt, dass ich keine Weapon erstelle sondern ganz simpel wenn ein(e) Objekt/Einheit erstellt wird, einfach über den Behavior GrantUpgradeCreate (geht glaube schneller) das Upgrade zu geben.


Gruß Hexenkönig_von_Angmar

Elendils Cousin 3. Grades:

--- Zitat von: Hexenkönig_von_Angmar am 28. Jun 2022, 16:46 ---D.h. es geht nur über die Scripts? Also gibt es keine Möglichkeit abzufragen wie viele Einheiten (z.B. Nazguls oder Trolle) auf der Karte sind über Inis (z.B. über ein Behavior)?

--- Ende Zitat ---
Ich kenne kein solches Behavior. Du könntest, je nachdem was du erreichen willst, mit dem Hordenbonus arbeiten, aber das ist in meinen Augen alles unnötig kompliziert^^

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln