Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 21 bis 40 von 45

Thema: Navmesh bei Abwasserkanälen

  1. #21

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  2. #22
    Genau das meinte ich, die Triggerblöcke sind unnötig, weil der GameMode Block sowieso immer läuft.

    @SethX
    Das ist wie mit dem Kühlschranklicht, die Skripte laufen zu 99% nicht, wenn der Player außerhalb der Reichweite/Innenzelle ist. Ich weis nur nicht ob die Zellengrenzen bestimmen oder ob es eine maximale Reichweite gibt.

    Man kann das leicht testen, koppel mit dem Lichtschalter einen Placeatme Monster 1, nach jedem Tag, der vergangen ist, müsste dann ein Monster an der Stelle stehen, wenn die Zeitschaltuhr mitläuft.

    Nach meiner Erfahrung passiert das nur, wenn sich der Player in Reichweite/Zelle befindet. Ich habe solche Abfragen sicherheitshalber immer mit if GetDistance player <= XXXX gekoppelt, da der Beginn GameMode eh mitläuft.

    @Trigger
    Der Trigger oder (+Enter) aktiviert sich nur, wenn man die Box berührt oder (+Leave) sie verlässt. Wenn man da einen GameMode reinpackt, ist es ein aktiver Aktivator für Skripte + ein Trigger in der Größe der Box. Um zu vermeiden, dass der Trigger von anderen ausgelöst wird (herumlaufenden NPCs):

    Begin onTrigger player

    Begin onTrigger CalistaREF

    Trigger sind auch nur 1x Schalter, weshalb man für eine permanente if Abfrage dann zusätzlich den GameMode braucht. Wenn also irgend ein Trigger Event nicht gehen sollte, muss man die if Abfrage vielleicht nur in einen GameMode setzen. Das ist z.b. beim Lichtschalter so, wäre es nur ein if im Trigger Block, dann würde sich das Licht nur bei Berührung der Trigger Box zu der Uhrzeit Abfrage ein- oder ausschalten.

    Kommt immer darauf an was man macht, manche Abfragen gehen nur im GameMode, bei anderen ist es egal. GECK-Wiki hilft manchmal, da man oft tricksen muss

    @Läuft das Skript
    Das war ja auch der Konsens bei der normalen MM Variante, ich bin davon überzeugt, das die markfordelete Skripte nach Zellen-Reset/Uhrzeit nicht so gehen, wie sie sollten. Im Grunde müssen die Leichen der Monster liegen bleiben, solange der Zell-Reset nicht gemacht wurde oder der Player außerhalb der Reichweite ist.

    Beispiel:
    Du killst Zombies in der Metro und gehst nach DC. Zwar steht im Skript der Zombies, lösche dich beim Zell-Reset, da der Player aber nicht in Reichweite ist, kann er das eigentlich nicht ausführen. Betritts du die Metro nach dem Zell-Reset wieder, stellt sich die Frage: Hat er sich den Zeitpunkt für den Zell-Reset aller Leichen gemerkt, also den Wert für alle toten Zombis abgespeichert, dann löscht er sie sofort, weil der Player wieder in Reichweite/Zelle ist. Hat er das nicht gespeichert, laufen alle Skripte wieder an, und warten auf den Zell-Reset. Egal wie man es dreht, je mehr Leichen, umso mehr Müll.

    Deshalb meine Abfrage auf Entfernung:

    scn zMMMzSpawnRemoval

    Begin GameMode

    if GetDead == 1 && GetDistance Player > 11000 && GetInSameCell Player == 0
    markfordelete
    endif

    End

    Beim GetInSameCell Player == 0 müsste sofort alles verschwinden. Ist dann wieder wie beim Kühlschranklicht, hat er es tatsächlich noch ausgeführt, wenn du die Innenzelle verlässt oder das Skript schon auf Eis gelegt, in der Sekunde wo du die Zelle verlassen hast

    Diese GetInSameCell == 0 würde umgekehrt immer als GetInSameCell CalistaREF == 0 funktionieren, weil viele Events eh nur wichtig sind, wenn der Player anwesend ist. Aus dem Gefühl würde ich sagen, die GameMode Abfrage ist so schnell, das er die if noch ausführt, bevor du ganz aus der Zelle/Reichweite verschwinden kannst.

    Geändert von EMOD (07.05.2009 um 19:01 Uhr)

  3. #23
    Ok danke, dann kann ich also das OnTrigerEnter Player und OnTriggerLeave Player weglassen...so wie ich euch jetzt verstanden habe, brauche ich die OnTrigger Blöcke nur bei Dingen wie einen Quest, der beim betreten eines Raumes startet oder automatisch schließenden/öffnenden Türen?

    Achja wegen der Uhrzeit, du kannst ja mal probieren ein && zwischen meine Abfrage zu setzten Und else ist ja so wie ich das bis jetzt bei Scripts gesehen habe nicht das genaue Gegenteil der oben definierten if-Bedingung, auf Englisch heißt else einfach nur andernfalls und das heißt es soweit ich weiß bei Scripts auch.

    Ich prophezeie dir auf jeden Fall, dass mein Script mit einem && nicht funktionieren würde und das liegt daran, dass nach 23 nicht 0 sondern 24 kommt und nach 24 nicht 1 sondern 25

  4. #24
    Trigger immer wenn du willst, das sich Ereignis bei betreten der Box aktivieren soll. Es ist wie eine Lichtschranke oder ein Sensorfeld, dass irgend etwas auslöst, wenn du durchgehst.

    Der Trigger muss so gesetzt sein, dass er ausgelösst wird, wenn jemand/etwas ... durchgeht. Man kann ihn ja beliebig ziehen, vergrößern und in die Höhe strecken.

    Wenn du die Box nur als Aktivator im GameMode benutzt (Zeitschalter), dann kannst du sie ganz klein machen und sie auch außerhalb der Gänge/Wände platzieren.

    Mit der Uhrzeit hast du recht, weil es bei mir am Anfang nicht funktioniert hat. Deshalb habe ich ihn durch probieren bestimmt zufällig mit 5 bis 21 Uhr disabled für && kompatibel gemacht.

    Mein erster Versuch war sicher auch 21 bis 6 Uhr anmachen, was dann durch mein && nicht ging, weil ich über ein || zwar nachdachte, aber nicht auf das 21 22 23 24 25 kam.

    Aus dem Kopf könnte ich viele Sachen eh nicht machen, ich muss mir die Skripte erst nochmal ankucken, bevor ich da aktiv was neues erstellen kann Leider kann man man nicht 24h/365 Tage modden. Für E-MOD hatte ich 3 Monate Vollzeit ^^.

    Geändert von EMOD (07.05.2009 um 16:24 Uhr)

  5. #25
    Ok thx dann werde ich jetzt mal ein paar automazische Lichter und Türen machen

    Edit: Achja ist die Zeit in dem IdleMarker edit Window in echten Sekunden, Spielsekunden, echten Minuten, oder Spielminuten angegeben?
    Muss ich Idlemarker eigentlich als ref mit nem Objekt setzten, wenn ich will, dass die KI mit diesem interagiert?

    Geändert von TheManiac (07.05.2009 um 16:15 Uhr)

  6. #26
    Die Zeit sollten Sekunden sein, ich gehe immer davon aus.

    Was willst du damit genau machen, die XMarkerHead gehen als Patrol mit warten recht sicher, bei anderen Markern musste testen, es kann sein das es dann nur per AI Package sauber läuft.

    Wenn du die Marker direkt verlinkst, dann ist Persistent eigentlich nicht nötig, nur wenn es ein REF für AI Packages oder Skripte sein soll, dann meckert er aber sofort wenn es vergessen wurde oder dein Fadenkreuz bleibt im GECK rot.

    @Automatische Türen
    In Türen kannst du direkt ein Skript ablegen, ich habe welche mit Distanzabfrage gemacht. Wenn du sie per Trigger machst, dann brauchste ne BOX mit Link openstate und switch. Da gibt es auf der GECK-Wiki irgendwo unter hilfreiche Skripte schon eine Vorlage.

  7. #27

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  8. #28
    Zitat Zitat von EMOD Beitrag anzeigen
    Die Zeit sollten Sekunden sein, ich gehe immer davon aus.

    Was willst du damit genau machen, die XMarkerHead gehen als Patrol mit warten recht sicher, bei anderen Markern musste testen, es kann sein das es dann nur per AI Package sauber läuft.

    Wenn du die Marker direkt verlinkst, dann ist Persistent eigentlich nicht nötig, nur wenn es ein REF für AI Packages oder Skripte sein soll, dann meckert er aber sofort wenn es vergessen wurde oder dein Fadenkreuz bleibt im GECK rot.

    @Automatische Türen
    In Türen kannst du direkt ein Skript ablegen, ich habe welche mit Distanzabfrage gemacht. Wenn du sie per Trigger machst, dann brauchste ne BOX mit Link openstate und switch. Da gibt es auf der GECK-Wiki irgendwo unter hilfreiche Skripte schon eine Vorlage.
    Nö ich bin grad dabei mein Haus mit den Idlemarkers vollzustopfen, obwohl eigentlich bin ich ziemlich anhaltslos, also kann von vollstopfen noch nicht die Rede sein

    Ich hab in meinem Poolbereich z.B. Kissen platziert und hätte gerne, dass die Companions die im Gebäude warten sich dort immer mal wieder hinsetzen. Hab mit einigen die meinen Mod gezogen haben auch schon geredet und die haben gesagt, dass die Follower sich nichtmal ins Bett legen oder an die Bar setzen, muss ich dafür etwa auch noch Idlemarkers setzen???

    Und danke euch beiden wegen den automatischen Türen

  9. #29
    Haben sie ein AI Package DefaultSandbox ? Und das Haus eine Navmesh ?

  10. #30

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  11. #31
    Mein Fehler, dachte es geht um normale NPCs. Ja, die Sachen sollten keinen Besitzer haben. Die IDLE-Marker gehen nur, wenn das laufende AI Package die IDLE-Marker nutzen darf. Das kann dir SethX besser beantworten, wann welcher CBO-Begleiter was macht

    Geändert von EMOD (07.05.2009 um 18:02 Uhr)

  12. #32

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  13. #33
    Das Haus hat natürlich Navmesh und die Zellen stehen alle auf Player, habe die Gegenstände die von Begleitern benutzt werden dürfen aber auf PlayerFaction gestellt (Begleiter gehören doch zur PlayerFaction?). Was auch komisch ist, Clover räumt mir die Schränke aus obwohl ihr die Gegenstände nicht gehören???

    Hehe aber ihr habt mich grad an was erinnert...hab vergessen den Besitzer der IdleMarker zu definierenb

  14. #34

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  15. #35
    Lol jetzt wissen wir ja wo der Fehler lag Ok wenn ich jetzt also die Zelle auf FollowerFaction Stelle, dann könnn diese alles benutzen und wenn ich einfach die Schlafzimmertür des Spielers auf Player stell, dann lassen sie das auch in Ruhe?
    Achja die wichtigste Frage überhaupt: Wenn die Zelle auf Followerfaction steht, kann der Spieler dann ohne Karmaloss Gegenstände nehmen?

  16. #36

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  17. #37
    Die Sache ist halt die, wenn ich Owner auf None habe, dann muss ich jedes Objekt einzeln umstellen und rauskommen tut es dann aufs selbe naja ich werds einfach mal mit FollowerFaction testen

  18. #38
    So ich hab jetzt die Zellen mal auf None und die Objekte auch auf None gesetzt und jetzt funzt alles ohne Karmaloss, dafür bin ich aber verwirrt, anfangs waren nämlich alle Objekte rot, wenn ich überall None hatte?

    Naja jetzt funzt es... aber auch irgendwie bescheuert, dass die Companions nicht der Playerfaction oder der Spieler nicht der Followerfaction hinzugefügt wird, wenn man einen Kameraden bekommt. So widerspricht sich ja immer alles

  19. #39

    Sethx Gast

    Geändert von Sethx (27.05.2009 um 13:51 Uhr)

  20. #40
    Ich hab mal in den Spielzellen etwas rumgeschaut und hab bis jetzt keine gefunden, die mehreren Leuten gehört und einen Besitzer definiert hat, ich glaube wenn man Public Area unangekreuzt lässt sollte das passen, zur Sicherheit setz ich eben die Eingangstür auf Player

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •