Würfel und Buttons

Dieses Tutorial handelt von den Würfeln namens „Beschwerter Speicherkubus“ und den großen Buttons (besser bekannt als „1500-MegaWatt-Schwerlast-Superkollisions-Superknopf“), welche von erstgenannten beschwert werden wollten. Ihr werdet erfahren, wie die Würfel-Spender funktionieren, und wie Buttons gebaut werden. Viel Spaß!

kubus.jpg

Ein „beschwerter Speicherkubus“

button.jpg

„1500-MegaWatt-Schwerlast-Superkollisions-Superknopf“

dispenser.jpg

Das Bild zeigt einen Würfel-Spender.

Der Würfel-Spender

Beim Würfelspender erhält der Spieler einen Würfel.

Mein Würfel-Spender ist so aufgebaut, dass er theoretisch unendlich viele Würfel ausspuckt. Der Spieler erhält einen Würfel, indem er in einen Trigger tritt. Solange ein Würfel „im Spiel ist“, ist dieser Trigger jedoch deaktiviert. Erst wenn der Würfel verschwindet (Output: OnBreak), wenn er beispielsweise bei von einem Kraftfeld dematerialisiert wurde, kann der Spieler beim Spender einen neuen erhalten.

Was wir brauchen:

Bevor wir mit dem eigentlichen Spender beginnen, brauchen wir an dem Punkt wo er später sein soll ein Loch mit einem angrenzenden kleinen Raum. Das Loch sollte 128×128 Units groß sein (Innenmaße!), der angrenzende Raum ca. 256 Units hoch.

Danach nehmt ihr das Clipping-Tool, und setzt 128 Units von oben einen Schnitt dirch die Seitenwände. Jetzt gehts ans Texturieren: Der obere Teil der Seitenwände (die 128 Units) bekommt die Textur metal/metalwall_bts_006b_gradient. Die „Decke“ des kleinen Raums lights/light_orange001 und der Rest der Aussparung metal/metalwall_bts_006a.

Jetzt passen wir das Loch an das spätere Model an. Wir brauchen eine kreisrunde Öffnung mir dem Durchmesser d=84 Units. Zu diesem Zweck erstellen wir mit dem Arch-Tool einen Bogen mit den Maßen 256×256 und folgenden Einstellungen:

arch.jpg

Danach zentrieren wir das neue Objekt in unserer jetzigen Öffnung. Wir nehmen wieder das Clipping-Tool und schneiden den Bogen entlang des quadratischen Loches ab, sodass er perfekt in die Öffnung passt. Wir passen noch die Höhe und die Texturen an und das ganze sollte ungefähr so aussehen:

arch2.jpg

Nun kommen wir zum sichtbaren Teil des „Würfel-Spenders“. Wir brauchen zwei prop_dynamic: Eines mit dem World Model models/props/box_dropper.mdl, dies ist die Röhre des Spenders, hier sind keine weiteren Einstellungen vorzunehmen. Das zweite prop_dynamic hat das World Model models/props/box_dropper_cover.mdl und braucht auch einen Namen. Ich nenne meines “box_station“. Beide Bauteile müssen unter der Öffnung positioniert werden, sodass es so aussieht:

dropper.jpg

Jetzt erstellen wir das Herzstück des Spenders, an dem die Würfel gespawnt werden. Hier starten wir wieder mit einem prop_physics, diesmal mit dem Model models/props/metal_box.mdl. Hier müssen wir auch einen Namen eingeben. Meiner heißt ganz schlicht “box“.
Wir platzieren den Würfel möglichst weit oben in unserer Aussparung und achten darauf, dass es Zentral über dem Loch positioniert ist.

Jetzt erstellen wir ein point_template. Hier nehmen wir folgende Einstellungen vor:

  • Name - Ich nenne meines “box_template“.
  • Template 1 - Box

Das Entity plazieren wir idealerweise direkt über unserem Würfel.

Jetzt fehlt noch der env_entity_maker. An diesem müssen zwei Werte geändert werden:

  • Name - Bei mir: “box_spawner
  • point_template to spawn - box_template

Dieses Objekt platzieren wir über unserem point_template.

Für die Optik positionieren wir unter dem Würfel noch ein light und geben bei „Brightness“ die Werte 236 135 74 100 an.

