리버티게임:게임 메타데이터: 두 판 사이의 차이

리버티게임, 모두가 만들어가는 자유로운 게임
imported>Hsl0
편집 요약 없음
 
(사용자 8명의 중간 판 84개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{제안}}
버전: 0.6 / {{주석|최근 수정: 2023년 9월 14일 (목) 18:52 (KST)|항목 추가, 항목 형식 변경 등 유의미한 수정이 있을 때만 갱신되며, 단순 설명 편집은 포함하지 않습니다.}}


게임 메타데이터는 게임에 대한 정보를 리버티게임의 다양한 시스템이 읽을 수 있도록 모아놓은 [[리버티게임:JSON|JSON]] 문서입니다. 게임 메타데이터는 기본적으로 최상위 게임 문서의 하위 문서인 {{툴팁|<code>/game.json</code>|(게임이름)/game.json|sym=1}}에 작성됩니다.
게임 메타데이터는 게임에 대한 정보를 리버티게임의 다양한 시스템이 읽을 수 있도록 모아놓은 [[리버티게임:JSON|JSON]] 문서입니다. 게임 메타데이터는 기본적으로 최상위 게임 문서의 하위 문서인 {{주석|<code>/game.json</code>|(게임이름)/game.json}}에 작성됩니다.
 
게임 메타데이터 규격은 아직 확정되지 않았습니다. 계속 논의 중이며, 언제든지 변경될 수 있습니다.
 
== 만들기 ==
{{본문|리버티게임:게임 메타데이터/마법사}}
{{/마법사}}


== [[리버티게임:JSON|JSON 문법]] ==
== [[리버티게임:JSON|JSON 문법]] ==
8번째 줄: 14번째 줄:
== 요소 ==
== 요소 ==
=== 기본 정보 ===
=== 기본 정보 ===
; name: 게임의 이름입니다. 상위 문서명과 다르게 입력할 수 있으며, 여기에 입력한 대로 게임아이콘에 보여집니다. (문자열)
; genre: 게임의 장르입니다. 배열을 사용해 여러 장르를 지정할 수 있습니다. [[:분류:리버티게임 장르별 분류]]의 하위 분류에서 '게임'만 뗀 값입니다.
; author: 게임의 소유자, 또는 주 기여자의 사용자 이름을 입력합니다. 다시말해, 여러분의 사용자 이름을 입력하면 되겠습니다. 여러명이 제작한 합작 게임의 경우, 배열을 사용할 수 있습니다. (문자열/배열:문자열)
{{#dpl:
; contributor: 게임을 만드는데 크거나 작게 도움을 준 기여자(조력자)의 사용자 이름을 입력합니다. (문자열/배열:문자열)
|category=리버티게임 장르별 분류
; category: 게임의 장르입니다. 여러 장르에 해당될 경우 배열을 사용할 수 있습니다. 장르 코드명은 아래와 같습니다. (문자열:소문자*3/배열:문자열)
|nottitlematch=장르가 분류되지 않은 게임
:* adv: 어드벤처 게임
|namespace=분류
:* liv: 도시·마을 생활 게임
|shownamespace=false
:* ral: 철도교통 게임
|replaceintitle=/ 게임$/,
:* rod: 도로교통 게임
}}
:* esc: 탈출 게임
 
:* nax: 낚시 게임
; name: 게임의 이름입니다. 상위 문서명과 다르게 입력할 수 있으며, 여기에 입력한 대로 게임아이콘에 보여집니다. (문자열*50, '''필수''')
:* act: 액션 게임
 
:* sht: 슈팅 게임
; author: 게임의 소유자, 또는 주 기여자의 사용자 이름을 입력합니다. 다시 말해, 여러분의 사용자 이름을 입력하면 되겠습니다. 여러명이 제작한 합작 게임의 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고, <code>사용자:</code> 이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 기본 이름공간의 경우 그냥 <code>:</code>(콜론)으로 시작하면 됩니다. 틀 이름공간이 아닌 문서를 틀처럼 끼워넣을 때와 비슷합니다. (문자열:문서명|배열:문자열:문서명, '''필수''')
:* puz: 퍼즐 게임
 
:* qiz: 퀴즈 게임
; summary: 게임에 대한 한 줄짜리 짧은 설명입니다. 80자 이내로 작성해 주세요. (문자열*80, '''필수''')
:* brd: 보드 게임
 
