Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
14.04.2006, 14:34
Protector



Hiermit möchte ich euch mein aktuelles Projekt für Sven Co-op vorstellen. Diese Map basiert auf den TD-Maps von Blizzards WCIII: FT, bei denen man entlang eines vorgegebenen Weges Türme bauen muss um Viecher am vorbeilaufen zu hindern. Die Viecher kommen dabei in regelmäßigen Wellen, bei denen mit zunehmender Spieldauer die Stärke und Zahl der Viecher steigt. Für jedes getötete Viech bekommt man Gold, mit dem man anschließend neue Türme bauen oder alte Türme aufrüsten kann.
In meiner Map werden Xen-Viecher und X-Race-Viecher durch die Map rennen, die für mehrere Spieler aufgeteilt ist. Die Türme sind Barney (Upgrade: Otis), Grunt (Upgrade: HWGrunt), Assassin (Kein Upgrade, Spezialturm: Scharfschütze), Sentryturret (Kein Upgrade, Spezialturm: Dauerfeuer), Psychotower (Kein Upgrade, Spezialturm: Verlangsamung)
Die Steuerung des Menüs erfolgt dabei durch WASD, E und Space, da jeder Spieler in einer kleinen Kammer gefangen ist, die an den Wänden und an der Decke trigger_multiple besitzt. Dazu befindet sich vor dem Spieler ein func_button, um die Taste E mitzubelegen. Sobald der Spieler in ein trigger_multiple geht oder sich versucht per Maus oder Pfeiltasten zu drehen, wird er mittels trigger_teleport in korrektem Winkel in die Mitte des Raumes gebeamt. So wird vermieden, dass man nach einer 90°-Drehung per Vorwärtsbewegung die Funktion der S-Taste auslösen kann.
Die Türme können in dieser Map auf vorgegebenen "Towerpanels" gebaut werden, die mit W ausgewählt werden können. Dafür habe ich ein env_spritetrain genommen, das von Panel zu Panel gebeamt wird. Baut man nun einen Turm, wird ein trigger_teleport, in dem sich ein squadmaker des jeweiligen Turmtyps befindet, kurzzeitig aktiviert und so der Turm an die Position des env_spritetrain teleportiert.
Das Geld wird mittels eines "Rechenschiebers" verwaltet. Zwei func_pushables in der Größe 16³ befinden sich in getrennten länglichen Kammern. Diese Kammern sind in 12 Unterkammern geteilt, die 32 Units lang sind. In ihnen befinden sich trigger_multiple, die die jeweilige Geldsumme angeben. Die mittleren 10 Kammern stellen 0-9 dar, die äußeren Kammern "rechnen" Differenzen aus. Fährt z.B. das func_pushable für die Einerziffern unter Null, wird das func_pushable für die Zehnerziffern um einen reduziert. Sobald dieses func_pushable unter Null gerät, wird der Bau eines Turms verweigert und die beiden func_pushables auf ihre ursprüngliche Position gebeamt. Bei jedem Geldtransfer (ob Plus durch Töten bzw. neue Runden, oder Minus durch Turmbau) wird die Position der func_pushables durch ein trigger_setorigin gespeichert, bevor die func_pushables entsprechend der Geldsumme von speziellen func_push mit vorgegebener Geschwindigkeit bewegt werden. Wird z.B. 1 Gold abgezogen, wird für eine Sekunde ein func_push mit der Geschwindigkeit 32 in positiver Richtung aktiviert. Werden 5 Gold abgezogen, wird ein func_push mit Geschwindigkeit 160 in negativer Richtung aktiviert. Ab 10 Gold oder höher, werden func_push in der Zehnerkammer aktiviert (10 Gold = 32Units/s). Zahlen wie 15 oder 25 werden dann durch Kombinationen (20 + 5) gebildet.
Per E und S können ein Overview der Map und die Hilfe aktiviert werden.
So, nun genug geschwafelt, ich lasse Bilder sprechen. Ein Video zur Demonstration ist auch dabei.

Video

Danke fürs Lesen und C&C pls.

--

zum Seitenanfang zum Seitenende Profil || Suche
001
14.04.2006, 14:54
apoCalYpse



Das sieht nach richtig viel Arbeit aus, die du da reingesteckt hast. Habe leider kein Hl1 mehr ansonsten würde ich das gerne mal spielen. In WCIII macht das jedenfalls ne mege Spass.

--

http://www.talrasha.com/

zum Seitenanfang zum Seitenende Profil || Suche
002
14.04.2006, 15:41
Agamemnon-Hellmapper



*Die Kinnlade wieder aus dem Keller holt*
Okay. DAS ist eine Leistung, die kann man kaum in Worte fassen!
Als Fan von TDs UND SvenCoop kann ich nur sagen... Alle Achtung!