Als nächstes erstellen wir einen Brush mit der toolstrigger Textur, der die beiden prop_dynamic umschließt, und bis zur Abdeckung der box_station reicht. Diesen machen wir zu einem trigger_multiple. Das Ganze sollte dann in etwa so aussehen:

trigger.jpg

Zuletzt erstellen wir noch einmal einen Brush mit der toolstrigger Textur und machen ihn zu einem trigger_multiple. Dies ist der Trigger den der Spieler betreten muss, um einen neuen Würfel zu erhalten. Platziert ihn also irgendwo, wo der Spieler ihn auch erreichen kann. Wir geben ihm einen Namen, ich nenne meinen “box_trigger“.

Nützlich wäre auch noch ein logic_relay, damit schon beim starten der Map ein Würfel im Spender liegt. Setzt es irgendwo in die Map.

Nun müssen noch einige Outputs gesetzt werden:

Bei dem Trigger um die prop_dynamics:
OnEndTouch → box_station → SetAnimation → close
OnEndTouch → box_maker → ForceSpawn

Bei der „Box“:
OnBreak → box_trigger → enable

Bei dem „box_trigger“:
OnStartTouch → box_station → SetAnimation → open
OnStartTouch → !self → disable

Bei dem logic_relay:
OnSpawn → box_maker → ForceSpawn

Der Button

Der Button wird meistens dazu verwendet, dass der Spieler durch dortiges Ablegen eines Würfels beispielsweise eine Türe öffnet.

Was wir brauchen:

Hier beginnen wir mit einem prop_dynamic. Wir positionieren es dort, wo später der Button sein soll. Das Model was wir brauchen ist models/props/button_base_reference.mdl. Mehr Einstellungen sind hier nicht zu tätigen.

Jetzt setzen wir noch ein prop_dynamic, dieses mal mit dem Model models/props/button_top_reference.mdl. Diesen platzieren wir zentriert über dem ersten prop so, dass die „Füße“ des neuen Models einen Unit über dem Boden schweben. Außerdem geben wir bei Parent noch “button_door“ an.

Als nächstes erstellen wir einen Zylinder mit den Maßen 50x50x9 Units und belegen ihn mit der toolsnodraw Textur. Diesen platzieren wir auch zentriert, aber so, dass das untere Face auf gleicher Ebene mit dem Boden liegt. Wir machen den Zylinder zu einer func_door, und nehmen folgende Einstellungen vor:

  • Name - In meinem Fall “button_door
  • Speed - 25
  • Delay before reset - -1

Die Move Direction“ (Pitch Yaw Roll) stellen wir auf „Down“. Außerdem achten wir darauf, dass bei den Flags „Door Silent“ aktiviert ist!

Jetzt erstellen wir noch einen Zylinder, dieses mal mit den Maßen 64x64x15 Units und mit der Textur toolstrigger. Diesen positionieren wir genau wie die Zylinder zuvor, sodass er einen Unit über den Button hinausragt. Wir machen den Brush zu einem trigger_multiple.

An die gleiche Position setzen wir noch ein light mit der Brightness 251 159 57 30.

Zuletzt erstellen wir noch zwei ambient_generic, die wir in unmittelbarer Nähe zum Button platzieren. Einem geben wir den Namenbutton_down“ und den Sound Name Portal.button_down, dem anderen Name: “button_up“ und Sound Name: Portal.button_up.

Das Ganze sollte ungefähr so aussehen:

button_trigger.jpg

Jetzt fehlen nur noch einige Outputs beim Trigger-Zylinder:

outputs.jpg

Hier würde natürlich auch noch ein Output gesetzt, der beispielsweise eine Türe öffnet. Dieser würde beispielsweise so aussehen:
OnStartTouch → door_01 → open
OnEndTouch → door_01 → close

Die Verwendung aller Dokumente einschließlich der Abbildungen ausschließlich zu nichtkommerziellen Zwecken. Verbreitung des Dokuments auf Speichermedien, (insbesondere auf CD-ROMs als Beilage zu Zeitschriften und Magazinen oder sog. "Mission-Packs" etc.) ist untersagt.
 
portal/tutorials/box_buttons.txt · Zuletzt geändert: 2011/05/25 16:07 von Adrian_Broher