Enk0

Untitled

Aug 31st, 2025
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.86 KB | Source Code | 0 0
  1. Config = {}
  2.  
  3. -- Basic settings
  4. Config.RequiredItem = 'skimmer_device' -- Item needed to place skimmer
  5. Config.SkimmerCardItem = 'skimmer_card' -- Item for skimmer card
  6. Config.CardMakerItem = 'card_maker' -- Item for creating cards
  7. Config.BlankCardItem = 'blank_card' -- Item needed to create skimmer card
  8.  
  9. -- Webhook URLs
  10. Config.Webhooks = {
  11. activities = '',
  12. shop = '',
  13. money = ''
  14. }
  15.  
  16. -- Job restrictions
  17. Config.BlacklistJobs = {
  18. 'police',
  19. 'sheriff'
  20. }
  21.  
  22. -- Jobs that can remove skimmers
  23. Config.PoliceJobs = {
  24. 'police',
  25. 'sheriff'
  26. }
  27.  
  28. -- Required police count to place skimmers
  29. Config.RequiredPolice = 2 -- Minimum number of police officers needed online
  30.  
  31. -- ATM Cooldown settings
  32. Config.ATMCooldown = {
  33. enabled = true, -- Enable/disable ATM cooldown system
  34. timeMinutes = 30, -- Cooldown time in minutes after skimmer activity
  35. }
  36.  
  37. -- Dispatch system settings
  38. Config.Dispatch = {
  39. enabled = true, -- Set to false to disable dispatch alerts
  40. placeSkimmerChance = 100, -- Chance (0-100) that placing skimmer triggers police alert
  41. withdrawMoneyChance = 100, -- Chance (0-100) that withdrawing money triggers police alert
  42.  
  43. -- Custom dispatch code - paste your dispatch system code here
  44. customCode = function(coords, alertType)
  45. local streetName, crossing = GetStreetNameFromHashKey(GetStreetNameAtCoord(coords.x, coords.y, coords.z))
  46.  
  47. local label = "Suspicious Activity"
  48. local code = "10-90"
  49.  
  50. -- Different labels based on alert type
  51. if alertType == "withdraw" then
  52. label = "ATM Fraud"
  53. code = "10-16"
  54. end
  55.  
  56. TriggerServerEvent('dispatch:server:senddispatch', {
  57. road = streetName,
  58. label = label,
  59. code = code,
  60. priority = "3",
  61. coords = coords,
  62. jobs = { "police", "sheriff" }
  63. })
  64.  
  65. --[[ Example for cd_dispatch (replace above code with this if using cd_dispatch):
  66. local data = exports['cd_dispatch']:GetPlayerInfo()
  67.  
  68. local title = "10-90 - Suspicious Activity"
  69. local message = "Suspicious activity reported at ATM location at "..data.street
  70.  
  71. if alertType == "withdraw" then
  72. title = "10-16 - ATM Fraud"
  73. message = "Possible ATM fraud reported at "..data.street
  74. end
  75.  
  76. TriggerServerEvent('cd_dispatch:AddNotification', {
  77. job_table = {'police', 'sheriff'},
  78. coords = coords,
  79. title = title,
  80. message = message,
  81. flash = 0,
  82. unique_id = data.unique_id,
  83. sound = 1,
  84. blip = {
  85. sprite = 431,
  86. scale = 1.2,
  87. colour = 3,
  88. flashes = false,
  89. text = '911 - '..title,
  90. time = 5,
  91. radius = 0,
  92. }
  93. })
  94. ]]
  95. end
  96. }
  97.  
  98. -- Shop ped settings
  99. Config.ShopPed = {
  100. model = 'a_m_m_mlcrisis_01',
  101. coords = vector4(765.2267, -1225.4609, 25.2056, 1.6034)
  102. }
  103.  
  104. -- Shop prices
  105. Config.ShopPrices = {
  106. skimmer_device = 2500,
  107. card_maker = 1500,
  108. blank_card = 250
  109. }
  110.  
  111. -- Skimming time (in minutes)
  112. Config.SkimmingTime = {
  113. min = 1, -- Minimum time
  114. max = 1 -- Maximum time
  115. }
  116.  
  117. -- Money obtained from skimmer card
  118. Config.CardMoney = {
  119. min = 500, -- Minimum amount
  120. max = 2500 -- Maximum amount
  121. }
  122.  
  123. -- ATM props (you can add more)
  124. Config.ATMProps = {
  125. 'prop_atm_01',
  126. 'prop_atm_02',
  127. 'prop_atm_03',
  128. 'prop_fleeca_atm'
  129. }
  130.  
  131. -- Skill check settings
  132. Config.SkillCheck = {
  133. difficulty = {'easy', 'easy', 'medium'}, -- Difficulty
  134. keys = {'w', 'a', 's', 'd'}, -- Keys
  135. inputs = 3 -- Number of inputs
  136. }
  137.  
  138. -- Police skill check settings for removing skimmers
  139. Config.PoliceSkillCheck = {
  140. difficulty = {'easy', 'medium'}, -- Easier for police
  141. keys = {'w', 'a', 's', 'd'}, -- Keys
  142. inputs = 2 -- Fewer inputs for police
  143. }
  144.  
  145. -- Texts and UI
  146. Config.Texts = {
  147. place_skimmer = 'Place Skimmer',
  148. open_skimmer = 'Open Skimmer',
  149. withdraw_money = 'Withdraw Money from Skimmer Card',
  150. shop_label = 'Skimmer Shop',
  151. info_label = 'How to use Skimmers',
  152. info_description = 'Learn how to use skimming equipment',
  153. shop_title = 'Skimmer Equipment Shop',
  154. buy_skimmer_device = 'Skimmer Device',
  155. buy_card_maker = 'Card Maker',
  156. buy_blank_card = 'Blank Card',
  157. price_format = 'Price: $%s',
  158. create_card_label = 'Create Skimmer Card',
  159. pickup_maker_label = 'Pick up Card Maker',
  160. remove_skimmer_police = 'Remove Skimmer (Police)',
  161. info_header = 'How to use Skimmers',
  162. info_content = 'Place a skimmer on an ATM, wait for it to become ready, use the card maker to create a card, then withdraw money from the card at any ATM.',
  163. }
  164.  
  165. -- Notifications
  166. Config.Notifications = {
  167. -- Error notifications
  168. no_item = {
  169. title = 'Error',
  170. description = 'You don\'t have the required item!',
  171. type = 'error',
  172. duration = 3000,
  173. position = 'top'
  174. },
  175. skill_failed = {
  176. title = 'Error',
  177. description = 'You failed! Try again.',
  178. type = 'error',
  179. duration = 3000,
  180. position = 'top'
  181. },
  182. not_enough_money = {
  183. title = 'Error',
  184. description = 'You don\'t have enough money!',
  185. type = 'error',
  186. duration = 3000,
  187. position = 'top'
  188. },
  189. no_card_maker = {
  190. title = 'Error',
  191. description = 'You don\'t have card maker!',
  192. type = 'error',
  193. duration = 3000,
  194. position = 'top'
  195. },
  196. no_skimmer_card = {
  197. title = 'Error',
  198. description = 'You don\'t have a skimmer card!',
  199. type = 'error',
  200. duration = 3000,
  201. position = 'top'
  202. },
  203. no_data = {
  204. title = 'Error',
  205. description = 'You don\'t have any data to create a card!',
  206. type = 'error',
  207. duration = 3000,
  208. position = 'top'
  209. },
  210. no_blank_card = {
  211. title = 'Error',
  212. description = 'You don\'t have a blank card!',
  213. type = 'error',
  214. duration = 3000,
  215. position = 'top'
  216. },
  217. not_enough_police = {
  218. title = 'Error',
  219. description = 'Not enough law enforcement online!',
  220. type = 'error',
  221. duration = 4000,
  222. position = 'top'
  223. },
  224. police_skill_failed = {
  225. title = 'Error',
  226. description = 'Failed to remove skimmer! Try again.',
  227. type = 'error',
  228. duration = 3000,
  229. position = 'top'
  230. },
  231. atm_on_cooldown = {
  232. title = 'Error',
  233. description = 'This ATM was recently used for skimming activities!',
  234. type = 'error',
  235. duration = 4000,
  236. position = 'top'
  237. },
  238.  
  239. -- Success notifications
  240. skimmer_placed = {
  241. title = 'Success',
  242. description = 'Skimmer successfully placed!',
  243. type = 'success',
  244. duration = 4000,
  245. position = 'top'
  246. },
  247. skimmer_ready = {
  248. title = 'Skimmer',
  249. description = 'Your skimmer is ready to use!',
  250. type = 'success',
  251. duration = 5000,
  252. position = 'top',
  253. icon = 'fas fa-check-circle'
  254. },
  255. data_downloaded = {
  256. title = 'Success',
  257. description = 'Data downloaded from skimmer!',
  258. type = 'success',
  259. duration = 4000,
  260. position = 'top',
  261. icon = 'fas fa-download'
  262. },
  263. card_created = {
  264. title = 'Success',
  265. description = 'Card successfully created!',
  266. type = 'success',
  267. duration = 4000,
  268. position = 'top',
  269. icon = 'fas fa-credit-card'
  270. },
  271. maker_placed = {
  272. title = 'Success',
  273. description = 'Card maker placed on ground',
  274. type = 'success',
  275. duration = 3000,
  276. position = 'top'
  277. },
  278. maker_picked_up = {
  279. title = 'Success',
  280. description = 'Card maker picked up',
  281. type = 'success',
  282. duration = 3000,
  283. position = 'top'
  284. },
  285. skimmer_removed = {
  286. title = 'Success',
  287. description = 'Skimmer was removed',
  288. type = 'success',
  289. duration = 3000,
  290. position = 'top'
  291. },
  292. skimmer_removed_police = {
  293. title = 'Police Action',
  294. description = 'Skimmer confiscated by police',
  295. type = 'info',
  296. duration = 4000,
  297. position = 'top',
  298. icon = 'fas fa-shield-alt'
  299. },
  300.  
  301. -- Cancelled notifications
  302. purchase_cancelled = {
  303. title = 'Cancelled',
  304. description = 'Purchase cancelled',
  305. type = 'error',
  306. duration = 2000,
  307. position = 'top'
  308. },
  309. placing_cancelled = {
  310. title = 'Cancelled',
  311. description = 'Placing skimmer was cancelled',
  312. type = 'error',
  313. duration = 3000,
  314. position = 'top'
  315. },
  316. pickup_cancelled = {
  317. title = 'Cancelled',
  318. description = 'Pickup cancelled',
  319. type = 'error',
  320. duration = 2000,
  321. position = 'top'
  322. },
  323. card_creation_cancelled = {
  324. title = 'Cancelled',
  325. description = 'Card creation cancelled',
  326. type = 'error',
  327. duration = 2000,
  328. position = 'top'
  329. },
  330. download_cancelled = {
  331. title = 'Cancelled',
  332. description = 'Download was cancelled',
  333. type = 'error',
  334. duration = 3000,
  335. position = 'top'
  336. },
  337. withdrawal_cancelled = {
  338. title = 'Cancelled',
  339. description = 'Withdrawal was cancelled',
  340. type = 'error',
  341. duration = 3000,
  342. position = 'top'
  343. },
  344. dispatch_alert = {
  345. title = 'Alert',
  346. description = 'Police have been notified of suspicious activity',
  347. type = 'warning',
  348. duration = 5000,
  349. position = 'top',
  350. icon = 'fas fa-exclamation-triangle'
  351. }
  352. }
  353.  
  354. -- Progress bars
  355. Config.ProgressBars = {
  356. placing_skimmer = {
  357. duration = 4000,
  358. label = 'Placing skimmer...',
  359. useWhileDead = false,
  360. canCancel = true,
  361. disable = {
  362. car = true,
  363. move = true,
  364. combat = true,
  365. mouse = false
  366. },
  367. anim = {
  368. dict = 'anim@mp_atm@enter',
  369. clip = 'enter'
  370. }
  371. },
  372. buying_item = {
  373. duration = 2000,
  374. label = 'Buying item...',
  375. useWhileDead = false,
  376. canCancel = true,
  377. disable = {
  378. car = true,
  379. move = true,
  380. combat = true
  381. },
  382. anim = {
  383. dict = 'mp_common',
  384. clip = 'givetake1_a'
  385. }
  386. },
  387. downloading_data = {
  388. duration = 6000,
  389. label = 'Downloading data from skimmer...',
  390. useWhileDead = false,
  391. canCancel = true,
  392. disable = {
  393. car = true,
  394. move = true,
  395. combat = true
  396. },
  397. anim = {
  398. dict = 'anim@gangops@facility@servers@',
  399. clip = 'hotwire'
  400. }
  401. },
  402. removing_skimmer = {
  403. duration = 5000,
  404. label = 'Removing skimmer...',
  405. useWhileDead = false,
  406. canCancel = true,
  407. disable = {
  408. car = true,
  409. move = true,
  410. combat = true
  411. }
  412. },
  413. withdrawing_money = {
  414. duration = 7000,
  415. label = 'Withdrawing money from card...',
  416. useWhileDead = false,
  417. canCancel = true,
  418. disable = {
  419. car = true,
  420. move = true,
  421. combat = true
  422. },
  423. anim = {
  424. dict = 'oddjobs@shop_robbery@rob_till',
  425. clip = 'loop'
  426. }
  427. },
  428. placing_maker = {
  429. duration = 1000,
  430. label = 'Placing maker...',
  431. useWhileDead = false,
  432. canCancel = true,
  433. disable = {
  434. car = true,
  435. move = true,
  436. combat = true
  437. },
  438. anim = {
  439. dict = 'random@domestic',
  440. clip = 'pickup_low'
  441. }
  442. },
  443. creating_card = {
  444. duration = 4000,
  445. label = 'Creating card...',
  446. useWhileDead = false,
  447. canCancel = true,
  448. disable = {
  449. car = true,
  450. move = true,
  451. combat = true
  452. },
  453. anim = {
  454. dict = 'anim@gangops@facility@servers@',
  455. clip = 'hotwire'
  456. }
  457. },
  458. picking_up_maker = {
  459. duration = 1000,
  460. label = 'Picking up maker...',
  461. useWhileDead = false,
  462. canCancel = true,
  463. disable = {
  464. car = true,
  465. move = true,
  466. combat = true
  467. },
  468. anim = {
  469. dict = 'random@domestic',
  470. clip = 'pickup_low'
  471. }
  472. },
  473. removing_skimmer_police = {
  474. duration = 3000,
  475. label = 'Confiscating skimmer...',
  476. useWhileDead = false,
  477. canCancel = true,
  478. disable = {
  479. car = true,
  480. move = true,
  481. combat = true
  482. },
  483. anim = {
  484. dict = 'anim@mp_atm@enter',
  485. clip = 'enter'
  486. }
  487. }
  488. }
  489.  
  490. -- Dynamic notification templates (for server-side with variables)
  491. Config.DynamicNotifications = {
  492. item_bought = {
  493. title = 'Success',
  494. description = 'You bought %s for $%s!', -- %s will be replaced with item name and price
  495. type = 'success',
  496. duration = 4000,
  497. position = 'top',
  498. icon = 'fas fa-shopping-cart'
  499. },
  500. money_withdrawn = {
  501. title = 'Success',
  502. description = 'You withdrew $%s from the skimmer card!', -- %s will be replaced with amount
  503. type = 'success',
  504. duration = 5000,
  505. position = 'top',
  506. icon = 'fas fa-money-bill'
  507. }
  508. }
Advertisement
Add Comment
Please, Sign In to add comment