Code Monkey home page Code Monkey logo

mineskin.org's Introduction

mineskin.org's People

Contributors

inventivetalentdev avatar kadeluxe avatar minidigger avatar spraxdev avatar th3shadowbroker avatar yhdiamond avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

mineskin.org's Issues

[Feature suggestion] Taterzens skin command

Hi there!

First off, thanks for the great api! :)

Mineskin website does already have a built-in citizens command for setting skin.

<div class="row card-panel">
<h5 id="citizens">Citizens Skin Command</h5>
<div class="col s12">
<div>
<div class="row">
<div class="input-field col s12">
<label for="citizensCommand">Citizens /npc skin Command</label>
<textarea style="min-height: 10px;max-width:100%;" id="citizensCommand" class="materialize-textarea" readonly>/npc skin --url https://minesk.in/{{ skin.id }}</textarea>
<button class="btn tooltipped" data-clipboard-target="#citizensCommand"><i class="fa fa-clipboard" aria-hidden="true"></i> Copy</button>
</div>
</div>
</div>
</div>
</div>

I'm creator of serverside mod Taterzens (github), a fabric / forge NPC mod, which has a support to fetch skins from mineskin already. I was wondering if you could add a field with skin command for my mod as well?

Command looks like the following one

/npc edit skin https://minesk.in/807171128

So the code would be sth. like this (just copied & modified existing Citizens code)

<div class="row card-panel">
    <h5 id="taterzens">Taterzens Skin Command</h5>
    <div class="col s12">
        <div>
            <div class="row">
                <div class="input-field col s12">
                    <label for="taterzensCommand">Taterzens /npc edit skin Command</label>
                    <textarea style="min-height: 10px;max-width:100%;" id="taterzensCommand" class="materialize-textarea" readonly>/npc edit skin https://minesk.in/{{ skin.id }}</textarea>
                    <button class="btn tooltipped" data-clipboard-target="#taterzensCommand"><i class="fa fa-clipboard" aria-hidden="true"></i> Copy</button>
                </div>
            </div>
        </div>
    </div>
</div>

I know users can already just copy the citizens url and then write command on their own, but I'd be glad if you could add this one as well, in case you don't feel like it adds too much clutter :). Thanks.

Make Twitter js load asynchronously

Is your feature request related to a problem? Please describe.
In some regions or networks Twitter is blocked or rate-limited. This leads to the problem of mineskin.org loading for too long because currently it loads Twitter JavaScript synchronously:
<script src="https://platform.twitter.com/widgets.js"></script>

Describe the solution you'd like
It would be better to make Twitter JS load asynchronously to avoid blocking of page load.
There is covered in Twitter docs.

Dark theme? Please?

Is your feature request related to a problem? Please describe.
The white background can be a bit much if you use dark theme on various other pages and then switch over to mineskin.

Tl;dr: My eyes hurt viewing the page.

Describe the solution you'd like
Implement a dark theme that could be switched to using a button/toggle.
If possible, make the site auto-detect what theme to use based on the system/browser preferences set.

Describe alternatives you've considered
Only alternative is dark reader, which has some nasty side-effects in the overall look of the site (i.e. making some colours look heavily desaturated and "dull")

Additional context

Support 1.16 give-command

Minecraft 1.16 changed how UUIDs are stored in NBT.
Instead of 407b28ed-e7bd-4516-93d9-3361fecb7889 it's now [I;1081813229,-407026410,-1814482079,-20219767]. (more info)

Couldn't get the htmls to render, so here's the code instead of an PR (maybe mention me as Co-Author? c: )

const uuidView = new DataView(new ArrayBuffer(16));

/**
 * Takes an UUID and converts it into four int32
 *
 * @param {string} uuid Valid UUID (with or without hyphens)
 *
 * @returns {number[]}
 */
function getInt32ForUUID(uuid) {
  uuid = uuid.replace(/-/g, '');  // Remove hyphens
  const result = [];

  uuidView.setBigUint64(0, BigInt(`0x${uuid.substring(0, 16)}`));  // most significant bits (hex)
  uuidView.setBigUint64(8, BigInt(`0x${uuid.substring(16)}`));     // least significant bits (hex)

  // read int32
  for (let i = 0; i < 4; i++) {
    result[i] = uuidView.getInt32(i * 4, false);
  }

  return result;
}

/**
 * Takes an array with four int32 and return a string representation
 * that can be used for Minecraft 1.16+ commands (nbt)
 *
 * @param {number[]} uuidInt32
 *
 * @returns {string}
 */
