Archiv verlassen und diese Seite im Standarddesign anzeigen : Mehrere kleine/große XP Fragen
Hallo Community.
Ich habe mehrere kleine/große Fragen den RMXP betreffend. Keine meiner Suchanfragen in allem möglichen Foren erzielte Treffer.
1. Wo kann ich mir den RMXP illegal laden? XD ... SCHERZ^^ Ne, ist mir natürlich klar das, dass nicht grad fragwürdig ist.
Ernsthaft:
1. Ich brauche einen Script der es mir ermöglicht ein Intro vor dem Titelbildschirm an zu zeigen.
2. Wahrscheinlich mit 1. verbunden: Einen Script für einen animierten Titelbildschirm.
3. Nur eine kleine Fragen: Was sind eigentlich die Maximal Farben eines Bildes im RMXP?
4. Wie schaffe ich es, mit hilfe eines einfachen Ruby Codes eine Grafik für zB. ein Menü (or what ever) zu laden, damit diese dann angezeigt wird.
5. Wie baue, bzw. finde ich einen Schattenscript (gefunden, allerdings waren alle Links gelöscht, daher frage ich hier an)?
NEU: 6. Ist es möglich die Maximale Level Anzahl zu erhöhen? Wenn ja, wo?
Das wars erstmal.
Ich habe schon ein paar Ruby kenntnisse, also, Codes verstehe ich bis zu einem gewissen Grad.
Danke jedenfalls.
LG Henry
MagicMagor
25.06.2006, 16:01
1. Im Script "main" wird anfangs die aktuelle Scene auf den Titelbildschirm gesetzt
$scene = Scene_Title.new
Dort einfach eine andere Scene-Klasse benutzen (zB Scene_Intro sofern eine solche vorhanden ist), und man hat ein Intro vor dem Titelbildschirm.
2. Wüßte ich jetzt direkt nichts zur hand, gibt es aber sicher auch.
3. 32bit wird maximal unterstützt.
4. Indem du ein Sprite erstellst und dort die Grafik einstellst
$einSprite = Sprite.new()
$einSprite.x = 100
$einSprite.y = 10
$einSprite.bitmap = RPG::Cache.pictures("bildDatei")
Anmerkung: Diese Methode mit globalen Variablen ist idiotensicher, aber mMn extrem schlechter Stil. Eigenes Menü sollte man innnerhalb einer eigenen Klasse machen und dort instance-variables (@ statt $ verwenden) benutzen.
Gut.
1. Funktioniert.
2. Noch nichts gefunden.
3. Danke für die Auskunft.
4. Gut, ich hab das jetzt versucht, allerding funktioniert die letzte Zeile nicht. Natürlich ist alles richtig benannt. Das Problem ist vielmehr, dass ich nicht weiss wo der Code hingehört.
Danke MagicMagor.
LG Henry
MagicMagor
26.06.2006, 10:02
Zu 4:
Es heißt "picture" und nicht "pictures", mein Fehler.
Das kommt natürlich dahin wo du das Bild erstellen willst. Das kann einerseits in einem Call-Script Aufruf innerhalb eines Events sein, oder in einer Scene_Menu-Klasse wenn am anfang alle wichtigen Objekte erzeugt werden. Zu beachten ist nur noch, daß das Sprite, wenn es nicht mehr gebraucht wird "disposed" wird.
$einSprite.dispose
5. Schattenscript? Falls du damit die dynamische Erstellung von Schatten für Objekte und NPC meinst, vergiss es. Das ist zwar technisch möglich, frißt aber unglaublich viel Performance.
Gut, danke MagicMagor.
Ich versuchs gleich mal.
Ich editiers dann rein.
Henry
@MagicMagor
Wird ein so erzeugtes Pictures denn nicht nach ein paar Sekunden vom Garbage Collector wieder gelöst? Wenn ich mich nicht irre war das bei mir so.
MagicMagor
27.06.2006, 08:46
@Kelven
Nein. Der GC löscht Objekte auf die keine Referenz mehr existiert. Wenn ich das Objekt aber in einer globalen Variable (die mit $ beginnen) speichere bleibt diese Referenz solange bestehen bis ich sie selber lösche.
Wenn du das Objekt aber in einer lokalen Variable (die ohne Sonderzeichen beginnen) speicherst, so hast du das Problem, daß diese Variable freigegeben wird, sobald der aktuelle Funktionsaufruf vorbei ist. Die Referenz auf das Objekt verschwindet und es wird vom GC als "löschbar" markiert. Sobald dann der GC Speicher freiräumen muss rückt das Objekt immer näher daran gelöscht zu werden, bis es schließlich vom GC aufgeräumt wird.
Ich vermute, daß dies bei dir das Problem war.
so isses, grundsätzlich sollte man alle nicht mehr benötigten objekte selber an gegebener stelle löschen > der XP ist so schon ein großer performance fresser^^
so, mal zu den fragen:
2. das geht am besten, wenn du ne neue klasse machst und darin Scene_Title und Scene_Map verschmilzt, benötigt wird vor allem die map-update routine und die menü-routine ... unnötiges zeug wie chara-movement und sowas kannst raushauen ... dann einfach ne neue map machen, dort mit ganz normalen events den bildschirm gewünscht animieren und Scene_Title umbasteln, dass gleich die neue map erzeugt wird (am besten direkt die map-id eintragen, dann ist man später für spiel-tests beim neusetzen des startpunkts unabhängig) > allerdings nicht mit klasse Scene_Map sondern der neu erstellten klasse ... voila^^
wennst bis ende des sommers wartest kannst dirs ja aus VoS klauen XD
5. würd ich auch lassen, ist imho ne ziemliche plackerei, die unnötig performance frisst ...
theoretisch müsstest in Sprite_Character (glaub ich oO;;) das ganze anhand von event-positionen und lichtquellen auf der map (zb. events, die eindeutig gekennzeichnet sind - name "licht" oder sowas) berechnen und anzeigen lassen ... am besten nen thread verwenden, sonst ist das ne ruckelorgie sondergleichen^^
@MagicMagor
Stimmt, ich hab da glaub ich nur eine lokale Variable benutzt um das mal zu testen. Dann lag es also daran.
@ani-kun: Danke. Ich versuchs sofort wenn ich zu Hause bin. Gut, Schatten lass ich weg. Ist auch nicht so wichtig. Mich hats nur interessiert.
Hast mir auf jeden fall sehr geholfen. Danke nochmal.
EDIT: NEUE FRAGE OBEN !!!
Henry
6. ist möglich, bin mir jetzt aber nicht sicher wo (grad in der arbeit und hier kein rmxp xD), entweder in Game_Character oder Game_Battler ... denk ich ...
aber warscheinlich müsstest du dann das komplette level-management per ruby machen ... also lvl up und sowas (zumindest sobald das maximal-lvl überschritten wird) ... alles nur theorie, noch nicht ausprobiert (und hab ich auch nicht vor xD)
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.