Hey guys,
and welcome to myFarming or my jobsystem. I’ve wrote this because I didn’t really liked other jobscripts, which let you drive to a point, next point and next point with a certain vehicle, in certain clothes. So I tried to make a bit more interessting job system - and that’s it!
Features of myFarming:
- You can set up different farming zones with configurable
→ Items (It’s also possible to give f.e. different items with certain possibilities)
→ Farming ranges (with blip-ranges)
→ Animations
→ Collecting time
→ Item amount (random range) - You can set up different manufacturer with as many options as you want
- You collect experience while farming and manufacturing. With more experience you can unlock more complicated items.
- You can set up as many sellers for farming items as you want (With a configurable price boost)
- You can set up delivery missions, where the player have to get certain items and have to deliver them to a destination.
- Included weight system, which can be set up completely standalone
- Full language compatibility (Translation file with english and german configuration by default)
- Update 16.01.2021: Added full support for ESX Weight System and possibilities to set up whitelisted jobs for every farming zone, manufacturer and seller.
Showcase:
Farming Areas:
You can set up as many farm zones, manufacturer and seller as you want
Manufacturer:
The script also calculates, how many final items can be crafted, so there is no need to spam a key.
And you can set up a required experience for every craftable item!
Delivery Missions:
Special: In Addition to the functionality to sell farming items, you can set up jobs for certain jobs. So for example you can give bahama mamas or vanilla unicorn employees the oppurtunity to sell their drinks.
Performance:
The script is completely optimized to be as performant as possible.
During idle and farming it always runs between 0.01-0.02ms.
As always the script comes with a language config, so you can set up this script in any language you want. English and German configuration is already there.
Escrow
Since the newest update from the 13.02.2022 this script is also managed by the FiveM Keymaster.
Regarding this we paid the highest attention to the opportunity that everybody can simply modify everything without any encryption.
For this matter we only included about 2-3 pretty small functions, which never have to be modified and can’t cause any problems into the escrow file. So I can promise 100% that you will not even notice this protection, when you aren’t willed to leak the script
Translations
Translation = {
['de'] = {
['enter_farming'] = 'Du betrittst nun ein ~g~',
['enter_farming2'] = ' Sammelgebiet~s~. Drücke ~g~E~s~, um mit dem Sammeln zu beginnen.',
['pre_collect'] = '',
['collect'] = ' sammeln',
['info_production'] = 'Drücke ~g~E~s~, um Waren zu verarbeiten',
['info_sell'] = 'Drücke ~g~E~s~, um Waren zu verkaufen',
['info_available_missions'] = '~b~Verfügbare Aufträge',
['info_current_mission'] = 'Aktueller Auftrag:',
['info_destination'] = 'Zielort:',
['info_reward'] = 'Lohn bei Abgabe:',
['info_reqItems'] = '~HUD_COLOUR_NET_PLAYER21~BENÖTIGTE PRODUKTE:',
['info_abort'] = '~r~Auftrag abbrechen',
['info_abort_confirm'] = '~g~Der Auftrag wurde zurückgegeben und kann nun von jemand anderem bearbeitet werden.',
['prefix_in_processing'] = '~HUD_COLOUR_HB_YELLOW~IN BEARBEITUNG: ~s~',
['prefix_special'] = '~p~SPEZIAL: ~s~',
['prefix_in_processing_desc'] = 'Dieser Auftrag wird gerade von einer anderen Person bearbeitet.',
['prefix_special_desc'] = 'Dieser Job sollte von Mitarbeitern des ~p~',
['prefix_special_desc2'] = '~s~ erledigt werden.',
['info_case'] = 'Auftrag:',
['info_recommendJob'] = '~r~! ~s~Empfohlener Job:',
['info_recommendJob_desc'] = 'Dieser Auftrag beinhaltet Produkte, die nicht jeder herstellen kann.',
['info_accept'] = '~g~Auftrag annehmen',
['info_accept_desc'] = 'Wenn du alle Produkte hast, liefere diese nun aus.',
['sell'] = 'Verkaufen',
['sell_desc'] = 'Wähle aus wie viel du verkaufen möchtest?',
['input_howmuch'] = 'Wie viel soll verkauft werden?',
['xp'] = ' Erfahrungspunkte',
['pre_craft'] = '',
['craft'] = ' herstellen',
['required'] = 'Benötigt ',
['start_craft'] = 'Gegenstände verarbeiten',
['not_enough_xp'] = 'Du hast nicht genügend Erfahrung! ~y~',
['not_enough_xp_required'] = ' Erfahrung benötigt.',
['notify_out_of_range'] = '~r~Du darfst den Umkreis des Verarbeiters ~w~5m ~r~nicht verlassen.',
['notify_aborted'] = 'Abgebrochen!',
['mission_started'] = '~g~Auftrag ~w~',
['mission_started2'] = ' ~g~angenommen. Gebe die Produkte am ~p~markierten Punkt ~g~ab.',
['collected'] = 'gesammelt',
['not_enough_items'] = '~r~Nicht genügend ~w~',
['craftting_finished'] = '~g~Herstellung von ~w~',
['craftting_finished2'] = ' ~g~abgeschlossen!',
['items_sold_for'] = '~s~Gegenstände verkauft für ~g~',
['you_only_have_items'] = '~y~Das hast nur ~w~',
['you_only_have_items2'] = 'x ~y~dabei',
['mission_in_process'] = '~y~Der Auftrag wird gerade von einer anderen Person bearbeitet.',
['mission_not_available'] = '~r~Dieser Auftrag ist nicht mehr verfügbar.',
['mission_success'] = '~g~Auftrag ~w~',
['mission_success2'] = ' ~g~abgeschlossen! Du hast ~w~',
['mission_success3'] = '$ ~g~erhalten.',
},
['en'] = {
['enter_farming'] = 'You have entered ~g~',
['enter_farming2'] = ' farming zone~s~. Press ~g~E~s~, to start collecting.',
['pre_collect'] = 'Collect ',
['collect'] = '',
['info_production'] = 'Press ~g~E~s~, manufacture items',
['info_sell'] = 'Press ~g~E~s~, to sell items',
['info_available_missions'] = '~b~Available jobs',
['info_current_mission'] = 'Current job:',
['info_destination'] = 'Destination:',
['info_reward'] = 'Payment upon delivery:',
['info_reqItems'] = '~HUD_COLOUR_NET_PLAYER21~REQUIRED ITEMS:',
['info_abort'] = '~r~Abort job',
['info_abort_confirm'] = '~g~Your job was aborted, and is now available again.',
['prefix_in_processing'] = '~HUD_COLOUR_HB_YELLOW~IN PROCESSING: ~s~',
['prefix_special'] = '~p~SPECIAL: ~s~',
['prefix_in_processing_desc'] = 'This job is currently being processed by another person.',
['prefix_special_desc'] = 'This job should be done by employees of ~p~',
['prefix_special_desc2'] = '~s~.',
['info_case'] = 'Job:',
['info_recommendJob'] = '~r~! ~s~Recommend Job:',
['info_recommendJob_desc'] = 'This job required products that not everyone can manufacture.',
['info_accept'] = '~g~Do this job',
['info_accept_desc'] = 'When you have all the products, deliver them now.',
['sell'] = 'Sell',
['sell_desc'] = 'Decide how much do you want to sell?',
['input_howmuch'] = 'How much should be sold?',
['xp'] = ' Experience',
['pre_craft'] = 'Craft ',
['craft'] = ' ',
['required'] = 'Requires ',
['start_craft'] = 'Manufacturing',
['not_enough_xp'] = 'You do not have enough experience! ~y~',
['not_enough_xp_required'] = ' Experience required.',
['notify_out_of_range'] = '~r~You can not leave the range ~w~5m ~r~while manufacuring.',
['notify_aborted'] = 'Aborted!',
['mission_started'] = '~g~Job ~w~',
['mission_started2'] = ' ~g~started. Deliver the items to the~p~marked position~g~.',
['collected'] = 'collected',
['not_enough_items'] = '~r~Not enough ~w~',
['craftting_finished'] = '~g~Manufacturing of ~w~',
['craftting_finished2'] = ' ~g~completed!',
['items_sold_for'] = '~s~Items sold for ~g~',
['you_only_have_items'] = '~y~You only have ~w~',
['you_only_have_items2'] = 'x ~y~in your inventory',
['mission_in_process'] = '~y~This job is currently done by another person.',
['mission_not_available'] = '~r~This job is not available anymore.',
['mission_success'] = '~g~Job ~w~',
['mission_success2'] = ' ~g~completed! You got ~w~',
['mission_success3'] = '$~g~.',
}
}
Config
Config.ShowFarmingBlipText = true
Config.FarmingAreas = {
{xptype = nil, blip = {sprite = 420, color = 7}, items = {{name = 'grapperaisin', label = 'Grapperaisins'}}, x = -1803.03, y = 2186.55, z = 105.63, range = 110.0, randoma = 1, randomb = 3, collectingTime = 8, animation = "PROP_HUMAN_BUM_BIN"},
{xptype = nil, blip = {sprite = 420, color = 36}, items = {{name = 'weat', label = 'Weat'}}, x = 2616.83, y = 4451.19, z = 39.06, range = 70.0, randoma = 2, randomb = 6, collectingTime = 11, animation = "world_human_gardener_plant"},
{xptype = nil, blip = {sprite = 420, color = 1}, items = {{name = 'apple', label = 'Apples'}}, x = 2371.95, y = 4722.87, z = 33.9, range = 30.0, randoma = 1, randomb = 3, collectingTime = 10, animation = "PROP_HUMAN_BUM_BIN"}, -- or orange
{xptype = nil, blip = {sprite = 420, color = 50}, items = {{name = 'tomatos', label = 'Tomatos'}}, x = 2286.97, y = 4763.68, z = 38.61, range = 10.0, randoma = 1, randomb = 3, collectingTime = 8, animation = "PROP_HUMAN_BUM_BIN"},
{xptype = nil, blip = {sprite = 420, color = 69}, items = {{name = 'salad', label = 'Salad'}}, x = 3288.39, y = 5181.42, z = 18.56, range = 8.0, randoma = 1, randomb = 3, collectingTime = 8, animation = "world_human_gardener_plant"},
{xptype = nil, blip = {sprite = 420, color = 20}, items = {{name = 'stone', label = 'Stone', percentage = 70}, {name = 'coal', label = 'Coal', percentage = 82}, {name = 'silver', label = 'Silver', percentage = 94}, {name = 'gold', label = 'Gold', percentage = 100}}, x = 1312.0114746094, y = 3005.9616699219, z = 53.944561004639, range = 38.0, randoma = 1, randomb = 2, collectingTime = 10, animation = "WORLD_HUMAN_HAMMERING"},
}
Config.CraftTime = 4 -- in sek
Config.CraftBlipIcon = 489
Config.CraftBlipColour = 2
Config.Processor = {
{ItemsId = 1, label = 'Juicer', XPType = 'juice', ped = "s_m_m_migrant_01", x = 2741.59, y = 4412.76, z = 48.62, rot = 190.0},
{ItemsId = 2, label = 'Bakery', XPType = 'bakery', ped = "s_m_m_strvend_01", x = -302.42, y = 6211.69, z = 31.42, rot = 0.0},
{ItemsId = 6, label = 'Salad Manufactory', XPType = 'salad', ped = "a_m_m_farmer_01", x = -1693.92, y = -1085.12, z = 13.15, rot = 130.0},
{ItemsId = 7, label = 'Melting', XPType = 'stone', ped = "ig_chef2", x = 1078.8861083984, y = -1979.7579345703, z = 31.471523284912, rot = 238.72868347168},
{ItemsId = 8, label = 'Jeweler', XPType = 'jewellery', ped = "u_f_y_jewelass_01", x = -622.05590820313, y = -232.09861755371, z = 38.057010650635, rot = 126.61913299561},
}
Config.Seller = {
{isExport = true, label = 'Port of Los Santos', priceModifier = 1.0, x = -332.6, y = -2792.68, z = 5.0, rot = 90.0},
{isExport = true, label = 'JetSam Terminal', priceModifier = 1.0, x = 797.01, y = -2988.83, z = 6.02, rot = 90.0},
{isExport = false, label = 'Delivery jobs', priceModifier = 1.0, x = -1283.37, y = -565.02, z = 31.71, rot = 310.0},
}
Config.MaxCarry = 3500
Config.ItemLimits = {
['grapperaisin'] = 60,
['weat'] = 25,
['apple'] = 60,
['tomatos'] = 60,
['salad'] = 60,
['stone'] = 70,
['coal'] = 70,
['silver'] = 70,
['gold'] = 70,
['flour'] = 20,
['applejuice'] = 50,
['tomatojuice'] = 50,
['orangejuice'] = 50,
['berriesjuice'] = 50,
['mixedsalad'] = 50,
['concrete'] = 70,
['coalingot'] = 60,
['silveringot'] = 60,
['goldingot'] = 60,
['ironbraclet'] = 50,
['goldrings'] = 50,
['necklace'] = 50,
}
Config.Items = {
{
id = 1,
reqXP = 0,
giveXP = {type = 'juice', a = 1, b = 3},
reqItems = {
{item = 'apple', label = 'Apple', amount = 3}},
newitem = {sqlitem = 'applejuice', label = 'Applejuice'},
newitemamount = 1,
craftAmount = 10
},
{
id = 1,
reqXP = 1000,
giveXP = {type = 'juice', a = 1, b = 3},
reqItems = {
{item = 'tomatos', label = 'Tomatos', amount = 3}},
newitem = {sqlitem = 'tomatojuice', label = 'Tomatojuice'},
newitemamount = 1,
craftAmount = 10
},
{
id = 1,
reqXP = 3000,
giveXP = {type = 'juice', a = 1, b = 3},
reqItems = {
{item = 'grapperaisin', label = 'Grapperaisin', amount = 2}},
newitem = {sqlitem = 'berriesjuice', label = 'Berriesjuice'},
newitemamount = 1,
craftAmount = 10
},
{
id = 2,
reqXP = 0,
giveXP = {type = 'bakery', a = 1, b = 3},
reqItems = {
{item = 'weat', label = 'Weat', amount = 3}},
newitem = {sqlitem = 'flour', label = 'Flour'},
newitemamount = 1,
craftAmount = 10
},
{
id = 6,
reqXP = 0,
giveXP = {type = 'salad', a = 1, b = 3},
reqItems = {
{item = 'salad', label = 'Salad', amount = 1},
{item = 'tomatos', label = 'Tomatos', amount = 1}},
newitem = {sqlitem = 'mixedsalad', label = 'Mixed salad'},
newitemamount = 1,
craftAmount = 10
},
{
id = 7,
reqXP = 0,
giveXP = {type = 'stone', a = 2, b = 4},
reqItems = {
{item = 'stone', label = 'Stone', amount = 4}},
newitem = {sqlitem = 'concrete', label = 'Concrete'},
newitemamount = 1,
craftAmount = 10
},
{
id = 7,
reqXP = 0,
giveXP = {type = 'stone', a = 2, b = 4},
reqItems = {
{item = 'coal', label = 'Coal', amount = 3}},
newitem = {sqlitem = 'coalingot', label = 'Coal ingot'},
newitemamount = 1,
craftAmount = 10
},
{
id = 7,
reqXP = 0,
giveXP = {type = 'stone', a = 2, b = 4},
reqItems = {
{item = 'silver', label = 'Silver', amount = 3}},
newitem = {sqlitem = 'silveringot', label = 'Silver ingot'},
newitemamount = 1,
craftAmount = 10
},
{
id = 7,
reqXP = 0,
giveXP = {type = 'stone', a = 2, b = 4},
reqItems = {
{item = 'gold', label = 'Gold', amount = 4}},
newitem = {sqlitem = 'goldingot', label = 'Gold ingot'},
newitemamount = 1,
craftAmount = 10
},
{
id = 8,
reqXP = 0,
giveXP = {type = 'jewellery', a = 2, b = 4},
reqItems = {
{item = 'coalingot', label = 'Coal ingot', amount = 2},
{item = 'silveringot', label = 'Silver ingot', amount = 1}},
newitem = {sqlitem = 'ironbraclet', label = 'Iron braclet'},
newitemamount = 1,
craftAmount = 10
},
{
id = 8,
reqXP = 0,
giveXP = {type = 'jewellery', a = 2, b = 4},
reqItems = {
{item = 'goldingot', label = 'Gold ingot', amount = 2}},
newitem = {sqlitem = 'goldrings', label = 'Gold ring'},
newitemamount = 1,
craftAmount = 10
},
{
id = 8,
reqXP = 0,
giveXP = {type = 'jewellery', a = 2, b = 4},
reqItems = {
{item = 'goldingot', label = 'Gold ingot', amount = 1},
{item = 'silveringot', label = 'Silver ingot', amount = 2}},
newitem = {sqlitem = 'necklace', label = 'Necklace'},
newitemamount = 1,
craftAmount = 10
},
}
Config.SellItems = {
{category = 'Main category', content = {
{sqlitem = 'grapperaisin', label = 'Grapperaisin', priceBuy = 21.0},
{sqlitem = 'weat', label = 'Weat', priceBuy = 9.0},
{sqlitem = 'apple', label = 'Apple', priceBuy = 21.0},
{sqlitem = 'tomatos', label = 'Tomatos', priceBuy = 21.0},
{sqlitem = 'salad', label = 'Salad', priceBuy = 21.0},
{sqlitem = 'stone', label = 'Stone', priceBuy = 18.0},
{sqlitem = 'coal', label = 'Coal', priceBuy = 24.0},
{sqlitem = 'silver', label = 'Silver', priceBuy = 28.0},
{sqlitem = 'gold', label = 'Gold', priceBuy = 47.0},
}},
{category = 'Salad', content = {
{sqlitem = 'mixedsalad', label = 'Mixed salad', priceBuy = 226.0},
}},
{category = 'Juice', content = {
{sqlitem = 'applejuice', label = 'Apple juice', priceBuy = 86.0},
{sqlitem = 'tomatojuice', label = 'Tomato juice', priceBuy = 89.0},
{sqlitem = 'berriesjuice', label = 'Berries juice', priceBuy = 87.0},
}},
{category = 'Bakery', content = {
{sqlitem = 'flour', label = 'Flour', priceBuy = 29.0},
}},
{category = 'Melt', content = {
{sqlitem = 'concrete', label = 'Concrete', priceBuy = 97.0},
{sqlitem = 'coalingot', label = 'Coal ingot', priceBuy = 99.0},
{sqlitem = 'silveringot', label = 'Silver ingot', priceBuy = 125.0},
{sqlitem = 'goldingot', label = 'Gold ingot', priceBuy = 210.0},
}},
{category = 'Jewelery', content = {
{sqlitem = 'ironbraclet', label = 'Iron braclet', priceBuy = 350.0},
{sqlitem = 'goldrings', label = 'Gold rings', priceBuy = 570.0},
{sqlitem = 'necklace', label = 'Necklace', priceBuy = 585.0},
}},
}
Config.RandomPickAmountOnStart = 7
Config.LocalItems = {
{id = 1, label = 'Panic Catering',
price = 620,
requires = {
{item = 'flour', label = 'Flour', amount = 6},
{item = 'apple', label = 'Apples', amount = 8},
},
destination = {x = -278.05, y = -2037.44, z = 30.15},
state = 0,
recommendJob = nil},
{id = 2, label = 'Richman Breakfast',
price = 470,
requires = {
{item = 'mixedsalad', label = 'Mixed salad', amount = 3},
},
destination = {x = -1274.4, y = 314.91, z = 65.51},
state = 0,
recommendJob = nil},
{id = 3, label = 'Richman Happy Hour',
price = 2745,
requires = {
{item = 'bolcacahuetes', label = 'Peanuts', amount = 20},
{item = 'vodkaenergy', label = 'Vodka-Energy', amount = 10},
{item = 'vodkafruit', label = 'Vodka-Fruit', amount = 10},
},
destination = {x = -1274.4, y = 314.91, z = 65.51},
state = 0,
recommendJob = 'Clubs'},
{id = 4, label = 'Shark Bites Beach',
price = 1860,
requires = {
{item = 'applejuice', label = 'Apple juice', amount = 8},
{item = 'berriesjuice', label = 'Berries juice', amount = 8},
},
destination = {x = -1298.01, y = -1387.61, z = 4.54},
state = 0,
recommendJob = nil},
{id = 5, label = 'The Pearl Celebration',
price = 1540,
requires = {
{item = 'golem', label = 'Golem', amount = 12},
{item = 'whiskycoca', label = 'Whisky-Coca', amount = 5},
{item = 'jusfruit', label = 'Fruit juice', amount = 6},
},
destination = {x = -1816.31, y = -1192.68, z = 14.31},
state = 0,
recommendJob = 'Clubs'},
{id = 18, label = 'Airport Bilgeco',
price = 4500,
requires = {
{item = 'tomatojuice', label = 'Tomato juice', amount = 40},
},
destination = {x = -874.55, y = -2735.07, z = 13.9},
state = 0,
recommendJob = nil},
{id = 6, label = 'Crastenburg Breakfast',
price = 2030,
requires = {
{item = 'tomatos', label = 'Tomatos', amount = 20},
{item = 'mixedsalad', label = 'Mixed salad', amount = 10},
},
destination = {x= -1858.72, y= -348.64, z = 49.84},
state = 0,
recommendJob = nil},
{id = 7, label = 'Construction',
price = 2268,
requires = {
{item = 'concrete', label = 'Concrete', amount = 12},
},
destination = {x = -585.78631591797, y = -286.04611206055, z = 35.454780578613},
state = 0,
recommendJob = nil},
}
Dependencies:
- ESX
- NativeUI
Compatible with all ESX versions (proofed for v.1.1/1.2/1-final)
Price: 12,50€ + tax
Download at https://luis-scripts.tebex.io/package/4263354
Feel free to check out my other scripts
myClothesshop
myProperties
myCarthief
myDrugs
myMapbuilder
myMultichar
myBills
EnhancedBarbershop