- Animatie tableta (prop_cs_tablet) la deschiderea Job Center NUI - Bubble text 3D deasupra capului vizibil pt toti jucatorii (state bags) - Job Center: icon 💼 | testbubble: icon 💬 + text custom - Curatat locale ro.lua (~r~[E]~s~ incompatibil cu qb-target) - Comenzi test: testanim, stopanim, testbubble [text], stopbubble - Scos db/ din git tracking + .gitignore actualizat - Regula 13 rulebook: commit info dupa fiecare modificare - Fisiere: 17mov_JobCenter/client/utils.lua, locale/ro.lua, .gitignore, rulebook.md
763 lines
42 KiB
Markdown
763 lines
42 KiB
Markdown
git tkn: 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
|
||
|
||
# Red Valley Roleplay — Changelog
|
||
|
||
> Changelog complet al tuturor modificărilor la server realizate în sesiunile noastre de lucru.
|
||
> Fiecare fișier este menționat cu path-ul complet și referințele cross-resource.
|
||
|
||
---
|
||
|
||
## 2026-03-31 — Migrare Interacțiuni la qb-target + Skills Upgrade + Bus Icon + Animație Tabletă
|
||
|
||
### 🎬 Animație Tabletă la Job Center
|
||
- ✏️ `resources/[framework]/[base]/[jobs]/17mov_JobCenter/client/utils.lua` — adăugat animație + prop `prop_cs_tablet`
|
||
- La deschiderea meniului: personajul ține o tabletă în mână (anim: `amb@code_human_in_bus_passenger_idles@female@tablet@base`)
|
||
- La închiderea meniului: tabletă și animație se opresc automat (monitorizare NUI focus)
|
||
- ✏️ `resources/[framework]/[base]/[jobs]/17mov_JobCenter/locale/ro.lua` — curățat `~r~[E] |~s~` din label-ul target (coduri GTA formatting incompatibile cu qb-target)
|
||
|
||
### 📝 Terminologie Standardizată
|
||
- ✏️ Înlocuit termenul "vendor" cu "devTeam" în toate fișierele .md (skills, KB, docs, changelog)
|
||
|
||
### 💬 Bubble Text System (3D text deasupra capului)
|
||
- ✏️ `resources/[framework]/[base]/[jobs]/17mov_JobCenter/client/utils.lua`
|
||
- Text 3D deasupra capului jucătorului vizibil de toți (via state bags: `browsingJobs`, `bubbleText`, `bubbleIcon`)
|
||
- Job Center: 💼 "Se uita la locuri de munca..."
|
||
- Generic (testbubble): 💬 + text custom
|
||
- Scalare automată bazată pe distanță + FOV cameră
|
||
- 🆕 Comenzi de test permanente: `testanim`, `stopanim`, `testbubble [text]`, `stopbubble`
|
||
|
||
### 📋 Rulebook Updates
|
||
- ✏️ Regula 13: Commit info (Summary + Description) după fiecare modificare
|
||
|
||
### 🎯 Migrare Sistem Interacțiuni → qb-target (20 resurse)
|
||
Toate resursele care foloseau DrawText3D `[E]` / Markers au fost trecute pe **qb-target** (third-eye system) pentru experiență uniformă.
|
||
|
||
#### ✏️ 17mov Jobs (11 resurse) — `Config.UseTarget = false` → `true`
|
||
- `resources/[framework]/[base]/[jobs]/17mov_JobCenter/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_GarbageCollector/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_Deliverer/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_Postman/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_Lumberjack/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_BuilderJob/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_Electrician/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_Miner/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_OilRig/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_TreasureHunter/Config.lua`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/17mov_WindowCleaning/Config.lua`
|
||
|
||
#### ✏️ aty_busjob — `Target = "none"` → `"qb"`
|
||
- `resources/[framework]/[base]/[jobs]/[citizen]/aty_busjob/config.lua`
|
||
|
||
#### ✏️ Quasar Resources (4 resurse) — `Config.UseTarget = false` → `true`
|
||
- `resources/[framework]/[core]/qs-inventory/config/config.lua`
|
||
- `resources/[framework]/[addons]/[quasar]/qs-shops/config.lua`
|
||
- `resources/[framework]/[addons]/[quasar]/qs-smartphone-pro/config/config.lua`
|
||
- `resources/[framework]/[addons]/[housing]/qs-housing/config/main.lua`
|
||
|
||
#### ✏️ rcore_casino — `UseTarget = false` → `true` + `TargetZoneType = 3` (qb-target)
|
||
- `resources/[framework]/[addons]/[casino]/rcore_casino/config.lua`
|
||
|
||
#### ✏️ server.cfg — `setr UseTarget true` (qb-management + qb-smallresources)
|
||
- `server.cfg` linia 78
|
||
|
||
#### ⚠️ NU s-a schimbat:
|
||
- **qs-advancedgarages** — nu suportă qb-target (doar `ox_target` / `qb-radialmenu`)
|
||
|
||
### 🚌 Bus Icon Fix
|
||
- 🆕 `resources/[framework]/[base]/[jobs]/17mov_JobCenter/web/images/icons/bus.svg` — SVG icon lipsă (#FF1A35)
|
||
|
||
### 📚 Skills Stack Upgrade (12 fișiere)
|
||
- ✏️ Rescris complet `docs/skills-Antigravity/00-SKILLS-INDEX.md` — date reale, paths concrete
|
||
- ✏️ Rescris `SKILL-01` → `SKILL-10` — bazate pe experiența reală cu serverul
|
||
- ✏️ Rescris `COMPLETE-WORKFLOW.md` — 6 scenarii concrete
|
||
|
||
### 📋 Rulebook Workflow
|
||
- 🆕 `.agents/workflows/rulebook.md` — 10 reguli obligatorii (terminal vizibil, changelog, backup, etc.)
|
||
|
||
### 🔧 DevTeam Docs Fix
|
||
- ✏️ SKILL-01 + 00-INDEX — adăugat docs URLs: `docs.17movement.net`, `docs.t1ger.net`, `codem.gitbook.io`
|
||
|
||
---
|
||
|
||
## 2026-03-30 — NUI Simulator, Resource Comparison LOCAL vs VPS, qs-inventory Sync
|
||
|
||
### 🔬 NUI Simulator Standalone
|
||
- **Creat** `nui-simulator/` — server Node.js (Express) care scanează automat `resources/` pentru NUI pages
|
||
- Auto-detectare a **54 resurse** cu interfață web
|
||
- Interfață cu search, filtrare pe categorii, control rezoluție, panou postMessage
|
||
- Se pornește cu `node server.js --open` din folderul `nui-simulator/` (port 3200)
|
||
|
||
### 📊 Resource Comparison LOCAL vs VPS
|
||
- **Crawl complet** al `resources/` (LOCAL) vs `_preLoad/server-v2-main/resources/` (VPS live)
|
||
- **Raport**: `docs/resource_comparison.md` cu comentarii inline
|
||
- **Descoperire**: `rv-chat` (chat custom RV) este pe VPS dar **NU pe LOCAL**
|
||
- **Descoperire**: KQ plugins au paths diferite — LOCAL: `[addons]/kq_*`, VPS: `[addons]/[kq]/kq_*`
|
||
|
||
### 🖼️ qs-inventory Item Icons Sync
|
||
- Copiat **7 imagini** din VPS → LOCAL: caradvancedlockpick, carlockpick, plate, rentalpaper, screwdriver, vehiclegps, vehicletracker
|
||
- Comparat qs-inventory LOCAL vs portal — plan de update safe documentat (20 fișiere diferite, `shared/items.lua` +25KB custom)
|
||
|
||
**Fișiere create/modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `nui-simulator/server.js`, `public/index.html`, `package.json` |
|
||
| 🆕 NOU | `docs/resource_comparison.md` |
|
||
| 🆕 COPIAT | `qs-inventory/html/images/` — 7 item icons din VPS |
|
||
|
||
---
|
||
|
||
## 2026-03-29 — Wasabi Police Config Review & Cleanup
|
||
|
||
### 👮 wasabi_police — Config.policeJobs Cleanup
|
||
- **Eliminat** `'reporter'` din `Config.policeJobs` (linia 426 din config.lua)
|
||
- `reporter` era inclus default de Wasabi ca exemplu — nu este un job valid pe server
|
||
- Acum doar `'police'` rămâne activ (sheriff comentat)
|
||
- **Verificat** Cloakroom (linia 611-693): `enabled = true`, dar pe QBCore se folosește 17mov_CharacterSystem
|
||
- Notă wasabi: *"WILL NOT SHOW IN QBCORE INSTEAD USE QB-CLOTHING CONFIG!"*
|
||
- Outfiturile efective se aplică din `17mov_CharacterSystem/configs/Config.lua` → `Config.Outfits['police']`
|
||
- **Confirmat** alignment grade levels QBCore ↔ 17mov:
|
||
- `[0]` Cadet → Short Sleeve
|
||
- `[1]` Ofiter → Short Sleeve + Long Sleeve + Trooper Tan
|
||
- `[2]` Sergent → Short Sleeve + Long Sleeve + Trooper Tan + Trooper Black
|
||
- `[3]` Locotenent → Short Sleeve + Long Sleeve + Trooper Tan + Trooper Black + SWAT
|
||
- `[4]` Sef de Politie → Same as grade 3 (SWAT access)
|
||
|
||
### 👔 17mov_CharacterSystem — Outfit System Verification
|
||
- **Confirmat**: Uniformele de poliție NU apar la clothing shop-uri publice
|
||
- `Config.Outfits['police']` se afișează DOAR prin `Config.ClothingRooms` (requiredJob='police')
|
||
- Locații ClothingRooms police: LSPD Mission Row, Paleto Bay PD, Vinewood PD
|
||
- Verificare job se face la linia 285 în `stores.lua`: `job.name == v.requiredJob`
|
||
|
||
### 🔇 t1ger_tuningsystem — Console.log cleanup
|
||
- Eliminat 6× `console.log()` din `web/assets/index-DkGtvbUP.js` (funcția `_K()`)
|
||
|
||
### 🔇 t1ger_mechanic — Console.log cleanup
|
||
- Eliminat 6× `console.log()` din `web/assets/index-BFWVRtXt.js` (funcția `_K()`)
|
||
- Comentat 3× `print()` din `bridge/init.lua` (liniile 172, 175, 179): DETECTED SYSTEMS, DETECTED GARAGE SYSTEM, DETECTED VEHICLE KEYS SYSTEM
|
||
|
||
> Ambele resurse T1GER folosesc același template NUI (Vue + Naive UI). Mesaje eliminate: Initializing, App created, State management, UI components, NUI events, App mounted
|
||
|
||
### 🔇 rcore_casino — Print filter
|
||
- Adăugat print filter în `const.lua` (primul fișier ne-encrypted) care suprimă orice mesaj cu `[Casino]`
|
||
- Mesaje filtrate: `[Casino] Framework QBCore detected`, `[Casino] drunk system set to evidence`
|
||
- Metoda: override global `print()` cu check `msg:find("[Casino]")` — nu afectează alte resurse
|
||
|
||
### 🔇 t1ger_tuningsystem — Mechanic system print
|
||
- Comentat `print("has mechanic system:")` din `shared/config.lua:258` (fără debug flag)
|
||
|
||
### 🔇 pma-voice — Init prints
|
||
- Comentat 2× `print()` din `client/init/init.lua` (liniile 5, 49)
|
||
|
||
### 🔇 qs-inventory — jobs_creator warning
|
||
- Comentat `Warning()` din `client/custom/misc/jaksam.lua:5`
|
||
|
||
### ⚠️ cfx-gabz-mapdata — Eroare cosmetică (nerezolvabilă)
|
||
- `gabz_ipl_blockers.lua` e compiled bytecode → eroare la parsare, nu afectează funcționalitatea
|
||
|
||
### 🚀 start.bat — Optimizare v2.0
|
||
- Rescris `start.bat` cu layout compact (ASCII only, compatibil cmd.exe)
|
||
- Header "RED VALLEY" cu `##`, checks pe 1 linie `[OK]`, separator `=======`
|
||
- Eliminat 2× `timeout 1` delay
|
||
|
||
### 🔇 bit-driverschool — Version check dezactivat
|
||
- Comentat `version.lua` din `fxmanifest.lua:13` (broken: raporta outdated 3.5 când v3.6)
|
||
|
||
### 🔇 17mov_CharacterSystem — Banner dezactivat via config
|
||
- `DisplayAsciiArt = false`, `DisplayChangelog = false`, `DisplayFiles = false` în `configs/Config.lua`
|
||
- `Enabled = true` păstrat → se vede doar linia simplă cu versiunea
|
||
|
||
## 2026-03-29 — Wasabi Police Install & 2nd Brain Update
|
||
|
||
### 👮 wasabi_police (v1.10.8) — Instalare din _preLoad
|
||
- **Copiat** `_preLoad/wasabi-police/` → `resources/[framework]/[base]/[jobs]/[legal]/[police]/wasabi_police/` (renamed cu underscore)
|
||
- **Config**: `Config.Jail.jail = 'rcore'` — integrat cu rcore_prison
|
||
- **Items**: `bobby_pin` + `tracking_bracelet` adăugate în `qs-inventory/shared/items.lua`
|
||
- **Imagini**: `bobby_pin.png`, `handcuffs.png`, `tracking_bracelet.png` copiate în `qs-inventory/html/images/`
|
||
- **Items QBCore**: Deja existau în `qb-core/shared/items.lua` (adăugate anterior)
|
||
- **Ensure**: Automat via `ensure [jobs]` din `resources.cfg`
|
||
- **SQL**: Nu e necesar pe QBCore (SQL-urile sunt doar pt ESX)
|
||
|
||
### 🗺️ bob74_ipl Update (v2.4.2 → v2.6.0)
|
||
- **Cauză**: `SCRIPT ERROR: @bob74_ipl/client.lua:183: attempt to index a nil value (global 'CriminalEnterpriseSmeonFix')`
|
||
- **Fix**: Update complet din GitHub (https://github.com/Bob74/bob74_ipl)
|
||
- **Fișier lipsă**: `gta_mpsum2/simeonfix.lua` — definește `CriminalEnterpriseSmeonFix` (DLC Criminal Enterprise 2022)
|
||
- **DLC-uri noi**: `dlc_casino/arcade`, `dlc_money` (Money Fronts build≥3570), `dlc_mansions` (Safehouse build≥3717)
|
||
- **Dependențe**: Zero — resource standalone, fără config custom
|
||
- **Backup**: `_preLoad/bob74_ipl-v2.4.2/`
|
||
|
||
### 🔇 t1ger_mechanic — Debug off
|
||
- `Config.Debug = false` în `shared/config.lua` (era `true`)
|
||
- Elimină spam-ul din F8: Initializing, App created, State management, UI components, NUI events, App mounted
|
||
- `qs-housing`: `Config.Debug = false` în `config/main.lua` linia 1541 (era `true`)
|
||
- Elimină spam-ul din F8: BuildDoorLocks, Initialized House Config, Blip cached, inside met
|
||
|
||
### 📚 2nd Brain Full Update
|
||
- Actualizat `server_knowledge.md` — structura folderelor, pending tasks, changelog
|
||
- Actualizat `wasabi_police_reference.md` — status INSTALAT, jail='rcore', workflow completat
|
||
- Actualizat `dev_teams_api_reference.md` — wasabi_police exports/events/state bags complete
|
||
- Creat `wasabi_ambulance_reference.md` — 13 exports client, 3 server, state bags, config complet
|
||
- Sincronizat toate fișierele cu Knowledge Base
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 COPIAT | `resources/[framework]/[base]/[jobs]/[legal]/[police]/wasabi_police/` — întreg folderul |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qs-inventory/shared/items.lua` — adăugat bobby_pin, tracking_bracelet |
|
||
| ✏️ MOD | `resources/[framework]/[base]/[jobs]/[legal]/[police]/wasabi_police/game/configuration/config.lua` — jail='rcore' |
|
||
| 🆕 COPIAT | `resources/[framework]/[core]/qs-inventory/html/images/bobby_pin.png` |
|
||
| 🆕 COPIAT | `resources/[framework]/[core]/qs-inventory/html/images/tracking_bracelet.png` |
|
||
| 🔄 UPDATE | `resources/[framework]/[depends]/bob74_ipl/` — v2.4.2→v2.6.0 (GitHub full replace) |
|
||
| 🆕 NOU | `docs/wasabi_ambulance_reference.md` |
|
||
| ✏️ MOD | `docs/server_knowledge.md`, `docs/wasabi_police_reference.md`, `docs/dev_teams_api_reference.md` |
|
||
| ✏️ MOD | `docs/changelog.md`, `docs/cross_resource_modifications.md`, `docs/qs_inventory_reference.md` |
|
||
|
||
---
|
||
|
||
## 2026-03-28 — Driving School Integration & QoL Updates
|
||
|
||
### 🚗 Driving School (`bit-driverschool`) Integration
|
||
- **Keys & Engine System**: Set `Config.useKeys = true`, updated `addKeys` function to support both 1-argument (`addKeys(vehicle)`) and 2-argument (`addKeys(playerID, vehicle)`) calls. Auto-starts engine when starting test.
|
||
- **Physical License Item**: Linked driving school with `0r_idcard`. Upon passing the test, the script now automatically grants the physical `driver_license` item (`xPlayer.Functions.AddItem`) in addition to setting the QBCore metadata (`metadata.licences.driver = true`).
|
||
- **Target System**: Enabled `qb-target` for driving school NPCs (`Config.useTarget = true`) instead of 3D text.
|
||
- **Prices**: Adjusted test prices (A = $100, B = $200, C = $300).
|
||
- **Notifications**: Migrated from `qs-notify` and `codem-notification` to `17mov_Hud` native notifications (`exports['17mov_Hud']:ShowNotification`).
|
||
- **Target Fix**: Wrapped `qb-target` `RaycastCamera` in `pcall` to prevent loading screen native crashes.
|
||
|
||
### 🪪 ID Card (`0r_idcard`) Updates
|
||
- **Notifications**: Migrated notifications to `17mov_Hud` native notifications.
|
||
|
||
### 🌤️ Weather & Time Sync (`qb-weathersync`)
|
||
- **Real-Time Sync**: Disabled `Config.RealTimeSync` to allow server admins to manually control the time via Luxu Admin `/settime` without it reverting to real-world time.
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[addons]/bit-driverschool/config.lua` — keys, target, items, prices, notifications |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/0r_idcard/config.lua` — 17mov_Hud notifications |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qb-weathersync/config.lua` — disabled RealTimeSync |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-target/client.lua` — pcall on RaycastCamera |
|
||
|
||
---
|
||
## 2026-03-27 — Spawn Outfit System
|
||
|
||
### 🆕 Auto-Echipare Outfit la Spawn
|
||
- Outfit-ul se aplică **doar la primul spawn** (new character, `isNew == true`)
|
||
- Playerii care se reconectează păstrează hainele salvate în DB
|
||
- **Outfituri separate pentru male și female** — detectare automată cu `GetEntityModel` / `GetHashKey("mp_f_freemode_01")`
|
||
- **Male:** torso2=539/2, pants=200/2, arms=96/0, shoes=77/8, t-shirt=15/0
|
||
- **Female:** torso2=583/1, pants=214/1, arms=18/0, shoes=81/10, t-shirt=15/0
|
||
- **Fără mască** la ambele sexe (playerii își văd fața la creare)
|
||
- Folosește native GTA `SetPedComponentVariation` / `ClearPedProp`
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/client/functions.lua` — `spawnOutfitMale` + `spawnOutfitFemale` tables, `ApplySpawnOutfit()` cu gender detection, apelat în `Location.PlayerSpawned()` |
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/client/functions.lua` — adăugat `TriggerEvent("17mov_CharacterSystem:SaveCurrentSkin")` după `ApplySpawnOutfit()` pentru salvare în DB |
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/configs/Skin.lua` — `Skin.RememberLastOutfit` setat de la `false` la `true` (outfiturile selectate din garderobă persistă prin relog) |
|
||
|
||
> **Referințe:** `Location.PlayerSpawned` este apelat de `client/location.lua` după ce playerul alege locația de spawn. Pattern-ul de apply outfit este identic cu cel din `t1ger_mechanic/client/shop/markers/duty.lua`. `SaveCurrentSkin` triggeruiește `qb-clothing:saveSkin` care salvează în tabelul `playerskins`.
|
||
|
||
---
|
||
|
||
### 🐛 Fix: Character Delete — tabele lipsă/incompatibile în DB
|
||
- QBCore `DeleteCharacter` folosea o tranzacție MySQL atomică — un singur query eșuat bloca ștergerea completă
|
||
- **Erori:** `apartments` (tabel inexistent), `phone_messages` (fără coloana `citizenid` — qs-smartphone schema diferită)
|
||
- Comentat toate tabelele incompatibile din `playertables`, păstrate doar cele funcționale: `players`, `playerskins`, `player_outfits`, `player_vehicles`
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/server/player.lua` — comentat `apartments`, `bank_accounts`, `crypto_transactions`, `phone_invoices`, `phone_messages`, `player_contacts`, `player_houses`, `player_mails` din `playertables` array (linia 550-563) |
|
||
|
||
---
|
||
|
||
### ✏️ Character Creator & Clothing Menu — Preset-uri per context
|
||
- **Char creator** (`creator` preset) → DNA + Details (2 tabs) — playerul customizează fața, restul e spawn outfit
|
||
- **Shop / Ambulance / Boss** (`shop` preset) → Details + Clothing + Accessories (3 tabs, fără DNA)
|
||
- **Admin `/skin`** (`skinCommand` preset) → Toate 4 tabs
|
||
- **Spawn outfit pe ped în creator** — resursă standalone `17mov-plugin-char-creator` cu smart polling (citizenid tracking), per-frame outfit loop, gender-specific, zero overhead in-game
|
||
- * TODO: `spawn_mask` — item custom cu script usable (mască 134/2 male, 134/3 female)
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/configs/Skin.lua` — `Skin.Presets["creator"]` restricționat la DNA+Details, adăugat preset `shop` (3 tabs fără DNA) |
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/bridge/clothing/qb-clothing/exports.lua` — `openMenu` → preset `shop`, `openMenuCommand` → preset `skinCommand` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/shared/main.lua` — scos `id_card` + `mask` din `StarterItems` (se primesc la mugshot / TODO) |
|
||
| 🆕 NEW | `resources/[framework]/[base]/[auth]/17mov-plugin-char-creator/` — resursă standalone: citizenid tracking, smart polling (zero overhead in-game), per-frame outfit loop, gender detection |
|
||
|
||
---
|
||
|
||
### ✏️ ID Card — se primește la mugshot, nu la spawn
|
||
- `id_card` scos din `QBShared.StarterItems` — la spawn primesc doar `phone`
|
||
- Prima poză la ped-ul de headshot → primește `id_card` automat (1 singură dată per license)
|
||
- Pozele ulterioare doar actualizează poza pe card (fără item nou)
|
||
- Fix erori `0r_idcard` — `pcall` pe `getExtendedPlayer`/`useIdCard`, refresh `Framework` pentru compatibilitate cu restart qb-core
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[addons]/0r_idcard/server/events.lua` — `saveHeadshot` verifică `id_card_given` din DB, dă item 1x |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/0r_idcard/server/utils.lua` — `getExtendedPlayer` refresh `Framework` + `pcall` |
|
||
| 🗄️ SQL | `ALTER TABLE 0r_idcard ADD COLUMN id_card_given INT DEFAULT 0` |
|
||
|
||
---
|
||
|
||
## 2026-03-04 — Mechanic Job Outfit System
|
||
|
||
### 🆕 Auto-Echipare Uniformă la On/Off Duty
|
||
- **ON duty** → salvează hainele civile + pune uniforma de mecanic automat
|
||
- **OFF duty** → restaurează hainele civile
|
||
- Folosește native GTA `SetPedComponentVariation` / `SetPedPropIndex`
|
||
|
||
**Fișiere modificate/create:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[base]/[jobs]/[legal]/[mechanic]/t1ger_mechanic/client/shop/markers/duty.lua` — adăugat auto-apply/restore outfit |
|
||
| 🆕 NOU | `resources/[framework]/[base]/[jobs]/[legal]/[mechanic]/t1ger_mechanic/client/shop/markers/getoutfit.lua` — comandă admin `/getoutfit` |
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/configs/Config.lua` — `Config.Outfits['mechanic']` (grad 0-4, male+female), eliminat entry `[8]` din `Config.ClothingRooms` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/shared/jobs.lua` — label „Servicii Auto" → „Mecanic" |
|
||
| ✏️ MOD | `resources.cfg` — adăugat `ensure [stream]` |
|
||
| 🆕 NOU | `resources/[stream]/[admin-outfit]/AdminPack/fxmanifest.lua` — streaming clothing pack admin |
|
||
| 🆕 NOU | `_preLoad/AdminPack/fxmanifest.lua` — copie pre-staging |
|
||
| 🆕 NOU | `start_server.ps1` — PowerShell wrapper anti Ctrl+C |
|
||
| 🆕 NOU | `.agents/workflows/job-outfit-setup.md` — workflow refolosibil setup outfit per job |
|
||
|
||
> **Referințe:** `Config.Outfits` din `17mov_CharacterSystem` → folosit de `duty.lua` din `t1ger_mechanic`
|
||
|
||
---
|
||
|
||
## 2026-03-03 — Mechanic Job Garage & Key Management
|
||
|
||
### 🆕 Sistem Garaj Job Vehicule
|
||
- Vehicule job (flatbed) limitate la 1 per player, tracked server-side per `citizenid`
|
||
- Despawn automat la deconectare player
|
||
|
||
### 🆕 Key Management Logic
|
||
- Chei eliminate automat server-side când vehiculul job despawnează
|
||
- Flag `pendingKeyRemoval` setat de server, verificat la reconectare client
|
||
- Admin delete vehicul → șterge și cheile asociate
|
||
|
||
**Fișiere modificate:**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[base]/[jobs]/[legal]/[mechanic]/t1ger_mechanic/` — garage.lua, duty.lua |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qs-advancedgarages/fxmanifest.lua` — verificat dependințe |
|
||
|
||
> **Referință:** Logica key removal cross-resource între `t1ger_mechanic` și `qs-advancedgarages`
|
||
|
||
---
|
||
|
||
## 2026-03-03 — Bug Fixes Session (6 fix-uri)
|
||
|
||
### 🔧 Fix 1: `qs-advancedgarages` — `attempt to index a nil value (field 'db')`
|
||
- **Cauza**: `fxmanifest.lua` referea `@mysql-async/lib/MySQL.lua` (serverul folosește `oxmysql`) + versiune veche v5.0.18
|
||
- **Soluție**: Update **v5.0.18 → v5.0.20** de pe Cfx.re, schimbat linia 53
|
||
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qs-advancedgarages/fxmanifest.lua` — linia 53: `mysql-async` → `oxmysql` |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qs-advancedgarages/config/config.lua` — `Config.Locale = 'ro'` (păstrat) |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qs-advancedgarages/config/garages.lua` — garaj custom „Garaj Cazino" (păstrat) |
|
||
| 🆕 NOU | `_preLoad/quasar/qs-advancedgarages-old-5.0.18/` — backup versiune veche |
|
||
|
||
### 🔧 Fix 2: `qs-housing` — `Unknown column 'credit' in 'field list'`
|
||
- **Cauza**: Import SQL eșuat la linia 252 (`;` lipsă)
|
||
- **Soluție**: Executat manual SQL în phpMyAdmin (`red-valley`)
|
||
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ SQL | `ALTER TABLE player_houses` — adăugat coloane `credit`, `creditPrice` |
|
||
| ✏️ SQL | `ALTER TABLE house_decorations` — adăugat coloana `price` |
|
||
| ✏️ SQL | `CREATE TABLE qs_housing_furniture_shops` |
|
||
| ✏️ SQL | `ALTER TABLE player_houses, houselocations` — CONVERT TO utf8mb4 |
|
||
|
||
### 🔧 Fix 3: `17mov_CharacterSystem` — Housing/Apartments warnings
|
||
- **Cauza**: Auto-detect caută `qb-houses`/`ps-housing`, dar `qs-housing` nu e suportat
|
||
- **Soluție**: Setat manual la `standalone`
|
||
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/configs/Bridge.lua` — `Config.Housing = "standalone"`, `Config.Apartments = "standalone"` (liniile 12, 22) |
|
||
|
||
### 🔧 Fix 4: `screenshot-basic` — `dist/ui.html` lipsă
|
||
- **Cauza**: webpack compilează în memory, nu pe disk
|
||
- **Soluție**: Copiat surse noi de pe GitHub (warning cosmetic, funcționează)
|
||
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[depends]/screenshot-basic/` — actualizat surse |
|
||
| 🆕 NOU | `_preLoad/screenshot-basic/` — surse GitHub |
|
||
|
||
### 🔧 Fix 5: `codem-radio` — build lipsă
|
||
- **Cauza**: `resources/build/index.html` nu exista
|
||
- **Soluție**: Șters complet resursa incompletă
|
||
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ❌ ȘTERS | `resources/[voice]/codem-radio/` — întreg folderul |
|
||
|
||
### 🔧 Fix 6: Housing Asset Packs — SIGSEGV crash
|
||
- **Cauza**: Acumularea erorilor din `qs-advancedgarages` + `qs-housing` SQL
|
||
- **Soluție**: După fix-urile de mai sus, toate pachetele funcționează stabil
|
||
- **Testate**: `[dlc]` ✅, `[props]` ✅, `[shells]` ✅ (toate 3 împreună ✅)
|
||
|
||
---
|
||
|
||
## 2026-03-03 — 17mov CharacterSystem Update (v1.2.4 → v1.2.5)
|
||
|
||
### ✏️ Update Major — Fix bug overlay pe character select
|
||
- **Bug**: Overlay bloca click-ul pe personaj (trebuia ESC)
|
||
- **Soluție**: Update la v1.2.5 (web UI actualizat)
|
||
|
||
**Fișiere înlocuite (encrypted):**
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `17mov_CharacterSystem/client/core.lua`, `skin.lua`, `selector.lua`, `register.lua`, `loadingscreen.lua`, `photos.lua` |
|
||
| ✏️ MOD | `17mov_CharacterSystem/server/core.lua`, `selector.lua`, `register.lua`, `photos.lua`, `version.lua` |
|
||
| ✏️ MOD | `17mov_CharacterSystem/shared/core.lua`, `skingenerator.lua`, `translator.lua` |
|
||
| ✏️ MOD | `17mov_CharacterSystem/web/` — UI complet actualizat |
|
||
| ✏️ MOD | `17mov_CharacterSystem/.fxap`, `fxmanifest.lua` — v1.2.5 |
|
||
|
||
**Fișiere merged cu custom changes păstrate:**
|
||
| Acțiune | Fișier | Custom păstrat |
|
||
|---------|--------|----------------|
|
||
| ✏️ MOD | `17mov_CharacterSystem/configs/Config.lua` | `Config.Outfits['mechanic']` re-adăugat |
|
||
| ✏️ MOD | `17mov_CharacterSystem/configs/Bridge.lua` | `Config.Housing = "standalone"`, `Config.Apartments = "standalone"` |
|
||
| ✏️ MOD | `17mov_CharacterSystem/configs/Skin.lua` | Actualizat la v1.2.5 (EnableRefreshSkinCommand) |
|
||
| ✏️ MOD | `17mov_CharacterSystem/configs/Location.lua` | Opțiuni noi (EnableSpawningInHouse) |
|
||
| ✏️ MOD | `17mov_CharacterSystem/configs/Selector.lua` | Actualizat la v1.2.5 |
|
||
| ✏️ MOD | `17mov_CharacterSystem/configs/Discord.lua` | Actualizat la v1.2.5 |
|
||
| ✏️ MOD | `17mov_CharacterSystem/client/functions.lua` | Nil check fix la `FormatMoney` |
|
||
| ✏️ MOD | `17mov_CharacterSystem/client/location.lua` | Sistem locații actualizat |
|
||
| 🔁 PĂSTRAT | `17mov_CharacterSystem/locale/ro.lua` | Traduceri româneascasetup |
|
||
|
||
**Path complet**: `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/`
|
||
**Backup**: `_preLoad/17mov/17mov_CharacterSystem/`
|
||
|
||
> **Referință cross-resource:**
|
||
> - Bridge-urile depind de: `qb-core`, `illenium-appearance`, `ps-housing`, `qb-apartments`
|
||
> - `configs/Bridge.lua` controlează selectarea bridge-urilor
|
||
> - `configs/Config.lua` afectează `t1ger_mechanic/duty.lua` (outfit system)
|
||
|
||
---
|
||
|
||
## 2026-03-02 — Research & Documentație Admin Outfit
|
||
|
||
### 📋 Cercetare Luxu Admin Outfit System
|
||
- Documentat cum funcționează sistemul de outfit admin existent din Luxu
|
||
- Descoperit: Luxu **deja are** outfit system complet per staff group (DB `luxu_admin_groups`)
|
||
- Documentat pașii: Clone Yourself → Select Gender → Save din web panel
|
||
|
||
### 📋 Cercetare FiveM Clothing Streaming
|
||
- Documentat cum funcționează streaming-ul de haine custom (AdminPack)
|
||
- AdminPack = **replace pack** (înlocuiește textura `jbib_013` din gunrunning DLC)
|
||
- Notat: Necesită **FiveM Patreon Element Club Argentum** pentru 9+ playeri
|
||
|
||
### 📋 Design Outfit Stack System
|
||
- Proiectat stack-ul: Civil (L1) → Job Outfit (L2) → Admin Outfit (L3)
|
||
- Documentat edge cases și cum Luxu gestionează restaurarea
|
||
|
||
### 📋 Blacklist System
|
||
- Documentat `Skin.BlacklistedInputValues` din 17mov pentru ascundere admin jacket de la playeri
|
||
- Documentat `Skin.WhitelistedInputValues` cu identifier-based access
|
||
|
||
---
|
||
|
||
## 2026-03-02 — QBCore Server Architecture Exploration
|
||
|
||
### 📋 Explorare completă server
|
||
- Analizat **toate** resursele de pe server
|
||
- Documentat structura folderelor, dependențe inter-resurse
|
||
- Creat diagramă Mermaid cu relațiile inter-resurse
|
||
|
||
### 📋 QBCore Framework Deep-Dive
|
||
- Documentat fiecare fișier din `qb-core/` cu scopul său
|
||
- Documentat flow-ul player: Connect → Login → CreatePlayer → Functions → Logout
|
||
- Notat sistemul de permisiuni, money, jobs, gangs
|
||
|
||
### 📋 Cfx.re Portal Audit
|
||
- Auditat **toate 142 asset-urile** de pe portalul Cfx.re
|
||
- Categorisit: ✅ pe server, 📦 disponibil/neinstalat, ❌ eliminat
|
||
- Identificat update-uri necesare: `t1ger_mechanic` 3.6.7→3.6.9, `qs-inventory` 3.7.16→3.7.17, `qs-vehiclekeys` 4.0.13→4.0.29
|
||
|
||
### 📋 Resource Load Order Fix
|
||
- Identificat și corectat conflicte de load order în `resources.cfg`
|
||
|
||
### 🔧 Fix: Load Order
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources.cfg` — corectare ordine ensure |
|
||
|
||
---
|
||
|
||
## 2026-03-01 — Fix HUD / Hygiene (`0fe1eaf4`)
|
||
|
||
### 🔧 Migrare HUD — jg-hud → 17mov_Hud
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ❌ ȘTERS | `resources/[framework]/[base]/[ui]/jg-hud/` — întreg folder-ul (framework, locales, server, web, ~90 weapon images) |
|
||
| ✏️ MOD | `resources/[framework]/[depends]/ox_lib/resource/interface/client/notify.lua` — ajustare notificări |
|
||
|
||
> HUD-ul se configurează acum exclusiv din `resources/[framework]/[base]/[ui]/17mov_Hud/Config.lua`
|
||
|
||
---
|
||
|
||
## 2026-03-01 — CV Update: Admin + Police Overhaul (`9ed30cdf`)
|
||
|
||
### 🆕 Luxu Admin — Update Major
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/luxu_admin/fxmanifest.lua` |
|
||
| ✏️ MOD | `resources/luxu_admin/bridge/server/garage.lua`, `player.lua` |
|
||
| ✏️ MOD | `resources/luxu_admin/bridge/shared/inventory.lua` |
|
||
| 🆕 NOU | `resources/luxu_admin/config/commands/sv_commands.lua` |
|
||
| 🆕 NOU | `resources/luxu_admin/config/database/queries.d.ts` |
|
||
| ✏️ MOD | `resources/luxu_admin/config/database/queries.js` — refactorizat major |
|
||
| ✏️ MOD | `resources/luxu_admin/config/config.json` |
|
||
| ✏️ MOD | `resources/luxu_admin/server/index.js` — rewrite server core |
|
||
| ✏️ MOD | `resources/luxu_admin/web/assets/index.js`, `index.css` |
|
||
|
||
### 🆕 No-NPC Resource (înlocuiește garbage-fix)
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[framework]/[core]/no-npc/client.lua`, `fxmanifest.lua` |
|
||
| ❌ ȘTERS | `resources/[framework]/[core]/garbage-fix/fxmanifest.lua` |
|
||
|
||
### ✏️ QBCore Updates
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/client/functions.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/config.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/locale/ro.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/shared/items.lua` (+13 linii) |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qb-core/shared/jobs.lua` (+76 linii) |
|
||
|
||
### ✏️ QS-Inventory + Alte Modificări
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[core]/qs-inventory/client/custom/misc/robbery.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qs-inventory/config/config.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qs-inventory/locales/ro.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[core]/qs-inventory/shared/items.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[depends]/ox_lib/locales/ro.json` |
|
||
| ❌ ȘTERS | `resources/[stream]/vertex-hub/` (client.js, server.js, fxmanifest.lua) |
|
||
| ✏️ MOD | `resources/[voice]/codem-radio/Settings.lua` |
|
||
| ✏️ MOD | `server.cfg` |
|
||
|
||
---
|
||
|
||
## 2026-02-27 — Admin System + Police Job Overhaul (`2c6948ad`)
|
||
|
||
### 🆕 Luxu Admin — Prima Instalare
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/luxu_admin/` — întreg folderul (server core, bridge, config, web panel, locales) |
|
||
|
||
### 🆕 RV-MDT — Police MDT System
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[framework]/[jobs]/[legal]/[police]/rv-mdt/` — întreg folderul |
|
||
| 🆕 NOU | `rv-mdt/client/main.lua`, `server/main.lua`, `server/db.lua` |
|
||
| 🆕 NOU | `rv-mdt/server/callbacks/` — admin, bolos, calls, cases, citizens, dashboard, evidence, map, misc, roster, units, vehicles, warrants |
|
||
| 🆕 NOU | `rv-mdt/shared/config.lua`, `sql/schema.sql` |
|
||
| 🆕 NOU | `rv-mdt/html/` — css/style.css, index.html, js/app.js, locales/en.json |
|
||
| 🆕 NOU | `rv-mdt/README.md`, `STRUCTURE.md` |
|
||
|
||
> **Dependințe MDT**: `qb-core/shared/jobs.lua`, `wasabi_police`, `server.cfg`
|
||
|
||
### 🆕 17mov CharacterSystem — Update Bridge Structure (v1.2.4 → v1.2.5)
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `17mov_CharacterSystem/configs/Bridge.lua` |
|
||
| 🆕 NOU | `17mov_CharacterSystem/bridge/apartaments/` — ps-housing, qb-apartments, standalone |
|
||
| 🆕 NOU | `17mov_CharacterSystem/bridge/clothing/` — esx_skin, illenium, qb-clothing, rcore |
|
||
| 🆕 NOU | `17mov_CharacterSystem/bridge/framework/` — esx, qb (client+server) |
|
||
| 🆕 NOU | `17mov_CharacterSystem/bridge/housing/` — ps-housing, qb-houses, standalone |
|
||
| ❌ ȘTERS | `17mov_CharacterSystem/bridge/illenium.lua` — bridge vechi |
|
||
| ❌ ȘTERS | `17mov_CharacterSystem/server/location.lua` — mutat în client |
|
||
| 🆕 NOU | `17mov_CharacterSystem/shared/functions.lua` |
|
||
|
||
**Path**: `resources/[framework]/[base]/[auth]/17mov_CharacterSystem/`
|
||
|
||
### 🆕 Vehicul BMW M3 F80 (înlocuire)
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[stream]/[vehs]/bmci/` — fxmanifest, carcols, carvariations, handling, vehicles, dlctext |
|
||
| ❌ ȘTERS | `resources/[stream]/[vehs]/upf80/` — vehiculul vechi |
|
||
|
||
### ✏️ QBCore Server Core + Alte
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[framework]/[core]/qb-core/server/debug.lua` |
|
||
| ✏️ MOD | `qb-core/server/events.lua` — refactorizare majoră |
|
||
| ✏️ MOD | `qb-core/server/exports.lua`, `functions.lua`, `player.lua` |
|
||
| ✏️ MOD | `wasabi_police/game/configuration/config.lua` |
|
||
| ✏️ MOD | `server.cfg`, `start.bat` |
|
||
|
||
---
|
||
|
||
## 2026-02-19 — Update Resources & Remove mChat (`5cc48fcb`)
|
||
|
||
### ❌ Ștergere mChat
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ❌ ȘTERS | `resources/[framework]/[base]/[ui]/mChat/` — întreg folderul (client, server, html, shared, vue.js) |
|
||
|
||
### ✏️ Alte Modificări
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `rv-mdt/server/callbacks/roster.lua`, `server/main.lua` |
|
||
| ✏️ MOD | `17mov_Hud/Config.lua` |
|
||
| ✏️ MOD | `t1ger_tuningsystem/shared/config.lua` |
|
||
| ✏️ MOD | `server.cfg` |
|
||
|
||
---
|
||
|
||
## 2026-02-17 — Update QS-Inventory (`95449f19`)
|
||
|
||
### ✏️ QS-Inventory Core Update
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `qs-inventory/fxmanifest.lua`, `config/config.lua` (restructurat) |
|
||
| ✏️ MOD | `qs-inventory/html/js/app.js` + toate modulele JS |
|
||
| 🆕 NOU | `qs-inventory/server/custom/misc/SetInventoryData.lua` |
|
||
| 🆕 NOU | `qs-inventory/server/custom/misc/UseItem.lua` |
|
||
| ✏️ MOD | `qs-inventory/server/custom/misc/SaveInventory.lua` |
|
||
| 🆕 NOU | `qs-inventory/server/modules/hooks.lua` |
|
||
| ✏️ MOD | `qs-inventory/server/custom/framework/qb.lua` |
|
||
|
||
**Path**: `resources/[framework]/[core]/qs-inventory/`
|
||
|
||
---
|
||
|
||
## 2026-02-02 — Update Resources, Vehicles & TLS (`7ac0a69d`)
|
||
|
||
### ❌ Ștergere codem-pausemenu + Ferrari SF90xx
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ❌ ȘTERS | `resources/[framework]/[base]/[ui]/codem-pausemenu/` — întreg folderul |
|
||
| ❌ ȘTERS | `resources/[stream]/[vehs]/fsf90xx/` — Ferrari SF90xx |
|
||
| 🆕 NOU | `resources/[stream]/[vehs]/upf80/` — restaurat vehicul upf80 |
|
||
|
||
---
|
||
|
||
## 2026-01-19 — Add Helnius Xero24 Gas Station MLO (`26881f7b`)
|
||
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[stream]/[mlos]/[gas-stations]/helnius_xero24/` — fxmanifest, client, config, paleto_bay_RemoveIpl, stream assets |
|
||
| 🆕 NOU | `resources/[stream]/[mlos]/[gas-stations]/helnius_xero24_mapdata/` — fxmanifest, gta5.meta, doortuning.ymt |
|
||
|
||
---
|
||
|
||
## 2026-01-18 — ConnectQueue + Wasabi Police + Bank MLO (`0700b073`, `549054be`, `47e3e777`)
|
||
|
||
### 🆕 ConnectQueue Logging System
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[base]/[auth]/connectqueue/shared/sh_queue.lua` — refactorizare majoră (+407/-44) |
|
||
| 🆕 NOU | `resources/[framework]/[base]/[auth]/connectqueue/README.md` |
|
||
|
||
### 🆕 Wasabi Police Job
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[framework]/[jobs]/[legal]/[police]/wasabi_police/` — întreg folderul (client 2600 linii, server 1175 linii, config, 16 locale-uri, UI) |
|
||
|
||
### ✏️ Wasabi Bridge Updates
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[depends]/wasabi_bridge/` — fxmanifest, customize, frameworks, inventories, ui |
|
||
|
||
### 🆕 Codem Radio (înlocuiește qb-radio)
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| 🆕 NOU | `resources/[voice]/codem-radio/` — client, server, Settings, React app |
|
||
| ❌ ȘTERS | `resources/[voice]/qb-radio/` — întreg folderul |
|
||
|
||
### ✏️ 17mov CharacterSystem + Bank MLO
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `17mov_CharacterSystem/client/functions.lua` (+54 linii) |
|
||
| ✏️ MOD | `17mov_CharacterSystem/server/functions.lua` (+20 linii) |
|
||
| ❌ ȘTERS | `17mov_CharacterSystem/configs/Register.lua` |
|
||
| ❌ ȘTERS | `resources/[stream]/[mlos]/[bank]/tstudio_fleeca/` — MLO vechi |
|
||
| 🆕 NOU | `resources/[stream]/[mlos]/cfx-fm-fleeca-banks-v2/` — MLO nou Fleeca banks |
|
||
|
||
---
|
||
|
||
## 2026-01-18 — QS-Shops Update (`4a8d11a0`)
|
||
| Acțiune | Fișier |
|
||
|---------|--------|
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qs-shops/config.lua` |
|
||
| ✏️ MOD | `resources/[framework]/[addons]/qs-shops/json/shops-inventory.json` |
|
||
|
||
---
|
||
|
||
## 2026-01-07 — Curățare Cache (`581ade90`)
|
||
- Ștergere fișiere cache vechi pentru resurse multiple
|
||
|
||
---
|
||
|
||
## Referințe Cross-Resource
|
||
|
||
| Fișier Central | Resurse Afectate |
|
||
|----------------|------------------|
|
||
| `qb-core/shared/jobs.lua` | wasabi_police, wasabi_ambulance, codem-mdt, codem-dispatch, luxu_admin, t1ger_mechanic, qs-inventory |
|
||
| `qb-core/shared/items.lua` | qs-inventory, qs-shops, wasabi_police (bobby_pin, tracking_bracelet, handcuffs) |
|
||
| `qs-inventory/shared/items.lua` | wasabi_police (bobby_pin, tracking_bracelet), wasabi_ambulance (defib, medikit, sedative) |
|
||
| `qb-core/server/events.lua` | Toate resursele QBCore |
|
||
| `qb-core/server/functions.lua` | Toate resursele server-side |
|
||
| `ox_lib/locales/ro.json` | Toate notificările traduse |
|
||
| `wasabi_bridge/` | wasabi_police, wasabi_ambulance |
|
||
| `17mov_CharacterSystem/configs/Bridge.lua` | Bridge-uri clothing, apartments, housing |
|
||
| `17mov_CharacterSystem/configs/Config.lua` | t1ger_mechanic (outfit system), wasabi_police (outfit — pending) |
|
||
| `qs-inventory/config/config.lua` | Inventar, shop-uri, crafting |
|
||
| `resources.cfg` | Ensure order — ensure [jobs] încarcă automat toate job-urile |
|
||
|
||
---
|
||
|
||
## Documentație & Artifacts Create
|
||
|
||
### Fișiere pe server:
|
||
| Fișier | Path | Scop |
|
||
|--------|------|------|
|
||
| `changelog.md` | `server/changelog.md` | Acest fișier |
|
||
| `cross_resource_modifications.md` | `server/cross_resource_modifications.md` | Tracking modificări cross-resource (mechanic outfit + garage/keys) |
|
||
| `start_server.ps1` | `server/start_server.ps1` | Script pornire cu protecție anti Ctrl+C |
|
||
| `job-outfit-setup.md` | `server/.agents/workflows/job-outfit-setup.md` | Workflow pas-cu-pas setup outfit per job |
|
||
| `connectqueue/README.md` | `resources/.../connectqueue/README.md` | Documentație logging connectqueue |
|
||
| `rv-mdt/README.md` | `resources/.../rv-mdt/README.md` | Documentație Police MDT |
|
||
| `rv-mdt/STRUCTURE.md` | `resources/.../rv-mdt/STRUCTURE.md` | Structura fișierelor rv-mdt |
|
||
|
||
### Artifacts din sesiunile Antigravity:
|
||
| Artifact | Sesiunea | Ce conține |
|
||
|----------|----------|------------|
|
||
| `walkthrough.md` | Sesiune 08cbc7f9 (02 Mar) | **QBCore Server Architecture** — structura completă, framework deep-dive, toate resursele, developer directory, DB schema, permissions, money system |
|
||
| `walkthrough.md` | Sesiune 31ed245f (02-04 Mar) | **Fix History** — 6 bug fixes detaliate + structura server + DB reference + rămase de rezolvat |
|
||
| `implementation_plan.md` | Sesiune 31ed245f | **17mov Update Plan** v1.2.4→v1.2.5 — comparison results, custom changes, merge strategy, verification steps |
|
||
| `server_index.md` | Sesiune 31ed245f | **Resource Index** complet — toate resursele, versiuni, dependențe, exports, comenzi, Cfx.re portal audit (142 assets), update-uri necesare |
|
||
| `quasar_documentation.md` | Sesiune 31ed245f | **Quasar Store Docs** — documentație detaliată qs-inventory, qs-housing, qs-garages, qs-shops, qs-smartphone, qs-vehiclekeys |
|
||
| `research_admin_outfit.md` | Sesiune 31ed245f | **Admin Outfit Research** — Luxu outfit system, AdminPack streaming, blacklist system, outfit stack design |
|
||
| `research_fivem_clothing_streaming.md` | Sesiune 31ed245f | **FiveM Clothing Streaming** — cum funcționează streaming-ul, naming conventions, Patreon requirement |
|
||
| `research_luxu_admin.md` | Sesiune 31ed245f | **Luxu Admin Research** — funcționalități, configurare, exports |
|
||
| `research_17mov_character_system.md` | Sesiune 31ed245f | **17mov Research** — structura resursă, configs, bridge system |
|
||
|
||
---
|
||
|
||
## Rămase de Rezolvat
|
||
|
||
- [x] **wasabi_police install**: Copiat din _preLoad, jail='rcore', items adăugate (2026-03-29)
|
||
- [x] **bob74_ipl update**: v2.4.2→v2.6.0 din GitHub — fix CriminalEnterpriseSmeonFix (2026-03-29)
|
||
- [x] **Synapse Map update**: wasabi_police + wasabi_ambulance nodes + conexiuni (2026-03-29)
|
||
- [x] **wasabi_police config review**: Eliminat 'reporter' din policeJobs, verificat cloakroom (QBCore uses 17mov) (2026-03-29)
|
||
- [x] **wasabi_police outfit**: Config.Outfits['police'] EXISTA DEJA în 17mov (grade 0-4, male+female, 5 variante) (2026-03-29)
|
||
- [x] **t1ger_tuningsystem debug**: Eliminat 6× console.log din NUI JS (2026-03-29)
|
||
- [ ] **Webhooks** `qs-smartphone-pro`: configurare în `server/custom/webhooks/webhooks.lua`
|
||
- [ ] **Webhooks** `qs-advancedgarages`: configurare în `server/custom/misc/*.lua`
|
||
- [ ] **oxmysql oversized query**: `SELECT * FROM crypto_history` (2339 results) — trebuie paginare sau LIMIT
|
||
- [ ] **Version updates**: `qs-inventory` 3.7.16→3.7.17, `qs-vehiclekeys` 4.0.13→4.0.29, `t1ger_mechanic` 3.6.7→3.6.9
|
||
- [ ] **Admin outfit setup**: Configurare Luxu panel Clone Yourself + testare outfit stack
|
||
- [ ] **Admin jacket blacklist**: Adăugare în `Skin.BlacklistedInputValues`
|