User Tag List

Ergebnis 1 bis 1 von 1

Thema: Laser (Thermal Discouragement Beam)

  1. #1
    Super-Duper-Moderator Avatar von Ricetlin
    Registriert seit
    18.06.2010
    Beiträge
    2.694
    Renommee-Modifikator
    25

    Laser (Thermal Discouragement Beam)

    Name:  laser.gif
Hits: 183
Größe:  67,5 KB

    Und weiter gehts.
    In diesem Tutorial zeige ich euch wie ihr die schicken Laser nachbauen und verwenden könnt.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	tutorial_laser0000.jpg 
Hits:	61 
Größe:	88,8 KB 
ID:	1605

    Ich setze wie üblich vorraus das ihr bereits eine Testmap, Grunkenntnisse mit dem Hammer Editor und dem Input/Output-System besitzt.

    Als erstes brauchen wir den Lasergenerator.
    Diesen erstellen wir mittels dem Point-Entity "env_portal_laser".
    Die Eigenschaften sind folgende:
    • scalevalue = Keine Ahnung, wer es weiß kann unten bescheid geben, ich vermute es geht um die Dicke des Laserstrahls.
    • Parent = Der Generator folgt einem anderen Entity
    • Name = Der Name des Generators damit wir ihr später per input/Output ansprechen können
    • Entity Scripts = Name des Scripts welches nach dem Spawn aufgerufen wird. Mittels Scripts lassen sich weitaus komplexere Dinge zusammenbauen, auch bieten die Scripts eine Schnittstelle von Map-Editor zu gecodeten Spiel-Elementen.
    • Script think function = Name der Funktion des auserwählten Scripts welche automatisch aufgerufen wird
    • Pitch yaw roll = Die Postitionsangaben unseres Entities anhand von Achsen
    • Render in fast Reflections = Bewirkt das diese Entität schnelle Wasserrefflektionen ausgibt (z.b. wenn ein Wassermatieral den Parameter $reflectonlymarkedentities besitzt)
    • Laser model = Das Model des Generators, zurzeit gibt es nur diesen einen
    • Start off? = Ob der Laser bereits an ist oder später angeschaltet wird
    • Deal lethal damage = Hier könnt ihr die Schadenshöhe einstellen zwischen niedrig (Non-lethal) und "eine Berührung gleich tot" (lethal)
    • Should auto aim = Ob der Laser automatisch den Empfänger sucht (auch hierrüber konnte ich nur spekulieren, wäre nett wenn jemand der es weiß bescheid geben kann)
    • Skin-Type = Hier könnt ihr zwischen den Skins sauber (clean) und verrostet (rusted) wechseln


    Den Generator geben wir einen Namen zb. "env_portal_laser_generator01" damit wir ihn später an und auschalten können.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	laser01.jpg 
Hits:	58 
Größe:	105,2 KB 
ID:	1604

    Ihr könnt an der Spitze ein rotes Light positionieren, dies verschafft zusätzliche Atmosphäre da der Laserbegin stark leuchtet und mit dem Light wird dies deutlich gemacht (solltet ihr euren Laser an und ausmachen wollen müsst ihr dies natürlich auch mit dem Light machen).
    Hier sind die Werte die ich dafür benutze:
    Name: light_laser01
    Brightness: 255 106 106 20

    Nun kommen wir zum Empfänger des Lasers, also dem Teil wo der Laserstrahl reingeleitet werden muss.
    Dazu erstellen wir wieder ein Point-Entity vom Typ "prop_laser_catcher", platzieren ihn so wie wir ihn haben wollen und sind damit dann auch fertig.
    Natürlich müssen wir dem Catcher auch noch Outputs geben wenn irgendwas passieren soll, dies werd ich aber jetzt nicht aufgreifen.
    Ich setze voraus das ihr wisst was ihr damit machen wollt, aber ich zeige euch meine Outputs.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	laser02.jpg 
