PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [tool] Risen 3 Resource Manager



Baltram
10.09.2014, 02:13
[Deutscher Text - klick mich!] (http://forum.worldofplayers.de/forum/threads/1381917-tool-Risen-3-Resource-Manager?p=23508403&viewfull=1#post23508403)

With Risen 3 Resource Manager you can view and modify Risen 3 textures, sounds, music, speech, templates and sectors (world files).
This makes it possible to create various types of mods, including balancing mods, texture mods and music mods.
To get started, have a look at the tutorials section (http://forum.worldofplayers.de/forum/threads/1411254-Risen-3-Tutorials).


http://upload.worldofplayers.de/files9/r3resman.png
(276KB) (http://www.baltr.de/r3resman.zip)
Download (http://www.baltr.de/r3resman.zip)

Update: To create archives with the _z suffix for Risen 3: Enhanced Edition, use this new version (http://forum.worldofplayers.de/forum/threads/1381917-tool-Risen-3-Resource-Manager?p=24516618&viewfull=1#post24516618) of the tool.


------
------
Risen 3 Resource Manager v1.0 by Baltram <baltram-lielb@web.de> (January 14th 2014)
------

Risen 3 Resource Manager supports conversion of multiple file types related to Risen 3,
including images/textures, sounds/music, dialogs/speech, templates, sectors:

<folder>, .pak, .r3img, .r3snd, .r3dlg, .r3tpl, .r3sec, .dds, .wav,
.r3dlgdoc, .r3tpldoc, .r3secdoc, .r3secmod


Below are short instructions on how to perform these conversions.
For non-interactive use of this tool, see the list of command line parameters at the end of this document.

Unpacking Risen 3 volumes (.pak)

Drag the .pak file onto the r3resman.exe.
A folder will be created (in the same place as the .pak) containing the volume's contents.

Packing Risen 3 volumes (.pak)

Drag a folder onto the r3resman.exe and enter the archive generation of your choice (0-9).
A .pak volume will be created (in the same place as the folder) containing the folder's contents.
The archive generation affects the order in which Risen 3 loads volumes of the same type (e.g. 'img').
It is recommended to use 4-9 as a generation to avoid conflicts with potential upcoming official patches.
PAK volumes may only contain resources of ONE type (e.g. .r3img, .r3snd).

Converting Risen 3 images (.r3img) to .dds

Drag the .r3img file onto the r3resman.exe.
To convert all .r3img files in a folder, copy r3resman.exe and r3resman_r3img.cmd in that folder and
execute the .cmd file.

Converting Risen 3 sounds (.r3snd) to .wav

Drag the .r3snd file onto the r3resman.exe.
To convert all .r3snd files in a folder, copy r3resman.exe and r3resman_r3snd.cmd in that folder and
execute the .cmd file

Converting Risen 3 dialogs (.r3dlg) to .wav and .r3dlgdoc

Drag the .r3dlg file onto the r3resman.exe.
To convert all .r3dlg files in a folder, copy r3resman.exe and r3resman_r3dlg.cmd in that folder and
execute the .cmd file.
A .r3dlgdoc file contains facial animation and gesture data. It may be viewed and edited in a
text editor. There are approx. 30 frames per second of facial animation data (one byte per blend shape).

Converting Risen 3 templates (.r3tpl) to .r3tpldoc

Drag the .r3tpl file onto the r3resman.exe.
To convert all .r3tpl files in a folder, copy r3resman.exe and r3resman_r3tpl.cmd in that folder and
execute the .cmd file.
.r3tpldoc files can be modified using a text editor.

Converting Risen 3 sectors (.r3sec) to .r3secdoc

Drag the .r3sec file onto the r3resman.exe.
To convert all .r3sec files in a folder, copy r3resman.exe and r3resman_r3sec.cmd in that folder and
execute the .cmd file.
.r3secdoc files can be modified using a text editor.

Converting DDS images to Risen 3 images (.r3img)

Drag the .dds file onto the r3resman.exe.
To convert all .dds files in a folder, copy r3resman.exe and r3resman_dds.cmd in that folder and
execute the .cmd file.
Use DXT1 as compression algorithm for opaque textures and DXT3/5 for textures with hard/soft transparency.

Converting WAV sounds to Risen 3 sounds (.r3snd)

Drag the .wav file onto the r3resman.exe.
To convert all .wav files in a folder, copy r3resman.exe and r3resman_wav.cmd in that folder and
execute the .cmd file.

Converting WAV sounds and .r3dlgdoc files to Risen 3 dialogs (.r3dlg)

Drag the .r3dlgdoc file onto the r3resman.exe. There needs to be a .wav file with the same file name
in the same folder.
To convert all .r3dlgdoc files in a folder, copy r3resman.exe and r3resman_r3dlgdoc.cmd in that folder and
execute the .cmd file.

Converting Risen 3 template documents (.r3tpldoc) to .r3tpl

Drag the .r3tpldoc file onto the r3resman.exe.
To convert all .r3tpldoc files in a folder, copy r3resman.exe and r3resman_r3tpldoc.cmd in that folder and
execute the .cmd file.

Converting Risen 3 sector documents (.r3secdoc) to .r3sec

Drag the .r3secdoc file onto the r3resman.exe.
To convert all .r3secdoc files in a folder, copy r3resman.exe and r3resman_r3secdoc.cmd in that folder and
execute the .cmd file.

Processing Risen 3 sector modification files (.r3secmod)

Drag the .r3secmod file onto the r3resman.exe.
The program will open and modify all sector documents (.r3secdoc) in the same folder as the .r3secmod
file. It will also open and read template document files in this folder to obtain the property set data as
specified in the .r3secmod file. Property sets in the sectors are replaced by those from the templates.

.r3secmod files are text documents that contain one or multiple lines. Each line starts with the GUID or
the name of a template (the name must be in quotes). The rest of the line consists of a list of property
set names separated by spaces. Example of a two-line .r3secmod file:

"It_Pl_Maki" gCItem_PS gCInteraction_PS
{5F97FAE7-0F15-4549-B0DB-B9488CFE2212} gCSkillsNPC_PS

Command line parameters:

--non-interactive - Disables requests for user interaction (like pressing the enter key)
--generation [number in range 0-9] - Specifies the generation when creating .pak volumes

r3resman.exe <file or folder> <parameters>


[technical details]

When packing/unpacking PAK archives, this tool resolves resource hashes, thus giving the resource files meaningful names.
File format description of the generated resource files (.r3img, .r3msh, .r3tpl etc.):

Header {
char8_t Magic[4]; // "R3RF"
uint32_t ResourceHeaderOffset;
}
uint8_t _unknown[36]; // 0
ResourceData {
uint8_t Data1[ResourceOffsetTable.Data1Size];
uint8_t Data2[ResourceOffsetTable.Data2Size];
uint8_t Data3[ResourceOffsetTable.Data3Size];
uint8_t Data4[ResourceOffsetTable.Data4Size];
}
ResourceOffsetTable {
uint32_t Data1Offset;
uint32_t Data1Size;
char8_t _unknown1; // 0x00
uint32_t Data2Offset;
uint32_t Data2Size;
char8_t _unknown2; // 0x00
uint32_t Data3Offset;
uint32_t Data3Size;
char8_t _unknown3; // 0x00
uint32_t Data4Offset;
uint32_t Data4Size;
char8_t _unknown4; // 0x00
}
ResourceHeader {
uint32_t ResourceClassHash; // djb2
char8_t ResourceClassRevision[4];
uint32_t DatabaseEntrySize; // sizeof(ResourceHeader) - 12
uint32_t RawFileTime[2]; // FILETIME with high/low swapped
uint32_t _unknown1[2]; // FILETIME with high/low swapped - Raw created?
uint32_t _unknown2[2]; // FILETIME with high/low swapped - Raw created?
uint32_t CompiledFileTime[2]; // FILETIME with high/low swapped, not rounded to nearest 10000
ResourceName {
uint32_t Length;
char8_t String[Length];
}
ResourceOffsetTable {
uint32_t Data1Offset;
uint32_t Data1Size;
char8_t _unknown1; // 0x00
uint32_t Data2Offset;
uint32_t Data2Size;
char8_t _unknown2; // 0x00
uint32_t Data3Offset;
uint32_t Data3Size;
char8_t _unknown3; // 0x00
uint32_t Data4Offset;
uint32_t Data4Size;
char8_t _unknown4; // 0x00
}
uint32_t ReferencedFileCount;
for( ReferencedFileCount )
uint32_t FileTime[2]; // FILETIME with high/low swapped
for( ReferencedFileCount ) {
FileName {
uint32_t Length;
char8_t String[Length];
}
}
uint32_t _unknown; // 0x00000000
uint32_t ResourceObjectSize;
ResourceObject {
char8_t Magic[4]; // "GEC2"
uint32_t ResourceClassHash;
uint16_t Version;
uint32_t Size; // ResourceObjectSize - 14
{
Prop {
uint16_t Count;
for( Count ) {
uint32_t TypeHash;
uint32_t NameHash;
uint32_t Size;
uint8_t Data[Size];
}
}
ClassData {
uint32_t Count;
for( Count ) {
uint32_t ClassHash;
uint16_t Version;
uint32_t Size;
uint8_t Data[Size];
}
}
}
}
}
(It's basiacally the .rom file (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23324092&viewfull=1#post23324092) plus the corresponding entry in the .db file (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23324092&viewfull=1#post23324092) glued together.)

[source code] (https://github.com/Baltram/rmtools/blob/master/mimicry/source/MimicryApp/r3resourceman.cpp)

Jodob
10.09.2014, 16:12
sounds great

i tried to extract the snds pack file (i took the pack file to the program folder and pressed enter, mut it seems as if nothing happened, where should the extracted files be?)

Baltram
10.09.2014, 16:54
sounds great

i tried to extract the snds pack file (i took the pack file to the program folder and pressed enter, mut it seems as if nothing happened, where should the extracted files be?)Drag the .pak onto the r3resman.exe. The extracted files will be created in the directory where the .pak resides.

Waybook
10.09.2014, 18:07
For testing purposes, I unpacked a .pak and then repacked the created folder (and files) using RisenPAK. I then renamed the new .pak to what the original was and replaced the original. However when starting the game, the assets were clearly missing.

What am I doing wrong?

EDIT: Oh, I just remembered your unpacker renamed files to make sense.

Baltram
10.09.2014, 18:16
For testing purposes, I unpacked a .pak and then repacked the created folder (and files) using RisenPAK. I then renamed the new .pak to what the original was and replaced the original. However when starting the game, the assets were clearly missing.

What am I doing wrong?RisenPAK is not suitable for packing folders that have been created using Risen 3 Resource Manager. In the future I will add the feature to repack the resources but for now this tool is a one way ticket.

What you could do is download (and modify (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23226522&viewfull=1#post23226522)) Risenaut and unpack the .pak archives with it. Then you can modify the resources and repack them using RisenPAK. But this way you need to resolve the resources hashes yourself using the unpacked .csv file.

Waybook
10.09.2014, 19:34
Ok, thanks for the advice. I managed to figure things out.

I wanted to remove the eyepatch you get when joining the mages, but it's in the same file as the glove so I can't remove one without the other. :(

PowerGamer
12.09.2014, 10:07
When the input file is specified without path (for ex. r3resman.exe Map_World_Mip0_00_00_DfA.r3img) the tool outputs the resulting file into the root folder of the current drive instead of the current folder.

Baltram
12.09.2014, 13:29
When the input file is specified without path (for ex. r3resman.exe Map_World_Mip0_00_00_DfA.r3img) the tool outputs the resulting file into the root folder of the current drive instead of the current folder.Thanks for reporting, I fixed it.

MaGoth
18.09.2014, 10:09
Mini-tool: *klick* (http://worldofplayers.ru/threads/37394/)


MfG MaGoth, :gratz

MN32410
18.09.2014, 22:34
Hallo Baltram, wann kann man ungefähr mit einem Converter von dds zurück in r3img rechnen? Ich arbeite zur Zeit an zwei Skins für Patty und für Shax. Für Patty werde ich wohl mehrere Versionen machen. Ich überlege im Moment nur wie ich diese Riesenoberweite etwas überspielen kann.
Der nächste Skin wird wohl für Mara sein. Ich habe die Texturen für Mara aus Risen 2 irgendwie höher in Erinnerung.

Danke für Deine Bemühungen. ;)

Baltram
19.09.2014, 01:39
Hallo Baltram, wann kann man ungefähr mit einem Converter von dds zurück in r3img rechnen?Ich arbeite dran (bzw. vor allem am Packer) und würde sagen in spätestens einer Woche aber man weiß ja nie...

MN32410
19.09.2014, 02:47
Sehr cool, ich freu mich drauf. Bis dahin werde ich wohl auch mehrere Versionen von Patty fertig haben.$§p4

Baltram
22.09.2014, 17:47
Version 0.2 (http://www.baltr.de/r3resman.zip) - Now with support for creating .pak files and converting .dds to .r3img

Texture modding is finally possible!

MN32410
23.09.2014, 13:40
Version 0.2 (http://www.baltr.de/r3resman.zip) - Now with support for creating .pak files and converting .dds to .r3img

Texture modding is finally possible!

Vielen lieben Dank :):):)

Mein erster Skin ist fertig und online.

Baltram
10.10.2014, 18:16
Mit dem Risen 3 Resource Manager können Texturen, Sounds, Musik, Sprachausgabe, Templates und Sektoren (Weltdateien) von Risen 3 geöffnet und modifiziert werden.
Das ermöglicht es, verschiedene Arten von Mods zu erstellen, darunter Textur-Mods, Musik-Mods und Balancing-Mods.
Schaut für den Einstieg im Tutorial-Bereich (http://forum.worldofplayers.de/forum/threads/1411254-Risen-3-Tutorials?p=23922597&viewfull=1#post23922597) vorbei.


http://upload.worldofplayers.de/files9/r3resman.png
(276KB) (http://www.baltr.de/r3resman.zip)
Download (http://www.baltr.de/r3resman.zip)


------
Risen 3 Resource Manager v1.0 by Baltram <baltram-lielb@web.de> (14. Januar 2014)
------

Risen 3 Resource Manager ermöglicht das Umwandeln von diversen Dateiformaten im Zusammenhang mit Risen 3,
einschließlich Bildern/Texturen, Sounds/Musik, Dialoge/Sprachausgabe, Templates, Sektoren:

<Ordner>, .pak, .r3img, .r3snd, .r3dlg, .r3tpl, .r3sec, .dds, .wav,
.r3dlgdoc, .r3tpldoc, .r3secdoc, .r3secmod

Weiter unten stehen Kurzanleitungen zu den verschiedenen Umwandlungen.
Für die nicht-interaktive Benutzung des Tools stehen einige Kommandozeilenparameter zur Verfügung,
die am Ende dieses Dokuments aufgelistet sind.

Risen 3-Archive entpacken (.pak)

Ziehe die .pak-Datei auf die r3resman.exe.
Es wird (am selben Ort wie die .pak) ein Ordner erstellt, der den Inhalt der .pak enthält.

Risen 3-Archive erstellen (.pak)

Ziehe einen Ordner auf die r3resman.exe und gib die gewünschte Generation ein.
Es wird ein .pak-Archiv mit dem Inhalt des Ordners erstellt (am selben Ort wie der Ordner).
Die Generation des Archivs bestimmt die Reihenfolge, in der Risen 3 Archive des gleichen Typs (z.B. 'img') lädt.
Es ist empfehlenswert, nur die Nummern von 4 bis 9 als Generation zu verwenden, um Konflikte mit möglichen
zukünftigen Patches zu vermeiden.
PAK-Archive dürfen nur Resourcen EINES Typs enthalten (z.B. .r3img, .r3snd).

Risen 3-Bilder (.r3img) ins .dds-Format umwandeln

Ziehe die .r3img-Datei auf die r3resman.exe.
Um sämtliche .r3img-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3img.cmd
in diesen Ordner und führe die .cmd-Datei aus.

Risen 3-Sounds (.r3snd) ins .wav-Format umwandeln

Ziehe die .r3snd-Datei auf die r3resman.exe.
Um sämtliche .r3snd-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3snd.cmd
in diesen Ordner und führe die .cmd-Datei aus.

Risen 3-Dialoge (.r3dlg) umwandeln in .wav und .r3dlgdoc-Dateien

Ziehe die .r3dlg-Datei auf die r3resman.exe.
Um sämtliche .r3dlg-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3dlg.cmd
in diesen Ordner und führe die .cmd-Datei aus.
Eine .r3dlgdoc-Datei enthält Daten zu Gesten und Lippenbewegung. Sie kann in einem Texteditor geöffnet
und bearbeitet werden. Es existieren ca. 30 Frames/sec an Daten zur Lippenbewegung (1 Byte pro Blendshape).

Risen 3-Templates (.r3tpl) ins .r3tpldoc-Format umwandeln

Ziehe die .r3tpl-Datei auf die r3resman.exe.
Um sämtliche .r3tpl-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3tpl.cmd
in diesen Ordner und führe die .cmd-Datei aus.
.r3tpldoc-Dateien können mit einem Texteditor bearbeitet werden.

Risen 3-Sektoren (.r3sec) ins .r3secdoc-Format umwandeln

Ziehe die .r3sec-Datei auf die r3resman.exe.
Um sämtliche .r3sec-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3sec.cmd
in diesen Ordner und führe die .cmd-Datei aus.
.r3secdoc-Dateien können mit einem Texteditor bearbeitet werden.

.dds-Dateien in Risen 3-Bilder (.r3img) umwandeln

Ziehe die .dds-Datei auf die r3resman.exe.
Um sämtliche .dds-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_dds.cmd
in diesen Ordner und führe die .cmd-Datei aus.
Texturen ohne Transparenz sollten mit DXT1 komprimiert sein, für Texturen mit harter/weicher Transparenz eignet
sich DXT3/5.

.wav-Dateien in Risen 3-Sounds (.r3snd) umwandeln

Ziehe die .wav-Datei auf die r3resman.exe.
Um sämtliche .wav-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_wav.cmd
in diesen Ordner und führe die .cmd-Datei aus.

.wav und .r3dlgdoc-Dateien in Risen 3-Dialoge (.r3dlg) umwandeln

Ziehe die .r3dlgdoc-Datei auf die r3resman.exe. Im selben Ordner muss sich eine .wav-Datei mit dem gleichen
Dateinamen befinden.
Um sämtliche .r3dlgdoc-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3dlgdoc.cmd
in diesen Ordner und führe die .cmd-Datei aus.

Risen 3-Template-Dokumente (.r3tpldoc) ins .r3tpl-Format umwandeln

Ziehe die .r3tpldoc-Datei auf die r3resman.exe.
Um sämtliche .r3tpldoc-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3tpldoc.cmd
in diesen Ordner und führe die .cmd-Datei aus.

Risen 3-Sektor-Dokumente (.r3secdoc) ins .r3sec-Format umwandeln

Ziehe die .r3secdoc-Datei auf die r3resman.exe.
Um sämtliche .r3secdoc-Dateien in einem Ordner umzuwandeln, kopiere die r3resman.exe und r3resman_r3secdoc.cmd
in diesen Ordner und führe die .cmd-Datei aus.

Risen 3 Sektor-Modifikatoren (.r3secmod) anwenden

Ziehe die .r3secmod-Datei auf die r3resman.exe.
Das Programm verändert alle Sektor-Dokumente (.r3secdoc) im selben Ordner wie die .r3secmod-Datei. Um an die
PropertySet-Daten zu kommen, die in der .r3secmod-Datei angegeben sind, liest es die .r3tpldoc-Dateien in diesem
Ordner aus. Die PropertySets der Sektoren werden ersetzt durch die PropertySets der Templates.

.r3secmod-Dateien sind Textdateien, die aus einer oder mehreren Zeilen bestehen. Jede Zeile beginnt mit der GUID
oder dem Namen (in Anführungszeichen) eines Templates. Der Rest der Zeile besteht aus einer Liste von Namen von
PropertySets, getrennt durch Leerzeichen. Beispiel einer zweizeiligen .r3secmod-Datei:

"It_Pl_Maki" gCItem_PS gCInteraction_PS
{5F97FAE7-0F15-4549-B0DB-B9488CFE2212} gCSkillsNPC_PS

Kommandozeilenparameter:

--non-interactive - Deaktiviert Aufforderungen zur Interaktion (z.B. Drücken der Enter-Taste)
--generation [Zahl von 0 bis 9] - Bestimmt die Archiv-Generation beim Erstellen von .pak-Dateien

r3resman.exe <Datei oder Ordner> <Parameter>


[Technisches]

Beim (Ent)packen von .pak-Archiven werden die Resource-Hashes aufgelöst, so dass die Resourcen sinnvolle Dateinamen erhalten.
Dateiformat der generierten Resourcendateien (.r3img, .r3msh, .r3tpl etc.):

Header {
char8_t Magic[4]; // "R3RF"
uint32_t ResourceHeaderOffset;
}
uint8_t _unknown[36]; // 0
ResourceData {
uint8_t Data1[ResourceOffsetTable.Data1Size];
uint8_t Data2[ResourceOffsetTable.Data2Size];
uint8_t Data3[ResourceOffsetTable.Data3Size];
uint8_t Data4[ResourceOffsetTable.Data4Size];
}
ResourceOffsetTable {
uint32_t Data1Offset;
uint32_t Data1Size;
char8_t _unknown1; // 0x00
uint32_t Data2Offset;
uint32_t Data2Size;
char8_t _unknown2; // 0x00
uint32_t Data3Offset;
uint32_t Data3Size;
char8_t _unknown3; // 0x00
uint32_t Data4Offset;
uint32_t Data4Size;
char8_t _unknown4; // 0x00
}
ResourceHeader {
uint32_t ResourceClassHash; // djb2
char8_t ResourceClassRevision[4];
uint32_t DatabaseEntrySize; // sizeof(ResourceHeader) - 12
uint32_t RawFileTime[2]; // FILETIME with high/low swapped
uint32_t _unknown1[2]; // FILETIME with high/low swapped - Raw created?
uint32_t _unknown2[2]; // FILETIME with high/low swapped - Raw created?
uint32_t CompiledFileTime[2]; // FILETIME with high/low swapped, not rounded to nearest 10000
ResourceName {
uint32_t Length;
char8_t String[Length];
}
ResourceOffsetTable {
uint32_t Data1Offset;
uint32_t Data1Size;
char8_t _unknown1; // 0x00
uint32_t Data2Offset;
uint32_t Data2Size;
char8_t _unknown2; // 0x00
uint32_t Data3Offset;
uint32_t Data3Size;
char8_t _unknown3; // 0x00
uint32_t Data4Offset;
uint32_t Data4Size;
char8_t _unknown4; // 0x00
}
uint32_t ReferencedFileCount;
for( ReferencedFileCount )
uint32_t FileTime[2]; // FILETIME with high/low swapped
for( ReferencedFileCount ) {
FileName {
uint32_t Length;
char8_t String[Length];
}
}
uint32_t _unknown; // 0x00000000
uint32_t ResourceObjectSize;
ResourceObject {
char8_t Magic[4]; // "GEC2"
uint32_t ResourceClassHash;
uint16_t Version;
uint32_t Size; // ResourceObjectSize - 14
{
Prop {
uint16_t Count;
for( Count ) {
uint32_t TypeHash;
uint32_t NameHash;
uint32_t Size;
uint8_t Data[Size];
}
}
ClassData {
uint32_t Count;
for( Count ) {
uint32_t ClassHash;
uint16_t Version;
uint32_t Size;
uint8_t Data[Size];
}
}
}
}
}
(Im Großen und Ganzen eine .rom-Datei (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23324092&viewfull=1#post23324092) zusammengefügt mit dem entsprechenden Eintrag in der .db-Datei (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23324092&viewfull=1#post23324092))

[Quellcode] (https://code.google.com/p/rmtools/source/browse/trunk/mimicry/source/MimicryApp/r3resourceman.cpp)

Baltram
10.10.2014, 18:20
New version: 0.3 - Support for creating Risen 3 sounds/music (.r3snd) and dialogs/speech (.r3dlg)

--

Neue Version: 0.3 - Unterstützt das Erstellen von Risen 3-Sounds/Musik (.r3snd) und Dialogen/Sprachausgabe (.r3dlg)

michalss
18.10.2014, 20:50
Does it work for X360 please ?

Baltram
19.10.2014, 14:13
Does it work for X360 please ?You have to try it out - I don't own the XBox version of the game.

michalss
23.10.2014, 11:25
You have to try it out - I don't own the XBox version of the game.

Hmm it seems to work ok, but can you please help with BIN files from text containers ? It seems encrypted and used some algorithm i never seen. :( ManyMany ppl asking for localization tools..

Thank you

Baltram
23.10.2014, 17:50
Hmm it seems to work ok, but can you please help with BIN files from text containers ? It seems encrypted and used some algorithm i never seen. :( ManyMany ppl asking for localization tools..

Thank youHere (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23226525&viewfull=1#post23226525) is a file format description by NicoDE.

Other than that I can't help you because
A) I don't know how to resove the string hashes (IDs)
B) I am not familiar with:
radix/suffix/prefix tree/trie(s) and DAFSA/DAWG

Baltram
17.01.2015, 01:50
Release v1.0


New features:

Printer and Parser for Risen 3 Templates (.r3tpl <-> .r3tpldoc)
Printer and Parser for Risen 3 Sectors (.r3sec <-> .r3secdoc)
Ability to propagate changes in templates to the sectors
Ability to recalculate bounding boxes, bounding spheres and matrixes of entities that have been moved/newly inserted
Ability to change the archive generation of a .pak file (without repacking it)


This makes it finally possible to edit the world files (sectors) and the templates (e.g. items).
See the newly opened tutorials section (http://forum.worldofplayers.de/forum/threads/1411254-Risen-3-Tutorials) for more infos.

As a small demonstration of the new possibilities I released the Food Diversity (http://forum.worldofplayers.de/forum/threads/1411253-release-Risen-3-Food-Diversity) modification.

--


Neue Features:

Printer und Parser für Risen 3-Templates (.r3tpl <-> .r3tpldoc)
Printer und Parser für Risen 3-Sektoren (.r3sec <-> .r3secdoc)
Möglichkeit zur Übertragung von Änderungen an den Templates in die Sektoren
Möglichkeit zur Neuberechnung von Bounding Boxes, Bounding Spheres und Matrizen von Entities, die bewegt oder neu eingefügt wurden
Möglichkeit zur Änderung der Archivgeneration einer .pak-Datei (ohne sie neu zu packen)


Das macht es endlich möglich, die Weltdaten (Sektoren) und Templates (z.B. Items) zu bearbeiten.
Weiteres im neuen Tutorial-Bereich (http://forum.worldofplayers.de/forum/threads/1411254-Risen-3-Tutorials?p=23922597&viewfull=1#post23922597).

Als kleine Demonstration der neuen Möglichkeiten habe ich die Modifikation Food Diversity (http://forum.worldofplayers.de/forum/threads/1411253-release-Risen-3-Food-Diversity?p=23922590&viewfull=1#post23922590) veröffentlicht.

Dark_Bauer
01.02.2015, 10:14
Sehr geile Sache, danke für das Programm!

Ich werde also meiner eigenen Bitte von einst nachgehen und dem Scavenger seinen alten, richtigen Schrei wiedergeben.

Und ich freue mich, das die Namen der Dialogdateien wieder alte Strukturen angenommen haben (so geordnet wie sie in G3 etwa waren), das war in R1 und 2 nicht so, wenn ich mich nicht irre.

George
10.03.2015, 16:05
I've added a Printer and Parser for Risen 3 Documents (.hdr <-> .hdrdoc) to the Risen 3 Resource Manager and I want to share it with you.

EDIT: Baltram recompiled the Resource Manager and included my patch: r3resman_George.zip (http://upload.worldofplayers.de/files10/r3resman_George.zip).

My changes are based on rmtools repo (https://code.google.com/p/rmtools/) revision 230.
The zip archive contains a diff file and as alternative the changed source files.

r3resmanHdrPrinterParser.zip (https://dl.dropboxusercontent.com/u/35468490/JSLoad/Files/uVMsFbbX/r3resmanHdrPrinterParser.zip) (22.94 KiB)


Thanks to Baltram (Risen 3 Resource Manager) and ogurets (analysis of the DT01 container (http://forum.worldofplayers.de/forum/members/164039-ogurets)).

Nate-Bonnett
22.03.2015, 15:21
Vielen Dank für das Programm.:gratz
Läuft echt super und jetzt habe ich endlich den kompletten Soundtrack von Risen 3 und konnte schon eine Mod veröffentlichen.

Nate-Bonnett
03.04.2015, 17:56
Wäre es auch möglich, die r3msh Dateien umzuwandeln?

Baltram
03.04.2015, 18:01
Wäre es auch möglich, die r3msh Dateien umzuwandeln?Nur wenn sich jemand die Zeit nimmt, das Dateiformat zu analysieren. Bei mir reicht die Freizeit im Moment nicht.

Nate-Bonnett
03.04.2015, 20:28
Nur wenn sich jemand die Zeit nimmt, das Dateiformat zu analysieren. Bei mir reicht die Freizeit im Moment nicht.

Schade. Ich kennen mich mit sowas leider nicht aus. Sonst wurde ichs machen.:(

George
04.04.2015, 01:26
.r3msh-files are resource files and therefore structured as described in Baltrams post (http://forum.worldofplayers.de/forum/threads/1381917-tool-Risen-3-Resource-Manager?p=23361023&viewfull=1#post23361023).

1. The actual meshdata (vertices, normals, uvs, ...) is stored in ResourceData.Data1 (the other three data blocks seem to be empty).

// uint8_t Data1[ResourceOffsetTable.Data1Size];
MeshData1 {
char8_t MeshClass[4]; // "GMSH"
uint32_t _unknown1; // 0x01000000
uint32_t _unknown2; // 0x65000000
uint32_t IndicesSize;
uint32_t _unknown3; // 0x00000000
uint16_t Indicies[IndicesSize/2];
uint32_t VerticesSize;
uint32_t VertexSize;
uint32_t _unknown4; // 0x00000000
uint32_t VertexElementsCount;
D3DVERTEXELEMENT9 VertexElements[VertexElementsCount];
uint8_t Vertices[VerticesSize];
uint32_t _unknown5[6]; // 000...
};


2. ResourceHeader.ResourceObject is of the type eCMeshResource2, which structure is shown in the following example (took it from Obj_Bld_TUT_Ruin_Plaza_1_L1.r3msh).

struct eSSubMeshClassDataEntry {
bCBox Unk1;
unsigned int Unk2;
unsigned int Unk3;
}

class eCMeshResource2 {
Version = 1;
Properties {
class bTObjArray<class eCSubMesh> SubMeshes = [
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Ceiling_1_1";
class bCBox Extends = (box -776.097229 333.270752 -909.524109 1099.568115 541.254333 598.567566);
unsigned int FirstIndex = 0;
unsigned int IndexCount = 8907;
unsigned int FirstVertex = 0;
unsigned int VertexCount = 2270;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 230;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Ground_2";
class bCBox Extends = (box -769.448975 174.146820 -1536.206055 1557.998047 556.443359 614.167603);
unsigned int FirstIndex = 8907;
unsigned int IndexCount = 1176;
unsigned int FirstVertex = 2270;
unsigned int VertexCount = 605;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 22;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Ground_3";
class bCBox Extends = (box -3115.483887 -323.264618 -5184.551758 2453.021973 640.101013 2476.504639);
unsigned int FirstIndex = 10083;
unsigned int IndexCount = 17049;
unsigned int FirstVertex = 2875;
unsigned int VertexCount = 3955;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 413;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Pillar_2_1";
class bCBox Extends = (box -782.033142 -119.825836 -1446.053833 1098.564819 527.600342 596.820374);
unsigned int FirstIndex = 27132;
unsigned int IndexCount = 28086;
unsigned int FirstVertex = 6830;
unsigned int VertexCount = 6825;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 769;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Roof_1_1";
class bCBox Extends = (box -305.965942 500.739990 -1538.125732 969.948730 609.416748 -1034.113770);
unsigned int FirstIndex = 55218;
unsigned int IndexCount = 108;
unsigned int FirstVertex = 13655;
unsigned int VertexCount = 40;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 1;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Stairs_3";
class bCBox Extends = (box -2017.009766 -725.530762 -4531.818359 2420.778076 605.659302 2795.842041);
unsigned int FirstIndex = 55326;
unsigned int IndexCount = 20709;
unsigned int FirstVertex = 13695;
unsigned int VertexCount = 4990;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 543;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Wall_12_1";
class bCBox Extends = (box -3169.463379 -649.364380 -5252.328125 1646.322876 604.308960 1432.055298);
unsigned int FirstIndex = 76035;
unsigned int IndexCount = 5853;
unsigned int FirstVertex = 18685;
unsigned int VertexCount = 1424;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 167;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
},
class eCSubMesh {
Version = 1;
Properties {
class bCString MaterialName = "AS_Tpl_Wall_Broken_1_1";
class bCBox Extends = (box -2020.229126 -725.530762 -4456.557617 2364.066162 640.101013 1003.992798);
unsigned int FirstIndex = 81888;
unsigned int IndexCount = 43779;
unsigned int FirstVertex = 20109;
unsigned int VertexCount = 14736;
unsigned int FirstBone = 0;
unsigned int BoneCount = 0;
}
ClassData {
unsigned int UnkCount = 1307;
eSSubMeshClassDataEntry ClassDataEntries[UnkCount];
}
}
];
class bCBox Boundary = (box -3169.463379 -725.530762 -5252.328125 2453.021973 640.101013 2795.842041);
}
ClassData {
}
}
I was not able to find a mesh with a BoneCount greater zero.


3. ResourceHeader.ReferencedFileCount seems to be always zero.


@Baltram: Without a look in your Risen XmshReader i would have never come to the D3DVERTEXELEMENT9 structure...

George
04.04.2015, 15:33
Based on Baltrams Risen mCXmshReader included in Rimy3D, i wrote a basic Risen 3 mesh reader.
For now it ignores the eCMeshResource2 class (contains info about materials and submeshes) and simply reads the data stored in ResourceOffsetTable.Data1 block.

https://dl.dropboxusercontent.com/u/35468490/JSLoad/Images/2I3WYyXz_R3msh.png

Baltram
04.04.2015, 18:06
Based on Baltrams Risen mCXmshReader included in Rimy3D, i wrote a basic Risen 3 mesh reader.
[...]Cool! :)
Maybe you could include a small .r3msh -> .obj converter in r3resman?
(Because I am not sure when I will find the time to finally release Rimy3D to the public.)


@Baltram: Without a look in your Risen XmshReader i would have never come to the D3DVERTEXELEMENT9 structure...
It's Nico who found out (http://forum.worldofplayers.de/forum/threads/717908-Risen-pseudo-modding-with-shak?p=12017763&viewfull=1#post12017763). ;)

hargreave
23.08.2015, 00:19
Hi!
I apologize if my question is silly. The unpacked Template and Sector files all have (I guess) hex codes in them. Like so in the 'It_Swd_Worldslayer.r3tpldoc' file:

class eCCollisionShapeList Shapes = <01 00 00 00 47 45 43 32 13 57 EC CC 01 00 72 01 00 00 11 00 C9 C8 59 E8 7A 9A E2 F2 1C 00 00 00 1A 00 49 74 5F 50 69 65 5F 43 61 70 74 61 69 6E 73 62 6C 61 64 65 5F 4C 31 5F 43 56 35 DA E8 98 47 64 73 A6 40 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 76 34 D6 79 74 B9 4B CC 08 00 00 00 10 A5 25 B5 00 00 00 00 91 B3 94 7C 95 B7 D9 9E 04 00 00 00 00 00 00 00 3A A6 34 E3 A7 D7 1D 73 08 00 00 00 D5 61 5B 62 00 00 00 00 91 B3 94 7C C5 18 CC A7 04 00 00 00 00 00 00 00 91 B3 94 7C A5 F4 09 C8 04 00 00 00 01 00 00 00 91 B3 94 7C 78 C3 E5 B1 04 00 00 00 00 00 00 00 91 B3 94 7C 37 12 11 C6 04 00 00 00 01 00 00 00 91 B3 94 7C A7 24 97 77 04 00 00 00 01 00 00 00 91 B3 94 7C DC CF D6 D6 04 00 00 00 00 00 00 00 91 B3 94 7C 2D 02 D4 1B 04 00 00 00 01 00 00 00 91 B3 94 7C C8 20 CC DC 04 00 00 00 00 00 00 00 91 B3 94 7C E0 65 7D B2 04 00 00 00 00 00 00 00 91 B3 94 7C 0B AC 1E D4 04 00 00 00 00 00 00 00 91 B3 94 7C 31 3C 78 61 04 00 00 00 00 00 00 00 91 B3 94 7C 30 D5 BE A3 04 00 00 00 01 00 00 00 00 00 00 00>;
What does it bear?

Baltram
23.08.2015, 02:20
Hi!
I apologize if my question is silly. The unpacked Template and Sector files all have (I guess) hex codes in them. Like so in the 'It_Swd_Worldslayer.r3tpldoc' file:

class eCCollisionShapeList Shapes = <01 00 00 00 47 45 43 32 13 57 EC CC 01 00 72 01 00 00 11 00 C9 C8 59 E8 7A 9A E2 F2 1C 00 00 00 1A 00 49 74 5F 50 69 65 5F 43 61 70 74 61 69 6E 73 62 6C 61 64 65 5F 4C 31 5F 43 56 35 DA E8 98 47 64 73 A6 40 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F 76 34 D6 79 74 B9 4B CC 08 00 00 00 10 A5 25 B5 00 00 00 00 91 B3 94 7C 95 B7 D9 9E 04 00 00 00 00 00 00 00 3A A6 34 E3 A7 D7 1D 73 08 00 00 00 D5 61 5B 62 00 00 00 00 91 B3 94 7C C5 18 CC A7 04 00 00 00 00 00 00 00 91 B3 94 7C A5 F4 09 C8 04 00 00 00 01 00 00 00 91 B3 94 7C 78 C3 E5 B1 04 00 00 00 00 00 00 00 91 B3 94 7C 37 12 11 C6 04 00 00 00 01 00 00 00 91 B3 94 7C A7 24 97 77 04 00 00 00 01 00 00 00 91 B3 94 7C DC CF D6 D6 04 00 00 00 00 00 00 00 91 B3 94 7C 2D 02 D4 1B 04 00 00 00 01 00 00 00 91 B3 94 7C C8 20 CC DC 04 00 00 00 00 00 00 00 91 B3 94 7C E0 65 7D B2 04 00 00 00 00 00 00 00 91 B3 94 7C 0B AC 1E D4 04 00 00 00 00 00 00 00 91 B3 94 7C 31 3C 78 61 04 00 00 00 00 00 00 00 91 B3 94 7C 30 D5 BE A3 04 00 00 00 01 00 00 00 00 00 00 00>;
What does it bear?There are hundreds (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23315067&viewfull=1#post23315067) of different data structures and it would be hundreds of hours of work to analyze them all so I did this only for the most common.
All the other not-so-important data structures are just printed out byte-by-byte by Risen 3 Resource Manager (each two-digit hexadecimal number representing one byte).

Baltram
23.08.2015, 15:14
Some .pak archives in Risen 3: Enhanced Edition have a _z suffix (e.g. 0_na_img_z.pak). Such archives cannot be generated using the original version of Risen 3 Resource Manager.

So here is an experimental version of this tool that makes it possible to convert normal archives into their _z counterpart:


r3resman_experimental.zip (http://www.baltr.de/r3resman_experimental.zip) (279KB)

For example, if you have an archive named 9_na_img.pak, simply rename it to 9_na_img_z.pak.9 and drag it onto the new version of r3resman.exe. This gives you an archive named 9_na_img_z.pak that can be used with Risen 3: Enhanced Edition.

Also included in this experimental version of Risen 3 Resource Manager is the support for Risen 3 documents (.hdr) by George (http://forum.worldofplayers.de/forum/threads/1381917-tool-Risen-3-Resource-Manager?p=24129949&viewfull=1#post24129949) and the support for printing/parsing bTRefPtrArray objects.

--

Einige .pak-Archive in Risen 3: Enhanced Edition haben ein _z-Suffix im Dateinamen (z.B. 0_na_img_z.pak). Solche Archive können nicht mit der originalen Version des Risen 3 Resource Managers erstellt werden.

Hier nun eine experimentelle Version des Tools die es ermöglicht, normale Archive in ihre _z-Variante umzuwandeln:


r3resman_experimental.zip (http://www.baltr.de/r3resman_experimental.zip) (279KB)

Hat man etwa ein Archiv mit dem Namen 9_na_img.pak, muss man es lediglich umbenennen in 9_na_img_z.pak.9 und es auf die neue r3resman.exe ziehen. Das Ergebnis ist ein Archiv mit dem Namen 9_na_img_z.pak, das für Risen 3: Enhanced Edition verwendet werden kann.

Zusätzlich unterstützt diese experimentelle Version des Risen 3 Resource Managers dank George (http://forum.worldofplayers.de/forum/threads/1381917-tool-Risen-3-Resource-Manager?p=24129949&viewfull=1#post24129949) Risen 3-Dokumenten (.hdr), außerdem enthalten ist print/parse-Unterstützung für bTRefPtrArray-Objekte.

--

source (http://upload.worldofplayers.de/files10/mimicry_r3resman_1_1_src.zip)

hargreave
24.08.2015, 07:39
There are hundreds (http://forum.worldofplayers.de/forum/threads/1374683-Risen-3-File-Formats-and-other-things?p=23315067&viewfull=1#post23315067) of different data structures and it would be hundreds of hours of work to analyze them all so I did this only for the most common.
All the other not-so-important data structures are just printed out byte-by-byte by Risen 3 Resource Manager (each two-digit hexadecimal number representing one byte).

Oh, ok. Thank you!

Kuchenschlachter
22.10.2015, 23:03
As promised I tried to implement FloatScale and ColorScale.
r3resman_ColorScaleFloatScale.zip (http://upload.worldofplayers.de/files10/r3resman_ColorScaleFloatScale.zip)
source_r3resman_ColorScaleFloatScale.zip (http://upload.worldofplayers.de/files10/source_r3resman_ColorScaleFloatScale.zip)

I'm glad IF it works but frankly if it doesn't I don't care...
There are a lot of issues. The only one that concerns useres is that my version isn't "precise". It means converting a file to doc and back results in a slightly different file. That really really really sucks.
I'm sorry but I can't do more work on this.
Good luck.

Edit: I take it back, there is a second problem concerning users... really really really awful float values, like negative zero, numbers that are nearly zero but are shown as exactly zero and gigantic numbers... I'm still certain those are floats.

MN32410
23.10.2015, 05:22
As promised I tried to implement FloatScale and ColorScale.
r3resman_ColorScaleFloatScale.zip (http://upload.worldofplayers.de/files10/r3resman_ColorScaleFloatScale.zip)
source_r3resman_ColorScaleFloatScale.zip (http://upload.worldofplayers.de/files10/source_r3resman_ColorScaleFloatScale.zip)

I'm glad IF it works but frankly if it doesn't I don't care...
There are a lot of issues. The only one that concerns useres is that my version isn't "precise". It means converting a file to doc and back results in a slightly different file. That really really really sucks.
I'm sorry but I can't do more work on this.
Good luck.

Edit: I take it back, there is a second problem concerning users... really really really awful float values, like negative zero, numbers that are nearly zero but are shown as exactly zero and gigantic numbers... I'm still certain those are floats.

Thank you for your hard work. I will test it at the weekend. ;)

tombom81
23.10.2015, 11:54
is that my version isn't "precise".thanks for your work!
FB 8A AF 3D -> 0.085714 -> d2 8A AF 3D
Guess the Piranhas calculated using "double" then cut it to "single".
So there's no change to get rid of the difference (FB<>D2).


and gigantic numbers... I'm still certain those are floats.talking about class bCColorScale NightSkyColor
0x846: 71 2C C6 6D = 7666469788512741400000000000.000000
and class bCColorScale NightSkyHazeColor?
0xA050: c2 5D 62 EC = -1094639975936653500000000000.000000
I converted the hdrdoc back to hdr and at 0x846 71 2C C6 6D to be found and at 0xA050 there was c2 5d 62 ec again.
So hopefully that should not be a problem (though it's strange).

George
25.10.2015, 08:21
You could create a pull request containing your changes. I've done that with my changes, but I'm still waiting for a reaction from Baltram.
Repository of baltrams rmtools: https://github.com/Baltram/rmtools

Baltram
25.10.2015, 11:38
I've done that with my changes, but I'm still waiting for a reaction from Baltram.Well you would have waited forever if you didn't post this here. The only time I logged into GitHub so far was when I opened the repository.

So I merged the two pull requests and I am very happy Rimy3D can read Risen 3 meshes now - thanks! :)

George
25.10.2015, 11:52
Well you would have waited forever if you didn't post this here. The only time I logged into GitHub so far was when I opened the repository.
I assumed that github sent a notification mail to you, since the pull request affects your repository.

Gegham
25.04.2018, 19:26
Hello how to unpack strings.bin

Dimus
25.04.2018, 23:23
Look over there, Morra: [release] Risen 3 string table [un]packer (lianzifu) (https://forum.worldofplayers.de/forum/threads/1511649-release-Risen-3-string-table-un-packer-%28lianzifu%29).

elButor
17.04.2020, 12:58
Hello Baltram,

I managed to tweak the Risen 3 FOV with your help and your voodoo magic Resource Manager, most confortable for long play.
I can push also the camera distance further and it's also great, I like when enemies have no chance to surprise me.:D

https://1.bp.blogspot.com/-A0DXMmSzrZg/XpmVqBuyk1I/AAAAAAAAAYs/wg8aeV3mfJU1etkur1nSI7ZxaNEpa167ACLcBGAsYHQ/s1600/20200417133723_1.jpg

PS: Now may be the pcgamingwiki should be aware of that trick...works on Elex too!

https://www.pcgamingwiki.com/wiki/Risen_3:_Titan_Lords


(https://www.pcgamingwiki.com/wiki/Risen_3:_Titan_Lords)Thank you for your help and quick response.

Atmus
25.08.2020, 19:24
Is there any tool likes this for Risen 2? I would like to convert xsnd files of Risen 2 to wav or mp3. The tool RisenMP3 does not seem to work on Risen 2 sound files. Or can the author add this functionality?

Baltram
27.08.2020, 03:17
Is there any tool likes this for Risen 2? I would like to convert xsnd files of Risen 2 to wav or mp3. The tool RisenMP3 does not seem to work on Risen 2 sound files. Or can the author add this functionality?Yes there is (https://forum.worldofplayers.de/forum/threads/1141873-tool-r2xsnd).

xRAZORx
06.10.2020, 12:53
Yes there is (https://forum.worldofplayers.de/forum/threads/1141873-tool-r2xsnd).

Risen 3. Is it possible to change the scale of the interface elements (icons on the world map). For some reason, at 2560x1440, the pixels are huge and strong.

popww
26.11.2021, 13:57
Hello everybody! could anyone tell me how to correctly extract Risen 3 resources using Risen 3 Resource Manager from the version for Xbox 360, here this topic has been raised for a long time, judging by post number 19, but the person has not described the entire algorithm of actions for this version, here As I personally try to extract resources, first I convert the GOD format to ISO using the GOD 2 ISO utility, then I use the XBOX 360 ISO Extractor to extract all the game data and drag the necessary .pack archives from the data \ packed directories to the r3resman.exe executable file, but nothing happens, the files are not unpacked. Maybe you need something else? Or do you need to use the original LT + 1.9 version? (sorry for my English)