Clean up skin listing (#100)

Supersedes the 'fsep' setting by automatically detecting
the texture name in both, the skin list and the updater
scripts.
New, automatically fetched skins will now always use the
'.' delimiter to avoid player name issues.
In case of ambiguous texture names, a warning is logged.
This commit is contained in:
SmallJoker
2024-06-05 17:55:55 +02:00
committed by GitHub
parent cd27e24b6f
commit 312780c82e
6 changed files with 150 additions and 106 deletions

View File

@ -1,25 +1,32 @@
In this folder the skin files could be placed according the following file naming convention.
This location is where you can put your custom skins.
skinsdb uses an underscore as default seperator for filename splitting which can cause problems with playernames containing "_",
see https://github.com/minetest-mods/skinsdb/issues/54.
The config setting skinsdb_fsep (texture filename seperator) was added as a workaround which also offers "."(dot) as seperator,
dot is the only character which is allowed in textures but not in playernames.
To keep compatibility with older versions underscore is the default value.
fresh install:
you should change the seperator to "." to avoid that problem.
existing install:
- change the filenames according to the naming convention with dot as seperator instead of underscore
- change the texture filename seperator in settings or add "skinsdb_fsep = ." to your minetest.conf before starting your server
List of accepted texture names
------------------------------
Public skin available for all users:
character_[number-or-name].png
character.[number or name].png
One or multiple private skins for player "nick":
player_[nick].png or
player_[nick]_[number-or-name].png
One or multiple private skins for player "[nick]":
player.[nick].png
player.[nick].[number or name].png
Preview files for public and private skins.
Optional, overrides the generated preview
character_*_preview.png or
player_*_*_preview.png
Skin previews for public and private skins:
character.[number or name].preview.png
player.[nick].preview.png
player.[nick].[number or name].preview.png
Note: This is optional and overrides automatically generated preciewws.
Legacy texture names
--------------------
The character `_` is accepted in player names, thus it is not recommended to
use such file names. For compatibility reasons, they are still recognized.
character_[number or name].png
player_[nick]_png
player_[nick]_[number or name].png
... and corresponding previews that end in `_preview.png`.