27. Apr 2024, 07:28 Hallo Gast.
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge. Hierbei werden gemäß Datenschutzerklärung Benutzername und Passwort verschlüsselt für die gewählte Dauer in einem Cookie abgelegt.


Select Boards:
 
Language:
 


Autor Thema: Worldbuilder Fragen  (Gelesen 434340 mal)

Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #270 am: 26. Feb 2009, 23:54 »
Zitat
Dass der genauso ist wie ein normaler Creep? Exakt so kann man  es nicht machen,
Naja, das einzige, was nicht funktioniert ist, dass die Einheiten drum herum stehen und nicht laufen, weil das laufen Bugs ergeben wüürde oder DEUTLICH schwerer und komplizierter werden würde.^^
Obwohl... mir fallen grad ein paar Scripts ein, aber das wären dann pro Einheit nochmal um die 10 weitere scripts :D

Zitat
aber man kann es so ähnlich scripten(Ich sage nur was man machen soll, nicht die Befehle, die weiß ich nicht auswendig):
Extrastunden, man muss alle Scripts auswendig können :P

Zitat
Ein Gebäude als "Basis" benannt (Hier a)spawnen(Da dürfen aber keine Crepps rauskommen).
Spawnen? Platzieren oder setzen wären hier wohl besser :P
Also einfach in der Map hinsetzen.^^

Zitat
Einen Waypoint dorthin setzen, wo dann die  Basis ist und einen Pfad so, dass dieser durch den Eingang führt und dann um das Gebäude rum.(Als Hilfe würde ich das Gebäude platzieren und später wieder löschen)
Warum zum Teufel das Gebäude löschen?:D
Zitat
Die Creeps alle 5(20?30?) Sekunden Spawnen und mit Attackmove den Pfad folgen lassen.
Wenn du das so machst kommen einmal die Viecher und bleiben dann draußen stehen.^^
Und sie rennen unendlich lang hinter allen anderen hinterher ;)
Zitat
Zum Wiederaufbau:
Wenn das Leben von a=0 ist=>Ruine Spawnen(b)
Wenn Leben von b größer ist als 0 und 30(40?50?) Sekunden vergangen sind, b zerstören und a Spawnen.
Das passt, auch wenn ich einfach sagen würde:
***IF***
 'a' is finished dying
***THEN***
Spawn Unit named 'b' of Type 'was auch immer' at waypoint 'Waypointwieduihngenannth ast'
AND Set Timer 'rebuild' to expire in 32 seconds.

***IF***
Timer 'rebuild' is equal than 2
***THEN***
Spawn Unit 'a' of Type 'dein Gebäude' at waypoint 'Waypointwieduihngenannth ast'
AND Stop Timer 'rebuild'


***IF***
Unit 'b' has been destroyed
***THEN***
Stop Timer 'rebuild'



Damit es wirklich wie ingame wirkt bedarf es leider deutlich mehr Scriptingarbeit.

Ich mache das ganze Mal ohne Ruinen und nehme als Gebäude eine MordorTaverne und als Unit MordorCorsair.
Zudem lass ich sie gleich außerhalb des Gebäudes spawnen, da das andere nur ein kleiner Schönheitseffekt wäre, den ich hier Mal nicht beachte (würde außerdem nochmal deutlich mehr Arbeit machen.)


Ich sage Mal, dass 2 Korsaren patroillieren, für mehr ist das Prinzip das gleiche.

Als erstes setzt man eine Mordortaverne auf eine Map. Diese benenne ich "Creepbuilding".
Vor die Tür setze ich 2 Waypoints und benenne sie "Spawn1" und "Spawn2".
Zusätzlich setze ich in die Taverne 3 waypoints, die ich "Treasure1", "Treasure2" und "Treasure3" nenne.


Jetzt kommen die Scripts:

