Modding in Full Ace: the Patch system

Modding in Full Ace: the Patch system

How Full Ace finds and loads modded files.

Full Ace uses a Patch system to let mods provide their own versions of game files without modifying the original game installation.

When Full Ace needs to load a file, it first looks for a modded version in the Patch folders. If none is found, it falls back to the original game file.

1. What is the Patch system?

The main Patch folder is located inside the game's LocalData folder:

SteamLibrary\steamapps\common\Full Ace Tennis Simulator\LocalData\Patch

This folder provides a separate location for modded files. A mod can therefore replace or customize game content without changing the files installed by the game itself.

The basic principle When Full Ace loads a file, it first checks the appropriate Patch locations. If a matching file is found, that file is used. Otherwise, Full Ace continues until it eventually falls back to the original installed file.

2. How Full Ace finds modded files

Suppose the game needs to load a file located at:

Relative_Game_Path\filename.ext

For example:

Sounds\fault_01.ogg

Depending on the context, Full Ace checks several Patch locations in a specific order.

Player-specific files

When Full Ace is loading assets specific to a player with Unique ID PlayerUID, it first checks:

1 Patch\Players\xxxPlayerUIDxxx\filename.ext
2 Patch\Packs\PackName\filename.ext
for each pack listed in that player's PackList.txt
3 Patch\Packs\All-Players\filename.ext

Stadium-specific files

When a stadium with Unique ID StadiumUID is active, Full Ace checks the following locations:

1 Patch\Stadia\xxxStadiumUIDxxx\filename.ext
2 Patch\Packs\PackName\filename.ext
for each pack listed in the stadium's PackList.txt
3 Patch\Packs\All-Stadia\filename.ext
4 Patch\Relative_Game_Path\[Surface]\filename.ext

General Patch files

If no more specific file has been found, Full Ace checks:

1 Patch\Relative_Game_Path\filename.ext

Finally, if no Patch file matches, Full Ace falls back to the original installed file.

3. Packs

Packs make it possible to share the same modded files between several players or stadia without duplicating those files.

For example, suppose you create custom balls for a particular manufacturer and want to use them on several stadia.

Patch\Packs\Ball_BrandW\ball_hires.png

You can then add the pack name to the PackList.txt of every stadium where you want those balls to appear:

Ball_BrandW

The same texture can therefore be used by multiple stadia without having to create a copy for each one.

Why use a Pack?

Use a Pack when the same custom content should be shared by several characters or stadia.

Packs have several advantages:

  • Save disk space: a resource only needs to be stored once, even if it is used by many characters or stadia.
  • Centralize resources: shared files are kept in one place, making them easier to organize and maintain.
  • Update resources easily: changing a file in the Pack automatically updates it for every character or stadium using that resource.

A PackList.txt can also target a specific file inside a pack by using:

PackName\specific_file.ext

4. Retrieving Unique IDs

Player and stadium Patch folders are associated with the corresponding object's Unique ID.

The complete Unique ID is not currently displayed in the editor and cannot be copied directly from its interface.

To retrieve it, select the character or stadium you are interested in and export the corresponding data to a CSV file.

Screenshot of the editor showing the export to CSV

Open the CSV file in a text editor. The complete Unique ID can then be copied from there.

Commentaires

Posts les plus consultés de ce blog

Customising a character (or a court)

Hints and tips for animating using akeytsu

Modding animations (from v1.13 onward)