[DELETED}Profiles icon

[DELETED}Profiles -----

[DELETED}




Looks like my previous update didn't capture all the xp bugs :(
----------, Apr 26, 2021

Thanks to @KhrysAK47 for bringing this issue to my attention.

There was a flaw in the logic I had in place for saving and loading the player's XP that was causing it dramatically increase the player's XP level. This should be resolved now.
----------, Apr 25, 2021

Thanks to @QualitySetups for pointing this issue out to me!

With this update, I resolved a bug that prevent save clicks from working as intended in the profiles GUI.
----------, Apr 20, 2021

Thanks to @QualitySetups for making this suggestion.

I've updated the config.yml to have a new section that allows users to customize all the GUI elements inside the /profiles open menu.
----------, Apr 19, 2021

When I built the first version of Profiles, I did not realize that there was a significant change to the ItemStack/Material logic starting with 1.13.x. Because of this, how I was constructing the items was not going to work for earlier versions of Minecraft (< 1.13.x).

With this update, I have been able to update the ItemStack/Material logic to work properly for Legacy versions of Minecraft. I tried my best to test all earlier versions (1.8.8, 1.9.4, 1.10.2, 1.11.2 and 12.2) and found that the plugin was working as intended (just as it was on the latest version of Minecraft).

Please continue to report any and all issues with the plugin and I will try my best to resolve things!
----------, Mar 28, 2021

With this update, the Profiles data will no longer be loaded or saved to the config.yml file, but rather to it's own file data.yml. This update was made to clean-up the codebase in preparation to add MySQL support in a later update.

NOTE: This is a major breaking change! If you want to persist your previously saved player data on versions of Profiles before 2.0.0, you WILL need to copy over the 'data' section from config.yml over to the new data.yml file. Here is a demo on how to do this:
[​IMG]
----------, Mar 25, 2021

Thanks to @KhrysAK47 for the suggestion!

Added the ability to configure a list of commands to dispatch whenever the player saves, loads or deletes a profile in a specific slot. The command list has a <PLAYER> token. Meaning if you add <PLAYER> to the command, it will replace this token with the current player's in-game name.

Here is the latest config.yml:
Code (YAML):
# Profiles - Configuration
# Each player will have 3 save slots stored in this file.
# Any changes to the values in the 'data' section WILL affect the player's saved profile. Modify at your own risk!
prefix
: "&8[&dProfiles&8]"
inventoryTitle
: "Profiles - Main Menu"
previewPlayerTitle
: "Preview - Player Inventory"
previewEnderchestTitle
: "Preview - Enderchest Inventory"
reloadConfigMessage
: " &aSuccessfully reloaded the config!"
noPermissionMessage
: " &cYou do not have permission to use that command!"
loadProfileMessage
: " &aSuccessfully loaded saved profile on slot #<SLOT_NUMBER>!"
saveProfileMessage
: " &aSuccessfully saved profile on slot #<SLOT_NUMBER>!"
deleteProfileMessage
: " &aSuccessfully deleted profile on slot #<SLOT_NUMBER>!"
saveDoesNotExistOnSlotMessage
: " &cYou do not have a save on slot #<SLOT_NUMBER>!"
invalidSlotMessage
: " &cSlot #<SLOT_NUMBER> is not a valid save slot!"

# Profiles - fresh start
freshStart
:
  freshStartOnNewSave
: true
  teleportToSpawnOnNewSave
: true

# Profiles - commands
# These configurable list of commands will all be dispatched for the given action (save/load/delete) slot pair.
# The token <PLAYER> will be replaced with the player's in-game name.
commands
:
  onSave
:
    slot0
:
     -
    slot1
:
     -
    slot2
:
     -
  onLoad
:
    slot0
:
     -
    slot1
:
     -
    slot2
:
     -
  onDelete
:
    slot0
:
     -
    slot1
:
     -
    slot2
:
     -

shouldSaveOnPlayerLeave
: true
data:
----------, Mar 22, 2021

Thanks to @KhrysAK47 for the suggestion!

This update will extend the save, load and delete functionality to be available via commands. I've updated the /profiles command to list more details about these commands.
[​IMG]

The /profiles save, load and delete commands will work exactly as the GUI functionality has previously. I've added some additional properties to the config.yml for error handling the save slot provided in these commands.

Here is the latest config.yml
Code (YAML):
# Profiles - Configuration
# Each player will have 3 save slots stored in this file.
# Any changes to the values in the 'data' section WILL affect the player's saved profile. Modify at your own risk!
prefix
: "&8[&dProfiles&8]"
inventoryTitle
: "Profiles - Main Menu"
previewPlayerTitle
: "Preview - Player Inventory"
previewEnderchestTitle
: "Preview - Enderchest Inventory"
reloadConfigMessage
: " &aSuccessfully reloaded the config!"
noPermissionMessage
: " &cYou do not have permission to use that command!"
loadProfileMessage
: " &aSuccessfully loaded saved profile on slot #<SLOT_NUMBER>!"
saveProfileMessage
: " &aSuccessfully saved profile on slot #<SLOT_NUMBER>!"
deleteProfileMessage
: " &aSuccessfully deleted profile on slot #<SLOT_NUMBER>!"
saveDoesNotExistOnSlotMessage
: " &cYou do not have a save on slot #<SLOT_NUMBER>!"
invalidSlotMessage
: " &cSlot #<SLOT_NUMBER> is not a valid save slot!"

