{"id":163198,"date":"2024-10-20T10:09:19","date_gmt":"2024-10-20T08:09:19","guid":{"rendered":"https:\/\/hifivem.com\/?p=163198"},"modified":"2026-08-11T09:54:22","modified_gmt":"2026-08-11T07:54:22","slug":"talleres-de-trabajo-fivem","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/es\/fivem-job-garages\/","title":{"rendered":"Stevo Job Garages: dependencias, llaves y controles de acceso"},"content":{"rendered":"<p>Stevo Job Garages supplies job or gang garage menus, vehicle spawning and customization. We reviewed the creator repository at d0261f8, whose manifest declares version 1.0.3. Its README lists ESX, QBCore and Qbox through stevo_lib; that is not proof that every current framework version works unchanged.<\/p>\n<p><a href=\"https:\/\/github.com\/stevoscriptsteam\/stevo_jobgarages\">Creator repository and source<\/a><\/p>\n<h2>Use the dependency required by the code<\/h2>\n<p>The README links stevo_lib 1.7.1, but resource\/client.lua explicitly requires 1.7.2 or newer. Start compatible framework resources, ox_lib and stevo_lib before stevo_jobgarages. Keep the folder named stevo_jobgarages and add ensure stevo_jobgarages to server.cfg. The reviewed manifest has no server script or SQL migration.<\/p>\n<h2>Configure your actual fleet and keys<\/h2>\n<p>In config.lua, set groupRequired, category gradeRequired, menuCoords and spawnCoords for your jobs. The sample mixes police and ambulance groups with misleading garage names and custom model names such as aambulance and nkscout2020. Those vehicle assets are not included. Both key callbacks contain only commented examples; implement giveVehicleKeys and removeVehicleKeys for your installed key system.<\/p>\n<h2>What the access controls actually cover<\/h2>\n<p>Group and rank checks run in client menu code, and vehicles are created on the client. The resource does not implement independent server authorization for those actions. Storing a vehicle deletes it rather than writing persistent garage ownership to a database. Do not present this as a secure persistent fleet system without separate server validation and persistence.<\/p>\n<p>Test cancelled plate changes after connecting key callbacks: the code removes the existing key before checking whether the input was cancelled. Also test job changes, unavailable vehicle models, spawn cancellation and repeated resource starts. This is a source review, not a gameplay test or complete security audit.<\/p>\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"video-container\"><iframe loading=\"lazy\" title=\"[FREE] Job Garages | ESX\/QBX\/QB | StevoScripts\" width=\"1170\" height=\"658\" src=\"https:\/\/www.youtube.com\/embed\/aYWzjnSFW0I?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen referrerpolicy=\"strict-origin-when-cross-origin\"><\/iframe><\/div>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Configura stevo_jobgarages 1.0.3 con la versi\u00f3n exigida de stevo_lib, veh\u00edculos y llaves, y revisa los controles de acceso del cliente.<\/p>","protected":false},"author":1,"featured_media":163199,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2877,2297,2298],"tags":[3001,2928,3000,2866],"class_list":["post-163198","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-free-fivem-job-scripts","category-free","category-scripts","tag-fivem-script","tag-free","tag-free-script","tag-job"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/163198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/comments?post=163198"}],"version-history":[{"count":3,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/163198\/revisions"}],"predecessor-version":[{"id":212483,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/posts\/163198\/revisions\/212483"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/media\/163199"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/media?parent=163198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/categories?post=163198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/es\/wp-json\/wp\/v2\/tags?post=163198"}],"curies":[{"name":"gracias","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}