Assets guide

# Important notes

## FastDL on server

If you want to use custom assets on your dedicated server you need a fastdl 29 setup on a webserver, because sending the files to players directly through the game server is extremely slow.

To enable custom assets on your server or to test them locally open `iosoccer\cfg\autoexec.cfg` and change `sv_custom_assets 0` to `sv_custom_assets 1`.

If you expose your listen server to the internet for other players to join you should change the value back to 0 when you’re done testing.

## Unique folder names

Once you’ve published an asset you **MUST** use a different folder name for updates for that asset (e.g. \_v2). The game only checks by file name if an asset file already exists on the player’s PC. If you update the asset without using a different folder name (even if it’s just for fixing a typo), the players who have the old version of your asset will never get the new version.

Official files are exempt from this rule because they are updated directly through Steam.

## Texture formats

Please closely follow the guidelines for texture formats and dimensions listed in this guide. Using wrong formats can result in much bigger file sizes taking longer to download for players.

# Team kit

## Files

* `iosoccer\materials\models\player\custom\teamkits\{team}_{kit}_{author}`: Path to team kit
* `keeper.vtf`: Keeper texture
* `kitdata.txt`: Metadata
* `outfield.vtf`: Outfield texture
* `teamcrest.vtf`: Team crest texture
* `shirt_and_shorts_front_number_atlas.tga [optional]`: Custom font bitmap for shirt and shorts front number
* `shirt_and_shorts_front_number_atlas.txt [optional]`: Custom font atlas for shirt and shorts front number
* `shirt_back_name_atlas.tga [optional]`: Custom font bitmap for shirt back name
* `shirt_back_name_atlas.txt [optional]`: Custom font bitmap for shirt back name
* `shirt_back_number_atlas.tga [optional]`: Custom font bitmap for shirt back number
* `shirt_back_number_atlas.txt [optional]`: Custom font bitmap for shirt back number

## kitdata.txt example

Folder: `iosoccer\materials\models\player\custom\teamkits\superstars_away1718_nicelad`

```
KitData
{
    Name			"Away 17/18"
    Author			"Nicelad"
    Tags			"ISC 17, cup"	  // [Optional] Separate tags by commas

    PrimaryColor 		"88 191 217 255"  // Red Green Blue Alpha
    SecondaryColor 		"255 255 255 255"

    Team
    {
        Code 			"STARS"
        ShortName 		"Stars"
        LongName 		"Superstars"
        IsClub 			1		// 0: National team | 1: Club
        IsReal 			0		// 0: Real team | 1: Made up team
        FifaCountryCode 	"ENG"		// [Optional] Home country of the club
    }

    Outfield
    {
        HasCollar		1	// [Optional] 0: Collar off | 1: Collar on

        ShirtName
        {
            FillColor 		"0 0 0 255"
            OutlineColor	"255 255 255 255"
            HorizontalOffset 	0		// -: Move name left | +: Move name right
            VerticalOffset 	0		// -: Move name down | +: Move name up
        }

        ShirtBackNumber
        {
            FillColor 		"0 0 0 255"
            OutlineColor	"255 255 255 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }

        ShortsNumber
        {
            IsOnRightLeg	0
            FillColor 		"255 255 255 255"
            OutlineColor	"255 255 255 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }

        ShirtFrontNumber		// [Optional] Usually only for national teams
        {
            FillColor 		"0 0 0 255"
            OutlineColor	"255 255 255 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }
    }

    Keeper
    {
        HasCollar	        1

        ShirtName
        {
            FillColor 		"0 0 0 255"
            OutlineColor	"0 0 0 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }

        ShirtBackNumber
        {
            FillColor 		"0 0 0 255"
            OutlineColor	"0 0 0 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }

        ShortsNumber
        {
            IsOnRightLeg	0
            FillColor 		"0 0 0 255"
            OutlineColor	"0 0 0 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }

        ShirtFrontNumber
        {
            FillColor 		"0 0 0 255"
            OutlineColor	"255 255 255 255"
            HorizontalOffset 	0
            VerticalOffset 	0
        }
    }
}

```

# Textures

To edit the textures use Photoshop or any other software that can properly handle .psd files (GIMP might have issues with it).

Use VTFEdit 51 to convert your textures to VTF.

## All

**Import settings:**
https://i.imgur.com/xYEgP14.png
https://i.imgur.com/zRdgOGj.png

## Kit

**Template:** https://drive.google.com/file/d/0B7WcU1X8aDdlS0Vscl8wVE5DYWs/view?usp=sharing

**Source format:** 24 bit .tga (RGB, 3 channels)

**Import settings:**
https://i.imgur.com/u8kMkYk.png

## Team crest

**Template:** Visit a team’s Wikipedia page to get a high quality team crest like this 32

