Operation Flashpoint Dragon Rising – Modding
Am 10. Oktober 2009 | 6:37 Uhr von Simon in Operation Flashpoint Dragon Rising geposted.Heute zeige ich euch , wie man denn das (übrigens wirklich sehr gute) Spiel Operation Flashpoint: Dragon Rising Entpacken kann, um Modden zu können und so. (Okay vorrausgesetzt OPF liest Extrahierte Dateien ein, noch nicht getestet ansonsten .. Repacker)
Zuerst möchte ich mich bei Aluigi von XentaX bedanken, ohne ihn wäre das niemals so schnell möglich gewesen.
Um Dragon Rising Entpacken zu können, benötigen wir zuerst QuickBMS und dann zwei Scripte. Im ersten Schritt machen wir aus den 522 Einzelnen, 8.192 KB Großen Dateien eine ganze Datei, die dann 4.07 GB groß ist. Im zweiten Schritt wird diese Datei dann Entpackt. Toll oder? ![]()
Also hier QuickBMS 0.3.2:

Schritt 1:
Wir erstellen ein Script, mit dem die Dateien zusammengefasst werden:
append for i = 0 set NAME string "win_000" set MYEXT string i strlen MYEXTSZ MYEXT if MYEXTSZ == 1 string NAME += ".00" elif MYEXTSZ == 2 string NAME += ".0" else string NAME += "." endif string NAME += MYEXT open FDSE NAME get SIZE asize log "win_000.full" 0 SIZE next i
Habe ich als big_one.bms abgespeichert, der Name ist jedoch völlig egal!
Hier noch als Download:

So nun Entpackt ihr QuickBMS irgendwo (egal wo), Kopiert die big_one.bms Datei in diesen Ordner und dann kann es auch schon wirklich los gehen! Nun müsst ihr einfach die big_one.bms auf die quickbms.exe ziehen.
Zuerst wird nach einem Verzeichnis, dem Flashpoint-Ordner gefragt, dort müssen wir die win_000.nfs Auswählen.
Danach kommt ein neuer Dialog, einfach auf Speichern klicken. Wichtig, im Operation Flashpoint Dragon Rising-Verzeichnis!
Bei mir kam dann noch das hier:

Habe das Wort all Eingegeben, kurz Gewartet und ich hab die win_000.full bekommen. Dort wird gefragt, ob QuickBMS die Datei win_000.full weiter Vollschreiben darf. Die letze Fehlermeldung ist völlig in Ordnung (da ja danach keine Datei mehr kommt), also einfach mit der Enter-Taste bestätigen.
Schritt 2:
Nun wird Dragon Rising Entpackt. Neuer Schritt, neues Script.
# Operation Flashpoint 2 Dragon Rising (script 0.1.1) # note: you MUST run opflash2_create.bms first! # note: all this script is a complete horrible work-around... but it seems to work # note: the folders are not handled correctly so there will be not sub-sub folders # script for QuickBMS http://aluigi.org/papers.htm#quickbms comtype lzss get SIZE asize encryption aes "\xAC\x22\x11\x23\x44\x95\xAC\xA2\x7E\x80\x59\x86\x10\x8B\xEE\xDD\x4D\x01\xD3\x97\x0B\x9D\x4C\xA9\x3D\x7B\xE1\xBB\xED\xDA\x84\x58" log MEMORY_FILE 0 SIZE encryption "" "" findloc NAMEOFF string "system" MEMORY_FILE # lame solution goto NAMEOFF MEMORY_FILE for i = 0 get NAME string MEMORY_FILE if NAME == "" break endif putarray 0 i NAME next i open FDSE "win_000.full" set FOLDER string "" set PREV_OFFSET long 0 set DATAOFF long 0x7e set OFFSET_SEEK 0x2a0000 for i = 0 goto DATAOFF MEMORY_FILE get NAMENUM long MEMORY_FILE get DUMMY3 long MEMORY_FILE get SIZE long MEMORY_FILE get FILENUM long MEMORY_FILE get DUMMY4 long MEMORY_FILE get TYPE long MEMORY_FILE get OFFSET long MEMORY_FILE get DUMMY1 long MEMORY_FILE savepos DATAOFF MEMORY_FILE if OFFSET == 0 if SIZE == 0 if FILENUM == 0 cleanexit endif endif endif if i == 0 set OFFSET_SEEK long OFFSET endif math OFFSET -= OFFSET_SEEK math ZSIZE = OFFSET math ZSIZE -= PREV_OFFSET math NAMENUM >>= 4 if i == 0 # work-around set NAMENUM long 0 endif getarray NAME 0 NAMENUM set FULLNAME string FOLDER string FULLNAME += \ string FULLNAME += NAME if SIZE == 0 # should check TYPE but this one is better set FOLDER string NAME elif SIZE == ZSIZE log FULLNAME PREV_OFFSET SIZE else clog FULLNAME PREV_OFFSET ZSIZE SIZE endif math PREV_OFFSET = OFFSET next i
Auch hier als Download:
Wie im ersten Schritt die unpack.bms auf die quickbms.exe Ziehen, die win_000.nfs Auswählen und danach wählt ihr einen neuen, leeren Ordner aus, wo die Datei gespeichert werden soll. Es kommt wieder eine Frage mit Überschreiben, wo ich auch dieses mal mit all quitiert habe.
Ein paar Minuten muss gewartet werden und fertig!
Ich hoffe, das hat euch gefallen ![]()

Berliner19
10.10.2009
Wow Danke Danke Danke….endlich kann mann auch was machen.
gomimin
11.10.2009
Das entpacken funktioniert schonmal grundsätzlich. Leider werden größere XML Dateien korumpiert in den hinteren Abschnitten, z. Bsp.:
globalknowledge\weapon_target_selection_generated.xml
gometadata\gometadata.xml
inf1\startup.instances.xml
Das erstmal nach kurzem überfliegen. Dank an dich für das übersichtliche posten und besonders an
Aluigi aus dem XentaX Forum für das rausfummeln und scripten!
gomimin
gomimin
11.10.2009
Darauf hat Aluigi ja auch schon hingewiesen: in my opinion it’s useless to continue to use the script I posted moreover because I have found other problems with it, for example the file locale\languagedata.xml which is also one of the first files to be extracted is corrupted.
so I highly suggest you to wait for a real extractor by someone else because, as I said, this one was only a blind work-around I wrote to help pietastesgood with his request about the music.
Zumindest kann mensch in interessante Sachen schonmal hintergründig reinschnüffeln…warten wir mal ab was noch kommt, schließlich muß gemoddetes ja auch wieder ingame gebracht werden
gomimin
11.10.2009
Jop funktioniert leider noch nicht so ganz
gomimin
11.10.2009
Um den Kreis zu schließen
http://community.codemasters.com/forum/showthread.php?p=5725389#post5725389
Du musst Eingeloggt sein, um Kommentare schreiben zu können.
Registrieren dauert nur 5 Sekunden