[Mod] Skinsdb [skinsdb]

User avatar
Krock
Developer
Posts: 4649
Joined: Thu Oct 03, 2013 07:48
GitHub: SmallJoker
Location: Switzerland
Contact:

Re: [Mod] Skinsdb [skinsdb]

by Krock » Post

@bell07
Apparently I totally missed your request from this january in my mod topic. I haven't even seen when you posted the mod here. Sorry for that - I guess only a PM or a message in IRC would have brought my attention to it.

So I came up with the idea of solving this fork-chaos by moving your repository into the GitHub minetest-mods team, or any other team (suggestions?), if you are interested. The profit in this mechanism is easier contribution (if access is given), as this mod has a big potential for servers. Developers could discuss on what's the better implementation or solution for the players.
Look, I programmed a bug for you. >> Mod Search Engine << - Mods by Krock - DuckDuckGo mod search bang: !mtmod <keyword here>

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

@Thank you Krock for your late answer. At the time I was new in the MT scene, therefore did not asked twice.

I requested already the entrance to the minetest-mods for skinsdb: https://github.com/minetest-mods/minete ... /issues/44
The answer is "why not?" but no developer is motivated to supervising the skinsdb at the time.

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

Thanks to @sofar, now the mod is available at https://github.com/minetest-mods/skinsdb
My "mod_with_skins" branch I let still available at https://github.com/bell07/minetest-skinsdb (default branch for now in my fork)

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

Some updates appears with this mod today. The API was slightly changed and enhanced for more flexibility.
For Players/Game developers: The mods smart_inventory and character_creator are updated to new function so if you use one of them, please update the mods to the latest version too. As of now the character_creator PR is still open:
https://github.com/minetest-mods/charac ... or/pull/13

For mod developers:
The function skins.get_skinlist(assignment, select_unassigned) is now obsolete because not flexible enough (but still not removed). The function is replaced by 2 new methods:

skins.get_skinlist_for_player(playername)
Get all allowed public and all player's private skins for player. If playername not given only public skins returned.
If a skin have the "in_inventory_list" metadata-entry set to false, the skin is not in inventory skins-list but still usable. This way it is possible to create mods with skins not visible in inventory because of any reason (like obtainable trough wardrobe only?)

skins.get_skinlist_with_meta(key, value)
Get all skins with metadata key is set to value. Examples:
skins.get_skinlist_with_meta("playername", playername) - Get all private skins (w.o. public) for playername
skins.get_skinlist_with_meta("author", author) - All skins written by Author
skins.get_skinlist_with_meta("in_inventory_list", false) -- All hidden but allowed skins
skins.get_skinlist_with_meta("my_mod_custom_attribute", "Z") -- All skins with my_mod_custom_attribute is set zu "Z"

User avatar
mnh48
Member
Posts: 310
Joined: Wed Nov 16, 2016 22:55
GitHub: mnh48
IRC: MNH48
In-game: mnh48
Location: Kuala Lumpur, Malaysia
Contact:

Re: [Mod] Skinsdb [skinsdb]

by mnh48 » Post

Since skinsdb doesn't support private skins when we use unified_inventory, could we at least get support of it via chat command? or it already exist as command (I looked through /help few times but I could missed it)??

Private skins would be useful in servers for players who only want their unique skin as their own ingame skin, serving like an identity, but I can't use it because private skins aren't supported with unified_inventory.

Public skins works fine on unified_inventory.

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

muhdnurhidayat wrote:Since skinsdb doesn't support private skins when we use unified_inventory, could we at least get support of it via chat command?
That is a good Idea! Asume some players like to use chat command instead of inventory for some reason.

I added a feature-request for this: https://github.com/minetest-mods/skinsdb/issues/4
Any permissions required? I think no, till the same functionality provided as already in inventory.

User avatar
mnh48
Member
Posts: 310
Joined: Wed Nov 16, 2016 22:55
GitHub: mnh48
IRC: MNH48
In-game: mnh48
Location: Kuala Lumpur, Malaysia
Contact:

Re: [Mod] Skinsdb [skinsdb]

by mnh48 » Post

I don't think permissions are required...

but the command `/skinsdb list private` should just list the user's private skin, not other users' private skin, except for the admin/moderator because they should be able to see all skins...

and one user should not able to set their skin as another user's private skin with chat command, unless they're admin/moderator...

