Skip to content

wttdgit/unpackTool_EAgames

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

仅仅搬运、并按需简化:

  • =============================================================
  • 战地4 工具:
  • a.运行寒霜3里面的1和2输出ogg音频数据
  • b."输出路径" == "输入路径_sound",
  • 例如1.dump 原版游戏为 "E:\unpack_Battlefield4"、  2.dump 则默认输出为 "E:unpack_Battlefield4_sound"
    
  • c.其他老旧的寒霜2引擎游戏,可以用寒霜2里py覆盖进来尝试dump,我没有亲自测试
  • =============================================================
  • apex、titanFall2 工具:LegionPlus及相关小工具
  • (大量wav按首字符串归类文件夹、及复原、及wav转ogg的批量)
  • =============================================================

These are Python scripts that allow you to extract assets from Frostbite Engine games. They're based off Frankelstner's scripts, I've updated them to Python 3 and did a bunch of tweaks and cleanups to them.

All scripts require Python 3 (64-bit)!

There is one folder for each Frostbite version:

  • frostbite2
    • Frostbite Engine 2 (2011-2012) - Battlefield 3, Need for Speed: The Run, ...
  • frostbite3
    • Frostbite Engine 3 (2013-present) - Battlefield 4, Need for Speed: Rivals, ...
    • Newest games from 2018 and later (Star Wars: Battlefront II, Battlefield V, FIFA 19, Anthem) are not supported yet.

IMPORTANT! Some games require proprietary libraries that I can't distribute here. You'll need to get them youself if you want to extract those games:

  • Some X360 games use X360 compression on some SB files. Find Xbox 360 File Decompression Tool (xbdecompress.exe) and put it into thirdparty directory.
  • FIFA 18 uses Oodle compression. Grab oo2core_4_win64.dll from your game installation and put it into thirdparty directory.

In each directory, you'll find the following scripts:

  • dumper - adjust the paths at the start and run it to dump all the contents of superbundles; all the other scripts are meant to be used with the resulting dump
  • ebxtotext - converts EBX files to plain text TXT; useful if you want to view the game's scripts, etc
  • ebxtoasset - runs through EBX files and uses known EBX types to extract assets from chunks, the resulting file takes the EBX name; currently, only sounds and movies are supported

To eleborate on Frostbite asset structure, all data is contained inside superbundles (SB files). Each superbundle contains bundles and each bundle, in turn, contains the following file types:

  • ebx - these are so called asset nodes; this format is the cornerstone of Frostbite, they're used to reference the actual game assets stored inside res and chunk files as well as store game scripts, configurations, etc
  • res - these contain assets like mesh headers, animations, shaders, texture headers, sometimes movies
  • chunk - these contain assets like meshes, textures, movies, sounds, etc

Additionally, superbundle itself can also contain chunks.

So if you want to get the game assets you need to take the EBX files and use them to find your data inside the chunks. This is what ebxtoasset script does for you. Frostbite has many different EBX asset types, here are the most relevant ones:

  • SoundWaveAsset - general sound asset, references chunks containing SPS files (standard EA audio format they've been using since 2010)
  • NewWaveAsset, LocalizedWaveAsset - new sound asset types introduced in 2017, similar to SoundWaveAsset but all data about variations and segments is stored in NewWaveResource RES file
  • TextureAsset - references texture header (DxTexture, Texture, ...) RES file which references chunk containing raw image data for each mipmap level
  • SkinnedMeshAsset, RigidMeshAsset, CompositeMeshAsset, ... - references mesh set header (MeshSet) RES file which lists chunks containing meshes for each LOD

CREDITS:

  • Frankelstner - initial research of Frostbite formats and original Python scripts
  • NoFaTe - some improvements to Ebx and DbObject parser

Libraries used:

About

搬运:https://github.com/NicknineTheEagle/Frostbite-Scripts.git 按需简化为:frostbite3\1、2两个py (for:BattleField4)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages