RPG-Maker Quartier

Hier dreht sich alles um die RPG-Maker-Reihe von ASCII/Enterbrain. Der RPG-Maker ist ein Tool, mit dem du dir dein eigenes kleines Rollenspiel erstellen kannst. Du findest hier alles, was du dazu brauchst. Aber natürlich umfasst die Community noch mehr!
Aktuelle Zeit: Di Mär 03, 2020 2:29

Alle Zeiten sind UTC + 1 Stunde



Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste



Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Mo Jul 25, 2011 20:07 
Hi Leute....
Ich wollte in meinem ADV ein Tagebuch einfügen. Ich habe einen Gegenstand im Inventar der beim Benutzen den Switch 007 Tagebuch benutzen einschaltet und dazu habe ich dann 2 Common Events erstellt :
(Variable 0001 enthält die Anzahl der bereits eingetragenen Seiten)

Das 1.
parallel Prozess 0007:Tagebuch benutzen
<> Messg:Welche Seite willst Du lesen ?
<> Input Number: 2Dg.[0002:Seite lesen]
<> Change Switch: [0008]:Tagebuch öffnen]-ON Set

Das 2.
parallel Prozess 0008:Tagebuch öffnen
<> Change Switch:[0007:Tagebuch benutzen]-OFF Set

<> Fork Optn:Varb[0002]:Seite lesen]-1
<> Show Picture: 1,Tagebuch Seite 1, (160,120)
<> wait : ForKeyPress
<> Erease Picture: 1
<> Change Switch:[0007:Tagebuch benutzen]-OFF Set
<>
<> End Case

<> Fork Optn:Varb[0002]:Seite lesen]-2
<> Show Picture: 2,Tagebuch Seite 2, (160,120)
<> wait : ForKeyPress
<> Erase Picture: 2
<> Change Switch: [0008]: Tagebuch öffnen]-OFF Set
<>
<> End Case

<> Fork Optn:Varb[0002]:Seite lesen]-0
<> Messg: Das ist der Buchdeckel
<> wait : ForKeyPress
<> Change Switch: [0008]: Tagebuch öffnen]-OFF Set
<>
<> End Case

<> Fork Optn:Varb[0002]:Seite lesen]-V[0001]abov
<> Messg: Diese Seite ist noch leer
<> wait : ForKeyPress (***)
<> Change Switch: [0008]: Tagebuch öffnen]-OFF Set
<>
<> End Case


Das lesen der Seite 1 und 2 funktioniert, auch die Message, das Seite 0 der Buchdeckel ist.
Jedoch um Falscheingaben zu verhindern...ist der letzte Teil und da....
Wenn ich eine Zahl eingebe die höher ist als die V[0001] (also die Anzahl der vorhandenen Seiten) dann zeigt mir der Messenger "Diese Seite ist noch leer" an und wiederholt das dauernd. Wenn ich jedoch nach dem wait befehl (mit dem *** gekennzeichnet) die variable [0002]: Seite lesen änder auf z.b. 0 , um zu verhindern, das diese Fork-Chase strecke wiederholt wird, gibt es noch schlimmere Ergebnisse.
Auch hab ich festgestellt, das wenn ich zwischen den Seiten immer hin und her springe (im Test) das sich die dann manchmal ohne Eingabe wiederholen. Kann mir da jemand ein Tipp geben, wie ich die Abfrage ändern kann um Falscheingaben zu vermeiden ?
Bitte keine Lösung, bei der ich Patchen muss. Falls Schreibfehler in der Abschrift der Events vorhanden sind, ist das versehentlich.


Zuletzt geändert von Varimos am Di Jul 26, 2011 5:23, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Offline
Wolkenmaler
Wolkenmaler
Benutzeravatar
Beiträge: 948
Alter: 23
Wohnort: Silent Hill or Tears
BeitragVerfasst: Mo Jul 25, 2011 20:52 
Hallo erstmal,

Leichte Methode eines Tagebuchs:
Es wär viel leichter wenn du einfach die Leichte Methode benutzt und zwar du Drückst zumbeispiel 1 (Ist nur beispiel da du das Wort Fork benutzt sehe oder besser glaube ich das du den 2000er benutzt und da musst du das mit Patch machen soweit ich das weiß^^).
Also weiter wenn du 1 gedückt hast kommt die Erste Seite dann machst du Wait (keine Ahnung wie das im 2000er heißt) und da stellst du ein das das Wait solange bleibt bis man irgendeine Tasten drückt. Wenn eine Taste gedrückt wird kommt die Nächste Seite und das soweiter.....
Kommt drauf an wie viele Seiten du hast^^

Die sache die du machen willst ist etwas zu kompliziert für mich^^
Da ich mit Pics net wirklich klar komme^^

MFG Soul

_________________
Bild


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Kleiner Prinz
Kleiner Prinz
Benutzeravatar
Beiträge: 272
Alter: 29
Wohnort: Berlin
BeitragVerfasst: Mo Jul 25, 2011 21:06 
Ich kann's mir schlecht vorstellen, wenn ich die Events so lese.

Ich würd's vielleicht etwas anders machen:

Alternativer Lösungsvorschlag zur Umsetzung eines Tagebuchs
Das Tagebuch startet immer bei Seite 0 (also dem Buchdeckel)
Dann kommt eine Tastenabfrage: 1 (Pfeiltaste links) und 4 (müsste Pfeiltaste rechts sein) werden dann benutzt zum Blättern. Bei Seite 0 und der jeweils aktuell letzten Tagebuchseite musst du dann immer verhindern, dass der Spieler nach links (Seite 0) oder nach rechts (letzte Seite) blättern kann, da ja dort jeweils nichts ist.

Wenn du möchtest, dass der Spieler dann auf eine bestimmte Seite springen kann, müsstest du mit Labeln arbeiten.
Wenn der Spieler Seite 5 auswählt, muss eben zu Laben 5 gesprungen werden. (Eigentlich Label 6, da Label 1 ja Seite 0 ist)

Beispiel:
Seite 0 - Label 1
Seite 1 - Label 2
Seite 2 - Label 3
Seite 3 - Label 4
Seite 4 - Label 5
Seite 5 - Label 6
etc.


Patchen ist definitiv nicht notwendig, lass dir nichts erzählen.

_________________
Bild


Zuletzt geändert von Drake am Di Jul 26, 2011 0:24, insgesamt 1-mal geändert.

Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Mo Jul 25, 2011 21:21 
Danach hatte ich ja nicht gefragt und das Problem ist, das ich bereits 54 Seiten mit dem Tagebuch fertig habe und diese nicht als Text, sondern als Picture vorliegen ... und 54 Seiten immer vorblättern ist einfach zu langwierig, ich könnte zwar das Menü erweitern --> zum letzten Eintrag gehen, aber ich habe dieses Problem auch bei anderen Input - Fork abfragen. Also brauch ich genau für dieses System eine Lösung....
Es ist übrigenz der 2003 er


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Pseudo-Elitär
Pseudo-Elitär
Benutzeravatar
Beiträge: 1408
Alter: 33
Wohnort: Dort wo's nicht brennt im Grünen~
BeitragVerfasst: Mo Jul 25, 2011 23:13 
Dein Code ergibt überhaupt keinen Sinn. Wieso nimmst du Parallell Processes? Stelle das ganze auf Call Event. So kommen solch seltsame Wiederholungsfehler nicht. Außerdem immer einen Wait in einen PP einbauen. In welcher Form auch immer.
Ich kann auch irgendwie deinen Aufbau nicht ganz nachvollziehen. Im letzten Teil steht auch ein "<> wait : ForKeyPress (***)". Der Wait muss weg. Und was sollen die Sternchen heissen?
Im Groben kann ich aber keinen Fehler entdecken, der das von dir genannte Problem auslösen könnte. Schon allein, da der Teil, der PRobleme mach, fast genauso aufgebaut ist wie der Rest, welcher funktioniert. Da muss es an anderer Stelle hapern.

Du könntest zur Not auch ein Projekt mit den entsprechenden Events hochladen, damit man sich das Ganze mal im Maker ansehen kann. Ich kann deinem Code nicht wirklich folgen.

