Player Worlds

4.99 USD


:beginner:Info

  • Give the players in your server the ability to transfer to their own worlds where they can invite others to explore and roam the world. Grant your players a safe space where they can escape the carnage to relax, explore, and get creative! Players can send invites to other players or send a request to join other players’ worlds! Furthermore, possessing control over who is allowed in their own worlds! Fully server synced with an extensive configuration file that allows integration of multiple different frameworks.


:beginner:Features

  • Incredibly extensive configuration file allowing great control over the resource and its functionality
  • QBcore, ESX, OR Standalone (Framework & Resource Independent)!
  • Ability to use different permission systems: Ace permissions, Discord roles, command, QBCore jobs, ESX jobs, custom or no authentication at all!
  • Ability to choose from different notification systems: GTAV, VCore-Noti, OkOkNotify, T-Notify, skeexsNotify, Infinity Notify, B-Notify, Atom Notify, QBCore, ESX, or add your custom notification calls! If you don’t know how, make a request and I’ll add it for you!
  • Translatable language file, easy to change language file add your own if needed
  • Infinite player worlds
  • Allow players to transfer to their own private Player World, with the ability to invite other players to join them. Or alternatively, join other players’ private worlds!


:beginner:Requirements *(Optional) *

NOTE: none of these resources are required, only install the resources that you want!


For Discord Permissions
[discordroles]Discord permission checking
[hqly_perms]wrapper for discordroles


For QBCore
[QBCore Framework]QBCore framework


For ESX
[ESX Framework]ESX framework


Supported Notification Frameworks

[OkOkNotify][VCore-Noti][T-Notify]
[skeexsNotify][Infinity Notify][B-Notify]
[Atom-Notify]

[QBCore]Built-in QBCore notification system
[ESX]Built-in ESX notification system


:beginner:Installation Guide

 Standalone (Framework & Resource Independent)

  1. download hqly_player_worlds and drag and drop into your resources folder
  2. add start hqly_player_worlds to your server.cfg file
  3. edit config.lua
    3.1. change permissionType to either ace, command, or none
    3.2. change notificationFramework to gtav
  4. follow the specific permissions framework guide found below

 QBCore

  1. make sure you have QBCore installed, properly configured, and running
  2. download hqly_player_worlds and drag and drop into your resources folder
  3. add start hqly_player_worlds to your server.cfg file
  4. edit config.lua
    4.1. change permissionType to qbcore
    4.2. change notificationFramework to qbcore
    4.3. edit allowedRoles and put any job names you wish to be able to open the menu
  5. to change either the permission or notification framework refer to the Permissions and Notification Framework Guides found below

 ESX

  1. make sure you have ESX installed and running
  2. download hqly_player_worlds and drag and drop into your resources folder
  3. add start hqly_player_worlds to your server.cfg file
  4. edit config.lua
    4.1. change permissionType to esx
    4.2. change notificationFramework to esx
    4.3. edit allowedRoles and put any job names you wish to be able to open the menu
  5. to change either the permission or notification framework refer to the Permissions and Notification Framework Guides found below

 Permissions Framework Guides

  • Ace Permissions
  1. edit config.lua
    1.1. change permissionType to ace
  2. in your server.cfg add the appropriate ace permissions.
    2.1. IE: add_ace group.police command.baitcar allow (make sure the command matches the command you have set in the config)
  • Discord Permissions
  1. install & configure discordroles and hqly_perms: refer to Requirements section found above
  2. edit config.lua
    2.1. change permissionType to discord
  3. place any desired Discord role IDs into allowedRoles
  • Command Permissions
  1. edit config.lua
    1.1. change permissionType to command
    1.2. change commandPassword to your own password
  2. authenticate in-game via /bc_onduty <password> (if you didnt change the default onDuty command)
  • QBCore Permissions
  1. install & configure QBCore
  2. edit config.lua
    2.1. change permissionType to qbcore
    2.2. edit allowedRoles to include any job roles names you wish to be able to open the menu
  • ESX Permissions
  1. install & configure ESX
  2. edit config.lua
    2.1. change permissionType to qbcore
    2.2. edit allowedRoles to include any job roles names you wish to be able to open the menu
  • No Permissions
  1. edit config.lua
    1.1. change permissionType to none