In einem Co-op Shooter eine Map zu bauen, die aus einem Echtzeitstrategiespiel kommt... Wow! Und ohne zusätzliches Coding! DoppelWow!

--

Es gibt 2 Möglichkeiten, eine Kristallkugel zu benutzen:
a) um damit Spekulationen über ein Problem eines Users zu machen und
b) um sie einem besonders unkooperativen User über den Schädel zu ziehen.
- bloggt jetzt auch selbst auf Sclavia.de

zum Seitenanfang zum Seitenende Profil || Suche
003
14.04.2006, 15:52
sgt_frosty



Alter Schwede , sehe das alles genauso - einfach genial.
Weiß nich obs sinnvoll wär , aber: könnte man das auch noch optisch anspruchsvoller gestalten?

--

(\_/)
(x_x)
(> < ) This is a dead bunny.

zum Seitenanfang zum Seitenende Profil || Suche
004
14.04.2006, 15:59
Protector



Habe ich vor. Das ist jetzt alles recht langweilig gemappt und ohne Licht kompiliert. Aber ich habe mir gedacht, dass es ja Blödsinn ist, erst alles schön aufzustylen um dann längere Kompilierzeiten zu haben und am Ende festzustellen, dass es eh nicht geht. Wenn das Teil technisch fertig ist, male ich es noch bunt an ;)

--

zum Seitenanfang zum Seitenende Profil || Suche
005
14.04.2006, 16:12
Z-Maker



Schließe mich dem von Agamemnon-Hellmapper voll und ganz an: Respekt!

--

http://www.portal-vital.de - Portal Vital

zum Seitenanfang zum Seitenende Profil || Suche
006
14.04.2006, 18:01
epidemic



schwer beeindruckend!

--

Der Optimist glaubt, dass wir in der Besten aller Welten leben.
Der Pessimist fürchtet, dass dies stimmt.

zum Seitenanfang zum Seitenende Profil || Suche
007
14.04.2006, 19:09
NoMaster



Warum soll man eigentlich noch WCIII zocken, wenns sowas geiles gibt?!
Damit sollte es 24/7 Server geben!!!

--

zum Seitenanfang zum Seitenende Profil || Suche
008
14.04.2006, 19:20
Consydar



Woohhhoooouu ;)
-nächste LAN organisier-

--

Computers never do what you want them to do; only what you tell them to do.

zum Seitenanfang zum Seitenende Profil || Suche
009
14.04.2006, 20:08
speziCola



weeee :D *TD fan bin*

--

spezi|Clan | QRT
HLDM-Server | HL-Stats | Status: Online

zum Seitenanfang zum Seitenende Profil || Suche
010
14.04.2006, 20:44
ScyTheMan
Moderator


Wow. Ich hätte nie gedacht, das so etwas möglich ist. Respekt für den wahnsinnigen Aufwand, den du dir da gemacht hast.

--

http://choerbaert.org
Ein Gespenst geht um im Netz - das Gespenst des Open Source
csndr

zum Seitenanfang zum Seitenende Profil || Suche
011
15.04.2006, 12:41
apoCalYpse



Es gibt auch leute die bauen, Risiko für DOD nach:

http://xsgamedesign.com/gallery/supa/dod_risk/dod_risk_room.jpg

--

http://www.talrasha.com/


Dieser Beitrag wurde am 15.04.2006 um 12:41 von apoCalYpse bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
012
15.04.2006, 12:57
Fartan



Sehr geil!
Ich hab aber ne Frage:
Kann man die Türme nur auf festgesetzte Felder bauen? So siehts auf dem Video jedenfalls aus. Weil dann könnte man ja den ganzen Boden damit vollpflastern, dann
ists net so langweilig!

--

zum Seitenanfang zum Seitenende Profil || Suche
013
15.04.2006, 13:52
sw_a_t



Zitat:
Fartan postete
Kann man die Türme nur auf festgesetzte Felder bauen?
Bei solchen Fragen hilft lesen oft weiter.

Zitat:
Protector postete
Die Türme können in dieser Map auf vorgegebenen "Towerpanels" gebaut werden

--

sw_a_t heißt jetzt CPoly !

Medieval Battles - Para Bella Crudelia

zum Seitenanfang zum Seitenende Profil || Suche
014
15.04.2006, 13:58
Agamemnon-Hellmapper



Das freie Platzieren der Türme würde nicht ohne Coding gehen... Es sei denn man versucht die Map mal für NaSe, da ist passender Code ja schon drin.

Edit: Aber wahrscheinlich hängts dann wieder woanders, weil NaSe ja schon spezieller gecodet ist als SvenCoop.

--

