Files
red-valley/docs/cross_resource_modifications.md
T
redvalley 1bcf0d9282 docs: sync knowledge base with April 8-10 changes
Synchronized docs/ folder with Knowledge Base (was behind since April 3):
- changelog.md: added qb-target migration (Apr 8) + resource cleanup (Apr 10) entries
- server_knowledge.md: complete resource structure post-cleanup, target section update
- cross_resource_modifications.md: added qb-target migration checklist
- resource_dependency_map.md: removed rv-qb-target, updated qb-target (ld-target engine)
- resource_map.html: updated qb-target node + 17mov_Electrician qtarget link
2026-06-17 16:53:15 +03:00

11 KiB
Raw Blame History

Cross-Resource Modifications

Fișiere modificate în afara resursei principale la care s-a lucrat. Util pentru tracking git — aceste fișiere aparțin altor resurse dar au fost modificate pentru a suporta features noi.


⚠️ CRITICAL: Checklist la Update qb-core

Când se face update la qb-core (orice versiune/fork), OBLIGATORIU verifică:

  1. shared/main.luaQBShared.StarterItems — DOAR phone + map! (NU id_card, NU driver_license)
  2. server/player.luaplayertables — FĂRĂ apartments (tabel inexistent), FĂRĂ phone_messages (nu are citizenid)
    • ⚠️ ATENȚIE: Repo-ul OFICIAL Quasar qb-core vine MEREU cu apartments + phone_messages in playertables. La FIECARE update trebuie comentate!
    • 📱 TODO (qs-smartphone-pro setup): Când se configurează qs-smartphone-pro complet, REVERIFICÃ tabelele player_contacts, player_mails, phone_messages, phone_invoices. Dacă schema lor are coloana citizenid, reactivează-le. Dacă nu, adaugă cleanup custom cu coloana corectă (ex: number, phone_number).
  3. shared/items.lua → Clothing items: chain, vest, bracelets, watch + map (rv-maphold) TREBUIE să existe
  4. shared/jobs.lua → TOATE joburile 17mov TREBUIE păstrate: deliverer, garbage, postman, lumberjack, bus, builder, electrician, windowcleaner, treasurehunter, miner, oilrig, mechanic, unemployed. Quasar fork SUPRASCRIE cu joburi default!
    • ⚠️ FIX RAPID: git checkout HEAD -- "resources/[framework]/[core]/qb-core/shared/jobs.lua" restaurează din git
  5. config.luametadata.licences.driver = false (linia 87) — Quasar pune true default, TREBUIE setat false (permisul se obține la bit-driverschool)
  6. client/functions.luaQBCore.Functions.Notify override la exports['17mov_Hud']:ShowNotification (linia ~171)
  7. client/events.luaQBCore:Notify event override la exports['17mov_Hud']:ShowNotification (linia ~193)

Feature: Mechanic Job Outfit (lucrat pe t1ger_mechanic)

Fișiere modificate în alte resurse:

Fișier Resursă Ce s-a modificat
configs/Config.lua 17mov_CharacterSystem Adăugat Config.Outfits['mechanic'] cu outfit data per grad (0-4) și gen (male/female)
shared/jobs.lua qb-core Schimbat label job mechanic: "Servicii Auto" → "Mecanic"
resources.cfg Server root Adăugat ensure [stream] pentru încărcare AdminPack

Fișiere NOI create în t1ger_mechanic:

Fișier Ce face
client/shop/markers/getoutfit.lua Comandă admin /getoutfit — printează clothing component IDs
client/shop/markers/duty.lua MODIFICAT — adăugat auto-apply/restore outfit la duty toggle

Fișiere NOI create în alte locații:

Fișier Locație Ce face
fxmanifest.lua [stream]/[admin-outfit]/AdminPack/ Manifest pentru încărcare clothing pack admin
fxmanifest.lua _preLoad/AdminPack/ Manifest pre-staging (copie, nu se încarcă pe server)
start_server.ps1 Server root PowerShell wrapper anti Ctrl+C
job-outfit-setup.md .agents/workflows/ Workflow refolosibil pentru setup outfit per job

