Jump to content

Resources: Difference between revisions

From HEModdingWiki
No edit summary
Tag: 2017 source edit
Ashrindy (talk | contribs)
 
(47 intermediate revisions by 6 users not shown)
Line 1: Line 1:
Resources are the data files that contain things like 3D models, textures, animations and any other kind of data. Many of these resources are stored in proprietary formats optimized for fast loading times, and thus require special tools to be edited by modders. Many of them are also built using proprietary SEGA technologies, like the ASM animation system. On this page we provide a list of all known resources supported by the Hedgehog Engine, their support in various games and tools that can be used to edit them.
Resources are the data files that contain things like 3D models, textures, animations and any other kind of assets. Many of these resources are stored in proprietary formats optimized for fast loading times, and thus require special tools to be edited by modders. Many of them are also built using proprietary SEGA technologies, like the ASM animation system. On this page we provide a list of all known resources supported by the Hedgehog Engine, their support in various games and tools that can be used to edit them.


== Archives ==
== Archives ==
Archives are compressed archives ("zip files") that contain most of the game's data.
Archives are compressed archives ("zip files") that contain most of the game's data.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Packfile
|[[Resources/Packfile|Packfile]]
|Compressed archive containing most other resources.
|Compressed archive containing most other resources.
|.pac
|.pac
|Packfile
|Packfile
|
|
* HedgeArcPack
* [[Tools/HedgeArcPack|HedgeArcPack]]
|-
|-
|Packfile Info
|[[Resources/Packfile Info|Packfile Info]]
|Contains information about a packfile.
|Contains information about a packfile.
|
|
Line 21: Line 21:
|
|
|-
|-
|Packfile Extended Info
|[[Resources/Packfile Extended Info|Packfile Extended Info]]
|Contains extended information about a packfile.
|Contains extended information about a packfile.
|
|
Line 27: Line 27:
|
|
|-
|-
|Depend
|[[Resources/Depend|Depend]]
|In-engine only resource that stores information about packfile dependencies.
|Stores information about packfile dependencies.
|.pac.d
|.pac.d
|ResDepend
|ResDepend
|
|N/A
|-
|-
|Pac General
|[[Resources/Pac General|Pac General]]
|
|
|
|
Line 39: Line 39:
|
|
|-
|-
|Virtual Archive
|[[Resources/Virtual Archive|Virtual Archive]]
|
|
|
|
|VirtualArchive
|VirtualArchive
|
|
|-
|AR File
|Archive containing resources.
|.ar
|
|N/A
|-
|ARL File
|Link file containing data on what each .ar file stores and its appropriate splits.
|.arl
|
|
* [[Tools/HedgeArcPack|HedgeArcPack]]
|}
|}


== Levels ==
== Levels ==
Levels are a new system in Sonic Frontiers and up that allow the game to dynamically load other resources when they are needed. They specify which resources need to be loaded to load a certain "level". This is a system similar to Unreal Engine's level system.
Levels are a new system in [[Sonic Frontiers]] and up that allow the game to dynamically load other resources when they are needed. They specify which resources need to be loaded to load a certain "level". This is a system similar to Unreal Engine's level system.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Level
|[[Resources/Level|Level]]
|A special resource that's only used to check whether a level has been loaded in the engine. It does not contain any data.
|A special resource that's only used to check whether a level has been loaded in the engine. It does not contain any data.
|.level
|.level
Line 59: Line 72:
|N/A
|N/A
|-
|-
|Master Level
|[[Resources/Master Level|Master Level]]
|Information about levels: which levels depend on each other, and also which resources to load in order to load a level.
|Information about levels: which levels depend on each other, and also which resources to load in order to load a level.
|.mlevel
|.mlevel
|ResMasterLevel
|ResMasterLevel
|
|
* KnuxTools
* [[Tools/KnuxTools|KnuxTools]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|}
|}


== Configuration Parameters ==
== Configuration Parameters ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Reflection
|[[Resources/Reflection|Reflection]]
|Reflection-enabled configuration data. Contains parameters that can be edited by developers without changing game code.
|Reflection-enabled configuration data. Contains parameters that can be edited by developers without changing game code.
|.rfl
|.rfl
|ResReflection
|ResReflection
|
|
* DevTools
* [[Tools/DevTools|DevTools]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
* 010 Editor templates
* [[Tools/010 Editor Binary Templates|010 Editor Binary Templates]]
|}
|}


Line 87: Line 100:
Set object data is what specifies where game objects are placed and how they are configured. This is what you'll be editing most when making a stage mod.
Set object data is what specifies where game objects are placed and how they are configured. This is what you'll be editing most when making a stage mod.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|ObjectWorld / GEdit
|[[Resources/ObjectWorld / GEdit|ObjectWorld / GEdit]]
|Object placement and parameter data.
|Object placement and parameter data (HE2).
|.gedit
|.gedit
|ResObjectWorld
|ResObjectWorld
|
|
* BlendHog
* [[Tools/Blendhog Level Creator|Blendhog Level Creator]]
* DevTools
* [[Tools/DevTools|DevTools]]
* HedgeSet
* [[Tools/HedgeSet|HedgeSet]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|-
|-
|Orca: Set Object
|[[Resources/Orca: Set Object|Orca: Set Object]]
|Object placement and parameter data
|Object placement and parameter data (HE1).
|.orc
|.orc
|ResOrcaData
|ResOrcaData
|
|
* HedgeEdit
* [[Tools/HedgeEdit|HedgeEdit]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
* GLvl
* [[Tools/GLVL|GLVL]]
|}
|}


