Championship Wrestling Promoter: Official Save File Modding Guide

This is the official guide to modifying Championship Wrestling Promoter save data, particularly creating roster mods. Importing of modded save files is natively supported in CWP.

Introduction

Championship Wrestling Promoter was designed for it to be easy to open the save files and edit them with very little technical knowledge. The upside of this approach is that nearly anyone who can use a computer can make changes to the game without needing to know any coding or have any special tools. Our approach is not as flexible or powerful as games that allow for bigger modifications (like adding new modules or uploading custom sprites), but making this process as easy as possible was our priority.

The save files for Championship Wrestling Promoter are all stored in JSON format. JSON files are plain text with a little bit of formatting that organises the data into simple hierarchies. They are usually human readable and can be modified in any regular text editor. All of the screenshots in this guide were made in a program called Notepad++, which is one good option if you want to open up the save files and poke around.

The files are stored in the Users directory on the hard drive where Windows is installed. The full path to find them is:

C:\Users\<YOUR WINDOWS LOGIN>\AppData\LocalLow\Pykrete Games\Championship Wrestling Promoter\Data

The save files for Championship Wrestling Promoter are actually 7 different files, each of which stores data for different parts of the game. Those files are:

championships.json
emails.json
factions.json
fedinfo.json
finances.json
rivals.json
wrestlers.json

This guide will explain the steps necessary to modify each of these files, and they’re ordered roughly in order of importance.

Before jumping into the first file, I have one very important piece of advice:

TAKE A BACK-UP BEFORE MAKING ANY CHANGES

There is no way to recover a corrupted save file, so make sure you have an unmodified version to roll back to in case you make any mistakes.

As a general rule text fields are limited to 25 characters. Any text longer than that may cause formatting problems when loaded into the game.

Basic company info

The fedinfo.json file contains standard information about your company such as its name, as well as some additional game data like where in the calendar the game currently is.

The first few lines of the file store game options, and we do not recommend modifying those.

The remaining options are shown in the screenshot below:

Weekly show date:
A number from 0-5, with 0 meaning Sunday and 5 being Friday. Do not set this value to 6, because Saturday is reserved for pay-per-views.

Home regions:
0 Africa
1 Asia
2 Europe
3 North America
4 South America

Touring country:
This changes each month as your promotion goes on tour around the globe. The list of valid countries is as follows:
Argentina
Brazil
Canada
China
Colombia
Congo
Egypt
Ethiopia
France
Germany
India
Italy
Japan
Mexico
Nigeria
Peru
Russia
South Africa
United Kingdom
United States
Venezuela

Interviewer:
Any text string is valid

Current week:
0-3

Current month:
0-11

Current year:
Any 4 digit number

PPV Week:
true or false

Various ring colours:
Values from 0-44 are valid. These numbers follow the in-game colour selection grid.

Roster

The data for all of the wrestlers in the game, including retired wrestlers, is stored in roster.json. While most of the save files for Championship Wrestling Promoter store only a small number of fields, each wrestler stores several different types of data, including statistics, a move list, their current contract, and more. This section will explain how to modify the values in each part of the wrestler data.


ID:
Each wrestler has a unique ID, which is used to link them to other objects in the game. IDs are sequential (1, 2, 3, etc.). Exercise extreme caution when modifying IDs, as any errors with ID values could cause a wide range of bugs in the game.

First name, last name, nickname, hometown:
Any text value is valid

Nickname only:
true or false. This determines whether a wrestler’s name should appear in the game as their full name (ex. Bret “The Hitman” Hart) or use only their nickname (ex. The Hitman).

Height:
Measured in inches

Weight:
Measured in pounds

Birth week:
0-3

Birth month:
0-11

Birth year:
A 4 digit number

Is male:
true if the wrestler is male, false if not

Retired:
true or false. Retired wrestlers are kept in save files because they may be referenced elsewhere (for example, in the list of previous title holders for a championship).

Work rate, psychology, selling, crowd, charisma, solo promos, opposed promos:
Numerical values on a 1-15 scale

Fitness:
0-3. Normally leave this is as, since it’s updated in-game every week.

Over:
0-100. In-game this is called “Popularity”. This is not the wrestler’s Overall rating.

Morale:
0-100

CurrentUP:
This is the number of Usage Points a wrestler has earned in the current month. It is generally recommended not to modify this except to reset it to 0 if you’re creating a mod for a new game.

Injured shows:
How many weeks in the current month a wrestler has missed due to injury. Any numerical value is valid.

Potential:
Values range from 0-3. This is used by the game’s statistical simulation for things such as aging. The roles roughly correspond as 0 = star, 1 = upper mid-card, 2 = lower mid-card, 3 = jobber.

Face:
true or false

Style:
0 Aerial
1 Brawler
2 Powerhouse
3 Striking
4 Submission
5 Technical


By default the move list for each wrestler includes 10 moves, somewhat randomly selected based on the wrestler’s style. If you are modifying the move list ensure that there is at least one move of every type or the match simulation engine could fail.

Name:
Any text string is valid. There is no list of allowed or disallowed move names in the game.

Move type:
0 Slams
1 Submissions
2 Strikes
3 Aerial


You will probably find it substantially quicker and easier to edit wrestler sprites using the in-game character editor, but instructions are provided here for anyone who would rather modify the JSON data.

Wrestler graphics in the game are composed of a collection of images layered on top of each other. Any value in the “sprite” section that lists true or false indicates to the game whether to show the referenced sprite. For example, if elbowPads = false, that tells the game not to draw elbow pads for this wrestler.

