Skip to content

Content Packs

Content packs allow adding content to the game on a file system level. For content created from within the game, these are automatically created, but they can also be downloaded from and shared on the Steam Workshop (or possibly other places).

The most common way of creating content is saving a wrestler in Create A Wrestler: the wrestler is saved as a content pack that contains that wrestler and potentially imported content.

However, content packs can also provide assets. For this, content packs have to be authored on the file system. This manual will give you an overview about how content packs work and also provides an example.

Categories & File System Locations

Content packs can reside at different places that the game scans, each placing the corresponding content in a category. These categories are described in the following.

ℹ Content is only scanned at the start of the game. New or changed content will not be detected until you restart the game.

Player Creations

Player creations refers to content that was authored by the local player. For example, wrestlers that you created in Create A Wrestler fall under this category, but also any content pack that you create using this guide should be placed in here. Think of player creations as the content that you created, or own the intellectual copyright to. You can share your creations using the Content Screen.

Depending on your operating system, you can find player creations on your file system using the following table.

Operating System Location
Windows %USERPROFILE%\AppData\LocalLow\pdinklag\Casual Pro Wrestling\Creations
Linux ~/.config/unity3d/pdinklag/Casual Pro Wrestling/Creations

Steam Workshop Content

Content created by others that you downloaded from the Steam Workshop by subscribing to it will reside in a directory automatically managed by Steam.

Manually Installed Content

Content created by others can also be installed manually by placing it in this directory. The only real difference to player creations is that content placed here is not considered yours, and thus you cannot share it.

Depending on your operating system, you can install content by placing it in your file system using the following table.

Operating System Location
Windows %USERPROFILE%\AppData\LocalLow\pdinklag\Casual Pro Wrestling\Content
Linux ~/.config/unity3d/pdinklag/Casual Pro Wrestling/Content

Core Content

Core content refers to content that is shipped with the game. It cannot (or rather should not) be modified and is subject to change anytime the game is updated.

The Anatomy of a Content Pack

This section describes what makes a content pack.

Content.json

Content packs are identified by a file named Content.json that must reside in the pack's directory. They contain meta information about the content pack that is important for sharing. Here's an example for this file:

1
2
3
4
5
6
7
{
    "Guid": "00000000-0000-0000-0000-000000000000",
    "Build": 1,
    "DisplayName": "My Content Pack",
    "Description": "Contains cool stuff!",
    "Author": "Somebody"
}

The properties have the following meanings.

  • Guid: Stands for "Globally Unique Identifier" and is just that, an especially formatted ID that uniquely identifies your content pack. That means that each and every content pack should have a unique GUID that no other content pack ever uses. This is used for content dependency management as well as online multiplayer (to make sure joining players have all necessary content). In that regard:

⚠ Never copy the GUID of a different content pack! Doing so would create a conflict when players try to install both content packs. Trying to share content with a duplicate GUID will fail unless the corresponding content's owner is yourself.

ℹ The game will automatically generate a GUID if the Guid field is missing or contains the empty GUID (00000000-0000-0000-0000-000000000000).

  • Build: The build number provides additional versioning information to your content pack. Whenever your content pack changes, e.g., to slightly change a wrestler's appearance or to fix a problem, the build number should be incremented. It is used for dependency management as well as online multiplayer. It is your responsibility to set a unique new build number when your content pack changes, see How to use Build numbers? for more information. Unless you want to publish a new major version of your content that is very different from an earlier version:

⚠ Never change your content pack's GUID once any version of it has been shared! Increment the Build number instead! Doing so will have the game to treat is as a different content pack, causing problems for any content pack that may depend on it.

  • DisplayName: This is the name of the content pack displayed in the Content Screen. It is only ever used to show a nice name to the player, because GUIDs aren't really human-readable.
  • Description: This should contain a brief description of the content. It does not have to be verbose.
  • Author: You should enter your name or pseudonym here.

How to use Build numbers?

The build number is meant to distinguish different versions of your content pack. If you decide to change something about your content pack, your build number should change (but not your GUID). The easiest way to make sure you never use the same build number twice, you can simply increment it for your new version. So after doing your changes, if the build number was 1, change it to 2. Next time, change it to 3, and so on.

If you change your content from within the game (e.g., Create A Wrestler), the build number of your content pack will be incremented automatically.

Preview Image

A content pack can have a preview image that is used when sharing it. They are given by placing a file named Preview.png into the content pack's directory. It can at most 256x256 pixels.

To make your preview image fit to the automatically generated previews for created wrestlers, you may download and use the following background image:

Preview Background

Content

Finally, a content pack should feature some actual content. Content packs created from Create-A-Wrestler will feature the corresponding wrestler. Apart from this, content packs featuring assets can be created to expand creative possibilities in Create-A-Wrestler as described below.

Assets

Apart from creations like wrestlers from Create-A-Wrestler, content packs may provide assets for use in Create-A-Wrestler. This section covers what assets are supported and where to place them to be loaded.

Note that you can mix any types of assets in a content pack. It is, however, advisable, to stick to one theme per content pack (e.g., "Awesome Stamps", "Sick Overlay Textures", or maybe "Halloween Stamps & Overlays").