**Source format:** 32 bit .tga (RGB + Alpha, 4 channels)

**Import settings:**
https://i.imgur.com/wocKkrs.png

**VTF flags:**
https://i.imgur.com/nnvstyq.png

## Shoes

**Template:** https://drive.google.com/file/d/0B7WcU1X8aDdlZkhVdUV4RHUtWGM/view?usp=sharing

**Source format:** 24 bit .tga (RGB, 3 channels)

**Import settings:**
https://i.imgur.com/Jc3jynE.png

## Keeper gloves

**Template:** https://drive.google.com/file/d/0B7WcU1X8aDdlRzBpZ1huejZ0ZEU/view?usp=sharing

**Source format:** 24 bit .tga (RGB, 3 channels)

**Import settings:**
https://i.imgur.com/Jc3jynE.png

# Model Viewer

Model viewer is a really useful tool to view your created skins on the IOS model.
https://i.imgur.com/QSMEq2v.png

# Kit name and number fonts

You can create a font atlas texture to use a custom typeface on your kit.

## Tool

Download and install version 1.13 of AngelCode’s Bitmap Font Generator at http://www.angelcode.com/products/bmfont/

## Configuration

Download and extract the configuration files at https://drive.google.com/file/d/0B7WcU1X8aDdlU1Z6WFZ3ZkFROEE/view?usp=sharing

## Workflow

1. Open Bitmap font generator
2. Menu: Options → Load configuration -> name.bmfc (or number\_back.bmfc or number\_front.bmfc):

* Automatically sets the legal characters for the name or number

1. Menu: Options → Font Settings:

* Select your font here and play around with the height and outline thickness settings

1. Menu: Options → Visualize:

* Preview the font characters

1. Menu: Options → Save configuration as…:

* Save your font settings

1. Menu: Options → Save bitmap font as…:

* “shirt\_back\_name\_atlas” for name fonts
* “shirt\_back\_number\_atlas” for back number fonts
* “shirt\_and\_shorts\_front\_number\_atlas” for shirt and short front number fonts

1. Rename the “.fnt” file extension to “.txt” (e.g. “shirt\_back\_name\_atlas.fnt” → “shirt\_back\_name\_atlas.txt”)
2. Remove the “\_0” part of the “.tga” (e.g. “shirt\_back\_name\_atlas\_0.tga” → “shirt\_back\_name\_atlas.tga”)
3. Copy the generated “.fnt” and “.tga” files to your team kit folder (next to kitdata.txt)

**Important:** If the program generates more than one “.tga” file (e.g. “\_1.tga”), you have to increase the width and/or height of the exported “.tga”: Menu: Options -> Export options

## Info

name.bmfc:

* For the name on the back
* Allowed characters: Basic Latin, Latin-1 Supplement and Latin Extended-A (see here 4)

number\_back.bmfc:

* For the number on the back
* Allowed characters: 0-9

number\_front.bmfc:

* For the number on the shorts and shirt front
* Allowed characters: 0-9

# Setting up the model viewer

Before we start, all *credit to h0w and Strider* from the old IOS forums who initially spent the time to put together this tutorial. I will be rewording certain aspects to bring the tutorial up to date.

### Source SDK

Model Viewer is found within a Steam tool called Source SDK (Not SDK 2007 or 2013 - just Source SDK). To install Source SDK, please follow the steps below.

* Double click your steam icon in your windows tray on the bottom right of your screen.
* Hover your mouse cursor over Library at the top of Steam and select “Tools”.
* Source SDK will be in the list there (if it says “Ready to play” it is installed).
* To install double click it, and click through the nexts and finish.

## Configuring Source SDK with IOS

There are two ways we can configure Source SDK with IOS - Semi-Automatic or Manually - I highly recommend Semi-Automatic.

### Option 1: Semi-Automatic

Step 1:

* Open SourceSDK
* Make your “Engine Version” “Source Engine 2007”
* Click the “Current Game” dropdown, select any game from that dropdown if it allows you.

Step 1.5: Only if you click “edit game configurations” it says “no game configurations to run with” do step 1.5

* Double click “Create a Mod” under “Utilities” in SourcSDK
* Make sure that “Modify Half-Life 2 Single Player” or “Modify Half-Life 2 Multiplayer” is selected.
* When it asks you to enter the directory enter something along the lines of “C:\deleteme” with out the quotes
* When it asks for a mod name just call it “deleteme” again
* Hit “next”, and let it run through
* Hit “next”, and then hit “finish”

Step 2:

* You should now have a game selected under “Current Game”
* Under “Utilities” click “Edit Game Configurations”
* Hit “Add”
* Name it “iosoccer” with out the quotes
* Now hit “Browse” and navigate to you iosoccer(EX:steamapps\sourcemods\iosoccer) folder and select it (it might say “#Vgui\_Sel.”)
* Hit OK

Step 3:

* Select “Source Engine 2006” for “Engine Version”
* Now Change it right back to “Source Engine 2007”
* Select “iosoccer” for “Current Game”

Step 4:

* Only for people who had to do Step 1.5
* Go and delete the folder that was created in your C:\ drive (the one we named “deleteme”)
* Go to your sourcemods folder and also delete the mod we just created called “deleteme”
* Click “Edit Game Configurations” again and select the mod named “deleteme” and remove it

### OPTION 2: Manual

Step 1:

* Go to c:\Program Files\Steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin
* Open GameConfig.txt.

*Tip: Make sure that if your Steam folder is not in C:\program files you will have to replace all of those directories with the correct ones for your machine.*

It will look something like this:

```
"Configs"
{
"Games"
{

```

**If it does not have “Games {” add it**

Then copy and paste this text right below “Games {”:

```
"iossoccer"
       {
          "GameDir"      "c:\Program Files\Steam\steamapps\sourcemods\iossoccer"
          "hammer"
         {
            "TextureFormat"      "5"
            "MapFormat"      "4"
             "DefaultTextureScale"      "0.250000"
            "DefaultLightmapScale"      "16"
             "DefaultSolidEntity"      "func_detail"
             "GameExeDir"      "c:\program files\steam\steamapps\youremail@email.com\Source SDK Base 2007"
            "MapDir"      "c:\Program Files\Steam\steamapps\sourcemods\sourcesdk_content\iossoccer\mapsrc"
            "CordonTexture"      "tools\toolsskybox"
            "MaterialExcludeCount"      "0"
             "GameExe"      "c:\program files\steam\steamapps\youremail@email.com\Source SDK Base 2007\hl2.exe"
             "BSP"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\vbsp.exe"
             "Vis"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\vvis.exe"
             "Light"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\vrad.exe"
             "BSPDir"      "c:\Program Files\Steam\steamapps\sourcemods\iossoccer\maps"
             "GameData0"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\base.fgd"
          }
      }

```

**When it’s done, it should look like this:**

```
 "Configs"
{
    "Games"
    {
       "iosoccer"
       {
          "GameDir"      "c:\Program Files\Steam\steamapps\sourcemods\iosoccer"
          "hammer"
          {
             "TextureFormat"      "5"
             "MapFormat"      "4"
             "DefaultTextureScale"      "0.250000"
             "DefaultLightmapScale"      "16"
             "DefaultSolidEntity"      "func_detail"
             "GameExeDir"      "c:\program files\steam\steamapps\youremail@email.com\Source SDK Base 2007"
             "MapDir"      "c:\Program Files\Steam\steamapps\sourcemods\sourcesdk_content\iosoccer\mapsrc"
             "CordonTexture"      "tools\toolsskybox"
             "MaterialExcludeCount"      "0"
             "GameExe"      "c:\program files\steam\steamapps\youremail@email.com\Source SDK Base 2007\hl2.exe"
             "BSP"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\vbsp.exe"
             "Vis"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\vvis.exe"
            "Light"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\vrad.exe"
            "BSPDir"      "c:\Program Files\Steam\steamapps\sourcemods\iosoccer\maps"
            "GameData0"      "c:\program files\steam\steamapps\youremail@email.com\sourcesdk\bin\source2007\bin\base.fgd"
          }
       }
    }
    "SDKVersion"      "3"
 }

```

## Getting your skins from Photoshop to Model Viewer

So now you have Source SDK all set up, we just need to get your skin up so we can look at it in detail!

Now, if you launch Source SDK:

* Make Engine Version: “Source Engine 2007”
* Make Current Game: “iosoccer”

*This part of the tutorial contains a video from h0w on how to compile your kit from Photoshop to Model Viewer. This may seem long winded but after you’ve done it a couple of times, you breeze through it.:* https://www.youtube.com/watch?v=4ITzXqNVNpU&feature=youtu.be

**Updates from the video:**

* While in the SDK\_content folder instead of creating the directory of ios/materialsrc/models/player/insertteamname make it: iossoccer/materialsrc/models/player/teams/insertteamname
* The name of the VTF you create should *not* be outfield.vtf - instead, it should be called *kit.vtf*

**To look at your kit:**

* Copy the VTF’s you just created from your teams folder in iosoccer directory and paste them into sourcemods\iosoccer\materials\models\player\default
* Edit kit.vm**t** so that $detailblendfactor is 0. Please edit this back when done or names and numbers in game will disappear
* Launch SourceSDK
* Set “Engine Version” to “Source Engine 2007”
* Set “Current Game” to “iosoccer”
* Double Click Model Viewer
* Click File>Load Model
* Find and open the “Player” folder
* Select “player.mdl” and hit open

You should now see your kit in all it’s glory!