Skin Option:
0-4. Higher number means darker skin.

Colours:
For everything other than hair, the standard colour grid is used, with values from 0-44.

For hair, the values range from 0-20.

Armgear option:
0-5 for male wrestlers, 0-3 for female.

Hair option:
0-8

Facial hair option:
0-5. Male wrestlers only.


The first trait always indicates a wrestler’s alignment (face or heel). The second trait always indicates a wrestler’s style (as described above). If this format is not adhered to it could cause bugs or even prevent some parts of the game from running, so if you are modifying traits ensure that the first trait is an alignment and the second trait is a wrestling style.

In the future this guide will be updated with more detailed information on all the possible traits available in the game and how to modify these values. For now it is recommended not to change them.


Salary:
Any number is valid

Expiration year:
Any number is valid (although if you set it to a year prior to the current in-game year it will likely cause errors)

Expiration month:
0-11

Usage target:
Any number is valid. By default a wrestler’s usage target will rarely be higher than 5 or 6.

Assigned company:
-2 Retired
-1 Free agent
0 Player’s company
1-3 AI Rivals in the order they appear in the rivals.json file

Negotiation locked:
0 Not locked (ie. the wrestler is open to negotiating)
1 Locked until the beginning of the next month
2 Wrestler has chosen to leave their current company


Feuds are linked to other wrestlers based on their IDs. The ID field references the ID field at the beginning of each wrestler’s data. Heat can be any numerical value, although under normal circumstances the maximum Heat a feud can have in the game is 9.

Factions

Data on factions is stored in factions.json.


IDs for factions work similarly to how they work for wrestlers. Each faction must have a unique ID or it will cause errors in the game. IDs generated in the game run sequentially.

Label is a text string that stores the faction’s name.


ID:
The ID listed for the wrestler in wrestlers.json

Affinity:
0-10


IsFace:
true if the faction’s alignment is face, false if it’s heel

Finisher:
A text string

Assigned company:
0 Player’s company
1-3 AI Rivals in the order they appear in the rivals.json file

Rival faction ID:
Refers to the ID field at the beginning of a faction’s entry in this file

Rival faction heat:
0-9

Championships

Data on the championships in the player’s company are stored in championships.json. For the championships in rival companies, view the file rivals.json.


Championship name:
A text string

Mens title:
true or false
Please note that the game expects there to be 6 championships and for them to be split evenly between men and women. If you modify the belts to change those numbers some parts of the user interface may not display correctly.

Main title:
true or false
This is used for singles’ titles to differentiate between the top title (ex. the “World” championship) and the secondary title.

Tag title:
true or false

Belt design:
0-5

Belt colour:
0-44
Uses the same colour grid as the character editor.

We would generally recommend customising belts using the in-game editor, as it will be much quicker.

Current holder ID:
For singles titles this is a single ID that matches the ID of the wrestler who currently holds the title. For tag titles this is an array of two IDs.

Reign duration:
This value is not currently used anywhere in the game.

Defences:
A number indicating how many times the title has been successfully defended by the current champion.


The former holders list is an array that all the previous championship reigns for the selected championship.

Former holder ID:
This follows the same rules as the current holder ID.

Reign duration:
The number of times the championship was successfully defended before it was either lost or vacated.

Rival companies

The rivals.json file contains information on all the AI rivals in the game. The data all mirrors data mentioned in other parts of this guide for your own promotion.

It is recommended not to edit the TV rating data.

The Name and Short Name fields are text fields. The Short Name should be kept to 3 letters or it may cause display issues in the game.

Each rival promotion also keeps a championship history that works the same way as the player’s championship history, and it can be edited in the same way.

Financial data

Financial data is stored in finances.json. Most of the file contains arrays that store historical financial data, such as merchandise sales and TV ratings. It is generally recommended not to modify that data.

The first two items in the finances.json file are safe to edit. They are:

Total budget:
The amount of money the owner of the company has given you to spend in the current year.

Profit target:
The amount of money they owner expects to make in profit during the current year in order to get a good review at the end of the year.

Emails

It is generally recommended not to edit the emails, except to delete emails if you’re creating a mod and want a clean email list for anyone who loads the modded save file.

If you are doing this please note that you should not delete the entire file, or it could cause errors. If you want a blank email list, the file should look like this:

Exporting and importing roster mods

As mentioned in the introduction, save files are located on the drive where you have Windows installed in the following folder:

C:\Users\<YOUR WINDOWS LOGIN>\AppData\LocalLow\Pykrete Games\Championship Wrestling Promoter\Data

The folder should look like this:


To share a save file with other players, simply share the contents of this folder. The easiest way to do that is to put all the files in a ZIP file and share the ZIP file.

IMPORTANT:

Please only download files from users you trust, just like you would with any other file on the Internet. Pykrete Games does not officially endorse any specific roster mods and we are not responsible for any files you download outside the game.

To import a save file, select the Import Save option on the main menu. Then navigate to the folder where you’ve stored the modded JSON files and click the “Select” button. If the save file has the correct format and is free of errors, it will be imported into your save directory. You can then started playing with the modded data by selecting the Continue button on the main menu and playing the game as normal.


Thanks to pykretegames for his great guide, all credit to his effort. you can also read the original guide from Steam Community. enjoy the game.

Post Author: Robins Chew

Leave a Reply

Your email address will not be published. Required fields are marked *