리버티게임:게임 메타데이터: 두 판 사이의 차이
imported>Hsl0 (→기본 정보) |
imported>Hsl0 편집 요약 없음 |
||
1번째 줄: | 1번째 줄: | ||
버전: 0. | 버전: 0.2 / {{주석|최근 수정: 2023년 3월 11일|항목 추가, 항목 형식 변경 등 유의미한 수정이 있을 때만 갱신되며, 단순 설명 편집은 포함하지 않습니다.}} | ||
게임 메타데이터는 게임에 대한 정보를 리버티게임의 다양한 시스템이 읽을 수 있도록 모아놓은 [[리버티게임:JSON|JSON]] 문서입니다. 게임 메타데이터는 기본적으로 최상위 게임 문서의 하위 문서인 {{툴팁|<code>/game.json</code>|(게임이름)/game.json|sym=1}}에 작성됩니다. 게임 메타데이터 규격은 아직 확정되지 않았습니다. 계속 논의 중이며, 언제든지 변경될 수 있습니다. | 게임 메타데이터는 게임에 대한 정보를 리버티게임의 다양한 시스템이 읽을 수 있도록 모아놓은 [[리버티게임:JSON|JSON]] 문서입니다. 게임 메타데이터는 기본적으로 최상위 게임 문서의 하위 문서인 {{툴팁|<code>/game.json</code>|(게임이름)/game.json|sym=1}}에 작성됩니다. 게임 메타데이터 규격은 아직 확정되지 않았습니다. 계속 논의 중이며, 언제든지 변경될 수 있습니다. | ||
8번째 줄: | 8번째 줄: | ||
== 요소 == | == 요소 == | ||
=== 기본 정보 === | === 기본 정보 === | ||
; name: 게임의 이름입니다. 상위 문서명과 다르게 입력할 수 있으며, 여기에 입력한 대로 게임아이콘에 보여집니다. (문자열) | ; name: 게임의 이름입니다. 상위 문서명과 다르게 입력할 수 있으며, 여기에 입력한 대로 게임아이콘에 보여집니다. (문자열, '''필수''') | ||
; author: 게임의 소유자, 또는 주 기여자의 사용자 이름을 입력합니다. 다시 말해, 여러분의 사용자 이름을 입력하면 되겠습니다. 여러명이 제작한 합작 게임의 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고, <code>사용자:</code> 이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 이름공간이 없을 경우 그냥 <code>:</code>(콜론)으로 시작하면 됩니다. (문자열|배열:문자열) | ; author: 게임의 소유자, 또는 주 기여자의 사용자 이름을 입력합니다. 다시 말해, 여러분의 사용자 이름을 입력하면 되겠습니다. 여러명이 제작한 합작 게임의 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고, <code>사용자:</code> 이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 이름공간이 없을 경우 그냥 <code>:</code>(콜론)으로 시작하면 됩니다. (문자열|배열:문자열, '''필수''') | ||
; description: 게임에 대한 간단한 설명입니다. (문자열) | ; description: 게임에 대한 간단한 설명입니다. (문자열) | ||
; contributor: 게임을 만드는데 크거나 작게 도움을 준 기여자(조력자)의 사용자 이름을 입력합니다. 주 기여자(author)는 입력하지 않습니다. (문자열|배열:문자열) | ; contributor: 게임을 만드는데 크거나 작게 도움을 준 기여자(조력자)의 사용자 이름을 입력합니다. 주 기여자(author)는 입력하지 않습니다. (문자열|배열:문자열, 선택) | ||
; category: 게임의 장르입니다. 여러 장르에 해당될 경우 배열을 사용할 수 있습니다. 장르 코드명은 아래와 같습니다. (문자열:소문자*3|배열:문자열:소문자*3) | ; category: 게임의 장르입니다. 여러 장르에 해당될 경우 배열을 사용할 수 있습니다. 장르 코드명은 아래와 같습니다. (문자열:소문자*3|배열:문자열:소문자*3, '''필수''') | ||
:* adv: 어드벤처 게임 | :* adv: 어드벤처 게임 | ||
:* liv: 도시·마을 생활 게임 | :* liv: 도시·마을 생활 게임 | ||
36번째 줄: | 36번째 줄: | ||
:* mag: 통합 게임 | :* mag: 통합 게임 | ||
; progress: 게임의 완성도를 입력합니다. (숫자:정수:0~5) | ; progress: 게임의 완성도를 입력합니다. (숫자:정수:0~5, '''필수''') | ||
:* 0: [[파일:Progress base.svg|16px|변경하지 말아야 하는 공사중인 게임]] 변경하지 말아야 하는 공사중인 게임입니다. | :* 0: [[파일:Progress base.svg|16px|변경하지 말아야 하는 공사중인 게임]] 변경하지 말아야 하는 공사중인 게임입니다. | ||
:* 1: [[파일:Progress low.svg|16px|조금 완성된 게임]] 조금 완성된 게임입니다. | :* 1: [[파일:Progress low.svg|16px|조금 완성된 게임]] 조금 완성된 게임입니다. | ||
44번째 줄: | 44번째 줄: | ||
:* 5: [[파일:백괴게임 완성도 7단계.svg|16px|완성되어 변경하지 말아야 하는 게임]] 완성되어 변경하지 말아야 하는 게임입니다. | :* 5: [[파일:백괴게임 완성도 7단계.svg|16px|완성되어 변경하지 말아야 하는 게임]] 완성되어 변경하지 말아야 하는 게임입니다. | ||
; openness: 게임의 개방성을 나타냅니다. (부울|문자열) | ; openness: 게임의 개방성을 나타냅니다. (부울|문자열, '''필수''') | ||
:* true: [[파일:Crystal Clear app clean.png|17px|편집 가능]] 모두에게 편집이 개방되었습니다. | :* true: [[파일:Crystal Clear app clean.png|17px|편집 가능]] 모두에게 편집이 개방되었습니다. | ||
:* false: [[파일:Crystal Clear action editdelete.png|17px|편집 금지]] 제작자 이외의 편집이 제한됩니다. | :* false: [[파일:Crystal Clear action editdelete.png|17px|편집 금지]] 제작자 이외의 편집이 제한됩니다. | ||
:* "partial": [[파일:Crystal Clear bot on trial2.png|17px|규칙에 따라 편집 가능]] 규칙에 따라 일부만 편집할 수 있습니다. | :* "partial": [[파일:Crystal Clear bot on trial2.png|17px|규칙에 따라 편집 가능]] 규칙에 따라 일부만 편집할 수 있습니다. | ||
; tech: 게임에 사용된 기술 스택 종류를 입력합니다. (문자열:소문자) | ; tech: 게임에 사용된 기술 스택 종류를 입력합니다. (문자열:소문자, '''필수''') | ||
:* link: [[파일:Tech link.svg|16px|링크]] 링크 | :* link: [[파일:Tech link.svg|16px|링크]] 링크 | ||
:* cgi: [[파일:Tech CGI.svg|16px|CGI]] CGI | :* cgi: [[파일:Tech CGI.svg|16px|CGI]] CGI | ||
58번째 줄: | 58번째 줄: | ||
:* other: [[파일:Tech other.svg|16px|기타]] 기타 | :* other: [[파일:Tech other.svg|16px|기타]] 기타 | ||
; rating: 게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열|null) | ; rating: 게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열|null, 선택) | ||
:* null: [[파일:GRAC Square Template.svg|16px|게임 제작자가 이용가 등급 판정을 하지 않았습니다]] 미분류 | :* null: [[파일:GRAC Square Template.svg|16px|게임 제작자가 이용가 등급 판정을 하지 않았습니다]] 미분류 | ||
:* "test": [[파일:GRAC Test Square.svg|16px|평가하고 있는 중입니다]] 평가용 | :* "test": [[파일:GRAC Test Square.svg|16px|평가하고 있는 중입니다]] 평가용 | ||
66번째 줄: | 66번째 줄: | ||
:* 18: [[파일:GRAC 18 Square.svg|16px|18세 이용가]] 18세 이용가 | :* 18: [[파일:GRAC 18 Square.svg|16px|18세 이용가]] 18세 이용가 | ||
; construction: 게임 공사 여부 및 기간을 입력합니다. true를 입력하거나 공사를 마치는 날짜를 년-월-일로 입력해 주세요. 날짜를 입력하지 않을 경우 기한은 마지막 편집으로부터 15일 뒤로 간주됩니다. 완성된 게임은 입력할 필요가 없습니다. (문자열:날짜) | ; construction: 게임 공사 여부 및 기간을 입력합니다. true를 입력하거나 공사를 마치는 날짜를 년-월-일로 입력해 주세요. 날짜를 입력하지 않을 경우 기한은 마지막 편집으로부터 15일 뒤로 간주됩니다. 완성된 게임은 입력할 필요가 없습니다. (문자열:날짜|부울, 선택) | ||
; repair: 게임 수리 여부 및 기간을 입력합니다. true를 입력하거나 수리를 마치는 날짜를 년-월-일로 입력해 주세요. 날짜를 입력하지 않을 경우 기한은 마지막 편집으로부터 15일 뒤로 간주됩니다. 수리중이 아닐 경우 입력할 필요가 없습니다. (문자열:날짜) | ; repair: 게임 수리 여부 및 기간을 입력합니다. true를 입력하거나 수리를 마치는 날짜를 년-월-일로 입력해 주세요. 날짜를 입력하지 않을 경우 기한은 마지막 편집으로부터 15일 뒤로 간주됩니다. 수리중이 아닐 경우 입력할 필요가 없습니다. (문자열:날짜|부울, 선택) | ||
; abandon: 버려진 게임 여부입니다. 버려진 게임이 아닐 경우 입력할 필요가 없습니다. (부울) | ; abandon: 버려진 게임 여부입니다. 버려진 게임이 아닐 경우 입력할 필요가 없습니다. (부울, 선택) | ||
:* true: [[파일:Crystal Clear app logout.png|17px|버려진 게임]] 버려진 게임입니다. | :* true: [[파일:Crystal Clear app logout.png|17px|버려진 게임]] 버려진 게임입니다. | ||
:* false: 버려진 게임이 아닙니다. | :* false: 버려진 게임이 아닙니다. | ||
94번째 줄: | 94번째 줄: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
;gameDB | ;gameDB (객체, 선택) | ||
:; default: 기본키에 대한 정보를 입력합니다. (객체:[[#키 정보 객체|키 정보 객체]]) | :; default: 기본키에 대한 정보를 입력합니다. (객체:[[#키 정보 객체|키 정보 객체]], 선택) | ||
:; keys: 사용자 지정 키에 대한 정보를 입력합니다. 키에 키 이름을, 값에 [[#키 정보 객체|키 정보 객체]]를 작성합니다. (객체) | :; keys: 사용자 지정 키에 대한 정보를 입력합니다. 키에 키 이름을, 값에 [[#키 정보 객체|키 정보 객체]]를 작성합니다. (객체, 선택) | ||
==== 키 정보 객체 ==== | ==== 키 정보 객체 ==== | ||
:; description: 키에 대한 설명을 입력합니다. (문자열) | :; description: 키에 대한 설명을 입력합니다. (문자열, ) | ||
== 스키마 == | == 스키마 == | ||
* [[/스키마.json|JSON 스키마]] | * [[/스키마.json|JSON 스키마]] | ||
* [[/스키마.ts|TypeScript 정의]] | * [[/스키마.ts|TypeScript 정의]] |
2023년 3월 11일 (토) 22:02 판
버전: 0.2 / 최근 수정: 2023년 3월 11일
게임 메타데이터는 게임에 대한 정보를 리버티게임의 다양한 시스템이 읽을 수 있도록 모아놓은 JSON 문서입니다. 게임 메타데이터는 기본적으로 최상위 게임 문서의 하위 문서인 /game.json
에 작성됩니다. 게임 메타데이터 규격은 아직 확정되지 않았습니다. 계속 논의 중이며, 언제든지 변경될 수 있습니다.
JSON 문법
- 이 부분의 본문은 리버티게임:JSON입니다.
요소
기본 정보
- name
- 게임의 이름입니다. 상위 문서명과 다르게 입력할 수 있으며, 여기에 입력한 대로 게임아이콘에 보여집니다. (문자열, 필수)
- author
- 게임의 소유자, 또는 주 기여자의 사용자 이름을 입력합니다. 다시 말해, 여러분의 사용자 이름을 입력하면 되겠습니다. 여러명이 제작한 합작 게임의 경우 배열을 사용할 수 있습니다. 유효한 사용자 문서 이름이어야 하고,
사용자:
이름공간은 생략합니다. 만약 사용자 문서가 아닌 다른 문서를 가리키는 제작 팀의 경우 이름공간까지 포함해서 해당 문서 제목을 입력해 주세요. 이름공간이 없을 경우 그냥:
(콜론)으로 시작하면 됩니다. (문자열|배열:문자열, 필수)
- description
- 게임에 대한 간단한 설명입니다. (문자열)
- contributor
- 게임을 만드는데 크거나 작게 도움을 준 기여자(조력자)의 사용자 이름을 입력합니다. 주 기여자(author)는 입력하지 않습니다. (문자열|배열:문자열, 선택)
- category
- 게임의 장르입니다. 여러 장르에 해당될 경우 배열을 사용할 수 있습니다. 장르 코드명은 아래와 같습니다. (문자열:소문자*3|배열:문자열:소문자*3, 필수)
- adv: 어드벤처 게임
- liv: 도시·마을 생활 게임
- ral: 철도교통 게임
- rod: 도로교통 게임
- esc: 탈출 게임
- nax: 낚시 게임
- act: 액션 게임
- sht: 슈팅 게임
- puz: 퍼즐 게임
- qiz: 퀴즈 게임
- brd: 보드 게임
- mus: 음악 게임
- mlt: 멀티플레이 게임
- cpn: 캠페인 게임
- prd: 예언 게임
- rnd: 랜덤 게임
- wst: 시간 낭비하기
- mag: 통합 게임
- progress
- 게임의 완성도를 입력합니다. (숫자:정수:0~5, 필수)
- openness
- 게임의 개방성을 나타냅니다. (부울|문자열, 필수)
- tech
- 게임에 사용된 기술 스택 종류를 입력합니다. (문자열:소문자, 필수)
- rating
- 게임 이용 등급 연령을 입력합니다. (숫자:정수|문자열|null, 선택)
- construction
- 게임 공사 여부 및 기간을 입력합니다. true를 입력하거나 공사를 마치는 날짜를 년-월-일로 입력해 주세요. 날짜를 입력하지 않을 경우 기한은 마지막 편집으로부터 15일 뒤로 간주됩니다. 완성된 게임은 입력할 필요가 없습니다. (문자열:날짜|부울, 선택)
- repair
- 게임 수리 여부 및 기간을 입력합니다. true를 입력하거나 수리를 마치는 날짜를 년-월-일로 입력해 주세요. 날짜를 입력하지 않을 경우 기한은 마지막 편집으로부터 15일 뒤로 간주됩니다. 수리중이 아닐 경우 입력할 필요가 없습니다. (문자열:날짜|부울, 선택)
DB2 키 정보
DB2 키 정보는 gameDB
키에 입력합니다.
기본적으로 아래와 같은 구조입니다.
{
"gameDB": {
"default": {
"description": "(설명)"
},
"keys": {
"(키)": {
"description": "(설명)"
}
}
}
}
- gameDB (객체, 선택)
키 정보 객체
- description
- 키에 대한 설명을 입력합니다. (문자열, )