Line 114: Line 127:
Gismos are small reusable objects (that can potentially have physics applied) intended usually for decoration.
Gismos are small reusable objects (that can potentially have physics applied) intended usually for decoration.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Gismo Config Design
|[[Resources/Gismo Config Design|Gismo Config Design]]
|Defines the properties of gismo objects.
|Defines the properties of gismo objects.
|.gismod
|.gismod
|ResGismoConfigDesign
|ResGismoConfigDesign
|
|
* KnuxTools
* [[Tools/KnuxTools|KnuxTools]]
|-
|-
|Gismo Config Plan
|[[Resources/Gismo Config Plan|Gismo Config Plan]]
|
|
|.gismop
|.gismop
|ResGismoConfigPlan
|ResGismoConfigPlan
|
|
* [[Tools/KnuxTools|KnuxTools]]
|}
|}


== Models ==
== Models ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
| Model || Contains 3D model information (also contains an armature).
|[[Resources/Model| Model]]
| Contains 3D model information (also contains an armature).
|.model
|.model
|ResModel
|ResModel
|
|
* ModelConverter
* [[Tools/ModelConverter|ModelConverter]]
* modelfbx
* [[Tools/modelfbx|modelfbx]]
* HEIO
* [[Tools/HEIO|HEIO]]
|-
|-
|Terrain Model
|[[Resources/Terrain Model|Terrain Model]]
|Contains 3D model information specifically for terrain models. Similar to "Model" but does not contain an armature.
|Contains 3D model information specifically for terrain models. Similar to "Model" but does not contain an armature.
|.terrain-model
|.terrain-model
|ResTerrainModel
|ResTerrainModel
|
|
* ModelConverter
* [[Tools/Blendhog Level Creator|Blendhog Level Creator]]
* modelfbx
* [[Tools/ModelConverter|ModelConverter]]
* HEIO
* [[Tools/modelfbx|modelfbx]]
* [[Tools/HEIO|HEIO]]
|-
|-
|Heightfield
|[[Resources/Heightfield|Heightfield]]
|Height field maps.
|Height field maps.
|.heightfield
|.heightfield
|ResHeightField
|ResHeightField
|
|
* BlendHog
* [[Tools/HeightFielder|HeightFielder]]
|-
|-
| Model Pointcloud || Placement information for model or terrain model instances.
|[[Resources/Model Pointcloud|Model Pointcloud]]
| Placement information for model or terrain model instances.
|.pcmodel
|.pcmodel
|ResPointcloudModel
|ResPointcloudModel
|
|
* BlendHog
* [[Tools/Blendhog Level Creator|Blendhog Level Creator]]
* KnuxTools
* [[Tools/KnuxTools|KnuxTools]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|-
|-
|Orca: Map
|[[Resources/Orca: Map|Orca: Map]]
|Placement information for model or terrain model instances.
|Placement information for model or terrain model instances.
|.map.bin
|.map.bin
|ResDivMap
|ResDivMap
|
|
* [[Tools/KnuxTools|KnuxTools]]
|-
|-
|MIRAGE Model Instance Info
|[[Resources/MIRAGE Model Instance Info|MIRAGE Model Instance Info]]
|In-engine only resource containing information about model instances.
|Contains information about model instances.
|.model-instanceinfo
|.model-instanceinfo
|ResMirageModelInstanceInfo
|ResMirageModelInstanceInfo
|
|
|-
|-
|MIRAGE Terrain Instance Info
|[[Resources/MIRAGE Terrain Instance Info|MIRAGE Terrain Instance Info]]
|In-engine only resource containing information about terrain model instances.
|Contains information about terrain model instances.
|.terrain-instanceinfo
|.terrain-instanceinfo
|ResMirageTerrainInstanceInfo
|ResMirageTerrainInstanceInfo
|
|
* [[Tools/KnuxTools|KnuxTools]]
|-
|-
|Vertex Link Info
|[[Resources/Vertex Link Info|Vertex Link Info]]
|
|
|.vli
|.vli
|ResVertexLinkInfo
|ResVertexLinkInfo
|
|-
|MetaTerrainInstance
|A file containing model and lightfield data capable of animating, commonly used for grass and clouds.
|.mti
|
|
|
|}
|}
Line 197: Line 222:
== Textures ==
== Textures ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Texture
|[[Resources/Texture|Texture]]
|2D textures for model skinning.
|2D textures for model skinning.
|.dds
|.dds
|ResTexture
|ResTexture
|
|
* nVidia Texture Tools Exporter
* [https://developer.nvidia.com/texture-tools-exporter nVidia Texture Tools Exporter]
* DirectX texconv
* DirectX texconv
* GIMP (cannot read BC7)
* [https://www.gimp.org/ GIMP (cannot read BC7)]
* Paint.NET
* [https://www.getpaint.net/ Paint.NET]
|-
|-
|Streaming Texture
|[[Resources/Streaming Texture|Streaming Texture]]
|Streamed 2D textures.
|Streamed 2D textures.
|
|
Line 220: Line 245:
== Materials ==
== Materials ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Material
|[[Resources/Material|Material]]
|Material information. Contains shader parameters and texture names.
|Material information. Contains shader parameters and texture names.
|.material
|.material
|ResMaterial
|ResMaterial
|
|
* HedgeEdit
* [[Tools/HedgeEdit|HedgeEdit]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
* HEIO
* [[Tools/HEIO|HEIO]]
|-
|-
|Terrain Material
|[[Resources/Terrain Material|Terrain Material]]
|Terrain material information.
|Terrain material information.
|.terrain-material
|.terrain-material
|ResTerrainMaterial
|ResTerrainMaterial
|
|
* [[Tools/KnuxTools|KnuxTools]]
|-
|[[Material (Unleashed)|Material]]
|Contains shader information and texset resource information.
|.material
|
|
* [[Tools/HedgeEdit|HedgeEdit]]
|-
|Texture
|Contains parameter information for texture files linked to a material.
|.texture
|
|
* [[Tools/HedgeEdit|HedgeEdit]]
|-
|Texset
|Contains groupings of textures linked to a material.
|.texset
|
|
* [[Tools/HedgeEdit|HedgeEdit]]
|}
|}


Line 243: Line 290:
All kinds of animation data.
All kinds of animation data.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|PXD Skeleton
|[[Resources/PXD Skeleton|PXD Skeleton]]
|Skeleton for AnimationPXD animations.
|Skeleton for PXD animations.
|.skl.pxd
|.skl.pxd
|ResSkeletonPxd
|ResSkeletonPxd
|
|
* FrontiersAnimDecompress
* [[Tools/Sonic Frontiers Animation Tools|Sonic Frontiers Animation Tools]]
|-
|-
|PXD Animation
|[[Resources/PXD Animation|PXD Animation]]
|Animation data.
|Animation data.
|.anm.pxd
|.anm.pxd
|ResAnimationPxd
|ResAnimationPxd
|
|
* FrontiersAnimDecompress
* [[Tools/Sonic Frontiers Animation Tools|Sonic Frontiers Animation Tools]]
|-
|-
|PBA Skeleton
|[[Resources/PBA Skeleton|PBA Skeleton]]
|Skeleton for physics based animations.
|Skeleton for physics based animations.
|.pba
|.pba
Line 267: Line 314:
|
|
|-
|-
|Animation State Machine
|[[Resources/Animation State Machine|Animation State Machine]]
|Animation State Machine data. Handles animation blending, animation states, animation triggers, etc.
|Animation State Machine data. Handles animation blending, animation states, animation triggers, etc.
|.asm
|.asm
|ResAnimator
|ResAnimator
|
|
* DevTools
* [[Tools/DevTools|DevTools]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|-
|-
|HelperBone
|[[Resources/HelperBone|HelperBone]]
|Currently unknown.
|Currently unknown.
|.helperbone.bin
|.helperbone.bin
Line 281: Line 328:
|
|
|-
|-
|Material Animation
|[[Resources/Material Animation|Material Animation]]
|Material animations.
|Material animations.
|.mat-anim
|.mat-anim
Line 287: Line 334:
|
|
|-
|-
|UV Animation
|[[Resources/UV Animation|UV Animation]]
|Texture UV animations (presumably Wii SRT0).
|Texture UV animations (presumably Wii SRT0).
|.uv-anim
|.uv-anim
|ResAnimTexSrt
|ResAnimTexSrt
|
|
* KwasTools (he_anim_tool)
* [[Tools/KwasTools|KwasTools]] (he_anim_tool)
|-
|-
|Texture Pattern Animation
|[[Resources/Texture Pattern Animation|Texture Pattern Animation]]
|Texture pattern animations (presumably Wii PAT0).
|Texture pattern animations (presumably Wii PAT0).
|.pt-anim
|.pt-anim
Line 300: Line 347:
|
|
|-
|-
|Visibility Animation
|[[Resources/Visibility Animation|Visibility Animation]]
|Bone visibility animations (presumably Wii VIS0).
|Bone visibility animations (presumably Wii VIS0).
|.vis-anim
|.vis-anim
Line 306: Line 353:
|
|
|-
|-
|Camera Animation
|[[Resources/Camera Animation|Camera Animation]]
|Camera animations.
|Camera animations.
|.cam-anim
|.cam-anim
|ResAnimCameraContainer
|ResAnimCameraContainer
|
|
* [[Tools/KwasTools|KwasTools]] (he_anim_tool)
|-
|-
|Light Animation
|[[Resources/Light Animation|Light Animation]]
|Light animations.
|Light animations.
|.lit-anim
|.lit-anim
Line 318: Line 366:
|
|
|-
|-
|Vertex Animation Texture
|[[Resources/Vertex Animation Texture|Vertex Animation Texture]]
|Vertex animation textures (textures that efficiently encode large scale animations on vertices).
|Vertex animation textures (textures that efficiently encode large scale animations on vertices).
|.vat
|.vat
|ResVertexAnimationTexture
|ResVertexAnimationTexture
|
|
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|-
|[[Resources/Havok Skeleton|Havok Skeleton]]
|Skeleton for Havok Animations
|.skl.hkx
|
|
|-
|[[Resources/Havok Animation|Havok Animation]]
|Animation data.
|.anm.hkx
|
|
|}
|}


== Lighting ==
== Lighting ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|MIRAGE Light
|[[Resources/MIRAGE Light|MIRAGE Light]]
|MIRAGE point lights.
|MIRAGE point lights.
|.light
|.light
|ResMirageLight
|ResMirageLight
|
|
* SharpNeedle
|-
|-
|MIRAGE Lightfield
|[[Resources/MIRAGE Lightfield|MIRAGE Lightfield]]
|MIRAGE light field data.
|MIRAGE light field data.
|.lft
|.lft
Line 345: Line 404:
|
|
|-
|-
|SH Lightfield
|[[Resources/SH Lightfield|SH Lightfield]]
|Spherical harmonics based light field data.
|Spherical harmonics based light field data.
|.lf
|.lf
|ResSHLightField
|ResSHLightField
|
|
* [[Tools/KnuxTools|KnuxTools]]
|-
|-
|Probe
|[[Resources/Probe|Probe]]
|IBL probe data.
|IBL probe data.
|.probe
|.probe
Line 357: Line 417:
|
|
|-
|-
|Light Pointcloud
|[[Resources/Light Pointcloud|Light Pointcloud]]
|Instance placement information for point lights.
|Instance placement information for point lights.
|.pcrt
|.pcrt
|ResPointcloudLight
|ResPointcloudLight
|
|
* [[Tools/KnuxTools|KnuxTools]]
* [[Tools/AshDumpTool|AshDumpTool]]
|}
|}