:* mus: 음악 게임
; progress: 게임의 완성도를 입력합니다. (숫자:정수:0~5, '''필수''')
:* mlt: 멀티플레이 게임
* 0: [[파일:Progress base.svg|16px|변경하지 말아야 하는 공사중인 게임]] 변경하지 말아야 하는 공사중인 게임입니다.
:* cpn: 캠페인 게임
* 1: [[파일:Progress low.svg|16px|조금 완성된 게임]] 조금 완성된 게임입니다.
:* prd: 예언 게임
* 2: [[파일:Progress medium.svg|16px|중간 정도 완성된 게임]] 중간 정도 완성된 게임입니다.
:* rnd: 랜덤 게임
* 3: [[파일:Progress high.svg|16px|거의 완성된 게임]] 거의 완성된 게임입니다.
:* wst: 시간 낭비하기
* 4: [[파일:Progress full.svg|16px|완성되었지만 추가할 수 있는 게임]] 완성되었지만 추가할 수 있는 게임입니다.
:* mag: 통합 게임
* 5: [[파일:백괴게임 완성도 7단계.svg|16px|완성되어 변경하지 말아야 하는 게임]] 완성되어 변경하지 말아야 하는 게임입니다.
; progress: 게임의 완성도를 입력합니다. (숫자:정수:0~5)
 
:* 0: [[파일:Progress base.svg|16px|변경하지 말아야 하는 공사중인 게임]] 변경하지 말아야 하는 공사중인 게임입니다.
; editpolicy: 게임 편집의 개방성을 결정하는 게임 편집 정책입니다. 다음 중 하나를 선택할 수 있습니다. (문자열, '''필수''')
:* 1: [[파일:Progress low.svg|16px|조금 완성된 게임]] 조금 완성된 게임입니다.
* open: [[파일:Crystal Clear app clean.png|17px|편집 가능]] 모두에게 편집이 개방되었습니다.
:* 2: [[파일:Progress medium.svg|16px|중간 정도 완성된 게임]] 중간 정도 완성된 게임입니다.
* limited: [[파일:Crystal Clear bot on trial2.png|17px|규칙에 따라 편집 가능]] 규칙에 따라 일부만 편집할 수 있습니다.
:* 3: [[파일:Progress high.svg|16px|거의 완성된 게임]] 거의 완성된 게임입니다.
* closed: [[파일:Crystal Clear action editdelete.png|17px|편집 금지]] 제작자 이외의 편집이 제한됩니다.
:* 4: [[파일:Progress full.svg|16px|완성되었지만 추가할 수 있는 게임]] 완성되었지만 추가할 수 있는 게임입니다.
 
:* 5: [[파일:백괴게임 완성도 7단계.svg|16px|완성되어 변경하지 말아야 하는 게임]] 완성되어 변경하지 말아야 하는 게임입니다.
; variant: 대체 제목 또는 별칭을 나타냅니다. 'name' 필드만으로 게임의 설계대로 구현할 수 없을때 사용하는 필드입니다. (문자열, 선택)
; openness: 게임의 개방성을 나타냅니다. (부울/문자열)
 
:* true: [[파일:Crystal Clear app clean.png|17px|편집 가능]] 모두에게 편집이 개방되었습니다.
; issuetracker: 게임의 이슈를 보고할 있는 트래커에 대한 링크입니다. 기본값은 해당 문서의 토론란이며, 형식은 url 문자열입니다. 일반적으로 리버티게임 내부 게임은 해당게임 토론 이름공간으로 통일되기에 기입할 필요가 없습니다. 소스코드가 외부 저장소에 위치한 경우 해당 사이트의 이슈 게시란으로 명시하기 위한 필드입니다. (문자열:URL, 선택)
:* false: [[파일:Crystal Clear action editdelete.png|17px|편집 금지]] 제작자 이외의 편집이 제한됩니다.
 
:* "partial": [[파일:Crystal Clear bot on trial2.png|17px|규칙에 따라 편집 가능]] 규칙에 따라 일부만 편집할 있습니다.
; changelog: 게임의 변경이력에 대한 링크입니다. (문자열, 선택)
; tech: 게임에 사용된 기술 구조를 입력합니다. (문자열:소문자)
 