Feature: Mechanic Job Garage & Keys (lucrat pe t1ger_mechanic + qs-advancedgarages)

Fișiere modificate în alte resurse:

Fișier Resursă Ce s-a modificat
fxmanifest.lua qs-advancedgarages Verificat/ajustat dependințe

Note:

  • Modificările la garage/keys au fost în principal în fișierele native ale t1ger_mechanic (garage.lua, duty.lua)
  • Logica de key removal la admin delete a fost adăugată cross-resource între t1ger_mechanic și qs-advancedgarages

Feature: Wasabi Police Install (lucrat pe wasabi_police — 2026-03-29)

Fișiere modificate în alte resurse:

Fișier Resursă Ce s-a modificat
shared/items.lua qs-inventory Adăugat bobby_pin + tracking_bracelet în secțiunea Cops Tools
html/images/bobby_pin.png qs-inventory Copiat imagine item din _install_first/inventory_images/
html/images/tracking_bracelet.png qs-inventory Copiat imagine item din _install_first/inventory_images/

Fișiere modificate în wasabi_police:

Fișier Ce s-a modificat
game/configuration/config.lua Config.Jail.jail = 'rcore' (linia 74)

Note:

  • Items bobby_pin și tracking_bracelet existau deja în qb-core/shared/items.lua (adăugate anterior pe 2026-01-18)
  • handcuffs exista deja în ambele (qb-core + qs-inventory)
  • SQL-urile ESX din _install_first/esx/sql/ nu au fost executate (suntem pe QBCore)
  • Resursa se încarcă automat via ensure [jobs] din resources.cfg

Feature: Quasar Advanced Inventory Migration (qb-core fork Quasar 1.3.0 — 2026-04-02)

Fișiere modificate în qb-core:

Fișier Linie Ce s-a modificat
shared/main.lua L6-11 StarterItems — DOAR phone + map. Comentat id_card (de la mugshot) și driver_license (de la școala de șoferi)
shared/items.lua L4765+ Adăugat 4 clothing items lipsă: chain, vest, bracelets, watch (copiate din qs-inventory/shared/items.lua)
server/player.lua L541-554 playertables — comentat apartments (tabel inexistent) și phone_messages (nu are coloana citizenid, qs-smartphone-pro)

Fișiere modificate în qs-inventory:

Fișier Linie Ce s-a modificat
config/config.lua L26 Config.Language = 'ro'
config/config.lua L72 Config.ServerName = 'RED VALLEY'
config/config.lua L935 Config.Debug = true (temporar, de setat false la producție)

Rezumat rapid — Toate fișierele modificate (Quasar migration)

resources/[framework]/[core]/qb-core/shared/main.lua    ← StarterItems: phone + map ONLY
resources/[framework]/[core]/qb-core/shared/items.lua   ← +chain, +vest, +bracelets, +watch
resources/[framework]/[core]/qb-core/server/player.lua  ← playertables: -apartments, -phone_messages
resources/[framework]/[core]/[inventory]/qs-inventory/config/config.lua ← lang, servername, debug

Feature: Global [E] Prompt Suppression → qb-target (2026-04-03)

⚠️ CRITICAL: Checklist la Update qb-core (drawtext)

Când se face update la qb-core, verifică:

  • client/drawtext.lua → TOATE funcțiile sunt no-ops (DrawText, ChangeText, HideText, KeyPressed). La update, Quasar va restaura funcțiile originale!

Fișiere modificate:

Fișier Resursă Ce s-a modificat
client/drawtext.lua qb-core SUPRIMAT GLOBAL — DrawText/ChangeText/HideText/KeyPressed sunt no-ops cu function() end. Exporturile există dar nu fac nimic.

