Dokumentation för ZeroDev Sound
ZeroDev Sound: installationsguide
Den här resursen innehåller eller tillhandahåller inga ljud- eller musikintegrationer från tredje part. Musik spelas bara från ljudfiler som serverägaren lägger till i resursen och från GTA:s inbyggda radio. Spelare kan inte ange länkar. Lägg bara till ljud som du äger eller har rätt att använda och distribuera; att strömma innehåll utan tillstånd kan bryta mot Cfx.re Creator Platform License Agreement och mot lagen.
Högtalare som spelarna köper, bär, ställer ner och länkar ihop, och billjud som de bygger in i sina egna bilar. Det här är hela referensen. För den korta versionen, läs docs/SETUP.md (5 steg); för problem, docs/TROUBLESHOOTING.md; kommer du från 1.x, UPGRADING.md.
Innehåll 1. Krav 2. Installation 3. Items för ditt inventory 4. Första starten: vad du ska se 5. Inställningar som ändras oftast 6. Kontroller 7. Billjud 8. Musikkällor 9. Pulse Phone 10. Polis, grannar och admins 11. Språk 12. Felsökning 13. Uppdatering
1. Krav
| Krävs | oxmysql. ZeroDev Sound skapar sina egna tabeller vid första starten; det finns ingen SQL-fil att importera. |
| Framework | ESX Legacy, QBCore, Qbox, eller inget (standalone). Hittas automatiskt. |
| Inventory | ox_inventory, qb-inventory (även ps- och lj-inventory), qs-inventory, codem-inventory, core_inventory, origen_inventory, tgiann-inventory, ESX-inventoryt, eller inget. Hittas automatiskt. |
| Valfritt | ox_target eller qb-target (utan något av dem får spelarna en tangentprompt på skärmen i stället). Pulse Phone 1.2.9 eller nyare (lägger till Sound-appen och bilstereon i Pulse Drive). pma-voice för micken: utan pma-voice kan man hålla micken och sjunga i den, men ingen hör det genom högtalarna. |
Inget annat: ingen ox_lib, ingen API-nyckel, inget Google-konto.
Linux-servrar
Linux-servrar: använd den rekommenderade server-artifacten (Recommended), inte Latest. På FiveM:s nedladdningssida för servrar (docs.fivem.net/docs/server-download/) väljer du Linux och uppdateringsgrenen Recommended. En server på den senaste Linux-artifacten kraschade under laddning (FXServer skrev ut en dump av /proc/self/maps), och att byta till den rekommenderade artifacten löste det. Det är den enda Linux-rapporten vi har; vi har inte själva kört ZeroDev Sound på en Linux-server än.
Linux-servrar: använd den rekommenderade server-artifacten (Recommended), inte Latest. På FiveM:s nedladdningssida för servrar (docs.fivem.net/docs/server-download/) väljer du Linux och uppdateringsgrenen Recommended. En server på den senaste Linux-artifacten kraschade under laddning (FXServer skrev ut en dump av /proc/self/maps), och att byta till den rekommenderade artifacten löste det. Det är den enda Linux-rapporten vi har; vi har inte själva kört ZeroDev Sound på en Linux-server än.
På en standalone-server (inget framework) är allt gratis: butiken och bildelarna kostar ingenting.
2. Installation
Steg 1. Lägg in mappen. Lägg mappen zerodev-sound i din mapp resources (vilken undermapp som helst går bra, till exempel resources/[zerodev]/zerodev-sound). Behåll mappnamnet zerodev-sound: item-posterna i ox_inventory anropar den med det namnet.
Steg 2. Lägg till den i server.cfg, efter din databas, ditt framework och inventory:
ensure oxmysql
ensure es_extended # or qb-core / qbx_core, or nothing on a standalone server
ensure ox_inventory # or your inventory
ensure ox_target # optional, or qb-target
ensure phone # optional: Pulse Phone
ensure zerodev-soundSteg 3. Ge dina admins admin-behörigheten (ingen gräns för högtalare, listan /soundadmin, fjärrstopp och borttagning):
add_ace group.admin zerodev.sound.admin allowSteg 4. Ställ in items för ditt inventory: avsnitt 3. På ESX-inventoryt och på QBCore görs det åt dig.
Steg 5. Starta om servern (en fullständig omstart, inte bara resursen, så att varje spelare laddar modellerna) och kolla konsolen: avsnitt 4.
3. Items för ditt inventory
Det finns 12 items: tio högtalare, mickstativet och reparationskitet.
| Item-namn | Etikett | Vikt |
|---|---|---|
zds_roam |
Roam bärbar högtalare | 2 kg |
zds_room_shelf |
Hyllhögtalare | 4 kg |
zds_room_tower |
Golvhögtalare | 10 kg |
zds_room_ceiling |
Takhögtalare | 2 kg |
zds_room_sub |
Hemmasubwoofer | 8 kg |
zds_stage_pa |
PA Speaker | 10 kg |
zds_stage_sub |
Konsertsubwoofer | 15 kg |
zds_stage_array |
Line Array Speaker | 12 kg |
zds_stage_monitor |
Scenmonitor | 6 kg |
zds_stage_mixer |
DJ-mixer | 5 kg |
zds_stage_mic |
Mickstativ | 3 kg |
zds_repair_kit |
Speaker Repair Kit | 0.6 kg |
Bilderna finns i zerodev-sound/web/img/items/. Du behöver aldrig gissa: när något saknas skriver serverkonsolen ut exakta poster för ditt inventory och namnger varje bild som inte är på plats än.
Vilket inventory har du?
| Inventory | Det du gör | Bilderna ska till |
|---|---|---|
| ESX-inventory (ESX Legacy utan ox) | Inget. Items läggs till i tabellen items vid start. |
Inget att kopiera |
| ox_inventory (ESX, Qbox eller standalone) | Klistra in ox_inventory-blocket i ox_inventory/data/items.lua, inuti tabellen. Starta om ox_inventory, sedan zerodev-sound. |
Inget att kopiera: posterna laddar bilderna från zerodev-sound |
| qb-inventory, ps-inventory, lj-inventory (QBCore) | Inget. Items läggs till i QBCore:s shared items vid start. | Kopiera web/img/items/*.png till <your inventory>/html/images/ |
| qs-inventory | På QBCore, klistra in QBCore-blocket i qb-core/shared/items.lua. På ESX, klistra in samma poster i qs-inventory/shared/items.lua. |
qs-inventory/html/images/ |
| codem-inventory | Lägg till de 12 items i codem-inventory/config/itemlist.lua med namn, etiketter och vikter från QBCore-blocket. På QBCore ska du också göra codem-inventorys eget installationssteg som pekar QBCore.Functions.UseItem mot codem-inventory, annars går items inte att använda. |
codem-inventorys bildmapp för items |
| core_inventory | Inget. Items läggs till i QBCore:s shared items eller ESX-tabellen items åt dig. |
core_inventorys bildmapp för items |
| origen_inventory | Lägg till de 12 items i origen_inventory/config/items.lua med namn, etiketter och vikter från QBCore-blocket. |
origen_inventorys bildmapp för items |
| tgiann-inventory | Lägg till de 12 items i tgiann-inventory/items/items.lua med namn, etiketter och vikter från QBCore-blocket. |
inventory_images/images/ |
| Inget inventory | Inget. Köpta och nedpackade högtalare väntar i /sound under Your speakers, med en knapp Set up. |
Inget att kopiera |
För att lägga till items i qb-core för hand i stället för att låta scriptet göra det, klistra in QBCore-blocket i qb-core/shared/items.lua.
Ett annat inventory som kopierar ett av dessa API:er: sätt Config.Inventory till det (se avsnitt 5). Ett egenbyggt inventory kan kopplas in i server/bridge.lua, som är läsbar: varje inventory där är tre små funktioner (räkna, lägga till, ta bort).
ox_inventory-block
Klistra in inuti tabellen return { ... } i ox_inventory/data/items.lua:
['zds_repair_kit'] = { label = 'Speaker Repair Kit', weight = 600, stack = false, close = true, description = 'Fixes a broken speaker. Use it next to one.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_repair_kit.png' } },
['zds_roam'] = { label = 'Roam Portable Speaker', weight = 2000, stack = false, close = true, description = 'Portable speaker with twin bass radiators. Carry it or set it down.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_roam.png' } },
['zds_room_ceiling'] = { label = 'Ceiling Speaker', weight = 2000, stack = false, close = true, description = 'Indoor. Round ceiling or wall speaker for background music in a business.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_room_ceiling.png' } },
['zds_room_shelf'] = { label = 'Shelf Speaker', weight = 4000, stack = false, close = true, description = 'Indoor. Bookshelf speaker: link several around a home or shop.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_room_shelf.png' } },
['zds_room_sub'] = { label = 'Home Subwoofer', weight = 8000, stack = false, close = true, description = 'Indoor. Cube subwoofer: link it to your indoor speakers for deep bass.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_room_sub.png' } },
['zds_room_tower'] = { label = 'Tower Speaker', weight = 10000, stack = false, close = true, description = 'Indoor. Floor-standing tower with two woofers: deep, clean sound for a whole room.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_room_tower.png' } },
['zds_stage_array'] = { label = 'Line Array Speaker', weight = 12000, stack = false, close = true, description = 'Concert. Line-array speaker for long throw over a big crowd. Stack them.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_stage_array.png' } },
['zds_stage_mic'] = { label = 'Mic Stand', weight = 3000, stack = false, close = true, description = 'Concert. A mic on a boom stand: link it to your concert speakers, stand at it and sing through them (/soundmic).',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_stage_mic.png' } },
['zds_stage_mixer'] = { label = 'DJ Mixer', weight = 5000, stack = false, close = true, description = 'Concert. Not a speaker: whoever stands at it runs every linked concert speaker (volume, bass, sound, timing).',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_stage_mixer.png' } },
['zds_stage_monitor'] = { label = 'Stage Monitor', weight = 6000, stack = false, close = true, description = 'Concert. Wedge monitor so the DJ or band hears the mix on stage.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_stage_monitor.png' } },
['zds_stage_pa'] = { label = 'PA Speaker', weight = 10000, stack = false, close = true, description = 'Concert. Powered 15" PA top on a tripod: link many for an event.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_stage_pa.png' } },
['zds_stage_sub'] = { label = 'Concert Subwoofer', weight = 15000, stack = false, close = true, description = 'Concert. Double 18" sub cabinet: the bass you feel at a show.',
client = { export = 'zerodev-sound.useItem', image = 'nui://zerodev-sound/web/img/items/zds_stage_sub.png' } },QBCore-block
QBCore:s item-format, som qb-, ps-, lj- och qs-inventory läser:
['zds_repair_kit'] = { name = 'zds_repair_kit', label = 'Speaker Repair Kit', weight = 600, type = 'item', image = 'zds_repair_kit.png', unique = true, useable = true, shouldClose = true, description = 'Fixes a broken speaker. Use it next to one.' },
['zds_roam'] = { name = 'zds_roam', label = 'Roam Portable Speaker', weight = 2000, type = 'item', image = 'zds_roam.png', unique = true, useable = true, shouldClose = true, description = 'Portable speaker with twin bass radiators. Carry it or set it down.' },
['zds_room_ceiling'] = { name = 'zds_room_ceiling', label = 'Ceiling Speaker', weight = 2000, type = 'item', image = 'zds_room_ceiling.png', unique = true, useable = true, shouldClose = true, description = 'Indoor. Round ceiling or wall speaker for background music in a business.' },
['zds_room_shelf'] = { name = 'zds_room_shelf', label = 'Shelf Speaker', weight = 4000, type = 'item', image = 'zds_room_shelf.png', unique = true, useable = true, shouldClose = true, description = 'Indoor. Bookshelf speaker: link several around a home or shop.' },
['zds_room_sub'] = { name = 'zds_room_sub', label = 'Home Subwoofer', weight = 8000, type = 'item', image = 'zds_room_sub.png', unique = true, useable = true, shouldClose = true, description = 'Indoor. Cube subwoofer: link it to your indoor speakers for deep bass.' },
['zds_room_tower'] = { name = 'zds_room_tower', label = 'Tower Speaker', weight = 10000, type = 'item', image = 'zds_room_tower.png', unique = true, useable = true, shouldClose = true, description = 'Indoor. Floor-standing tower with two woofers: deep, clean sound for a whole room.' },
['zds_stage_array'] = { name = 'zds_stage_array', label = 'Line Array Speaker', weight = 12000, type = 'item', image = 'zds_stage_array.png', unique = true, useable = true, shouldClose = true, description = 'Concert. Line-array speaker for long throw over a big crowd. Stack them.' },
['zds_stage_mic'] = { name = 'zds_stage_mic', label = 'Mic Stand', weight = 3000, type = 'item', image = 'zds_stage_mic.png', unique = true, useable = true, shouldClose = true, description = 'Concert. A mic on a boom stand: link it to your concert speakers, stand at it and sing through them (/soundmic).' },
['zds_stage_mixer'] = { name = 'zds_stage_mixer', label = 'DJ Mixer', weight = 5000, type = 'item', image = 'zds_stage_mixer.png', unique = true, useable = true, shouldClose = true, description = 'Concert. Not a speaker: whoever stands at it runs every linked concert speaker (volume, bass, sound, timing).' },
['zds_stage_monitor'] = { name = 'zds_stage_monitor', label = 'Stage Monitor', weight = 6000, type = 'item', image = 'zds_stage_monitor.png', unique = true, useable = true, shouldClose = true, description = 'Concert. Wedge monitor so the DJ or band hears the mix on stage.' },
['zds_stage_pa'] = { name = 'zds_stage_pa', label = 'PA Speaker', weight = 10000, type = 'item', image = 'zds_stage_pa.png', unique = true, useable = true, shouldClose = true, description = 'Concert. Powered 15" PA top on a tripod: link many for an event.' },
['zds_stage_sub'] = { name = 'zds_stage_sub', label = 'Concert Subwoofer', weight = 15000, type = 'item', image = 'zds_stage_sub.png', unique = true, useable = true, shouldClose = true, description = 'Concert. Double 18" sub cabinet: the bass you feel at a show.' },Om du ändrade en etikett, ett pris eller en vikt i config/catalogue.lua, kopiera i stället posterna från din egen konsol: den skriver ut dem utifrån dina inställningar.
4. Första starten: vad du ska se
I serverkonsolen
ZeroDev Sound skriver ut en kontrollruta (skriv soundcheck i serverkonsolen för att skriva ut den igen): databas och schema, framework, pengar, inventory och items, garagetabellen, targeting, Pulse Phone, modeller, installationshallar och inställningar som ändrats i spelet. Varje rad som inte är OK säger vad du ska göra; docs/SETUP.md visar ett exempel och docs/TROUBLESHOOTING.md förklarar varje rad.
- Framework-raden namnger vad som hittades. Om det är fel, sätt
Config.FrameworkellerConfig.Inventoryiconfig/config.lua. - En gul rad
Add these to ox_inventory/data/items.lua ...(eller... if these items are not in ... yet, add them) följd av item-poster: gör avsnitt 3 för ditt inventory och starta sedan om. Meddelandet för ox_inventory slutar visas när items finns på plats. På qs-, codem-, origen- och tgiann-inventory skrivs posterna ut vid varje start som en påminnelse, oavsett om du har lagt till dem eller inte. - En gul rad
Copy zds_....png from zerodev-sound/web/img/items into ...: de bilderna finns inte i ditt inventorys bildmapp än. Den namnger mappen. Pulse Phone app not registered: ...: Pulse Phone körs men nekade appen. Se avsnitt 9.
I spelet (fem kontroller)
- Kartan visar en blip ZeroDev Sound på Legion Square och en blip Car audio bay vid Benny's.
- I butiken står en expedit vid ett ställ med högtalarna utställda. Sikta på expediten (eller tryck E när det inte finns någon target-resurs) och köp en Roam Portable Speaker.
- Använd den från ditt inventory. Den kommer fram i dina händer. Tryck E, öppna Library och spela Night Drive (ett demospår som följer med scriptet). Folk omkring dig hör det.
- Sätt dig i en bil. De första gångerna säger skärmens hörn vilken tangent som öppnar bilstereon (K som standard).
- Kör in i installationshallen för billjud som förare och tryck E. Installationsverktyget öppnas på din bil.
5. Inställningar som ändras oftast
I spelet: /soundadmin > Settings ändrar de vanligaste live för alla (installationshallar, vem som får installera, vilka bilar, priser, högsta volym, tysta timmar, gränser, butik, polis och skador). De sparas i databasen och går före config.lua tills du trycker på Reset to config i panelen.
Allt finns i config/config.lua om inget annat anges. Produkter, priser och bildelar finns i config/catalogue.lua; varje bils fabriksljud finns i config/vehicles.lua.
| Det du vill | Inställning |
|---|---|
| Tvinga fram framework eller inventory | Config.Framework (auto, esx, qb, qbox, standalone), Config.Inventory (auto, ox, qb, qs, codem, core, origen, tgiann, esx, none) |
| Ändra kommandot för fjärrkontrollen | Config.Command (standard sound, alltså /sound) |
| Ändra tangenten för bilstereon | Config.HeadUnitKey (standard K). Spelarna kan binda om den själva i GTA:s inställningar > Key Bindings > FiveM. |
| Högtalare per spelare | Config.MaxPlacedPerPlayer (standard 8). Admins har ingen gräns. |
| Högtalare i en länkad grupp | Config.MaxLinkedPerGroup (standard 16) |
| Hur nära för att ansluta, hur långt för att styra | Config.PairRange (15 m), Config.ControlRange (80 m) |
| Flytta butiken eller lägg till fler butiker | Config.Shop.locations. Varje tar label, coords, blip, och valfritt heading (åt vilket håll stället är vänt) och clerk (en ped-modell). Config.Shop.account är bank eller cash. Config.Shop.enabled = false tar bort butiken. |
| Priser på högtalare | price på varje produkt i config/catalogue.lua > Catalogue.Speakers. Priset för reparationskitet är Config.Damage.repairPrice. |
| Var billjud monteras | Config.Install.bays (var och en med label, coords, radius, blip). Standard: en hall vid Benny's. |
| Låt ägare bygga vid sin bil var som helst | Config.Install.anywhere = true. Lägger till en knapp Install på bilstereon och kommandot /caraudio (Config.Install.command). |
| Vilka bilar som kan byggas | Config.Install.vehicles: 'owned' (standard) eller 'any'. Se avsnitt 7. |
| Bara mekaniker får installera | Config.Install.anyone = false och lista jobben i Config.Install.jobs (de måste vara i tjänst). |
| Gratis bildelar | Config.Install.chargeParts = false. Config.Install.account är bank eller cash. |
| Priser på bildelar och de färdiga kiten | Catalogue.CarParts och Catalogue.CarKits i config/catalogue.lua |
| En bils fabriksljud | Vehicles.ByClass och Vehicles.ByModel i config/vehicles.lua (basic, premium, reference, bike, none) |
| Bibliotek på eller av | Config.Sources.library. Se avsnitt 8. |
| Dina egna låtar | Config.Library (filer i web/library/) |
| Tysta timmar | Config.QuietHours = { enabled = true, from = 23, to = 7, maxVolume = 0.35 } (serverns lokala tid) |
| Polisjobb och befogenheter | Config.Police (se avsnitt 10) |
| Högtalare som går sönder när de skjuts | Config.Damage.enabled |
| Prestandagränser | Config.Streaming.propRange (modeller ritas inom 90 m), maxAudibleSessions (6 separata låtar hörs samtidigt), maxMovingParts (24 animerade koner per frame) |
| Extra konsolrader för support | Config.Debug (sätt den till true medan du letar efter ett problem) |
Item-namn. Om ett annat script redan använder ett av item-namnen zds_, döp om den produktens nyckel i Catalogue.Speakers (till exempel zds_roam = { ... }), använd sedan det nya namnet i ditt inventory och döp om dess bild så att den matchar.
6. Kontroller
| Vad | Hur |
|---|---|
| Öppna fjärrkontrollen | /sound, eller E vid en högtalare, eller appen Sound i Pulse Phone |
| Bilstereo | K när du sitter i en bil (går att binda om i GTA:s inställningar) |
| Ställ ner en högtalare | Använd dess item. Sikta dit den ska: den visas grön där den passar. Mushjulet eller Q / E vrider den. Enter eller vänsterklick ställer ner den; Backspace eller högerklick avbryter. |
| Stapla en line array | Medan du ställer ner den höjer eller sänker Arrow Up / Arrow Down den |
| Bära en Roam | Den kommer fram i dina händer och fortsätter spela medan du går. E musik, G ställ ner, H packa ihop. Att sätta sig i en bil eller gå ner i vatten packar undan den. |
| Flytta eller packa ihop en högtalare du äger | Sikta på den och välj Move eller Pack up, eller utan target-resurs, ställ dig bredvid den: G flytta (på en Roam: bär den igen), H packa ihop. Fjärrkontrollens flik Speakers kan också packa ihop. |
| Länka högtalare | Anslut till en av dina, öppna fjärrkontrollens flik Speakers och tryck Link bredvid dina andra högtalare i närheten. Handhållna länkas med handhållna, inomhus med inomhus, konsert med konsert (inom 40 m, 60 m respektive 250 m). |
| Installationsverktyg för billjud | Kör in i installationshallen som förare och tryck E (eller knappen Install på stereon / /caraudio när bygge var som helst är på). Dra en del för att skjuta den över bilens ytor, Alt + dra skjuter den plant på dess höjd (ingen snappning), Shift + dra lyfter den, Q / E eller Shift + scroll vrider den. |
| Sjung genom högtalarna | Vid DJ-mixern eller ett mickstativ (säljs i butiken, länka det som en högtalare) för de högtalare du är ansluten till, eller vid mickstativet i ett bilbygge: /soundmic tar micken, /soundmic igen lägger tillbaka den |
| Anmäl hög musik | /noise |
| Adminlista | /soundadmin |
| Ge ett item (serverkonsolen) | givespeaker <player id> <item name> |
| Spräng en sub för att visa effekten (personal) | /soundblow i bilen, eller soundblow <plate> i konsolen |
I fjärrkontrollen: Music (serverns bibliotek), Queue (nästa, sparade spellistor), Speakers (ström och nivå för varje högtalare, länkning, packning) och Tune (sex ljudlägen, en tre-bands equalizer, vem som väljer musiken, öppettider och "Real distance" för konsertuppsättningar). Vem som väljer musiken: Only me; Party, där alla i närheten kan be om låtar som ägaren godkänner; eller Anyone, där personer i närheten kan spela, pausa, hoppa över, köa och spola. Opening hours spelar av sig själv en av ägarens spellistor mellan två klockslag, för en butik eller klubb.
Micken (kräver pma-voice). Medan du håller den hör alla nära någon av systemets högtalare din röst genom den, med PA-ljud, lika högt som den högtalaren spelar musik och så långt som den hörs; gå 4 m från mixern eller mickstativet, koppla från eller lägg tillbaka micken, så är din röst normal igen. Bara systemets ägare (och admins, för en bil) kan sjunga genom det; ge andra spelare ace-behörigheten zds.mic så att de kan använda alla system. Din röst hörs inte från varje högtalares plats: röstchatten kan inte placera en röst där, så personer nära en högtalare hör dig i stället med den högtalarens ljudnivå. Inställningar: Config.Mic.
7. Billjud
Hur spelarna bygger
- Kör in i installationshallen för billjud (Benny's som standard) och tryck E som förare.
- Börja från ett färdigt kit (Daily thump, Competition, Trunk wall, Sound quality, Clean and hidden) eller välj delar: subwoofers (8" till 18"), lådor, förstärkare, dörrhögtalare, diskanter, poddar, falska golv, paneler, plexi, kondensator, extra batteri, LED-list och huvudenhet.
- Dra varje del på plats i bilen. Subbarna hamnar i sin lådas urtag. Varje del får en finish (åtta färger), och subbar och högtalare ett galler och en ljusring. Mirror kopierar en del till andra sidan; Fine position flyttar den i små steg. Fem kameravyer: Boot, Cabin, Side, Front, Top. Storlek: subbar finns i 8", 10", 12", 15" och 18" (varje sub i en låda har samma storlek och lådan byggs runt dem, upp till 30% större eller mindre än den var gjord för); dörrhögtalare i 5.25", 6.5" och 6x9"; alla andra delar från 80% till 130% i steg om 5% (huvudenheten har en standardstorlek). Större lådor och paneler kostar mer; en del som görs mindre kostar ingenting. Konerna rör sig längre på större element, och en större dörrhögtalare går djupare.
- Tryck Test system för att höra bygget spela i bilen innan du betalar. Det spelar den första låten i
Config.Library(det medföljande demospåret om du inte har ändrat det). - Tryck Install. Bara delar som är nya för bilen debiteras; delar som behålls från förra installationen debiteras inte igen.
Installationen sparas mot registreringsskylten och kommer tillbaka när bilen gör det: från alla garage, bärgningar och respawns. Inget att ändra i ditt garagescript.
Vad spelarna hör
- Varje bil har redan ett fabriksljud efter klass och modell: ett system med 4 högtalare, ett premiumsystem med 10 högtalare eller ett referenssystem med 13 högtalare, kåphögtalare på motorcyklar; cyklar, flygplan och tåg har inget. Monterade högtalare ersätter de fabrikshögtalare som sitter närmast dem; subbar läggs till.
- Utanför bilen tar sig mest basen igenom karossen. Öppna dörrar, öppna fönster och en öppen baklucka släpper ut mer, åt det håll de är vända.
- En bil med subbar studsar mjukt på fjädrarna med basen när den står parkerad eller kryper fram (aldrig under körning), och alla inuti känner kicken.
- Stereon (K) har volym, subnivå, fader och balans.
- Subbar som drivs långt över vad deras förstärkare och märkeffekt tillåter, nära full volym, en stund kan sprängas. Alla nära bilen ser en tunn rökslinga från den subben och hör en dov smäll. En sprängd sub slutar röra sig, basen sjunker, och dess kon förblir svedd tills den byts ut i hallen (en ny sub betalas; att ta bort märket är ingen gratis reparation). Personal kan visa det:
/soundblowi bilen, ellersoundblow <plate>i serverkonsolen.
Vilka bilar som kan byggas (Config.Install.vehicles)
'owned'(standard): bara bilar i ditt frameworks tabell över ägda fordon (owned_vehiclespå ESX,player_vehiclespå QBCore och Qbox).'any': även bilar som ingen äger (NPC-bilar, spawnade bilar, hyrbilar).- Hur som helst förblir en bil som en annan spelare äger deras: bara ägaren, en mekaniker i tjänst från
Config.Install.jobs, eller en admin kan ändra den. På en standalone-server räknas varje bil som ägd.
Garage, registreringsskyltar och bärgning
- Registreringsskyltar matchas utan mellanslag runt om och med versaler, så garage som fyller ut eller ändrar skiftläge på skyltar matchar ändå.
- En bil med falsk eller ändrad skylt hittar inte sin installation förrän den har sin sparade skylt igen.
- Bilar som bara finns på en spelares skärm (garageförhandsvisningar, vissa showroom-bilar) får aldrig en installation: de är inte riktiga bilar för någon annan.
Andra ljud- eller stereoscripts
ZeroDev Sound är en egen resurs med egna kommandon (/sound, /caraudio, ...), events och state bags för fordon, så den ersätter eller ändrar inte andra scripts (medan den spelar i en bil stänger den bara av GTA:s egen bilradio). Att köra två billjudsscripts på samma bil samtidigt har inte testats tillsammans: använd en stereo per bil.
8. Musikkällor
Musik spelas bara från ljudfiler som du lägger till i resursen. Spelarna väljer från din lista; de kan inte ange länkar, och ingen webbadress spelas någonsin upp. Lägg bara till ljud som du äger eller har rätt att använda och distribuera.
- Lägg mp3- eller ogg-filer i
zerodev-sound/web/library/och lista varje fil iConfig.Librarysom{ title = '...', artist = '...', file = 'name.mp3' }. De får hela upplevelsen: 3D-ljud, rum och väggar, bilkupéer, ljudlägen, EQ och koner som rör sig med den riktiga basen. Config.Sources.library = falsestänger av biblioteket.- GTA:s egen bilradio fungerar fortfarande i alla bilar så länge ingen låt från den här resursen spelas i dem.
- Startrutan visar hur många låtar spelarna kan välja och varnar för varje post som hoppades över (ett
filnamn som inte är mp3 eller ogg i
web/library/). - Uppdatering från 3.0.0: sparade låtar, senaste låtar och spellisteposter som var länkar visas eller spelas inte längre. Låtar i biblioteket fungerar som förut.
9. Pulse Phone
Inget att ställa in. När Pulse Phone körs på servern (resursnamn phone, vilken utgåva som helst):
- Varje telefon får en app Sound på hemskärmen. Det är samma fjärrkontroll som
/sound: anslut till en högtalare eller bilen, välj musik, styr hela gruppen. Spelarna kan ta bort den och få tillbaka den från App Hub. - Det som spelas på den anslutna högtalaren eller bilen, med återstående tid, visas på Island och låsskärmen. Ett tryck öppnar Sound-appen.
- Pulse Drive (Pulses bilskärm, F10 som standard) visar stereon i bilen du sitter i: låt, artist och omslag, med play, paus, föregående, nästa och volym, och en knapp Open för Sound-appen. Det kräver Pulse Phone 1.2.9 eller nyare; äldre versioner visar det helt enkelt inte.
Spelare utan telefonen använder /sound och K, som gör allt som appen gör.
Om du döpte om telefonens mapp, lägg till den här raden i config/config.lua med dess namn:
Config.PulseResource = 'phone'10. Polis, grannar och admins
| Vad | Hur | Inställning |
|---|---|---|
| Anmäl hög musik | /noise skickar den närmaste spelande högtalaren (inom 60 m) till polis i tjänst som en blinkande blip i 3 minuter. En anmälan per spelare varannan minut. |
Config.Police.complaints, complaintRange |
| Stäng av en högtalare | Polis i tjänst: sikta på högtalaren > Turn off (police), eller fjärrkontrollens flik Tune > Police. Inom 12 m. | Config.Police.canSilence, silenceMinutes (15) |
| Beslagta en högtalare | Polis i tjänst, inom 4 m: sikta > Seize (police), eller Tune > Police > Seize. Högtalaren går till polisen. | Config.Police.canSeize |
| Polisjobb | Spelare med dessa jobb, i tjänst | Config.Police.jobs |
| Trasiga högtalare | Att skjuta på en placerad högtalare förstör den: den sprakar och tystnar. Ett Speaker Repair Kit (säljs i butiken under Accessories) lagar den: använd kitet bredvid den. | Config.Damage |
| Adminlista | /soundadmin: varje högtalare på servern, vad den spelar och vem som äger den, med knappar för att sätta en waypoint, stoppa musiken eller ta bort högtalaren. |
Config.AdminAce (zerodev.sound.admin) |
| Ge ett item | Serverkonsolen: givespeaker <player id> <item name> |
11. Språk
Scriptet levereras på samma 25 språk som Pulse Phone. Välj ett i config/config.lua:
| Kod | Språk | Kod | Språk | Kod | Språk |
|---|---|---|---|---|---|
en |
Engelska | hu |
Magyar | pt-PT |
Português (Portugal) |
ar |
العربية | it |
Italiano | ro |
Română |
bs |
Bosanski | ja |
日本語 | ru |
Русский |
cs |
Čeština | ko |
한국어 | sl |
Slovenščina |
da |
Dansk | nb |
Norsk bokmål | sv |
Svenska |
de |
Deutsch | nl |
Nederlands | th |
ไทย |
es |
Español | pl |
Polski | tr |
Türkçe |
fr |
Français | pt-BR |
Português (Brasil) | uk |
Українська |
zh-CN |
简体中文 |
Config.Locale = 'de', till exempel. Standardvärdet, 'auto', följer Pulse Phone: servern tar Pulses Config.Locale, och varje spelare får Sound på det språk de har valt i sin telefon. Utan Pulse är det engelska. Spelmeddelanden, tangentpromptar, itemnamn och stereotangentens namn finns i locales/<code>.lua; gränssnittet (fjärrkontroll, bilstereo, butik, installationsverktyg, Pulse-app) finns i locales/<code>_ui.lua. Allt som saknas faller tillbaka på engelska.
För att ändra en rad, redigera den i det språkets fil. Behåll varje %s, %d, %.1f, %% och ~a~ som de är. För att lägga till ett eget språk, kopiera locales/en.lua till locales/xx.lua, ändra Locales['en'] till Locales['xx'] (på båda ställena), översätt texten mellan citattecknen och sätt Config.Locale = 'xx'. locales/ui_strings.txt listar varje gränssnittsnyckel för en xx_ui.lua.
12. Felsökning
Spelarna kan inte använda högtalar-items
- ox_inventory: posterna måste finnas i
ox_inventory/data/items.luamed sin radclient, och ox_inventory måste startas om efter att du klistrat in. Mappen måste fortfarande hetazerodev-sound(posterna anroparzerodev-sound.useItem). - QBCore / ESX:
zerodev-soundmåste starta efter ditt framework iserver.cfg. - codem-inventory på QBCore: slutför codem-inventorys eget steg som pekar
QBCore.Functions.UseItemmot den. - Inget inventory: högtalare är inga items. Spelarna öppnar
/soundoch trycker Set up under Your speakers.
Item-bilder saknas
- ox_inventory: inget att kopiera; bildsökvägen pekar på zerodev-sound. Om de är tomma, kontrollera postens rad
image = 'nui://zerodev-sound/...'och mappnamnet. - Andra inventories: läs konsolraden
Copy ... into ...: den listar de saknade bilderna och mappen de ska till. Kopiera dem frånzerodev-sound/web/img/items/och starta om inventoryt.
En spelare kan inte spela en länk
Det är avsiktligt: spelarna väljer bara från ditt bibliotek. Lägg till låten i
Config.Library (avsnitt 8).
Inget ljud alls
- FiveM:s inbyggda webbläsare startar ljud utan klick, så spelarna behöver aldrig trycka på något för att ”tillåta” ljud. Om en spelare inte hör något medan andra gör det, kolla FiveM i deras volymmixer i Windows.
- Kontrollera högtalaren i fjärrkontrollens flik Speakers: den kan vara avstängd, eller Broken.
- Polisen kan ha stängt av den (i
Config.Police.silenceMinutes), eller så begränsar tysta timmar volymen (Config.QuietHours). - En spelare hör högst
Config.Streaming.maxAudibleSessionsseparata låtar samtidigt (6), närmast först. - Test system i installationsverktyget är tyst när
Config.Libraryär tom ellerConfig.Sources.library = false: det spelar den första låten i biblioteket.
Butiken finns inte där
Config.Shop.enabledmåste varatrue.- Expediten och stället visas bara när en spelare är inom cirka 70 m från
Config.Shop.locations, och bara på den spelarens skärm. Kontrollera koordinaterna du har satt. - Med ox_target eller qb-target, sikta på expediten. Utan någon av dem, ställ dig vid expediten: E Browse speakers.
En högtalare visas som en vanlig GTA-högtalare, eller inte alls
Mappen stream/ saknas eller har döpts om, eller så gick spelaren in innan resursen startade. Starta om servern och anslut igen.
Meddelanden om billjud och vad de betyder
| Meddelande | Varför | Lösning |
|---|---|---|
| Drive into a car audio bay to build. | Bygge var som helst är avstängt och bilen står inte i en hall. | Kör in i hallen (Config.Install.bays), eller sätt Config.Install.anywhere = true. |
| Stand next to your car to build its sound system. | Bygge var som helst är på och du är mer än 8 m från bilen, eller så hittade /caraudio ingen bil inom 4 m. |
Ställ dig vid bilen eller sätt dig i den. |
| Stop the car first. | Bilen rör sig. | Stanna. |
| Car audio can only be fitted to a car you own. | Config.Install.vehicles = 'owned' och den här skylten finns inte i din tabell över ägda fordon. Visas också för alla utom admins när den tabellen inte kan läsas: konsolen visar då en röd rad could not read the owned-vehicles table. |
Använd en ägd bil, sätt 'any', eller rätta databasfelet som konsolen namnger. |
| Only the owner can change this car's audio. | Bilen tillhör en annan spelare. Visas också när Config.Install.anyone = false och spelaren inte har något jobb i tjänst från Config.Install.jobs. |
Ägaren bygger den, eller en mekaniker i tjänst, eller en admin. |
| Not enough money. | De nya delarna kostar mer än spelaren har på Config.Install.account. |
Ta bort delar, eller sätt Config.Install.chargeParts = false. |
| A subwoofer blew. It needs replacing. | Subbarna pressades för hårt för länge nära full volym. | Byt ut subben i hallen; en större förstärkare hjälper. |
Polisen ser inte sina alternativ
Lägg till dina polisjobbnamn i Config.Police.jobs. Spelarna måste vara i tjänst.
13. Uppdatering
Från 1.x till 2.0: läs UPGRADING.md. Mellan 2.x-versioner:
- Säkerhetskopiera din mapp
config/,locales/om du har översatt den, och alla låtar du har lagt till iweb/library/. - Stoppa servern. Ersätt mappen
zerodev-soundmed den nya (behåll namnet). - Lägg tillbaka dina filer i
config/. Om uppdateringsnoteringarna nämner nya inställningar, kopiera de raderna från de nya filerna till dina. - Starta servern och läs konsolen. Eventuella nya items skrivs ut för ditt inventory.
Placerade högtalare, bilinstallationer och spellistor sparas i databasen (zds_speakers, zds_car_builds, zds_playlists, zds_stash) och rörs inte av en uppdatering.
Gå tillbaka: behåll den tidigare zerodev-sound-mappen utanför resources tills den nya versionen fungerar bra, och ta en backup av databasen innan du uppdaterar. För att gå tillbaka stoppar du servern, lägger tillbaka den tidigare mappen och din config/ och startar den. Att gå tillbaka från 3.0 till 2.x på samma databas har inte testats, så återställ databasbackupen om något ser fel ut.