but others might have different view ¯\_(ツ)_/¯

(I've posted this on the issue's comment as well...)

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

Attachments
Skinsdb-chat.png
Skinsdb-chat.png (153.93 KiB) Viewed 2310 times

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

Additional update in my master: https://github.com/bell07/minetest-skinsdb/ :
  • Including previous PR #5 for issue #2
  • formspec parts consolidated to formspec.lua removing redundancy
  • unified_inventory supports private skins now, fixes #3
  • new chat command '/skinsdb show' to show current skin info in a formspec
  • new chat command '/skinsdb ui' (or just /skinsdb) to show select skin in formspec without inventory
Please for tests and feedback before I merge them to the minetest-mods

User avatar
scottwolff
Member
Posts: 129
Joined: Sat Apr 30, 2016 06:15
In-game: scottwolff or some variant of iasiney
Location: Central Illinois

Re: [Mod] Skinsdb [skinsdb]

by scottwolff » Post

Yes, this mod works. Just that the scripts to pull the skins usually error out. Generally, I've read that this is because there's just too many skins.

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

scottwolff wrote:Just that the scripts to pull the skins usually error out. Generally, I've read that this is because there's just too many skins.
I use the bash script only. The other updater seems to be buggy, but I cannot python or C#. So fixes welcome.

If you have trouble to download the skins byself, just grab the textures- and meta- folders from my mod_with_skins branch. I update them sometimes, currently they are 1325 skins as of 08.02.2018

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

My last changes are merged to minetest-mods now (thanks to @SmallJoker and @sofar for code review).

The skinsdb does full support now the private skins for unified_inventory too. In addition the skins can be managed by chat commands:

Code: Select all

/skinsdb (set | show | list | list private | list public | ui)
The "ui" is an inventory independent screen with the same functionality to browse and set skins.

Malaysia translation added (Thanks to @MuhdNurHidayat )

User avatar
mnh48
Member
Posts: 310
Joined: Wed Nov 16, 2016 22:55
GitHub: mnh48
IRC: MNH48
In-game: mnh48
Location: Kuala Lumpur, Malaysia
Contact:

Re: [Mod] Skinsdb [skinsdb]

by mnh48 » Post

yup, thanks for adding the translation I've made... xD

btw, Malaysia is not the only country that uses Malay... :P the translation was made with other countries in mind too... the translation would be understandable in most countries that use or know Malay... :)

Image
Note: while Indonesian is said to be one of Malay dialects that has been standardized in Indonesia's own way to be official language in Indonesia, most people there who only learn Indonesian does not understand the Malay being used in other countries except in few regions so they would need a separate translation file (Indonesian, language code id). However, most Indonesian who lives in Sumatra and Kalimantan would understand Malay translation because most of them uses both Indonesian language (Indonesia's standardized language) and Malay language (original natural language) in their live.

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