_________________


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Di Jul 26, 2011 5:18 
Naja es ist nicht so schlimm, wenn Sie etwas nicht verstehen. Einstein hat auch nicht alles verstanden, aber jemand deswegen gleich massregeln ist eine recht schlechte Eigenschaft.
Zu dem Call ... wie kann ich ein Common Event, das mit Call gekennzeichnet ist aufrufen ?
Es überprüft doch gar nicht die Bedingung, das das Item "TageBuch" welches den Switch ein schaltet gesetzt ist.
Erklär mir das mal bitte.
Das mit dem Hochladen ist eine Schlechte Idee, da ich ein Stick mit SurfFlat nutze und die Geschwindigkeit gebremst ist (Download 7kb/s Upload weis ich nich)
Die Sternchen habe ich dort nur hier nachträglich eingetragen, um auf die Zeile hinzuweisen.
Das die Zeile fehl am Platz ist liegt daran, das ich dort später die Message rausnehme und ein Picture einsetzte (Ebenso beim Buchdeckel, den ich immernoch nich so richtig fertig habe) und da muss ich ja warten bis eine Taste gedrückt wird, da kein Mensch so schnell lesen kann
Show Picture ...
Erease Picture ...
Das währ ja nur ein aufblitzen, wenn man da überhaupt etwas sieht.


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Attention-whore
Attention-whore
Benutzeravatar
Beiträge: 1925
Alter: 29
BeitragVerfasst: Di Jul 26, 2011 11:08 
Zitat:
Zu dem Call ... wie kann ich ein Common Event, das mit Call gekennzeichnet ist aufrufen ?
Es überprüft doch gar nicht die Bedingung, das das Item "TageBuch" welches den Switch ein schaltet gesetzt ist.
Erklär mir das mal bitte.


Ein Call-Event wird mit dem "Call Event"-Befehl (3.Seite, Rechts, 4. von unten) aufgerufen. Dabei werden dann allerdings auch alle Startbedingungen ignoriert, dass heißt, dass du sie schon vor dem Call-Befehl prüfen musst. Der Maker geht dann einfach davon aus, dass die Startbedingungen richtig sind, weil der Makerer weiß ja, was er tut ;) Aber vorallem: Das Event startet niemals von alleine, du musst es ihm schon sagen, dem Programm ist es dann aber auch egal, ob die Startbedingungen stimmen oder nicht.
Dass Event selbst muss dabei allerdings nicht unbedingt auf Call stehen, nur das verhindert es halt, dass es auch anders aufgerufen werden kann, als durch Call-Events. (vorallem dann gut, wenn man Programme teilen oder es einfach nur übersichtlicher haben will^^)

Zitat:
Show Picture ...
Erease Picture ...
Das währ ja nur ein aufblitzen, wenn man da überhaupt etwas sieht.


Für die Zeit stell einfach mal kurz eine komplett Transparente Textbox ein und lass sie ohne Text zwischen den beiden Befehlen auftauchen, am besten nur unten mit dem Pfeil. Dann kann der Spieler erstmal zu ende lesen und wenn er dann weiter machen will drückt er einfach Enter. Das ist zumindest die Elegante lösung und vorallem sieht der Spieler dann auch, dass er die Eingabetaste drücken soll, wenn unten der kleine Pfeil zu sehen ist ;)

Aber ansonsten, dass was Nagasaki erzählt hat stimmt schon so.
PPs sollten möglichst immer vermieden werden, wenn es auch anders geht, weil sie das Spiel nur unnötig belasten und vorallem sollen immer Wait-Befehle rein um dem Ressoursen fressenden Prozessen Einhalt zu gebieten und dass ist nicht unbedingt eine Massregelung sondern vielmehr ein Hinweis auf das, was generell Probleme machen kann^^ Und wenn sich ein Teil im Script immer wiederholt, dann liegt das Problem in der Regel immer bei den Startbedingungen eines PPs, eines Autostart-Events oder an Events, die die Startbedingungen dafür setzen (und unter umständen kann da auch eine lange Kette entstehen^^ Du solltest also nach möglichkeit immer ganz vorne anfangen, wenn du solche Probleme vorfindest und dir evtl die Konstellation von Variablen und Switches aufschreiben, wenn das Programm nciht allzu riesig ist)


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Pseudo-Elitär
Pseudo-Elitär
Benutzeravatar
Beiträge: 1408
Alter: 33
Wohnort: Dort wo's nicht brennt im Grünen~
BeitragVerfasst: Di Jul 26, 2011 13:53 
Ich weiss auch nicht wo dein Problem ist. Ich habe lediglich Fakten aufgezählt und Fragen gestellt um den Fehler nachvollziehen zu können. Sachlich nüchtern und ohne in irgendeiner Art und Weise angreifend zu werden. Dann zuzumachen und verbal in die Defensive zu gehen finde ich da etwas unhöflich. Du musst da etwas falsch verstanden haben. In dem Fall tut es mir Leid. Ich wollte nur helfen. Meine Absicht war es nur mit möglichst wenigen Worten die genaueren Umstände zu erfragen. Alles, was ich schrieb, meinte ich wortwörtlich so.

