How to make an image replace or a reskin mod?

From Academia: School Simulator
Revision as of 16:14, 11 October 2017 by Marnel.estrada (talk | contribs) (More Guides)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Requirements

Instructions

  1. Locate Academia's installation folder. If you bought the game through Steam, you can follow this guide.
  2. Open the file at {Academia Install Folder}/Academia_Data/StreamingAssets/BaseGame/Data/TileSpriteMapping.xml using your favorite text editor. (If you're not familiar with XML, you can look at the quick primer here.)
  3. This file contains all the mapping of the images used in the game. Every Entry element has the following attributes:
    • id - Used by the game internally to identify such image
    • streamingPath - The path of the actual image file relative from {Academia Install Folder}/Academia_Data/StreamingAssets folder. For example, if we look at an entry <Entry id="BrickWall" streamingPath="BaseGame/Tiles/Wall/WallTextureBrick.png" />, you can browse to {Academia Install Folder}/Academia_Data/StreamingAssets/BaseGame/Tiles/Wall and see the file WallTextureBrick.png right there.
    • pack - Whether or not the image will be packed. This is used internally. No need to specify if the original entry doesn't have it.
  4. You're not going to edit this file. Rather, you use this file as reference on what image to reskin and where to find them.
  5. On the mod folder that you've set up, there's a default TileSpriteMapping.xml file under Data folder.
  6. To replace images with your own version:
    • Provide you own rendition of the images and save them under your mod folder. You can organize your images through subfolders.
    • You specify the entries that you want to replace in Data/TileSpriteMapping.xml, but this time you replace the streamingPath attribute with the path of your image relative from your mod folder.
    • For example, you're looking at this entry and you want to change it: <Entry id="TableDown" streamingPath="BaseGame/Tiles/Objects/TableCommonDown.png" />
      • To see the original image of this entry, browse to {Academia Install Folder}/Academia_Data/StreamingAssets/BaseGame/Tiles/Objects/TableCommonDown.png.
      • We suggest you copy this file to your mod folder. Let's say in your mod folder, you want to organize things and you want to place object images to a folder named Objects. You make this folder and copy the file here.
      • You can open the image file in your favorite image editing software and make your own rendition of the image. Say you renamed it to CustomTableCommonDown.png.
      • Next is you will need to edit Data/TileSpriteMapping.xml in your mod folder. You specify:
        <TileSpriteMapping>
        <Entry id="TableDown" streamingPath="Objects/CustomTableCommonDown.png" />
        </TileSpriteMapping>
      • At this point, you can test your mod if it did replace the image you intended to replace.
      • You can replace as many images as you want and you can specify as many entries as you want in your Data/TileSpriteMapping.xml like this:
<TileSpriteMapping>

  <Entry id="TableDown" streamingPath="Objects/CustomTableCommonDown.png" /> 
  <Entry id="TableLeft" streamingPath="Objects/CustomTableCommonLeft.png" />

  <Entry id="LockerDown" streamingPath="Objects/CustomLockerDown.png" />
  <Entry id="LockerLeft" streamingPath="Objects/CustomLockerLeft.png" />
  <Entry id="LockerUp" streamingPath="Objects/CustomLockerUp.png" />

</TileSpriteMapping>

Sample Image Reskin Mod

  1. Download this mod and extract it to your root mod folder. The folder structure should look like this:
    <Root Mod Folder>
    Prison Uniforms Sample
    Data
    TileSpriteMapping.xml
    Images
    Characters
    CharacterTexturePrison.png
    DummyContent.txt
    PreviewImage.png
  2. It's a simple mod where the students' uniform is replaced with prison uniform. The only entry needed in TileSpriteMapping.xml is
    <Entry id="Characters" streamingPath="Images/Characters/CharacterTexturePrison.png" pack="false" />
  3. This mod can be tested right away.

Notes

General

  • When your mod is installed, the game replaces the default entries with the entries you specified in TileSpriteMapping.xml. The game looks for your mod's folder and loads the specified images relative to this path. So make sure that the image paths are specified correctly.
  • Do not change the size of the image when making your own version. What you can do is copy the original image to your mod folder and edit that image.
  • A tile in the game translates to 128x128 pixels. However, there may be some images that doesn't follow this size standard. Some images may be 128x196. It's best to follow the image size of the original image.
  • Do not change the id attribute, or else the game will never replace the image.
  • Ensure that the pack attribute is the same as the original entry. If it was not specified in the original, then don't specify it in your entry as well.

Wall Images

WallTextureBrick.png

  • Each wall has 16 modes, each showing how they are connected with neighboring tiles. All 16 modes are placed in a single 512x512 image. Each wall image then is 128x128 (occupies a tile).
  • While editing a wall image, you can overlay a ruler that subdivides the image into 4 rows and 4 columns.

Characters

  • All characters are contained in one big image. It's so big that it can't be displayed here. You can check the image here. It's original entry is
    <Entry id="Characters" streamingPath="BaseGame/Tiles/Characters/Characters.png" pack="false" />
  • The original image can be found at Academia_Data/StreamingAssets/BaseGame/Tiles/Characters/Characters.png.
  • Bodies are subdivided to 128x128 while heads, faces, and hair are subdivided to 64x64. This means that when you are editing a body, place a ruler that subdivides the image 128x128. If you're editing a head, face, or hair, then use 64x64 subdivision.

More Guides

Ryan Sumo, the game's lead artist, also made a detailed guide here;

Here are some PSD files to help you out with making mods:

Where to go from here?