:* link: [[파일:Tech link.svg|16px|링크]] 링크
; description: 게임에 대한 간단한 설명입니다. 한 문단 정도의 분량으로 최대한 간단히 작성해 주세요. (문자열*4000, 선택)
:* cgi: [[파일:Tech CGI.svg|16px|CGI]] CGI
 
:* windows: [[파일:Tech Windows.svg|16px|윈도우]] 윈도우
; version: 현재 버전을 나타냅니다. (문자열, 선택)
:* db: [[파일:Tech DB.svg|16px|DB]] DB
 
:* javascript: [[파일:Tech JS.svg|16px|자바스크립트]] 자바스크립트
; contributor: 게임을 만드는데 크거나 작게 도움을 준 기여자(조력자)의 사용자 이름을 입력합니다. 주 기여자(author)는 입력하지 않습니다. 여러명을 입력하려는 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고, <code>사용자:</code> 이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 기본 이름공간의 경우 그냥 <code>:</code>(콜론)으로 시작하면 됩니다. 틀 이름공간이 아닌 문서를 틀처럼 끼워넣을 때와 비슷합니다. (문자열:문서명|배열:문자열:문서명, 선택)
:* lua: [[파일:Tech Lua.svg|16px|루아]] 루아
 
:* other: [[파일:Tech other.svg|16px|기타]] 기타
; editpolicypage: 게임 편집 지침이나 규칙을 안내하는 문서의 제목을 작성합니다. 게임 대문(game.json의 상위 문서)을 기준으로 한 상대 경로를 사용할 수 있습니다. (문자열:문서명, 선택)
; rating: 게임 이용 연령 등급을 입력합니다. (숫자:정수/문자열/null)
 
:* null: [[파일:GRAC Square Template.svg|16px|게임 제작자가 이용가 등급 판정을 하지 않았습니다]] 미분류
; platform: 게임이 지원하는 플랫폼 목록입니다. 생략하면 web만 지원하는 것으로 간주됩니다. (문자열:소문자|배열:문자열:소문자, 선택)
:* "test": [[파일:GRAC Test Square.svg|16px|평가하고 있는 중입니다]] 평가용
* web: [[파일:Feather-location-globe.svg|16px|]] 웹 (무설치) (기본값)
:* "all": [[파일:GRAC All Square.svg|16px|전체 이용가]] 전체이용가
* windows: [[파일:Windows logo - 2021 (Black).svg|16px|윈도우]] 윈도우 (설치)
:* 12: [[파일:GRAC 12 Square.svg|16px|12세 이용가]] 12세 이용가
* linux: [[파일:Tux Mono.svg|16px|리눅스]] 리눅스 (설치)
:* 15: [[파일:GRAC 15 Square.svg|16px|15세 이용가]] 15세 이용가
* macos: [[파일:MacOS logo.svg|16px|맥 OS]] 맥 OS (설치)
:* 18: [[파일:GRAC 18 Square.svg|16px|18세 이용가]] 18세 이용가
* android: [[파일:Cib-android (CoreUI Icons v1.0.0).svg|16px|안드로이드]] 안드로이드 (설치)
; construction: 게임 공사 기간을 입력합니다. 년-월-일로 입력해 주세요. 완성된 게임은 입력할 필요가 없습니다. (문자열)
* other: [[파일:OOjs UI icon help-ltr.svg|16px|기타]] 기타
; repair: 게임 수리 기간을 입력합니다. 년-월-일로 입력해 주세요. 수리중이 아닐 경우 입력할 필요가 없습니다. (문자열)
 
