Skip to content

Legendary Edition Modding: Getting Started

Mgamerz edited this page Jun 3, 2024 · 22 revisions

So you want to create a mod for Mass Effect Legendary Edition? Here's some guidance.

Know your terminology

In order to make effective communication about games, ensure you use the correct terminology. You will see many acronyms in the scene.

Games

  • ME1 = Mass Effect (2007)
  • ME2 = Mass Effect 2 (2010)
  • ME3 = Mass Effect 3 (2012)
  • LE1 = Mass Effect 1 (Legendary Edition)
  • LE2 = Mass Effect 2 (Legendary Edition)
  • LE3 = Mass Effect 3 (Legendary Edition)
  • Game (1/2/3) = Mass Effect (1/2/3) OT + LE together
  • OT = Original Trilogy (ME1/ME2/ME3)
  • LE = Legendary Edition (LE1/LE2/LE3)

Tools

  • MEM = Mass Effect Modder (texture installer)
    • MEM has two versions: < 500 and >= 500
      • < 500: Original Trilogy
      • >= 500: Legendary Edition
  • M3 = ME3Tweaks Mod Manager (Mod generator, installer)
  • LEX = Legendary Explorer (Game editor)
  • LEC = Legendary Explorer Core (backend library used by many tools, including LEX)
  • ME3X = ME3Explorer (what LEX was based on - retired in 2021)
  • ME3C = ME3ExplorerCore (backend library that LEC was based on - retired in 2021)
  • Toolset = Legendary Explorer
  • Nightlies / Nightly = "Nightly" build of Legendary Explorer that is built on every code commit to the repository
  • Stable = Checkpoint build of Legendary Explorer that is taken every few months and has additional bugfix work put into it

Groups

  • ME3Tweaks
    • Software development group led by Mgamerz, overall umbrella organization of many different pieces of software (including ME3Tweaks Mod Manager, ALOT Installer, ME3Explorer/Legendary Explorer, and more)
  • Public Modding Discord
    • Public discord for developers and users
  • Workshop
    • Private discord for modding for vetted developers
  • Nexus
    • NexusMods.com

Colloquialisms

  • ME2 Curse
    • Mass Effect 2 (ME2) has long had very frustrating issues to deal with for what seem to be no apparent reason, and is this known as 'cursed'
  • Scene
    • The modding 'scene', which is essentially the modding community. Typically slanted more towards mod development rather than mod use

Mod Formats

  • modesc.ini
    • Mods that install through ME3Tweaks Mod Manager require a moddesc.ini file to tell the program how to display and install the mod.
  • .m3m files
    • A file type installable by ME3Tweaks Mod Manager which can merge changes into files without full file replacement. This mod type is known as a 'Merge Mod'.
  • .tpf files (OT only)
    • Contains texture data that can be installed by MEM versions < 500. TPF files are not supported in MEM versions >= 500.
  • .mod files (OT only)
    • A very old and obsolete mod format that could replace specific data in package files. It was version dependent and should never be used for new mods.
  • .mem files
    • Texture mod that can be installed by Mass Effect Modder. In the OT, it also can patch exports using it's 'xdelta' feature.

Technical

General Terms

  • UE3
    • Unreal Engine 3, the game engine used for all three games, both OT and LE. Each game has a different version of the engine. LE games are mostly based on an updated version of ME3's engine.
  • .PCC
    • Package file, see below. Stands for PC Console.
  • TLK
    • Talk Table. All text strings found in the game, including subtitles, item names/descriptions, etc. are contained in Talk Tables. Each string has a number, or string ref, that is used to identify it in the game. In Game 2 and 3, there is a single "global talk table" that contains all strings. DLC mods can add and replace entries in these files. In Game 1, many files have their own talk tables, which makes updating them more difficult.
  • LOC_INT
    • An internationally localized file, in English. These files typically contain audio and dialogue. Each game localization will have it's own set of these files with a different suffix.

Package Terms

  • Package file
    • .pcc file. Contains the majority of the game data, including meshes, textures, scripting, etc. Has 3 components: Imports, Exports, and Names.
  • Export
    • An export defines an object in a package file. For example a mesh or texture metadata
  • Import
    • References an import already loaded into memory. Typically from a higher tier file, like the level's master art file or an always loaded file
  • Name
    • A string that is referenced by it's index in the name table

Texture Terms

  • TFC
    • Texture File Cache. Used in all games except ME1. It's a file with headerless texture data concatenated one after another. This data is referenced by its offset in the file by various texture exports.

Audio Terms

  • AFC
    • Audio File Cache. Used in all games except ME1 / LE1. It's a file with Wwise-encoded audio data concatenated one after another. This data is referenced by its offset in the file by WwiseStream exports.
  • Wwise
    • The audio middleware software used in Game 2 and Game 3. The correct version of the Wwise Authoring Interface must be installed on your computer to replace audio in ME3, LE2, and LE3. Audio replacement for ME2 is currently not possible because we do not have access to the Wwise version used.
  • ISACT
    • The audio middleware software used in Game 1. The acronym stands for Interactive Spatial Audio Composition Technology, and it was released by Creative Labs in the mid-2000s and was abandoned in the mid to late 2000s. Version 1.64 is required in order to modify audio in LE1.

Compression Terms

  • SFAR
    • Compressed archive file that contains all the files in a official BioWare DLC for ME3. All DLC uses the name 'Default.sfar' and can be unpacked using the toolset's DLC Unpacker tool. The Patch_001.sfar file is an exception; this DLC cannot be unpacked, but can be updated by ME3Tweaks Mod Manager.
  • ZLib
    • Lossless compressor algorithm used by ME3 for packages and textures.
  • LZO
    • Lossless compressor algorithm used by ME1 and ME2 for packages and textures.
  • Oodle
    • Lossless compressor algorithm used in LE1/2/3 for packages and textures.
  • LZX
    • Lossless compressor algorithm used on Xbox 360 OT games's packages, textures, and ME3's SFARs on Xbox 360. You are very unlikely to ever encounter this.
  • LZMA
    • Lossless compressor algorithm that is the commonly used in '7z' archive files. This algorithm is also used on PS3 and WiiU OT games for textures and packages, as well as ME3's SFARs on PC/PS3/WiiU. Additionally, it is used in a lot of under-the-hood development in various software used in the scene.
  • Huffman (sometimes called Huffman Tree)
    • A text compressor that is used to shrink the disk size of text-based data
Clone this wiki locally