freshStart
:
  freshStartOnNewSave
: true
  teleportToSpawnOnNewSave
: true
shouldSaveOnPlayerLeave
: true
data:
----------, Mar 21, 2021

Found a negative player gameplay loop where if the player died the auto-save functionality would fire.

This would save the empty inventory and player health value of 0.0 to the slot, effectively killing that save slot unless the 'config.yml' was updated manually.

Planning to have additional bug fixes for any other auto-save issues as they are found and/or reported.
----------, Mar 19, 2021

Thanks @NurdTurd for the suggestion!

With this version of Profiles, any change to the player's inventory (picking up an item, dropping an item, placing an item into a chest, etc) will cause an 'auto save' to occur for whichever Profile slot the player has last interacted with.

For example, if you load a profile on slot #1 and dropped an item onto the ground, the profile on slot #1 will save automatically.
----------, Mar 18, 2021

Accidentally uploaded a JAR containing some debug information for a recent change. Should be removed now.
----------, Mar 17, 2021

Thanks @KhrysAK47 for reporting this issue.

I've added error handling to clean up 'bad' data provided from the 'config.yml' for the healthLevel, hungerLevel, xpLevel and xpPoints data properties. If an unsafe value is provided from the 'config.yml', the value will default to the Minecraft default value. For example, if the 'healthLevel' was 100.0 in 'config.yml', the player's health will be set to 20.0.
----------, Mar 17, 2021

Added a configuration option (shouldSaveOnPlayerLeave) that if enabled will automatically save the player's profile when they leave the server.

This auto save will be applied to the Profile slot # that they last interacted with. Meaning, if they loaded or saved their Profile on slot1, this auto save will occur on slot1 as well.

I've also updated the 'loadProfileMessage' and 'saveProfileMessage' to indicate which slot # is being interacting with. Here is the updated 'config.yml'

Code (YAML):
# Profiles - Configuration
# Each player will have 3 save slots stored in this file.
# Any changes to the values in the 'data' section WILL affect the player's saved profile. Modify at your own risk!
prefix
: "&8[&dProfiles&8]"
inventoryTitle
: "Profiles - Main Menu"
previewPlayerTitle
: "Preview - Player Inventory"
previewEnderchestTitle
: "Preview - Enderchest Inventory"
reloadConfigMessage
: " &aSuccessfully reloaded the config!"
noPermissionMessage
: " &cYou do not have permission to use that command!"
loadProfileMessage
: " &aSuccessfully loaded saved profile on slot #<SLOT_NUMBER>!"
saveProfileMessage
: " &aSuccessfully saved profile on slot #<SLOT_NUMBER>!"
freshStart
:
  freshStartOnNewSave
: true
  teleportToSpawnOnNewSave
: true
shouldSaveOnPlayerLeave
: true
data:
----------, Mar 17, 2021

Thanks @KhrysAK47 for reporting this issue to me.

Found that the logic I'd implemented to open the Profiles inventory on join was flawed. This caused items not appear in the player's inventory until they opened and closed another chest inventory in-game.

Items should automatically render in inventory now!
----------, Mar 17, 2021

In earlier versions of the Profiles plugin, there was no way of knowing what items had been saved in the player inventory or ender chest inventory for each save slot. This version adds the ability to view both inventories before loading a saved profile.

[​IMG]
[​IMG]
[​IMG]
----------, Mar 15, 2021

New feature, 'Fresh Start'. If the player clicks an 'empty save slot', it will count as a brand new save. There are two options for this feature currently 'freshStartOnNewSave' and 'teleportToSpawnOnNewSave'.

If 'freshStartOnNewSave' is enabled, the player's inventory, ender chest inventory and other data will be reset to be their default values and the saved profile will reflect this.

If 'teleportToSpawnOnNewSave' is enabled, the player will be teleported to the spawn location of the default world (per the server.properties file; level-name).

Here is what the latest 'config.yml' looks like:
Code (YAML):
# Profiles - Configuration
# Each player will have 3 save slots stored in this file.
# Any changes to the values in the 'data' section WILL affect the player's saved profile. Modify at your own risk!
prefix
: "&8[&dProfiles&8]"
inventoryTitle
: "Profiles - Main Menu"
reloadConfigMessage
: " &aSuccessfully reloaded the config!"
noPermissionMessage
: " &cYou do not have permission to use that command!"
loadProfileMessage
: " &aSuccessfully loaded saved profile!"
saveProfileMessage
: " &aSuccessfully saved profile!"
freshStart
:
  freshStartOnNewSave
: true
  teleportToSpawnOnNewSave
: true
data:
----------, Mar 14, 2021

Thanks to @DarkNight88 for discovering this bug and reporting it to me. I need to re-think my date conversion logic to work for all time zones and not just my own.
----------, Mar 14, 2021

Resource Information
Author:
----------
Total Downloads: 581
First Release: Mar 14, 2021
Last Update: Apr 26, 2021
Category: ---------------
All-Time Rating:
3 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings