Das Spiel braucht zum Starten eine rgss202E.dll zum Beispiel. Diese sind im RTP enthalten, wenn der Computer des anderen diese .dlls nicht hat, kann er das Spiel auch nicht spielen.
Daher wird die standardmäßig auch meist vom User selbst hinzugefügt. Durch den Haken bei iclude RTP Data wird die .dll meines Wissens automatisch mit eingefügt (grad zu faul zum testen).
deine Methode is zwar auch richtig, aber würde ich nicht empfehlen, denn es passiert schnell einmal, dass man ne RTP-Grafik mit rein mischt und sich dann wundert warum das Game dann abstürzt,
wenn jemand das RTP nicht installiert hat.
Ob eine DLL extra notwendig ist kann ich nicht genau sagen, aber ich bin mir sicher das das nichts mit dem RTP zu tun hat.
Denn ich habe ja die Zeile wo aufs RTP bezug genommen wird gelöscht und es funktioniert. Wenn man den von mir beschriebenen Weg geht,
brauch man sich meines Wissens keine weiteren Gedanken um DLLs machen.Und ausversehen RTP Grafiken kann man dann auch nicht nehmen,
weil die dann im Projektordner nicht mehr angezeigt werden wenn man das vor dem erstellen des Spiels macht. Man muss also wirklich alles selbst importieren^^
(Ich bin kein Experte, wenn ich etwas falsches sage korigiert mich)
@Two Face
Hier ein Link zu einem Titel Skip Script, dann kannst du dir deinen Titelschirm selber basteln. Ich hab grad nur nicht den Eventscriptbefehl für Ladeschirm aufrufen (Den gibt es aber). http://snipplr.com/view/46120/
Dann brauchst du dich nicht mit den Scriptfehlern rumärgern.
Irgendwie schein ich nicht alles übersetzen zu können. Oder schau ich nur falsch? Muss ich das auch via Script machen? In der Database unter Terms steht nur sehr wenig, unter anderem kann ich die Felder "Current XP" und "next Level" im Status-Menü nirgendwo übersetzen und die kompletten Kämpfe im Standard-KS laufen auch noch komplett auf Englisch ab.
Genau einmal etwas in der Database zum übersetzen , den Rest findest du im Editor im Script Ordner ganz oben "Vocab"
die lilanen Wörter kannst du dann übersetzen. Aber nicht die "" oder &$%&§$%§ Zeichen verändern.
Haben sich die anderen Probleme nun erledigt? Oder funktioniert dort etwas noch nicht?
Ausserdem wirst du noch ein Fix Script für den VX brauchen da bei vielen Versionen das zuweisen der Held HP in einer Variable nicht funktioniert,
sowie ein paar andere kleinigkeiten. Also nicht wuundern wenn das nicht will wie es soll.
(Hab leider grad keinen Link zum Bug Fix Script für VX).
uhm die .dll braucht man. Da du aber das RTP installiert hast, ladet der Maker diese automatisch aus dem Makerverzeichnis. Die .dll liegt zwar dem Maker selbst bei, wird aber benötigt um den RGSS Player zum laufen zu bringen. Ohne die .dll wirds also nich funktionieren. Das Problem gab es schon oft genug.
Das mit dem Nutzen meinte ich eher so: Man macht das Game und merkt man hat eigentlich nichts ausm RTP genutzt, also kann man das so raus nehmen. Gesagt getan, jedoch hat man mal übersehen, dass man nun doch ne Grafik von dort genommen hat und da diese Grafik noch weiterhin vom Maker verwendet werden würde, schreit der Automatisch danach, dass diese fehlt und stürzt ab, wenn man nicht das Script von Woratana drin hat. So war das gemeint. Da ich nicht weiß wie viel er schon gemacht hat oder so, empfehle ich diese Methode nicht.
@Flip
Ok das der sich obwohl kein Pfad zum RTP gegeben ist trotzdem die DLL vom Rechner holt wusste ich nicht.
Da ich den Maker habe kann ich also nicht feststellen ob es sich so verhält.
Kann ich nicht einfach die 3 DLL Dateien aus dem RTP Ordner direkt in mein Projektordner kopieren? Wenn ja, wo genau hin am besten?
[Game]
RTP=RPGVX
Library=RGSS202E.dll !!!Muss ich hier dann noch den Pfad ändern wenn ich in der Zeile hierdrüber den RTP bezug gelöscht habe? Denn bei mir gings wie gesagt trotzdem zu spielen
Scripts=Data\Scripts.rvdata
Title=CID
Was ist eigentlich eine DLL? Was macht die?
Wäre nett wenn du mir /uns das erklärst , man lernt ja nie aus.
das zuweisen der Held HP in einer Variable nicht funktioniert
...
Wie meinst du das?
Zitat
Haben sich die anderen Probleme nun erledigt? Oder funktioniert dort etwas noch nicht?
...
Jo, s meiste hat sich erledigt, danke der Nachfrage. n paar Kleinigkeiten hät ich grad noch:
- Viele VX-Script, die man zB im rpg-studio findet sind .rb-Dateien. Mit welchem Programm kann ich die öffnen?
- Ich hab ein Script benutzt, um die HP- und MP-Balken oben links im Screen anzuzeigen. Ich musste das Script allerdings wieder rausnehmen, da die Anzeigen im Menü buggen und das Fade-Out des Bildschirms bei Kampfbeginn komplett ausbleibt. Ist jetz halb so wild, aber vllt weiß ja jemand woran das liegt. Hatte bisher nämlich noch nicht die Zeit mich mit der Sprache auseinanderzusetzen und bin dementsprechend planlos.
EDIT:
Zitat
Was ist eigentlich eine DLL? Was macht die?
Wäre nett wenn du mir /uns das erklärst , man lernt ja nie aus.
...
.dll ist die Abkürzung für Dynamic Link Library. Das sind Programmbibliotheken, die bestimmte Codes enthalten. Wird auf Wikipedia relativ verständlich erklärt: http://de.wikipedia.org/wiki/Dynamic_Link_Library
.rb Dateien kannst du normal mit dem Text-Editor öffnen
Wenn du Scripts für VX willst dann guck lieber hier, hier oder hier nach. Die Scripts bei RPG Studio sind teilweise schon stark veraltete Versionen oder häufig nicht mal wirklich vollständig (so meine Erfahrung).
Flippy: Danke für die Seiten. ^^ Hab schon das halbe Internet durchforstet nach brauchbaren und funktionierenden Skripten. Speicher ich mir gleich ma als Lesezeichen ein.
Zitat Flips PN:
.dll Datei
Die .dll Datei findest im Systemordner vom Maker, die wird auch bei der Makerinstallation beim Maker selbst und nicht beim RTP Beigelegt.
Das include RTP greift lediglich auf die Game.ini zu und liest aus welche .dll er braucht. Diese ladet er dann selbst aus dem Ordner und fügt sie dem Ordner hinzu.
Meist besitzt man eh nur eine .dll (rgss202E.dll) und diese befindet sich im Programmordner vom Maker. guck einfach bei Programme -> Enterbrain -> RPG Maker VX
dort ist die .dll eh schon enthalten.
Eine .dll enthält wichtige Funktionen welche für ein Programm notwendig sind, so enthält die rgss202E.dll die komplette Library von der RGSS Console, damit die Scripts auch
wirklich arbeiten. Fehlt die .dll kommt es zu folgendem Fehler:
RGSS Player abgestürzt
Und das Spiel lässt sich nicht starten.
lg flipy
Ok kannst du mir noch beantworten ob es dann reicht die DLL einfach mit in den Projektordner zu kopieren?
Denn wenn ich den Bezug aufs RTP lösche und derjenige den Maker nicht hat, so Stürzt das Spiel ab wenn ich euch richtig verstehe und ich auf meine Weise den bezug zum RTP. Würde mich auf beantwortung der Frage und über eine Erklärung freuen.
rausnehme.
@TwoFace: Benenne deine neue Fade-Grafik einfach in BattleStart und füg sie über den Ressourcen-Import in den System Ordner.
@Bex: Wie schon gesagt: Ja es reicht.
Das RTP sind nur Grafiken, die .dll enthält nur die auskompilierten Scriptfunktionen vom RGSS-Player, welcher zum nutzen der Scripts benötigt wird.
Jedoch wird, wie schon erwähnt, bei Include RTP auch die .dll hinzugefügt, da man davon ausgeht, dass die Person, die diese Version erhält, diese .dll auch nicht besitzt, aber die Datei wichtig ist und das Spiel sonst nicht funktioniert.
Bei den Map Properties kann ich doch die Encounter einstellen. Ich will den Troop von einer Variable abhängig machen. Warum? Ich will ein Tagsystem benutzen und je höher die Variable "Tag" ist, desto stärker sollen die Gegner sein, die auftreten. Jemand ne Idee wie ich das realisiert krieg?
Die Methode die dafür zuständig ist findest du in Zeile 214 von der Klasse "Game_Player", die Methode sieht wie folgt aus:
#--------------------------------------------------------------------------
# * Create Group ID for Troop Encountered
#--------------------------------------------------------------------------
def make_encounter_troop_id
encounter_list = $game_map.encounter_list.clone
for area in $data_areas.values
encounter_list += area.encounter_list if in_area?(area)
end
if encounter_list.empty?
make_encounter_count
return 0
end
return encounter_list[rand(encounter_list.size)]
end
Die Variable "encounter_list" ist eine Liste mit ganzen Zahlen. Die Zahlen repräsentieren die ID der Gegnertruppe, so wie du sie in der Datenbank gesetzt hast.
Du kannst diese Methode umschreiben, um deine Variable zu berücksichtigen.
Eine einfache Variante wäre es, die ID einfach grundsätzlich um 0, 1, 2, oder 3 zu erhöhen, je nach Tageszeit, um somit stärkere Gegnertruppen zu erlauben.
Also als Beispiel würdest du die Gegnertruppen in der Datenbank wie folgt anordnen:
Gegnertruppe ID 1: Leichte Monster A
Gegnertruppe ID 2: Mittlere Monster A
Gegnertruppe ID 3: Schwere Monster A
Gegnertruppe ID 4: Sehr schwere Monster A
Gegnertruppe ID 5: Leichte Monster B
Gegnertruppe ID 6: Mittlere Monster B
Gegnertruppe ID 7: Schwere Monster B
Gegnertruppe ID 8: Sehr schwere Monster B
Dann kannst du die oben gezeigte Methode wie folgt verändern:
#--------------------------------------------------------------------------
# * Create Group ID for Troop Encountered
# <Edited by Cornix>
#--------------------------------------------------------------------------
def make_encounter_troop_id
encounter_list = $game_map.encounter_list.clone
for area in $data_areas.values
encounter_list += area.encounter_list if in_area?(area)
end
if encounter_list.empty?
make_encounter_count
return 0
end
id = encounter_list[rand(encounter_list.size)]
return id + $daytime_encounter_modification
end
Wobei $daytime_encounter_modification eine globale Variable ist, welche eine ganze Zahl darstellt. Der Wertebereich wäre [0, 3].
ah und "$daytime_encounter_modification" ist dann die gleichnamige Variable, die ich anlege und einen bestimmten Wert annehmen lasse, oder? ergo: Wenn ich die Variable auf 3 setze, dann erhalte ich als Gegner die Gruppe mit der ID 3, hab ich das soweit alles richtig verstanden?