Line 367: Line 429:
FxCol defines collision shapes in the game world that can apply post processing effects when the player walks through them.
FxCol defines collision shapes in the game world that can apply post processing effects when the player walks through them.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|FxColFile2  
|[[Resources/FxColFile2|FxColFile2]]
|FxCol configuration.
|FxCol configuration.
|.fxcol
|.fxcol
|ResFxColFile2
|ResFxColFile2
|
|
* DevTools
* [[Tools/DevTools|DevTools]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|}
|}


== SvCol ==
== SvCol ==
SvCol defines collision shapes in the game world that control culling.
SvCol defines collision shapes in the game world that control sector visibility (a form of culling).
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|SvCol2  
|[[Resources/SvCol2|SvCol2]]
|SvCol configuration.
|SvCol configuration.
|.svcol
|.svcol
|ResSvCol2
|ResSvCol2
|
|
* [[Tools/KnuxTools|KnuxTools]]
|}
|}


== Effects ==
== Effects ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Cyan Effect  
|[[Resources/Cyan Effect|Cyan Effect]]
|Particle effect systems.
|Particle effect systems.
|.cemt
|.cemt
|ResEffect
|ResEffect
|
|
* CEMT Color Editing Tool
* [[Tools/CEMT Color Editing Tool|CEMT Color Editing Tool]]
|-
|-
|Particle Location
|[[Resources/Particle Location|Particle Location]]
|
|Database of particle effects with transform values and sounds
|.effdb
|.effdb
|ResParticleLocation
|ResParticleLocation
|
|
* [[Tools/AshDumpTool|AshDumpTool]]
|}
|}


== Physics ==
== Physics ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Bullet Mesh
|[[Resources/Bullet Mesh|Bullet Mesh]]
|Bullet physics engine mesh. Used for collision detection.
|Bullet physics engine mesh. Used for collision detection.
|.btmesh
|.btmesh
|ResPhysicsMesh
|ResPhysicsMesh
|
|
* btmesh
* [[Tools/btmesh|btmesh]]
* HEIO
* [[Tools/HEIO|HEIO]]
|-
|-
|Bullet Soft Body
|[[Resources/Bullet Soft Body|Bullet Soft Body]]
|Bullet physics engine soft body.
|Bullet physics engine soft body.
|.btsb
|.btsb
Line 434: Line 498:
|
|
|-
|-
|Bullet Skinned Mesh Collider
|[[Resources/Bullet Skinned Mesh Collider|Bullet Skinned Mesh Collider]]
|Bullet physics engine skinned mesh collider. Not exactly known what this is currently.
|Bullet physics engine skinned mesh collider. Not exactly known what this is currently.
|.btsmc
|.btsmc
Line 440: Line 504:
|
|
|-
|-
|Collision Pointcloud
|[[Resources/Collision Pointcloud|Collision Pointcloud]]
|Instance placement info for collision meshes.
|Instance placement info for collision meshes.
|.pccol
|.pccol
|ResPointCloudCollision
|ResPointCloudCollision
|
|
* [[Tools/KnuxTools|KnuxTools]]
* [[Tools/AshDumpTool|AshDumpTool]]
|}
|}


Line 450: Line 516:
Paths are 3D splines that the game engine uses for various tasks, e.g. to generate grind rails, calculate projectile movements, generate replicated objects and keep the player on a 2D rail.
Paths are 3D splines that the game engine uses for various tasks, e.g. to generate grind rails, calculate projectile movements, generate replicated objects and keep the player on a 2D rail.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Orca: Spline Path
|[[Resources/Orca: Spline Path|Orca: Spline Path]]
|Contains path information.
|Contains path information.
|.path.bin
|.path.bin
|ResSplinePath
|ResSplinePath
|
|
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|-
|-
|Orca: Spline Path 2
|[[Resources/Orca: Spline Path 2|Orca: Spline Path 2]]
|Contains path information.
|Contains path information.
|.path2.bin
|.path2.bin
|ResSplinePath2
|ResSplinePath2
|
|
* [[Tools/KnuxTools|KnuxTools]]


|-
|-
|Path
|[[Resources/Path|Path]]
|Contains path information.
|Contains path information.
|.path
|.path
|ResSplinePath
|ResSplinePath
|
|
* BlendHog
* [[Tools/Blendhog Level Creator|Blendhog Level Creator]]
* Restoration Issue Pocketknife
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
 
* [[Tools/KnuxTools|KnuxTools]]


|}
|}
Line 481: Line 548:
== Occlusion Capsule ==
== Occlusion Capsule ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Occlusion Capsule  
|[[Resources/Occlusion Capsule|Occlusion Capsule]]
|Occlusion capsules
|Occlusion capsules
|.occ
|.occ
Line 493: Line 560:
== Atmosphere ==
== Atmosphere ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Atmospheric Fog  
|[[Resources/Atmospheric Fog|Atmospheric Fog]]
|Atmospheric fog data.
|Atmospheric fog data.
|?
|?
Line 506: Line 573:
Density is HE's GPU based vegetation system.
Density is HE's GPU based vegetation system.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Density Setting  
|[[Resources/Density Setting|Density Setting]]
|Configures the Hedgehog Engine density system. Configures all the density system's parameters and references density models.
|Configures the Hedgehog Engine density system. Configures all the density system's parameters and references density models.
|.densitysetting
|.densitysetting
|ResDensitySetting
|ResDensitySetting
|
|
* [[Tools/Restoration Issue Pocketknife|Restoration Issue Pocketknife]]
|-
|-
|Density Point Cloud
|[[Resources/Density Point Cloud|Density Point Cloud]]
|Placement of pre-baked density models.
|Placement of pre-baked density models.
|.densitypointcloud
|.densitypointcloud
|ResDensityPointCloud
|ResDensityPointCloud
|
|
* BlendHog
* [[Tools/Blendhog Level Creator|Blendhog Level Creator]]
|-
|-
|Density Instance
|[[Resources/Density Instance|Density Instance]]
|
|
|
|
Line 529: Line 597:
|
|
|-
|-
|Terrain Grass Info
|[[Resources/Terrain Grass Info|Terrain Grass Info]]
|
|
|.grass.bin
|.grass.bin
Line 539: Line 607:
Navmeshes are meshes that the game's AI actors can use to navigate the map.
Navmeshes are meshes that the game's AI actors can use to navigate the map.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|NavMesh Config  
|[[Resources/NavMesh Config|NavMesh Config]]
|Navmesh configuration
|Navmesh configuration
|.nmc
|.nmc
Line 549: Line 617:
|
|
|-
|-
|NavMesh Tile
|[[Resources/NavMesh Tile|NavMesh Tile]]
|Navmesh tile
|Navmesh tile
|.nmt
|.nmt
|ResNavMeshTile
|ResNavMeshTile
|
|-
|Navigation Mesh
|Navigation mesh map
|.navi.xml / .navi.xmlbin
|NavigationMesh
|
|
|}
|}
Line 559: Line 633:
The AI state machine controls AI behavior of enemies in game.
The AI state machine controls AI behavior of enemies in game.
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|AI State Machine  
|[[Resources/AI State Machine|AI State Machine]]
|Configuration for the AI State Machine
|Configuration for the AI State Machine
|.aism
|.aism
|ResAIStateMachine
|ResAIStateMachine
|
|[[Tools/010 Editor Binary Templates|AshDump]]
|}
|}


== Cinematics ==
== Cinematics ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Scene
|[[Resources/Scene|Scene]]
|Legacy cinematics system.
|Legacy cinematics system.
|.scene
|.scene
Line 582: Line 656:
|
|
|-
|-
|DvScene
|[[Resources/DvScene|DvScene]]
|Cinematics.
|Cinematics.
|.dvbsc
|.dvscene
|ResDvScene
|ResDvScene
|
* [[Tools/010 Editor Binary Templates|010 Editor Binary Templates]]
|-
|[[Resources/USM|USM]]
|CRIware's video format
|.usm
|
|
|
|}
|}
Line 591: Line 672:
== Decals ==
== Decals ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Decal
|[[Resources/Decal|Decal]]
|Decals. Referenced in FxColManager.
|Decals. Referenced in FxColManager.
|?
|?
Line 601: Line 682:
|
|
|-
|-
|Decal Pointcloud
|[[Resources/Decal Pointcloud|Decal Pointcloud]]
|Placement information for decal instances. Referenced in FxColManager.
|Placement information for decal instances. Referenced in FxColManager.
|?
|?
Line 610: Line 691:
== Shaders ==
== Shaders ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Vertex Shader
|[[Resources/Vertex Shader|Vertex Shader]]
|Vertex shaders.
|Vertex shaders.
|.vso
|.vso
|ResVertexShader
|ResVertexShader
|
|
* HedgeNeedle
|-
|-
|Pixel Shader
|[[Resources/Pixel Shader|Pixel Shader]]
|Pixel shaders.
|Pixel shaders.
|.pso
|.pso
|ResFragmentShader
|ResFragmentShader
|
|
* HedgeNeedle
|-
|-
|Compute Shader
|[[Resources/Compute Shader|Compute Shader]]
|Compute shaders
|Compute shaders
|.cso
|.cso
|ResComputeShader
|ResComputeShader
|
|
* HedgeNeedle
|-
|-
|Shader List
|[[Resources/Shader List|Shader List]]
|List of shaders.
|List of shaders.
|.shader-list
|.shader-list
Line 650: Line 728:
!Editing tools
!Editing tools
|-
|-
|Atom Config
|[[Resources/Atom Config|Atom Config]]
|CRIware Atom configuration data.
|CRIware Atom configuration data.
|.acf
|.acf
Line 656: Line 734:
|
|
|-
|-
|Atom Cue Sheet
|[[Resources/Atom Cue Sheet|Atom Cue Sheet]]
|CRIware Atom cue sheet. Contains the game's audio and cue/AISAC information.
|CRIware Atom cue sheet. Contains the game's audio and cue/AISAC information.
|.acb
|.acb
|ResAtomCueSheet
|ResAtomCueSheet
|
|
* KwasTools (cri_utf_tool)
* [[Tools/KwasTools|KwasTools]] (cri_utf_tool)
* SonicAudioTools (Outdated)
* [[Tools/SonicAudioTools|SonicAudioTools]] (Deprecated)
* Eternity Audio Tool (Outdated)
* [[Tools/Eternity Audio Tool|Eternity Audio Tool]] (Outdated)
|}
|}


Line 674: Line 752:
!Editing tools
!Editing tools
|-
|-
|SurfRide SWIF
|[[Resources/SurfRide SWIF|SurfRide SWIF]]
|Describes UI layout and animations. Similar to a primitive version of Adobe Flash.
|Describes UI layout and animations. Similar to a primitive version of Adobe Flash.
|.swif
|.swif
|ResSurfRideProject
|ResSurfRideProject
|
|
* DevTools
* [[Tools/DevTools|DevTools]]
* 010 Editor Templates
* [[Tools/010 Editor Binary Templates|010 Editor Binary Templates]]
|}
|}


Line 691: Line 769:
!Editing tools
!Editing tools
|-
|-
|Lua
|[[Resources/Lua|Lua]]
|A Lua script.
|A Lua script.
|.lua
|.lua
Line 701: Line 779:
== Haptics ==
== Haptics ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Vibration
|[[Resources/Vibration|Vibration]]
|Haptics vibration information.
|Haptics vibration information.
|.vib
|.vib
Line 714: Line 792:
== Clipmap ==
== Clipmap ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Clipmap Ocean
|[[Resources/Clipmap Ocean|Clipmap Ocean]]
|
|
|.cob
|.cob
Line 727: Line 805:
== Localization ==
== Localization ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Converse Project
|[[Resources/Converse Project|Converse Project]]
|Localization project data.
|Localization project data.
|.cnvrs-proj
|.cnvrs-proj
|ResTextProject
|ResTextProject
|
|
* [[Tools/Converse Editor|Converse Editor]]
|-
|-
|Converse Text
|[[Resources/Converse Text|Converse Text]]
|Localization text data.
|Localization text data.
|.cnvrs-text
|.cnvrs-text
|ResText
|ResText
|
|
* PuyoPuyo Text Editor
* [[Tools/Puyo Text Editor|Puyo Text Editor]]
* Converse Editor
* [[Tools/Converse Editor|Converse Editor]]
|-
|-
|Converse Meta
|[[Resources/Converse Meta|Converse Meta]]
|Localization metadata.
|Localization metadata.
|.cnvrs-meta
|.cnvrs-meta
|ResTextMeta
|ResTextMeta
|
|
* [[Tools/Converse Editor|Converse Editor]]
|}
|}


