> For the complete documentation index, see [llms.txt](https://mythic-scripts.gitbook.io/mythic-scripts-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mythic-scripts.gitbook.io/mythic-scripts-documentation/resources/weapon-printing-system/configuration.md).

# Configuration

All configuration lives in `config.lua` .

### Full Config

{% code title="config.lua" expandable="true" %}

```lua
Config = {}

Config.Notify = {
    success = { backgroundColor = '#11191f', color = '#D0F6EF', icon = 'vial-circle-check' },
    error   = { backgroundColor = '#1f1111', color = '#FFCCCC',   icon = 'circle-xmark' },
    warning = { backgroundColor = '#1f1d11', color = '#FFD580',   icon = 'triangle-exclamation' },
    inform  = { backgroundColor = '#11161f', color = '#B5D8FF',   icon = 'circle-info' }
}

Config.Defaults = {
    placementTime     = 4000,
    pickupTime        = 4000,
    powerOnTime       = 3500,
    powerOffTime      = 2500,
    cooldownDuration  = 10000,
    chargeDuration    = 15000,
    repairTime        = 10000,

    skillDifficulty   = { 'easy', 'easy', 'easy' },
    skillInputs       = { 'W', 'A', 'S', 'D' },

    durability = {
        min = 75,
        max = 100
    },

    jobRestricted = true,
    allowedJobs = {
        'mechanic',
        'weaponsmith',
        'blackmarket'
    }
}

Config.WeaponDurability = {
    min = Config.Defaults.durability.min,
    max = Config.Defaults.durability.max
}

Config.Crafting = {
    pistols = {
        label = "Pistols",
        weapons = {
            {
                name = "weapon_pistol",
                label = "9mm Pistol",
                description = "Reliable semi-automatic sidearm.",
                craftTime = 5000,
                difficulty = { 'easy', 'easy', 'easy' },
                requirements = {
                    { item = "metal_scrap",      count = 10 },
                    { item = "gunpowder",        count = 10 },
                    { item = "pistol_parts",     count = 6 },
                    { item = "pistol_blueprint", count = 1 }
                }
            },
            {
                name = "weapon_combatpistol",
                label = "Combat Pistol",
                description = "Compact, high-pressure combat pistol.",
                craftTime = 6500,
                difficulty = { 'medium', 'medium', 'hard' },
                requirements = {
                    { item = "steel_plate",      count = 12 },
                    { item = "gunpowder",        count = 18 },
                    { item = "pistol_parts",     count = 10 },
                    { item = "pistol_blueprint", count = 1 }
                }
            }
        }
    },
    smgs = {
        label = "Submachine Guns",
        weapons = {
            {
                name = "weapon_smg",
                label = "SMG",
                description = "Compact automatic 9mm SMG.",
                craftTime = 7000,
                difficulty = { 'easy', 'medium', 'medium' },
                requirements = {
                    { item = "steel_plate",      count = 10 },
                    { item = "gunpowder",        count = 15 },
                    { item = "smg_parts",        count = 10 },
                    { item = "smg_blueprint",    count = 1 }
                }
            },
            {
                name = "weapon_microsmg",
                label = "Micro SMG",
                description = "Light and concealable weapon.",
                craftTime = 6000,
                difficulty = { 'easy', 'medium', 'hard' },
                requirements = {
                    { item = "metal_scrap",      count = 20 },
                    { item = "gunpowder",        count = 18 },
                    { item = "smg_parts",        count = 8 },
                    { item = "smg_blueprint",    count = 1 }
                }
            }
        }
    },
    rifles = {
        label = "Assault Rifles",
        weapons = {
            {
                name = "weapon_assaultrifle",
                label = "Assault Rifle",
                description = "Standard 5.56 military rifle.",
                craftTime = 8500,
                difficulty = { 'medium', 'medium', 'hard' },
                requirements = {
                    { item = "steel_plate",      count = 15 },
                    { item = "gunpowder",        count = 20 },
                    { item = "rifle_parts",      count = 12 },
                    { item = "rifle_blueprint",  count = 1 }
                }
            },
            {
                name = "weapon_carbinerifle",
                label = "Carbine Rifle",
                description = "Lightweight, precise tactical rifle.",
                craftTime = 9000,
                difficulty = { 'hard', 'hard', 'veryhard' },
                requirements = {
                    { item = "steel_plate",      count = 25 },
                    { item = "gunpowder",        count = 25 },
                    { item = "rifle_parts",      count = 18 },
                    { item = "rifle_blueprint",  count = 1 }
                }
            }
        }
    }
}
```

{% endcode %}

### Items

{% code title="data/items.lua" expandable="true" %}

```lua
	['metal_scrap'] = {
		label = 'Metal Scrap',
		weight = 100,
		stack = true,
		close = false,
		description = 'Scraps of metal salvaged from tools or vehicles.'
	},
	['steel_plate'] = {
		label = 'Steel Plate',
		weight = 250,
		stack = true,
		close = false,
		description = 'Refined steel used for weapon frames and barrels.'
	},
	['gunpowder'] = {
		label = 'Gunpowder',
		weight = 50,
		stack = true,
		close = false,
		description = 'Explosive powder used for crafting ammunition and firearms.'
	},
	['pistol_parts'] = {
		label = 'Pistol Parts',
		weight = 200,
		stack = true,
		close = false,
		description = 'Internal components and small mechanisms for pistols.'
	},
	['smg_parts'] = {
		label = 'SMG Parts',
		weight = 250,
		stack = true,
		close = false,
		description = 'Compact weapon components used for submachine guns.'
	},
	['rifle_parts'] = {
		label = 'Rifle Parts',
		weight = 300,
		stack = true,
		close = false,
		description = 'Precision components and receivers for assault rifles.'
	},
	['pistol_blueprint'] = {
		label = 'Pistol Blueprint',
		weight = 50,
		stack = true,
		close = true,
		description = 'Blueprint showing how to assemble a basic pistol.'
	},
	['smg_blueprint'] = {
		label = 'SMG Blueprint',
		weight = 50,
		stack = true,
		close = true,
		description = 'Blueprint with SMG frame schematics and recoil system details.'
	},
	['rifle_blueprint'] = {
		label = 'Rifle Blueprint',
		weight = 50,
		stack = true,
		close = true,
		description = 'Technical rifle design plans for building automatic rifles.'
	},
	['printing_machine'] = {
		label = 'Weapon Printing Machine',
		weight = 1000,
		stack = false,
		close = true,
		description = 'A portable machine used to assemble weapons from raw materials.'
	},
	['machine_tools'] = {
		label = 'Machine Tools',
		description = 'Used for maintaining and repairing machinery.',
		weight = 750,
		stack = true,
		close = true,
	},
```

{% endcode %}

{% hint style="info" %}
All the icons for the inventory are located in install/inventory/images/\*.png.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://mythic-scripts.gitbook.io/mythic-scripts-documentation/resources/weapon-printing-system/configuration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