; abandon: 버려진 게임 여부입니다. 벼려진 게임이 아닐 경우 입력할 필요가 없습니다. (부울)
; rating: 각 등급 분류 기관별 등급 분류 정보를 입력합니다. (객체|null, 선택)
:* true: [[파일:Crystal Clear app logout.png|17px|버려진 게임]] 버려진 게임입니다.
* null: [[파일:GRAC Square Template.svg|16px|게임 제작자가 이용가 등급 판정을 하지 않았습니다]] 미분류 (기본값)
:* false: 버려진 게임이 아닙니다.
:; libertygame: [[리버티게임:등급 심의|리버티게임 자체 등급 심의]]의 등급 분류 정보입니다. 등급면제를 제외한 grac 등급 분류 정보가 있다면 생략해도 됩니다. (객체, 선택)
::; age: 게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열, '''필수''')
::* "test": [[파일:GRAC Test Square.svg|16px|평가하고 있는 중입니다]] 평가용
::* "all": [[파일:GRAC All Square.svg|16px|전체 이용가]] 전체 이용가
::* 12: [[파일:GRAC 12 Square.svg|16px|12세 이용가]] 12세 이용가
::* 15: [[파일:GRAC 15 Square.svg|16px|15세 이용가]] 15세 이용가
::* <s>18: [[파일:GRAC 18 Square.svg|16px|18세 이용가]] 18세 이용가</s>([[리버티게임: 등급 심의]]에서 삭제되어 지정 금지됨)
::; summary: 게임 내용정보를 입력합니다. 일반적으로 아래의 게임물관리위원회에서 사용되는 게임 내용정보과 같은 형식을 취합니다. (배열:문자열, 선택)
::: [[버:등급 심의]]에 정의되지 않은 사항입니다. 개편전까지 비표준인 필드이며 실제 효력이 없습니다.
::; date: 게임 이용 등급을 분류한 일자를 입력합니다. (문자열:날짜, '''필수''')
:; grac: 게임물관리위원회(게임콘텐츠등급분류위원회 포함)의 등급 분류 정보입니다. 정식으로 등급분류나 등급면제/시험용 게임 확인을 받은 경우에만 작성하세요. (객체, 선택)
::; age: 게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열, '''필수''')
::* "re": [[파일:GRAC Rating Exempted Square.svg|16px|등급면제]] 등급면제
::* "test": [[파일:GRAC Test Square.svg|16px|평가용]] 평가용
::* "all": [[파일:GRAC All Square.svg|16px|전체이용가]] 전체이용가
::* 12: [[파일:GRAC 12 Square.svg|16px|12세이용가]] 12세이용가
::* 15: [[파일:GRAC 15 Square.svg|16px|15세이용가]] 15세이용가
::* 18: [[파일:GRAC 18 Square.svg|16px|18세이용가]] 18세이용가
::; summary: 게임 내용정보를 입력합니다. (배열:문자열, 선택)
::* sexuality: [[파일:GRAC Sexuality (선정성).svg|16px|선정성]] 선정성
::* violence: [[파일:GRAC Violence (폭력성).svg|16px|폭력성]] 폭력성
::* horror: [[파일:GRAC Fear, Horror, Threatening (공포).svg|16px|공포]] 공포
::* language: [[파일:GRAC Language.svg|16px|언어의 부적절성]] 언어의 부적절성
::* drug: [[파일:GRAC Alcohol, Tobacco, Drugs (약물).svg|16px|약물]] 약물
::* crime: [[파일:GRAC Crime, anti-societal or anti-governmental messages.svg|16px|범죄]] 범죄
::* gambling: [[파일:GRAC Gambling (사행성).svg|16px|사행성]] 사행성
::; id: age가 "test"면 평가확인증번호를, "re"면 등급면제 확인증번호를, 그 외이면 등급분류번호를 입력합니다. (문자열, '''필수''')
::* (GC-)CC-''xx''-''yymmdd''-''nnn'': 등급분류번호
::* ''yyyy''-''nnnn'': [[파일:GRAC Test Square.svg|16px|평가용]] 평가확인증번호
::* ''yyyy''-RE''nnnn'': [[파일:GRAC Rating Exempted Square.svg|16px|등급면제]] 등급면제 확인증번호
::; title: 등급분류/시험용게임확인/등급면제확인 상 게임의 제명을 입력합니다. name과 같은 경우 입력하지 않으며, 다른 경우에만 입력합니다. (문자열, 선택)
::; author: 등급분류/시험용게임확인/등급면제확인 상 신청자를 입력합니다. (문자열, '''필수''')
::; date: 등급분류/시험용게임확인/등급면제확인 상 게임의 제작일자를 입력합니다. (문자열:날짜, '''필수''')
 
; construction: 게임 공사 여부 및 기간을 입력합니다. true를 입력하거나 공사를 마치는 날짜를 년-월-일로 입력해 주세요. . (문자열:날짜|부울, 선택)
* "''yyyy''-''mm''-''dd''": 해당 날짜까지 공사중인 게임입니다.
* true: 공사중인 게임입니다. 기한은 마지막 편집으로부터 15일 뒤까지입니다.
* false: 공사중인 게임이 아닙니다. (기본값)
 
; repair: 게임 수리 여부 및 기간을 입력합니다. true를 입력하거나 수리를 마치는 날짜를 년-월-일로 입력해 주세요. (문자열:날짜|부울, 선택)
* "''yyyy''-''mm''-''dd''": 해당 날짜까지 수리중인 게임입니다.
* true: 수리중인 게임입니다. 기한은 마지막 편집으로부터 15일 뒤까지입니다.
* false: 수리중인 게임이 아닙니다. (기본값)
 
; abandon: 버려진 게임을 나타냅니다. (부울, 선택)
* true: [[파일:Crystal Clear app logout.png|17px|버려진 게임]] 버려진 게임입니다.
* false: 버려진 게임이 아닙니다. (기본값)
 
; login: 로그인 필요 여부를 선택합니다. (문자열, 선택)
* required: 로그인한 사용자만 이용할 수 있는 게임입니다. 로그인하지 않으면 모든 기능이 사용 불가능할 때 선택하세요.
* recommended: 로그인하여 플레이할 것을 권장하는 게임입니다. 로그인하지 않으면 일부 기능이 제한될 때 선택하세요.
* unnecessary: IP 사용자도 이용할 수 있는 게임입니다. 로그인하지 않아도 모든 기능을 제한없이 사용할 수 있을 때 선택하세요. (기본값)
 
; saves: 세이브 저장형 게임의 경우 데이터가 저장되는 위치를 나타냅니다. 사용자는 $1에 표기됩니다. 문자열 혹은 문자열의 배열의 형식을 취합니다.
; privacypolicy: 개인 정보를 수집하는 게임의 개인 정보 취급 방침 문서를 지정합니다. 게임 대문(game.json의 상위 문서)을 기준으로 한 상대 경로를 사용할 수 있습니다. (문자열:문서명, 선택)
 
; created: 게임이 만들어진 날짜를 기입합니다. (문자열:날짜)
; image : 게임을 대표하는 이미지를 지정합니다. 리버티게임 내부에 있는 파일만 지정 할 수 있으며, 네임스페이스는 제외하고 지정합니다. 예) [[:파일:fishing.PNG|fishing.PNG]] (문자열, 선택)
; tech : 사용한 기술 수준을 깅비합니다. 플랫폼 구분 없이 0~2까지 3단계로 지정합니다.
: 일반적으로 링크만 있는 텍스트 게임의 경우 0, cgi나 url파라미터를 사용한 게임은 1, 해당 게임을 위한 자체 자바스크립트/모듈을 사용을 작성한 게임의 경우 2를 사용합니다.
 
; featured: 특집게임에 대한 추가 정보를 기입합니다. (객체|null, 선택)
:; date: 게임이 특집 게임으로 선정된 날짜를 나타냅니다. (문자열: 날짜, '''필수''')
:; description: 특집 게임의 추천평을 기입합니다. (문자열, 선택)
:; author: 추천평을 작성한 사용자명을 기입합니다. (문자열, 선택)


=== DB2 키 정보 ===
=== DB2 키 정보 ===
81번째 줄: 151번째 줄:
}
}
</syntaxhighlight>
</syntaxhighlight>
;gameDB
 
:; default: 기본키에 대한 정보를 입력합니다. (객체:[[#키 정보 객체|키 정보 객체]])
; gameDB: (객체, 선택)
:; keys: 사용자 지정 키에 대한 정보를 입력합니다. 키에 키 이름을, 값에 [[#키 정보 객체|키 정보 객체]]를 작성합니다. (객체)
:; default: 기본키에 대한 정보를 입력합니다. (객체:[[#키 정보 객체|키 정보 객체]], 선택)
:; keys: 사용자 지정 키에 대한 정보를 입력합니다. 키에 키 이름을, 값에 [[#키 정보 객체|키 정보 객체]]를 작성합니다. (객체:{[문자열]:[[#키 정보 객체|키 정보 객체]]}, 선택)


==== 키 정보 객체 ====
==== 키 정보 객체 ====
:; description: 키에 대한 설명을 입력합니다. (문자열)
:; description: 키에 대한 설명을 입력합니다. (문자열, '''필수''')


== 스키마 ==
== 스키마 ==
* [[/스키마.json|JSON 스키마]]
* [[/스키마.json|JSON 스키마]]
* [[/스키마.ts|TypeScript 정의]]
 
[[분류:리버티게임 도움말]]

2023년 11월 2일 (목) 06:45 기준 최신판

버전: 0.6 / 최근 수정: 2023년 9월 14일 (목) 18:52 (KST)항목 추가, 항목 형식 변경 등 유의미한 수정이 있을 때만 갱신되며, 단순 설명 편집은 포함하지 않습니다.

게임 메타데이터는 게임에 대한 정보를 리버티게임의 다양한 시스템이 읽을 수 있도록 모아놓은 JSON 문서입니다. 게임 메타데이터는 기본적으로 최상위 게임 문서의 하위 문서인 /game.json(게임이름)/game.json에 작성됩니다.

게임 메타데이터 규격은 아직 확정되지 않았습니다. 계속 논의 중이며, 언제든지 변경될 수 있습니다.

만들기[원본 편집]

이 부분의 본문은 리버티게임:게임 메타데이터/마법사입니다.
게임 메타데이터 만들기

JSON 문법[원본 편집]

이 부분의 본문은 리버티게임:JSON입니다.

요소[원본 편집]

기본 정보[원본 편집]

genre
게임의 장르입니다. 배열을 사용해 여러 장르를 지정할 수 있습니다. 분류:리버티게임 장르별 분류의 하위 분류에서 '게임'만 뗀 값입니다.
name
게임의 이름입니다. 상위 문서명과 다르게 입력할 수 있으며, 여기에 입력한 대로 게임아이콘에 보여집니다. (문자열*50, 필수)
author
게임의 소유자, 또는 주 기여자의 사용자 이름을 입력합니다. 다시 말해, 여러분의 사용자 이름을 입력하면 되겠습니다. 여러명이 제작한 합작 게임의 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고, 사용자: 이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 기본 이름공간의 경우 그냥 :(콜론)으로 시작하면 됩니다. 틀 이름공간이 아닌 문서를 틀처럼 끼워넣을 때와 비슷합니다. (문자열:문서명|배열:문자열:문서명, 필수)
summary
게임에 대한 한 줄짜리 짧은 설명입니다. 80자 이내로 작성해 주세요. (문자열*80, 필수)
progress
게임의 완성도를 입력합니다. (숫자:정수:0~5, 필수)
  • 0: 변경하지 말아야 하는 공사중인 게임 변경하지 말아야 하는 공사중인 게임입니다.
  • 1: 조금 완성된 게임 조금 완성된 게임입니다.
  • 2: 중간 정도 완성된 게임 중간 정도 완성된 게임입니다.
  • 3: 거의 완성된 게임 거의 완성된 게임입니다.
  • 4: 완성되었지만 추가할 수 있는 게임 완성되었지만 추가할 수 있는 게임입니다.
  • 5: 완성되어 변경하지 말아야 하는 게임 완성되어 변경하지 말아야 하는 게임입니다.
editpolicy
게임 편집의 개방성을 결정하는 게임 편집 정책입니다. 다음 중 하나를 선택할 수 있습니다. (문자열, 필수)
  • open: 편집 가능 모두에게 편집이 개방되었습니다.
  • limited: 규칙에 따라 편집 가능 규칙에 따라 일부만 편집할 수 있습니다.
  • closed: 편집 금지 제작자 이외의 편집이 제한됩니다.
variant
대체 제목 또는 별칭을 나타냅니다. 'name' 필드만으로 게임의 설계대로 구현할 수 없을때 사용하는 필드입니다. (문자열, 선택)
issuetracker
게임의 이슈를 보고할 수 있는 트래커에 대한 링크입니다. 기본값은 해당 문서의 토론란이며, 형식은 url 문자열입니다. 일반적으로 리버티게임 내부 게임은 해당게임 토론 이름공간으로 통일되기에 기입할 필요가 없습니다. 소스코드가 외부 저장소에 위치한 경우 해당 사이트의 이슈 게시란으로 명시하기 위한 필드입니다. (문자열:URL, 선택)
changelog
게임의 변경이력에 대한 링크입니다. (문자열, 선택)
description
게임에 대한 간단한 설명입니다. 한 문단 정도의 분량으로 최대한 간단히 작성해 주세요. (문자열*4000, 선택)
version
현재 버전을 나타냅니다. (문자열, 선택)
contributor
게임을 만드는데 크거나 작게 도움을 준 기여자(조력자)의 사용자 이름을 입력합니다. 주 기여자(author)는 입력하지 않습니다. 여러명을 입력하려는 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고, 사용자: 이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 기본 이름공간의 경우 그냥 :(콜론)으로 시작하면 됩니다. 틀 이름공간이 아닌 문서를 틀처럼 끼워넣을 때와 비슷합니다. (문자열:문서명|배열:문자열:문서명, 선택)
editpolicypage
게임 편집 지침이나 규칙을 안내하는 문서의 제목을 작성합니다. 게임 대문(game.json의 상위 문서)을 기준으로 한 상대 경로를 사용할 수 있습니다. (문자열:문서명, 선택)
platform
게임이 지원하는 플랫폼 목록입니다. 생략하면 web만 지원하는 것으로 간주됩니다. (문자열:소문자|배열:문자열:소문자, 선택)
  • web: 웹 웹 (무설치) (기본값)
  • windows: 윈도우 윈도우 (설치)
  • linux: 리눅스 리눅스 (설치)
  • macos: 맥 OS 맥 OS (설치)
  • android: 안드로이드 안드로이드 (설치)
  • other: 기타 기타
rating
각 등급 분류 기관별 등급 분류 정보를 입력합니다. (객체|null, 선택)
  • null: 게임 제작자가 이용가 등급 판정을 하지 않았습니다 미분류 (기본값)
libertygame
리버티게임 자체 등급 심의의 등급 분류 정보입니다. 등급면제를 제외한 grac 등급 분류 정보가 있다면 생략해도 됩니다. (객체, 선택)
age
게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열, 필수)
  • "test": 평가하고 있는 중입니다 평가용
  • "all": 전체 이용가 전체 이용가
  • 12: 12세 이용가 12세 이용가
  • 15: 15세 이용가 15세 이용가
  • 18: 18세 이용가 18세 이용가(리버티게임: 등급 심의에서 삭제되어 지정 금지됨)
summary
게임 내용정보를 입력합니다. 일반적으로 아래의 게임물관리위원회에서 사용되는 게임 내용정보과 같은 형식을 취합니다. (배열:문자열, 선택)
버:등급 심의에 정의되지 않은 사항입니다. 개편전까지 비표준인 필드이며 실제 효력이 없습니다.
date
게임 이용 등급을 분류한 일자를 입력합니다. (문자열:날짜, 필수)
grac
게임물관리위원회(게임콘텐츠등급분류위원회 포함)의 등급 분류 정보입니다. 정식으로 등급분류나 등급면제/시험용 게임 확인을 받은 경우에만 작성하세요. (객체, 선택)
age
게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열, 필수)
  • "re": 등급면제 등급면제
  • "test": 평가용 평가용
  • "all": 전체이용가 전체이용가
  • 12: 12세이용가 12세이용가
  • 15: 15세이용가 15세이용가
  • 18: 18세이용가 18세이용가
summary
게임 내용정보를 입력합니다. (배열:문자열, 선택)
  • sexuality: 선정성 선정성
  • violence: 폭력성 폭력성
  • horror: 공포 공포
  • language: 언어의 부적절성 언어의 부적절성
  • drug: 약물 약물
  • crime: 범죄 범죄
  • gambling: 사행성 사행성
id
age가 "test"면 평가확인증번호를, "re"면 등급면제 확인증번호를, 그 외이면 등급분류번호를 입력합니다. (문자열, 필수)
  • (GC-)CC-xx-yymmdd-nnn: 등급분류번호
  • yyyy-nnnn: 평가용 평가확인증번호
  • yyyy-REnnnn: 등급면제 등급면제 확인증번호
title
등급분류/시험용게임확인/등급면제확인 상 게임의 제명을 입력합니다. name과 같은 경우 입력하지 않으며, 다른 경우에만 입력합니다. (문자열, 선택)
author
등급분류/시험용게임확인/등급면제확인 상 신청자를 입력합니다. (문자열, 필수)
date
등급분류/시험용게임확인/등급면제확인 상 게임의 제작일자를 입력합니다. (문자열:날짜, 필수)
construction
게임 공사 여부 및 기간을 입력합니다. true를 입력하거나 공사를 마치는 날짜를 년-월-일로 입력해 주세요. . (문자열:날짜|부울, 선택)
  • "yyyy-mm-dd": 해당 날짜까지 공사중인 게임입니다.
  • true: 공사중인 게임입니다. 기한은 마지막 편집으로부터 15일 뒤까지입니다.
  • false: 공사중인 게임이 아닙니다. (기본값)
repair
게임 수리 여부 및 기간을 입력합니다. true를 입력하거나 수리를 마치는 날짜를 년-월-일로 입력해 주세요. (문자열:날짜|부울, 선택)
  • "yyyy-mm-dd": 해당 날짜까지 수리중인 게임입니다.
  • true: 수리중인 게임입니다. 기한은 마지막 편집으로부터 15일 뒤까지입니다.
  • false: 수리중인 게임이 아닙니다. (기본값)
abandon
버려진 게임을 나타냅니다. (부울, 선택)
  • true: 버려진 게임 버려진 게임입니다.
  • false: 버려진 게임이 아닙니다. (기본값)
login
로그인 필요 여부를 선택합니다. (문자열, 선택)
  • required: 로그인한 사용자만 이용할 수 있는 게임입니다. 로그인하지 않으면 모든 기능이 사용 불가능할 때 선택하세요.
  • recommended: 로그인하여 플레이할 것을 권장하는 게임입니다. 로그인하지 않으면 일부 기능이 제한될 때 선택하세요.
  • unnecessary: IP 사용자도 이용할 수 있는 게임입니다. 로그인하지 않아도 모든 기능을 제한없이 사용할 수 있을 때 선택하세요. (기본값)
saves
세이브 저장형 게임의 경우 데이터가 저장되는 위치를 나타냅니다. 사용자는 $1에 표기됩니다. 문자열 혹은 문자열의 배열의 형식을 취합니다.
privacypolicy
개인 정보를 수집하는 게임의 개인 정보 취급 방침 문서를 지정합니다. 게임 대문(game.json의 상위 문서)을 기준으로 한 상대 경로를 사용할 수 있습니다. (문자열:문서명, 선택)
created
게임이 만들어진 날짜를 기입합니다. (문자열:날짜)
image
게임을 대표하는 이미지를 지정합니다. 리버티게임 내부에 있는 파일만 지정 할 수 있으며, 네임스페이스는 제외하고 지정합니다. 예) fishing.PNG (문자열, 선택)
tech
사용한 기술 수준을 깅비합니다. 플랫폼 구분 없이 0~2까지 3단계로 지정합니다.
일반적으로 링크만 있는 텍스트 게임의 경우 0, cgi나 url파라미터를 사용한 게임은 1, 해당 게임을 위한 자체 자바스크립트/모듈을 사용을 작성한 게임의 경우 2를 사용합니다.
featured
특집게임에 대한 추가 정보를 기입합니다. (객체|null, 선택)
date
게임이 특집 게임으로 선정된 날짜를 나타냅니다. (문자열: 날짜, 필수)
description
특집 게임의 추천평을 기입합니다. (문자열, 선택)
author
추천평을 작성한 사용자명을 기입합니다. (문자열, 선택)

DB2 키 정보[원본 편집]

DB2 키 정보는 gameDB키에 입력합니다.

기본적으로 아래와 같은 구조입니다.

{
    "gameDB": {
        "default": {
            "description": "(설명)"
        },
        "keys": {
            "(키)": {
                "description": "(설명)"
            }
        }
    }
}
gameDB
(객체, 선택)
default
기본키에 대한 정보를 입력합니다. (객체:키 정보 객체, 선택)
keys
사용자 지정 키에 대한 정보를 입력합니다. 키에 키 이름을, 값에 키 정보 객체를 작성합니다. (객체:{[문자열]:키 정보 객체}, 선택)

키 정보 객체[원본 편집]

description
키에 대한 설명을 입력합니다. (문자열, 필수)

스키마[원본 편집]