Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 23

Thema: Flüssigkeitsverlust...

  1. #1

    Flüssigkeitsverlust...

    Ich habe die idee in einer wüste eine zusätzliche Schwierigkeit einzubauen und zwar möchte ich das der held an Flüssigkeitsmangel sterben kann änlich wie in Desert Island....

    Habe allerding kein Passends Tut bzw. Idee dazu gefunden...

    Wer kann witerhelfen..???

    Lg
    Multi-Master1988

  2. #2
    Brauchst einfach nur einen Timer laufen zu lassen und jedes Mal, wenn der auf 0 sinkt erhöht sich eine Variable. Der Timer beginnt dann wieder von vorne und sobald die Variable einen bestimmten Wert erreicht ist er dann halt verdurstet. An Oasen kann man die Variable dann wieder auf 0 setzen. Kannst natürlich auf versuchen, das wie in Golden Sun zu machen, dass also die Hitze den Charakteren beim Laufen zu schaffen macht. Letzteres ist aber ein wenig aufwändiger.

  3. #3
    Wenn du dir nicht mal ansatzweise vorstellen kannst wie du es umsetzen willst (und auch keine tuts existieren, was ich anneheme, da ich keins gefunden hab), dann ist es ratsamer erstmal die Finger von zu lassen. Oder du beginnst zu experimentieren.

    Ideen, die man nicht umsetzen kann, weil sie die eigenen Fähigkeiten übersteigen, ist der häufigste Grund für gecancelte Spiele. Darum predige ich auch gern das man mehr nachdenken soll.
    Also hopp hopp! Denken und experimentieren oder lieber noch warten!

  4. #4
    Den wohl einfachsten Lösungsansatz nennt R.F. bereits als Grundbedingung für einen Ansatz, der das Ganze im Grunde nur unnötig kompliziert gestaltet.

    Setze einen Timer mit einem Countdown der die Zeit bis zum Verdursten darstellt. Dann starte den Timer per Common Event. Wird Wasser getrunken, wird der Timer wieder zurück gesetzt und erneut gestartet.
    Läuft der Timer vorher ab, verdurstet die Gruppe.

    Das wäre die mit Abstand einfachste Umsetzung. Zu beachten ist dass der Timer per Event pausiert werden sollte, wenn ein längeres Gespräch oder eine Zwischensequenz an steht. Ansonsten zählt die Zeit weiter herab.

  5. #5
    Warum wollt ihr dafür überhaupt den Timer einsetzen? Simple Waits und dazwischen Vari runterzählen in einem CE tuts doch auch.

  6. #6
    Bei einem Timer muss er sich aber nicht extra noch mit Grafiken rumplagen um dem Spieler zu verdeutlichen wie lange er noch aushält, auch wenn es natürlich nicht ganz so schön aussieht.

  7. #7
    @ Dhan

    Stimmt genau ich möchte keinen Timer einnbauen
    sonder die so änlich gestalten wie ein Geldzähler allerdings
    dass die Anzeige dann mit Bildern stattfindet.

    Ausserdem finde ich das ein
    Timer nicht wirklich toll aussieht..

    Geändert von Multi-Master1988 (16.08.2010 um 19:11 Uhr)

  8. #8

    Users Awaiting Email Confirmation

    Ay hier mal mein Vorschlag zur Lösung:

    Du brauchst eine Variable für den Wasserhaushalt.

    1. Setz sie beim Beginn auf 100.
    2. Event nr. 1: Paralell Process
    - Fork Conditions if $0001Wasserhaushalt is above 100;
    set Variable $0001Wasserhaushalt 100
    /// Ist wichtig für die späteren Events zur Auffrischung des Haushaltes
    durch trinken, damit sich niemand auf den Wert 50000 oder so
    hochtrinkt durch massives ausnutzen der Events
    - Variable $0001Wasserhaushalt - 1
    - Fork Conditions if $0001Wasserhaushalt is below 0;
    /// Sterbe Event
    - wait 0,5 sek
    /// Es würde jetzt 200 Sekunden dauern bis der Held stirbt. Setz einfach
    Die Variable höher oder tiefer oder den wait länger
    3. Events zur Auffrischung: Einfach an alle Wasserflächen push to key events setzen die die Variable "$0001Wasserhaushalt + 20" setzen

    So, nun hast du im Grunde alles was du brauchst zum Überleben, damit es fairer für den Spieler ist, kannst du ein paar Forkkonditions setzen wo z. B. ab $0001Wasserhaushalt 80 / 60 / 40 / 20 etc. eine Nachricht kommt wie "Langsam muss ich was zu trinken finden etc. pp. oder du bastelst dir noch eine Anzeige. Die wie folgt aussehen könnte

    4. Event Nr. 2: Fork Conditions if $0001Wasserhaushalt is same 100;
    Show picture Durstanzeige 100;
    Fork Conditions if $0001Wasserhaushalt is same 99;
    Show picture Durstanzeige 99;
    etc. pp.

  9. #9
    Deine Idee hört sich auf jedenfall pletzsparend an was Vaiabel angeht...

    Zitat Zitat
    So, nun hast du im Grunde alles was du brauchst zum Überleben, damit es fairer für den Spieler ist, kannst du ein paar Forkkonditions setzen wo z. B. ab $0001Wasserhaushalt 80 / 60 / 40 / 20 etc. eine Nachricht kommt wie "Langsam muss ich was zu trinken finden etc. pp. oder du bastelst dir noch eine Anzeige. Die wie folgt aussehen könnte
    Die Idee mit den Massage wäre selbst mir beim Spielen zu Blöd!
    (Verzeih wenn das jetzt Beledigend gewirkt hat..)

    Zitat Zitat
    4. Event Nr. 2: Fork Conditions if $0001Wasserhaushalt is same 100;
    Show picture Durstanzeige 100;
    Fork Conditions if $0001Wasserhaushalt is same 99;
    Show picture Durstanzeige 99;
    etc. pp.
    Ziemlich auwändig es so darzusetellen...
    zumal dann müsste ich ja jede Zahl von 0-100 editieren
    ich würde dann Lieber den Wasserhaushalt nehmen
    und ihn dann in Einer,Zehner,Hunderter splitten...

  10. #10
    Zitat Zitat von Multi-Master1988 Beitrag anzeigen
    Die Idee mit den Massage wäre selbst mir beim Spielen zu Blöd!
    Das musst du ja nicht mit show message machen sondern kann einfach per picture als Warnung angezeigt werden. Oder es flasht der Screen und wird z.B. mit einem Herzschlag untermauert.

    Zitat Zitat von Multi-Master1988 Beitrag anzeigen
    Ziemlich auwändig es so darzusetellen...
    zumal dann müsste ich ja jede Zahl von 0-100 editieren
    ich würde dann Lieber den Wasserhaushalt nehmen
    und ihn dann in Einer,Zehner,Hunderter splitten...
    So eine Wasseranzeige lässt sich viel einfacher machen.
    Du nimmst einen Rahmen für die Wasseranzeige, da drunter ein Bild für den Wasserpegel und bewegst es abhängig von der Variable. Also wenn sie sinkt verschwindet auch das Bild des Wasserpegels nach unten aus dem Bild heraus.

  11. #11
    Zitat Zitat
    So eine Wasseranzeige lässt sich viel einfacher machen.
    Du nimmst einen Rahmen für die Wasseranzeige, da drunter ein Bild für den Wasserpegel und bewegst es abhängig von der Variable. Also wenn sie sinkt verschwindet auch das Bild des Wasserpegels nach unten aus dem Bild heraus.
    Zitat Zitat
    Das musst du ja nicht mit show message machen sondern kann einfach per picture als Warnung angezeigt werden. Oder es flasht der Screen und wird z.B. mit einem Herzschlag untermauert.
    Gut bei den "Versionen" müsste man gucken was am
    besten zum Gesamtbild passt...

    Edit:
    Habe hier mal ein Versuch von dem was ich
    bisher so alles gemacht hab

    http://www.npshare.de/files/fac95b66/Wasser.rar

    Der Wasserpegel läuft allerdings noch ein wenig zu schnell
    und aktualiesiert sich nur alle 10er Schritte.
    Wasser gibt es bei dem Wasserloch immer + 5

    Geändert von Multi-Master1988 (17.08.2010 um 18:56 Uhr)

  12. #12
    Zitat Zitat von Akanas Beitrag anzeigen
    4. Event Nr. 2: Fork Conditions if $0001Wasserhaushalt is same 100;
    Show picture Durstanzeige 100;
    Fork Conditions if $0001Wasserhaushalt is same 99;
    Show picture Durstanzeige 99;
    etc. pp.
    Nix für ungut, aber wenn du Neuling im Skripten bist dann geb keine Ratschläge.
    Informatik dreht sich in erster Linie darum, Redundanzen zu vermeiden.



    @Multi-Master: Dein Skript funzt bis auf einen kleinen Punkt, du lässt das "Wasser"-Event jedesmal das Bild neu anzeigen und verschiebst es dann - lass es nur einmal anzeigen (indem du den Befehl z.B. in "Geldzähler" wie du es genannt hast einbaust) und es passt. Wobei es dann stört, dass es sich nur in 10er-Schritten ändert, aber das kann man ja noch ändern. Guter Zeitpunkt, um es statt an feste Koordinaten zu verschieben an variable Koordinaten zu verschieben - probier mal "Move Picture .- By Variable" aus, dann sparst du dir gehörig Forks

  13. #13

    Users Awaiting Email Confirmation

    Zitat Zitat von Dhan Beitrag anzeigen
    Nix für ungut, aber wenn du Neuling im Skripten bist dann geb keine Ratschläge.
    Informatik dreht sich in erster Linie darum, Redundanzen zu vermeiden.
    Dann erklär doch rasch wie man es anders lösen könnte, würde mich wirklich mal interessieren

  14. #14
    @ Dhan

    Okay es sollte sich eigentlich auch Bewegen und nicht jedesmal
    neu anzeige xD (Dummer Gedangenfehler meinerseits)

    Habe auch nicht vor dies in 10er schritten weiterhin einzuseten.
    Denn der Spieler soll ja möglichst genaue Angaben Bekommen...

    Lg
    Multi-Master1988

  15. #15
    Zitat Zitat von Akanas Beitrag anzeigen
    Dann erklär doch rasch wie man es anders lösen könnte, würde mich wirklich mal interessieren
    Ich bin nicht Dhan, erklären kann ich es dir aber trotzdem.
    Eine häufig verwendete Lösung wäre das du den Modulo Operator nutzt um die Zahl auf ihre Stellen zu zerlegen.
    Bei der Zahl 1234 z.B.:

    1000er Stelle:
    1234 / 1000 = 1

    100er Stelle:
    1234 / 100 = 12
    12 MOD 10 = 2

    10er Stelle:
    1234 MOD 100 = 34
    34 / 10 = 3

    1er Stelle:
    1234 MOD 10 = 4

    Schon hast du eine wesentlich simplere Abfragemenge. Bei deiner Lösung bräuchte man 9999 Forks um alle Möglichkeiten abzudecken. Hier lediglich 40, heisst 10 pro Stelle.

    Mit dem Pointer Picture Patch, könnte man die benötigt Zahl sogar auf quasi 0 reduzieren, da man hier sogar direkt die Dateinamen konstruieren kann, was es nochmal einfacher macht. Aber das wäre nochmal eine andere Sache.

    Ein weiterer Fehler deines Skriptes wäre das es die Anzeige per parallelen Prozess ständig aktualisiert. Das kostet unnötig Rechenzeit, da du ja genau weisst wann die Werte sich verändert. Wenn man das Update für die Anzeige per "Call" aufruft, spart man sich einiges an Rechenleistung.

    Geändert von makenshi (19.08.2010 um 12:15 Uhr)

  16. #16
    Um es der Vollständigkeit halber noch zu erwähnen: der Modulo-Operator gibt den Rest einer ganzzahligen Division zurück: 34 MOD 3 = 1 da 34 durch 3 = 11 Rest 1 (sehr sehr nützliche Sache, um Zahlen in ein anderes Zahlensystem umzurechnen)

  17. #17
    @ makenshi

    Also simbles Teilen durch die gegebene Zahl...

    @ Dhan

    Habe es mir notiert...
    Danke hab mich schonmal gefragt für
    was der Modulo-Operator genau ist aber
    ich habs begriffen er teilt eine Zahl und gibt
    den Rest wieder.

    Und diesen rest kann ich weiterhin in die Abfrage
    stellen...

  18. #18
    Zitat Zitat von Multi-Master1988 Beitrag anzeigen
    @ makenshi

    Also simbles Teilen durch die gegebene Zahl...
    Nein.
    Ohne den Modularoperator den Dhan nochmal genauer erklärt, bringt dir das teilen auch nichts.

  19. #19
    Zitat Zitat von makenshi Beitrag anzeigen
    Nein.
    Ohne den Modularoperator den Dhan nochmal genauer erklärt, bringt dir das teilen auch nichts.
    Dann kann ich den Modularoperator apparat also nur nutzen
    um Zahlen von einer Variabel genau festzulegen.

  20. #20
    Zitat Zitat von Multi-Master1988 Beitrag anzeigen
    Dann kann ich den Modularoperator apparat also nur nutzen
    um Zahlen von einer Variabel genau festzulegen.
    Nein.
    Du kannst ihn dafür nutzen um den ganzzahligen Rest einer Divison zu ermitteln. So wie du halt den Plus Operator nutzt um zwei Zahlen zu summieren.

Berechtigungen

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