FAQ
Payment
Can I pay monthly instead of a one time payment ?
Can I pay monthly instead of a one time payment ?
Can I test Your Mods ?
Can I test Your Mods ?
-
You can always go on a Server with the mod installed and see how they setup the mod and how it works -
I offer a Test Version for Advanced Groups for 30€ so you can test everything you want on your own server for 2 weeks -
You can also buy my mod. You will not regret it ;)
How long will it take until I get the mod I bought ?
How long will it take until I get the mod I bought ?
I lost access to my Discord account
I lost access to my Discord account
-
Try to contact Discord to recover access to your account
-
Create a new account and use the new account to login on my website. To transfer the products to the new account, you can claim them on the customer panel by entering the servername and license key you should have received via Email after you purchased the mod. If you did not receive any email, you can send me an email to confirmation@lbmaster.de from the same email you used to purchase the mods. Also include proof of buying the mods like a screenshot of the paypal transaction and which mods you had. Then I will send you the license key and servernames you need to claim the products. For how the claim process works exactly, check out This FAQ Entry
I purchased a mod, but I don't get the Discord Role
I purchased a mod, but I don't get the Discord Role
What is 1 DayZ Server instance ?
What is 1 DayZ Server instance ?
What methods can I use to Pay ?
What methods can I use to Pay ?
-
PayPal account -
Credit Card
-
Credit Card -
Apple Pay -
Google Pay (Only in google chrome when logged in to Google Pay) -
WeChat Pay -
EPS -
iDeal
Server
Can I use the mods on my Testserver ?
Can I use the mods on my Testserver ?
-
The Testserver is clearly marked as one by having something like "Test Server" in the Servers hostname -
The Testserver has a password, which is not publicly known -
The Max players are limited to a maximum of 10 players -
The IP of the Testserver is whitelisted on the Customer Panel if it is different from the IP of your Main Server
Can my Co-Owners also get access to the Mod and Discord Role ?
Can my Co-Owners also get access to the Mod and Discord Role ?
My Servername changed. What do I do ?
My Servername changed. What do I do ?
What do I need to do when changing to a different Server ?
What do I need to do when changing to a different Server ?
General
How do I change the Logo to My Server Logo ?
How do I change the Logo to My Server Logo ?
How to format lines
How to format lines
coverLongTextLines
and Advanced Groups lines
in the Rules.json$args(ARGUMENTS);TEXT
TEXT
must be replaced with your text you want to displayARGUMENTS
must be replaced with the arguments explained below. Multiple arguments are separated with a comma-
bold
make the text bold -
underline
(currently not implemented) will make the text underlined -
italic
make the text italic -
argb(A,R,G,B)
replace A,R,G and B with the ARGB color values from 0 to 255 to change the color of the text in this line -
rgb(R,G,B)
same as above, but alpha channel will be 255 (full) by default -
size(PX)
set the size of the text in pixels. Default size is 16 -
left
Sets the text alignment to left (default alignment) -
right
Sets the text alignment to right -
center
Sets the text alignment to center -
outline(A,R,G,B,SIZE)
add a colored outline around the text with the ARGB color values and the size (0-10) -
shadow(A,R,G,B,SIZE,OPACITY,OFFSET_X,OFFSET_Y)
add a text shadow with the ARGB color values, the size (0-10), Opacity (0.0 - 1.0), X Offset (0.0 - 10.0) and Y Offset (0.0 - 10.0). The last 3 values are optional
-
$args(size(30),center,rgb(255,0,0));Rules
: "Rules" displayed in red, centered and with a size of 30 pixels
Advanced Groups
How do the chat commands work ?
How do the chat commands work ?
Spaces in the Playername should be replaced by _
Name of the Player is caseinsensitive.
!mute [PlayerName] [Time in Minutes]
!muteid [Steamid or BIUID] [Time in Minutes]
!unmute [PlayerName]
!unmuteid [Steamid or BIUID]
!mutechannel [Channelname]
!unmutechannel [Channelname]
!mutereloadconfig
mutereloadconfig rereads the current ChatConfig.json. Which makes it possible to add Chat Admins while the Server is running or Change Prefix Colors or add Channels ...
!mutevote [PlayerName] -> All Players can vote for a player to be muted without admin. Important ChatConfig Variables:
- "enableMuteVote" enable / disable voting
- "muteVoteMinPlayers" minimal Players for voting
- "muteVotePercentile" amount of players, that need to vote for the player (e.g. 30 Players online and 50% need to vote -> 15 Players need to vote for the player)
- "muteVoteMuteTimeMins" time the player will be muted if vote was successful
Example:
!mute LBmaster 20 -> Mute Player LBmaster for 20mins
!muteid 76561198141097113 20 -> Mute Player With Steamid "76561198141097113" for 20 mins (would find LBmaster)
!muteid 4e6J9rBov9EChLGlp-ckzyAbUh_tvlzXXBrFR7pSS-4= 20 -> Mute Player With Bohemia Interactive UID "4e6J9rBov9EChLGlp-ckzyAbUh_tvlzXXBrFR7pSS-4=" for 20 mins (would find LBmaster)
Some Icons on the Map are rendered as white boxes
Some Icons on the Map are rendered as white boxes
-
Download the MapIconFix_Original_Icons.pbo
from here. This is on your own risk, because this PBO contains the original VPP Map Icons I asked DaOne, the creator of the Mod, if I can use his Icons or if he can fix it, but for me it seemed, he doesn't care. I would suggest leaving him a PM if you add this PBO to your Serverpack. -
Download the MapIconFix_Empty_Icons.pbo
from here. This does not contain any material from the original VPP Map. I replaced every Icon with a invisible texture. So you don't have the white boxes, but also You don't have any special Icons.
Plotpole DLC
How do I install the Plotpole DLC ?
How do I install the Plotpole DLC ?
-
This System only extends the functionality of the vanilla TerritoryFlag
item and does not add any new Items -
This mod requires Advanced Groups and is designed to assign each Flag one group, so they don't have to add members manually like with other Mods -
This mod should not be used together with other territory Mods like Basic Territories -
Before you install it, make sure no TerritoryFlag exists on the Map or wipe the server completely
@Serverpack\OptionalContent\DLC
folder and put the PBO and the .bisign into your serverpack and upload it to the steam workshop. It's recommended to put it in the same serverpack as the rest of your modsenablePlotpoleExtension
to 1. Otherwise the DLC will not be active
How do I properly setup the Plotpole variables
How do I properly setup the Plotpole variables
flagLifetimeRefreshTime
and the flagUptimeDuration
FlagRefreshFrequency
and FlagRefreshMaxDuration
from the Globals.xmlflagUptimeDuration
is how long the flag will take from 100% to 0%. Once the flag is at 0%, it will refresh all items around once more.flagLifetimeRefreshTime
does two things at the same time, which can make things a bit confusing if you are not familiar with the Plotpole system. Once the timer runs out, two things happen:-
All items around will be refreshed. That means, all items with a higher lifetime will never despawn as long as the flag is up, because the lifetime it reset to the max when this timer runs out, before the lifetime of the object could run out. -
This is the time when the Flag is visually updated. So that's the point where the flag will go down a bit. So be aware, that having this value set too high relative to the Uptime duration, you might end up with flags jumping from 100% to 50% in one go.
-
The flagUptimeDuration
should be at least 5 to 10 times theflagLifetimeRefreshTime
to not have too big steps when the flag is lowering. -
All items, which should not be refreshed have alower lifetime than theflagLifetimeRefreshTime
. -
All items, which should be refreshed have ahigher lifetime than theflagLifetimeRefreshTime
. Don't forget the TerritoryFlag must have a higher lifetime too !
flagUptimeDuration
set to 30 Days (30 * 24 * 60 * 60 = 2592000)flagLifetimeRefreshTime
set to 3 Days (3 * 24 * 60 * 60 = 259200)-
The flag will lower 10% every 3 Days (3 Days / 30 Days = 0.1 = 10%) -
All Basebuilding items will be protected from despawning for 30 Days unless someone raises the flag again to start the 30 Days again. -
Once the Flag is lowered to 0% after the 30 Days or someone lowered it manually, all items will be refreshed once more leaving the base with 4 remaining days until everything despawns. -
In total the Base will remain at least 34 Days when not touched (flag raised or lowered) again by a player
My Items in the Territories are despawning
My Items in the Territories are despawning
remainingFlagLifetimeWhenGroupDeleted
parameter. That can be the reason why some groups loose their territory, when not claimed again with the Claim Flag action ingameflagLifetimeRefreshTime
explained in the PlotpoleConfig.json. If you don't use the Plotpole DLC, then the FlagRefreshFrequency
in the globals.xml would apply to your minimum lifetime. You should considder making it a few minutes or hours higher than the refresh timeRefreshing item
. You should find a few lines which look something like this: Refreshing item Fence with lifetime 45d 0h 0m 0s
. Also you should have a line with TerritoryFlag lifetime and refresh frequency is configured properly
in the LBmaster log. If that's not the case, you did not configure the lifetimes properly.Spawn Select Lite
How can I only use the Sleepingbags ?
How can I only use the Sleepingbags ?
SpawnSelectConfig.json
:-
overwrite_default_spawnPos
-> 0 to spawn the player at the vanilla Spawns -
openSpawnMenuOnce
-> 1 to open the spawn menu when respawning -
forceOpenSpawnMenu
-> 0 to not force the player to select a spawn -
hide_when_no_spawns_found
-> 1 to not show the menu when no spawns are found / No beds are placed -
positions
-> Clear all entries from the positions list ("positions": []
) so no spawns are available when no beds are placed -
Add the Sleeping Bags to your Types.xml
How do I add custom Sleepingbags ?
How do I add custom Sleepingbags ?
-
You cannot use Items, which are defined by other mods and don't inherit my Sleeping Bag Class. Some Mods add sleeping bags, but they don't inehrit my sleeping bag class. Hwoy ou can still use them will be covered down below -
The PBO with the Sleeping Bags in it, must have LBmaster_SpawnsystemLite
as a required addon. If you are not sure how it works, check the Example PBO down below -
You need to have two different Items defined. One inheriting my LBS_SleepingBag_Base
for the Placed items and one which inheritsLBS_SleepingPacked_Base
for the packed version. Examples are in the PBO below -
Optionally you can have your own Hologram Item or you use the one you used for the placed bag -
To use the sleepingbags from other mods, you need to set the correct model in the config.cpp (see example PBO) -
Create a new script in the 4_World script folder with the following content, replacing LBS_Custom_Packed
with the classname of the packed item andLBS_Custom_Placed
with the classname of the placed item from the config.cpp
class LBS_Custom_Packed : LBS_SleepingPacked_Base {
override string GetBagClassname() {
return "LBS_Custom_Placed";
}
override string GetHologramClassname() {
return "LBS_Custom_Placed";
}
};
class LBS_Custom_Placed : LBS_SleepingBag_Base {
override string GetPackedClassname() {
return "LBS_Custom_Packed";
}
};
-
Pack the PBO and load it
Leaderboard
How do I reset the Leaderboard ?
How do I reset the Leaderboard ?
Reset game statistics
Where is the Server ID for the Config ?
Where is the Server ID for the Config ?
Enhanced Banking
How can I use custom ATMs ?
How can I use custom ATMs ?
LB_ATM_Base
class in the config.cpp of the item.model="path/to/the/model.p3d"
is correct and points to your custom model. You also might need to add hiddenSelectionTextures.class CfgPatches {
class CustomATMModels {
units[]={};
weapons[]={};
requiredVersion=0.1;
requiredAddons[]={
"LBmaster_Groups_ATM"
};
};
};
class CfgVehicles {
class LB_ATM_Base;
class Custom_ATM_Name : LB_ATM_Base{
scope=1;
model= "LBmaster_Groups_ATM\items\ATM\atm.p3d";
hiddenSelections[] = {"texture"};
hiddenSelectionsTextures[] = {"LBmaster_Groups_ATM\items\ATM\atm_co_green.paa"};
isLBAtm = 1;
};
};
Raid Alert
How do I setup Raid Alarm Webhooks ?
How do I setup Raid Alarm Webhooks ?
-
Go to your Discord Server -
Create a Channel where you want the messages to be sent to or just use an existing channel -
Edit the Channel and navigate to Integrations -
Click on New Webhook or use an existing one -
Click on the Webhook, give it a name and icon -
Click on Copy Webhook URL and paste it ingame via CTRL + V while editing the URL
Achievements
How to create new Achievements
How to create new Achievements
Achievement Basics
-
Achievements can come in many different forms -
Hidden achievements -
Single achievements -
Stacking achievements with incremental difficulty (kill 5 players, kill 10 players, ...) -
Achievements with multiple triggers
-
-
In this guide I will go over all the different types and how to create them and when to use which. These types are not exclusive and can be combined, but it will make more sense when you fully read each description
Hidden Achievements
-
Hidden achivements are not visible to the player until he unlocked it -
They are just a simple value enabled for an achievement "hidden": 1
, but are basically normal achievements -
Description, Title and Image of the Achievement are hidden until unlocked -
They can be used to hide special achievements
Single Achievements
-
Single achievements are created by setting the number
in the config for the achievement to -1. So"number": -1
-
These achievements automatically hide the progress bar and progress text -
This can be used for achievements like open your inventory, reach a certain location etc.
Stacking achievements
-
Achievements are stacked when they use the same trigger. So to create an achievement with kill 5 players and 10 players together, you need to create 2 achievements, but change the number, title and description. The trigger must be the same. Check the default config. It has a lot of these kinds of achievements -
Stacked Achievements will appear in one line in the achievements menu and should not exceed 10 achievements. Each stage can be accessed by the player by clicking on the box appeaing on the right in the achievements menu -
Very useful for achievements with progress and you don't just want a single achievement, but achievements should be harder to get each time -
Make sure to properly sort the achivements. Start with the achievement with the lowest number first in the config
Achievements with multiple triggers
-
as you might have noticed, achievements take a list of triggers in the config and not just one trigger. -
All trigger values are accumulated and compared to the number
set for the achievement -
This can be used to do things like "spawn at all 3 spawns possible", "eat all types of food available". For these achievements you would use the :once suffix for each trigger and set the number
to the amount of triggers you have. There are also examples for this kind of achievements in the default config to check out
How to setup triggers
How to setup triggers
What are triggers?
-
Triggers are basically numerical counters with a name. These counters are individual for each player and saved in their players achievement file. -
Achievements can have multiple triggers, which are accumulated to give a total value -
Each trigger has a trigger with the same name, but ending with ":once". This is recommended if the achievement is a one time achievement anyways to save performance. This trigger is either 0 or 1. This allows for various different options explained later. For example "kill:player" can be anything from 0 to infinity, but "kill:player:once" will only change to 1 and can never exceed this value
What is possible with triggers?
-
Triggers can be executed when an action by the player is executed. -
The simplest trigger is the action:CLASSNAME
where the CLASSNAME is the classname of the Action. For exampleaction:ActionOpenDoors
-
You can be a bit more specific with the triggers though. action:CLASSNAME:ruined-target
would only execute when the target is ruined after the action finished. This can be used for detecting when a player chopped down a tree.action:ActionMineTree:ruined-target
would be the trigger here -
This is also possible with :ruined-hands
. (They cannot be combined!). Soaction:ActionHackVehicle:ruined-hands
would be triggered when someone breaks into a vehicle with a Lockpick and the Lockpick is ruined after the action -
There are also 3 additional things you can do. -
action:CLASSNAME:item:ITEMNAME
checks for the itemname of the item in hands (be aware, that this doesn't support baseclasses) -
action:CLASSNAME:hologram:ITEMNAME
checks for the classname of the hologram for example for placing actions -
action:CLASSNAME:target:ITEMNAME
checks for the target itemname -
action:CLASSNAME:target-obj:ITEMNAME
checks for the object targeted and does not try to get the parent. The Harvest Action has a few exceptions. To check for an item being harvested, use this trigger likeaction:ActionHarvestCrops:target-obj:ITEMNAME
. Itemname could for example beCP_Plant_CannabisSkunk
from the CP mod
-
-
-
There are also more triggers: -
kill:zombie
will count any direct zombie kill -
bullet:shot
will cound each time a weapon is shot by a player -
distance:walk
Distance a player traveled by foot on ground (counted in full km) -
distance:drive
Distance a player traveled in a ground vehicle or boat (couned in full km) -
distance:boat
Distance a player traveled by boat (counted in full km) -
distance:fly
Distance a player traveled in air (counted in km and only full km will count). A player is flying, when 20m above the air and he traveled a larger distance, so this might not be 100% accurate -
kill:player
Triggered for the killer of a player (this counts bots too). These must be direct kills with weapons (grenades or other indirect damage is not counted) -
kill:player:no-bot
Triggered for the killer of a player (this only counts real human controlled players). These must be direct kills with weapons (grenades or other indirect damage is not counted) -
kill:player:bot
Triggered for the killer of a bot player (not human controlled players) -
kill:animal
Counts Anything, that inherits AnimalBase (Everything except for zombies. This includes predatory Animals) -
kill:animal:ITEMNAME
Counts Animal kills matching the ITEMNAME exactly. This must inherit AnimalBase (Everything except for zombies. This includes predatory Animals) -
kill:animal-hostile
Counts all hostile animals like Wolves or Bears. Checks if IsDanger() for the Animal is true. Modded Animals might not properly support this -
kill:animal-friendly
Counts all hostile animals like Wolves or Bears. Checks if IsDanger() for the Animal is false. Modded Animals might not properly support this -
kill:zombie
Counts any zombie kill. This includes modded entities inheriting the ZombieBase class. -
kill:zombie:ITEMNAME
Counts zombie kills, which match exactly this itemname. -
kill:zombie-silent
Counts any stealth zombie kill. This includes modded entities inheriting the ZombieBase class. -
kill:zombie-silent:ITEMNAME
Counts stealth zombie kills, which match exactly this itemname. -
looted:parent:ITEMNAME
Counted when an item is looted from a container (this is only counted once per container. Once a player looted a container, it will not trigger again for the same or for other players to prevent farming this trigger). Can be used for things like looting Airdrops -
looted:parent-classname:CLASSNAME
same as above with the difference, that CLASSNAME might not exactly be the same like the ITEMNAME. If the item doesn't have a script class, the Classname will be the highest Classname found, which kind of works like a Baseclass. -
looted:item:ITEMNAME
Counted when an item is looted and was freshly spawned by the CE. Sadly this information is lost when the server restarts, so the item must spawn and be looted in the same restart, otherwise it's not counted -
looted:item-classname:CLASSNAME
Same as above, but with the Classname of the item instead of the itemname -
inventory:open
triggered once the player has opened his inventory (only triggered once, so theinventory:open:once
trigger will behave the same) -
crafting:CLASSNAME
Triggered each time a Recipe is crafted. it needs the Classname of the recipe like crafting:CraftSalineBagIV Be aware, that some recipes are reversable, so players could abuse this -
crafting:item:ITEMNAME
Triggered for each of the spawned output items. This is independent of the Classname of the recipe. If multiple recipes produce the same item, this will count both. Be aware, that this does not work with base classes, so the itemname must match exactly -
ag:group:created
a player created a group with advanced groups -
atm:robbed
when a player robbed an ATM from Enhanced Banking -
bank:transfer
triggered when a player transfers money to another player. Only triggered for the player sending the money -
bank:balance:personal
Set Trigger saving the highest bank balance for the players personal account (only checked when withdrawing or depositing money) -
bank:balance:group
Set Trigger saving the highest bank balance for the players group account (only checked when withdrawing or depositing money) -
spawnselect:spawn-bag
Triggered when a player it spawning at his sleeping bag -
spawnselect:spawn
Triggered when a player spawns at a spawn point, which is not a sleeping bag or a house -
spawnselect:spawn:POSITION_NAME
Triggered when a player spawns at a spawn with a specific name from the config -
spawnselect:spawn-house
Triggered when a player spawns at his house (Only available with TB Real Estate) -
player:killstreak
Triggered when a player reached a killstreak. This is counted when the Killfeed mod by me is installed, which keeps track of killstreaks -
fishing:junk
Triggered when a player is fishing a junk item -
fishing:junk:ITEMNAME
Triggered when a player is fishing a junk item exactly matching the ITEMNAME -
fishing:success
Triggered when a player is fishing a fish or otherwise considered successful fishing attempt -
fishing:success:ITEMNAME
Triggered when a player is fishing a fish or otherwise considered successful fishing attempt of exactly the ITEMNAME item -
fishing:ITEMNAME
Triggered when a player is fishing this exact item (doesn't check if it is junk or not)
-
-
Some Triggers require an extra pbo from the OptionalContent folder in the Client Zip you download from my website. Make sure to read the ReadMe.txt before installing any of the plugins! -
quests:finished
Triggered when any Quest from Expansion Quests is finished no matter which -
quests:finished:ID
ID is the ID of the quest. Only triggered when the quest with this ID is finished -
trader:sold
Triggered when an item is sold at a Trader (does not trigger multiple times when items are sold when attached!) -
trader:sold:ITEMNAME
Triggered when a specific item is sold with the ITEMNAME being replaced with the itemname -
trader:bought
Triggered when any item is bought (not triggered for attachments automatically spawned with the item) -
trader:bought:ITEMNAME
Triggered when a specific item is bought (not triggered for attachments)
-
-
There are also some trigger handlers you can already use (note: trigger handlers always start with a $ infront of the trigger name): -
$position:X,Y,Z,RADIUS
Checks for the position of the player every second to match the specified position and radius. Example:$position:100.0,200.0,453.45,20.0
would check for the player being in a radius of 20m around 100.0,200.0,453.45. You can also use the :once suffix -
$position2d:X,Z,RADIUS
Same as the above, but ignores the Y axis when checking the distance -
$kill:WEAPON:MIN_DIST:MAX_DIST:COUNT_HUMANS:COUNT_BOTS
This one is a bit more complicated. It's a powerful trigger, which can check various differen things:-
WEAPON
is the classname of the weapon the killer must have in his hands. This supports Baseclasses unlike the other triggers. If you just leave it empty, any weapon will be accepted -
MIN_DIST
The minimum distance both players need to be away from eachother. This is a float value in meters. Leave it empty for no minimum distance -
MAX_DIST
Same as MIN_DIST, but kills further than this distance are not counted -
COUNT_HUMANS
either 0 or 1 to count human controlled players. Default if left empty is 1 -
COUNT_BOTS
either 0 or 1 to count non human controlled players. Default if left empty is 1 -
Examples: -
$kill::700::1:0
would trigger for each kill done on a human controlled player, who is further away than 700m. This could be used for an Achievement where someone has to snipe another player -
$kill::5:50:1:0
would trigger for kills on human controlled players between 5m and 50m for example when you want to only count close Quarters kills -
$kill:SVD:::1:1
would trigger for all Kills done with an SVD on any player
-
-
-
What is possible with extra scripting work?
-
Since triggers are just strings, they are limited in their functionality -
Trigger via script: -
Another thing you can do with some extra scripting is to add your own triggers. Check out the Scripting Guide on how to trigger your own triggers
-
-
TriggerHandler class -
One thing to keep in mind is, that doing something like "pickup:Weapon_Base" as a trigger is not possible without a special "TriggerHandler" explained in detail later. The problem is, that the game would for example trigger a "pickup:M4A1", but since they are just simple strings, there is no information about the M4A1 also inheriting the Weapon_Base class. This trigger would not work. This is a case where a special TriggerHandler would be needed -
Also positions are a difficult thing. For example you want to trigger an achievement when a player enters a room somewhere on the map. How do you tell the trigger, that the position with a specific radius should trigger it? "position:X,Y,Z,RADIUS" where each of them is replaced by a value like "position:1000,200,403.0,20.0" would be something that comes to your mind. But we run into the same problem as before. Triggers are just strings, so checking the position of each player and triggering a trigger based on the position will not work, because we cannot check for a specific Trigger. This is also a case for a TriggerHandler. This is acually implemented in the mod by default through the LBTriggerHandlerPosition
class you can check out
-
What is not possible with triggers?
-
There is not really much, that is not possible when you are able to do some scripting and create your own TriggerHandler, otherwise everything listed above is possible and with some clever combination of triggers and appending :once to a trigger, you can already achieve a lot
How to create a custom TriggerHandler
-
First you need to be able to create a script and add the LBmaster_Achievements as a required addons in the config.cpp -
You can create a new Trigger in the 3_Game, 4_World or 5_Mission module. Make sure it inherits the LBTriggerHandler
class. -
Check out my examples LBTriggerHandlerPosition
andLBTriggerHandlerPosition2D
in the LBmaster_Achievements/scripts/3_Game/LBmaster_Achievements/Struct folder and also check out theLBTriggerHandler
class also found in the folder