Ergebnis 1 bis 18 von 18

Thema: Mapnamen einblenden

  1. #1

    Mapnamen einblenden

    Hi,

    wie bekomme ich es hin, das beim wechseln der Karte der jeweilige Name eingeblendet wird ? Habe das Thema schon gegoogelt und auf einer Seite wird ein Skript dazu angeboten. Allerdings ist dieses Skript der Threadbeschreibung zu folge für den RPG Maker VX. Habe auch keine Ahnung davon wie man Skripte überhaupt verwenden muss, damit sie funktionieren. Müssen die Dateien einfach nur im Ordner liegen oder was muss damit passieren. Weiß auch nicht ob das gefundene Skript überhaupt bei jedem Maker funktioniert.

    Müsste mich wenn ich die Datei haben will, auch erst mal auf der Seite anmelden, was ich auch nicht mal einfach so tun will, ohne zu wissen was ich da überhaupt bekomme.

    Ist das schwierig so ein Skript für den RPG Maker 2003 selbst zu schreiben ? Gibt es da noch andere Lösungsansätze ? Ich habe echt Null Ahnung von der Erstellung von Skripten, wie so ne Datei aufgebaut sein muss oder was da für Befehle drinn stehen müssen.

    Falls mir jemand ein solche Skript für den RPG Maker 2003 zur Verfügung stellen könnte wäre ich echt dankbar :-)

  2. #2
    Das haben wir dir bei der Wahl des Makers doch erklärt. Echten Support für Scripte erhältst du halt ab dem XP (XP und VXA Ruby, Javascript beim MV).

    Beim 2003er würde es sich wahrscheinlich anbieten, den Namen einfach per Bild einzublenden.

  3. #3
    Also beim Ace geht das von Haus aus, wenn man den Namen bei den Mapeinstellungen einfach bei Name der Map eintippt.

  4. #4
    Zitat Zitat von Linkey Beitrag anzeigen
    Das haben wir dir bei der Wahl des Makers doch erklärt. Echten Support für Scripte erhältst du halt ab dem XP (XP und VXA Ruby, Javascript beim MV).

    Beim 2003er würde es sich wahrscheinlich anbieten, den Namen einfach per Bild einzublenden.
    Und meine Antwort war, dass ich mich erst mal ein wenig ausprobieren möchte und mir daher erst mal einen günstigeren Maker kaufe. Heisst ja jetzt nicht das ich absichtlich gegen besseres Wissen den 2003er wollte. Wie genau mache ich das mit dem einblenden von Bildern. Das würde mir ja im Prinzip schon genügen. Wenn ich ohne Skripte arbeiten kann, werde ich dann kann ich Sie auch weg lassen in sofern sie nicht zwingend erforderlich sind.

  5. #5
    Es gibt einen "Show Picture" Eventbefehl. Dort kannst du dann etwas mit der Positionierung des Bildes rumspielen, welches du da auswählen kannst. Danach einfach ein Wait, dann Remove Picture und dann ein Switch, der das Event "abschaltet". Und dann beim Betreten oder Verlassen der Map den Switch nochmal umstellen, damit es beim nächsten Mal wieder angezeigt wird.

    Ggf. ist es auch sinnvoll, sich andere Spiele mit demselben Maker zu holen und da mal zu schauen, wie andere Leute irgendwas umgesetzt haben, was dich interessiert. In den alten Makern ist z.B. so ziemlich jedes "eigene" Menü zumindest teilweise über Show Picture implementiert.

  6. #6
    Zitat Zitat von Caledoriv Beitrag anzeigen
    Es gibt einen "Show Picture" Eventbefehl. Dort kannst du dann etwas mit der Positionierung des Bildes rumspielen, welches du da auswählen kannst. Danach einfach ein Wait, dann Remove Picture und dann ein Switch, der das Event "abschaltet". Und dann beim Betreten oder Verlassen der Map den Switch nochmal umstellen, damit es beim nächsten Mal wieder angezeigt wird.

    Ggf. ist es auch sinnvoll, sich andere Spiele mit demselben Maker zu holen und da mal zu schauen, wie andere Leute irgendwas umgesetzt haben, was dich interessiert. In den alten Makern ist z.B. so ziemlich jedes "eigene" Menü zumindest teilweise über Show Picture implementiert.
    Falls das Bild jedes Mal beim Betreten angezeigt werden soll brauchst du sogar gar keinen Switch, ein "Erase Event" reicht da völlig.

  7. #7
    Zitat Zitat von BDraw Beitrag anzeigen
    Falls das Bild jedes Mal beim Betreten angezeigt werden soll brauchst du sogar gar keinen Switch, ein "Erase Event" reicht da völlig.
    Genau das. Und an dieser Stelle das Ganze am besten per Common-Event. Dann musst du auf jeder Map einfach nur das gleiche Event einfügen, welches dein Common_Event aufruft.
    Dort kannst du dann per Variable = Map_ID und anschließender Abfrage die verschiedenen Bilder anzeigen.
    Wenn ich das richtig in Erinnerung habe, kannst du zumindest die Positon des Bildes per Variablen setzen. Demnach reicht es, am Anfang eine X und eine Y Variable zu setzen und dann im Show_Picture Befehl zu verwenden. Wenn du dann etwas nachjustieren musst, kannst du es mit 2 Klicks für alle machen.

    Wenn du dann das Event ändern möchtest, brauchst du nicht jedes Event anpassen, sondern nur das Common.

  8. #8
    Danke für die Antworten. Werde mal schauen das ich das so alleine hin bekomme. Muss nur noch schauen das ich die Grafiken weder zu groß, noch zu klein gestalte.

    @ B Draw

    Ja, es handelt sich um Straßennamen bzw. Namen von Orten oder Plätzen. Die sollen jedes Mal eingeblendet werden wenn man die Map betritt. Die Grafik müsste dann ungefähr für ca. 3 - 5 Sekunden lang angezeigt werden, damit der Spieler weiß wo er gerade ist. das wird dem Spiel hoffentlich auch noch ein wenig mehr Atmossphäre verleihen.

    Und wegen dem von anderen Spielen abschauen wie es genau geht:
    Ja, auf die Idee kam ich auch bereits. Aber in dem Spiel wo ich es gesehen hatte, waren die Dateien gepackt, sodass ich die nicht einsehen konnte.

    Hier mal noch ne Beispielgrafik. Die muss evtl. noch etwas kleiner werden. Keine Ahnung wahrscheinlich halb so groß in etwa.

    Klicke auf die Grafik für eine größere Ansicht 

