Eigener Lufiahack - Einige Fragen

Redwolf

Folge der 8 bei den Palmen!
Mitglied seit
14.02.2002
Beiträge
2.817
Das SNES hat eine 15-Bit Farbpalette, könnte damit also 2^15= 32768 Farben darstellen. Der Megadrive hat das was Nintendon't eine 16-Bit Farbtiefe und kann damit 65536 Farben darstellen!!!11!einself ;). Der PC vor dem ihr sitzt hat in der Regel eine 24-Bit Farbtiefe (32-Bit ist Bullshit) das sind dann 16777216 Farben.
 
Zuletzt bearbeitet:

Masterflow

Newbie
Teammitglied
SDC-Team
Mitglied seit
27.08.2001
Beiträge
2.457
Ich vermute mal, dass es einfach Farben gibt, die auf dem SNES nicht dargestellt werden können, oder packt das SNES alle Html-Farben?
Bei einer SNES Palette hast du 32 Werte pro Kanal, d.h 32.768 Farben im Vergleich zu 16.777.216 (256). Der Editor muss also bei der normaler 255er-RGB-Kodierung immer zu einem durch 8 teilbaren Wert auf bzw abrunden.
(#DEDE10 würde also zu #E0E008)

Allerdings kann man eine Farbe nicht so speichern das sie ungültig wäre, da ja nur eine bestimmte Anzahl an Bits zur Verfügung stehen.
Das bedeutet alles was gespeichert wird, kann auch dargestellt werden. Es kann natürlich sein, das der editor schlecht programmiert ist und das ROM zerschießt...

Der Megadrive hat das was Nintendon't eine 16-Bit Farbtiefe und kann damit 65536 Farben darstellen!!!11!einself ;).
Ne, Megadrive hat nur 9 Bit.
(http://en.wikipedia.org/wiki/List_of_video_game_console_palettes#Mega_Drive.2FGenesis)
 
OP
OP
L

Lexis Shaia

Ritter
Mitglied seit
29.08.2013
Beiträge
19
Ich hab einen Blob einfach mal komplett rot gefärbt in der gleichen Farbe die auch im ursprünglichen Sprite verwendet wurde. Bringt aber nüx, auch da stürzt es ab, auch wenn keine neuen Farben drinne sind.

Zuuviel Arbeit umsonst -_-
 

Redwolf

Folge der 8 bei den Palmen!
Mitglied seit
14.02.2002
Beiträge
2.817
PaD hat sich bei mir gemeldet und mir den letzten Source, den er hatte zur Verfügung gestellt. Darin sind auch schon ein paar Neuerungen drin und ein paar Editoren deaktiviert. Vermutlich, weil er den Editor komplett auf eine Projektdatei aufsetzen wollte und Unterstützung dafür nach und nach für jeden Editor nachziehen wollte. Leider gibt es auch hier ein Problem mit den Bildern. Werde mich demnächst darum kümmern und mir das Problem im Detail ansehen.
Vielleicht liegt es ja auch am ROM selbst und man muss ein anderes Release nehmen?
 

senfmann

Ritter
Mitglied seit
06.09.2013
Beiträge
14
Gibt es denn mehrere deutsche releases? Oder werden auch int. Releases unterstuetzt jetzt? Auf jeden fall schonmal danke fuer die muehe, redwolf.

Lexis hast du fuer den blob ne neue palette angelegt? Mit den abmessungen/in einer durch 16 teilbaren groesse? Es geht ja darum, ne passende palette anzulegen. Wenn ich das richtig verstehe, musst du, um nen komplett roten blob in einer farbe darzustellen, eine palette erstellen, die komplett in der farbe ist, diese importieren und dem blob zuweisen. Wenn jetzt in der palette weiss auftaucht, kann das vllt nicht verarbeitet werden ->absturz. Ich schau mir das mal in ner ruhigen minute an, kann aber dauern, vllt kann ich was brauchbare produzieren.

Ja das habe ich mir schon gedacht artemis. Hast du vielleicht einen startpunkt zum hexen fuer mich (und einen schubs in die richtige richtung vllt)? Ob das jetzt links zu seiten sind oder programme oder docs spielt keine rolle, jede hilfe wird dankend angenommen.
 
OP
OP
L

Lexis Shaia

Ritter
Mitglied seit
29.08.2013
Beiträge
19
PaD hat sich bei mir gemeldet und mir den letzten Source, den er hatte zur Verfügung gestellt. Darin sind auch schon ein paar Neuerungen drin und ein paar Editoren deaktiviert. Vermutlich, weil er den Editor komplett auf eine Projektdatei aufsetzen wollte und Unterstützung dafür nach und nach für jeden Editor nachziehen wollte. Leider gibt es auch hier ein Problem mit den Bildern. Werde mich demnächst darum kümmern und mir das Problem im Detail ansehen.
Vielleicht liegt es ja auch am ROM selbst und man muss ein anderes Release nehmen?
Es gibt andere Releases? Wäre mir jetzt neu. Auf jeden Fall vielen Dank für deine Mühen.

Kann auch am Emu liegen, vielleicht liegts einfach an snes9x?
 

PaD

Ritter
Mitglied seit
24.10.2006
Beiträge
26
Die C#-Version unterstützt nur das deutsche ROM.
Der MD5-Hash von dem, den ich damals nutzte, ist FC140F75678C47D9D73E6DE07C83B618.

Achtet auf den ROM-Header (die ersten 512 Bytes, fast nur Nullen). Es gibt einige ROM-Hack-Tools, die diesen einfach entfernen. Emulatoren brauchen den nicht, aber ich bin mir grad nicht sicher, ob LEdit die Version ohne unterstützt.
 
OP
OP
L

Lexis Shaia

Ritter
Mitglied seit
29.08.2013
Beiträge
19
Verwende LEdit auch nur für die deutsche ROM.

Woher krieg ich so ein Tool?
 

Artemis

Ehrenuser
Mitglied seit
20.02.2008
Beiträge
1.744
Allgemein gesehen empfehlen sich wohl ein paar gute Tutorials fürs Hexediting. Ich glaube, Masterflow hatte irgendwann mal ein paar gute Links gepostet - ich find sie nur jetzt auf die Schnelle nicht.

Was Lufia und vor allem die Gegnerskripte angeht, so empfehlen sich wirklich Relis Dokumente. Nicht nur sind dort alle bzw. fast alle Funktionen, die in den Skripten vorkommen, aufgelistet (Datei L2_Effects im Ordner L2_Drafts) und erklärt, sondern es gibt auch einen Ordner (L2_Monsters zu finden unter L2_Patches), in dem alle regulären Gegnerskripte vorhanden sind.
 
OP
OP
L

Lexis Shaia

Ritter
Mitglied seit
29.08.2013
Beiträge
19
Muss ich mich mal reinlesen sobald ich Zeit finde. Wenn du die Links findest hau sie bitte noch rein.
 

Redwolf

Folge der 8 bei den Palmen!
Mitglied seit
14.02.2002
Beiträge
2.817
@Lexis

Wenn du die ROM-Version hast, die ich letztens mit dem Programm verschickt hatte, passt die zu dem Programm. Kannst du mit dem Tool hier nachvollziehen.
 
OP
OP
L

Lexis Shaia

Ritter
Mitglied seit
29.08.2013
Beiträge
19


Ist jetzt die nicht editierte ROM. Muss ich noch irgendwas mit der exe und der rom machen oder gehts um die Werte rechts?
 

senfmann

Ritter
Mitglied seit
06.09.2013
Beiträge
14
na der hash passt ja schonmal. wie das mit dem palette einfügen/editieren geht, habe ich noch nicht herausbekommen. ich habe zwar ein tool gefunden, mit dem sich tiles bearbeiten lassen; leider sind die grafiken von lufia 2 anscheinend compressed und ich komme nicht dran, da ich keine ahnung habe, wie ich sie "entpacken" soll (und ich traue mich im mom auch noch nicht wirklich dran, soll sehr schwierig sein).

EDIT: ich mein den MD5-hash der .smc, der in deinem screenshot auftaucht. ich habs jetzt nicht nachgeprüft, aber solange er mit dem übereinstimmt den pad gepostet hat, sollte alles glatt gehen.

artemis, wäre es eventuell möglich, mir die dokumente, die du hast, zukommen zu lassen? die die ich habe beschränken sich auf ein paar monster, items und capselmonster; die ordner, die du genannt hast, habe ich garnicht, und ich kann nirgens sonst etwas von ihm finden (abgesehen von cheats).

und noch ne kleine frage am rande, was das hexen angeht; die adressen finde ich ja schon, zb. grillechse, und welches byte was bewirkt auch. nur muss ich dafür den gesamten code suchen, die adressenangaben mit $-zeichen, die in relis docs die ich habe zu finden sind, werden bei mir nicht angezeigt, mal abgesehen davon, dass die adressen abweichen (könnte wohl daran liegen, dass reli sich mit dem us-rom beschäftigt hat?), genauso wie die adressen, die schicksal angegeben hat; die kann ich gar nicht finden.

kann ich da was im editor ändern (ansicht zb) oder muss ich die codes iwi umrechnen/abändern?
 
Zuletzt bearbeitet:

Artemis

Ehrenuser
Mitglied seit
20.02.2008
Beiträge
1.744
Die besagten Dateien sind alle im Reli's "Reliquary"-Archiv.

http://www.sdc-forum.de/showthread.php?p=183268#post183268

Ein paar seiner Dateien, die ich ganz früher mal irgendwo runtergeladen hab und die nicht mit in dem "Reliquary"-Archiv waren, hab ich jetzt unter "Reliquary 2" hochgeladen. Das heißt Reliquary 1+2 sollte nun alles beinhalten, was ich von Reli habe.


(könnte wohl daran liegen, dass reli sich mit dem us-rom beschäftigt hat?)
Ja, daran könnte es liegen. Such am besten nach einer genügend großen Folge von aufeinanderfolgenden Bytes, dann solltest du besser fündig werden.


genauso wie die adressen, die schicksal angegeben hat; die kann ich gar nicht finden.
Könnte auch daran liegen, dass sich die Bytes um 512 Bytes nach vorne oder hinten verschoben haben, weil ein ROM einen Header hat und der andere nicht.
 
Zuletzt bearbeitet:

senfmann

Ritter
Mitglied seit
06.09.2013
Beiträge
14
vielen, vielen dank, artemis. das ist ungefähr das 80-fache von dem was ich bisher hatte.

was ich meine, sind zb. solche angaben:
NL, DE, S: [$1A0980 -> $1A5168]
(ich gehe davon aus, dass er mit DE die deutsche version meint).
dies sind die einträge, bei denen sich dass monster compendium befinden soll.
bei mir fängt es aber bei 000B0780 an und nicht bei 1A0980, wobei mir immernoch ein rätsel ist, was das $ dort zu suchen hat. is das ein platzhalter für nullen?

es passen also keine adressen, und hex workshop stellt sich extrem dämlich an, hex-strings zu suchen (entweder ist es eine ungerade zahl von parametern, oder er kann nichts finden, obwohl die anzahl passt, und ich die strings schon manuell gefunden habe), ich kann nur texte suchen, zb. goblin. ich kann demnach auch mit dem doc "L2_AboutMonsterMoving.txt" nichts anfangen, keine pointer/subroutinen verschieben, und somit auch keinem monster, das keinen drop hat, einen hinzufügen, da ich nicht weiß, wie ich die bytes, die dafür zuständig sind, hinzufüge.
 

Artemis

Ehrenuser
Mitglied seit
20.02.2008
Beiträge
1.744
bei mir fängt es aber bei 000B0780 an und nicht bei 1A0980,
Die Monster-Daten gibt es zweimal in der deutschen Version. Einmal die Daten der US-Version (die vollkommen irrelevant für uns sind) und dann die Daten, die dann auch wirklich genutzt werden. Daher sind nur die Monsterdaten bei 1A0980 für uns wichtig.
 

senfmann

Ritter
Mitglied seit
06.09.2013
Beiträge
14
ahja, macht sinn, sehe es auch gerade.
hast du jetzt ne pm von mir bekommen eig? hoffentlich nicht mehrere. der auto-logout in zusammenhang mit einem leeren postausgang machen mich noch verrückt hier...noch dazu keine meldung, ob meine nachricht verschickt wurde.
 

senfmann

Ritter
Mitglied seit
06.09.2013
Beiträge
14
so jetzt habe ich schon einiges geschafft, mir fehlt allerdings immernoch die möglichkeit, die monsterdatenbank zu erweitern. ich kann zwar mit dem ledit zb angriffscripte verlängern, sodass der jeweilige monstereintrag ebenfalls verlängert wird, allerdings scheint es so, dass es nur das jeweilige script betrifft, ich kann also nicht einfach nen haufen 00 ins script einfügen, im ledit speichern und dann den entstandenen platz nutzen um zb giftbytes einzufügen, mal abgesehen davon, dass der ledit ein paar bugs hat, die mich davon abhalten, dauerhaft damit zu arbeiten bzw die vom ledit veränderte .smc zu benutzen/bearbeiten.

der ledit erstellt also eine zweite monsterdatenbank, die dann vom spiel genutzt wird. wie bekomme ich das selber hin, und zwar so, dass nicht nur angriffs-und defensivscripte erweitert werden können, sondern auch die anderen monsterdaten (hp, zusätzlichen platz für die giftbytes nach den gold/expbytes) erweitert werden können, sodass ich mehr platz zum bearbeiten habe? denn ledit kriegt das mit den itembytes ja auch nicht hin.

und noch etwas; wäre die vorgehensweise, um die monsterdatenbank zu erweitern, diesselbe um zb die itemdatenbank zu erweitern, sodass manche waffen ip attacken hinzugefügt bekommen können?
 

Artemis

Ehrenuser
Mitglied seit
20.02.2008
Beiträge
1.744
Wenn es mit Ledit nicht geht, dann bleibt wohl oder übel nichts anderes übrig, als die Sachen per Hand zu machen. Um komplett neue Monster zu erstellen, muss dann noch ein Pointer auf den ersten Buchstaben des Monsternamens gesetzt werden. Besagte Pointer (jeweils 2 Bytes lang) befinden sich direkt vor dem ersten Monster (Goblin). Da sind am Ende noch ein paar ungenutzte. (Die, wo die 2 Bytes immer identisch sind).

Ich kann nur Reli's Expansionspatch empfehlen. Ist zwar nur für die US-Version und alles muss per Hand gemacht werden, dafür löst der Patch aber auch keine Bugs aus.

Und Item- und Monsterdatenbank sind insofern identisch als dass die Vorgehensweise diegleiche ist.

Was die HP angeht, so kann man die Grenze von 65535 nicht so einfach erhöhen. Ich habe da zum Beispiel mit Tricks gearbeitet, dass es so aussieht, dass sie mehr haben, obwohl es technisch einfach nicht der Fall ist. Versteckte Heilung ftw. :)
 

senfmann

Ritter
Mitglied seit
06.09.2013
Beiträge
14
ahja, ich verstehe. also keine erweiterung des monsterdatenformats xD
nette idee, jetzt macht die idee hinter der versteckten heilung noch mehr sinn^^

ja die pointer habe ich schon gefunden, und mir ihre funktionsweise verinnerlicht (alle protoblobs in meister oder goblins verwandelt, obwohl sich am oberwelt-sprite nichts ändert, was mir zumindest im moment auch ziemlich egal ist). das problem ist jetzt, dass die datenbank direkt in einem haufen weiterer daten endet, die ich nicht verändern, verschieben oder löschen darf, weil das spiel sonst garnicht startet, ich die datenbank also nicht einfach nach hinten hinaus erweitern kann.

den exp-patch habe ich mir schon angeschaut, und der funktioniert auch super mit der us-version. aber ich will ja die de verändern...
die dokumentation zum exp-patch ist auch gut, nur leider beschränkt sie sich hauptsächlich auf die us-version, und es sind nur anweisungen zum verschieben der angriffsnamen der monster vorhanden (aber in dem fall für sämtliche versionen, ein ansatzpunkt).

jetzt habe ich mir die mühe gemacht, und die us-roms verglichen (einmal mit und einmal ohne den patch), wobei mir ein paar adressen aufgefallen sind, die nicht in der dokumentation auftauchen, von denen ich nicht weiß, was sie tun, und eine, die zwar eine sub enthält, die mit dem abrufen der monsterdatenbank zu tun hat, ich aber leider absolut keine ahnung habe wo und vor allem wie ich die in der de finden soll, geschweige denn dass ich noch nicht einmal weiß, inwiefern ich die ändern soll, damit sie auf den neuen standort der monsterdatenbank verweist.

dasselbe habe ich mit de versionen gemacht, wovon eine durch ledit gepatcht wurde, und eine andere garnicht. das ergebnis sind leider eine große menge an adressen und bytes, die ich die nächsten tage wohl einmal versuchen werde zu entschlüsseln. vielleicht habe ich glück, und ich schaffe es, die erschaffung einer neuen datenbank nachzuvollziehen und die pointer/subs so umzusetzen, dass ich selbst eine datenbank ohne größenbeschränkung erstellen kann. oder ich schaffe es, diesen kampf-bug in der vom ledit gepatchten datei zu entfernen, mal sehen^^

auf jeden fall noch einmal ein dickes dankeschön für das beantworten meiner fragen. war bisher alles extrem hilfreich! danke!
 
Oben