Es gibt 2 Möglichkeiten, eine Kristallkugel zu benutzen:
a) um damit Spekulationen über ein Problem eines Users zu machen und
b) um sie einem besonders unkooperativen User über den Schädel zu ziehen.
- bloggt jetzt auch selbst auf Sclavia.de

zum Seitenanfang zum Seitenende Profil || Suche
015
15.04.2006, 14:22
Protector



Es würde gehen, allerdings wäre es mir dann nicht ohne erheblichen Aufwand möglich zu verhindern, mehrere Türme auf eine Stelle zu bauen. Außerdem würde die Entitiezahl durch eine freie Turmplatzierung dramatisch steigen, da man den spritetrain dann zweidimensional steuern müsste, also eine zweite Tastenbelegung erforderlich wäre. Zusätzlich müssten über die Baufläche massig path_corner verteilt werden, die alle, je nach Tastendruck, per trigger_changetarget zu je anderen cornern verweisen würden. Dann würde das ganze sicherlich zu einer Singleplayermap mutieren ;)
Hm.. vielleicht mache ich ja mal mit SoH eine Singleplayer-TD-Map mit etwas ausgefeilterer Technik. Aber erstmal das hier fertig bekommen.

--

zum Seitenanfang zum Seitenende Profil || Suche
016
15.04.2006, 23:47
Protector



Zitat:
Das Forum postete
Sie können diesen Post nicht mehr editieren. (Zeitlimit überschritten)
Ich habe das im ersten Post erwähnte Geldsystem nun verworfen. Leider verhalten sich sowohl func_pushables als auch diverse Kleinviecher nicht so wie ich das gerne hätte. Soll heißen, dass ein pushable bzw. eine Ratte bei 32 Units/Geldeinheit mit 320Units/s bewegt werden muss, um nicht mehrere Sekunden Verzögerung in der Geldrechnung zu haben und so in Verzug beim Turmbauen zu geraten. Kleinere Abstände führen dazu, dass mehrere Ziffern gleichzeitig aktiviert werden, was zu Fehldarstellungen führt bzw. die Anzeige ganz ausfallen lässt. Bei den hohen Geschwindigkeiten flutschen die Dinger leider viel zu weit, auch wenn ich nach 0.1 Sekunden ein func_wall_toggle über der ganzen Area aktiviere. Die Frictioneinstellung bei den func_pushable habe ich auch schon durchgetestet und ein Wandsystem ist ebenfalls gescheitert.
Daher arbeite ich an einem neuen System, dass mit 2 func_trains arbeitet. Wieder steht einer für die Einerziffern, der andere für die Zehnerziffern. Würde Geld entweder nur abgezogen, oder nur addiert werden, wäre dies das perfekte System, da ich dann nur pro Geldeinheit den Einerzug einmal triggern muss. Leider muss das System in beide Richtungen funktionieren, was ich dadurch löse, dass ich je nachdem ob addiert oder subtrahiert wird, 20 trigger_changetargets auslöse, die die path_corner das jeweils entgegen gelegene path_corner ansprechen lassen. Da ich das ganze für beide Richtungen brauche, steigt die Zahl auf 40 trigger_changetargets, also 40 Entities die ich dem Geldsystem hinzufügen muss. Da ich bereits gestern längst 256 Entities überschritten und somit meine Hoffnung auf eine 4-Spieler-Map zerschlagen habe, scheint auch eine 3-Spieler-Map aussichtslos.
Sobald das Geldsystem fertig ist, melde ich mich wieder mit einem Demonstrationsvideo.

--

zum Seitenanfang zum Seitenende Profil || Suche
017
18.04.2006, 03:39
Protector



Das Geldsystem ist nun fertig. Ich habe mich schlussendlich für ein komplexes aber intelligentes System entschieden, was mir einen schlanken Additions-Substraktions-Rechner zu bauen ermöglichte. Das ganze System besteht aus 258 Entities und beherrscht den Zahlenraum von 0 - 999.
Davon sind 132 Entities die reine Recheneinheit, 49 multi_manager, 74 trigger_changetarget und 9 trigger_relay addieren und subtrahieren die Zahlen 1, 5, 7, 10, 20, 30 und 40 in beliebigen Kombinationen.
Dazu kommen 60 env_render und 30 func_wall_toggle, die die aktuellen Zahlen grafisch darstellen können. Um Verwirrungen während des Rechenprozesses (ca 0.1-1 Sekunden, je nachdem ob ein Turm gebaut werden kann oder nicht) zu vermeiden, werden die Zahlen für die Zeit des Baus mit einem func_wall_toggle überdeckt, auf dem "Checking..." steht. So kommen wir auf 31 func_wall_toggle, also 91 Entities für das grafische System.
Das kleinste, aber nicht minder wichtige System ist für den Turmbau zuständig. Es überprüft welcher Turm gewählt wurde, selektiert so den entsprechenden Betrag und verhindert bei Unterschreitung der Null den Bau, um anschließend die Baukosten zurückzuaddieren. Es besteht aus 35 Entities: 6 multi_manager, 18 trigger_changetarget, 7 trigger_relay und 4 squadmaker als Baueinheiten.