btw, Malaysia is not the only country that uses Malay... :P
Understand, sorry, i did not know the Malaysia language is called Malay :-(

scr267
Member
Posts: 13
Joined: Mon Jun 20, 2016 18:28
In-game: scr267

Re: [Mod] Skinsdb [skinsdb] - bug?

by scr267 » Post

I've installed the skin, updated the database and can see all the skins in the inventory as well as the raw texture, but when I 'select' it I keep getting the following error:

ERROR[Main]: generateImage(): Could not load image "character_1220.png.png" while building texture; Creating a dummy image

Somehow the code keeps trying to look for the wrong filename.

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

Do you use 3d_armor? If yes, which version?
suspect you use 3d_armor before 0.4.10 (was a known incompatibility, fixed in 3d-armor 0.4.10). Please update the 3d_armor

scr267
Member
Posts: 13
Joined: Mon Jun 20, 2016 18:28
In-game: scr267

Re: [Mod] Skinsdb [skinsdb]

by scr267 » Post

That was exactly the problem - I've updated 3d_armor to the latest version and its working perfectly well.

Thanks very much, I appreciate the response!

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

The "Alpha" version appears that supports the Minecraft 1.8 format. You can find it in my "V_1_8_skins" branch:
https://github.com/bell07/minetest-skin ... _1_8_skins

Tested with some https://minecraft.novaskin.me/ Skins.
The support for new skins works fine with current stalbe 3d_armor.
character_creator needs a patch to switch back to the right model.

Feedback welcome before I set up a pull request to minetest-mods

Thanks to Stu for his "multiskin" models I get from his 3d_armor / multiskin development branches.
Image
Attachments
screenshot_20180415_005216.png
screenshot_20180415_005216.png (277.22 KiB) Viewed 2310 times

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

The 1.8er Skins support is merged to master in the meantime.

Today the next update appears: the skinsdb work together with clothing mod without multiskin. Latest clothing version (git commit 2018-06-22) is required since multiskin is not mandatory dependency anymore.

kurktu
Member
Posts: 14
Joined: Tue May 03, 2016 18:13
In-game: kurktu

Re: [Mod] Skinsdb [skinsdb]

by kurktu » Post

Hi I get this error in my logfile:
2018-06-25 13:21:13: ERROR[Main]: Server::fillMediaCache(): Empty file "/var/lib/minetest/.minetest/mods/skinsdb/textures/character_.png"
I ran ./update_from_db.py to get the skins from the database, should I also run ./update_skins_db.sh or what is the second script for?

Also I'm having problems because the homedecor skin from the wardrobe is superseding the skinsdb skin, so on next login I'm always back with my homedecor skin no matter what skinsdb skin I chose..

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

I di not use the update_from_db.py and not MT_skins_updater.exe. Both updater are inherited from u_skinsdb this mod was forked from. For my "mod_with_skins" branch I update only with the bash script update_skins_db.sh that works fine.

So please delete the empty file character_.png and try again using the bash-script.

Code: Select all

Also I'm having problems because the homedecor skin from the wardrobe is superseding the skinsdb skin, so on next login I'm always back with my homedecor skin no matter what skinsdb skin I chose..
Do you use the lates skinsdb and the latest homedecor. Since add optional support for skinsdb in wardrobe the Homedecor wardrobe works fine with skinsdb.

kurktu
Member
Posts: 14
Joined: Tue May 03, 2016 18:13
In-game: kurktu

Re: [Mod] Skinsdb [skinsdb]

by kurktu » Post

Ok seems the empty character came from running update_skins_db.sh with jq missing. Now it worked.

But the optional wardrobe support seems still not to work, unless I uncomment:

Code: Select all

minetest.register_on_joinplayer(function(player)
	local skin = player:get_attribute("homedecor:player_skin")

	if skin and skin ~= "" then
		-- setting player skin on connect has no effect, so delay skin change
		minetest.after(1, function(player, skin)
			homedecor.set_player_skin(player, skin)
		end, player, skin)
	end
end)

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

I see, thank you for bug report

EDIT: Merge request with bugfix created for homedecor.

kurktu
Member
Posts: 14
Joined: Tue May 03, 2016 18:13
In-game: kurktu

Re: [Mod] Skinsdb [skinsdb]

by kurktu » Post

Is there a command for admin to set the skin of an other player? Some players use some almost invisible skins from the database, I'd like to change their skin then.. Also how do I hide these skins or make them private, do I have to rename texture, preview and metadata manually to make the skin privat? And how to make a skin hidden? Thanks in advance.

bell07
Member
Posts: 604
Joined: Sun Sep 04, 2016 15:15
GitHub: bell07

Re: [Mod] Skinsdb [skinsdb]

by bell07 » Post

Is there a command for admin to set the skin of an other player?
No, There is no admin command to change skin for other player. If some skins should not be used by players, just delete the files. I recommed to create a deletion script to be called after each updater run since the skins will be redownloaded by updater.

By the way, I do not use the updater scripts anymore since the skinsdb supports the 1.8er skins. Now I just create and/or modify existing skins on https://minecraft.novaskin.me/ and use them. Preview file can be done using "Photo" functionality on the page.
Also how do I hide these skins or make them private
Private skins could be defined by naming player_[nick].png or player_[nick]_[number].png. The preview- and metadata -file needs to follow this naming.
And how to make a skin hidden?
Skinsdb supports hidden skins, But it is just an API, there is no utilization in skinsdb self.

Code: Select all

skin_obj:set_meta("in_inventory_list", false)
This feature is used in homedecor's wardrobe for example. This way the wardrobe skins are in database but not selecteable in inventory. The player needs to use the wardrobe to apply the wardrobe skins.

Post Reply

Who is online

Users browsing this forum: No registered users and 18 guests