> For the complete documentation index, see [llms.txt](https://micky-studio-developpement.gitbook.io/micky-studio-developpements-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://micky-studio-developpement.gitbook.io/micky-studio-developpements-docs/jobs/buffalo-bill/installation.md).

# Installation

1 - Insert the file SQL

```sql
INSERT INTO `addon_account` (name, label, shared) VALUES
	('society_buffalo', 'Buffalo', 1)
;

INSERT INTO `addon_inventory` (name, label, shared) VALUES
	('society_buffalo', 'Buffalo', 1)
;

INSERT INTO `datastore` (name, label, shared) VALUES
	('society_buffalo', 'Buffalo', 1)
;

INSERT INTO `jobs` (name, label) VALUES
	('buffalo', 'Buffalo')
;

INSERT INTO `job_grades` (job_name, grade, name, label, salary, skin_male, skin_female) VALUES
	('buffalo',0,'recrue','Recrue',12,'{}','{}'),
	('buffalo',1,'vendeur',"Vendeur",24,'{}','{}'),
	('buffalo',2,'expert','Experimenté',36,'{}','{}'),
	('buffalo',3,'boss',"Patron",48,'{}','{}')
;
```

2 - Insert items&#x20;

{% tabs %}
{% tab title="OX" %}

```lua
    ['pommedeterre'] = {
        label = "Pomme de Terre",
        weight = 200,
        stack = true,
        close = true,
        description = "Une pomme de terre fraîche, prête à cuisiner."
    },
    ['rhum'] = {
        label = "Rhum",
        weight = 500,
        stack = true,
        close = true,
        description = "Une bouteille de rhum vieilli."
    },
    ['whisky'] = {
        label = "Whisky",
        weight = 500,
        stack = true,
        close = true,
        description = "Une fine bouteille de whisky."
    },
    ['sprunk'] = {
        label = "Sprunk",
        weight = 300,
        stack = true,
        close = true,
        description = "Une canette de Sprunk rafraîchissante."
    },
    ['beer'] = {
        label = "Bière",
        weight = 400,
        stack = true,
        close = true,
        description = "Une bière fraîche à savourer."
    },
    ['potatoes'] = {
        label = "Potatoes",
        weight = 300,
        stack = true,
        close = true,
        description = "Délicieuses potatoes croustillantes."
    },
    ['ecola'] = {
        label = "E-Cola",
        weight = 300,
        stack = true,
        close = true,
        description = "Une canette de E-Cola pétillante."
    },
    ['frites'] = {
        label = "Frites",
        weight = 300,
        stack = true,
        close = true,
        description = "Des frites dorées et croustillantes."
    },
    ['cheddar'] = {
        label = "Cheddar",
        weight = 200,
        stack = true,
        close = true,
        description = "Une tranche de fromage cheddar."
    },
    ['poulet_grille'] = {
        label = "Poulet Grillé",
        weight = 500,
        stack = true,
        close = true,
        description = "Un poulet parfaitement grillé."
    },
    ['boeuf_grille'] = {
        label = "Bœuf Grillé",
        weight = 500,
        stack = true,
        close = true,
        description = "Un steak de bœuf juteux grillé."
    },
    ['bison_grille'] = {
        label = "Bison Grillé",
        weight = 500,
        stack = true,
        close = true,
        description = "Un steak de bison savoureux grillé."
    },
    ['poulet_cru'] = {
        label = "Poulet Cru",
        weight = 400,
        stack = true,
        close = true,
        description = "De la viande de poulet non cuite."
    },
    ['boeuf_cru'] = {
        label = "Bœuf Cru",
        weight = 400,
        stack = true,
        close = true,
        description = "De la viande de bœuf non cuite."
    },
    ['bison_cru'] = {
        label = "Bison Cru",
        weight = 400,
        stack = true,
        close = true,
        description = "De la viande de bison non cuite."
    },
    ['salad'] = {
        label = "Salade",
        weight = 100,
        stack = true,
        close = true,
        description = "Des feuilles de salade fraîches."
    },
    ['tomates'] = {
        label = "Tomates",
        weight = 200,
        stack = true,
        close = true,
        description = "Des tomates mûres et fraîches."
    },
    ['tomates_coupees'] = {
        label = "Tomates Coupées",
        weight = 200,
        stack = true,
        close = true,
        description = "Des morceaux de tomate coupés."
    },
    ['oignons'] = {
        label = "Oignons",
        weight = 200,
        stack = true,
        close = true,
        description = "Des oignons frais, prêts à trancher."
    },
    ['oignons_coupes'] = {
        label = "Oignons Coupés",
        weight = 200,
        stack = true,
        close = true,
        description = "Des morceaux d'oignons coupés."
    },
    ['painburger'] = {
        label = "Pain à Burger",
        weight = 150,
        stack = true,
        close = true,
        description = "Un pain à burger moelleux, prêt à garnir."
    },
    ['verre'] = {
        label = "Verre",
        weight = 100,
        stack = true,
        close = true,
        description = "Un verre vide, parfait pour une boisson."
    },
    ['coffee'] = {
        label = "Café",
        weight = 300,
        stack = true,
        close = true,
        description = "Une tasse de café chaud et délicieux."
    },
    ['pain_complet'] = {
        label = "Pain Complet",
        weight = 500,
        stack = true,
        close = true,
        description = "Un pain complet frais, parfait pour vos repas."
    },
    ['fruits_rouges'] = {
        label = "Fruits Rouges",
        weight = 300,
        stack = true,
        close = true,
        description = "Un mélange de fruits rouges frais et savoureux."
    },
    ['pate_sablee'] = {
        label = "Pâte Sablée",
        weight = 400,
        stack = true,
        close = true,
        description = "Une pâte sablée prête pour vos desserts."
    },
    ['avocat_coupe'] = {
        label = "Avocat Coupé",
        weight = 250,
        stack = true,
        close = true,
        description = "Un avocat frais, prêt à être utilisé."
    },
    ['avocat'] = {
        label = "Avocat",
        weight = 300,
        stack = true,
        close = true,
        description = "Un avocat entier, parfait pour la préparation."
    },
    ['avocado_toast'] = {
        label = "Toast à l'Avocat",
        weight = 400,
        stack = true,
        close = true,
        description = "Un toast gourmand à l'avocat."
    },
    ['tartine_bison'] = {
        label = "Tartine de Bison",
        weight = 450,
        stack = true,
        close = true,
        description = "Une tartine gourmande avec de la terrine de bison."
    },
    ['famous_cookie'] = {
        label = "Cookie Célèbre",
        weight = 200,
        stack = true,
        close = true,
        description = "Un cookie délicieux avec des pépites de chocolat."
    },
    ['diligence_desserts'] = {
        label = "Desserts Diligence",
        weight = 600,
        stack = true,
        close = true,
        description = "Un plateau de desserts variés et savoureux."
    },
    ['cheesecake'] = {
        label = "Cheesecake",
        weight = 400,
        stack = true,
        close = true,
        description = "Un cheesecake classique avec un coulis de fruits rouges."
    },
    ['creme_brulee'] = {
        label = "Crème Brûlée",
        weight = 300,
        stack = true,
        close = true,
        description = "Une délicieuse crème brûlée caramélisée."
    },
    ['sucre'] = {
        label = "Sucre",
        weight = 100,
        stack = true,
        close = true,
        description = "Un ingrédient sucré essentiel pour vos recettes."
    },
    ['creme'] = {
        label = "Crème",
        weight = 200,
        stack = true,
        close = true,
        description = "Une crème onctueuse, parfaite pour la cuisine ou les desserts."
    },
    ['chocolat'] = {
        label = "Chocolat",
        weight = 150,
        stack = true,
        close = true,
        description = "Du chocolat noir, parfait pour vos desserts ou comme en-cas."
    },
    ['diligence_desserts'] = {
        label = "Desserts Diligence",
        weight = 600,
        stack = true,
        close = true,
        description = "Un plateau de desserts variés et savoureux, parfait pour les gourmands."
    }
```

{% endtab %}

{% tab title="Quasar" %}

```lua
['pommedeterre'] = {
    ['name'] = 'pommedeterre',
    ['label'] = 'Pomme de Terre',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'pommedeterre.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une pomme de terre fraîche, prête à cuisiner.'
},
['rhum'] = {
    ['name'] = 'rhum',
    ['label'] = 'Rhum',
    ['weight'] = 500,
    ['type'] = 'item',
    ['image'] = 'rhum.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une bouteille de rhum vieilli.'
},
['whisky'] = {
    ['name'] = 'whisky',
    ['label'] = 'Whisky',
    ['weight'] = 500,
    ['type'] = 'item',
    ['image'] = 'whisky.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une fine bouteille de whisky.'
},
['sprunk'] = {
    ['name'] = 'sprunk',
    ['label'] = 'Sprunk',
    ['weight'] = 300,
    ['type'] = 'item',
    ['image'] = 'sprunk.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une canette de Sprunk rafraîchissante.'
},
['beer'] = {
    ['name'] = 'beer',
    ['label'] = 'Bière',
    ['weight'] = 400,
    ['type'] = 'item',
    ['image'] = 'beer.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une bière fraîche à savourer.'
},
['potatoes'] = {
    ['name'] = 'potatoes',
    ['label'] = 'Potatoes',
    ['weight'] = 300,
    ['type'] = 'item',
    ['image'] = 'potatoes.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Délicieuses potatoes croustillantes.'
},
['ecola'] = {
    ['name'] = 'ecola',
    ['label'] = 'E-Cola',
    ['weight'] = 300,
    ['type'] = 'item',
    ['image'] = 'ecola.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une canette de E-Cola pétillante.'
},
['frites'] = {
    ['name'] = 'frites',
    ['label'] = 'Frites',
    ['weight'] = 300,
    ['type'] = 'item',
    ['image'] = 'frites.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Des frites dorées et croustillantes.'
},
['cheddar'] = {
    ['name'] = 'cheddar',
    ['label'] = 'Cheddar',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'cheddar.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une tranche de fromage cheddar.'
},
['poulet_grille'] = {
    ['name'] = 'poulet_grille',
    ['label'] = 'Poulet Grillé',
    ['weight'] = 500,
    ['type'] = 'item',
    ['image'] = 'poulet_grille.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Un poulet parfaitement grillé.'
},
['boeuf_grille'] = {
    ['name'] = 'boeuf_grille',
    ['label'] = 'Bœuf Grillé',
    ['weight'] = 500,
    ['type'] = 'item',
    ['image'] = 'boeuf_grille.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Un steak de bœuf juteux grillé.'
},
['bison_grille'] = {
    ['name'] = 'bison_grille',
    ['label'] = 'Bison Grillé',
    ['weight'] = 500,
    ['type'] = 'item',
    ['image'] = 'bison_grille.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Un steak de bison savoureux grillé.'
},
['poulet_cru'] = {
    ['name'] = 'poulet_cru',
    ['label'] = 'Poulet Cru',
    ['weight'] = 400,
    ['type'] = 'item',
    ['image'] = 'poulet_cru.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'De la viande de poulet non cuite.'
},
['boeuf_cru'] = {
    ['name'] = 'boeuf_cru',
    ['label'] = 'Bœuf Cru',
    ['weight'] = 400,
    ['type'] = 'item',
    ['image'] = 'boeuf_cru.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'De la viande de bœuf non cuite.'
},
['bison_cru'] = {
    ['name'] = 'bison_cru',
    ['label'] = 'Bison Cru',
    ['weight'] = 400,
    ['type'] = 'item',
    ['image'] = 'bison_cru.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'De la viande de bison non cuite.'
},
['salad'] = {
    ['name'] = 'salad',
    ['label'] = 'Salade',
    ['weight'] = 100,
    ['type'] = 'item',
    ['image'] = 'salad.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Des feuilles de salade fraîches.'
},
['tomates'] = {
    ['name'] = 'tomates',
    ['label'] = 'Tomates',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'tomates.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Des tomates mûres et fraîches.'
},
['tomates_coupees'] = {
    ['name'] = 'tomates_coupees',
    ['label'] = 'Tomates Coupées',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'tomates_coupees.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Des morceaux de tomate coupés.'
},
['oignons'] = {
    ['name'] = 'oignons',
    ['label'] = 'Oignons',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'oignons.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Des oignons frais, prêts à trancher.'
},
['oignons_coupes'] = {
    ['name'] = 'oignons_coupes',
    ['label'] = 'Oignons Coupés',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'oignons_coupes.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Des morceaux d’oignons coupés.'
},
['painburger'] = {
    ['name'] = 'painburger',
    ['label'] = 'Pain à Burger',
    ['weight'] = 150,
    ['type'] = 'item',
    ['image'] = 'painburger.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Un pain à burger moelleux, prêt à garnir.'
},
['pain_complet'] = {
    name = 'pain_complet',
    label = 'Pain Complet',
    weight = 500,
    type = 'item',
    image = 'pain_complet.png',
    unique = false,
    useable = false,
    shouldClose = false,
    combinable = nil,
    description = 'Un pain complet frais, parfait pour vos repas.'
},
['fruits_rouges'] = {
    name = 'fruits_rouges',
    label = 'Fruits Rouges',
    weight = 300,
    type = 'item',
    image = 'fruits_rouges.png',
    unique = false,
    useable = false,
    shouldClose = false,
    combinable = nil,
    description = 'Un mélange de fruits rouges frais et savoureux.'
},
['pate_sablee'] = {
    name = 'pate_sablee',
    label = 'Pâte Sablée',
    weight = 400,
    type = 'item',
    image = 'pate_sablee.png',
    unique = false,
    useable = false,
    shouldClose = false,
    combinable = nil,
    description = 'Une pâte sablée prête pour vos desserts.'
},
['avocat_coupe'] = {
    name = 'avocat_coupe',
    label = 'Avocat Coupé',
    weight = 250,
    type = 'item',
    image = 'avocat_coupe.png',
    unique = false,
    useable = false,
    shouldClose = false,
    combinable = nil,
    description = 'Un avocat frais, prêt à être utilisé.'
},
['avocat'] = {
    name = 'avocat',
    label = 'Avocat',
    weight = 300,
    type = 'item',
    image = 'avocat.png',
    unique = false,
    useable = false,
    shouldClose = false,
    combinable = nil,
    description = 'Un avocat entier, parfait pour la préparation.'
},
['avocado_toast'] = {
    name = 'avocado_toast',
    label = 'Toast à l\'Avocat',
    weight = 400,
    type = 'item',
    image = 'avocado_toast.png',
    unique = false,
    useable = true,
    shouldClose = true,
    combinable = nil,
    description = 'Un toast gourmand à l\'avocat.'
},
['tartine_bison'] = {
    name = 'tartine_bison',
    label = 'Tartine de Bison',
    weight = 450,
    type = 'item',
    image = 'tartine_bison.png',
    unique = false,
    useable = true,
    shouldClose = true,
    combinable = nil,
    description = 'Une tartine gourmande avec de la terrine de bison.'
},
['famous_cookie'] = {
    name = 'famous_cookie',
    label = 'Cookie Célèbre',
    weight = 200,
    type = 'item',
    image = 'famous_cookie.png',
    unique = false,
    useable = true,
    shouldClose = true,
    combinable = nil,
    description = 'Un cookie délicieux avec des pépites de chocolat.'
},
['diligence_desserts'] = {
    name = 'diligence_desserts',
    label = 'Desserts Diligence',
    weight = 600,
    type = 'item',
    image = 'diligence_desserts.png',
    unique = false,
    useable = false,
    shouldClose = false,
    combinable = nil,
    description = 'Un plateau de desserts variés et savoureux.'
},
['cheesecake'] = {
    name = 'cheesecake',
    label = 'Cheesecake',
    weight = 400,
    type = 'item',
    image = 'cheesecake.png',
    unique = false,
    useable = true,
    shouldClose = true,
    combinable = nil,
    description = 'Un cheesecake classique avec un coulis de fruits rouges.'
},
['creme_brulee'] = {
    name = 'creme_brulee',
    label = 'Crème Brûlée',
    weight = 300,
    type = 'item',
    image = 'creme_brulee.png',
    unique = false,
    useable = true,
    shouldClose = true,
    combinable = nil,
    description = 'Une délicieuse crème brûlée caramélisée.'
},
['sucre'] = {
    ['name'] = 'sucre',
    ['label'] = 'Sucre',
    ['weight'] = 100,
    ['type'] = 'item',
    ['image'] = 'sucre.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Un ingrédient sucré essentiel pour vos recettes.'
},
['creme'] = {
    ['name'] = 'creme',
    ['label'] = 'Crème',
    ['weight'] = 200,
    ['type'] = 'item',
    ['image'] = 'creme.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Une crème onctueuse, parfaite pour la cuisine ou les desserts.'
},
['chocolat'] = {
    ['name'] = 'chocolat',
    ['label'] = 'Chocolat',
    ['weight'] = 150,
    ['type'] = 'item',
    ['image'] = 'chocolat.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Du chocolat noir, parfait pour vos desserts ou comme en-cas.'
},
['diligence_desserts'] = {
    ['name'] = 'diligence_desserts',
    ['label'] = 'Desserts Diligence',
    ['weight'] = 600,
    ['type'] = 'item',
    ['image'] = 'diligence_desserts.png',
    ['unique'] = false,
    ['useable'] = false,
    ['shouldClose'] = false,
    ['combinable'] = nil,
    ['description'] = 'Un plateau de desserts variés et savoureux, parfait pour les gourmands.'
}

```

{% endtab %}
{% endtabs %}

3 - Insert the images in ox\_inventory/web/images/

{% file src="/files/sSKEteNWOwSpjlvXRQXg" %}

4 - Move the folder for your ressources

5 - Add this in your server.cfg

```lua
ensure Mickystudio_BuffaloJob
```

6 - Restart your server

7 - Enjoy :smile:
