Consolidate project documentation and attribution

Add public-alias credits and a tested in-game credits page, centralize project guidance and asset provenance, import the complete authored fur channel maps, and keep starter-island collision synchronized with imported props.
This commit is contained in:
Alexander Sellite 2026-08-12 22:12:11 -04:00
parent 1940ae13e5
commit db6074ddfa
59 changed files with 1638 additions and 1032 deletions

View file

@ -1,24 +0,0 @@
# Drop-in facial features
Facial feature textures are discovered when the game starts. Put new PNGs in
the matching directory, restart the game, and the option will appear in the
Profile customization page.
```text
eyes/<id>.png
noses/<id>.png
mouth/<id>.png
```
The category directory is authoritative. A category prefix is optional, so
both `sleepy.png` and `eyes_sleepy.png` become the option ID `sleepy`.
Filenames are normalized to lowercase snake_case. Use stable names because
the resulting IDs are stored in appearance snapshots and sent to peers.
Keep each PNG on the established facial-feature canvas with an RGBA
transparent background. Godot imports the PNG automatically in the editor;
the runtime registry ignores `.import` files and other non-PNG files.
The current game bundles its facial assets under `res://`. Adding a file to a
development checkout is picked up on the next startup. An exported build must
be rebuilt to include newly added `res://` files in its package.

View file

Before

Width:  |  Height:  |  Size: 87 KiB

After

Width:  |  Height:  |  Size: 87 KiB

Before After
Before After

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b2e0uxfn187gu"
path="res://.godot/imported/body_arms_bengal.png-350ed15f218f0efa6ae7573ad27d3c65.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/bengal/body_arms_bengal.png"
dest_files=["res://.godot/imported/body_arms_bengal.png-350ed15f218f0efa6ae7573ad27d3c65.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cn71sswmj0tue"
path="res://.godot/imported/body_main_bengal.png-59815350b807220c52317e683582847e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/bengal/body_main_bengal.png"
dest_files=["res://.godot/imported/body_main_bengal.png-59815350b807220c52317e683582847e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

View file

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://rv36ws5wuakb"
path="res://.godot/imported/head_round_bengal.png-dfa502a4514c1605f5c8aff839dd8765.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/bengal/head_round_bengal.png"
dest_files=["res://.godot/imported/head_round_bengal.png-dfa502a4514c1605f5c8aff839dd8765.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 58 KiB

Before After
Before After

View file

@ -2,16 +2,16 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bdwqv502so784"
path="res://.godot/imported/body_arms.png-a4119ca84faf9d8bfa9bc0ab6f8ca133.ctex"
uid="uid://p5cg2bwrxf7v"
path="res://.godot/imported/body_arms_fox.png-91ab21ce544fdc29b8a0ebf3e54ef7cd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/fox/body_arms.png"
dest_files=["res://.godot/imported/body_arms.png-a4119ca84faf9d8bfa9bc0ab6f8ca133.ctex"]
source_file="res://art/exported/characters/patterns/fox/body_arms_fox.png"
dest_files=["res://.godot/imported/body_arms_fox.png-91ab21ce544fdc29b8a0ebf3e54ef7cd.ctex"]
[params]

View file

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Before After
Before After

View file

@ -2,16 +2,16 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://ccbaq4d4nt3bm"
path="res://.godot/imported/body_main.png-c83ac58a68a1485819fba3e07de784cd.ctex"
uid="uid://wcsadkjjpaei"
path="res://.godot/imported/body_main_fox.png-25e4fa03a48053f6b37b3bbadb1f01ba.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/fox/body_main.png"
dest_files=["res://.godot/imported/body_main.png-c83ac58a68a1485819fba3e07de784cd.ctex"]
source_file="res://art/exported/characters/patterns/fox/body_main_fox.png"
dest_files=["res://.godot/imported/body_main_fox.png-25e4fa03a48053f6b37b3bbadb1f01ba.ctex"]
[params]

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

View file

@ -2,16 +2,16 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://m2un0oahhss3"
path="res://.godot/imported/body_arms.png-a55eeb0787397c58508a7c65cc2d04f8.ctex"
uid="uid://c4vlbrp7qevvo"
path="res://.godot/imported/head_pointy_fox.png-ef3535a6c05a49aae36fe5514844a3df.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/spots_bengal/body_arms.png"
dest_files=["res://.godot/imported/body_arms.png-a55eeb0787397c58508a7c65cc2d04f8.ctex"]
source_file="res://art/exported/characters/patterns/fox/head_pointy_fox.png"
dest_files=["res://.godot/imported/head_pointy_fox.png-ef3535a6c05a49aae36fe5514844a3df.ctex"]
[params]

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View file

@ -2,16 +2,16 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://cybpx6ua1vaw"
path="res://.godot/imported/body_main.png-eff221076f4e25415158ecf38fdf03da.ctex"
uid="uid://cyr0wcavb1cmi"
path="res://.godot/imported/tails_fox_fox.png-061a224c36e90f10b33d37e616ff7e94.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/exported/characters/patterns/spots_bengal/body_main.png"
dest_files=["res://.godot/imported/body_main.png-eff221076f4e25415158ecf38fdf03da.ctex"]
source_file="res://art/exported/characters/patterns/fox/tails_fox_fox.png"
dest_files=["res://.godot/imported/tails_fox_fox.png-061a224c36e90f10b33d37e616ff7e94.ctex"]
[params]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 174 KiB