Fivelua - Pedscale SYSTEM [ESCROW]

Fivelua - Pedscale SYSTEM [ESCROW]
  • Fivelua - Pedscale SYSTEM [ESCROW]
  • Fivelua - Pedscale SYSTEM [ESCROW]

This item is free.

Add to Basket

# 📏 Five Lua Scale - Advanced 3D Ruler & Biometric Ped Scale System

---

## 🌐 [EN] English Documentation

### 📌 Overview

**Five Lua Scale** is a high-performance, biometric ped scaling script designed for FiveM servers (QBCore & ESX). It enables players and administrators to adjust character physical height and weight proportions with real-time visual feedback, an interactive **3D in-game ruler (cetvel)**, orbital camera controls, and a sleek **Admin Management Dashboard**.

---

### ✨ Key Features

  • **Interactive 3D Ruler (Cetvel)**:

  - Renders a live 3D holographic laser ruler directly beside the character.

  - Precise millimeter & centimeter measurement lines.

  - Configurable **MIN indicator line & text badge** to prevent unrealistic character shrinking.

  • **360° Free Orbital Camera**:

  - Left-click drag to rotate camera around ped.

  - Right-click drag for smooth vertical panning (eye-level to full body).

  - Mouse scroll for dynamic zoom in/out.

  • **Modern Glassmorphic NUI**:

  - Dual measurement units: **Metric (cm/kg)** and **Imperial (ft-in/lbs)**.

  - 4 One-Click Body Presets: *Slim*, *Normal*, *Heavy*, *Athletic*.

  - Real-time biometric display and instant server-synchronized changes.

  • **Multi-Character Architecture**:

  - Saved distinctly per `citizenid` (QBCore) or `identifier` (ESX). Multiple characters belonging to the same player maintain their own distinct body scales without mixing up.

  • **Comprehensive Admin Panel (`/allpedscale`)**:

  - Tablet animation upon opening.

  - Live table of all scaled players with real-time online/offline indicators.

  - Search by name, ID, or license.

  - Edit height/weight scale with live update.

  - Reset scale back to default (1.00m).

  - Add players and grant modification rights (by Server ID or offline CitizenID/License).

  - Increment / decrement remaining rights count.

  - Profile Avatars: Steam, Discord bot avatar, Live Ped Mugshot, or Initials.

  • **Security & Modularity**:

  - `shared/server_config.lua`: Sensitive keys (**Steam Web API Key**, **Discord Bot Token**) are kept strictly server-side and never sent to clients.

  - `editable/c_framework.lua` & `editable/s_framework.lua`: Open framework adapters supporting **QBCore**, **ESX**, **ox_lib**, custom notifications, and tablet animations.

---

### ⚙️ Configuration Guide

#### 1. Public Configuration (`shared/config.lua`)

| Setting | Type | Description |

| :--- | :--- | :--- |

| `FiveLuaCfg.Framework` | `string` | `'qbcore'` or `'esx'` (Auto-detected if left default). |

| `FiveLuaCfg.NotifyType` | `string` | Notification system: `'qb'`, `'esx'`, `'ox'`, or `'chat'`. |

| `FiveLuaCfg.Locale` | `string` | UI language: `'tr'` (Turkish) or `'en'` (English). Translations in `shared/locales.lua`. |

| `FiveLuaCfg.CommandName` | `string` | Command to open player scale menu (Default: `"pedscale"`). |

| `FiveLuaCfg.AllCommandName` | `string` | Command to open admin dashboard (Default: `"allpedscale"`). |

| `FiveLuaCfg.RestrictedAccess` | `boolean` | `true`: Requires admin permission or granted rights. `false`: Open to all players. |

| `FiveLuaCfg.AllowedIdentifiers` | `table` | List of authorized Steam Hex, Discord ID, License, or FiveM IDs. |

| `FiveLuaCfg.AllowedGroups` | `table` | Server permission groups (e.g. `{"admin", "god"}`). |

| `FiveLuaCfg.ShowMinIndicator` | `boolean` | `true`: Shows red MIN guideline on 3D ruler. `false`: Hides it completely. |

