Replies: 13 comments 42 replies
-
This should be optional. |
Beta Was this translation helpful? Give feedback.
-
I want to add that the node currently exists, so this is only going to affect users that are regenerating the config.sk. Which is mostly new users. Existing users that don't regenerate their config.sk will continue to have this node as false. |
Beta Was this translation helpful? Give feedback.
-
I already use %player's uuid% in my variables. This should also work after the change right? |
Beta Was this translation helpful? Give feedback.
-
Some plugins doesn't support UUID instead of user name, so make it optional or add a "%player_name% would be cool yes ! |
Beta Was this translation helpful? Give feedback.
-
Alright since I've seen a post like this now I'm gonna make a little bit clear as I also was confused on what this config setting actually did despite how clear the wording is.
For those who already use I am all for this change even if I personally never used this setting. As any code I write I do I've seen mentions of issues where player's had 2 different uuids when using proxies and such, I've had this issue in the past and last I remember it's related to forwarding not being properly set up I suggest reading over this https://docs.papermc.io/velocity/player-information-forwarding if using velocity, for those who use Waterfall or Bungee ask in their related support channels. I hope this can clear up some misconceptions on this, as the change is important for those who need it. There's just about zero reason not to already be using UUIDs. Especially in a large scale of things. |
Beta Was this translation helpful? Give feedback.
-
will anything be changed in e.g. %arg-1%? |
Beta Was this translation helpful? Give feedback.
-
Why not set the default config to true? I FREQUENTLY use %player% as variable indexes, using the uuid in most cases is 100% overkill. Now sure, I could change it to %player's name%, but that's impractical and silly when you guys can set it to true by default. |
Beta Was this translation helpful? Give feedback.
-
Possible improvement: the warning associated with this could account for the variable save pattern. Many players use a custom pattern to make "temporary globals" by prefixing variables with a certain symbol, typically I get why the team may disagree here -- technically you can have long-form triggers, or a server which goes days between restarts, where local or "temporary global" variables can indeed persist long enough to span name changes. Figured I'd suggest it either way! |
Beta Was this translation helpful? Give feedback.
-
Basically all skripters know that %player% = nickname. A stupid useless update that violates the rules even though it already has %player's uuid%. |
Beta Was this translation helpful? Give feedback.
-
Are there any plans to create an option to disable the warning for users who are keeping the option |
Beta Was this translation helpful? Give feedback.
-
Does the command |
Beta Was this translation helpful? Give feedback.
-
I've seen a lot of confusion from people misunderstanding this (actually I was a bit confused myself at first so I'll forgive you) so I'd like to clarify it nice and simply: There is currently a config option for This currently defaults to false, but you can set it to true. This option doesn't affect After 2.9, if you make a new The option also won't appear in new If you keep using the same
|
Beta Was this translation helpful? Give feedback.
-
What is happening?
We're making {var::%player%} use UUIDs by default instead of player names.
By default, when you write
{var::%player%}
in Skript, it evaluates the player as their username:{var::Sahvde}
, for example. However, if the player changes their name, this can cause issues with your variable storage as the player is no longer linked to their old name.To avoid this, players in variable names will soon be defaulting to UUIDs, which cannot be changed by the user. This makes your data much safer and much less likely to have data loss for players. Skript has had this option in the config for a while now:
Over the coming months, please make an effort to migrate your player variables to use UUIDs, either by enabling this config option or specifically using
player's uuid
. If you have a situation that requires the player's name, you should specifically useplayer's name
.As the image states, please be aware that this upcoming change will not change your previous variables. If you have data stored under player names, you will have to either migrate all your data over to uuid-based variables, or use
player's name
in your variables.How do I prepare for the changes?
We recommend switching all player-related variables to use UUIDs. The easiest way to do this is switch your config option
use player UUIDs in variable names
totrue
. You can find this on line 91 or so of yourconfig.sk
file. This means you don't have to make any changes to your actual code, Skript handles the switch to UUIDs for you.However, this does not fix any existing variables that use player's names. You will have to manually migrate that information over to lists that use the player's UUID. Below is a command that you can use to migrate list variables over, or use as an example if you have more complex variables you want to migrate.
variables.csv
file.Stop your server, make a copy of your
variables.csv
file in a safe location, and then continue.Here's a script that you can use to migrate variables. If you have a variable list named
{var::*}
that you use with{var::%player%}
, you can run/migrate-variable var
to automatically migrate that list over.When will this change be happening?
We will not be making this change until 2.9 at the soonest. This gives you 6 months to prepare, which you should use wisely.
Following the change to use UUIDs by default, we will still respect it if you have
use player UUIDs in variable names
set tofalse
. This means that you won't be forced to the new usage unless you regenerate your config file. Any new config file will use UUIDs by default.If you have further questions or concerns, please ask them in the comments below.
Beta Was this translation helpful? Give feedback.
All reactions