Eigentlich wollte ich dem Ganzen ein kleines Video befügen, jedoch zwingt Fraps Half-Life so in die Knie, dass Fehler in den Rechnungen entstehen (minimale Zeitverzögerungen von >0.02s verfälschen Rechnungen um je eine Ziffer, was zu spontanen Bereicherungen um 1, 10 oder 100 Gold führen kann.) Deswegen gebe ich eine kleine Beta als Download bereit, sie enthält zu Demonstrationszwecken eine erste Welle mit monster_headcrabs.

Die Map kann hier heruntergeladen werden. Zu Lern- und Verständniszwecken sind neben der bsp (Fastcompile ohne rad) sowohl rmf als auch map enthalten. (Natürlich auch die wad)

Für diejenigen die keine Zeit, Lust oder Möglichkeit haben, die Map zu laden und zu testen gibt es noch ein paar Screenshots:

MfG und so.

//E: Das Schild mit "WARNING!"foo wird natürlich ersetzt.

--


Dieser Beitrag wurde am 18.04.2006 um 03:41 von Protector bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
018
18.04.2006, 08:10
Grey



mal kurz getestet - das interface würd ich noch etwas überarbeiten, z.B. kosten ganz oben angeben und am besten farbig unterlegen.

und kann es sein, dass die AI nicht so ganz mitspielt ?
hatte zwo grunt tower gebaut, aber der hintere hat überhaupt nicht geschossen und der vordere zwei mal oder so, was die headcraps ja nun nicht sonderlich beeindruckt hat :/

aber sonst geil - hat sogar irgendwie n suchtfaktor :D

--

zum Seitenanfang zum Seitenende Profil || Suche
019
18.04.2006, 08:14
Agamemnon-Hellmapper



Nenn mir ne Towerdefence ohne Suchtfaktor!

Wirklich Nice gemacht, soweit. AI wurde schon genannt.

--

Es gibt 2 Möglichkeiten, eine Kristallkugel zu benutzen:
a) um damit Spekulationen über ein Problem eines Users zu machen und
b) um sie einem besonders unkooperativen User über den Schädel zu ziehen.
- bloggt jetzt auch selbst auf Sclavia.de

zum Seitenanfang zum Seitenende Profil || Suche
020
18.04.2006, 08:22
Grey



Zitat:
Agamemnon-Hellmapper postete
Nenn mir ne Towerdefence ohne Suchtfaktor!

ich bin ganz und gar kein fan von warcraft ... eher gegenteilig :)

--

zum Seitenanfang zum Seitenende Profil || Suche
021
18.04.2006, 09:17
Menthos



dickes lob für soviel fleiss und entities-bastelei!!!!!

hab selbst mal versuch diese map von starcraft wo in der mitte viecher herlaufen und man rechts und links vom weg basen hat in sc zu mappen. einigermassen spektakulär versagt, desegen weiss ich viel arbeit von der idee die eigentlch funktionieren müsste bis zur fertigen map nötig ist....

*daumen hoch*

--

The Mapper formerly known as MEnTHOS

zum Seitenanfang zum Seitenende Profil || Suche
022
18.04.2006, 12:38
Protector



An der KI kann ich leider nichts ändern, das ist nunmal rein codeseitig. Baut lieber einen Barney am Engpass, die Grunts können nichts, deswegen sind die so billig ;)

//E: Kleines Update:

--


Dieser Beitrag wurde am 18.04.2006 um 13:34 von Protector bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
023
18.04.2006, 17:51
Skeleton



werden das noch mehr felder auf denen man bauen kann?
22 sind n bischen wenig , und da kann man die gegner ja auch nur am anfang aufhalten...

E:
man bekommt ja gar kein geld dazu wenn man die gegner killt ^^

--

keine referal links bei thewall.de --dp


Dieser Beitrag wurde am 18.04.2006 um 17:51 von mapper007 bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
024
18.04.2006, 18:11
Protector



Zitat:
mapper007 postete
werden das noch mehr felder auf denen man bauen kann?
22 sind n bischen wenig , und da kann man die gegner ja auch nur am anfang aufhalten...
Da hat aber jemand das Prinzip von TD nicht verstanden, es kommt eben auf Qualität an, nicht auf Quantität. Ein paar HWGrunts und ein Spezialtower sollten eigentlich recht dicke Wellen aufhalten können.

Zitat:
man bekommt ja gar kein geld dazu wenn man die gegner killt ^^
Gut erkannt ;)

--

zum Seitenanfang zum Seitenende Profil || Suche