| `FiveLuaCfg.ShowMinText` | `boolean` | `true`: Displays "MIN (1.44M)" badge on ruler. `false`: Only keeps the guideline. |

| `FiveLuaCfg.Limits` | `table` | Min/Max scale limits for Height and Weight. |

| `FiveLuaCfg.PlayerNameType` | `string` | Profile name source in player menu: `'steam'`, `'discord'`, or `'rp'`. |

| `FiveLuaCfg.PlayerAvatarType` | `string` | Profile avatar source in player menu: `'steam'`, `'discord'`, `'mugshot'`, or `'initials'`. |

| `FiveLuaCfg.AdminPanelNameType` | `string` | Profile name source in admin panel: `'steam'`, `'discord'`, or `'rp'`. |

| `FiveLuaCfg.AdminPanelAvatarType` | `string` | Profile avatar source in admin panel: `'steam'`, `'discord'`, or `'initials'`. |

| `FiveLuaCfg.EnableAutoGarageDoors` | `boolean` | `true`: Automatically opens listed gates/doors when ped approaches. `false`: Disabled. |

| `FiveLuaCfg.GarageDoorModels` | `table` | Array of door prop model hashes handled by the automatic door opener. |

#### 2. Sensitive Server Configuration (`shared/server_config.lua`)

```lua

FiveLuaCfg = FiveLuaCfg or {}

-- Steam Web API Key (Get yours from https://steamcommunity.com/dev/apikey)

FiveLuaCfg.SteamApiKey = "YOUR_STEAM_API_KEY_HERE"

-- Discord Bot Token (Required if Discord avatar/name resolution is used)

FiveLuaCfg.DiscordBotToken = "YOUR_DISCORD_BOT_TOKEN_HERE"

-- Discord Webhook URL (Logs rights grants, admin adjustments, scale changes, resets & dates)

FiveLuaCfg.DiscordWebhook = "YOUR_DISCORD_WEBHOOK_URL_HERE"

```

---

### 🚀 Installation Steps

  1. **Move Resource**:

   Place the folder into your server resources:

   `resources/[meslek]/fivelua-pedscale`

  1. **Database Import**:

   Import **`fivelua_pedscale.sql`** into your database using HeidiSQL or phpMyAdmin:

   ```sql

   CREATE TABLE IF NOT EXISTS `fivelua_pedscale` (

       `citizenid` varchar(64) NOT NULL,

       `license` varchar(64) DEFAULT NULL,

       `char_name` varchar(100) DEFAULT 'Bilinmiyor',

       `steam_name` varchar(100) DEFAULT 'Bilinmiyor',

       `steam_avatar` varchar(500) DEFAULT NULL,

       `discord_name` varchar(100) DEFAULT 'Bilinmiyor',

       `discord_profile` varchar(255) DEFAULT NULL,

       `discord_avatar` varchar(500) DEFAULT NULL,

       `scale_h` decimal(4,2) DEFAULT 1.00,

       `scale_w` decimal(4,2) DEFAULT 1.00,

       `has_right` tinyint(1) DEFAULT 0,

       `rights_count` int(11) DEFAULT 0,

       `given_by_name` varchar(100) DEFAULT NULL,

       `given_by_license` varchar(64) DEFAULT NULL,

       `created_at` timestamp NULL DEFAULT current_timestamp(),

       `updated_at` timestamp NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),

       PRIMARY KEY (`citizenid`),

       KEY `idx_license` (`license`)

   ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

   ```

  1. **Configure Settings**:

   - Open `shared/config.lua` and set your framework, language, limits, and admin identifiers.

   - Open `shared/server_config.lua` and set your **Steam API Key** and **Discord Bot Token**.

  1. **Start Resource**:

   Add the start line to your `server.cfg`:

   ```cfg

   ensure fivelua-pedscale

   ```

---

### 🎮 In-Game Commands

- `/pedscale` - Opens personal biometric height and weight adjustment screen.

- `/allpedscale` - Opens Admin Management Panel (Admins only).

---

---

## 🇹🇷 [TR] Türkçe Dokümantasyon

### 📌 Genel Bakış

