Asura Engine ASR RSCF RSFL: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks (→Games) |
imported>Ikskoks |
||
| Line 134: | Line 134: | ||
== See Also == | == See Also == | ||
* [[ | * [[Asura Engine RSCF (Model)]] | ||
* [[ | * [[Asura Engine ASR (Zlib)]] | ||
<br/><br> | <br/><br> | ||
Revision as of 13:22, 16 January 2022
Back to index | Edit this page
ASR
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// Asura Engine
// ASR file format
// Chunk signatures...
// 'RSCF' (Resource File)
// 'fmvs' (Subtitles)
// 'FNFO' (File info)
// 'FNTK' (Font Description
// 'FONT' (Font)
// 'HTXT' (Text Strings)
// 'LTXT' (Text Strings)
// 'PTXT' (Text Strings)
// 'TTXT' (Text Strings)
// 'RSFL' (Resource File List)
// 'RUDE' (Rude Words List)
// many more ...
// little endian
// ARCHIVE HEADER
8 bytes (char) - not packed archive signature ("Asura ")
// FILE DATA
// for each file
4 bytes (char) - Chunk Signature // e.g. "RSFL"
4 bytes (uint32) - Chunk Length // from start of Header
4 bytes (uint32) - Version // e.g. 1
4 bytes (uint32) - Subversion // e.g. 0
if (Signature == "RSCF"){
// Resource File - a file in the archive
4 bytes (uint32) - Resource Type
4 bytes (uint32) - Resource Type2
4 bytes (uint32) - Resource Data Length
X bytes (char) - Filename
1 byte - null Filename Terminator
0-3 bytes - null Padding to a multiple of 4 bytes
X - Resource Data
// RSCF types for "Aliens vs. Predator 2010" in other games can mean something else.
// Type, Type2
// 0, 0x7 - Grass carpet
// 0, 0x8 - Botanicals
// 0, 0xB - Enviroment data (map geometry)
// 0, 0xC - Material Response Texture
// 0, 0xD - Static Decals
// 0, 0xE - Material response pixel shaders
// 0, 0xF - Model
// 2, 0x0 - Image
// 3, 0x0 - Sound
}
else if (Signature == "RSFL") {
// Resource File list. list of imports?
4 bytes (uint32) - Count of RSFL entries
// RSFL_ENTRY
X bytes (char) - file_name // can contain path
1 byte - null file_name Terminator
0-3 bytes - null Padding to a multiple of 4 bytes
4 bytes (uint32) - offset
4 bytes (uint32) - file_size
4 bytes (uint32) - unk // always 1
// Note: to obtain offset to file from start of decompressed ASR archive.
// Use this formula: File_offset = RSFL_ENTRY[i].offset + rsfl_chunk_size
}
else {
// other chunks
}
// Padded end
16 bytes - nulls
MultiEx BMS Script
Not written yet.
QuickBMS Script
Notes and Comments
- File format is used by games made on Asura Engine.
- In "Aliens vs. Predator: Requiem" some of the ASR archives have extension *.EN, *.GUI and *.PSP. Format of this archives starts with FNFO chunk.
Games
List of games using this file format:
- Aliens vs. Predator: Requiem (PSP) (*.ASR)
- Alien vs Predator (2010)
- Battlezone (2017)
- Evil Genius 2: World Domination
- Guard Shield
- Judge Dredd: Dredd vs. Death
- NeverDead
- Prism: Guard Shield
- Rogue Trooper
- Rogue Trooper Redux
- Rogue Warrior
- Shellshock 2: Blood Trails
- Sniper Elite
- Sniper Elite V2
- Sniper Elite: Nazi Zombie Army
- Sniper Elite: Nazi Zombie Army 2
- Sniper Elite III
- Sniper Elite 4
- Strange Brigade
- World War Zero: Iron Storm
- Zombie Army Trilogy
- Zombie Army 4: Dead War
Compatible Programs
- Game Extractor
- Asura .asr\asrBE\en\enBE Tool
- RSFL_ASR (dont tested on asura engines after 2010)
- AsrTextExtractor.zip
- Asura Engine Extractor
See Also