function formatInt32UUID(uuidInt32) {
  return `[I;${uuidInt32[0]},${uuidInt32[1]},${uuidInt32[2]},${uuidInt32[3]}]`;
}

Usage example

// Use the returned string instead of the UUID for the give-command 
console.log(formatInt32UUID(getInt32ForUUID('407b28ed-e7bd-4516-93d9-3361fecb7889')));

The problem of skins display on the site

I faced a problem on your site about the display of minecraft skins.
1.You mistaked a left hand for a right hand while displaying skin on the site.
It displays properly on the other sites where I can upload skins.
The attached screenshot displays our minecraft server that uses your site for skins integration.
( It's not ad :D)
proof

Skins randomly changing to other skins

What steps will reproduce the problem?

  1. Download any skin from mineskin.org
  2. Apply that skin to any NPC.
  3. Wait for some time and see it will update to random one.

What were you expecting to happen? What happened instead?

The skin that should appear is but when using it from mineskin, a totally random skin appears, for example I had a Elizabeth skin downloaded from mineskin.org and two days later I check and skin updated to a dark random skin. No changes were made manually after the Elizabeth NPC skin.

Can't Authenticate

I've tried dozens of times on two accounts with no security questions, the site is just plain broken for me.

Add an ID field next to Texture Data, Texture Signature, etc

Is your feature request related to a problem? Please describe.
I created an integration that allows to set any skin from MineSkin ingame by its ID so players can go to mineskin.org, find any skin they like and copy its ID to paste it in command.
It's pretty much obvious where to find skin ID since it is located above the preview but when you generate a new skin using Minecraft Username, MineSkin displays that username instead of ID, so users can only locate that ID from URL.

Describe the solution you'd like
For consistency I suggest either to display ID even when you generate a skin using Minecraft Username, or to completely move ID to its own field.
00059_firefox

Additional context
Actually this issue is a kind of nitpicking I guess, just some of my players asked me about it.

"Sign in with Microsoft" button does not work for Edge (Chromium in general)

When trying to login using the "Sign in with Microsoft" button does absolutely nothing happen.
No response, no popup, nothing.

There are also no warnings in the browser console, nor any other indicators of a failure. The only guess I have is, that the action that should be triggered (startMicrosoftFlow()) doesn't exist or is perhaps misspelt.

I would appreciate, if a fix could be made, as you otherwise lose at least one account because of the migration.

How can I delete one of my own skins?

I accidentally created two of the exact same skins, and I can't find out to delete one of them. so is deleting it possible? is there a way? I've tried to go into the skin and right-clicking it, but I couldn't find a way

Support new textures.

First of all: I hope I ask this in the right place. If not feel free to move it to the right issue tracker (if there is one).

I want to suggest to implement support for the newer textures of MC, which allow you to have separate textures for your left and right arms and legs.
Unfortunately does mineskin not support those textures. When uploading one of those textures (such as this one here for example) does mineskin not recognize it as a valid, supported Skin.
This can (and will) limit users in making a skin.

Add note about allowing pop-ups when logging into MS accounts

Is your feature request related to a problem? Please describe.
Browsers such as Firefox may block pop-ups on mineskin when left on the default/recommended settings.
This will cause the first attempt to login into your MS account to not work as the first pop-up was blocked.

Describe the solution you'd like
Mineskin should have a clearly visible note that you should allow it to show pop-ups, by checking your browser's settings.

Describe alternatives you've considered

Additional context
I didn't notice that it was Firefox blocking the pop-up as their way of notifying me of it was a tiny banner that is barely visible when you're not paying attention.
This resulted in a "Logging in via Microsoft..." text bubble being displayed without any window showing up and made me think the system might be bugged as the second attempt worked fine.

Login button not loaded.

Hello, now I want to create an API key, but the page doesn't work properly and I can't click the "generate" button, just like issue #38. I press F12 and find many errors. I searched almost everywhere and found that the page can only be used after logging in, but the login box is not displayed and does not work. I tried it on all my devices (IOS, Android), and tried it with many different browsers (Chrome, Edge, FireFox). I also used VPN to change several countries and regions, and the page still doesn't work properly and the login box has never been displayed. Sincerely hope that the developers can fix it, thank you VERY VERY VERY much.
image
image

Add field for Citizens' new --url option

Is your feature request related to a problem? Please describe.
No

Describe the solution you'd like
Citizens added a new --url parameter to the skin command, which allows to directly set the Skin of a NPC through the provided URL.
I want to suggest to implement a new field, which would provide the command with the new --url field (/npc skin --url :url)

Something that came into my mind was to perhaps also have the above generated command with a custom (smaller) url which acts as a redirect to the textures-url of minecraft. (Something like https://mineskin.org/:id/texture)
This would give an easy to use command, which would also be small in sice and therefore 100% usable by the player ingame.

Describe alternatives you've considered
The only alternative is to either grab the texture URL from Mineskin, or to use the much longer skin command using the -t argument.

Additional context
Update mentioning the new command option:
https://www.spigotmc.org/resources/citizens.13811/update?update=324588

I tested it with this texture URL and it worked without issues:
http://textures.minecraft.net/texture/184e745d4a037f2a8572c8947b06411f63181346932f14608eac34f339dac71f

Minimum length of eligible usernames for MineSkin is 4 characters, not 3.

What steps will reproduce the problem?

  1. Navigate to https://mineskin.org/.
  2. Under "Minecraft Username", type any 3 alphanumeric characters (from the following set: /[a-zA-Z0-9]/).
  3. Notice that 3-character usernames are considered to be invalid, even though a username such as 111 does generate a valid non-Steve/Alex skin.
  4. Under "Minecraft Username", type another alphanumeric character, making 4 total.
  5. Notice that 4-letter usernames can be used in MineSkin, but 3-letter usernames can't.

What were you expecting to happen? What happened instead?

Instead of the minimum username length for skin extraction via MineSkin being 3 characters as expected, the actual minimum is 4 characters.

Microsoft accounts

Eventually, the site will stop working as all Mojang accounts will be transitioned to Microsoft accounts. The mineskin project will have to support Microsoft accounts before the transition finishes. The solution would be to have a login option to Microsoft and then it uses tokens to authenticate afterwards

delay request spamming console & unable to generate

What steps will reproduce the problem?

  1. open website using chrome
  2. press F12
  3. watch "Network" tab

What were you expecting to happen? What happened instead?

delay request is spamming.
and timeout is not responding.
image
image
it can build up to 30,000+ requests, causing CPU usage raise and I can't use the generate button.

Option to save generated skins under an account

Is your feature request related to a problem? Please describe.
Right now does the website seem to store the skins you yourself generated using cookies(?)
This has the unwanted downside that whenever you f.e. clear your browser history, which may include cookies, or switch browsers, you will lose all the skins you've generated, which especially for private ones makes them impossible to recover.

Describe the solution you'd like
Maybe offer an option to sign in with a Mojang/Microsoft account but not to allow the site to use the account for skin generation but simply as a way to associate skins with it so that you can always login and find the skins you generated.

Describe alternatives you've considered
Not clearing cookies or staying with your browser, which both aren't optimal for different reasons.

Additional context
I regularly clear out my browser history to improve overall performance (And storage space used by all the cached data) and this will always cause me to lose skins I may want to re-use at a later point in time.

Having a more permanent way to keep generated skins associated with you would be really awesome.

Apikey generate is not working

I'm trying to generate a Key for myself to use in the skin restore plugin, but unfortunately the site doesn't cooperate to generate this Key!

Screenshot_20230606-121314

Re-add a way to see own generated skins

Is your feature request related to a problem? Please describe.
Due to the site now loading new skins while scrolling is it impossible to reach the section of the skins you yourself generated. That coupled with the fact that private skins won't be visible in the gallery itself makes it impossible to find own, privately generated skins anymore.

Describe the solution you'd like
There should be a way to view and access your own generated skins. Perhaps with a separate tab?

Describe alternatives you've considered
There isn't really one outside of searching through the gallery which, again, only depicts public skins and not those that you created privately.

Additional context
I recently made a skin and encountered a random loading issue of the info screen, which made it impossible for me to actually get the skin-info (i.e. command) I needed.

While the loading issue has been fixed thanks through reloading does it show a core issue that you can face anytime in the future.

Here's a screenshot of the stuck loading window:
image

Invalid URLs in footer

What steps will reproduce the problem?

  1. Go to https://mineskin.org
  2. Scroll down to the footer
  3. Click on either Custom Skins Plugin or Custom Blocks Plugin

What were you expecting to happen? What happened instead?

The Links should've forwarded me to their respective pages, but I received 404 errors instead.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.