**Five Lua Scale**, FiveM sunucuları (QBCore & ESX) için geliştirilmiş, yüksek performanslı ve biyometrik karakter boy/kilo ölçeklendirme scriptidir. Oyuncuların ve yöneticilerin karakter boyutlarını canlı görsel geri bildirim, oyun içi interaktif **3D lazer cetvel**, serbest orbital kamera kontrolleri ve gelişmiş bir **Yönetici Paneli** ile ayarlamasını sağlar.

---

### ✨ Öne Çıkan Özellikler

  • **İnteraktif 3D Lazer Cetvel**:

  - Karakterin yanında 3D lazer cetvel oluşturur.

  - Milimetrik ve santimetrik hassas ölçüm çizgileri.

  - Karakterin aşırı küçültülmesini engelleyen ve konfigürasyondan açılıp kapatılabilen **kırmızı MIN gösterge çizgisi ve metin kutucuğu**.

  • **360° Serbest Orbital Kamera**:

  - Sol tık + sürükle: Ped etrafında kamerayı döndürme.

  - Sağ tık + sürükle: Yukarı/aşağı dikey kamera kaydırma (göz hizasından ayaklara kadar).

  - Mouse tekerleği: Pürüzsüz yakınlaşma / uzaklaşma (zoom).

  • **Modern Glassmorphic NUI Arayüzü**:

  - İki ölçü birimi: **Metrik (cm/kg)** ve **İmperial (ft-in/lbs)**.

  - 4 Tek Tıkla Hazır Vücut Tipi: *Zayıf*, *Normal*, *Kilolu*, *Atletik*.

  - Anlık biyometrik göstergeler ve sunucuyla senkronize gerçek zamanlı ped matrisi.

  • **Çoklu Karakter Desteği**:

  - Ölçekler oyuncunun `citizenid` (QBCore) veya `identifier` (ESX) kimliğine kaydedilir. Aynı oyuncunun 1. ve 2. karakterleri birbirine karışmaz, her karakterin boyu bağımsız kalır.

  • **Kapsamlı Yönetici Paneli (`/allpedscale`)**:

  - Panel açıldığında tablet animasyonu ve prop kullanımı.

  - Oyuncu listesi, arama motoru (İsim, ID, Lisans) ve çevrimiçi/çevrimdışı durumu.

  - Canlı boy & kilo ölçek düzenleme ve sunucuya anında senkronize etme.

  - Oyuncunun ölçeğini tek tıkla varsayılana (1.00m) sıfırlama.

  - ID veya lisans girerek oyuncu ekleme ve düzenleme hakkı tanımlama.

  - Kalan hak sayısını artırma / azaltma.

  - Profil Avatarları: Steam, Discord bot avatarı, Canlı Ped Mugshot veya İnisiyaller.

  • **Güvenlik ve Modülerlik**:

  - `shared/server_config.lua`: **Steam Web API Key** ve **Discord Bot Token** istemcilere (client) gönderilmez, sunucu tarafında güvenle saklanır.

  - `editable/c_framework.lua` & `editable/s_framework.lua`: Açık framework köprüsü (**QBCore**, **ESX**, **ox_lib**, özel bildirimler ve tablet animasyonu).

---

### ⚙️ Ayarlar & Konfigürasyon

#### 1. Genel Konfigürasyon (`shared/config.lua`)

| Ayar | Tip | Açıklama |

| :--- | :--- | :--- |

| `FiveLuaCfg.Framework` | `string` | `'qbcore'` veya `'esx'` (Varsayılan olarak otomatik algılanır). |

| `FiveLuaCfg.NotifyType` | `string` | Bildirim türü: `'qb'`, `'esx'`, `'ox'` veya `'chat'`. |

| `FiveLuaCfg.Locale` | `string` | Dil seçeneği: `'tr'` (Türkçe) veya `'en'` (İngilizce). Çeviriler `shared/locales.lua` dosyasındadır. |

| `FiveLuaCfg.CommandName` | `string` | Oyuncu ölçek menüsü komutu (Varsayılan: `"pedscale"`). |