Name:	Dorfplatz.png 
Hits:	13 
Größe:	6,5 KB 
ID:	24764

  9. #9
    Sieht ganz Knorke aus

  10. #10
    Danke für das Lob. Naja, mit Paint in einer Minute schnell mal gebastelt. Wenn die altdeutsche Schrift lesbar sein sollte nehme ich evtl. auch klassische weiße Schilder. Mal schauen.

  11. #11
    Also ich habe die das Schild jetzt hinbekommen. Es hat eine für mich akzeptable Größe und erscheint dort wo es erscheinen soll. Es waren sogar noch weniger Befehle nötig als gedacht.

    Das einzige was noch nicht funktioniert ist das ausblenden des Schildes. Es sollte eigentlich wie geschrieben nach spätestens 5 Sekunden verschwinden. Das tut es jedoch, trotz Timer nicht. Mich würde es nicht stören wenn das Schild sich nicht ausblendet, aber es könnte später nervig werden, falls ich irgendwelche Events in irgendwelchen Ecken platzieren. Somit wär es besser wenn es nach ner gewissen Zeit verschwindet. Habe beim Timer beide Felder ausprobiert, aber es tat sich nix. Das linke Feld ist ja für Minuten und das rechte für Sekunden.

    Das Event funktioniert wie folgt:

    Postion des Events oben links im Bild

    - Show Picture
    - Postion X 60 Y20
    - Use Transparent Color ist aus wegen der Farben
    - Beim Timer habe ich wie gesagt keine Ahnung
    - Erase Event

    @ Caldorivritter:
    Also in dieser Variante wird es auch jedes Mal erneut angezeigt.


    Klicke auf die Grafik für eine größere Ansicht 

