Tutorial: Aufwecken einer AI aus der Bewusstlosigkeit

  • Tutorial: Wie weckt man eine AI aus der Bewusstlosigkeit auf?


    Auf vielfachen Wunsch hier eine kurze Anleitung, wie man eine AI mit Hilfe eines Gegenstandes wieder aus der "Bewusstlosigkeit" erwecken kann.


    Gleich vorweg, bevor sich jemand nun falsche Hoffnungen macht: dies funktioniert mit einer festgelegten AI genau ein Mal. Die AI muss schon zu Beginn der Mission bewusstlos sein und wacht erst im Verlauf der Mission auf, sobald man sie mit einem speziell präparierten Gegenstand benutzt.


    Was man braucht:

    • einen Blueroom
    • ein Fläschchen
    • zwei gleichaussehende AIs
    • zwei TeleportTraps
    • einen Button
    • eine Custom Stim



    Und so geht's:
    Als erstes erstellt man die Custom Stim. Dies erfordert das Anlegen einer eigenen Gamesys: die noch unveränderte Gamesys via File -> Save Gamesys... abspeichern und dabei einen Dateinamen eingeben. Für dieses Tuto sei dieser mal smellingsalt.gam. Als nächstes set_gamesys smellingsalt.gam unten rechts in die Konsole eingeben. Anschließend auch die Mission abspeichern via File -> Save Mission..., der Dateinamen sei für dieses Tutorial smellingsalt.mis. Nun kann man mit der Custom Stim fortfahren: Über Editor -> Object Hierarchy -> Show Tree wechselt man auf Act/React Stimuli und klickt auf Add und gibt dort SmellingSaltStim ein. Diese gerade erstellte Stim kann erst benutzt werden, nachdem Dromed neu gestartet wurde. Also die Gamesys erneut abspeichern, Dromed schließen, neu starten und smellingsalt.mis wieder laden.


    Als nächstes wird der Blueroom erstellt und eine der beiden AIs (sie sei hier mit Alice bezeichnet) sowie eine der TeleportTraps (genannt TeleportTrap b) darin platziert. Die andere AI (ihr Name sei Bob) platziert man irgendwo an einer erreichbaren Stelle in der Mission und gibt ihr die Metaproperty M-PosedCorpse (Metaproperty -> AI_Behaviors -> AI_B_Gen -> M-PosedCorpse). An die gleiche Stelle wo Bob platziert ist, platziert man auch die andere Teleporttrap (a). Als nächstes verlinkt man nun die TeleportTraps mit den beiden AIs. Sie sind so zu verlinken, dass Bob in den Blueroom teleportiert wird und Alice in die Mission. Daher verlinke man Teleporttrap a per ControlDevice-Link mit Alice und TeleportTrap b ebenfalls per ControlDevice-Link mit Bob. Nun erstellt man den Button (-448) und verlinkt diesen ebenfalls via ControlDevice-Links mit beiden TeleportTraps:


    [Blockierte Grafik: http://board.ttlg.de/attachment.php?attachmentid=3927&thumbnail=1]


    Zum Testen dieser Installation kann man den Button zwischenzeitlich in der Nähe von Bob platzieren. Drückt man dann darauf, sollte Bob in den Blueroom verschwinden und Alice an seiner Stelle auftauchen. Funktioniert das alles zufriedenstellend wird der Button in den Blueroom verschoben.


    Soweit dazu. Was jetzt noch fehlt ist der Auslöser für den Button. Zunächst bereitet man Bob folgendermaßen dafür vor:
    In Bobs Properties klickt man auf Add -> EngineFeatures -> FrobInfo und stellt folgendes ein:


    World Action: Tool Cursor
    Inv Action: None
    Tool Action: None


    Hier ist nun ein guter Zeitpunkt die Mission nochmal abzuspeichern, da Dromed in dem Bereich, wo man jetzt rein muss, bei einem Bedienungsfehler abstürzt. Ist das erledigt, schreibt man sich nun die ObjektID-Nummern von Bob und dem Button auf, geht anschließen erneut in die Properties von Bob und klickt auf Add -> Act/React -> Receptrons -> Add:

    Object: die ObjektID-Nummer von Bob
    Stimulus: SmellingSaltStim
    Min Intensity: 1
    No Min: kein Häkchen
    No Max: Häkchen
    Effect: Frob Object
    Target Object: die ObjektID-Nummer des Buttons


    Damit ist Bob fertig präpariert und die Mission sollte nochmal gespeichert werden. Fehlt noch das Fläschchen. Für dieses Tutorial tut es eine einfache Instanz von Potions (-2546). In den Properties des Fläschchen stellt man nun folgendes ein: Add -> Act/React -> Sources -> Add:


    Stimulus: SmellingSaltStim
    Object: ObjektID-Nummer der Potion
    Propagator: Contact
    Intensity: 1
    Edit-Shape->ContactType: Frob Inv -> World


    Erneut in den Properties des Fläschchens: Add -> Engine Features -> FrobInfo:


    World Action: Move
    Inv Action: None
    Tool Action: Default, Deselect


    Wer möchte kann auch dem Fläschchen einen passenden Bezeichner geben, z.B.: Add -> Inventory -> Object Name: name_SmellingSalt: "Riechsalz"


    So. Alles noch einmal speichern und damit sollte es funktionieren:


    Wenn man mit dem Riechsalzfläschchen den bewusstlosen Bob berührt, wird dieser durch die wache Alice ersetzt, indem Bob zum Teleporter b und Alice zum Teleporter a transportiert wird.


    Eine Demomission zu der von diesem Tutorial beschriebenen Vorgehensweise ist von hier verfügbar:


    Fragen, Anregungen, Bugreports? Nur raus damit!