|
 |
Terranigma 2 - The Continuance by Team Xenix Das offizielle Forum von Team Xenix (Terranigma 2 - The Continuance)
|
| 4. Dungeon: Schlossteil 2 :: 3. Dungeon (Illumina) |
| Autor |
Nachricht |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 07 Jan 2010 17:56 Titel: Umsetzung der Engine in RGSS! |
|
|
Hi,
entgegen meinen Ankündigungen habe ich mich jetzt doch dazu entschlossen, das komplette System noch vor der finalen Demo in RGSS umzusetzen. Der Grund? Ganz einfach: Ich beherrsche jetzt RGSS/Ruby schon fast vollständig. Hab mir die letzten Tage ein gutes Tutorial reingezogen, und gemerkt, wie einfach die Sprache im Grunde genommen ist.
Deswegen werde ich mich jetzt mal ranmachen, das Tutorial fertig durchzunehmen, aber vor allem werde ich jetzt ersteinmal die Truhe komplett als Scene umsetzen. Das habe ich gerade für den Hauptraum (ohne irgendwelche Scripte zusammenzuschnippseln ) auch gerade gemacht, ich muss jetzt nur noch die anderen Räume (an sich nicht schwierig) bzw die komplette Funktionalität herstellen. Dürfte aber, wenn ich es grundlegend mal habe, vor allem für die Zukunft viel einfach sein.
Grundsätzlich kann ich jetzt schon sagen, dass die Demo 0.7 vorraussichlich nicht erscheinen wird, sondern stattdessen gleich die Demo 0.8 mit gleichem Kontent und dem kompletten neuen System released wird. Aber nunja, das ganze System in RGSS umsetzen wird dann doch wieder etwas schwierig... bzw einfach nur langwierig. Aber ich habe ja Zeit...
Sobald ich mal was anständiges bei der Truhe zusammenhabe (derweil kann man lediglich Fluffy (bereits animiert) auf den Punkten der Haupträume hin und her bewegen^^ ... hat mich aber auch nur 5-10 Min gekostet
Und was hat das jetzt für den (nicht Rpg-Maker-Kundigen) Nutzer für Vorteile?
1. Dürfe damit das ruckeln fast komplett verschwinden (ausgenommen 1,5 Ghz Singlecoreprozessoren), ich kanns nicht garantieren, geringer wird es garantiert (mind. 75%), aber Ruby ist auch nicht 100% ruckelfrei
2. Behebt das eine Menge Fehler (z.B. den Fehler dass die Gegner wieder auftauchen wenn man die Truhe betritt und wieder verlässt; oder einige Fehler im Bezug auf den Amoklauf.
Hier mach ich mal eine schnelle ToDo-Liste:
- Truhe: 85%
-Bibliothek: 50%
-Items: 100%
-Rüstungen: 100%
-Waffen: 100%
-Allgemeine Schönheitskorrekturen: 70%
Fluffys Cursor anpassen: 100%
Hintergrund animieren (Kerzen): 100%
Soundeffekte: 50%
Türen animiert: 100%
Black-Fade beim Wechsel in einen anderen Raum: 0%
- KS: 0%
normaler Angriff
Speziallangriffe
Funkenpflug
- sonstiges: 0%
Sprungsystem
Wettersystem
Tag/Nacht
- Rest: 0% _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available...
Zuletzt bearbeitet von The King am 16 Jan 2010 17:46, insgesamt 17-mal bearbeitet |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 07 Jan 2010 23:30 Titel: |
|
|
Da ich nicht mehr weiß, ob ich heute noch zu viel mehr komme, hier erstmal ein aktueller Zwischenstand:
Die Datei im Anhang zeigt mal meinen aktuellen Stand bei der Umsetzung der Truhe. Dürfte derweil vor allem für Corvus bzw andere Leute die RGSS-fähig sind interessieren^^
Ich weiß, ich habe den Code vllt etwas zu kompliziert geschrieben, aber ich wollte mal extra was verrücktes probieren, und auf die Weise hab ich mich so richtig in RGSS eingelebt^^
Ich werde immer mal wieder kleine Update hierfür geben.
Waffen/Rüstungen können derweil nicht betreten werden, hier kommt es zum Absturz^^
Steuerung: Mit Space betritt/verlässt man die Truhe, wie in Terranigma 2. _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available...
Zuletzt bearbeitet von The King am 07 Jan 2010 23:47, insgesamt einmal bearbeitet |
|
| Nach oben |
|
 |
Corvus Chef-Texter

Anmeldungsdatum: 30.07.2009 Beiträge: 257
|
Verfasst am: 07 Jan 2010 23:33 Titel: |
|
|
Herzlichen Glückwunsch King, endlich hast du dich davon überzeugen lassen der Wahrheit ins Gesicht zu blicken.
Ich weis, dass es nach einer Menge Arbeit aussieht, falls man das Projekt aber von Grund auf durchdacht zu programmieren beginnt wird es um ein vielfaches einfacher, schneller, effektiver und qualitativ hochwertiger werden.
Wenn du die Truhe programmierst solltest du allerdings vorsichtig sein, während die Bibliothek ein Kinderspiel darstellt (wegen den gitternetzförmig angeordneten Optionsmenüs) sind Räume wie die Waffen und Rüstkammer ein höllisches Spiel.
Falls es dir hilft kannst du ja immernoch einen Blick auf das Script werfen welches ich dir einst zugeschickt habe. Auch wenn es nicht vollständig ausgereift ist kann es dir ein Anstoß sein wie du die Räume effektiv umsetzen könntest.
(ich gehe davon aus, dass du es wesentlich besser als ich hinkriegen wirst da ich ein blutiger Anfänger bin)
Vielen Erfolg und Mut bei all der Arbeit.
Corvus.
P.S.: Falls du anregungen für Mögliche verbesserungen brauchst biete ich mich jederzeit an meine Ideen und Gedanken mit dir zu teilen. _________________ Rechtschreibfehler dienen der allgemeinen Belustigung und sind in keinster Weise ein Ausdruck von Inkompetenz. |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 07 Jan 2010 23:41 Titel: |
|
|
Hi,
danke, ja, du hast natürlich recht, im Endeffekt hab ich z.B. für die Event-Umsetzung der Truhe wesentlich länger gebraucht als bis jetzt mit RGSS.
Du kannst dir ja gern mal das hochgeladene Projekt anschauen, den Itemraum hab ich bereits gemacht. Mit ein paar Arrays und Iterationen sind die anderen Räume auch kein Problem. Wenn du willst kannst du ja gern mal reinschauen^^ Derweil hab ich den Code komplett selber ohne von wo abzuschauen gemacht, aber könntest du mir nochmal schnell dein Projekt senden? Hab das irgendwie verlegt, oder wenn du es selber nicht hast wengistens den Namen irgendeiner Datei die dabei war...
Für Waffen und Rüstungen werd ich jedenfalls was neues ausprobieren. Während ich bei Items eine Variante mit Zwei Arrays für alle X bzw. Y-Positionen (auch den "leeren" Stellen die man nicht betreten kann) und dann einem selbgeschriebenen "Suchen und indizieren" Code genommen habe, werd ich bei den Waffen mal verschachtelte Arrays (also für jede mögliche Spalte einen X-Array, so quasi Array[n][i], muss halt nur probieren ob das überhaupt geht. Das würde mir dann aber ne Menge Arbeit ersparen. Sonst wieder wie hier, kommen halt viele Nil's zusammen^^
Also helfen kannst du mir ja schonmal indem du mein Projekt antestest (bzw vor allem wenn es dann fertig ist) und mir Feedback gibst^^ Wenn ich Anregungen brauche, melde ich mich natürlich bei dir.
mfg
The King
PS: so ein Profi bin ich auch wieder nicht, aber auch wenn dabei immer ein extrem kranke Code rauskommt habe ich beim Programmieren (sei es C++, RM-Events (hab ich doch auch ganz gut hingekommen^^), ...) eine gute Begabung^^ _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
Corvus Chef-Texter

Anmeldungsdatum: 30.07.2009 Beiträge: 257
|
Verfasst am: 07 Jan 2010 23:48 Titel: |
|
|
Entschuldige King, ich will dir ja nicht zu nahe treten, aber über das Programmieren mit den Szenen solltest du noch ein klein wenig lesen.
Ersteinmal teilen die Szenen für die Bibliothek und für die Items viele Befehle. Anstatt diese zu kopieren und damit eine Menge platz zu vergeuden solltest du einfach eine Abstrakte Oberklasse für eine Truhenszene erstellen und lediglich die Benutzung in den näher definierten Truhenräumen programmieren.
Was meine Umsetzung angeht so sende ich sie dir natürlich liebend gerne erneut. Schau dort einmal hinein und vielleicht hilft es dir ja.
Hier der Link um es nocheinmal herunter zu laden:
(der von mir bereits damals angesprochene Fehler mit dem zu 320% ausgelasteten Attachement Speicher für meinen Foren Account existiert immernoch)
http://www.file-upload.net/download-2139960/TerranigmaTheContinuanceTest.rar.html _________________ Rechtschreibfehler dienen der allgemeinen Belustigung und sind in keinster Weise ein Ausdruck von Inkompetenz.
Zuletzt bearbeitet von Corvus am 07 Jan 2010 23:58, insgesamt einmal bearbeitet |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 07 Jan 2010 23:51 Titel: |
|
|
Jaja, ich weiß, den Tutorialabschnitt über optimiertes Scripten hab ich noch nicht fertiggelesen. Aber auch hier könnte ich zitieren, dass es immer besser ist zuerst seinen Code normal zu schreiben und dann im nachhinein alles zu optimieren, mit Hauptklassen, Subklassen, und der Einteilung in die jeweiligen Scriptbereiche... Wie gesagt, ich wollte erstmal was ganz eigenes ohne irgendwelche Anleitungen und zusammengeschnipsel erstellen... _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
Corvus Chef-Texter

Anmeldungsdatum: 30.07.2009 Beiträge: 257
|
Verfasst am: 07 Jan 2010 23:58 Titel: |
|
|
Bitte die Datei neu Herunterladen King, die Datei welche ich dir gerade Hochgeladen habe war eine falsche Datei, sie enthielt einige Testanläufe für neuartige Scripte welche noch nicht ausgereift und sehr fehlerhaft sind.
Bitte benutze lieber diesen neuen Link:
http://www.file-upload.net/download-2139960/TerranigmaTheContinuanceTest.rar.html _________________ Rechtschreibfehler dienen der allgemeinen Belustigung und sind in keinster Weise ein Ausdruck von Inkompetenz. |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 08 Jan 2010 1:30 Titel: |
|
|
Hab mir dein Script mal angeschaut, und muss sagen, auch wenn deines Übersichtlicher ist und für andere Leute sicher einfacher zu verwende ist... denke ich dass meine doch praktisch besser nutzbar ist^^
Ich finde mal das ein Subklassensystem vor allem bei einem Menü nicht viel Sinn macht, auch wenn es aus mehreren Screens besteht... vor allem bei mir gibt es nicht sehr viel mehrfach vorhandenen Code, weshalb eine Klasse "Truhe" mit entsprechenden Subklassen tatsächlich zu viel aufwand wäre...
naja egal, wenn du meinen Code etwas genauer angeschaut hast, müsste dir eh auffallen dass ich das Problem komplett anders angehe als du. Während du gleich von Anfang an die einzelnen Bewegungspunkte mit festen Eigenschaften belegst, sorge ich mich erstmal nur um die Koordinaten, und der Rest kommt dann im Anschluss.
Ich werde dann morgen noch die beiden anderen Szenen (auf gehabter Weise, immerhin funktioniert es perfekt und darum geht es^^) erstellen und dann setze ich mich gleich mal dran n System für Items zu machen.
Vllt werd ich morgen schon fertig, kp... könnte sich eventuell ausgehen, je nachdem wie viel Zeit ich habe... _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
Corvus Chef-Texter

Anmeldungsdatum: 30.07.2009 Beiträge: 257
|
Verfasst am: 08 Jan 2010 2:50 Titel: |
|
|
Das wichtige worum es bei der Informatik geht ist es Objektorientiert zu arbeiten.
Ein Gegenstand im Inventar oder ein Optionsbutton oder eine Tür in einen anderen Raum ist in meinem Script ein und das selbe Objekt nur mit einem anderen Befehl.
Es gibt einen Grund dahinter warum man sich nach langjähriger Erfahrung darauf geeinigt hat Programme auf die Art zu erstellen, dass möglichst viele Objekte unabhängige Teileinheiten sind und sich nicht das gesammte Programm in einem gigantischen Codeblock befindet wie bei dir.
Ich rate dir nur auf zu passen keinen Fehler damit zu begehen die gesammte Szene und alle ihre Ereignisse und Anwendungen in eine einzige Klasse zu schreiben.
Wie dem auch sei, viel Erfolg beim lernen und arbeiten.
Corvus. _________________ Rechtschreibfehler dienen der allgemeinen Belustigung und sind in keinster Weise ein Ausdruck von Inkompetenz. |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 08 Jan 2010 12:25 Titel: |
|
|
Ich bin immer noch der Meinung Funktionalität/Arbeitsaufwand > Objektorientierung.
Der Grund liegt wohl einfach daran dass es in dieser Weise für Aussenstehende unmöglich wäre, etwas mit dem Code anzufangen, ohne große Erklärung. Aber in meinem Fall ist das ja an sich komplett egal.
Vor allem weil objektorientierung gut und schön, aber was du gemacht hast ist ja nur die Umsetzung meines Event-Dingens in RGSS, und das ist wirklich nicht sinn der Sache. Vor allem bei heftigeren Sachen wie dem KS bekommt man hier Probleme über Probleme über Probleme.
Außerdem wundert es mich jetzt nicht warum du sagst die anderen Räume wäre ne Höllenarbeit^^ während ich zwei Arrays habe, die ich derweil noch auf etwas unanschauliche Art mit jew. allen X und allen Y-Koords befüllt habe, musstest du für jede Option eine vielzahl an weiteren Sachen schreiben. Und eines kannst du mir glauben: Ein Intelligenter Auswahl-Code, bzw. einfach nur die Tatsache dass man imstande ist so mir nichts dir nichts einen zu schreiben, ist vor allem für komplexere Sachen wesentlich einer objektorientierten Aufzählungs-Variante vorzuziehen^^
TheKing
PS: Ich glaube wir sollten beide lieber wieder etwas oberflächlicher werden, sonst fangen wir uns nur wieder an zu fetzen^^
Edit: Achja, du hast im Itemraum vergessen den Schaltern für Items, Quest und Tools eigene Positionen zuzuweisen bzw. hast da irgendwie n Bug drinnen... jedenfalls kann man gar nicht auf die unteren Positionen der wichtigen Items... schaus dir am besten nochmal selber an.
Ich hab mir jedenfalls mal die Waffen bzw. Rüstungskammer angeschaut, nach meiner Variante sind die nicht schwerer als die Bibliothek. Hab jetzt aber doch eine Klasse "Truhe" geschrieben und alle anderen Klassen davon abgeleitet, auch wenn ich mir nicht ganz so viel erspare wie bei dir (klar, deine Variante wäre viel zu umständlich ohne Haupt/Subklassen)... _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 08 Jan 2010 14:30 Titel: |
|
|
Hier das neueste Script, diesesmal kann man schon in alle Räume rein. Waffen und Rüstungen waren nach meinem System superleicht.
Hab jetzt eben auch schon einiges in die Hauptklasse "Truhe" gemacht, und den Rest davon abgeleitet. Bei Scene_Rüstungen hab ich dann auch nochmal auf Scene_Waffen zurückgreifen können, was mir doch auch bisschen was erspart hat.
So, ich geh jetzt gleich mal ans Werk und erstell für Scene_Items die Item-Verteilung, aber ich mach es von Anfang an anhand richtiger Items, muss mir nur erstmal die passenden Attr-Accessor-Dinger raussuchen. _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
Corvus Chef-Texter

Anmeldungsdatum: 30.07.2009 Beiträge: 257
|
Verfasst am: 08 Jan 2010 17:31 Titel: |
|
|
Es ist dein Projekt, mach es wie es dir beliebt. Allerdings muss ich feststellen dass die bewegungsmöglichkeiten in deiner Truhe ganz und garnicht mit denen im Original übereinstimmen.
So kann man zum Beispiel nur von einem Itemslot in der Utensilienkammer zu dem Schwarzen Loch gelangen wohingegen die übrigen dich zurück an das untere Ende der Auswahl bringen.
Außerdem sind mir ein paar wenige kleine Fehler aufgefallen, falls man versucht von der Utensilienkammer in die Rüstkammer zu gelangen begibt man sich in die Bibliothek.
In der Rüst- und Waffenkammer sind keine Bewegungs-Soundeffekte vorhanden.
Darüberhinaus brauche ich neben den Script Dateien auch die Panoramas für die Waffen- und Rüstkammer um dein Script voll und ganz austesten zu können.
Ich erwarte sehnlich deine weiteren Fortschritte und versuche dir beim Testen zu helfen.
Grüße, Corvus. _________________ Rechtschreibfehler dienen der allgemeinen Belustigung und sind in keinster Weise ein Ausdruck von Inkompetenz. |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 08 Jan 2010 17:46 Titel: |
|
|
Ja, ich weiß, die Bewegungen sind nicht 100% original, aber ich denke mal das ist nicht so schlimm, ich mache schließlich eine Fortsetzung und kein 100% Remake.
Danke dass du mich auf den Fehler im Itemmenü aufmerksam gemacht hast, das war nicht nur so dass wen man versucht in die Rüstkammer zu kommen man stattdessen in die Bibliothek zurückkommt, sondern dass man einfach von überall wo man war in die Bibliothek gekommen ist. Hab gerade vorher noch bisschen was geändert, deswegen wurde die position nur grafisch, nicht aber logisch upgedated. Jetzt geht das. Sounds für die anderen Räume hab ich jetzt auch hinzugefügt.
Hier sind mal die Panoramas dabei...
So, jetzt könnte ich aber tatsächlich mal deine Hilfe brauchen, und zwar nicht nur zum Testen. Folgendes:
Ich möchte jetzt eben alle Items die der Charakter im Inventar hat anzeigen lassen, und ich hab eben gleich mit einer Klasse + Methode angefagen die für den Anfang mal Itemname und Item-Icon in jew. 2 Arrays speichern sollte.
Sieht so aus:
| Code: |
class Items
def items_auflisten
i = 0
@truhenitemeinzeln = []
@truhenitems = []
#geht alle Items in der Database durch
for i in 1...$data_items.size
# wenn ein Item im Inventar ->
if $game_party.item_number(i) > 0
# <- schreibe es in ein neues Array
@truhenitems.push($data_items[i])
end
end
end
end |
Wenn ich jetzt zwei Standarditems, z.B. einmal Heil und einmal Manatrank ins Inventar von Ark gebe und dann per p(@truhenitems) das ganze ausgeben lassen, kommt heraus:
So, und jetzt zum meinem Problem: Wie lese ich hier einzelne Werte heraus? Mit @truhenitems[i] geht das nicht, da jedes Item für sich ein Element des Arrays darstellt (.size ergibt hier 2), und deswegen kann ich das ja so einfach nicht auslesen.
Gibt es hier jetzt ne Möglichkeit einzelne Werte auszulesen? Ich möchte es dann so haben dass ich sagen kann @truhenitems[5] # => "Potion".
Eventuell kann es auch sein dass das ganze gar nicht erst zu einem Array machen darf, sondern zuerst auslesen muss? Ich bin überfragte... ich probier schon ne Zeitlang rum und komm auf kein Ergebniss.
Falls du den ganzen Scriptcode brauchst, also auch wie ich das benutze, kann ich das gerne hochladen, aber vllt weißt du auch so ne Lösung? Muss gar nicht mein System sein, es geht einfach darum:
name, icon, beschreibung müssen im Endeffekt in jew. eigene Arrays geschrieben werden.
wäre froh wenn du das schaffen würdest. Ich probier natürlich auch noch weiter, aber weiß nicht ob ich schnell auf ne Lösung komm. Wenn ich das hätte, dann wäre alles weitere einfach. _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 08 Jan 2010 17:56 Titel: |
|
|
Nein, bin ich blöd... dabei ist die Lösung ja ganz einfach -.-
| Code: |
class Items
def items_auflisten
i = 0
@truhenitemeinzeln = []
@truhenitems = []
for i in 1...$data_items.size
if $game_party.item_number(i) > 0
$item_namen << $data_items[i].name
$item_icons << $data_items[i].icon_name
end
end
end
end |
Damit geht das. So, jetzt kann ich dann mal drangehen die Items zeichnen zu lassen. eigentlich das kleinste Problem... _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
The King Weiser...Site Admin


Anmeldungsdatum: 30.09.2008 Beiträge: 726
|
Verfasst am: 08 Jan 2010 18:23 Titel: |
|
|
Hier, Corvus, könntest du bitte folgendes für mich Testen?
Ich hab jetzt, war wie gesagt einfach, mal das anzeigen der Icons der Items im Inventar des Spielers gemacht. Viewport fehlt noch, folgt sofort. Kannst du aber mal mit dem Typen der hier auf der Map steht, oder auf welche weise sonst, testen ob das auch noch bei voll vielen bzw verschiedenen Items klappt? Gib dem Event-Heini einfach ein paar zusätzliche Gegenstände (im Rpg-Maker) dann red ihn an, geh in den Itemraum und staune^^
Ohne irgendwelche Listen, nur anhand von dem was der Spieler im Inventar hat. Leider noch nach Reihung in der Database geordnet...
Edit: Viewport eingefügt, ich werkel gerade an der Interaktion mit den Items, auf meine Weise auch nicht mega-schwer. Ein hoch auf un-objektorientere Programmierung (naja, im Endeffekt programmiere ich ja objektorientiert, nur dass ich halt statt reellen objekten wie du mit einem @options-Array für alle Orte in Truhe einfach imaginäre Objekte, die halt nur aus X/Y bestehen hernehme^^) _________________ ~Team Xenix~
Terranigma 2 The Continuance... Demo available... |
|
| Nach oben |
|
 |
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum nicht herunterladen
|
|
|
|
|