ADVANCED

  • Custom Permissions
  1. edit config.lua
    1.1. change permissionType to custom
  2. find function canAccessMenu in client/auth.lua
    2.1. find line: elseif config.permissionType == 'custom' then and add your verification call there, return true if can access menu

 Notification Framework Guides

  • GTAV
  1. edit config.lua
    1.1. change notificationFramework to gtav
  • OkOkNotify
  1. install & configure OkOkNotify
  2. edit config.lua
    2.1. change notificationFramework to okok
  • VCore-Noti
  1. install & configure VCore-Noti
  2. edit config.lua
    2.1. change notificationFramework to vcore
  • T-Notify
  1. install & configure T-Notify
  2. edit config.lua
    2.1. change notificationFramework to tnotify
  • B-Notify
  1. install & configure B-Notify
  2. edit config.lua
    2.1. change notificationFramework to bnotify
  • Infinity Notify
  1. install & configure Infinity Notify
  2. edit config.lua
    2.1. change notificationFramework to infinity
  • Atom-Notify
  1. install & configure Atom-Notify
  2. edit config.lua
    2.1. change notificationFramework to atom
  • skeexsNotify
  1. install & configure skeexsNotify
  2. edit config.lua
    2.1. change notificationFramework to skeexs
  • QBCore
  1. install & configure QBCore
  2. edit config.lua
    2.1. change notificationFramework to qbcore
  • ESX
  1. install & configure ESX
  2. edit config.lua
    2.1. change notificationFramework to esx

ADVANCED

  • Custom Notifications
  1. edit config.lua
    1.1. change notificationFramework to custom
  2. find function doNotification in config.lua
    2.1. find first instance of if config.notificationFramework == 'custom' then and add your success notification call under hat line using variable msg as the message text
    2.2 find second instance of if config.notificationFramework == 'custom' then and add your error notification call under that line using variable msg as the message text

 

:beginner:Config File Explained

NOTE: if an option is left blank, that means that you can change it to anything!




ConfigurationExplanationOptions
permissionTypePermission system to use to authenticate roles/jobsdiscord, ace, none, qbcore, esx, command, custom
commandPasswordWill authenticate the player WITH the onduty command
allowedRolesThe job names or Discord role IDs that can open the menu
commands.staffTransferWorldCommand for staff to transfer their player to the desired Player World
commands.transferPlayerWorldCommand for staff to transfer a target player to a desired Player World
commands.staffAuthenticateCommand used to authenticate player with command-based permissions
commands.transferWorldRequestCommand used to send a teleport request to a target player
commands.transferWorldAcceptCommand to accept a teleport request or invite
commands.transferWorldDenyCommand to deny a teleport request or invite
commands.transferWorldCommand to transfer the player to their own Player World
commands.transferWorldInviteCommand to invite a target player to a players Player World
commands.transferWorldKickCommand to kick a target player from own Player World
commands.getCurrentWorldCommand to notify player what Player World they are currently in
commands.mainWorldCommand to transfer back to the Main World
requestCoolDownHow often players can send world transfer requests in seconds. Leave at 0 for no cool down. Staff over-ride cooldown.0 - 9999999
teleportCoolDownHow long in seconds a player will not be able to teleport for after a successful teleport between worlds. Leave at 0 for no cool down. Staff over-ride cooldown.0 - 9999999
inviteResponseTimeHow long in seconds an invite will stay active for before being removed0 - 9999999
mainWorldTeleportCoolDownToggle whether the teleport cool down should apply when transferring to the Main Worldtrue/false
debugModeSpit debug info into consoletrue/false


:beginner: Commands

Note: commands are modifiable through the config





Config NameCommand (default)DescriptionUsage (default)
staffTransferWorld/stwTransfers your player to the desired Player World (Staff Only)/stw <worldId>
transferPlayerWorld/tpwTransfers a target player to desired Player World (Staff Only)/tpw <playerId> <worldId>
staffAuthenticate/tw_staffAuthenticate player if permission type is set to command/tw_staff
transferWorldRequest/twrSend a transfer world request to a target player/twr <playerId>
transferWorldAccept/twaAccept a transfer world request or invite that has been received/twa
transferWorldDeny/twdDeny a transfer world request or invite that has been received/twd
transferWorld/twTransfer to own Player World/tw
transferWorldInvite/twiSend a transfer world invite to a target player/twi <playerId>
transferWorldKick/twkRemove target player from Player World if they are in issuing players’ Player World/twk <playerId>
getCurrentWorld/cpwInform player what current Player World they are in/cpw
mainWorld/mwTransfers the player to the Main World (World #0)/mw


:beginner:Future Plans

  1. Menu control alongside commands with added functionality
    1.1. Ability to view which players are in your current player world
    1.2. More player control of players in your world through menu options
  2. Cooldown before teleport
  3. World statuses: Open, Closed : with open players are able to see and join that player world without permission


:beginner:Support & Other Work

You can find live support on our Discordhttps://discord.gg/UwH68aHMPn


Don’t hesitate to report any issues, offer any constructive criticism, or leave a suggestion!
If you have an idea you’d love to see come to life, don’t be afraid to get in touch!
Check out my other work:
[Bait-Car V2] | [X-Priorities] | [Play-Time] | [Ground]