# States

In ExcellentJobs players can have Primary and Secondary jobs. It is useful to balance player's incomings by make them focusing on certain job(s) only rather than on all of them at the same time.

By default secondary jobs has a max. level cap at 30 (vs 100 of primary ones), therefore the following "downsides" are possible:

  • Less XP bonus based on job's level.
  • Less Income bonus based on job's level.
  • Less Level Rewards.
  • Less Objectives available due to Unlock Level setting.

However, there is no strict instructions on how you would use this feature and it's fully optional:

  • Set how many primary and secondary jobs a player can have based on their rank or permissions.
  • Set whether a job can be picked as primary/secondary.
  • Set whether a job is auto-picked as primary/secondary for new players.
  • Set whether players can leave a job.

# Configuration

Here are some guides to the most common scenarios.

# Auto-Picked Jobs

Case: You want new players to automatically join specific job(s) on first join.

Solution:

  1. Go to the settings.yml of desired jobs(s).
  2. Locate the Initial_State setting.
  3. Set it to desired value: INACTIVE, PRIMARY, SECONDARY
  4. Save and reload: /jobs reload

# Jobs Amount Limits

Case: You want players to have no more than X primary/secondary jobs.

Solution:

  1. Go to the config.yml
  2. Locate the Primary_Amount or Secondary_Amount configuration section under the Job one depends on the job state you'd like to limit.
  3. Configure it using the guide provided in configuration comments. Use -1 for unlimited amount.
  4. Save and reload: /jobs reload

Unlimited Jobs:

Primary_Amount:
  Mode: RANK
  Permission_Prefix: 'null' # Not needed for the RANK mode.
  Default_Value: -1 # No limits for everyone.
  Values: {} # Not needed

Limited by Rank:

Primary_Amount:
  Mode: RANK
  Permission_Prefix: 'null' # Not needed for the RANK mode.
  Default_Value: 3 # Available for all players, no rank required.
  Values:
    vip: 4 # Only for players with the 'vip' rank.
    gold: 5 # Only for players with the 'gold' rank.
    premium: 6 # Only for players with the 'premium' rank.

Limited by Permissions:

Primary_Amount:
  Mode: PERMISSION
  Permission_Prefix: 'excellentjobs.jobs.primary.'
  Default_Value: 3 # Available for all players, no permission required.
  Values:
    vip: 4 # Permission = excellentjobs.jobs.primary.vip
    gold: 5 # Permission = excellentjobs.jobs.primary.gold
    premium: 6  # Permission = excellentjobs.jobs.primary.premium

# Jobs States Limits

Case: You want specific job(s) to be primary/secondary only.

Solution:

  1. Go to the settings.yml of desired jobs(s).
  2. Locate the Allowed_States setting.
  3. Add/remove desired state(s): INACTIVE, PRIMARY, SECONDARY
  4. Save and reload: /jobs reload

Primary/Secondary Only:

Allowed_States:
- INACTIVE
- PRIMARY # or SECONDARY here

Forbid Leaving:

Allowed_States:
- PRIMARY
- SECONDARY