***IF***
Unit 'CorsairCreep1' has finished dying
***THEN***
Set timer 'ReviveCorsairCreep1' to expire random between 20 and 40 seconds. (Anmerkung: Es geht natürlich auch: Set timer 'Revivecorsaircreep1' in 20 seconds, aber ich mag das mit Random lieber :P )


***IF***
Unit 'CorsairCreep2' has finished dying
***THEN***
Set timer 'ReviveCorsairCreep2' to expire random between 20 and 40 seconds.


So, die beiden Scripts erledigen jetzt den Start für die Wiederbelebung, aber das wrüden sie nur ein einziges Mal machen. Man muss die Scripts nochmal öffnen (oder gleich am Anfang machen) und den Hacken vor "Deactivate upon success" wegmachen.
Nun weiter im Text.^^
Die Korsaren werden wiederbelebt:

***IF***
timer 'ReviveCorsairCreep2' is equal than 2 seconds
***THAN***
Stop timer 'ReviveCorsairCreep2'
AND Spawn Unit 'CorsairCreep2' of Type MordorCorsair at waypoint 'Spawn 2'
AND Unit 'CorsairCreep2' begins guarding at current location


***IF***
timer 'ReviveCorsairCreep1' is equal than 2 seconds
***THAN***
Stop timer 'ReviveCorsairCreep1'
AND Spawn Unit 'CorsairCreep1' of Type MordorCorsair at waypoint 'Spawn 1'
AND Unit 'CorsairCreep1' begins guarding at current location



Das bewirkt jetzt, dass die wiederbelebt (neu gespawnt) werden und sofort beginnen ihr Gebiet zu verteidigen - sie rennen also nicht unendlich lang hinterher.
Auch hier muss der Hacken vor "Deactivate upon success" weg.


Bald haben wir es geschafft, das war schon ein großer Teil.^^
Jetzt kommen noch 2 Dinge:

1. das erste spawnen.
Wie man oben sieht muss eine Einheit sterben, damit andere gespawnt werden.
Ich mache dann einfach immer ein Script, das lautet:

***IF***
True
***THEN***
Set timer 'Revivecorsaircreep1' in 3 seconds
AND Set timer 'Revivecorsaircreep2' in 3 seconds


Hier muss der Hacken bleiben, da dies nur einmal geschieht.

Zusätzlich muss noch die Belohnung für das zerstören einprogrammiert werden und das spawnen gestoppt werden.

***IF***
Unit 'Creepbuilding' is finished dying
***THEN***
Deactivate Script bla
AND Deactivate Script blabla
AND Deactivate Script bla2
AND Deactivate Script blabla2
AND Spawn Unit of Type Treasure at Waypoint 'Treasure1'
AND Spawn Unit of Type Treasure at Waypoint 'Treasure2'
AND Spawn Unit of Type Treasure at Waypoint 'Treasure3'



bla, blabla, bla2, blabla2 sind die 4 oberen scripts, die das wiederbeleben regeln, je nachdem wie du sie benannt hast.

Für jede neue Einheit kommen eben mehr Scripts dazu.^^

Wenn du willst, dass sie im Gebäude starten musst du sie in einem Spawnpunkt im Gebäude spawnen lassen, dann zuerst einen movebefehl aus dem gebäude raus machen, wenn sie dann draußen sind den Befehl geben, dass sie von einem bestimmten waypoint (Spawn1 etc.) aus das Gebiet bewachen sollen. (Guard from Waypoint)

Wenn du willst, dass sie laufen darfst du keinen Guardbefehl benutzen, sondern musst einen waypointpath machen, der in sich selbst endet, sodass sie unendlich lang drum herum rennen und dann den Befehl "Attackmove at waypointpath" benutzen.
Hier ist das Problem, dass sie Einheiten unendlich lang hinterher laufen, das heißt man muss noch ständig für jede Einheit den Abstand zum Gebäude berechnen lassen und wenn der Größer als ??? ist, dann gibt man ihr den Guardbefehl von der ORkhöhle aus (sodass sie zurückläuft) und setzt einen timer auf 5 sekudnen und gibt dann wieder einen attackmovebefehl um die orkhöhle rum.
Dadurch läuft der erst einmal zurück (und kann nicht weiter weg laufen), greift aber weiterhin Feinde an. Nach 5 Sekunden sollte er wieder nah genug sein und man macht den Attackmove wieder. Wenn er bei der Zeit immer noch nah am Rand steht und wieder raus rennt tritt das erste Script wieder in Kraft. (man muss natürlich immer Endlosscripts machen).