Overlay Textures

Overlay textures are used for attires in Create-A-Wrestler.

Custom overlay textures must be placed in a directory named OverlayTextures inside your content pack. The only supported file format is JPG. Overlay textures consist of a diffuse and optionally a normal map. An accompanying JSON file can be used to set some default parameters.

Normal Maps

The normal map must be in OpenGL format and have the same name as the corresponding diffuse map with the additional suffix _n. For example, if you have a diffuse map named texture.jpg, then the normal map must have the filename texture_n.jpg.

JSON Parameters

You can provide default parameters in a JSON file with the same name of the diffuse map. For example, if you have a diffuse map named texture.jpg, then the JSON file must have the filename texture.json.

The following JSON contains all supported parameters with their default values:

{
    "DefaultColorHue": 0.0,
    "DefaultColorSaturation": 1.0,
    "DefaultColorValue": 1.0,
    "DefaultTexShift": {
        "x": 0.0,
        "y": 0.0,
    },
    "DefaultTexRotation": 0.0,
    "DefaultTexTiling": {
        "x": 1.0,
        "y": 1.0,
    },
    "DefaultSmoothness": 0.125
}

The parameters work as follows:

  • DefaultColorHue: The hue (between 0 and 1) to set when the texture is selected. See Coloring Notes below for more details.
  • DefaultColorSaturation: The default color saturation (between 0 and 2) to set for when the texture is selected.
  • DefaultColorValue: The default color value (between 0 and 2) to set when the texture is selected.
  • DefaultTexShift: The default texture shift (in relative coordinates) to set per axis when the texture is selected.
  • DefaultTexRotation: The default texture rotation (in degrees) to set per axis when the texture is selected.
  • DefaultTexTiling: The default texture tiling (in relative coordinates) to set per axis when the texture is selected. Note that this is a tiling value and not a scale value like in the attire editing menu – scales are the negated base-2 logarithm of the tiling, which is more intuitive for editing.
  • DefaultSmoothness: The default smoothness (0 to 1) to set when the texture is selected.

Coloring Notes

To ensure that your texture's colors are in sync with the color wheel in the attire editing menu, your diffuse map's primary color should be red (e.g., correspond to a hue value of zero). It may be a good idea to recolor your texture to a red hue and use the DefaultColor* parameters to adjust the default.

For example, take the Denim texture that is shipped with the game: the original texture is actually red denim, but the DefaultColorHue is set to 0.6 to makes it blue when the player selects it.

Additional Notes

  • Filenames must have the .jpg extension (lowercase).
  • Accompanying normal maps must have the same file name with the additional suffix _n (e.g., texture_n.jpg).
  • Accompanying JSON files must have the same file name but with a .json extension (e.g., texture.json).
  • Overlay textures files must not be larger than four mebibytes (4 MiB, diffuse and normal each) and must have a maximum dimension of 2048x2048. Larger textures are not imported.
  • If a stamp is not being loaded, please check the logfile for any relevant messages regarding the file.

Stamps

Stamps are used to paint on attires and the skin in Create-A-Wrestler.

Custom stamps must be placed in a directory named Stamps inside your content pack. Supported file formats are PNG (with transparency) and SVG.

The stamps can feature any colors. The color selected in the stamp editing menu is used for multiplication blending. If you want your stamp to behave consistently with the shipped stamps, be sure to make it greyscale and sufficiently bright.

Additional Notes

  • Filenames must have proper extensions (either .png or .svg, lowercase).
  • Stamp files must not be larger than one mebibyte (1 MiB) each. Larger files are not imported.
  • PNG stamps have a maximum size of 512x512 pixels. If either the width or the height is more than 512 pixels, the stamp file is not imported.
  • If a stamp is not being imported, please check the logfile for any relevant messages regarding the file.

Example

This section features an example content pack containing some dragon-themed assets that you can use for reference.

Dragon Assets Example

Download the file DragonAssetsExample.zip (5.44 MB) and unpack it in your Creations directory. The next time you start the game, the content pack "Dragon Assets Example" should have been detected as you can verify on the Content Screen. Go into Create-A-Wrestler mode and add some piece of attire. The dragon-scales overlay texture should be available from the DragonAssetsExample category, as well as the spiked-dragon-head stamp:

Dragon Assets Example in action

Ingredients

If you browse into the downloaded DragonAssetsExample directory, you will find that the example consists of the following:

  • The Content.json file containing the content pack's meta information.
  • The Preview.png file with a preview.
  • The OverlayTextures directory containing the dragon scales overlay texture:
    • The main texture dragon-scales.jpg (diffuse map) as downloaded from freepbr.com (dragon-scales-unity.zip), recolored to red to be in sync with the color wheel.
    • The normal map dragon-scales_n.jpg from the same source.
    • A JSON file containing default parameters.
  • The Stamps directory containing the spiked dragon head stamp:
    • The SVG file spiked-dragon-head.svg as downloaded from game-icons.net.

Credits

The example features the following content: