Help us improve
Share bugs, ideas, or general feedback.
From fs25-modding
Guides FS25 modders on DDS texture formats (BC1/BC3/BC5), naming conventions, resolutions, I3D material setup, color masks, and debugging pink textures or artifacts.
npx claudepluginhub paint-a-farm/fs25-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/fs25-modding:fs25-texture-guideThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Texture conventions and formats for FS25 modding. GIANTS Engine uses DDS textures with specific format requirements.
Guides FS25 map mod creation and modification, configuring map.xml, terrain heightmaps and layers, ground types, farmlands, placeables, fruit types, and environment settings.
Guides Adobe Substance 3D Painter workflows for PBR material creation, web-optimized texture export to Three.js, Babylon.js, Unity, Unreal, and Python API batch automation.
Loads, configures, and optimizes textures in Three.js. Covers UV mapping, environment maps, texture settings like color space, wrapping, filtering, and repeat.
Share bugs, ideas, or general feedback.
Texture conventions and formats for FS25 modding. GIANTS Engine uses DDS textures with specific format requirements.
| Texture Type | Format | Suffix | Notes |
|---|---|---|---|
| Diffuse/Albedo | BC1 (DXT1) or BC3 (DXT5) | _diffuse | BC3 if alpha needed |
| Normal map | BC5 (ATI2/3Dc) | _normal | 2-channel (RG), NOT BC1 |
| Specular/Gloss | BC1 (DXT1) or BC3 (DXT5) | _specular | R=specular, A=gloss (if BC3) |
| Mask/Alpha | BC4 (ATI1) | varies | Single channel |
Important: Normal maps MUST be BC5. Using BC1/DXT1 for normals causes visible banding artifacts.
myVehicle_diffuse.dds
myVehicle_normal.dds
myVehicle_specular.dds
myVehicle_vmask.dds # vehicle color mask
myVehicle_dirt.dds # dirt overlay
Base game patterns:
store_ prefix for shop images_ao suffix for ambient occlusion_vmask for vehicle color mask (paintable areas)| Asset Type | Typical Resolution |
|---|---|
| Large vehicle | 2048×2048 or 4096×4096 |
| Small implement | 1024×1024 or 2048×2048 |
| Placeable building | 2048×2048 |
| UI icon / store image | 256×256 or 512×512 |
| Terrain layer | 1024×1024 (tiling) |
<Material name="vehicleMat" materialId="1"
customShaderId="2" customShaderVariation="colorMask">
<Texture fileId="1" /> <!-- _diffuse.dds -->
<Normalmap fileId="2" /> <!-- _normal.dds -->
<Glossmap fileId="3" /> <!-- _specular.dds -->
</Material>
| Variation | Use Case |
|---|---|
default | Standard opaque material |
colorMask | Paintable vehicle (uses vmask) |
alphaTest | Cutout transparency (foliage, fences) |
alphaBlend | Smooth transparency (glass) |
mirror | Reflective surfaces |
The _vmask.dds texture controls which areas are paintable:
| Problem | Cause | Fix |
|---|---|---|
| Pink/magenta texture | Missing or wrong file path | Check <Files> paths in I3D |
| Blurry at distance | Missing mipmaps | Regenerate DDS with mipmaps |
| Normal map looks flat | Wrong format (BC1 instead of BC5) | Re-export as BC5 |
| Shiny/dark patches | Wrong specular format | Check specular is proper format |
| Texture seams | UV island padding too small | Add 4-8px padding between UV islands |