With Duty Time Counter you can get an idea of Employees of how much time they are contributing to the Department. You no longer need to count their duty time manually and can also reward them.
🤝Features
• Any Jobs can be added in Config for Duty Count.
• Employee can check their DutyTime with each shifts.
• Auto On/OFF Duty based on Job Duty Status.
• Hourly reward system to encourage for more DutyTime.
• Discord log system with employee performance range base to Duty hours & shifts.
• Performance ranking system based on Duty. (Outstanding, Average,Very Poor)
• Check current duty status.
🛳 Boss Actions
• View all employee dutytime list for each shifts in hours & mins.
• Delete all employee Duty Counts from thier own Department.
• Can remove specific dutytime for a player with ID.
• If the user is a Police boss then he can only manage police DutyTime Count. (Police to Police, EMS to EMS)
Config Preview
Config = {}
Config.DutyTimer = {
-- List of job roles that can use the duty time system.
-- Any job not in this list will be unable to access and use the duty time counter.
JobRoles = {
'police',
'ambulance',
'cardealer',
'mechanic',
'realestate',
'taxi',
'bus',
'judge',
'trucker',
'reporter',
'garbage',
'tow',
'lawyer'
},
-- Shift timings: This section allows you to define the time periods (According to your Hosting OS Time)
-- during which certain shifts are active. Each shift has a start and end time.
Shift1 = {
startHour = 15, -- Start: 3:30 PM (In 12 Hour Format)
startMinute = 30,
endHour = 20, -- End: 8:00 PM (In 12 Hour Format)
endMinute = 0
},
Shift2 = {
startHour = 21, -- Start: 9:00 PM
startMinute = 0,
endHour = 24, -- End: 12:00 AM (midnight)
endMinute = 0
},
Shift3 = {
startHour = 0, -- Start: 12:00 AM (midnight)
startMinute = 0,
endHour = 3, -- End: 3:00 AM
endMinute = 0
},
-- What is OddShift: This is the shift that is not a part of the regular shift timings.
-- OddShift Percentage: This is the percentage of time spent in the odd shift.
-- that will be added to the total duty time. For example: If set to 50, then only half of the time spent in the odd shift will be added to the total duty time.
OddShift = 30, --30%
-- Performance rating based on duty hours: This section helps in categorizing
-- the performance of an employee based on their total duty hours.
Outstanding = {
threshold = 20 * 60, -- More than 20 hours. Employees with duty hours exceeding this threshold will be labeled as "Outstanding".
label = "(Outstanding)"
},
Average = {
threshold = 10 * 60, -- Between 10 and 20 hours. Employees falling in this range will be labeled as "Average".
label = "(Average)"
},
VeryPoor = { -- Less than 10 hours. Employees with duty hours less than the "Average" threshold will be labeled as "Very Poor".
label = "(Very Poor)"
},
-- Player Reward Configuration:
-- RewardInterval: This defines the time interval after which the rewards will be given.
-- For instance, if set to 60*60, it means rewards will be given every hour.
RewardInterval = 60 * 60, -- Every 1 hour
-- HourlyRewards: This section determines the cash rewards a player receives based on
-- the number of hours they have served. The key indicates the hour and the value indicates
-- the reward amount. For example, [1] = 1000 means a reward of 1000 will be given after the 1st hour of duty.
HourlyRewards = {
[1] = 1000, -- Reward for the 1st hour of duty
[2] = 2000, -- Reward for the 2nd hour of duty
[3] = 3000, -- Reward for the 3rd hour of duty
[4] = 4000, -- Reward for the 4th hour of duty
[5] = 6000, -- Reward for the 5th hour of duty
[6] = 8000, -- Reward for the 6th hour of duty
},
Discord = {
WebhookMain = "CHANGE_WEBHOOK", --Change to your webhook
Individual = {
Enable = true, --Set to true to enable individual webhooks for each department, if this is true then WebhookMain will be ignored
Webhook = {
['police'] = "CHANGE_WEBHOOK", --Change to your webhook
['ambulance'] = "CHANGE_WEBHOOK",
['cardealer'] = "CHANGE_WEBHOOK",
['mechanic'] = "CHANGE_WEBHOOK",
['realestate'] = "CHANGE_WEBHOOK",
['taxi'] = "CHANGE_WEBHOOK",
['bus'] = "CHANGE_WEBHOOK",
['judge'] = "CHANGE_WEBHOOK",
['trucker'] = "CHANGE_WEBHOOK",
['reporter'] = "CHANGE_WEBHOOK",
['garbage'] = "CHANGE_WEBHOOK",
['tow'] = "CHANGE_WEBHOOK",
['lawyer'] = "CHANGE_WEBHOOK",
}
}
},
}