Pulse Phone 문서

Framework

Pulse Phone 1.4.2 기준8분 분량업데이트

3. framework별 단계 안내

휴대폰은 framework를 스스로 찾습니다: es_extended, qb-core, qbx_core, ox_core, ND_Core, vrp 또는 TMC의 core. Config.Framework(config/config.lua)는 둘 이상이 실행 중이거나 커스텀 framework를 쓸 때만 필요합니다.

내 framework 한눈에 보기

Framework 감지 기준 아이템 은행과 현금 알아 두면 좋은 점
ESX Legacy es_extended Pulse가 ESX의 items 테이블에 아이템을 직접 추가합니다(기본 인벤토리). ox_inventory에서는 시작 점검이 출력하는 블록을 붙여 넣으세요 ESX 계좌 소사이어티 스크립트를 통한 회사 계좌
QBCore qb-core Pulse가 QBCore의 shared items에 아이템을 직접 추가합니다(qb-, ps-, lj-inventory) QBCore 돈 isboss 직급이 회사를 운영합니다
Qbox qbx_core(내장된 qb-core 대체 구현은 두 번째 framework가 아니라 Qbox로 인식) 출력된 ox_inventory 블록을 붙여 넣으세요 Qbox 돈 QBCore 어댑터가 아닌 Qbox 어댑터를 사용합니다
ox_core ox_core 출력된 ox_inventory 블록을 붙여 넣으세요 캐릭터의 ox_core 계좌, 현금은 ox_inventory의 money 근무 플래그 없음: 모두 근무 중으로 간주합니다
ND Core ND_Core 출력된 ox_inventory 블록을 붙여 넣으세요 ND의 bank와 cash 근무 플래그 없음, 회사 계좌 없음
TMC core 리소스, TMC 자체 core 객체로 인식 모든 아이템이 TMC 아이템 목록에 있어야 합니다. 시작 점검이 출력해 줍니다 TMC 돈 커스텀 브리지로 작동하며, 설정할 것이 없습니다
vRP 2 vrp vRP 섹션 참고 vRP 지갑과 은행 vRP 1과 포크 버전은 지원하지 않습니다
Standalone 위의 어떤 것도 실행 중이지 않음 필요 없음 휴대폰 자체 은행 테스트 서버나 framework 없는 서버용
커스텀 Config.Framework = 'custom' 내 브리지를 통해 내 브리지를 통해 "커스텀 또는 자체 제작 framework" 참고

framework 강제 지정

대부분의 서버는 이 설정이 필요 없습니다. 시작 시 표시되는 framework가 잘못되었거나, framework core가 두 개 설치되어 시작될 때 강제로 지정하세요. server.cfg에 한 줄을 추가합니다:

server.cfg
setr phone_framework qb
값 Framework
esx ESX Legacy (es_extended)
qb QBCore (qb-core)
qbox Qbox (qbx_core)
ox ox_core
nd ND Core (ND_Core)
vrp vRP 2 (vrp)
tmc TMC (core)
standalone framework 없음: 휴대폰이 자체 신원과 은행을 사용합니다
custom 직접 만든 브리지(아래 "커스텀 또는 자체 제작 framework" 참고)
auto 줄을 넣지 않은 것과 같습니다: Config.Framework가 결정합니다
  • Config.Framework보다 우선합니다. 바꾼 뒤에는 휴대폰을 재시작하세요.
  • 리소스 이름도 사용할 수 있습니다: qbcore, qb-core, qbx_core, es_extended, ox_core. 모르는 단어는 거부되며, 시작 점검에 그렇게 표시되고 돈 관련 기능은 꺼진 상태로 유지됩니다.
  • qb를 qbx_core가 실행 중인 서버에서 지정하면 Qbox 어댑터를 사용합니다. Qbox는 QBCore로도 응답합니다.
  • 강제로 지정한 framework가 시작되지 않으면, 시작될 때까지 휴대폰은 "not ready" 화면에 머뭅니다. 휴대폰이 스스로 다른 framework로 바꾸는 일은 없습니다.

멀티캐릭터는 모든 framework에서 작동합니다. Config.IdentityScope = 'character'(기본값)는 캐릭터마다 휴대폰을 따로 줍니다. 'player'는 계정당 휴대폰 하나입니다. 한 번만 정하세요. 운영 중인 서버에서 바꾸면 기존 휴대폰을 모두 잃게 됩니다.

회사 관리(근무, 직원, 채용, Services 앱의 회사 계좌)는 Config.Services(config/apps.lua)에 있는 회사를 사용합니다. 직업 이름이 기본값(police, ambulance, mechanic, taxi, fire ...)과 다르다면 해당 회사의 job 목록에 추가하세요. 보스 직급을 직접 정하려면 회사에 bossGrade = <n>을 추가하세요.

ESX Legacy

server.cfg
ensure oxmysql
ensure es_extended
# ... your ESX scripts, inventory, banking ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 아이템: ESX 기본 인벤토리에서는 할 일이 없습니다. 휴대폰이 시작 시 ESX의 items 테이블에 아이템을 추가하고, 무엇을 추가했는지 콘솔에 알려 줍니다. 직접 추가하고 싶다면 config/items/esx.sql을 사용하세요. 다른 인벤토리는 4절을 참고하세요.
  • 돈: 은행은 ESX bank 계좌, 현금은 money 계좌입니다.
  • 캐릭터: 휴대폰은 ESX 플레이어 identifier를 따르므로 esx_multicharacter가 작동합니다.
  • 보스: 이름이 boss인 직급이 회사를 관리합니다. 단, bossGrade를 설정하면 그 값을 따릅니다.
  • 회사 계좌: esx_addonaccount / esx_society, 또는 7절의 은행 스크립트.

QBCore

server.cfg
ensure oxmysql
ensure qb-core
# ... qb-inventory and your other qb scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 아이템: 붙여 넣을 것이 없습니다. 휴대폰이 시작 시 필요한 아이템을 QBCore shared items에 추가하고, 무엇을 추가했는지 콘솔에 알려 줍니다. 이미지는 config/items/images/에서 qb-inventory/html/images/로 복사하세요. 빠진 이미지는 시작 점검이 알려 줍니다.
  • 돈: bank와 cash.
  • 캐릭터: citizenid를 사용하므로 qb-multicharacter가 작동합니다.
  • 보스: 직업에서 isboss = true인 직급입니다. 단, bossGrade를 설정하면 그 값을 따릅니다.
  • 회사 계좌: Renewed-Banking, qb-banking 또는 구버전 qb-management.
  • 멀티잡: ps-multijob이 실행 중이면 플레이어의 다른 직업이 Services에 표시되며, 탭 한 번으로 활성 직업을 바꿉니다.

Qbox

server.cfg
ensure oxmysql
ensure qbx_core
ensure ox_inventory
# ... your other Qbox scripts, in Qbox's own order ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 아이템: Qbox는 ox_inventory를 사용하며, ox_inventory는 다른 스크립트로부터 아이템을 받을 수 없습니다. 서버를 한 번 시작하세요. 시작 점검이 빠진 항목을 출력하며, 그대로 ox_inventory/data/items.lua에 붙여 넣으면 됩니다(4절). 이미지는 ox_inventory/web/images/에 넣습니다.
  • 돈: qbx_core를 통한 bank와 cash.
  • 캐릭터: citizenid.
  • 보스: isboss = true인 직급입니다. 단, bossGrade를 설정하면 그 값을 따릅니다.
  • 멀티잡: 내장되어 있습니다. 플레이어의 다른 직업이 Services에 표시됩니다.
  • qbx_core는 qb-core로도 응답합니다. 정상입니다. 휴대폰은 둘을 하나의 framework로 취급합니다.

