User Tag List

Ergebnis 1 bis 11 von 11

Thema: Umherfliegende Trümmerteile durch Bombenexplsion

  1. #1
    Mitglied
    Registriert seit
    25.02.2015
    Beiträge
    22
    Renommee-Modifikator
    6

    Frage Umherfliegende Trümmerteile durch Bombenexplsion

    Hallo,

    ich wollte in meiner Map ein kleines Haus sprengen.

    Wenn die Terrors die Bombe gelegt haben und diese dann hoch geht, soll das Haus in seine einzelteile zerfallen, welche von der Explsion durch die Luft geworfen werden.

    Jemand eine Ahnung wie das zu bewerkstelligen wäre?

    Gruß

    CP

  2. #2
    Administrator Avatar von BaShoR
    Registriert seit
    18.06.2010
    Ort
    Oberbayern
    Alter
    29
    Beiträge
    4.212
    Blog-Einträge
    1
    Renommee-Modifikator
    20
    Ist schwierig. Du kannst das Haus entweder zu einem func_breakable oder func_brush machen und per Output (Onbombexplode oder so) zerstören.
    Für herumfliegende Teile müsstest du dann physik-objekte spawnen.
    Man müsste aber herumprobieren, ob das gut aussieht. Ansonsten einfach etwas rumspielen und hoffen, dass was gutes dabei rauskommt.

  3. #3
    Neues Mitglied
    Registriert seit
    09.02.2015
    Ort
    Hamburg
    Alter
    25
    Beiträge
    12
    Renommee-Modifikator
    0
    Sollte ganz gut funktionieren mit folgenden Schritten.
    1. Schnapp dir das Vertex-tool und schnippel das Haus in kleine Stücke.
    2. Jedes kleine Stück muss nun ein func_physbox werden, mit der Flag "Motion disabled"
    3. dem func_bomb_target den Output setzen: BombExplode - func_physbox - EnableMotion

    ggf. musst du etwas an dem Wert: phys_pushscale (musst du ausprobieren, für deinen zweck würde ich einen Wert um die 100 empfehlen) ändern (über einen point_servercommand) oder aber die Mass Scale der func_physbox runtersetzen (z.B. 0.5 - das Objekt ist nur noch halb so schwer, umso geringer der Wert um so leichter. Alles über 1 ist schwerer als normal).

    Sollten die Teile nun dennoch bei der explosion nicht wegfliegen, liegt das an dem dämlichen Output vom func_bomb_target, da der dann die explosion zeitgleich wie den Output überträgt und somit die explosion sich nicht mehr auf die Physbox ausübt.
    In diesem Fall müssen wir über den point_servercommand eine Zeit FESTLEGEN, die die bombe brauchen soll, bis sie explodiert. Der Befehl sollte glaube ich lauten mp_c4time x (x ist die zeit in sekunden z.B. 30).
    Wir nehmen nun einfach an, dass wir möchten, dass die Bombe nach 30sekunden explodiert.

    Folgendes brauchen wir:
    logic_relay (Name: relay)
    func_bomb_target
    func_physbox (Name: physbox)

    Dem logic_relay gibst du einen Namen und setzt einen Output: OnTrigger - physbox - EnableMotion

    func_bomb_target kriegt folgende Outputs:
    BombPlanted - relay - trigger - after a dealy in seconds 29.9
    BombDefused - relay - Disable

    Wir haben nun eingestellt, dass nach dem legen der Bombe der trigger bis kurz vor der Explosion wartet und erst im letzten Moment den Befehl dazu gibt, dass alles instabil wird.
    Außerdem haben wir durch den logic_relay die Sicherheit einbauen können, dass falls die Bombe kurz vor der Explosion entschärft wird, dass ganze nicht instabil werden kann.
    Denn wenn der logic_relay deaktiviert wird, kann er nicht getriggert werden.

    Ich hoffe ich konnte helfen.
    Gruß Pascal

    edit: Ich weiß nicht, wie erfahren du im Umgang mit dem Hammer Editor bist, sollte also noch etwas unklar sein, zögere nicht zu fragen.
    Geändert von Citrien (26.02.2015 um 13:28:59 Uhr)

  4. #4
    Administrator Avatar von BaShoR
    Registriert seit
    18.06.2010
    Ort
    Oberbayern
    Alter
    29
    Beiträge
    4.212
    Blog-Einträge
    1
    Renommee-Modifikator
    20
    Würde da sehr vorsichtig sein.
    1. Ein Haus in zuviele Teile zu zerschnipseln, gerade noch mit dem Vertex-Tool kann zu verheerenden Fehlern führen.
    2. Können die Physboxen bei der Explosion die Map überfordern und zu Client/Server Crashes führen.
    3. Wände aus Physboxen sind keine Visblocker und können auch in der Map zu Grafikfehlern führen (Beleuchtung).

    Ich würde ehrlich gesagt eher auf herumfliegende Mapteile weitestgehend verzichten und es wie Valve machen, dass Teile des Hauses einfach zerstört werden und Feuer getriggert wird.
    Oder wie gesagt bei meinem oberen Post ein paar Physikteile (nicht zuviele) spawnen.
    Geändert von BaShoR (26.02.2015 um 13:45:43 Uhr)

  5. #5
    Super-Spender Avatar von neahc
    Registriert seit
    22.09.2011
    Ort
    osterholz-scharmbeck
    Beiträge
    67
    Renommee-Modifikator
    9
    Hi,

    so schwer ist das nicht!

    Ich müsste aber wissen ,ob es für cs go oder source 2007 ist?

    Ich bin aber der Meinung,dass der Sprengteil gemoddelt werden muss.

    Es gibt zum Beispiel ein tool namens Blastcode.Geht aber auch ohne.

    QC mit breakparts.

    Ist aber wie die Jungs sagten Performance lastig!!

    https://www.youtube.com/watch?v=5zQ1BH7zGLQ
    Geändert von Dmx6 (27.02.2015 um 23:37:48 Uhr)

  6. #6
    Mitglied
    Registriert seit
    25.02.2015
    Beiträge
    22
    Renommee-Modifikator
    6
    Hallo,

    @Citrien

    Habe es so gemach wie du sagtest:

    1. Das haus in kleine Teile zerschnipselt, und die Teile einzeln in 'func_physbox' verwandelt. Mit folgenden einstellungen:

    Material Type: Rocks
    Mass Scale: 0.01
    Flags: Motion Disabled

    Dann habe ich im Trigger 'func_bomb_target' den Output so eingestellt das bei dem 'func_physbox' die 'Motion Enabled' setzt.

    Was nur unschön aussieht, ist dass das Licht die einzelne Blöcke unterschiedlich beleuchtet. Darum habe ich das Haus als normales Brush Kopiert und die Wände auf jeder seite ein wenig vergößert.
    Daraus ein func_breakable gemacht und in den Flags 'Only Break On Trigger' gesetzt.
    Nun habe ich das Breakable über die Physbox gestülpt, und ebenfalls im 'func_bomb_target' den Output so eingestellt das es zerbricht wenn die Bombe hoch geht.


    Das Zeitproblem habe ich etwas anders gelöst.

    Statt per 'point_servercommand' habe ich einfach ein 'env_physexplosion' genommen den wert 'Magnitude' auf 999 und den 'Clamp Radius' so hoch gestellt bis das ganze Haus innerhalb des Radius ist.
    In den Flags habe ich dann noch folgendes eingstellt, ist aber nicht nötig:

    No Damage - Only Force
    Push players
    Disorient player if pushed

    Im Output lasse ich die Explosion 3x auslösen, mit einer verzögerung von jeweils 0.10


    Das einzige Problem ist, dass das Haus komplett durchgeleuchtet wird, und es keinen schatten etc. gibt.
    Gibt es ein Entity mit dem man Licht blockieren kann, das dann zerstört wird wenn die Bombe hoch geht?

    Gruß

    CP

  7. #7
    Administrator Avatar von DaEngineer
    Registriert seit
    23.06.2010
    Beiträge
    1.576
    Blog-Einträge
    2
    Renommee-Modifikator
    20
    Zitat Zitat von Cha0sPudd1ng Beitrag anzeigen
    Gibt es ein Entity mit dem man Licht blockieren kann, das dann zerstört wird wenn die Bombe hoch geht?
    Das könnte man für die Echzeitschatten vermutlich hinbekommen, aber an der Lightmap wirds scheitern. Die wird nur einmal beim Compile berechnet und ist statisch. Wenn du dein Haus sprengst, hast du danach entweder einen eingebrannten Schatten auf dem Boden und die fliegenden Trümmerteile haben die gleiche Beleuchtung wie im intakten Zustand, oder du musst leider so wie jetzt Abzüge bei der Optik machen.

    EDIT: Ich seh gerade, wir sind bei CS:S. Da gibts die Echtzeitschatten aus CS:GO ja noch nicht einmal.

  8. #8
    Super-Spender Avatar von neahc
    Registriert seit
    22.09.2011
    Ort
    osterholz-scharmbeck
    Beiträge
    67
    Renommee-Modifikator
    9
    Hi nochmal,

    deshalb fragte ich ja,ob 07 oder cs go.

    Weil es in cs go ein cascade shadow system gibt.

    Danke das du es nochmal ansprichst.

  9. #9
    Mitglied
    Registriert seit
    25.02.2015
    Beiträge
    22
    Renommee-Modifikator
    6
    Das einzige bei dem ganzen ist leider so wie es einige von euch schon sagten, dass das ziemlich Resourchenlastig ist, wodurch die FPS zahl von 500 unf 90 sinkt.

    Habe schon viele Teile entfernt, aber leider brachte das nicht wirklich was.

    Würde es weniger Resourchen kosten wenn man das teil Moddeln würde, oder wäre das auch nicht besser?

  10. #10
    Super-Duper-Moderator Avatar von Ricetlin
    Registriert seit
    18.06.2010
    Beiträge
    2.696
    Renommee-Modifikator
    29
    Wenn du mit dem "Teil" die Animation meinst, definitiv.
    Vorteil eines animierten Models ist ja der dass die Berechnungen bereits im Vorfeld gemacht wurden. Der "End-Rechner" muss die vorgefertigten Ergebnisse halt nur noch anzeigen, aber nicht berechnen.
    Ich warne aber schon mal vor, das wird eine Mordsarbeit. Aber das Endergebnis der Mehrarbeit wird sich dafür lohnen.
    starrt auf den eigenen Nicknamen... "Ich mag dich nicht".

  11. #11
    Administrator Avatar von DaEngineer
    Registriert seit
    23.06.2010
    Beiträge
    1.576
    Blog-Einträge
    2
    Renommee-Modifikator
    20
    Wenn du das wirklich machen willst, könntest du dir die Maps in Team Fortress 2 angucken, in denen man mit einer Bombe auf Gleisen ein Ziel sprengen muss. Ich weiß leider nicht, wie der Spielmodus heißt, sollte aber schnell zu finden sein. Da wurde das Ziel auch gemodelt und bei der Explosion wird nur die Animation abgespielt.

Berechtigungen

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