Seite 44 von 71 ErsteErste ... 3440414243444546474854 ... LetzteLetzte
Ergebnis 861 bis 880 von 1418

Thema: Technik-Sammelthread für Probleme und Antworten

  1. #861
    Common Events kann man scheinbar nicht per Erase Event löschen. Aber bei deinem Beispiel sollte es doch auch reichen, wenn du das Event einfach einmalig per Call Event aufrufst, oder?

  2. #862
    Das ganze soll eben auf jeder Map zu sehen sein, nicht einmalig schnell angezeigt werden.
    Mit einem Picture lief die Sache eigentlch ohne Probleme, erst ab dem zweiten klappt es nicht mehr...

  3. #863
    Angenommen du hast ein Event auf der Map und ein CommonEvent, in dem die Bilder angezeigt werden.

    Dann sollte in deinem Event folgendes stehen.
    • CallEvent ( dein CommonEvent)
    • EraseEvent


    Das EraseEvent löscht das Event dabei nicht wirklich. Es wird nur zeitweise deaktiviert und wenn die Map das nächste mal betreten wird ist es wieder da, wird aufgerufen und deaktiviert sich erneut. Das ist der einfachste Weg um Dinge beim Betreten der Map passieren zu lassen.

  4. #864
    gibt es eine Möglichkeit ein PP, welches per Switch gestartet und beendet wird, wieder vom Anfang starten zu lassen?
    Wenn ich den Switch aus und wieder an mache, dann setzt das Event da fort wo ich es unterbrochen habe.
    Jetzt such ich nach einer Möglichkeit das Event wieder komplett vom Anfang an laufen zu lassen .

  5. #865
    Ich hätte auch mal eine kurze Frage:
    Wenn ich viele Abfragen habe, was ist weniger rechenintensiv? Wenn ich das Ganze mittels :ELSE CASE ineinander verschachtel oder wenn ich die ganzen Forks einfach hintereinander weg platziere?

  6. #866
    Wenn ich mal rein von der Abfolge der Schritte gehe, funktioniert da die Schachtelung schon besser, wenn du die weg lässt,
    müssen auch noch alle anderen Sachen vom Eventinterpreter durchgegangen werden, die nach dem Treffer noch kommen.
    Falls also nicht gerade die allerletzte Abfrage erst positiven Rückschlag gibt, ist das mittendrin sehr verschwenderisch.
    Man kann zwar aus direkt untereinandergeschriebenen Bedingungen mit Labeljumps entkommen, aber das ist dann auch
    nochmal ein Befehl mehr, der dann obendrein absuchen muss "Wo ist denn das jetzt?".

  7. #867
    ganz klar wenn du mit ELSE arbeitest. Stell dir nur mal vor du hast 1000 forks. Wenn jetzt der erste zutrifft dann kann ja auch keiner der anderen 999 mehr zutreffen und deshalb lohnt es sich nicht diese auch alle abzufragen. Wenn du stattdessen else benutzt, dann schaut der sich die restlichen abfragen die bei else drinnen stehen erst gar nicht an und somit ist das ressourcenschonender.
    Wie viel genau das jetzt wirklich bringt weiß ich nicht aber es sollte nicht wirklich viel sein, sodass man es auch einfach nur wegen der Übersicht ohne else machen kann.

  8. #868
    Zitat Zitat von BDraw Beitrag anzeigen
    Ich hätte auch mal eine kurze Frage:
    Wenn ich viele Abfragen habe, was ist weniger rechenintensiv? Wenn ich das Ganze mittels :ELSE CASE ineinander verschachtel oder wenn ich die ganzen Forks einfach hintereinander weg platziere?
    Beim Vx hab ich die Erfahrung das das Elsecase verfahren Resourcen fressender ist.

    Wenn du eine verschachtelung mit Else Case hast fragt er nicht nur ab ob es zutrifft, sondern muss jedesmal noch abfragen was passiert wenns nicht zutrifft.
    Lässt man das Else weg, so muss der Maker nur abfragen obs Zutrifft:Ja/Nein aber kein extra Else. Mit Else wäre Resourcenfressender wenn nicht der erste Fork gleich zutrifft.

    Damit der Maker nicht 999 Forks durchgehen muss wenn die Erste zutrifft, kann man folgendermaßen lösen:
    1.Per Label, ganz unter alle Forks machst du ein Label, nennen wir es "Hier weiter Rechnen" nun kopierst du in jede Fork nur noch unter den Code im Fork ein Jump to Label "Hier weiter Rechnen".
    Somit würden nicht immer alle Forks abgefragt werden, wenn der erste zutrifft.
    2.Oder man macht nach den Forks falls sowieso kein Eventcode mehr folgt , den Befehl End Event Prozessing (Nicht Erase Event).
    Mit End Event Prozessing springt die Codeabfrage zum ende des Events. Bei Paralellen Events fängt die abfrage also erneut an.
    3. Benutzte den Elsecase einer Fork nur dann wenn du ihn wirklich brauchst bei deiner Schaltung.
    Hoffe das hilft irgendwie.

    Am besten könnte man dir helfen wenn man wüsste was du umsetzen willst.

    Gruß Bex

    Geändert von Bex (28.10.2012 um 14:30 Uhr)

  9. #869
    @Bex:
    Ganz einfach:

    Code:
    <>If Var[0001] = 1
    ..<>blubb
    :END CASE
    <>If Var[0001] = 2
    ..<>blubb
    :END CASE
    <>If Var[0001] = 3
    ..<>blubb
    :END CASE
    [...]
    <>If Var[0001] = 99
    ..<>blubb
    :END CASE
    bzw. eben
    Code:
    <>If Var[0001] = 1
    ..<>blubb
    :ELSE CASE
    ..<>If Var[0001] = 2
    ....<>blubb
    ..:ELSE CASE
    ....<>If Var[0001] = 3
    ......<>blubb
    ....:ELSE CASE
    ......[...]
    ....:END CASE
    ..:END CASE
    :END CASE
    Ich muss eine einzelne Variable abfragen und abhängig vom Wert eine Aktion ausführen. Welche das ist sei hier mal dahingestellt, da ich die Frage allgemein meine. Abfragen via Pointer sind allerdings natürlich nicht möglich, da die Aktionen keine Variablen als Referenzwert zulassen. (bspw. Tint Screen, Show Picture (ohne Patch jedenfalls), etc.)
    Das Script an dem ich sitze (eine überarbeitete Version des Textsystem aus meinem Szenencontest-Projekt) braucht ca. 99 solcher Abfragen und diese müssen schnell und teilweise parallel zu ein paar anderen Events laufen. Letzteres lässt sich nicht vermeiden, da eben parallel zur Textanzeige auch andere Events laufen. Da der Spaß möglichst auch auf meinem Netbook noch flüssig sein soll, versuche ich nun, die Stellen, die in meinen Augen Knackpunkte sind, direkt zu optimieren soweit dies der Maker zulässt.

    Btw, dein Vorschlag unter Punkt 1 wäre doch im Prinzip das selbe wie die Else-Case-Variante? Oder geht der Maker selbst dann den Rattenschwanz durch, wenn bei "If V[1]=3" tatsächlich 3 rauskommt? Else Case stellt ja soweit ich das bisher verstanden habe genau das sicher: Dass der Maker eben nicht alles durchgeht, sondern nur seine Abfragen macht, wenn eben der "'ansonsten'-Fall" eingetroffen ist und andernfalls zum passenden :END CASE springt, also das, was bei dir das Label bewirkt.

    @Magicmaker:
    Also die Elsecase-Variante, wenn ich das richtig verstehe? Gracias, das bestätigt meine Vermutung. (:
    Sonst würde der Maker auch sehr paradox arbeiten bzw. die ganze elsecase-Funktion ad absurdum führen...

    Geändert von BDraw (28.10.2012 um 16:17 Uhr)

  10. #870
    Elsecase Pyramide sind sollte man besser vermeiden, weil's schnell unübersichtlich wird, und es ist kostet Generel mehr leistung, als wenn man die branches nach einander machen, kombiniert mit entweder einem label oder end event processing (je nach zweck), am ende jeden Fork zu machen.
    z.b.
    fork v = 1
    blablah
    jump to label 1
    end
    fork v = 2
    blabla
    jump to label 1
    end
    ...
    fork v = 99
    blabla
    jump to label 1
    end
    label 1
    blabla (weiterem code)


    Besser, wäre es möglicherweise wenn du aber statt so eine reihe von branches machst, einfach nur ein map event mit 99 seiten machst, gibst den event id in einem variabel rein, und lässt den anderen variabel entscheiden welcher event page ausgeführt werden soll. Ins besondere wenn die werte des variabel von 1 bis 99 gehen, sollte dies um einiges besser sein als ein grosses haufen von branches zu haben

  11. #871
    Bloß in diesem speziellen Fall hab ich ein Common Event, ich könnte also maximal das ganze Messagesystem in MapEvents packen.
    Wobei, wenn ich es schaffe, das auf ein Event zu Begrenzen... hrm...
    Danke auf jeden Fall, der Ansatz hilft mir schon weiter. (:

  12. #872
    Ich bin trotzdem neugierig.
    Was genau wird mit 99 Forks bestimmt/gemacht/ausgelöst? Ohne diese Info kann man nicht sagen ob du es unnötig kompliziert angehst.
    Vieleicht lässt sich das anders machen oder irgendwie aufteilen.
    @Kazesui
    Danke für das Beispiel^^ nicht das sich noch falsche Gerüchte als Eventweissheiten einbürgern.
    Gruß Bex

    Geändert von Bex (28.10.2012 um 17:46 Uhr)

  13. #873
    Mjamm mjamm... weiß jemand, ob und wie man Cherrys 100 Pic Patch und sein Better AEP in eine RPG-RT.EXE bekommt?

    (benutze rm2k3 1.08)

    Geändert von Itaju (05.11.2012 um 00:53 Uhr)

  14. #874
    Ich hoffe, es kann mir jemand helfen. Ich hatte vorher ein kleines Netbook. Darunter liefen die spiele des RPG Maker 2000/2003 wunderbar. Jetzt habe ich einen neuen Laptop und der will mir den Maker unter 64 Bit nicht installieren, weil das Programm unter 32 Bit läuft. Auch die Spiele kann ich dann so nicht spielen. Weiß einer, einen Rat, wie ich den RPG Maker 2000 unter 64 Bit installieren und zum laufen bringen kann?

  15. #875
    Hast du es schon mit "Als Administrator ausführen..." oder mit dem Kompatibilitätsmods versucht ?

  16. #876
    Habe es unter Administrator ausführen gemacht und es läuft jetzt. Gott sei Dank. Jetzt kann ich an meinem Projekt weiter arbeiten.

  17. #877
    Zitat Zitat von Nadja Beitrag anzeigen
    Ich hoffe, es kann mir jemand helfen. Ich hatte vorher ein kleines Netbook. Darunter liefen die spiele des RPG Maker 2000/2003 wunderbar. Jetzt habe ich einen neuen Laptop und der will mir den Maker unter 64 Bit nicht installieren, weil das Programm unter 32 Bit läuft. Auch die Spiele kann ich dann so nicht spielen. Weiß einer, einen Rat, wie ich den RPG Maker 2000 unter 64 Bit installieren und zum laufen bringen kann?
    Sehr merkwürdig, Diablo 2 lief bspw. unter Win7 64-Bit tadellos.

    @Itaju: Cherrys Hyper Patcher oder ein gewöhnlicher IPS-Patcher würd ich spontan mal sagen, die Installations-Reihenfolge spielt allerdings auch eine Rolle.

  18. #878
    Gibt es ein Plugin/Patch, der mir erlaubt, im rm2k3 die Tasten STRG und ALT zu belegen ? Wenn ja: kann mir den bitte jemand schicken ?

  19. #879
    Dazu brauchst du das DynRPG Plugin von Cherry. Hier geht's weiter: http://forum.rpg2000.4players.de/php...hp?f=3&t=98107

  20. #880
    Gibt es eine genauere Abfrage für eine Positionsabfrage wenn man z.Bsp. einen gegensatand auffängt als die X,Y Positionen abzufragen oder arbeitet man dann besser mit der Bildauschnittsabfrage?

    Lg
    Multi-Master1988

Berechtigungen

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