684 lines
37 KiB
Markdown
684 lines
37 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-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 (454.68, -990.89, 29.69), Paleto Bay PD (314.76, 671.78, 14.73), Vinewood PD (-77.59, -129.17, 5.03)
|
|||
|
|
- 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): `Starting script initialization`, `Script initialization finished`
|
|||
|
|
- Nu au debug flag (`voice_debugMode` convar nu le acoperă)
|
|||
|
|
|
|||
|
|
### 🔇 qs-inventory — jobs_creator warning
|
|||
|
|
- Comentat `Warning()` din `client/custom/misc/jaksam.lua:5` (fără debug flag)
|
|||
|
|
|
|||
|
|
### ⚠️ cfx-gabz-mapdata — Eroare cosmetică (nerezolvabilă)
|
|||
|
|
- `gabz_ipl_blockers.lua` e compiled Lua bytecode → eroare la parsare: `unexpected symbol near '<\180>'`
|
|||
|
|
- Nu afectează funcționalitatea, e eroare cosmetică din asset-pack Cfx.re
|
|||
|
|
|
|||
|
|
### 🔧 rfc_los_santos_customs — doortuning.ymt restaurat
|
|||
|
|
- Warning: `could not find file doortuning.ymt (defined in fxmanifest.lua:21)`
|
|||
|
|
- **Fix**: Copiat `doortuning.ymt` (54KB) din `_preLoad/rfc_los_santos_customs/rfc_los_santos_customs/`
|
|||
|
|
- Fișierul controlează comportamentul ușilor (viteză, forță) din Los Santos Customs MLO
|
|||
|
|
|
|||
|
|
### 📝 soloty-southside-custom — Documentat
|
|||
|
|
- MLO-ul **Mechanic Shop** (South Side Customs) — locația principală a job-ului `t1ger_mechanic`
|
|||
|
|
- Asset oversized (59 MiB shell) — normal pentru interior detaliat, nu necesită fix
|
|||
|
|
|
|||
|
|
### 🚀 start.bat — Optimizare v2.0
|
|||
|
|
- Rescris complet `start.bat` cu layout compact și profesional
|
|||
|
|
- Header ASCII "RED VALLEY" cu `##` characters (compatibil cmd.exe, fără Unicode)
|
|||
|
|
- Checks pe o singură linie: `[OK] Config : path` în loc de 3-5 linii
|
|||
|
|
- Separator clar `=======` între launcher și FXServer output
|
|||
|
|
- Info compactă: Artifact + Data dir pe 2 linii aliniate
|
|||
|
|
- Eliminat 2× `timeout 1` (0 delay la startup)
|
|||
|
|
- Rezultat: ~35 linii launcher → ~15 linii compacte
|
|||
|
|
- Credit păstrat: `vlxre.cata` în header
|
|||
|
|
|
|||
|
|
### 🔇 bit-driverschool — Version check dezactivat
|
|||
|
|
- Comentat `version.lua` din `fxmanifest.lua:13`
|
|||
|
|
- Motivul: version check prost scris (compara `==` în loc de `>=`), raporta "outdated 3.5" când versiunea locală e 3.6
|
|||
|
|
- Eliminat 5 linii de noise din consolă
|
|||
|
|
|
|||
|
|
### 🔇 17mov_CharacterSystem — Banner + changelog dezactivate
|
|||
|
|
- `Config.VersionCheck.DisplayAsciiArt = false` în `configs/Config.lua:8`
|
|||
|
|
- `Config.VersionCheck.DisplayChangelog = false` (linia 9)
|
|||
|
|
- `Config.VersionCheck.DisplayFiles = false` (linia 10)
|
|||
|
|
- `Enabled = true` păstrat — se afișează doar linia simplă cu versiunea
|
|||
|
|
- Eliminat ~25 linii de ASCII art + changelog din consolă
|
|||
|
|
|
|||
|
|
## 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)
|
|||
|
|
- [ ] **wasabi_police config review**: Verificare Config.policeJobs (scoatem 'reporter'?), cloakroom outfits
|
|||
|
|
- [ ] **wasabi_police outfit**: Adăugare Config.Outfits['police'] în 17mov_CharacterSystem
|
|||
|
|
- [ ] **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`
|