== Fonts ==
== Fonts ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Bitmap Font
|[[Resources/Bitmap Font|Bitmap Font]]
|Bitmap fonts.
|Bitmap fonts.
|.bfnt
|.bfnt
Line 764: Line 844:
|
|
|-
|-
|Scalable Font Set
|[[Resources/Scalable Font Set|Scalable Font Set]]
|Vector fonts.
|Vector fonts.
|.scfnt
|.scfnt
Line 770: Line 850:
|
|
|-
|-
|Optical Kerning
|[[Resources/Optical Kerning|Optical Kerning]]
|Information about optical text kerning.
|Information about optical text kerning.
|.okern
|.okern
Line 779: Line 859:
== Unicode ==
== Unicode ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|ICU data
|[[Resources/ICU data|ICU data]]
|Data for libicu (unicode library)
|Data for libicu (unicode library)
|.icu
|.icu
|ResIcuData
|ResIcuData
|
|}
== Acceleration Structures ==
{| class="wikitable"
! Name !! Description
!Extension
!Engine name!! Editing tools
|-
|[[Resources/K-D Tree|K-D Tree]]
|A serialized [[wikipedia:K-d_tree|k-d tree]]. This resource has only been seen as a runtime resource in the engine or embedded in [[Resources/Path|Path]] resources.
|N/A
|ResKdTree
|
|
|}
|}
Line 792: Line 885:
== Unknown ==
== Unknown ==
{| class="wikitable"
{| class="wikitable"
! Name !! Description  
! Name !! Description
!Extension
!Extension
!Engine name!! Editing tools
!Engine name!! Editing tools
|-
|-
|Name Extra
|[[Resources/Name Extra|Name Extra]]
|
|
|.nextra
|.nextra
Line 802: Line 895:
|
|
|-
|-
|Pointcloud
|[[Resources/Pointcloud|Pointcloud]]
|
|
|.pointcloud
|.pointcloud

Latest revision as of 16:09, 26 January 2025

Resources are the data files that contain things like 3D models, textures, animations and any other kind of assets. Many of these resources are stored in proprietary formats optimized for fast loading times, and thus require special tools to be edited by modders. Many of them are also built using proprietary SEGA technologies, like the ASM animation system. On this page we provide a list of all known resources supported by the Hedgehog Engine, their support in various games and tools that can be used to edit them.

Archives[edit | edit source]

Archives are compressed archives ("zip files") that contain most of the game's data.

Name Description Extension Engine name Editing tools
Packfile Compressed archive containing most other resources. .pac Packfile
Packfile Info Contains information about a packfile. PackfileInfo
Packfile Extended Info Contains extended information about a packfile. PackfileExtendedInfo
Depend Stores information about packfile dependencies. .pac.d ResDepend N/A
Pac General ResPacGeneral
Virtual Archive VirtualArchive
AR File Archive containing resources. .ar N/A
ARL File Link file containing data on what each .ar file stores and its appropriate splits. .arl

Levels[edit | edit source]

Levels are a new system in Sonic Frontiers and up that allow the game to dynamically load other resources when they are needed. They specify which resources need to be loaded to load a certain "level". This is a system similar to Unreal Engine's level system.

Name Description Extension Engine name Editing tools
Level A special resource that's only used to check whether a level has been loaded in the engine. It does not contain any data. .level ResLevel N/A
Master Level Information about levels: which levels depend on each other, and also which resources to load in order to load a level. .mlevel ResMasterLevel

Configuration Parameters[edit | edit source]

Name Description Extension Engine name Editing tools
Reflection Reflection-enabled configuration data. Contains parameters that can be edited by developers without changing game code. .rfl ResReflection

Set Objects[edit | edit source]

Set object data is what specifies where game objects are placed and how they are configured. This is what you'll be editing most when making a stage mod.

Name Description Extension Engine name Editing tools
ObjectWorld / GEdit Object placement and parameter data (HE2). .gedit ResObjectWorld
Orca: Set Object Object placement and parameter data (HE1). .orc ResOrcaData

Gismos[edit | edit source]

Gismos are small reusable objects (that can potentially have physics applied) intended usually for decoration.

Name Description Extension Engine name Editing tools
Gismo Config Design Defines the properties of gismo objects. .gismod ResGismoConfigDesign
Gismo Config Plan .gismop ResGismoConfigPlan

Models[edit | edit source]

Name Description Extension Engine name Editing tools
Model Contains 3D model information (also contains an armature). .model ResModel
Terrain Model Contains 3D model information specifically for terrain models. Similar to "Model" but does not contain an armature. .terrain-model ResTerrainModel
Heightfield Height field maps. .heightfield ResHeightField
Model Pointcloud Placement information for model or terrain model instances. .pcmodel ResPointcloudModel
Orca: Map Placement information for model or terrain model instances. .map.bin ResDivMap
MIRAGE Model Instance Info Contains information about model instances. .model-instanceinfo ResMirageModelInstanceInfo
MIRAGE Terrain Instance Info Contains information about terrain model instances. .terrain-instanceinfo ResMirageTerrainInstanceInfo
Vertex Link Info .vli ResVertexLinkInfo
MetaTerrainInstance A file containing model and lightfield data capable of animating, commonly used for grass and clouds. .mti

Textures[edit | edit source]

Name Description Extension Engine name Editing tools
Texture 2D textures for model skinning. .dds ResTexture
Streaming Texture Streamed 2D textures. ResStreamingTexture

Materials[edit | edit source]

Name Description Extension Engine name Editing tools
Material Material information. Contains shader parameters and texture names. .material ResMaterial
Terrain Material Terrain material information. .terrain-material ResTerrainMaterial
Material Contains shader information and texset resource information. .material
Texture Contains parameter information for texture files linked to a material. .texture
Texset Contains groupings of textures linked to a material. .texset

Animations[edit | edit source]

All kinds of animation data.

Name Description Extension Engine name Editing tools
PXD Skeleton Skeleton for PXD animations. .skl.pxd ResSkeletonPxd
PXD Animation Animation data. .anm.pxd ResAnimationPxd
PBA Skeleton Skeleton for physics based animations. .pba ResPhysicalSkeleton
Animation State Machine Animation State Machine data. Handles animation blending, animation states, animation triggers, etc. .asm ResAnimator
HelperBone Currently unknown. .helperbone.bin ResHelperBone
Material Animation Material animations. .mat-anim ResAnimMaterial
UV Animation Texture UV animations (presumably Wii SRT0). .uv-anim ResAnimTexSrt
Texture Pattern Animation Texture pattern animations (presumably Wii PAT0). .pt-anim ResAnimTexPat
Visibility Animation Bone visibility animations (presumably Wii VIS0). .vis-anim ResAnimVis
Camera Animation Camera animations. .cam-anim ResAnimCameraContainer
Light Animation Light animations. .lit-anim ResAnimLightContainer
Vertex Animation Texture Vertex animation textures (textures that efficiently encode large scale animations on vertices). .vat ResVertexAnimationTexture
Havok Skeleton Skeleton for Havok Animations .skl.hkx
Havok Animation Animation data. .anm.hkx

Lighting[edit | edit source]

Name Description Extension Engine name Editing tools
MIRAGE Light MIRAGE point lights. .light ResMirageLight
MIRAGE Lightfield MIRAGE light field data. .lft ResMirageLightField
SH Lightfield Spherical harmonics based light field data. .lf ResSHLightField
Probe IBL probe data. .probe ResProbe
Light Pointcloud Instance placement information for point lights. .pcrt ResPointcloudLight

FxCol[edit | edit source]

FxCol defines collision shapes in the game world that can apply post processing effects when the player walks through them.

Name Description Extension Engine name Editing tools
FxColFile2 FxCol configuration. .fxcol ResFxColFile2

SvCol[edit | edit source]

SvCol defines collision shapes in the game world that control sector visibility (a form of culling).

Name Description Extension Engine name Editing tools
SvCol2 SvCol configuration. .svcol ResSvCol2

Effects[edit | edit source]

Name Description Extension Engine name Editing tools
Cyan Effect Particle effect systems. .cemt ResEffect
Particle Location Database of particle effects with transform values and sounds .effdb ResParticleLocation

Physics[edit | edit source]

Name Description Extension Engine name Editing tools
Bullet Mesh Bullet physics engine mesh. Used for collision detection. .btmesh ResPhysicsMesh
Bullet Soft Body Bullet physics engine soft body. .btsb ResSoftBody
Bullet Skinned Mesh Collider Bullet physics engine skinned mesh collider. Not exactly known what this is currently. .btsmc ResSkinnedMeshCollider
Collision Pointcloud Instance placement info for collision meshes. .pccol ResPointCloudCollision

Paths[edit | edit source]

Paths are 3D splines that the game engine uses for various tasks, e.g. to generate grind rails, calculate projectile movements, generate replicated objects and keep the player on a 2D rail.

Name Description Extension Engine name Editing tools
Orca: Spline Path Contains path information. .path.bin ResSplinePath
Orca: Spline Path 2 Contains path information. .path2.bin ResSplinePath2
Path Contains path information. .path ResSplinePath

Occlusion Capsule[edit | edit source]

Name Description Extension Engine name Editing tools
Occlusion Capsule Occlusion capsules .occ ResOcclusionCapsule

Atmosphere[edit | edit source]

Name Description Extension Engine name Editing tools
Atmospheric Fog Atmospheric fog data. ? ResAtmosphericFog

Density (vegetation)[edit | edit source]

Density is HE's GPU based vegetation system.

Name Description Extension Engine name Editing tools
Density Setting Configures the Hedgehog Engine density system. Configures all the density system's parameters and references density models. .densitysetting ResDensitySetting
Density Point Cloud Placement of pre-baked density models. .densitypointcloud ResDensityPointCloud
Density Instance ResDensityInstance
Terrain Grass Info .grass.bin ResTerrainGrassInfo

NavMesh[edit | edit source]

Navmeshes are meshes that the game's AI actors can use to navigate the map.

Name Description Extension Engine name Editing tools
NavMesh Config Navmesh configuration .nmc ResNavMeshConfig
NavMesh Tile Navmesh tile .nmt ResNavMeshTile
Navigation Mesh Navigation mesh map .navi.xml / .navi.xmlbin NavigationMesh

AI State Machine[edit | edit source]

The AI state machine controls AI behavior of enemies in game.

Name Description Extension Engine name Editing tools
AI State Machine Configuration for the AI State Machine .aism ResAIStateMachine AshDump

Cinematics[edit | edit source]

Name Description Extension Engine name Editing tools
Scene Legacy cinematics system. .scene ResScene
DvScene Cinematics. .dvscene ResDvScene
USM CRIware's video format .usm

Decals[edit | edit source]

Name Description Extension Engine name Editing tools
Decal Decals. Referenced in FxColManager. ? ResDecal
Decal Pointcloud Placement information for decal instances. Referenced in FxColManager. ? ResDecalPointcloud

Shaders[edit | edit source]

Name Description Extension Engine name Editing tools
Vertex Shader Vertex shaders. .vso ResVertexShader
Pixel Shader Pixel shaders. .pso ResFragmentShader
Compute Shader Compute shaders .cso ResComputeShader
Shader List List of shaders. .shader-list ResShaderList

Audio[edit | edit source]

Name Description Extension Engine name Editing tools
Atom Config CRIware Atom configuration data. .acf ResAtomConfig
Atom Cue Sheet CRIware Atom cue sheet. Contains the game's audio and cue/AISAC information. .acb ResAtomCueSheet

UI[edit | edit source]

Name Description Extension Engine name Editing tools
SurfRide SWIF Describes UI layout and animations. Similar to a primitive version of Adobe Flash. .swif ResSurfRideProject

Scripting[edit | edit source]

Name Description Extension Engine name Editing tools
Lua A Lua script. .lua ResLuaData
  • Any text editor

Haptics[edit | edit source]

Name Description Extension Engine name Editing tools
Vibration Haptics vibration information. .vib ResVibration

Clipmap[edit | edit source]

Name Description Extension Engine name Editing tools
Clipmap Ocean .cob ResClipmapOcean

Localization[edit | edit source]

Name Description Extension Engine name Editing tools
Converse Project Localization project data. .cnvrs-proj ResTextProject
Converse Text Localization text data. .cnvrs-text ResText
Converse Meta Localization metadata. .cnvrs-meta ResTextMeta

Fonts[edit | edit source]

Name Description Extension Engine name Editing tools
Bitmap Font Bitmap fonts. .bfnt ResBitmapFont
Scalable Font Set Vector fonts. .scfnt ResScalableFontSet
Optical Kerning Information about optical text kerning. .okern ResOpticalKerning

Unicode[edit | edit source]

Name Description Extension Engine name Editing tools
ICU data Data for libicu (unicode library) .icu ResIcuData

Acceleration Structures[edit | edit source]

Name Description Extension Engine name Editing tools
K-D Tree A serialized k-d tree. This resource has only been seen as a runtime resource in the engine or embedded in Path resources. N/A ResKdTree

Unknown[edit | edit source]

Name Description Extension Engine name Editing tools
Name Extra .nextra ResNameExtra
Pointcloud .pointcloud ResPointcloud