Hits:	66 
Größe:	106,4 KB 
ID:	1599

    Auch wieder optional ist hier ein Light an der Spitze vom Catcher, bei mir ist die Brightness auf "196 234 255 2" eingestellt und simuliert ein zartes grau-blaues Leuchten.

    Jetzt fehlt uns noch der Kubus der uns es ermöglicht die Laserstrahlen umzulenken.
    Wie auch bei den normalen Würfeln müsst ihr euch hier fragen: "Ist es möglich den Kubus durch irgendeine Art zu zerstören oder zu verlieren?"

    Ja-Fall: Dafür brauchen wir einen Box-Dropper.
    Problem hierbei ist das die vorgegebene Instanz leider nicht zwischen verschiedenen Kubus-Typen wechseln lässt.
    Soll heissen wir müssen die Instanz manipulieren und in einer seperaten Version abspeichern.

    Ist aber auch halb so wild, dafür mach ich ja das Tutorial.
    Zuerst erstellt ihr euch ein neues Point-Entity vom Typ "func_instance".
    Bei VMF Filename tragen wir "instances/gameplay/cube_dropper_multiple_normal.vmf" ein, bzw. suchen diese.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	laser03.jpg 
Hits:	53 
Größe:	104,2 KB 
ID:	1603

    Sobald das getan ist klickt ihr auf Apply schliesst aber die Properties noch nicht.
    Im Propertie-Fenster klickt ihr nun unten links auf "Edit Instance" und die VMF worin sich die Instanz befindet wird geöffnet.

    Dort sucht ihr nun nach dem Kubus und öffnet von diesem die Properties.
    Stellt nun sowohl bei Skin (OLD) und als auch bei Cube Type "Reflective" ein.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	laser04.jpg 
Hits:	55 
Größe:	101,0 KB 
ID:	1601

    Das wars auch schon, jetzt geht ihr im Hammer auf File -> Save as... und speichert die VMF im selben Ordner wie die Original-Instanz unter den Namen "cube_dropper_reflective.vmf" ab und schliesst die Instanz.
    Zurück in eurer Testkammer geht ihr nochmal auf das eben erstellte func_instance mit dem Box-Dropper und stellt bei VMF Filenane nun "instances/gameplay/cube_dropper_reflective.vmf" ein.
    Fertig ist unser Box-Dropper welcher die Spiegelnden Würfel erstellt.
    Diesen müsst ihr nur noch triggern (wie das geht steht in diesem Tutorial).

    Klicke auf die Grafik für eine größere Ansicht 

Name:	laser05.jpg 
Hits:	54 
Größe:	106,3 KB 
ID:	1600

    Nein-Fall:
    Die einfache Variante benötigt nur ein Point-Entity vom Typ "prop_weigthed_cube" bei dem ihr in den Properties sowohl bei Skin (OLD) und als auch bei Cube Type "Reflective" einstellt, im Hammer wird trotzdem nur der Standart-Kubus angezeigt.

    Falls ihr gerne ein Rätsel einrichten möchtet wo der Spieler den Laser durch mehrere, nennen wir sie Relays leiten muss, erstellt ihr auch wieder ganz simpel ein Point-Entity diesmal vom Typ "prop_laser_relay".
    Dies platziert ihr passend und könnt ihnen Outputs geben, zb. an einen math_counter um sicherzugehen das der Spieler alle Relays mit dem Laser treffen muss bevor es weitergeht.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	laser06.jpg 
Hits:	60 
Größe:	104,2 KB 
ID:	1602

    Relays habe ich aus platzgründen aber aus der Beispielmap rausgelassen zumal ihr das nach diesem Tutorial jetzt auch ohne weitere Hilfe hinbekommen müsstet, wenn nicht, fragt.

    Und damit habt ihr auch dieses Tutorial nun erfolgreich beendet.
    Viel spaß beim zerbrutzeln und zielschiessen, sollten Fragen oder Vorschläge aufkommen zögert nicht sie zu posten.

    Die VMF und spielbare BSP könnt ihr >>HIER<< herunterladen (zu groß für Anhang)

    Mfg
    Raistlin

    Dieses Tutorial und dessen Medien sind geistiges Eigentum von Rick Erbau und wurden für mappingbase.de angefertigt.
    Weiterverbreitung ohne audrückliche Einverständnis durch den Author oder den Administratoren von mappingbase.de ist nicht gestattet.
    Das speichern des Inhalts für persönlichen Gebrauch ist gestattet.

    Rick Erbau, 2011
    Geändert von Dmx6 (15.05.2011 um 09:49:42 Uhr) Grund: Schreibrechtfehler wie "Start of?" behoben

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
[email protected]