Chapter 10
Custom football worlds & user content
Keep the original Championship Soccer world intact while adding several community seasons, historical worlds or your own creations. Current Windows updates can load these worlds from folders or local ZIP files in your personal Documents area.
What’s new in current Windows updates
The most important change is that custom football worlds and user content no longer need to replace files in the Championship Soccer installation. The current Windows updates provide a safer, more flexible workflow:
- Keep several football worlds side by side. Install freely named package folders or supported local ZIP files under
Documents\My Games\Championship Soccer, preferably inDataSets. - Choose the world before its leagues. When a valid package is installed, the new Career football world screen appears before Select Database and also shows the fantasy-player switch.
- Give shared content one predictable home. Supported name pools, graphics, team sounds and fan sounds belong in the fixed shared user
Datafolder rather than inside each selected package. - Use packages only to create careers. After import, the career save is self-contained; moving or removing its source folder, ZIP or
StartYear.txtdoes not break that existing career. - Share clearer packages. A package can use
Package.inifor its visible name, author, version and description, while the original Championship Soccer world remains available.
Install the latest Windows update if a valid package does not produce the Career football world screen. No reliable single version number is available for all distributed builds, so the latest update is the dependable reference.
Packages and shared content do different jobs
Custom content is split into two parts. A football-world package provides the leagues, clubs and players used to assemble a new career. Shared user Data provides supported names, graphics and sounds whenever the game asks for them.
| Content | When it is used | Where it belongs |
|---|---|---|
| Football-world package | While a new career is being assembled | A package folder or ZIP in the Championship Soccer Documents folder |
Shared user Data | Whenever a supported custom name, graphic or sound is requested | The fixed Documents\My Games\Championship Soccer\Data folder |
Selecting a package changes the football data used for the new career. It does not turn every file inside that package into a private graphics or sound mod. Keeping the two parts separate makes it possible to install several worlds without altering the supplied program files.
The Championship Soccer Documents folder
On Windows, custom content and normal career saves use:
Documents\My Games\Championship Soccer
For a standard local account this is often similar to C:\Users\Your name\Documents\My Games\Championship Soccer. Use the Documents location known to Windows: OneDrive, company policies or a localised Windows installation may redirect it elsewhere.
A well-used folder can look like this:
Championship Soccer\
├── My Career.ssc
├── Another Career.ssv
├── Data\
│ ├── Names\
│ ├── Graphics\
│ ├── Teamsounds\
│ └── Fansounds\
├── DataSets\
│ ├── Community Season 2026.zip
│ └── Historical World\
│ ├── Package.ini
│ └── Data\
│ ├── League\
│ ├── Team\
│ ├── Player\
│ └── StartYear.txt
├── Replays\
└── Snapshots\
You only need the folders for content you actually use. Missing custom folders are normal; the game continues with its supplied files.
Career saves remain directly in the Championship Soccer folder so existing saves and autosaves continue to work. Save and load screens hide recognised content folders from their top-level list; they do not move or delete them. Saved replays use Replays, and match images captured with F12 use Snapshots.
Preferences and diagnostic logs are machine-local rather than transferable football content. They normally live under %LOCALAPPDATA%\Championship Soccer.
Installing one or more football worlds
The clearest arrangement is one folder or ZIP per world directly under DataSets:
Documents\My Games\Championship Soccer\DataSets\Community Season 2026\
├── Package.ini
└── Data\
├── League\
├── Team\
├── Player\
└── StartYear.txt
If the creator supplies a compatible ZIP, you may instead place the ZIP itself directly in DataSets. Championship Soccer reads it as a read-only world, without extracting it or writing into it.
Other recognised locations
Current updates also recognise packages placed directly in the Championship Soccer Documents root. This keeps older arrangements working and allows freely named folders:
Championship Soccer\Data\...
Championship Soccer\Data2\...
Championship Soccer\Data1.4.0\...
Championship Soccer\Data_Community\...
Championship Soccer\Any descriptive package name\...
Championship Soccer\DataSets\Package name\...
Championship Soccer\Package name.zip
Championship Soccer\DataSets\Package name.zip
DataSets is only a container and is never listed as a world itself. ZIP discovery checks the Documents root and DataSets, not arbitrary deeper folders. Up to 128 custom football worlds can be offered alongside the original world.
Recognised folder names are matched without regard to capital letters. For example, DataSets, datasets, League and league work in the same positions. Use the spellings shown in this manual when sharing a package so its structure remains obvious on every system.
Recognised layouts inside a package
A folder or ZIP becomes selectable when its detected data root contains a League folder with at least one regular file. The data can be placed directly in the package:
Package\League\...
Package\Team\...
Package\Player\...
Package\StartYear.txt
For a package intended for other players, the recommended structure adds one clear Data level:
Package\Data\League\...
Package\Data\Team\...
Package\Data\Player\...
Package\Data\StartYear.txt
Common extraction results with a second Data level or one additional outer wrapper are also accepted:
Package\Data\Data\League\...
Package\Downloaded folder\Data\League\...
These are compatibility conveniences, not a reason to add extra layers. If the same package contains both a flat League folder and a valid nested Data\League, the nested Data form is used. Avoid shipping two competing versions together.
Team should contain the files named by the selected league data. Player is the historical place for separate player-detail files and may be omitted when details are embedded in team files or players are intentionally generated. The Editing game data chapter explains the contents of these files.
Using a world directly from a ZIP
Use an ordinary, single-part .zip archive. Files may use normal Deflate compression or be stored without compression. Password-protected, encrypted, split and multi-part archives are not supported. Unsafe paths, unsupported entry types and ambiguous filenames also prevent an archive from being offered.
| Limit | Supported maximum |
|---|---|
| ZIP file size | 256 MiB |
| Archive entries | 50,000 |
| Declared uncompressed content | 512 MiB in total |
| One content file | 16 MiB |
| ZIP candidates examined in one search | 128 local archives |
UTF-8 filenames and the common historical CP437 and CP850 ZIP encodings are supported. A download address or cloud-sharing link is not a package location: download the actual ZIP first, then place that local file in one of the recognised folders. Renaming another archive format to .zip does not make it compatible.
Giving a package a clear name with Package.ini
Package.ini is optional. Without it, the football-world list uses the package folder name or the ZIP filename without .zip. Place the file at the package top level or directly in the detected data root. For a ZIP, the archive top level is the clearest location:
[Package]
Id = community-season-2026
Name = Community Season 2026
Author = Example Editing Team
Version = 1.2
Description = Clubs and players for the 2026 season.
| Field | What players see or what the game uses |
|---|---|
Id | A stable technical identifier. Use 1–64 ASCII letters, numbers, dots, underscores or hyphens, without spaces. |
Name | The title displayed instead of the technical folder or ZIP name. |
Author | The creator shown in the selected package details. |
Version | The package release shown in the selected package details. |
Description | A short explanation shown in the selected package details. |
Every field may be omitted. Keep one value per line, each value no longer than 512 characters, and the whole file below 64 KiB. Keys are not sensitive to capital letters. Lines beginning with ; or # are comments. UTF-8 is recommended, while the historical Windows text encodings used by Championship Soccer data remain readable.
A missing or unreadable manifest does not invalidate the football world. An invalid Id is ignored without discarding valid visible details. Give every installed package a distinct Name; installing both a folder and a ZIP containing the same world normally creates two entries.
Selecting a football world for a new career
- Choose Start a new career. Quick Start uses its already prepared world and does not import a package.
- When at least one valid custom package is found, choose a source on the Career football world screen. The supplied Original Championship Soccer world remains available at all times.
- Check Use only fantasy players in new careers on the same screen.
- Continue to Select Database and choose the countries and divisions you want from that world.
- Check the displayed career start year, change it if required, then let the game assemble the career.
Custom worlds are ordered by their displayed names, and the list can be scrolled. If no valid custom package exists, the football-world screen is skipped, Select Database opens directly and the fantasy-player value saved in Options is used. Returning from Select Database leads back to the football-world screen when it was part of the current route; returning once more leads to the main menu.
Use only fantasy players in new careers
This is the same setting found in Options, made visible where it matters for the career about to be built.
- Off: named roster entries and player details are imported from the selected
TeamandPlayerdata. The game generates players only where normal squad-building rules require them. - On: the game deliberately creates a new fictional player population instead of importing the supplied named rosters.
If the correct clubs appear but every footballer is newly generated, check this switch first. Authors testing real or predefined squads should normally turn it off.
What the selected package supplies
| Package content | Effect during new-career creation |
|---|---|
League | Countries, competitions, divisions and the teams available for import |
Team | Team information, kits, squads and embedded player details |
Player | Historical separate player-detail files |
StartYear.txt | A suggested initial year for the new career |
Domestic league, team and player files are not silently mixed with same-named files from the original world. This keeps the IDs and relationships inside the chosen package consistent.
If a custom package does not contain the league file named International teams and tournaments, the supplied original file remains available so international competitions can still be created. When the package provides its own file with that name, its version is used.
Other folders inside a selected package do not become package-specific runtime replacements. In particular, Names, Graphics, Teamsounds, Fansounds and AI are not loaded from a named DataSets folder, Data2 or a selected ZIP. Supported replacements belong in the fixed shared user Data structure described below.
Suggesting a career start year
Place StartYear.txt directly in the detected package data root. It should contain one four-digit year from 1000 to 9999:
2026
The file suggests the initial value; it does not force that year. The value shown on Select Database is authoritative and may be changed before import. Championship Soccer chooses the initial suggestion in this order:
- a start year that the player explicitly chose and successfully used before;
- the selected package’s valid
StartYear.txt; - the valid
StartYear.txtsupplied with the installed game; then - 2004 when no valid value is available.
The year supplies the calendar reference for dates and ages; it does not modernise historical club or country names by itself. Changing the file affects careers created afterwards, not a career that already exists.
An existing career does not depend on its package
The selected package is read while a new world is assembled. After a successful import, the career save contains its clubs, players, competitions, fixtures and current date. It does not need the package path, ZIP filename, package Id or StartYear.txt when it is loaded later.
You may rename, update, move or remove a package without breaking a career that was already created from it. That change also does not rewrite the existing career. Keep an older package only if you want to reproduce its setup, compare versions or build another career from the same source.
User sound guide
Custom fan chants, entrance music and goal songs
The current revised Windows version can load custom stadium audio from your personal Documents folder without changing the installed game. The original classic 2004 executable predates this user-data overlay and reads the corresponding files only from the installation’s Data folder.
Choose the path for your game version
| Game version | Active sound locations |
|---|---|
| Current revised Windows version | Fan chants:<Documents>\My Games\Championship Soccer\Data\FansoundsTeam entrance and goal audio: <Documents>\My Games\Championship Soccer\Data\Teamsounds |
| Classic 2004 version | Fan chants:<installation>\Data\FansoundsTeam entrance and goal audio: <installation>\Data\Teamsounds |
<Documents> means the Documents folder currently used by Windows. It may be stored locally or redirected into OneDrive. <installation> means the folder containing the classic game executable. Create a missing sound folder when necessary, and use .mp3 or .wav files for the most dependable compatibility.
For the current revised version, keep custom sounds in the Documents paths shown above. A sound stored only inside a named DataSets package or its ZIP is not used as a runtime audio file. The classic 2004 version does not support the Documents overlay, so its custom sounds and edited source data must remain under the installed Data tree.
Adding custom fan chants
Fan chants do not need a team text-file reference. In the current revised version, place the audio files directly inside shared Documents\My Games\Championship Soccer\Data\Fansounds. As soon as that custom folder contains a usable sound, it becomes the complete fan-sound pool. The game does not mix that pool with the supplied installation pool. If you want to retain any supplied chants, copy every supplied sound you want to hear into the custom folder as well. Removing the custom pool returns the current game to the supplied sounds.
In the classic 2004 version, add the files directly to the installed Data\Fansounds folder instead. Because that installation folder is the classic version’s active pool, make a backup before deleting or replacing any supplied file.
Replacing a song that a club already uses
A team file can already contain a reference such as:
! goal dortmund-tor.mp3
The simplest replacement is to give your new audio the exact same filename, including its extension, and put it in the appropriate Teamsounds folder from the version table above. No team text-file change is required. In the current revised version this also works with an existing career because the saved team continues to request the same filename and only the runtime audio file is replaced.
Assigning new entrance and goal filenames in the current version
A completely new filename changes the team’s source data. Create a custom football-world package, for example Documents\My Games\Championship Soccer\DataSets\My Sound Mod\Data, and begin with working copies of the required League, Team and Player data from the supplied world. Keep every league and team file required by the world you intend to use, because domestic source data is not completed from the original world one missing club at a time.
Open Data\Team\<Club Name>.txt inside that package with a plain-text editor. Add or change the sound instructions alongside the other ! team-header lines and before the first $ player-details block:
! Name "Example United"
! Reputation 10
! goal MyClubGoal.mp3
! intro MyClubEntrance.mp3
! 1 shirt Red1
! 1 shorts White
Enter only the audio filename after ! goal or ! intro. Do not enter a folder path. The playable files still belong in the global shared folder:
<Documents>\My Games\Championship Soccer\Data\Teamsounds\MyClubGoal.mp3
<Documents>\My Games\Championship Soccer\Data\Teamsounds\MyClubEntrance.mp3
Start a normal new career, choose My Sound Mod on the Career football world screen and include its leagues on Select Database. Changing a package team file does not rewrite a career that has already been created. For an existing save, replacing the audio under the filename that the team already requests is therefore the supported simple method.
Assigning new filenames in the classic 2004 version
The classic version has no Documents package route. Back up the original file, then edit <installation>\Data\Team\<Club Name>.txt with the same ! goal and ! intro instructions. Put the referenced audio in <installation>\Data\Teamsounds. Create a new career to import changed team data. An existing career can still use an audio replacement when its already referenced filename remains unchanged.
What plays in a match
! intro assigns the team’s entrance audio. ! goal assigns the home club’s stadium song after a home goal. A competition-specific cup song can take priority over the club song in that competition. In Options, enable both Sound and Fan sounds; the Fan sounds switch also controls team entrance and goal music. Restart the game or begin a fresh match after changing audio files, and check the spelling and extension first when a requested sound does not play.
Preparing a world for other players
A clean distributable archive uses one manifest and one data root:
My Football World.zip
├── Package.ini
└── Data\
├── League\
│ └── Exampleland.txt
├── Team\
│ ├── Example United.txt
│ └── Riverside City.txt
├── Player\
│ └── Taylor, Alex (1997).txt
└── StartYear.txt
Tell players to place the ZIP directly in Documents\My Games\Championship Soccer\DataSets. If the world needs custom name pools, graphics or sounds, distribute them as a clearly labelled second group for the matching shared Data subfolders. Explain that those files are global and can affect other worlds or careers requesting the same filenames.
- Test through Start a new career, not only in a file browser or Quick Start.
- Turn off Use only fantasy players in new careers when testing supplied named squads.
- Confirm that every league entry leads to the intended team file.
- Inspect several squads, kits, ages and nationalities.
- Advance far enough to check league, cup and international fixtures.
- Test the finished ZIP after moving the unpacked development folder away, so the ZIP is the only package copy available.
- Distribute only data, names, graphics and sounds that you have permission to use and redistribute.
Troubleshooting custom football worlds
My package is not listed.
Put the folder or ZIP directly in the Championship Soccer Documents root or directly in DataSets. Its recognised data root needs a League folder containing at least one regular file. For a ZIP, also check that it is an unencrypted single-part Store or Deflate archive within the supported limits. Flat data, Data, Data\Data and one outer wrapper are accepted; deeper arbitrary nesting is not. Capitalisation is not the cause.
The list shows Data1.4.0 or a ZIP filename.
That is the normal fallback when no readable Package.ini provides Name. Add a valid manifest at the package or archive top level to show a friendly title, author, version and description.
Teams appear, but every footballer is fictional.
Turn off Use only fantasy players in new careers before continuing from the football-world screen. If that screen is skipped, turn off the same option in Options, then create another career. Changing it does not rebuild an existing career.
Custom names are not used.
Move the actual name files to shared Documents\My Games\Championship Soccer\Data\Names and make the paths in the league data match their filenames. Name files stored only inside a named package folder or ZIP are not used as package-specific pools.
A custom graphic or team sound is ignored.
Place the file in the matching shared Data\Graphics or Data\Teamsounds folder. Files inside a selected DataSets package or ZIP are not runtime asset sources. A missing or unusable custom file leaves the supplied version available.
Only my custom fan sounds play.
This is expected when shared Data\Fansounds is non-empty. Fan sounds form one complete pool instead of falling back one file at a time. Supply the complete pool you want, or remove the custom pool to return to the supplied sounds.
The career starts in a different year from StartYear.txt.
Check the year shown on Select Database. A previously chosen and remembered year takes priority over the package suggestion, and the displayed value may be changed before import.
I changed the package, but my existing career did not change.
This is expected. A package builds a new career; it is not a live database for a world already saved. Create another normally assembled career to test revised league, team, player or start-year data.
Do I need to keep the ZIP beside my save?
No. The save retains the football world already created from the package. Keep the ZIP only for another new career, comparison or a source backup.