Name:	Straßenschild ingame.jpg 
Hits:	11 
Größe:	478,5 KB 
ID:	24765

    Geändert von kaiyne (03.08.2018 um 19:38 Uhr)

  12. #12
    Da fehlt der Befehl, der das Bild löscht - "Erase Picture". Am einfachsten wäre:

    <>Show Picture ID: [20], (60|20), Transparency: 100%
    <>Move Picture [20], Transparency: 0% (Wait)
    <>Wait (5.0)
    <>Move Picture [20], Transparency: 100% (Wait)
    <>Erase Picture
    <>Erase Event

    ...mal so in Pseudo-Eventcode. Das Anzeigen bei 100% Transparenz + bewegen auf 0% Transparenz bewirkt, dass das Bild sanft eingeblendet wird, der Haken bei "wait" im Move Picture bewirkt, dass der Maker abwartet, bis die Bewegung fertig ist, ehe es weiter geht. Dann sagst du dem Maker, dass er 5 Sekunden warten soll, ehe du die Transparenz wieder erhöhst.
    Wichtig ist, dass du dann das Bild löscht, da es sonst angezeigt bleibt (wenn auch unsichtbar), was zu Problem mit anderen Events oder der Performance führen kann, je nachdem, was du sonst so machst.
    Anschließend Erase Event und fertig.

  13. #13
    Der "wait Befehl" sorgt allerdings auch dafür, das auch der Charakter zu warten hat. Und dann merkt man erst mal wie lange es dauert bis 5 Sekunden vorbei sind. Das ist supoptimal. Habe das ganze jetzt mal mit 0,5 und 0,8 Sekunden getestet. Bei 0,8 Sekunden bleibt das Schild gerade noch solange aktiv dass das menschliche Auge es als "lesbar wahrnehmen" kann. Aber selbst lausige 0,8 Sekunden bemerkst du noch beim Mapwechsel, wenn der Charakter kurz stoppt. Das gefällt mir so noch nicht.

  14. #14
    Du brauchst 2 Events:

    Inhalt Event 1 (Trigger "Autorun"):
    - Bild einblenden
    - Timer auf gewünschte Zeit setzen
    - Timer starten
    - Switch setzen, dass Timer gestartet wurde.
    - Event löschen

    Inhalt Event 2 (Trigger "Parallel Process"):
    - Unter "Conditions" Switch für Timerstart angeben
    - Mittels "Conditional Branch" den Timer abfragen - > Sobald dieser den Wert 0 ("or less") hat, das Bild ausblenden und löschen, Switch zurücksetzen
    - Als letzten Befehl einen Wait mit 0 Sekunden eintragen, damit es auf schwächeren PCs nicht zu Blockaden kommt

  15. #15
    Zitat Zitat von kaiyne Beitrag anzeigen
    Der "wait Befehl" sorgt allerdings auch dafür, das auch der Charakter zu warten hat. Und dann merkt man erst mal wie lange es dauert bis 5 Sekunden vorbei sind. Das ist supoptimal. Habe das ganze jetzt mal mit 0,5 und 0,8 Sekunden getestet. Bei 0,8 Sekunden bleibt das Schild gerade noch solange aktiv dass das menschliche Auge es als "lesbar wahrnehmen" kann. Aber selbst lausige 0,8 Sekunden bemerkst du noch beim Mapwechsel, wenn der Charakter kurz stoppt. Das gefällt mir so noch nicht.
    Hast du das Event als Parallel Process eingestellt? Dann sollte es funktionieren. Als Autostart würde es alle anderen Events blockieren, das ist für deine Zwecke ungeeignet.

  16. #16
    hi ho,

    danke für eure Hilfestellung. Habe es jetzt mit einem Event als "Parallel Process" hinbekommen. Das Event benötigt jetzt nur noch den letzten Feinschliff. Die Frage ist jetzt halt noch wie lange ich das Schild maximal eingeblendet lasse, ohne das es dem Spieler nervt. Und ja, mir ist dabei durchaus bewusst, das es auch Spieler geben wird die das Schild vielleicht gar nicht mögen oder brauchen werden :-)

    Die Andere Geschichte ist halt noch die, die Optik des Schildes evtl. nochmals nach zu bessern, sodass es noch mehr dem Auge wohlgefällig ist.

  17. #17
    Zitat Zitat von kaiyne Beitrag anzeigen
    hi ho,

    danke für eure Hilfestellung. Habe es jetzt mit einem Event als "Parallel Process" hinbekommen. Das Event benötigt jetzt nur noch den letzten Feinschliff. Die Frage ist jetzt halt noch wie lange ich das Schild maximal eingeblendet lasse, ohne das es dem Spieler nervt. Und ja, mir ist dabei durchaus bewusst, das es auch Spieler geben wird die das Schild vielleicht gar nicht mögen oder brauchen werden :-)

    Die Andere Geschichte ist halt noch die, die Optik des Schildes evtl. nochmals nach zu bessern, sodass es noch mehr dem Auge wohlgefällig ist.
    Das würde ich beides als "Polishing" betrachten, d.h. lass es erstmal so, wie es ist. Solche Kleinigkeiten halten normalerweise eher auf und Änderungen bringen nur wenig Mehrwert, brauchen aber Zeit.

    Sobald du mal Feedback von Spielern bekommst (z.B. Betatester), erfährst du ja, wie es den Leuten gefällt. Ggf. kannst du dafür eine Liste anlegen mit allen Sachen, für die du gerne eine Rückmeldung hättest. Jetzt würde ich noch nicht versuchen, alles "perfekt" zu machen - das beansprucht nur Zeit und sobald du Feedback bekommst, ist es sowieso sehr wahrscheinlich, dass nochmal Sachen geändert werden.

  18. #18
    Zitat Zitat von kaiyne Beitrag anzeigen
    hi ho,

    danke für eure Hilfestellung. Habe es jetzt mit einem Event als "Parallel Process" hinbekommen. Das Event benötigt jetzt nur noch den letzten Feinschliff. Die Frage ist jetzt halt noch wie lange ich das Schild maximal eingeblendet lasse, ohne das es dem Spieler nervt. Und ja, mir ist dabei durchaus bewusst, das es auch Spieler geben wird die das Schild vielleicht gar nicht mögen oder brauchen werden :-)

    Die Andere Geschichte ist halt noch die, die Optik des Schildes evtl. nochmals nach zu bessern, sodass es noch mehr dem Auge wohlgefällig ist.
    Wenn du eine schnelle Lösung möchtest, ohne, dass du ein eigenes Menü brauchst:

    1. Erstelle ein Item, das einen Switch "Mapname on/off" aktiviert (ich weiß nicht auswendig, wie der Itemtyp heißt, aber es ist soweit ich es im Kopf habe eine der letzten Optionen in der Liste). Dieses Item bekommt der Spieler einfach bei Spielstart.
    2. In deinem Event fügst du nun folgendes hinzu:

    Code:
    <>If Switch [0001:Mapname Itemschalter] = ON
    ..<>Set Switch [Switch 0002: Toggle Mapname] toggle ON/OFF
    ..<>Set Switch [0001] = OFF
    :END CASE
    <>If Switch [0002] = ON
    ..(hier dein bisheriger Eventcode für das Anzeigen des Bildes _ohne_ Erase Event
    :END CASE
    <>Erase Event
    Du gibst deinem Spieler damit ein Item, was dein Anzeigeevent dazu bringt, jedes Mal, wenn dieses Item benutzt wurde, einen Switch von ON zu OFF oder umgekehrt zu setzen - Lichtschalterprinzip, quasi. Ist dieser Schalter an, wird der Mapname eingeblendet. Ist er aus, dann nicht.

    Mit einem eigenen Menü oder etwas ausführlicheren Events kann man das noch eleganter lösen und mit mehr Optionen, aber für den Moment und für deine Zwecke müsste das reichen. Du brauchst bei diesem Aufbau übrigens auch das von Leana angesprochene Wait(0.0) nicht, da das Event ohnehin nie mehr als einmal durchlaufen wird, ehe es sich selbst beendet.

Berechtigungen

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