1
0
Fork 0
forked from Simnation/Main
This commit is contained in:
Nordi98 2025-08-13 20:20:58 +02:00
parent d6225ef198
commit c6a65284c3
117 changed files with 3856 additions and 0 deletions

Binary file not shown.

View file

@ -0,0 +1,128 @@
# 📦 TStudio ZMapData - Interior & Compatibility Management
A comprehensive FiveM resource for managing interior configurations, entity sets, and automatic compatibility patches for TStudio map resources.
## 🚀 Features
- **Interior Management**: Automated interior blocking and entity set configuration
- **Compatibility Patches**: Intelligent patch system for map combinations
- **Floor Management**: Dynamic floor loading for multi-level interiors
- **Privacy Controls**: Interactive privacy glass controls
- **Debug Support**: Comprehensive debugging tools
## 🔧 Server Requirements
Before installation, ensure your server meets these requirements:
| Requirement | Minimum Version |
|-------------|----------------|
| **FXServer Artifact** | `7290` or higher |
| **Game Build** | `3258` or higher |
| **Recommended** | txAdmin for resource management |
---
## 🔧 Configuration
### Supported Map Combinations
This resource automatically detects and applies compatibility patches for:
#### TStudio Maps
- Mission Row Park combinations
- Opium Nights integrations
- Legion Square compatibility
- Tropical Heights support
- Pillbox Medical combinations
#### Third-Party Maps
- **Kiiya MRPD**: Comprehensive compatibility with all TStudio maps
- **Fiv3Devs**: Pillbox and other map integrations
- **FM Maps**: MRPD compatibility patches
### Interior Blocking
Automatically blocks conflicting default GTA interiors:
- Fleeca Banks (6 locations)
- Ammunation stores (11 locations)
- Tattoo parlors (4 locations)
---
## 📦 Installation Steps
### 1. Prepare Resource Folders
Create the following folder structure in your `resources` directory:
```
resources/
├── [tstudio_maps]/
└── [_tstudio_maps_patches]/
```
### 2. Install Resources
- **Drag and drop** all `tstudio_*` resources into `[tstudio_maps]/` folder
- **Drag and drop** all `tstudio_zpatch_*` resources into `[_tstudio_maps_patches]/` folder
### 3. Configure server.cfg
Add this line to your `server.cfg`:
```cfg
ensure [tstudio_maps]
```
### 4. Finalize Installation
1. **Clear your server cache** after installation
2. **Restart your server**
> ⚠️ **Important:** Do not manually start the patches folder - our system handles this automatically!
---
## 🔄 Update Process
Follow these steps to update your resources:
1. **Delete** old `tstudio_*` resources
2. **Replace** with new versions
3. **Clear** server cache
4. **Restart** server
---
## <20> Performance Tips
### Load Order Priority
- Load `tstudio_zmapdata` and `tstudio_audioocclusion` **first**
- Maintain original file structure
- Test on development server before production deployment
### Best Practices
- ✅ Keep original filenames and folder structure
- ✅ Clear cache after each update
- ✅ Use txAdmin for easier management
- ❌ Don't rename resources or files
- ❌ Don't modify folder structure
---
## 🆘 Support & Community
Need help? Join our community:
[![Discord](https://img.shields.io/badge/Discord-Join%20Server-7289da?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/tstudio)
**🌐 Official Discord:** [https://discord.gg/tstudio](https://discord.gg/tstudio)
---
<div align="center">
**Made with ❤️ by TStudio**
</div>

View file

@ -0,0 +1,655 @@
-- ## Interior Configurations
Config = {
Debug = false, -- Set to true to enable debug prints
-- EntitySets define the interior configurations for various locations
EntitySets = {
{
name = "Laundromat Dollar Pills Paleto Bay",
coords = vector3(-44.39701, 6453.24756, 32.15056),
ipl = "tstudio_laundromat_paleto",
entitySets = {
{name = "door_open", enable = true}, -- Enable the door_open entity set
{name = "door_closed", enable = false} -- Disable the door_closed entity set
}
}, {
name = "Laundromat Dollar Pills Davis",
coords = vector3(62.1981468, -1604.00537, 30.2375851),
ipl = "tstudio_laundromat_dollar_pills",
entitySets = {
{name = "door_open", enable = false}, -- Disable the door_open entity set
{name = "door_closed", enable = true} -- Enable the door_closed entity set
}
}, {
name = "Laundromat Dollar Pills Banyon Canyon",
coords = vector3(-3062.18, 630.528, 8.03883),
ipl = "tstudio_laundromat_bc",
entitySets = {
{name = "door_open", enable = true}, -- Enable the door_open entity set
{name = "door_closed", enable = false} -- Disable the door_closed entity set
}
}, {
name = "Jurassic Jackpot",
coords = vector3(-247.246368, -919.344238, 40.5292854),
ipl = "johanni_jurassic_jackpot_milo",
entitySets = {
{name = "casino_table_yes_w_car_podium", enable = true}, -- Enable the casino_table_yes_w_car_podium entity set
{name = "casino_table_no_w_car_podium", enable = false}, -- Enable the casino_table_no_w_car_podium entity set
{name = "casino_table_yes", enable = false}, -- Enable the casino_table_yes entity set
{name = "casino_table_no", enable = false} -- Disable the casino_table_no entity set
}
}, {
name = "VHotel Estate",
coords = vector3(-1354.21887, -1071.3999, 9.128438),
ipl = "johanni_vhotel_milo_",
entitySets = {
{name = "r16_casino_slots_on", enable = true}, -- Enable the casino slots entity set
{name = "r2_r3_pool_tables_on", enable = true} -- Enable the pool tables entity set
}
}, {
name = "Fleeca Bank Vinewood",
coords = vector3(-355.435852, -48.5326, 48.1063843),
ipl = "uniqx_flecca_l1_milo_",
entitySets = {
{name = "fleeca_vaultprops", enable = true}, -- Enable the casino slots entity set
}
}, {
name = "Fleeca Bank Vinewood (Lower Level)",
coords = vector3(309.74646, -277.644165, 53.2345963),
ipl = "uniqx_flecca_l2_milo_",
entitySets = {
{name = "fleeca_vaultprops", enable = true}, -- Enable the casino slots entity set
}
}, {
name = "Fleeca Bank Legion Square",
coords = vector3(145.416824, -1039.277, 28.4378834),
ipl = "uniqx_flecca_l3_milo_",
entitySets = {
{name = "fleeca_vaultprops", enable = true}, -- Enable the casino slots entity set
}
}, {
name = "Fleeca Bank Movie Studio",
coords = vector3(-1216.7616, -333.000763, 36.85084),
ipl = "uniqx_flecca_l4_milo_",
entitySets = {
{name = "fleeca_vaultprops", enable = true}, -- Enable the casino slots entity set
}
}, {
name = "Fleeca Bank East Highway",
coords = vector3(-2962.59131, 478.238037, 14.7668953),
ipl = "uniqx_flecca_l5_milo_",
entitySets = {
{name = "fleeca_vaultprops", enable = true}, -- Enable the casino slots entity set
}
}, {
name = "Fleeca Bank Sandy Shores",
coords = vector3(1179.74475, 2706.985, 37.15784),
ipl = "uniqx_flecca_l6_milo_",
entitySets = {
{name = "fleeca_vaultprops", enable = true}, -- Enable the casino slots entity set
}
},
-- #########################################
-- Pearls Resort Entity Set Configuration
-- #########################################
{
name = "Villa Small Interior 01",
coords = vector3(-1919.861694, -1461.563599, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_01_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 02",
coords = vector3(-1938.779663, -1500.747437, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_02_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 03",
coords = vector3(-1964.696533, -1518.412964, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_03_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 04",
coords = vector3(-1994.894653, -1474.635742, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_04_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 05",
coords = vector3(-1969.661743, -1458.650879, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_05_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 06",
coords = vector3(-2050.360840, -1427.984985, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_06_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 07",
coords = vector3(-2038.969727, -1400.422729, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_07_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 08",
coords = vector3(-2098.611572, -1406.019897, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_08_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 09",
coords = vector3(-2085.950684, -1377.324097, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_09_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Small Interior 10",
coords = vector3(-2050.601318, -1351.971924, 2.169187),
ipl = "tstudio_jhn_resort_int_villa_s_10_milo_",
entitySets = {
{name = "villa_s_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Large Interior 01",
coords = vector3(-2062.492920, -1498.251099, 2.171660),
ipl = "tstudio_jhn_resort_int_villa_l_01_milo_",
entitySets = {
{name = "villa_l_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Large Interior 02",
coords = vector3(-2013.281982, -1518.893188, 2.171660),
ipl = "tstudio_jhn_resort_int_villa_l_02_milo_",
entitySets = {
{name = "villa_l_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Villa Large Interior 03",
coords = vector3(-2090.989990, -1453.017822, 2.171660),
ipl = "tstudio_jhn_resort_int_villa_l_03_milo_",
entitySets = {
{name = "villa_l_props_yes", enable = true}, -- Enable this entity set
{name = "villa_s_props_no", enable = false} -- Disable this entity set
}
},
{
name = "Pearls Restaurant",
coords = vector3(-1934.319580, -1334.520142, 2.050076),
ipl = "tstudio_jhn_resort_int_pearls_milo_",
entitySets = {
{name = "casino_table_slots_wheel_yes", enable = true}, -- Enable this entity set
{name = "enable_3d_logos", enable = true}, -- Enable this entity set
}
},
},
PrivacySwitch = {
positions = {
vector3(306.003, -568.511, 63.181), -- Office 1
vector3(305.963, -568.432, 67.184), -- Office 2
vector3(306.056, -568.902, 59.229) -- etc.
},
entitySetA = "r7_privacy_off",
entitySetB = "r7_privacy_on",
marker = {type = 6, r = 19, g = 87, b = 66, alpha = 100},
range = 2
},
-- CompatibilityPatches define fixes for specific combinations of maps
CompatibilityPatches = {
-- ===========================================
-- TStudio Maps Compatibility Patches
-- ===========================================
{
name = "Fix for Opium Nights & LSI Square",
requiredMaps = {"tstudio_opium_nights", "tstudio_lsi_square"},
fixResource = "tstudio_zpatch_opium_lsis" -- Resource to apply the fix
}, {
name = "Fix for Opium Nights & Bennys Racetrack",
requiredMaps = {"tstudio_opium_nights", "tstudio_bennys_racetrack"},
fixResource = "tstudio_zpatch_opium_racetrack" -- Resource to apply the fix
}, {
name = "Fix for Opium Nights, Bennys Racetrack & LSI Square",
requiredMaps = {
"tstudio_opium_nights", "tstudio_lsi_square",
"tstudio_bennys_racetrack"
},
fixResource = "tstudio_zpatch_opium_racetrack_lsis" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark, Kebabking, Tropical Heights & Legion",
requiredMaps = {
"tstudio_missionrow_park", "tstudio_legionsquare",
"tstudio_tropical_heights", "tstudio_kebabking"
},
fixResource = "tstudio_zpatch_mrpark_kebab_th_ls" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark, Kebabking & Tropical Heights",
requiredMaps = {
"tstudio_missionrow_park", "tstudio_kebabking",
"tstudio_tropical_heights"
},
fixResource = "tstudio_zpatch_mrpark_kebab_th" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark & Tropical Heights",
requiredMaps = {
"tstudio_missionrow_park", "tstudio_tropical_heights"
},
fixResource = "tstudio_zpatch_mrpark_th" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark, Legion & Tropical Heights",
requiredMaps = {
"tstudio_missionrow_park", "tstudio_tropical_heights",
"tstudio_legionsquare"
},
fixResource = "tstudio_zpatch_mrpark_th_ls" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark, Kebabking & Legion",
requiredMaps = {
"tstudio_missionrow_park", "tstudio_kebabking",
"tstudio_legionsquare"
},
fixResource = "tstudio_zpatch_mrpark_kebab_ls" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark & Legion",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare"},
fixResource = "tstudio_zpatch_mrpark_ls" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark & Reds Tuner",
requiredMaps = {"tstudio_missionrow_park", "tstudio_redstuner"},
fixResource = "tstudio_zpatch_mrpark_reds" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark, Kebabking",
requiredMaps = {"tstudio_missionrow_park", "tstudio_kebabking"},
fixResource = "tstudio_zpatch_mrpark_kebab" -- Resource to apply the fix
}, {
name = "Fix for Impound & Carrent",
requiredMaps = {"tstudio_impound", "tstudio_carrent"},
fixResource = "tstudio_zpatch_impound_carrent" -- Resource to apply the fix
}, {
name = "Fix for Missionrowpark & Impound",
requiredMaps = {"tstudio_missionrow_park", "tstudio_impound"},
fixResource = "tstudio_zpatch_mrpark_impound" -- Resource to apply the fix
}, {
name = "Fix for Legion Garage & Kebab",
requiredMaps = {"tstudio_legionsquare_garage", "tstudio_kebabking"},
fixResource = "tstudio_zpatch_garage_kebab" -- Resource to apply the fix
}, {
name = "Fix for Pillbox, Legion Garage & Kebab",
requiredMaps = {
"tstudio_pillbox_md", "tstudio_legionsquare_garage",
"tstudio_kebabking"
},
fixResource = "tstudio_zpatch_pillbox_garage_kebab" -- Resource to apply the fix
}, {
name = "Fix for Pillbox & Legion Garage",
requiredMaps = {"tstudio_pillbox_md", "tstudio_legionsquare_garage"},
fixResource = "tstudio_zpatch_pillbox_garage" -- Resource to apply the fix
}, {
name = "Fix for Pillbox & Kebab",
requiredMaps = {"tstudio_pillbox_md", "tstudio_kebabking"},
fixResource = "tstudio_zpatch_pillbox_kebab" -- Resource to apply the fix
}, {
name = "Fix for Pillbox & Kebab",
requiredMaps = {"tstudio_pillbox_md", "tstudio_kebabking"},
fixResource = "tstudio_zpatch_pillbox_kebab" -- Resource to apply the fix
},
{
name = "Fix for Mission Row Park & Jurassic Jackpot",
requiredMaps = {"tstudio_jurassic_jackpot", "tstudio_missionrow_park"},
fixResource = "tstudio_zpatch_mrpark_jj",
},
{
name = "Fix for Aldente's & VHotel",
requiredMaps = {"tstudio_aldentes", "tstudio_vhotel_estate"},
fixResource = "tstudio_zpatch_aldentes_vhotel"
},
{
name = "Fix for Paleto Bewo & Paleto Cardealer & Taxi",
requiredMaps = {"tstudio_paleto_bewo", "tstudio_paleto_cardealer", "tstudio_taxi"},
fixResource = "tstudio_zpatch_bw_cardealer_taxi",
},
{
name = "Fix for Ammunation & Gabz PDM",
requiredMaps = {"tstudio_ammunation", "cfx-gabz-pdm"},
fixResource = "tstudio_zpatch_ammunation_gabz_pdm",
},
-- ===========================================
-- Fiv3Devs Maps Compatibility Patches
-- ===========================================
{
name = "Fix for Mission Row Park, Legion Square & Fiv3Devs Pillbox",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "fiv3devs_pillbox"},
fixResource = "tstudio_zpatch_mrpark_ls_fiv3dev_pillbox"
},
{
name = "Fix for Kebab & Fiv3Devs Pillbox",
requiredMaps = {"tstudio_kebabking", "fiv3devs_pillbox"},
fixResource = "tstudio_zpatch_kebab_fiv3devs_pillbox"
},
-- ===========================================
-- Kiiya Maps Compatibility Patches
-- ===========================================
{ -- This patch is for the Mission Row Park, Legion Square, Tropical Heights & Kiiya MRPD
name = "Fix for Mission Row Park, Legion Square, Tropical Heights & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_ls_th_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park & Kiiya MRPD
name = "Fix for Mission Row Park & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park, Tropical Heights & Kiiya MRPD
name = "Fix for Mission Row Park, Tropical Heights & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_th_kiiya_mrpd"
},
{ -- This patch is for the Kebabking & Kiiya MRPD
name = "Fix for Kebabking & Kiiya MRPD",
requiredMaps = {"tstudio_kebabking", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_kebab_kiiya_mrpd"
},
{ -- This patch is for the Legion Square, Kebabking & Kiiya MRPD
name = "Fix for Legion Square, Kebabking & Kiiya MRPD",
requiredMaps = {"tstudio_legionsquare", "tstudio_kebabking", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_ls_kebab_kiiya_mrpd"
},
{ -- This patch is for the Legion Square, Tropical Heights, Kebabking & Kiiya MRPD
name = "Fix for Legion Square, Tropical Heights & Kebabking & Kiiya MRPD",
requiredMaps = {"tstudio_legionsquare", "tstudio_tropical_heights", "tstudio_kebabking", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_ls_th_kebab_kiiya_mrpd"
},
{ -- This patch is for the Kebabking, Tropical Heights & Kiiya MRPD
name = "Fix for Kebabking, Tropical Heights & Kiiya MRPD",
requiredMaps = {"tstudio_kebabking", "tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_kebab_th_kiiya_mrpd"
},
{ -- This patch is for the Legion Square & Kiiya MRPD
name = "Fix for Legion Square & Kiiya MRPD",
requiredMaps = {"tstudio_legionsquare", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_ls_kiiya_mrpd"
},
{ -- This patch is for the Legion Square, Tropical Heights & Kiiya MRPD
name = "Fix for Legion Square, Tropical Heights & Kiiya MRPD",
requiredMaps = {"tstudio_legionsquare", "tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_ls_th_kiiya_mrpd"
},
{ -- This patch is for the Tropical Heights & Kiiya MRPD
name = "Fix for Tropical Heights & Kiiya MRPD",
requiredMaps = {"tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_th_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park, Legionsquare, Kebabking & Kiiya MRPD
name = "Fix for Mission Row Park, Legionsquare, Kebabking & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "tstudio_kebabking", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_ls_kebab_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park, Legionsquare, Tropical Heights, Kebabking & Kiiya MRPD
name = "Fix for Mission Row Park, Legionsquare, Tropical Heights, Kebabking & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "tstudio_kebabking", "tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_ls_kebab_th_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park, Kebabking & Kiiya MRPD
name = "Fix for Mission Row Park, Kebabking & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_kebabking", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_kebab_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park, Kebabking, Tropical Heights & Kiiya MRPD
name = "Fix for Mission Row Park, Kebabking, Tropical Heights & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_kebabking", "tstudio_tropical_heights", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_kebab_th_kiiya_mrpd"
},
{ -- This patch is for the Mission Row Park, Legionsquare & Kiiya MRPD
name = "Fix for Mission Row Park, Legionsquare & Kiiya MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "kiiya_mrpd"},
fixResource = "tstudio_zpatch_mrpark_ls_kiiya_mrpd"
},
-- ===========================================
-- FM Maps Compatibility Patches
-- ===========================================
{
name = "Fix for Legion Square & FM MRPD",
requiredMaps = {"tstudio_legionsquare", "cfx-fm-mrpd"},
fixResource = "tstudio_zpatch_ls_fm_mrpd"
},
{
name = "Fix for Mission Row Park & FM MRPD",
requiredMaps = {"tstudio_missionrow_park", "cfx-fm-mrpd"},
fixResource = "tstudio_zpatch_mrpark_fm_mrpd"
},
{
name = "Fix for Mission Row Park, Legion Square & FM MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "cfx-fm-mrpd"},
fixResource = "tstudio_zpatch_mrpark_ls_fm_mrpd"
},
{
name = "Fix for Mission Row Park, Legion Square, Tropical Heights & FM MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_legionsquare", "tstudio_tropical_heights", "cfx-fm-mrpd"},
fixResource = "tstudio_zpatch_mrpark_ls_th_fm_mrpd"
},
{
name = "Fix for Mission Row Park, Tropical Heights & FM MRPD",
requiredMaps = {"tstudio_missionrow_park", "tstudio_tropical_heights", "cfx-fm-mrpd"},
fixResource = "tstudio_zpatch_mrpark_th_fm_mrpd"
},
{
name = "Fix for Tropical Heights & FM MRPD",
requiredMaps = {"tstudio_tropical_heights", "cfx-fm-mrpd"},
fixResource = "tstudio_zpatch_th_fm_mrpd"
}
},
-- Section for automatic floor ipl loading configurations
FloorConfigs = {
pillbox = {
resourceName = "tstudio_pillbox_md", -- Added name for debug purposes
center = vector3(306.003, -568.511, 63.181), -- Center of the area for checking player position
floors = {
[0] = {height = 64.159, ipls = {"johanni_pillbox_e03_01_milo_"}},
[1] = {height = 68.162, ipls = {"johanni_pillbox_e03_02_milo_"}},
[2] = {height = 60.025, ipls = {"johanni_pillbox_e03_03_milo_"}}
}
},
opium = {
resourceName = "tstudio_opium_nights", -- Added name for debug purposes
center = vector3(-720.0305, -2268.00635, 16.2695923), -- Center of the area for checking player position
floors = {
[0] = {
height = 28.00,
ipls = {
"johanni_opium_penthouse_e01_milo_",
"johanni_opium_hallway_e01_milo_",
"johanni_opium_hotel_e01_r01_milo_",
"johanni_opium_hotel_e01_r02_milo_",
"johanni_opium_hotel_e01_r03_milo_",
"johanni_opium_hotel_e01_r04_milo_",
"johanni_opium_hotel_e01_r05_milo_",
"johanni_opium_hotel_e01_r06_milo_",
"johanni_opium_hotel_e01_r07_milo_",
"johanni_opium_hotel_e01_r08_milo_",
"johanni_opium_hotel_e01_r09_milo_",
"johanni_opium_hotel_e01_r10_milo_",
"johanni_opium_hotel_e01_r11_milo_",
"johanni_opium_hotel_e01_r12_milo_"
}
},
[1] = {
height = 38.14,
ipls = {
"johanni_opium_penthouse_e02_milo_",
"johanni_opium_hallway_e02_milo_",
"johanni_opium_hotel_e02_r01_milo_",
"johanni_opium_hotel_e02_r02_milo_",
"johanni_opium_hotel_e02_r03_milo_",
"johanni_opium_hotel_e02_r04_milo_",
"johanni_opium_hotel_e02_r05_milo_",
"johanni_opium_hotel_e02_r06_milo_",
"johanni_opium_hotel_e02_r07_milo_",
"johanni_opium_hotel_e02_r08_milo_",
"johanni_opium_hotel_e02_r09_milo_",
"johanni_opium_hotel_e02_r10_milo_",
"johanni_opium_hotel_e02_r11_milo_",
"johanni_opium_hotel_e02_r12_milo_"
}
},
[2] = {
height = 47.04,
ipls = {
"johanni_opium_penthouse_e03_milo_",
"johanni_opium_hallway_e03_milo_",
"johanni_opium_hotel_e03_r01_milo_",
"johanni_opium_hotel_e03_r02_milo_",
"johanni_opium_hotel_e03_r03_milo_",
"johanni_opium_hotel_e03_r04_milo_",
"johanni_opium_hotel_e03_r05_milo_",
"johanni_opium_hotel_e03_r06_milo_",
"johanni_opium_hotel_e03_r07_milo_",
"johanni_opium_hotel_e03_r08_milo_",
"johanni_opium_hotel_e03_r09_milo_",
"johanni_opium_hotel_e03_r10_milo_",
"johanni_opium_hotel_e03_r11_milo_",
"johanni_opium_hotel_e03_r12_milo_"
}
},
[3] = {
height = 55.88,
ipls = {
"johanni_opium_penthouse_e04_milo_",
"johanni_opium_hallway_e04_milo_",
"johanni_opium_hotel_e04_r01_milo_",
"johanni_opium_hotel_e04_r02_milo_",
"johanni_opium_hotel_e04_r03_milo_",
"johanni_opium_hotel_e04_r04_milo_",
"johanni_opium_hotel_e04_r05_milo_",
"johanni_opium_hotel_e04_r06_milo_",
"johanni_opium_hotel_e04_r07_milo_",
"johanni_opium_hotel_e04_r08_milo_",
"johanni_opium_hotel_e04_r09_milo_",
"johanni_opium_hotel_e04_r10_milo_",
"johanni_opium_hotel_e04_r11_milo_",
"johanni_opium_hotel_e04_r12_milo_"
}
},
[4] = {
height = 64.55,
ipls = {
"johanni_opium_penthouse_e05_milo_",
"johanni_opium_hallway_e05_milo_",
"johanni_opium_hotel_e05_r01_milo_",
"johanni_opium_hotel_e05_r02_milo_",
"johanni_opium_hotel_e05_r03_milo_",
"johanni_opium_hotel_e05_r04_milo_",
"johanni_opium_hotel_e05_r05_milo_",
"johanni_opium_hotel_e05_r06_milo_",
"johanni_opium_hotel_e05_r07_milo_",
"johanni_opium_hotel_e05_r08_milo_",
"johanni_opium_hotel_e05_r09_milo_",
"johanni_opium_hotel_e05_r10_milo_",
"johanni_opium_hotel_e05_r11_milo_",
"johanni_opium_hotel_e05_r12_milo_"
}
},
[5] = {
height = 73.35,
ipls = {
"johanni_opium_penthouse_e06_milo_",
"johanni_opium_hallway_e06_milo_",
"johanni_opium_hotel_e06_r01_milo_",
"johanni_opium_hotel_e06_r02_milo_",
"johanni_opium_hotel_e06_r03_milo_",
"johanni_opium_hotel_e06_r04_milo_",
"johanni_opium_hotel_e06_r05_milo_",
"johanni_opium_hotel_e06_r06_milo_",
"johanni_opium_hotel_e06_r07_milo_",
"johanni_opium_hotel_e06_r08_milo_",
"johanni_opium_hotel_e06_r09_milo_",
"johanni_opium_hotel_e06_r10_milo_",
"johanni_opium_hotel_e06_r11_milo_",
"johanni_opium_hotel_e06_r12_milo_"
}
}
}
}
},
-- Interior blocking configurations
-- Each interior can be configured with the following properties:
-- coords: The coordinates of the interior
-- interiorName: The name of the interior to disable
-- enabled: Whether this interior blocking is enabled
-- resourceDependency: (Optional) Only disable this interior if the specified resource is started
-- This prevents breaking default interiors when custom resources aren't loaded
Interiors = {
["tstudio_tattoo_studio"] = {
[1] = { enabled = true, name = "v_tattoo", coords = vec3(-3171.2937, 1076.24451, 19.8303947) },
[2] = { enabled = true, name = "v_tattoo", coords = vec3(322.967865, 181.942917, 102.587761) },
[3] = { enabled = true, name = "v_tattoo", coords = vec3(1323.765, -1653.43164, 51.27684) },
[4] = { enabled = true, name = "v_tattoo", coords = vec3(-1153.18408, -1427.0127, 3.955685) },
},
["tstudio_ammunation"] = {
[1] = { enabled = true, name = "v_gun", coords = vec3(821.144043, -2154.8916, 28.61892) }, -- Cypress
[2] = { enabled = true, name = "v_gun2", coords = vec3(843.2987, -1028.10669, 27.1947746) }, -- LaMesa
[3] = { enabled = true, name = "v_gun", coords = vec3(10.9070005, -1105.65833, 28.7969322) }, -- Legion
[4] = { enabled = true, name = "v_gun2", coords = vec3(247.371582, -47.245163, 68.9409943) }, -- Hawick
[5] = { enabled = true, name = "v_gun2", coords = vec3(-1310.87659, -392.009644, 35.6957169) }, -- MorningWood
[6] = { enabled = true, name = "v_gun2", coords = vec3(-663.1717, -940.758057, 20.8291473) }, -- Little Seoul
[7] = { enabled = true, name = "v_gun2", coords = vec3(-3167.29614, 1084.70984, 19.8386574) }, -- Chumash
[8] = { enabled = true, name = "v_gun2", coords = vec3(2568.834, 299.788116, 107.734818) }, -- East Highway
[9] = { enabled = true, name = "v_gun2", coords = vec3(1696.95251, 3755.445, 33.7052574) }, -- Sandy Shores
[10] = { enabled = true, name = "v_gun2", coords = vec3(-327.1706, 6079.257, 30.4546967) }, -- Paleto Bay
[11] = { enabled = true, name = "v_gun2", coords = vec3(-1114.84509, 2693.80957, 17.55406) } -- Route 68
},
["tstudio_fleeca"] = {
[1] = { enabled = true, name = "v_genbank", coords = vec3(-355.435852, -48.5326, 48.1063843) }, -- Vinewood
[2] = { enabled = true, name = "v_genbank", coords = vec3(309.74646, -277.644165, 53.2345963) }, -- Vinewood (Lower Level)
[3] = { enabled = true, name = "v_genbank", coords = vec3(145.416824, -1039.277, 28.4378834) }, -- Legion Square
[4] = { enabled = true, name = "v_genbank", coords = vec3(-1216.7616, -333.000763, 36.85084) }, -- Movie Studio
[5] = { enabled = true, name = "hei_generic_bank_dlc", coords = vec3(-2962.59131, 478.238037, 14.7668953) }, -- West Highway
[6] = { enabled = true, name = "v_genbank", coords = vec3(1179.74475, 2706.985, 37.15784) } -- Sandy Shores
},
["tstudio_pillbox_md"] = {
[1] = { enabled = true, name = "rc12b_default", ipl = "rc12b_default", coords = vec3(307.1680, -590.807, 43.280) }, -- Pillbox Hill
},
}
}

View file

@ -0,0 +1,46 @@
fx_version 'cerulean'
lua54 'yes'
game "gta5"
author 'TStudio - mandatory mapdata'
description 'TStudio Mapdata - important for TStudio maps'
version '1.0'
this_is_a_map 'yes'
dependencies {
'/server:4960', -- ⚠PLEASE READ⚠; Requires at least SERVER build 4960.
'/gameBuild:2545', -- ⚠PLEASE READ⚠; Requires at least GAME build 2545.
}
data_file 'TIMECYCLEMOD_FILE' 'tstudio_timecycles.xml'
shared_scripts {
'config.lua',
'utils/utils.lua',
'utils/misc.lua',
}
client_scripts {
'client/activate_ipl.lua',
'client/entitysets_loader.lua',
'client/ipl_blocker.lua',
'client/privacy_glass.lua',
}
server_scripts {
'server/patch_loader.lua',
'server/resource_monitor.lua',
}
files {
'tstudio_timecycles.xml',
}
escrow_ignore {
'stream/*/*.*',
'locales/*.lua',
'config.lua',
}
dependency '/assetpacks'

View file

@ -0,0 +1,67 @@
<?xml version="1.0"?>
<timecycle_modifier_data version="1.000000">
<modifier name="tstudio_pillbox_md" numMods="28" userFlags="0">
<light_dir_col_r>0.890 0.500</light_dir_col_r>
<light_dir_col_g>0.675 0.500</light_dir_col_g>
<light_dir_col_b>0.392 0.500</light_dir_col_b>
<light_dir_mult>0.000 0.250</light_dir_mult>
<light_artificial_int_down_col_r>0.929 1.000</light_artificial_int_down_col_r>
<light_artificial_int_down_col_g>0.765 1.000</light_artificial_int_down_col_g>
<light_artificial_int_down_col_b>0.388 1.000</light_artificial_int_down_col_b>
<light_artificial_int_down_intensity>1.000 0.000</light_artificial_int_down_intensity>
<light_artificial_int_up_col_r>0.733 1.000</light_artificial_int_up_col_r>
<light_artificial_int_up_col_g>0.796 1.000</light_artificial_int_up_col_g>
<light_artificial_int_up_col_b>0.973 1.000</light_artificial_int_up_col_b>
<light_artificial_int_up_intensity>1.000 0.000</light_artificial_int_up_intensity>
<ssao_inten>4.000 0.000</ssao_inten>
<light_direction_override_overrides_sun>0.000 0.000</light_direction_override_overrides_sun>
<postfx_exposure>0.250 0.000</postfx_exposure>
<postfx_bright_pass_thresh_width>0.100 0.000</postfx_bright_pass_thresh_width>
<postfx_bright_pass_thresh>0.300 0.000</postfx_bright_pass_thresh>
<postfx_intensity_bloom>0.025 0.000</postfx_intensity_bloom>
<fog_start>73.000 73.000</fog_start>
<reflection_lod_range_start>0.000 0.000</reflection_lod_range_start>
<reflection_lod_range_end>0.000 0.000</reflection_lod_range_end>
<reflection_slod_range_start>0.000 0.000</reflection_slod_range_start>
<reflection_slod_range_end>0.000 0.000</reflection_slod_range_end>
<reflection_tweak_interior_amb>16.448 0.000</reflection_tweak_interior_amb>
<reflection_tweak_emissive>2.000 0.000</reflection_tweak_emissive>
<temperature>20.000 0.000</temperature>
<natural_ambient_multiplier>0.550 0.000</natural_ambient_multiplier>
<artificial_int_ambient_multiplier>0.600 0.000</artificial_int_ambient_multiplier>
</modifier>
<modifier name="tstudio_jhn_cali_villa_tc" numMods="32" userFlags="0">
<light_directional_amb_col_r>1.000 0.910</light_directional_amb_col_r>
<light_directional_amb_col_g>0.910 0.910</light_directional_amb_col_g>
<light_directional_amb_col_b>0.455 0.910</light_directional_amb_col_b>
<light_amb_down_wrap>0.641 0.000</light_amb_down_wrap>
<light_artificial_int_down_col_r>0.890 1.000</light_artificial_int_down_col_r>
<light_artificial_int_down_col_g>0.875 1.000</light_artificial_int_down_col_g>
<light_artificial_int_down_col_b>0.675 1.000</light_artificial_int_down_col_b>
<light_artificial_int_down_intensity>1.300 0.000</light_artificial_int_down_intensity>
<light_artificial_int_up_col_r>1.000 1.000</light_artificial_int_up_col_r>
<light_artificial_int_up_col_g>0.824 1.000</light_artificial_int_up_col_g>
<light_artificial_int_up_col_b>0.522 1.000</light_artificial_int_up_col_b>
<light_artificial_int_up_intensity>1.300 0.000</light_artificial_int_up_intensity>
<ped_light_col_r>0.941 1.000</ped_light_col_r>
<ped_light_col_g>1.000 1.000</ped_light_col_g>
<ped_light_col_b>0.180 1.000</ped_light_col_b>
<ped_light_mult>0.200 1.000</ped_light_mult>
<postfx_exposure>-0.252 0.000</postfx_exposure>
<postfx_bright_pass_thresh_width>0.400 0.000</postfx_bright_pass_thresh_width>
<postfx_bright_pass_thresh>0.500 0.000</postfx_bright_pass_thresh>
<postfx_intensity_bloom>0.500 0.000</postfx_intensity_bloom>
<dir_shadow_num_cascades>3.000 0.000</dir_shadow_num_cascades>
<dir_shadow_distance_multiplier>0.700 0.000</dir_shadow_distance_multiplier>
<fog_start>30.000 30.000</fog_start>
<reflection_lod_range_start>0.000 0.000</reflection_lod_range_start>
<reflection_lod_range_end>0.000 0.000</reflection_lod_range_end>
<reflection_slod_range_start>0.000 0.000</reflection_slod_range_start>
<reflection_slod_range_end>0.000 0.000</reflection_slod_range_end>
<reflection_tweak_interior_amb>15.000 0.000</reflection_tweak_interior_amb>
<far_clip>150.000 150.000</far_clip>
<temperature>20.000 0.000</temperature>
<natural_ambient_multiplier>0.000 0.000</natural_ambient_multiplier>
<artificial_int_ambient_multiplier>0.500 0.000</artificial_int_ambient_multiplier>
</modifier>
</timecycle_modifier_data>