ox_core

server.cfg
ensure oxmysql
ensure ox_core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 아이템: 서버를 한 번 시작하세요. 시작 점검이 빠진 항목을 출력하며, 그대로 ox_inventory/data/items.lua에 붙여 넣으면 됩니다(4절). 이미지는 ox_inventory/web/images/에 넣습니다.
  • 돈: 은행은 캐릭터의 ox_core 계좌입니다. 현금은 ox_inventory의 money 아이템입니다.
  • 캐릭터: charId.
  • 직업: ox_core 그룹에는 근무 플래그가 없으므로 휴대폰이 근무 상태를 직접 관리합니다. 회사 관리(직원, 채용, 직급)와 발레파킹은 ox_core에서 사용할 수 없습니다.

ND Core

server.cfg
ensure oxmysql
ensure ox_lib
ensure ND_Core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 자동 감지: ND_Core가 시작되어 있으면 스스로 찾습니다. 강제로 지정하려면: setr phone_framework nd.
  • 아이템: ND는 ox_inventory를 사용합니다. 서버를 한 번 시작하세요. 시작 점검이 빠진 항목을 출력하며, 그대로 ox_inventory/data/items.lua에 붙여 넣으면 됩니다(4절).
  • 돈: 캐릭터의 ND bank와 ND cash(ox_inventory가 money 아이템을 맞춰 줍니다).
  • 캐릭터: ND의 캐릭터 id. 캐릭터에 ND 자체 전화번호가 있으면 그 번호를 표시합니다.
  • 직업: 캐릭터의 ND 직업과 계급. ND에는 근무 플래그가 없으므로 모두 근무 중으로 간주합니다. 회사 관리, 회사 계좌, 발레파킹은 ND Core에서 사용할 수 없습니다.
  • 차고: 소유 차량은 ND의 nd_vehicles 테이블에서 가져옵니다.

vRP

vRP 2만 지원합니다(vRP 1이나 커뮤니티 포크는 지원하지 않습니다). 휴대폰은 bridge/frameworks/vrp/에서 작은 확장 기능을 vRP에 불러옵니다. 복사할 것은 없습니다.

server.cfg
ensure oxmysql
ensure vrp
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 아이템: vRP용 아이템 파일은 없으며, vRP 2는 휴대폰용 아이템을 사용 가능하게 만들 수 없습니다. Config.Item.required = false(기본값)를 유지하고, Config.Store.box = false로 설정해 매장이 휴대폰을 직접 넘겨주게 하세요. 플레이어는 /phonepack과 /phonecable로 충전 아이템을 사용합니다. vRP 인벤토리에서는 플레이어가 pulse_magpack과 pulse_cable을 가지고 있어야 하므로, 두 아이템을 vRP 아이템 목록에 추가하거나 Config.Charging.enabled = false로 설정하세요.
  • 돈: vRP의 은행과 지갑.
  • 캐릭터: vRP의 캐릭터 id.
  • 직업: 회사 관리와 발레파킹은 vRP에서 사용할 수 없습니다. 차고 스크립트를 연결하지 않으면 Garage 앱은 비어 있습니다.

TMC

TMC는 내장되어 있습니다. 휴대폰이 TMC의 core를 스스로 인식하므로, 추가 리소스도 config/config.lua 변경도 필요 없습니다(auto, tmc, custom 모두 작동합니다).

server.cfg
ensure oxmysql
ensure core
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone

시작 점검에 Framework: TMC가 표시됩니다.

  • 아이템: 다른 아이템을 추가하는 것과 같은 방식으로 TMC 아이템 목록에 Pulse 아이템을 추가하세요. 이름은 phone, pulse_magpack, pulse_magpack_max, pulse_cable, pulse_router, pulse_burner, pulse_buds, pulse_ringlight, pulse_wallet이며(config/items/tmc.lua에 항목이 있습니다), 매장 박스용으로 pulse_phone_box와 마감별 박스 하나씩(pulse_phone_box_black ...)이 있습니다. 라벨, 무게, 설명은 config/items/qb-core.lua에, 이미지는 config/items/images/에 있습니다. 목록에 없는 아이템은 거부되며 플레이어에게는 "inventory full"로 표시되고, 콘솔에 해당 아이템 이름이 나옵니다. 박스 아이템이 목록에 없어도 판매는 막히지 않습니다. 매장은 그 휴대폰을 박스 없이 넘겨주고 콘솔에 알립니다. 박스를 전혀 쓰지 않으려면 Config.Store.box = false로 설정하세요.
  • 돈: 캐릭터의 현금과 은행입니다. 은행은 TMC의 banking 리소스가 실행 중이면 그것(본인 개인 계좌), 아니면 core의 은행 잔액을 사용합니다. 계좌번호 형식이 BNK123456과 다르다면, 계좌번호가 들어 있는 필드를 config/config.lua에서 지정하세요: Config.Providers.tmcBankAccount = 'charinfo.account'(내 필드로 바꿔서). 은행을 읽을 수 없을 때 Wallet은 지어낸 숫자가 아니라 대시를 표시합니다.
  • 캐릭터: TMC의 citizen id.
  • 직업: 근무 중인 직업(또는 첫 번째 직업)과 그 직급, 근무 상태.
  • 임시 pulse_tmc 커넥터를 쓰고 있었나요? ensure pulse_tmc를 제거하고 그 폴더를 삭제하세요. 아직 실행 중이면 콘솔이 알려 줍니다.

Standalone (framework 없음)

server.cfg
ensure oxmysql
ensure pma-voice
ensure screenshot-basic
ensure phone
  • 아이템: 필요 없습니다. 모든 플레이어에게 휴대폰, Reserve, 케이블이 있습니다.
  • 돈: 휴대폰이 자체 은행을 사용합니다. 새 플레이어는 5000으로 시작합니다(startingBalance, config/apps.lua).
  • 캐릭터: 플레이어의 Rockstar 라이선스.
  • 직업, 차량, 집: 휴대폰이 자체적으로 관리합니다. 9절의 테스트 명령어로 채워 넣으세요.

커스텀 또는 자체 제작 framework

  1. Config.Framework = 'custom'을 config/config.lua에 설정하세요.
  2. optional-developer-kit/custom_framework_bridge.lua 형태의 브리지 테이블을 휴대폰에 넘겨주세요. Config.Providers.custom으로 config/config.lua에 넣거나, 내 리소스에서 exports.phone:RegisterFrameworkBridge(MyBridge)로 등록하면 됩니다.
  3. 필수 항목은 GetCharacterId뿐입니다. 이름, 직업, 라이선스, 차량/집 목록 함수를 빼면 휴대폰은 서버에 그런 데이터가 없는 것처럼 동작합니다. 돈이나 아이템 함수를 빼면 해당 동작은 거부됩니다. 휴대폰이 자체 은행에서 대신 결제하는 일은 없습니다. Bank 앱은 브리지에 GetBankBalance가 있을 때만 나타납니다.
  4. 휴대폰이 실행 중인 상태에서 core가 재시작되면, core가 준비된 뒤 exports.phone:FrameworkRestarted()를 호출하세요.

bridge/frameworks/custom.lua에서 휴대폰이 테이블을 어떻게 쓰는지 볼 수 있습니다. 다른 자체 제작 스크립트(은행이나 차고 스크립트)를 연결하려면 optional-developer-kit/custom_provider_template.lua와 Export를 참고하세요. 두 템플릿은 phone 폴더가 아니라 선택형 개발자 키트 zerodevscripts.com/downloads/PulsePhone-developer-kit.zip에 들어 있습니다.

영어에서 번역한 페이지입니다. 영어 페이지와 내용이 다르면 영어 페이지가 기준입니다. English