| `FiveLuaCfg.AllCommandName` | `string` | Yönetici paneli komutu (Varsayılan: `"allpedscale"`). |

| `FiveLuaCfg.RestrictedAccess` | `boolean` | `true`: Hak veya admin yetkisi gerekir. `false`: Herkes kullanabilir. |

| `FiveLuaCfg.AllowedIdentifiers` | `table` | Yetkili Steam Hex, Discord ID, License veya FiveM ID listesi. |

| `FiveLuaCfg.AllowedGroups` | `table` | Sunucu yetki grupları (Örn: `{"admin", "god"}`). |

| `FiveLuaCfg.ShowMinIndicator` | `boolean` | `true`: Cetveldeki kırmızı MIN çizgisini açar. `false`: Tamamen gizler. |

| `FiveLuaCfg.ShowMinText` | `boolean` | `true`: Cetveldeki "MIN (1.44M)" yazısını gösterir. `false`: Sadece çizgiyi bırakır. |

| `FiveLuaCfg.Limits` | `table` | Minimum ve maksimum boy/kilo ölçek sınırları. |

| `FiveLuaCfg.PlayerNameType` | `string` | Oyuncu menüsü profil isim kaynağı: `'steam'`, `'discord'` veya `'rp'`. |

| `FiveLuaCfg.PlayerAvatarType` | `string` | Oyuncu menüsü profil avatar kaynağı: `'steam'`, `'discord'`, `'mugshot'` veya `'initials'`. |

| `FiveLuaCfg.AdminPanelNameType` | `string` | Yönetici paneli isim kaynağı: `'steam'`, `'discord'` veya `'rp'`. |

| `FiveLuaCfg.AdminPanelAvatarType` | `string` | Yönetici paneli avatar kaynağı: `'steam'`, `'discord'` veya `'initials'`. |

| `FiveLuaCfg.EnableAutoGarageDoors` | `boolean` | `true`: Ped yaklaştığında listedeki garaj kapılarını otomatik açar. `false`: Devre dışı. |

| `FiveLuaCfg.GarageDoorModels` | `table` | Otomatik açılacak garaj kapısı prop model hash listesi. |

#### 2. Hassas Sunucu Konfigürasyonu (`shared/server_config.lua`)

```lua

FiveLuaCfg = FiveLuaCfg or {}

-- Steam Web API Anahtarı (https://steamcommunity.com/dev/apikey adresinden temin edilir)

FiveLuaCfg.SteamApiKey = "STEAM_API_KEYINIZ_BURAYA"

-- Discord Bot Token (Profilde Discord avatar/ismi kullanılacaksa gereklidir)

FiveLuaCfg.DiscordBotToken = "DISCORD_BOT_TOKENINIZ_BURAYA"

-- Discord Webhook Günlüğü (Kime hak verildi, hangi admin verdi, boy/kilo düzenlemeleri, sıfırlamalar ve tarihler)

FiveLuaCfg.DiscordWebhook = "DISCORD_WEBHOOK_URLNIZ_BURAYA"

```

---

### 🚀 Kurulum Adımları

  1. **Dosyaları Yükleyin**:

   Klasörü sunucunuzun `resources` dizinine taşıyın:

   `resources/[meslek]/fivelua-pedscale`

  1. **Veritabanı Kurulumu**:

   Paket içerisindeki **`fivelua_pedscale.sql`** dosyasını veritabanınıza (HeidiSQL veya phpMyAdmin) okutun.

  1. **Ayarları Yapılandırın**:

   - `shared/config.lua` dosyasından dil, framework, sınırlar ve yetkili ID'leri ayarlayın.

   - `shared/server_config.lua` dosyasından **Steam API Key** ve **Discord Bot Token** bilgilerinizi girin.

  1. **Sunucu Başlatma**:

   `server.cfg` dosyanıza şu satırı ekleyin:

   ```cfg

   ensure fivelua-pedscale

   ```

---

### 🎮 Oyun İçi Komutlar

- `/pedscale` - Karakter boy ve kilo ölçeklendirme arayüzünü açar.

- `/allpedscale` - Yönetici Yönetim Panelini açar (Sadece yetkili yöneticiler).

---