Note:

  • Supresia este globală — NICIO resursă nu poate afișa prompt-uri [E] prin qb-core exports
  • Resursele nu crashuiesc, dar textul nu apare
  • Aceasta forțează migrarea la qb-target (dot/eye target) pe tot serverul
  • Resursele trebuie setate individual cu Config.UseTarget = true

Feature: qs-housing qb-target Migration (2026-04-03)

⚠️ CRITICAL: Checklist la Update qs-housing

Când se face update la qs-housing, verifică:

  1. client/custom/framework/qb.lua → DrawText3D/DrawText3Ds/DrawTextBoard sunt no-ops când Config.UseTarget = true. Update-ul Quasar va restaura funcțiile originale!
  2. client/custom/target/qb-target.lua → BoxZone rv_realestate_npc + floating text "Agent Imobiliar" pe NPC Real Estate. Secțiunea RED VALLEY de la sfârșitul fișierului!

Fișiere modificate:

Fișier Resursă Ce s-a modificat
client/custom/framework/qb.lua qs-housing DrawText3D/DrawText3Ds/DrawTextBoard devin no-ops condițional (doar când Config.UseTarget = true). Codul encrypted apelează aceste funcții native GTA, deci suprimarea din qb-core nu le prindea.
client/custom/target/qb-target.lua qs-housing Adăugat BoxZone qb-target pe NPC-ul Real Estate (rv_realestate_npc) la coordonatele din Config.RealeStateNPC.location. Opțiune: "Open House Browser" (execută /housebrowser). Floating text nativ "Agent Imobiliar" cu LOS check.

NPC Real Estate — Configurare:

  • Model: a_m_m_business_01 (din Config.RealeStateNPC.pedModel)
  • Locație: vec4(-253.978027, -970.457153, 31.217529, 161.574799) (din Config.RealeStateNPC.location)
  • Target zone: BoxZone 1.5×1.5, distance 2.5
  • Floating text: Native GTA rendering, LOS check, 15m range

Feature: Time Freeze 14:00 (2026-04-03)

Fișiere modificate:

Fișier Resursă Ce s-a modificat
config.lua qb-weathersync Config.BaseTime = 14, Config.FreezeTime = true — server locked la ora 14:00 permanent

Note:

  • Necesită restart complet de server (ensure nu funcționează)
  • Config.RealTimeSync era deja false (setat 2026-03-28)

Feature: qb-target Migration (ld-target engine — 2026-04-08)

⚠️ CRITICAL: Checklist la Update qb-target

Când se face update/înlocuire la qb-target, verifică:

  1. fxmanifest.luaprovide 'qtarget' TREBUIE să existe (17mov_Electrician depinde de el)
  2. init.luaConfig.Peds = {} (fără demo NPC-uri Lunny)
  3. client.lua → DrawSprite zone markers: RGB(92, 151, 247) = albastru
  4. html/ → Culorile NUI: #5c97f7 albastru (style.css, interaction.css, script.js, index.html)

Fișiere modificate:

Fișier Resursă Ce s-a modificat
fxmanifest.lua qb-target name='qb-target', provide 'qtarget' adăugat
init.lua qb-target Config.Peds = {} — golit tabel demo peds Lunny
client.lua qb-target DrawSprite zone markers: (255,255,255)(92,151,247) albastru
html/style.css qb-target #00F8B9#5c97f7
html/interaction.css qb-target #00F8B9#5c97f7
html/script.js qb-target #00F8B9#5c97f7
html/index.html qb-target #00F8B9#5c97f7

Note:

  • Folderul TREBUIE să se numească qb-target (nu rv-target) — resursele terțe hardcode exports['qb-target']
  • provide 'qtarget' permite exports['qtarget'] să rezolve la același resource
  • Engine-ul este ld-target open-source (NP 4.0 inspired)
  • Zone markers (puncte la distanță) funcționează doar pe Zones (BoxZone, CircleZone), NU pe entități adăugate cu AddTargetEntity()
  • Sursele originale se găsesc în _preLoad/ld-target/Standalone/