Benutzer-Werkzeuge

Webseiten-Werkzeuge


Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
Nächste Überarbeitung Beide Seiten, nächste Überarbeitung
quickstart:spacer:mobsplatzieren:ocmobswitch [2016/02/08 00:34]
85.180.75.135 angelegt
quickstart:spacer:mobsplatzieren:ocmobswitch [2016/02/08 13:56]
85.180.75.135 [2. Switch mit FKW beschiessen]
Zeile 1: Zeile 1:
  
 ====== oCMobSwitch ====== ====== oCMobSwitch ======
 +
 +
 +
 +.............................................................{{:​spacer:​omega7497construction.gif|}}
 +
  
   * Vorkenntnisse und das Verstehen des Einbaus eines Standard-Mobs (oCMobInter) wären von Vorteil.   * Vorkenntnisse und das Verstehen des Einbaus eines Standard-Mobs (oCMobInter) wären von Vorteil.
   * Vorkenntnisse:​ [[quickstart:​spacer:​mobsplatzieren|]]   * Vorkenntnisse:​ [[quickstart:​spacer:​mobsplatzieren|]]
 +
 +1.0.0 - Hier werden Besonderheiten angesprochen,​ die lediglich bei Mobs in bestimmten Klassen zu beachten sind.
  
 **Ein oCMobSwitch**,​ kann entweder als MobClass - oCMobSwitch oder als oCMobInter eigesetzt werden. Für die Funktion des Schalters macht das keinen Unterschied. ​ **Ein oCMobSwitch**,​ kann entweder als MobClass - oCMobSwitch oder als oCMobInter eigesetzt werden. Für die Funktion des Schalters macht das keinen Unterschied. ​
-  *Eine Empfehlung von mir: Wer seine Schalter als oCMobSwitch setzt, findet sie im Object_List_Fenster ​im Ordner oCMobSwitch bequem wieder, wenn sie als ocMobInter gesetzt sind, dann sind die Schalter durcheinander gemixt und man muss sie mühselig suchen, zwischen Kochkesseln und Bänken und Stühlen... etc. +  *Eine Empfehlung von mir: Wer seine Schalter als oCMobSwitch setzt, findet sie im Object_**List**_Fenster ​im Ordner oCMobSwitch bequem wieder, wenn sie als ocMobInter gesetzt sind, dann sind die Schalter durcheinander gemixt und man muss sie mühselig suchen, zwischen Kochkesseln und Bänken und Stühlen... etc. 
  
 +===== 1. Einstellungen =====
  
-1.0.0 - Hier werden Besonderheiten angesprochen,​ die lediglich bei Mobs in bestimmten Klassen zu beachten sind. 
  
