Weiß nicht ob's richtig ist oder ich das überhaupt darf, aber da es auf unserer Seite ja keine echte Referenzliste für Ruby oder den RMXP allgemein gibt hab' ich mir überlegt das ich wenigstens mal die Standardscripte (Advanced Messagescript und Vollbildmodus) posten sollte - Sachen die man halt standardmäßig braucht, egal was man für ein Spiel macht (naja, fast egal zummindest). Ich habe die Sachen einfach aus meinen Beständen kopiert, weiß auch nicht genau ob das AMS noch aktuell ist. Sollte es illegal sein weil die Sachen nicht von mir sind dann soll ein Mod eures Vertrauens den Thread wieder löschen. Andernfalls wäre es nicht verkert es zu pinnen, denn ich wurde schon öfter nach dem AMS gefragt.
EDIT: Ups, da sind offenbar einige Zeichenketten zu Smilies mutiert. Ich guck besser mal ob ich die Code-Klammern hinkriege...
naja, ich poste erstmal:
AdvancedMessage Script
ReadMe für das AMS
www.dubealex.com (Creation Asylum)
Instruction Manual:
Each of those "commands" are to be used in your message events.
Change the text color temporarly (Default):
\c[ColorID]
Insert the color ID of your choice. All colors are coded in Window_Base starting at line #39, 0 is white.
Change the text color temporarly (Hexadecimal):
\c[#000000]
Enter an Hexadecimal color code as in HTML in there. For example:
#000000 = black
#FFFFFF = white
Show the gold window:
\G
This will show a gold window in the top-right corner of the screen, with the amount of gold the player have in possesion.
Show the hero's name:
\n[HeroID]
Use the hero ID of the hero's name you want to display in the message box.
Show the monter's name:
\m[MonsterID]
Use the monster ID of the monster's name you want to display in the message box. This function was added by Dubealex.
Show an item's price:
\Price[ItemID]
Use the item ID of the item's price you want to display in the message box. This function was added by Dubealex.
Show the current map name:
\Map
This will show the name of the map you are currently on. This function was added by Dubealex.
Show a face graphic in your message box:
\f[FaceName]
FaceName must be the filename of a graphic file found in the directoyr Graphics\Pictures of your RPG Maker XP project. The file must be a PNG of 96X96 pixels. You do not need to write the file extention.
Show the class name of a character:
\Class[HeroID]
Use the hero ID of the hero's class name you want to display in the message box. This function was added by Dubealex.
Show variables, items, weapons, armor and skill names:
\v[xID]
You must replace the x by the first lettter of what you want to modify, it goes as follows:
Variable = Do not write anything, use the standard \v[VariableID]
Items = i + itemID --> \v[iID]
Armors = a + armorID --> \v[aID]
Weapons = w + weaponID --> \v[wID]
Skills = s + skillID --> \v[sID]
Show a name or other info in a name box:
\Name[text]
Use this to show a name box above the message box that will contains the text you specified. You can also use variable and other commands such as "Show hero name" in that name box. As the following example:
\Name[\v[12]] --> Will show the value of variable ID# 12 in the name box.
\Name[Dubealex] --> Will show "Dubealex" in the name box.
\Name[\n[1]] --> Will show the name of hero ID# 1 in the name box.
Modify the text opacity:
\o[Opacity]
Use this to modify the opacity of the text in the message box. Enter a number between 0 and 255, where 255 is fully opaque and 0 is fully transparent.
Modify the text speed:
\s[Speed]
Use this to modify the speed of the text in the message box. Enter a number between 1 and 19, where 19 is the slowest.
Modify the text size:
\h[Size]
Use this to modify the size of the text in the message box. Enter a number between 6 and 32, where 32 is the biggest.
Show the message box above player or events:
\p[Option]
Use this to set the window to appear whether above the player or any event present in your map. Use the following options:
\p[Event ID]
\P[0]
\p[-1]
Using "\p[Event ID]" will put the window on top of the specified event ID.
Using "\p[0]" will put the window on top of the player.
Using "\p[-1]" will make a window without background and without borders.
Add wait in message and other commands like that:
\| --> Wait for 1 second
\. --> Wait for .25 second
\~ --> Auto close window at last letter
\! --> Wait for key input from the player
\\ --> Will show the backslash \ character
Set the letter by letter ON/OFF temporarly:
\< --> Will set it ON
\> --> Will set it OFF
Change the font in a message box (permanent):
\t[FontName]
FontName must be a .TTF found in Windows\Fonts and must be case sensitive. The changes made to the font will be permanent. So remember to do another command to revert it to anything you want. This script now works with the parenthesis, new in R3... So no worry about that ! It's safe now. This feature was added by Dubealex.
Play an SE as the letter are shown (permanent):
\a[FileName]
File must be in directory Audio\SE
Remember to set that effect OFF when you dont need it anymore using \a[] Leaving the brackets empty, or else the SE will be heard on all window from this point on.
Display text as a superscript:
\[First]second
The "FIRST" will be at normal size, and "SECOND" will be a little bit higher on the line, as a superscript.
Allow / Disallow Text Skip button (permanent):
\%
Use this command to toggle the text skip button to whether enabled or disabled. It's useful if you want to control the flow of some stories and you don't want the player to be able to skip the text by himself. Remember that the changes are permanent, meaning that if you use it once to disable the text skip, it will stay like that. Remember to do it once again to revert the text skip to enabled for the rest of the game. Feature added by Dubealex.
Modify the text color of the name box (permanent):
\z[ColorID]
Use this as you use the normal color command \c[ColorID] - But this time it will set the color used in the name box; and the changes will be permanent. So remember to do it once again to change the color back. Feature added by Dubealex.
Change the color of the text in message box permanentatly:
\Color[ColorID]
Use this as you use the normal color command \c[ColorID] - But this time it will set the color used in the message box permanently; meaning you wont have to use a color command on each message event from now on. Remember to do another command like this to revert the color to something you want. Feature added by Dubealex.
Customize other aspects of the AMS:
In the first lines of the AMS, you can customize things.
Those lines help you configure the default you will use in the AMS; so you can now specify the font name and size for both message box and name box independatly, and set their windowskin; which will not affect any other windows as the menus.
You can also set the position and size of the name box, just play with the values and test it. The default are written in the comments aside each line so you cannot "mess" the script up.
I also created an object named $ams that hold all those values for you, and it saves them in your save files, and load them when you load a game. This means that if you changed the font in the middle of your game, save the game, and reload the game, the font will still be the one you specified in the middle of your game -- This would not have worked in any other message script.
You can also access those settings to read or write to them in your game using the ATTR_ACCESSOR I created.
Have fun, and report any bug in this topic. But take note that some bug may occur because of other script, and I may not be able to help if it's the case.
Habs zwar mittlerweile gefunden, aber trotzdem ein Lob an dich das du es doch noch gepostet hast denke mal das man den Thread hier noch erweitern könnte und vorallem Pinnen sollte
Ich möchte noch ein weiteres Script vorstellen, welches meiner Meinung nach in jedes RmXp Spiel hinein gehört.
Es ist natürlich nicht von mir sondern von Near Fantastica aus dem Creation Asylum
Mit dem Anti Lag Script werden "Ruckler" vermieden, die durch Maps mit vielen Events entstehen.
Es funktioniert auch in Verbindung mit anderen Ruby-Scripts die sich auf Events beziehen.
So ruckelt eine große Map mit über 300 Event, die jeweils einen Echtzeit animierten Schatten haben, nicht.
Soviel ich weiss werden damit die Events, die nicht aktive sind und sich nicht im Sichtfeld des Spielers befinden angehalten.
Da bin ich mir jetzt aber nicht sicher und ich kann leider auch kein Ruby.
Das Script muss lediglich in ein Neues Script über Main kopiert werden und arbeitet dann selbstständig.
@Macros: Stimmt, von dem Script hab' ich schon gehört! Ich habe es nie ausprobiert da ich bisher keine Verwendung dafür hatte. Allerdings hatte ich mal Gerüchte gehört die besagten das es in der englischen Verkaufsversion Probleme verursacht hat. Wenn du oder irgendwer anders mir noch schnell bestätigen könnten das es ordnungsgemäß funktioniert würde ich es mit in den ersten Post aufnehmen!
Eine weitere Sache, die für alle hoffentlich bald unentbehrlich wird ist das SDK (Standard Development Kit).
Das Problem ist, daß viele Scripte untereinander inkompatibel sind, weil sie teilweise diesselben Teile der Standardskripte überschreiben. Zwei Skripte zum zusammen arbeiten umzuschreiben ist eine schwierige und mühselige Arbeit. Werden es deutlich mehr als zwei Skripte, steigt der Aufwand ins Extreme und nicht jeder ist so fit in Ruby, daß er das überhaupt machen könnte.
Das SDK ist ein Versuch der RMXP.net Mitglieder, genau dieses Problem zu minimieren. Das SDK splittet dabei die Standardskripte in viele kleine Untermethoden, dadurch wird die Wahrscheinlichkeit, daß zwei Skripte diesselbe Methode überschreiben minimiert.
Die Skripte müssen natürlich mit dem SDK kompatibel sein. Viele der großen Skripter unterstützen das SDK indem sie ihre neuen Skripte SDK-kompatibel rausbringen und auch alte Skripte werden wohl mit der Zeit entsprechend modifiziert.
Das ein Skript SDK-kompatibel ist, wird durch eine kleine Grafik im Anfangspost des entsprechenden Threads auf rmxp.net symbolisiert.
Ich hoffe, das immer mehr Leute das SDK in ihre Spiele einbauen und seine Verbreitung so fördern. Denn wenn immer mehr Skriptbenutzer das SDK verwenden müssen auch die Skriptschreiber zwangsläufig SDK-kompatibel schreiben. Letztendlich spart es allen Beteiligten viel Ärger.
@Lil_Lucy
Leider kann ich dir nicht beweisen, dass es keine Probleme gibt.
Ich habe es zwar in meinem Spiel, aber da ich erst vor kurzen auf den Xp umgestiegen binn, bin ich gerade noch am Scripten für das Ks andere grundliegende Technik. Hier allerdings findest du eine Demo wo gut gezeigt, dass es funktioniert.
Öffne es im Maker und starte auf der Map Lag Test.
Dann kannst du ja mahl das Anti Lag Script löschen und du solltest einen erheblichen Unterschied sehen.
Ich erreiche aus irgendeinem Grund RMXP.net seit einer ganzen Weile schon nicht mehr, auch eure Links gehen bei mir nicht. Dachte bisher die Seite wär das Problem, aber wenn's bei euch geht liegt das Problem wohl bei mir. Werd mal versuchen das zu lösen, dann schau ich mir das Script an!
EDIT: Kriegs einfach nicht hin... Cookies löschen hat nix gebracht und ich weiß nicht worans noch liegen kann. Die Seite will einfach nicht geladen werden, kann mir jemand helfen?
EDITIDITIT: Wie ich sehe wurde ich gepinnt! YIPPIE, das hab' ich mir schon immer gewünscht!!! XD
RMXP.net erreiche ich aber immernoch nicht... Das war beim Creation Asylum auch mal ne Weile so, jetzt gehts wieder. Vielleicht gibt sich dann auch dashier irgendwann, aber vorher kann ich das mit dem SDK nicht nachschauen.
O.K., hier mal was auf eigene Faust, das heist das hab ich mir selber zusammengepfuscht und zwar ohne viel über Ruby zu wissen. Bei mir funktioniert es, aber wer's benutzen will tut das auf EIGENE GEFAHR!!!
Wenn jemand mit Ahnung das liest soll er mir bitte mitteilen was er denkt, ob es unvollständig, fehlerhaft oder gar gefährlich ist (glaub ich eigentlich nicht), dann lösche ich es sofort wieder!
Das ganze soll dem Zweck dienen die Dauer des 'Fade's beim "Playertransfer" (von einer Map zur anderen) zu steuern, und zwar in beliebigen Framezahlen. Das heist, wer will dass das Überblenden zur nächsten Map schnell von statten geht während es an anderer Stelle mal dem Effekt halber länger dauert kann den Wert einfach via Callscript neu setzen.
Um das umzusetzen öffnet man erstmal den Scripteditor des Makers und sucht sich "scene_map" raus. Dort scrollt man ganz runter bis zur Zeile 272! Der Code der dort steht müßte so aussehen:
Die letzte Zeile,
ist die auf die es ankommt. Die in () stehende 20 gibt die Framezahl an die der ganze Spaß dauern soll. Wer den Wert nur einmal einstellen will kann das direkt tun, aber wer ihn desöfteren neu einstellen möchte sollte diese Zahl gegen eine Variable ersetzen, z.B. so:
Dadurch wird statt einer Zahl der in der Variable gespeicherte Wert als Zeitangabe verwendet.
Das kleine Problem ist das es diese Variable nicht gibt, man muß sie also zu Spielbegin erst erstellen. Alternativ könnte man auch eine der In-Game-Variablen ($game_variables[nummer der Variable]) verwenden wodurch man sie direkt via Clickscript modifizieren könnte, das hab ich aber nicht ausprobiert.
Um sie zu erstellen habe ich sie in "scene_title" in unter def "command_new_game" mit eingebaut. Direkt unter "$scene = scene_map.new" einfach "$trans_wait = 20" einfügen, bzw. den namen der Variable die ihr verwenden wollt und den von euch angestrebten Startwert. Das ganze bewirkt dann das eine Variable "$trans_wait" erstellt und auf den Wert 20 gesetzt wird. Bei jedem Playertransfer wird dann der in dieser variable gespeicherte Wert als Frameangabe für die dauer des Fades (sofern dieser eingestellt ist) verwendet.
Allerdings wird diese Variable nur dann erstellt wenn man ein neues Spiel startet. Sollte man das Spiel beenden und einen Speicher laden wird das Spiel beim ersten Teleport abbrechen da es die angeforderte Variable nicht gibt!
Aus diesem Grund muß man dafür sorgen das die variable abgespeichert, und auch geladen wird! Hierzu öffnet man "scene_save" und scrollt ganz runter zu diesen ganzen "Marshal.dump (XX)"-Teilen. Fügt direkt unter dem letzten Marshal.dump einen weiteren ein, der eure trans_wait Variable speichert:
Dadurch wird die Variable mit in die Savefile geschrieben. Um sie laden zu können muß der Maker aber auch wissen das es etwas zu laden gibt, daher muß diese Info auch noch in die "scene_load" aufgenommen werden. Dot also ebenfalls ganz runter scrollen und unterhalb des letzten "Marshal.load" einen weiteren nach dem gleichen Schema einfügen:
Um die Transferdauer jetzt nach belieben einstellen zu können muß man nurnoch "$trans_wait" auf den gewünschten Wert setzen. Das geht mit dem Eventbefehl "Script", der letzte in der Befehlsliste, ganz unten rechts auf der letzten Seite. Hier gibt man einfach folgendes ein:
XX ist dann natürlich die Framezahl, lasst euch nicht einfallen hier Buchstaben einzusetzen, das würde der Maker natürluch nicht verstehen!
Achso: das Ganze hat nur dann Auswirkungen wenn die "Fading"-Option bei "Transfer Player" auf "Yes" steht, sonst nicht!
So, wie gesagt, bei mir hat alles bisher problemfrei funktioniert aber das ändert nichts daran das all das komplett selbst zusammengepfuscht ist, ich übernehmen keinerlei Verantwortung für Fehler und Probleme die dadurch entstehen. Eigentlich, nach allem was ich davon verstehe dürfte es keine Probleme damit geben da nichts weiter getan wurde als einen festen Wert durch eine Variable zu erstetzen und diese zu definieren und abzuspeichern.
Wenn jemand einen Fehler findet, oder einen anderen grund warum ich den ganzen Quatsch lieber wieder löschen sollte, bitte posten!
sieht ganz vernünftig aus, aber da gibts auch nicht viel, dass man falsch machen könnte^^
allerdings denke ich, es wäre sinnvoller eine ingame-variable zu nehmen, da es das modifizieren von save/load ersparen würde ...
Sicher, das hab ich ja auch angedeutet, allerdings ist dashier nicht sooo viel aufwändiger und man spart sich die In-Game-Variable. Nicht dass es da einen Mangel gäbe, aber ich hab's halt so gemacht...
joah, eh egal, mehraufwand ist minimal ~ aber per ingame-variable wärs vor allem für nicht-ruby-fähige leute wesentlich bedienungsfreundlicher, weil sie dann nur ne einfache variable bedienen müssen und kein script ausführen ...
Da die Links im RmXP FAQ Thread bie mir net klappen, könnte mir jemand ein Skript für ein SK oder ein Menü sagen.
Oder mir sagen wie man das Menü umstylt.
Ähm... könntet ihr bitte wenn ihr hier Scripte postet noch etwas ausführlicher werden. Ein paar Angaben zur genauen Funktion (Schattenschrift alleine reicht mir z.B. nicht, um zu wissen/mir vorzustellen wie es letztlich bei mir aussieht) und der Quelle von der ihr's habt. Wenn bekannt währe es auch schön mit anzugeben welche Teile des Standardscriptes überschrieben werden um Kompatibilitätsprobleme zu vermeiden.
Hmm evt könnt ihr mir bei meinem Problem weiterhelfen. Wäre zwar eigentlich kein Problem das ganze auch mit RPG-Maker Scrpits zu lösen wäre aber schon schöner, wenn es so gehen würde wie ich mir das vorstelle und habe für den maker eigentlich keine lust mich mit ruby zu beschäftigen.
bevor ich nur laber folgende problematik besteht:
ich benutze ein 8 Frame Movement System. Dadurch sieht das Savemenü sehr unschönaus, da die Figur im endeffekt zwei mal angezeigt wird, da der Maker das Charset noch immer in nur 4 und nicht in 8 teile unterteilt. was ich im endeffekt bräuchte wäre, dass das ganze so umgeschrieben wird, dass die Battle-Grafik eines Spielers im Savemenü angezeigt wird anstatt des normalen Charsets.
wäre nett wenn sich mal wer mit befassen könnte
Zitat von Lil_Lucy
Fullscreen-Automatik
Direkt in Main reinkopieren, vor "begin"!
...
klappt bei mir nicht, spiel stürzt ab und sämmtliche funktionen wie maustasten oder tastatureinstellungen sind auf den Kopf gestellt.
Tut mir Leid, aber das gehört echt nicht HIER her! Das ist ein Problem das dich und dein Spiel betrifft und kein Standardscript das man haben sollte.
Die Lösung des Problems könntest du von miraus hierher posten aber die Frage selbst stellst du besser in einem eignen Thread, anstatt denhier zuzumüllen!
Ich denke das du auch nicht viel Glück hättest hier Hilfe zu finden, da ein neuer Thread garantiert eher wahrgenommen wird als Posting in einem Bestehenden.
Das Skript hab ich grad verwendet und alle Funktionen meines Pcs sind ausgefallen! ich konnte garnichts mehr machen, noch nicht maln Programm öffnen oder schließen, musste neu satrten und jetzt gehts GOTTSEIDANK wieder, aber könnte mir jemand den Fullscreen-Mode posten, der auch funktioniert und nicht meinen ganzen PC lahm legt!
Dieser Thread ist kein Diskussionsthread, hier sollen nur die Scripte gepostet werden. Warum das Script bei dir nicht funktioniert kann ich nicht sagen, aber da es bei vielen anderen funktioniert, scheint wohl eher dein PC ein Problem zu haben.