Skip to main content

Installation

1

Download

Get the latest release from our Tebex store and download it from your Keymaster
2

Extract

Extract the script folder to your server’s resources directory
3

Configure

Add ensure spooni_weaponController to your server.cfg
4

Customize

Configure the config.lua file to match your server’s progression system

Configuration

The script is configured through the config.lua file. Here are the main configuration sections:

Basic settings

Progression curve configuration

Define how weapon stats evolve from minimum to maximum skill level:

Weapon statistics

Configure base and target values for each weapon stat:
The reloadSpeedFactor controls the time for disabling firing after reload, not the animation delay.

Damage modifiers

Configure per-weapon damage multipliers:

Recoil configuration

Set global and per-weapon recoil settings:

Notification settings

Progression types

The script supports three different progression curve types:

Linear progression

Linear progression provides consistent improvement across all skill levels, suitable for balanced progression systems.

Exponential progression

Exponential progression creates more dramatic improvements at higher skill levels, rewarding dedicated players.

Custom progression

Custom progression requires defining values for each level you want to override. Levels not specified will use linear interpolation.

Language configuration

Customize notification messages in language.lua:

Usage examples

Balanced linear progression

Exponential progression for hardcore servers

Custom weapon balance

Performance considerations

The script is optimized for performance with several key features:
  • Pre-computed values: All perk values are calculated once at startup
  • Efficient lookups: Direct table access for perk values
  • Configurable checks: Debug mode can be disabled in production
  • Minimal overhead: Lightweight calculations during gameplay

Performance tips

  • Debug mode: Disable Config.debug in production
  • Custom values: Limit custom value overrides to essential levels
  • Weapon lists: Keep damage and recoil modifier lists focused on commonly used weapons
  • Progression range: Use reasonable min/max level ranges (0-1000 recommended)

Troubleshooting

Verify the progression curve is properly configured, check that skill levels are being awarded correctly, and ensure the script is properly started in your server.cfg.
Confirm weapon hash names are correct, check that damage and recoil modifiers are properly formatted, and verify the weapon exists on your server.
Check that reloadFailDisabled is set to false, verify reload failure chance values are between 0.0 and 1.0, and ensure the notification system is properly configured.
Disable debug mode, reduce the number of custom value overrides, and ensure progression ranges are reasonable for your server population.
Verify custom value syntax is correct, ensure all required stats are defined for each level, and check that level numbers are within the min/max range.

Framework integration

The script includes built-in support for multiple frameworks:

Support

If you encounter issues or need assistance:

Discord support

Join our Discord community for support and updates.

Developer reference

API details and configuration hooks for this script.