-  * **1.1.0 oCVob(abstract) -> oCMob -> oCMobInter** +  * **1.1.0 oCVob(abstract) -> oCMob -> oCMobInter ​-> oCMobSwitch** 
-   * Das Einsetzen eines Schalters als ocMobInter ​erzeugt folgendes Objektfenster:​ +   * Das Einsetzen eines Schalters als ocMobSwitch ​erzeugt folgendes Objektfenster:​ 
-{{:​quickstart:​spacer:​11_foto.jpg?300|}}+{{:​quickstart:​spacer:​mobsplatzieren:​12_switch.jpg|}}
  
 +1.1.0 - Einstellungen und Eintragungen im Objektfenster
 +  * vobName:​SPEZIELLER_NAME - Falls man den Schalter aufrufen möchte, bspw. mit **Ikarus**\\ [[http://​forum.worldofplayers.de/​forum/​threads/​1299679-Skriptpaket-Ikarus-4]]
  
 +  * **cdDyn:​**TRUE - erzeugt Kollision, wird benötigt, wenn man einen Schalter mit Fernwkampfwaffe beschiesst. Zum normalen betätigen eines Schalters durch einen Pc/Npc benötigt man keine Kollision, da ja der Schalter per Animation des Mobs bewegt wird.
 +  * **vobFarClipZScale:​**1 - __vorgegebene Einstellung__ = 1, Das sollte man zumindest bei einem Schalter so belassen.
 +    * Wenn ihr ein wichtiges Vob/Mob hättet in einem grossen Saal, und dieses wird ausgeblendet,​ wenn ihr euch zum Rande des Saales bewegt, dann kann man diesen Wert auf 2 oder 3 ändern (nicht höher, bringt nichts) und das entsprechende Mob/Vob wird später ausgeblendet bei zunehmender Entfernung zum Player.
 +  * focusName  ​
  
-  ​* **1.2.0 oCVob(abstract) -> oCMob -> oCMobInter ​-> oCMobFSwitch** +=====2. Switch mit FKW beschiessen===== 
-   ​Das Einsetzen eines Schalters ​als ocMobSwitch erzeugt folgendes Objektfenster+ 
-{{:​quickstart:​spacer:​11_foto.jpg?​300|}}+**2.0.0 - Man kann mit einem Schalter ein nettes Feature bauen, wo man mit dem Bogen bspw. einen Schalter beschiesst, der dann auslöst. Beispiel eine Zielscheibe beschiessen*
 + 
 +  * 2.0.1 - Zielscheibe setzen als Vob (Kollission geben) 
 + 
 +  * 2.1.0 - Schalter setzen ​(__Touchplate_Stone__) 
 +  * 2.1.1 Den Schalter so positionieren,​ dass das Koordinatenkreuz in der Mitte vor der Zielscheibe sitzt, der Schalter also __**vor**__ der Zielscheibe sich befindet. (Schalterrichtung = Schussrichtung) 
 +  * 2.1.2 **Objectfenster ​Einträge** 
 +    * - __showVisual:​FALSE__ - den Schalter sollte man nicht sehen, wir beschiessen ja die Zielscheibe) 
 +    * - __focusOverride:​TRUE__ - (Sonst kann der Bogen oder Crossbow das Ziel nicht erfassen.) 
 +    * - __focusname:​MOBNAME_ZIELSCHEIBE__ 
 +      * focusName in der Datei Text.d eintragen <code>const string MOBNAME_ZIELSCHEIBE = "​Zielscheibe";</​code>​ 
 + 
 +  * 2.1.3 - Der Schalter ist nur ein Fake und hat mit dem gezählten Treffer nichts zu tun. Er gibt lediglich den Namen an (Zielscheibe) und lenkt den Pfeil auf sein Koordinatenkreuz (gelb,​braun,​ weiss). 
 + 
 +**3.0.0 - Jetzt wird der Einschlag registriert ....** 
 + 
 +  ​3.0.1 - Triggerscript setzen.  
 +    * Boundingbox mindestens 20x20x20, sonst reagiert der Trigger eventuell nicht auf den Pfeil. Jetzt kommt es darauf an was man will, je kleiner die Boundingbox,​ desto mehr Fehlschüsse und umgekehrt, je grösser, desto mehr Treffer. Dabei ist die __Tiefe der Box von entscheidender Bedeutung__. Wenn der Pfeil in einen Würfel einschlägt,​ wird er eher registriert, ​als wenn du auf eine dünne Boundingbox Scheibe schiesst. Da wird der Treffer eventuell gar nicht registriert. 
 +  * 3.0.2 - Boundingbox direkt in die Mitte __**vor**__ der Zielscheibe setzen. 
 +  * 3.0.3 - Triggerscript auf Damage = True setzen, (reagiert nur auf Bolzen und Pfeile, nicht auf Schwert etc ..) 
 +  
 +**4.0.0 - Treffer generieren** ​   
 + 
 + 
 + 
 + 
 + 
 +  
 + 
 +     
 +     
 + 
 +  
 +    Damit das beim Schiessen nicht so langweilig wird würde ich einen Treffer Zufallsgenerator einbauen. 
 +    Code
 + 
 +    func void ZIELSCHEIBE() 
 +    ​{ 
 +         ​zufall_zielscheibe = Hlp_Random (5)+1; 
 +         if (zufall_Zielscheibe == 1) 
 +         { 
 +           ​PRINT("​10"​);​ 
 +         }
 +         if (zufall_Zielscheibe == 2) 
 +         { 
 +           ​PRINT("​7"​);​ 
 +         ​}; ​    
 +         if (zufall_Zielscheibe == 3) 
 +         { 
 +           ​PRINT("​9"​);​ 
 +         ​}; ​    
 +         if (zufall_Zielscheibe == 4) 
 +         { 
 +           ​PRINT("​8"​);​ 
 +         }; 
 +         if (zufall_Zielscheibe == 5) 
 +         { 
 +           ​PRINT("​KEIN TREFFER"​);​ 
 +         }; 
 + 
 +    ​};
  
 +    Vielleicht noch die Zehn als Count hochzählen und wer die 3te Zehn geschossen hat, hat genug geübt und kann seine Belohnung abholen?
  
 +    EDIT WICHTIG Den Scriptfunc vom Trigger benutzen, nicht den vom Schalter und den Schalter mit dem Trigger nicht verlinken. ​
  
  
  
-  * Der automatisch erscheinende Eintrag, der "​FIRETREE_LARGE.ZEN"​ hat folgende Nachteile 
-  * funktioniert eventuell in G2 nicht, da es die "​FIRETREE_LARGE.ZEN"​ in G2 nicht gibt\\ - **Massnahme**,​ importieren aus G1 
-  * ist unbrauchbar,​ da das Feuer für euren Leuchter zu gross/​klein/​zu hell/zu dunkel/zu viel Rauch....\\ ​ - **Massnahme** - eigene FIRE.ZEN herstellen und eintragen oder eine passende finden in den im Modkit vorhandenen *.ZEN´s 
  
-  * Wie stelle ich eine eigene FIRE.ZEN her? Eine FIRE.ZEN ist nichts anderes als ein **VOBTREE!** 
  
-  * Wie stelle ich einen "​VOBTREE"​ her? Was ist ein "​VOBTREE"?​ - [[spacer:​vobs:​vobtrees|]] 
  
 __Die Mobeinsetz-Liste mit allen Mobs und allen zugehörigen Einträgen findet ihr hier__ __Die Mobeinsetz-Liste mit allen Mobs und allen zugehörigen Einträgen findet ihr hier__
Zeile 38: Zeile 108:
 Zurück zur Haupseite ->​[[quickstart:​spacer:​mobsplatzieren|]] Zurück zur Haupseite ->​[[quickstart:​spacer:​mobsplatzieren|]]
  
-20160207(dlz)+20160208(dlz)
  
quickstart/spacer/mobsplatzieren/ocmobswitch.txt · Zuletzt geändert: 2018/04/28 07:18 von 79.239.17.78