Zusätzlich werden sich manche fragen:
Warum sagt der Kerl:
IF Timer is equal than 2 THAN stop timer.

Kann man nicht einfach sagen: If timer has expired?

Antwort:
Nein :P
Wie das schon heißt: If timer HAS expired...
Also wenn der Timer einmal abgelaufen ist, dann ist es für die Scripts scheiß egal, ob der wieder zurückgesetzt wird, er gilt als abgelaufen, da kann er noch so weit zurückgesetzt werden.^^ Man muss ihn also vor dem ablaufen bremsen und wieder zurücksetzen.^^

Ich hoffe es liest sich jemand alles durch und ich konnte helfen :D















@ Beorn:
Nein, weil da kann man nicht drüber laufen, man muss eine unsichtbare Textur drunter setzen, aber dann kann niemand mehr unten drunter durch laufen ;)

MCM aka k10071995

  • Bezwinger der Toten
  • ****
  • Beiträge: 3.846
Re: Worldbuilder Fragen
« Antwort #271 am: 27. Feb 2009, 08:19 »
Na ja, der Meister kann es halt doch besser als ich. :D
Aber Warum sollte ich die Befehle auswendig kennen? Bringt doch gar nichts.

Und ich wusste gar nicht, dass man benannte Einheiten platzieren kann. Ist das ein extra Feld im WB?


Zitat
Warum zum Teufel das Gebäude löschen :D

Weil nach meiner Methode das Gebäude gespawnt wird und wenn du es doch platzierst, hast du 2 Gebäude, die übereinander stehen.

Na ja, die ganze Frage hat mir nochmal mehr Script-Verständniss gebracht. Von daher so oder so ein Gewinn. :P

Es kommt immer darauf an, etwas zu tun, was der Gegner nicht erwartet.


Palando der Blaue

  • Gast
Re: Worldbuilder Fragen
« Antwort #272 am: 27. Feb 2009, 09:28 »
boah...  :o
Danke, ich bin noch ein Anfänger im scrippten, kann gerade mal Verstärkung spawnen lassen und Kamerafahrten machen aber ich werds probieren  :)

Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #273 am: 27. Feb 2009, 09:46 »
@ k10071995:
Du setzt eine Einheit und schreibst bei "Name" irgendetwas rein.^^
Aber auch so wäre dein System etwas verbuggt.
Das hier so das System, wie es wirklich funktioniert (weiß ich, weil ich es selbst in Edain 3.1 auf manchen Maps benutzt habe *hust* ;) )

MCM aka k10071995

  • Bezwinger der Toten
  • ****
  • Beiträge: 3.846
Re: Worldbuilder Fragen
« Antwort #274 am: 27. Feb 2009, 09:49 »
@ k10071995:
Aber auch so wäre dein System etwas verbuggt.
Wieso verbuggt? :o
Es laufen halt immer mehr Leute raus und die Einheiten folgen unendlich lang.

Es kommt immer darauf an, etwas zu tun, was der Gegner nicht erwartet.


Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #275 am: 27. Feb 2009, 09:54 »
Zitat
Die Creeps alle 5(20?30?) Sekunden Spawnen und mit Attackmove den Pfad folgen lassen.
Entweder benutzt du heir ein Endlosscript, dann werden aber wirklich unendlich Creeps gespawnt, also laufen am Ende zigtausend da rum, oder du spawnst eben nur einmal die Dinger (also scriptest jeden Spawn einzeln), aber dann werden sie nicht wiederbelebt.
Das heißt die gestorbenen Einheiten werden nicht wiederbelebt ;)
Zudem wird bei dir das Gebäude nur einmal wieder aufgebaut, da du den Hacken vor "Deactivate upon success" da gelassen hast.^^
Damit die Einheiten wiederbelebt werden brauchst du meine Scripts oben.
Achja:
Sie würden auch Feinden unendlich lang hinterher laufen ;)
Hab ich aber alles oben schon Mal geschrieben.


Zum "Script auswendig können":
Mit der Zeit lernt man das... und wenn man sie auswendig kann geht scripten viel schneller, weil man sofort das richtige Script im Kopf hat und genau weiß, wo es ist :D

MCM aka k10071995

  • Bezwinger der Toten
  • ****
  • Beiträge: 3.846
Re: Worldbuilder Fragen
« Antwort #276 am: 27. Feb 2009, 09:55 »
Genau das habe ich doch gesagt. Es kommen unendlich Creeps und sie folgen unendlich lang.
Aber b2T, hilft alles nichts. xD

Es kommt immer darauf an, etwas zu tun, was der Gegner nicht erwartet.


Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #277 am: 27. Feb 2009, 09:58 »
Ist doch noch topic, es geht ums Mappen.^^

Ja, es kommen unendlich creeps => ist aber kein richtiges creep, weil da sollen nur eine bestimmte anzahl von creeps kommen :P
und sie folgen unendlich lang => ist auch bei keinem Creep so und zudem ist sowas sch....
Stell dir vor:
da laufen dann irgendwann 5 Trolle außen rum, du nimmst ein Batallion Mordororks, läufst vorbei und läufst in die feindlcihe Base. Dann lässt du die orks sterben und schon hat der Gegner ein riesiges Problem, wiel auf einmal 4 Trolle da stehen^^

Palando der Blaue

  • Gast
Re: Worldbuilder Fragen
« Antwort #278 am: 27. Feb 2009, 10:06 »
Gibs irgendwo ein Tut für sowas?  :D

Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #279 am: 27. Feb 2009, 10:24 »
Ich kann das oben wenn du willst Mal als Tutorial schreiben... dann kommen eben noch Bilder etc. hinzu :P

MCM aka k10071995

  • Bezwinger der Toten
  • ****
  • Beiträge: 3.846
Re: Worldbuilder Fragen
« Antwort #280 am: 27. Feb 2009, 12:06 »
Ich glaube nicht, das das was bringt, Ich würde eher ein Sammel-Tutorial machen, wo du dann bspw. noch beschreibst, wie man es machen kann, das ein Sch :)iff Einheiten ausläd.

Es kommt immer darauf an, etwas zu tun, was der Gegner nicht erwartet.


Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #281 am: 27. Feb 2009, 12:09 »
Naja, das Problem ist:
Ein Sammeltutorial wäre wohl bei meinen Kenntnissen über 100 DinA4Seiten lang :P
Darum würde ich wenn dann für bestimmte Fälle Tutorials schreiben.^^

MCM aka k10071995

  • Bezwinger der Toten
  • ****
  • Beiträge: 3.846
Re: Worldbuilder Fragen
« Antwort #282 am: 27. Feb 2009, 12:15 »
Du sollst ja nicht alles reinschreiben. Sondern eher Dinge, von denen man sich gut andere ableiten kann. :P

Es kommt immer darauf an, etwas zu tun, was der Gegner nicht erwartet.


Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Worldbuilder Fragen
« Antwort #283 am: 27. Feb 2009, 12:25 »
Auch das ist eine Endlosarbeit...
Wenn ich alles schreiben würde wo man Sachen ableiten kann und dann noch Beispiele, dann sitze ich in einem Jahr noch dran :P

Palando der Blaue

  • Gast
Re: Worldbuilder Fragen
« Antwort #284 am: 27. Feb 2009, 12:48 »
So ein Tut wäre super, denn deine Beschreibung is zwar gut, aber mit Bildern is alles besser verständlich