Dein Eventaufbau ergibt so wie er ist einfach keinen Sinn, da dieser nicht effektiv sondern unpraktisch ist. Genauere Problemzonen hat dir Miu ja bereits genannt. Du postest zwar einen Code, aber du schlesst mit deiner Erläuterung bereits aus, dass dort der Fehler stecken könnte. D..h., dass du dich beim Posten des Codes vertan hast oder es eben an anderer Stelle zu diesem Fehler kommt.

Dass du nun kein Projekt hochladen kannst, hast du ja bereits erläutert. Das kann ich natürlich nachvollziehen.
Anders weiterhelfen kann man dir dann nurnoch, wenn du nochmal genau nachschaust, welche Events alle mit deinem Tagebuch zusammenhängen und diese nochmal geordnet hier aufführst. Mir hilft es in dem Fall immer, wenn ich das Ganze nochmal auf einer leeren Map oder sogar in einem ganz neuem Projekt nachbaue, damit keine Konflikte mit anderen Events zustande kommen.
Die beste Lösung wäre es aber nochmal alles neu zu machen. Mit deinem jetzigen Aufbau kommst du auf keinen grünen Zweig. Das wäre, als wolltest du mit dem Duschkopf das Klo spülen, während das Wasser läuft. Und das ohne den Boden nass zu machen. Übrigens sitzt du noch auf der Schüssel. So in etwa ist dein Code aufgebaut. Steh einfach auf und betätige die Spülung. Das ist wesentlich effektiver.

_________________


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Mi Jul 27, 2011 7:13 
Also ich hab jetzt das 2. Event, welches die eingegebene Seite überprüft und dementsprechend diese auch als pic anzeigt zu einem Call Event geändert und dementsprechend das 1. angepasst. Nun kommen diese Wiederholungen nicht mehr. Ich habe auch den Tipp beachtet mit der leeren Messagebox, sodas ich den kleinen blinkenden Pfeil habe, der anzeigt, das des Projekt auf eine tasteneingabe wartet.
So funktioniert das schon mal, jedoch habe ich nun das Problem, das die angezeigten Bilder nicht gelöscht werden.
Dabei sieht der ablauf so aus, wo ich meine da liegt der Fehler

<> Show Picture: 1, Tagebuch Seite 1, (160,120)
<> Set Message Options:Trans, Bottom, Fixed, Continue Events
<> Message:
<> Erase Picture: 1

Kann es sein das hier die Message verhindert, das das Bild gelöscht werden kann ?


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Pseudo-Elitär
Pseudo-Elitär
Benutzeravatar
Beiträge: 1408
Alter: 33
Wohnort: Dort wo's nicht brennt im Grünen~
BeitragVerfasst: Mi Jul 27, 2011 15:15 
Also, bei mir funktioniert dieser Aufbau einwandfrei.

_________________


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Mi Jul 27, 2011 18:36 
und ich dachte schon ich werde langsam senil...
Bei meinem Maker funktioniert das nicht, selbst wenn ich ein neues Projekt aufmache und nur 2 Felder einen mit Startposition und einen mit nem Event das bei berührung anspringt und nur diesen Aufbau enthält...
Das Bild wird einfach nicht gelöscht ...
Wenn ich aber komischerweise nochmal rauf gehe wird es gelöscht und wartet das ich eine Taste drücke ....
Ich werd nochmal wahnsinnig, is ja wie auf der Enterprise, wenn der Computer irre wird.
Vielleicht brauch ich doch irgendein batsch, welche währen denn erforderlich ?
Ich hatte mir dieses Ultimate Ding runtergeladen, aber das patcht ja nich sondern, man muss es irgendwie reinbauen und mit Lua kenn ich mich nun gar nicht aus.


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Attention-whore
Attention-whore
Benutzeravatar
Beiträge: 1925
Alter: 29
BeitragVerfasst: Mi Jul 27, 2011 18:57 
du brauchst dafür überhaupt keinen Patch, weil es genau so funktioniert und ich denke mal nicht, dass sich jemand die Mühe gemacht hat, einen Patch zu bauen, der genau das gleiche wie der Maker selbst macht^^

Aber versuch einfach mal, das ganze ohne den Set-Message-Options-Befehl zu machen, also so einfach wie möglichst und wenn das nicht klappt, dann setz mal zwischen jedem Befehl eine Textbox mit einem bestimmten Text um zu schauen, bis wohin deine Events überhaupt kommen bevor sie abbrechen oder um zu schauen, dass der Befehl nicht zu oft ausgefühlt wird


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Mi Jul 27, 2011 20:29 
Hm ok Textboxen zwischensetzen für ne Fehlersuche ist eine ziehmlich gute Idee danke :)
Nun hab ich gerade was anderes was komisch ist...
Ich hab ein Event gelöscht, welches ganz am Anfang meines Projektes läuft und mir den Buchdeckel des Tagebuches zeigte. Ich wollte das später woanders einbauen. Als ich nun einen Teststart machte wird das Event, welches ich löschte trotzdem ausgeführt; d.h. des zeigt mir den Buchdeckel an.
Als ich im Maker nachschaute ... es existiert auf der Map kein , ich wiederhole kein einziges Event.
Ich hatte in dem Event mit dem Buchdeckel am Ende ein Move und anschliessend ein Teleport eingebaut.
Komischerweise läuft das, wenn ich ein neues Spiel im Testlauf starte auch ab, obwohl es im Maker gelöscht ist.
Ich habe das Projekt kopiert und die Kopie nochmal geöffnet (um eine 2. Arbeitsmaske zu haben)
und alle Common Events gelöscht - Gleiches Ergebnis, es läuft ein Event, welches gelöscht wurde.
Kennt einer so etwas ?


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Attention-whore
Attention-whore
Benutzeravatar
Beiträge: 1925
Alter: 29
BeitragVerfasst: Mi Jul 27, 2011 21:15 
Das kann eig nicht sein, da sollte man einfach mal ne Kopie vom Spiel machen und dann alle Common Events löschen und dann die Events auf der Karte der Reihe nach entfernen und immer ein Testspiel machen um zu schauen, welche das auslöst. Aber ohne das Projekt vor sich zu haben kann man da keine gute Fehlerprognose abgeben außer zu sagen, dass das Event doch noch irgendwo zu sein scheint^^


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Alex
Alex
Beiträge: 8
BeitragVerfasst: Mi Jul 27, 2011 21:42 
Also nachdem ich nun graue Haare bekommen habe und meine Kinder mich ausgefragt haben, warum ich mit dem Monitor so laut rede... Hab ich den ganzen Rtp und Rpg Quark deinstalliert und neu installiert.
Ebenso habe ich die Rpt exe, von dem Demospiel für mein Projekt genommen und puff ... alle Kopieen meine Projektes (in verschiedenen Fassungen) funktionieren.
Selbst die ganz erste, wegen der ich eigendlich in dieses Forum gekommen bin. Hab keine Ahnung wieso.

Kann man den Nummerischen Wert einer Variable eigendlich in eine Message einbinden ? Ich hab zwar eine Lösung mit ForK - Else Schleifen und Minibilder für die Ziffern um das als Pic anzuzeigen
(+andere Variablen für die Position), aber ich glaube dieser Ablauf, wird irgendwann die Ressourcen überschreiten und alles ausbremsen.

In Basic konnte man das einfach mit dem Print befehl machen
Print Pos(160,120)"Variable a hat folgenden Wert :";a


Zuletzt geändert von Varimos am Do Jul 28, 2011 11:15, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste

Alle Zeiten sind UTC + 1 Stunde


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de