리버티게임:게임 만들기

리버티게임, 모두가 만들어가는 자유로운 게임
단축:
버:만들기

게임을 만들기로 하셨습니까? 그렇다면 게임을 만들기 위한 위키 문법을 간단히 적은 길라잡이가 있습니다.

게임을 만들기 전에 한 번은 읽어보는 것을 추천드립니다.

물론, 자바스크립트 게임이나 게임 엔진을 사용하는 경우가 아닌 이상 넥슨의 게임과 같은 것은 만들 수 없습니다.

게임을 만들기 전에[원본 편집]

리버티게임에서는 지켜야 할 것들이 몇 가지 있습니다.(일부는 이미 길라잡이에서 보셨을 수도 있겠지만, 그렇지 않은 분들을 위해 한 번 더 설명합니다.)

  • 게임은 신중히 만드세요.
게임을 만들게 되면 이 게임을 완성시킬 수 있느냐 없느냐를 잘 따지세요. 완성시킬 수 있다면 다행입니다만, 이미 리버티게임엔 원개발자가 사라져 버려 삭제되고 있는 많은 수의 게임이 있습니다. 혹시 완성은 확신할 수 없는데 사이트 계정이 있는 사용자라면 사용자 문서의 하위 문서로 먼저 만드시고, 완성이 되었다고 판단될 때 일반 문서로 이동을 하는 것을 추천합니다.
  • 게임 문서의 이름은 신중하게 정해주세요.
리버티게임이 사용하는 미디어위키는 문서의 이름을 바꿀 때 그 문서에 딸린 다른 문서들(하위 문서)들도 같이 이동하게 하는 기능이 있습니다. 그런데 이 기능은 다른 사람의 게임 이름을 멋대로 바꾸는 반달리즘 수단으로 쓸 수도 있어, 문서의 이동은 기본적으로 자동 인증된 사용자 권한을 가지고 있어야 가능합니다. 물론 관리자 별 토론 문서를 방문하여 요청하거나 오락실/도움방에 요청하는 방법으로 변경할 수 있지만, 요청한 문서 이름 변경 작업이 처리되기까지 시간이 걸리기 때문에 되도록 한 번에 좋은 이름을 선정하는 것이 좋습니다.
  • 기본적인 삼대 원칙을 지켜주세요. 되도록이면 많은 사람이 웃을 수 있는 게임을 만들어 주세요.
  • 게임을 만들 때에는 기초적인 지식을 갖춰야 할 때가 있습니다.
게임은 본질적으로 종합예술의 성격을 가지기 때문에, 시나리오가 필요한 경우 이야기를 구성하는 방법론을 배우거나, 도형 등 그래픽 효과를 위해 기본적인 수학 지식을 배워야 하는 등 본질적으로 진입 장벽이 아예 없다고 할 수는 없습니다. 자신이 만들고자 하는 게임을 만들 때에는 그에 걸맞게 알고 있는 적절한 배경 지식이 필요합니다. 물론 리버티게임에서는 성인 정도는 되어야 제작을 도전할 수 있는 기존의 게임 제작 트렌드에서 벗어나기 위해 각종 틀과 기능들을 제공하며 이곳 도움말에는 리버티게임에서 제공하는 그런 기능들에 대한 설명이 있습니다. 모든 설명문은 일부 예외를 제외하면 초등학교 고학년 정도 되면 가지는 보통의 배경 지식으로 읽기 편한 설명으로 작성되어야 합니다.
버려진 게임이라 판단되거나, 토론을 통해서 허락을 맡지 않은 이상, 다른 사용자가 만들거나 만들고 있는 게임들을 건드리지 말아주세요. 역효과로 질 낮은 게임이 만들어지거나 처음 원개발자가 의도했던 것과 다른 게임이 만들어질지도 모릅니다.
  • 여러 사람이 참여할 경우에는 확실한 프로젝트 기간을 정하고 적극적으로 소통하세요.
여럿이 게임을 만들기로 했으면 지나친 프로젝트 지연으로 인한 제작 중단을 예방하기 위해 가급적이면 빠른 기간 내에 완성해주세요. 또한 제작 기간이 지나치게 길 경우 제작팀이 폐쇄적인 의사소통 구조를 갖추는 이른바 친목질 문제가 발생할 수 있습니다. 리버티게임에서는 디스코드 서버를 통해 실시간으로 소통하면서 제작 기록을 공개적으로 남길 수 있도록 지원하고 있습니다.

장르 정하기[원본 편집]

당신이 게임을 개발하고자 마음을 먹었다면 이미 여러 가지 게임을 플레이해 보신 뒤겠지요. 그리고 리버티게임엔 여러 장르의 게임이 있다는 것을 인식하셨을 겁니다.

  • 어드벤처 게임
    • 여러 개의 문서를 링크를 타면서 진행합니다. 가장 쉽게 만들 수 있는 게임일지도 모릅니다. 이야기의 전개도 편합니다. 그러나 Linkget을 이용하지 않는 이상 문서를 많이 만들어야 하는 단점이 있습니다. 이런 게임들은 예술 작품으로서의 재미와 분기를 통한 게임성의 추구가 개발의 핵심이 됩니다.
    • 둘 이상의 다른 문서로 이동하는 분기는 반드시 만드셔야 합니다. 엔딩까지 단 하나의 경로만 존재할 경우 발전소에서 다른 유저들이 삭제해야 한다는 의견을 많이 낼 수 있습니다.
      • 이에 대한 대안으로, 자신이 만들려는 문서가 게임이 아닌 소설로 볼 수 있다면 자매결연 프로젝트인 리버티책에 하이퍼텍스트 문학으로 배포하는 작업을 할 수 있습니다.
    • 대표적으로 깊은 수렁, 비밀 시리즈가 있습니다.
  • 함정 회피 게임
    • 어드벤처 게임의 하위 장르로, 말 그대로 낚이지 않고 엔딩까지 가는 형식의 게임입니다. 다른 어드벤처 게임과는 달리 문학성의 비중이 높지 않으며, 위키 문법과 심리적 함정을 잘 활용해야 재미있는 게임을 만들 수 있습니다.
    • 대표적으로 백괴낚시가 있습니다.
  • 도시 탐험 게임 (참고:버:도시생활 게임 관련 규칙)
    • 어드벤처 게임의 하위 장르로, 여러분만의 도시에서 살아가는 게임입니다. 만들기 쉽지만, 그런 만큼 질 낮은 게임이 되기도 쉽습니다.
    • 백괴민국, 백괴광역시등을 추천합니다.
  • 멀티플레이 게임
  • 캐주얼 게임
    • 플레이 시간이 짧거나 반복 플레이 컨텐츠가 주류인 게임들입니다. 다음 하위 장르가 있습니다.
    • 랜덤 게임
      • <choose>나 {{#switch:{{rand|}}}}를 통해서 만들어지는 게임입니다. 은근히 재미가 있으며 구현도 상당히 쉽습니다.
      • 대표적으로는 백괴룰렛이 있습니다.
    • 퍼즐 게임
      • 이 게임을 플레이 하려면 상당한 지능이나 아니면 노가다가 필요한 게임입니다.
      • 대표적으로는 백괴미궁Uncyclomaze가 있습니다.
    • 시간 낭비형 게임(Clicker 게임이라고도 합니다)
      • 이 게임은 지능형 게임과 비슷하나 머리 사용하는 부분은 없애고 순전한 노가다를 요구하는 게임입니다. 노가다를 잘 하면 이길지도 모르는 게임입니다.
      • 대표적으로는 큐브가 있습니다.
  • 리버티게임은 Javascript 프로그래밍 언어를 활용한 웹 게임 제작도 가능하며, 이에 따라 리듬 게임 같이 화면 상에서 무언가 움직일 수 있는 게임도 만들 수 있습니다.
  • 리버티게임은 몇몇 게임 엔진을 사용해 게임을 제작하여 배포할 수도 있습니다.

게임 구상하기[원본 편집]

전체적인 구조[원본 편집]

전체적인 구조에 대해서 구상을 합니다. "내가 만들 게임은 낚시 게임이다"라고 생각하셨다면 어떤 링크를 누르면 낚이고 낚이지 않고 게임을 끝낼 수 있을지 구상을 할 수도 있겠죠. 어드벤처 게임이나 스토리 게임이라면 주인공은 여기서 어떤 모험을 할지, 이야기는 어떻게 이끌어 나갈 지 구상할 수 있습니다. 아이디어는 있는데 게임을 만들기는 어렵거나, 영감을 얻고 싶다면, 오락실에서 다른 사용자의 도움을 받을 수도 있습니다.

이와 관련하여 게임을 완성했다고 광고했는데 게임이 곧 발전소로 직행하는 참사를 막기 위해 리버티게임의 베테랑 게임 제작자들이 작성한 게임 기획 관련 도움말이 있습니다. 해당 링크 문서의 내용을 참조하여 게임 기획 문서를 작성하면 게임을 만들다가 도중에 그만두는 일을 막는데 큰 도움이 됩니다.

개발 중[원본 편집]

게임이 만약 개발 중이라면 {{게임 공사중}}을 사용해주세요. {{게임 공사중|기간=2024-12-06}}과 같이 사용하시면 됩니다. 기간은 게임이 완성될 것 같은 날로 정하며, 이 기간은 언제든지 바꿀 수 있습니다. 만일 지정하지 않는다면 해당 틀이 붙은 문서가 마지막으로 편집된 지 15일 뒤로 설정됩니다.

'/' 문자로 구분되지 않는 평범한 문서는 게임 제목으로 된 문서 하나만 허용합니다. 가령 'A vs B 파이트'라는 게임 문서가 있을 때 그 게임의 1스테이지를 만들고 싶다면 A vs B 파이트/1스테이지 라는 이름의 문서를 만들고 거기로 연결해주십시요. 리버티게임의 사이트 구조상 매우 중요하니 자세한 내용은 아래 '편집 지침'에서 다룰 것입니다.

리버티게임에서는 기획한 분량이 길지만 완성된 부분이 지나치게 짧은 미완성 게임은 제작 1달 이후에는 기획 내용을 확인할 수 있으면 활동 중인 타 유저에게 인계하고 기획 내용을 확인할 수 없으면 삭제하는 정책을 기본적으로 취합니다. 따라서 관리자 직권으로 개발 중이던 게임이 삭제되는 참사를 피하기 위해 처음 개발할 때 삭제 판정을 받지 않을 만큼 내용을 미리 메모장 소프트웨어 등에 작성한 다음 한 번에 업로드하거나 처음부터 자신의 사용자 문서 내에 하위 문서 형태로 게임을 만든 다음 관리자에게 문서 내용을 옮겨달라고 오락실이나 활동 중인 관리자의 사용자 토론 문서에 새 주제 요청을 남기면 됩니다.

디자인[원본 편집]

게임에서 디자인은 매우 중요한 역할을 합니다. 태그와 틀을 이용해서 적당하게 게임을 꾸며 주시면 됩니다.

  • 글꼴
글꼴을 선정하면 게임이 어떤 분위기인지 정할 수도 있습니다. 아래는 그 예입니다. 글꼴은 윈도리눅스 위주로 쓰여졌기 때문에 다른 OS에선 다르게 보일 수도 있습니다. <span style="font-family: (글꼴 이름);">글꼴을 써서 적을 문장</span> 형태로 사용할 수 있습니다.

 글꼴의 예

  • 그림
그림을 오목조목 게임에 필요한 부분에 잘 넣으면 사용자들이 더 즐겁게 게임을 할 수 있게 됩니다. 필요하다면 업로드해서 사용해서도 됩니다. 다만 파일 올리기는 계정을 생성한 사용자만이 사용 가능하며, 저작권에 유의해서 올려야 합니다. 당신은 지금 파일을 올릴 수 없습니다.

편집 지침[원본 편집]

이 부분의 본문은 리버티게임:편집 지침입니다.

특별히 게임에 규칙이 없을 때는 편집 지침을 따라야 합니다.

요약하자면, 리버티게임에서는 한 게임을 만들 때 게임의 하위 문서 등을 만들 때는 '게임 이름/게임 내용'과 같이 만들어야 하고 게임 장르에 따라 특별한 이유가 없으면 링크를 걸 때 링크 앞에 *를 붙이는 것을 원칙으로 하며 *과 링크 사이에 한 칸을 띄우는 모양으로 문서의 모양을 정합니다.

링크는 [[한게임/시작|시작하기]] 처럼 걸면 됩니다. 이 때 [[시작하기]] 처럼 걸면 안 됩니다. '시작하기' 문서로 게임이 이어지면 해당 문서가 어느 게임의 하위 문서인지 알 수 없고, 게임 제목 내용이 뒤섞입니다.

올바른 편집의 예[원본 편집]

다음은 가장 널리 쓰이는 편집 방법입니다. 네모 칸 안이 편집창이라고 가정합시다. (밑줄 친 부분에 마우스를 대면 설명을 볼 수 있습니다)

너는 지금 (장소 이름)에 있다.편집할 때에 어조에 대해서는 크게 신경 쓸 필요는 없습니다. 과거에는 반말을 적는 것을 원칙으로 했으나, 사문화되어 폐기되었습니다.
어디로 갈까?줄과 줄 사이는 반드시 한 칸을 띄워야 합니다.
* [[(게임 이름)/(너가 위치한 장소)/(너가 갈 곳 또는 너가 할 일)|(선택지)로 가기]]이동할 문서 제목을 정할 때는 다른 문서와 겹치는 일이 없도록 잘 생각해서 만들어야 합니다.
* {{미궁|(게임 이름)/(너가 위치한 장소)/(너가 갈 곳 또는 너가 할 일)|(선택지)로 가기}}

게임을 만든 뒤[원본 편집]

메타데이터 제작[원본 편집]

이 시스템의 존재 이유에 대해서는 리버티게임:게임 알리기 문서를 참고하십시오.


게임 메타데이터 만들기

게임을 만들고 난 뒤에는 반드시 (게임 이름)/game.json이라는 특별한 문서를 만들어야 합니다. 이 특별한 문서를 만들려면 위에 있는 양식에 게임 이름을 입력하고 안내를 따라 주세요.

그리고 이제 게임 제목으로 된 메인 문서(최상위 문서 또는 게임 타이틀 문서라고도 합니다)에 편집으로

{{게임 정보}}

를 넣어주세요. 가령 A vs B 게임의 경우 'A vs B' 문서에 저 문구를 넣으면 됩니다. 이 틀은 리버티게임 분류 및 장르별 분류를 자동으로 달아주며, 나중에 게임에 관한 정보를 게임 메인 문서에서도 보여주도록 개선될 예정입니다.

그럼 리버티게임: 게임 목록에 당신이 만든 게임을 찾을 수 있습니다. 이 작업은 game.json 문서를 수정하면 몇 분 내로 수정 내역이 반영되며, 게임 목록을 방문했을 때 새로 고침으로 당신이 만든 게임을 장르에 따라 찾을 수 있습니다. 리버티게임에서는 현재 게임 정보 틀을 메인 문서에 삽입하지 않는 실수를 방지하기 위한 편집 필터가 작동하고 있으니 저장 버튼을 눌렀을 때 편집이 막혔다는 안내문이 뜰 경우 당황하지 마시고 위 절차를 따라 게임이 배포되는지 다시 확인해 주시기 바랍니다.

게임 별 토론 문서 만들기[원본 편집]

그 다음 사용자들의 평가와 의견을 나눌 공간을 게임의 최상위 문서에 딸린 토론 문서에서 만들수 있습니다. 보통 '토론:(게임 이름)'의 제목을 가진 문서로 들어갈 수 있습니다. 토론 문서를 만들 때에는

{{풀기:평론}}

을 적고 저장하여 토론 문서를 생성하면 자동으로 토론 공간을 위한 문서 양식이 배치됩니다. 이 토론 문서 양식에는 다음과 같은 요소가 들어 있습니다.

  • 홈페이지(대문), 게임 타이틀 문서(다시 하기), 게임 목록 페이지로 갈 수 있는 링크
  • 별점 평가: 가장 높은 5점부터 가장 낮은 1점까지 별점 평가를 간단히 매길 수 있습니다. 별점 평가는 리버티게임: Top 20 등 현재 사이트에서 높은 평가를 받는 게임을 확인하는 용도로 사용됩니다.
  • 한 줄 평가: 세부 문단 5개에 있으며, 별점 평가로는 표현하기 힘든 게임의 장단점을 구체적으로 적을 수 있습니다.
  • 이슈 보고: 게임 내부에 발생한 문제를 이용자가 직접 해결하기 어려운 경우 보고하는 문서를 작성할 수 있도록 만든 공간입니다. 이용자가 이슈 발생에 따른 편집 요청 문서를 작성하면 개발자가 현재 존재하는 요청을 파악하고 처리한 다음 요청 문서의 편집 주석에 적힌 내용을 따라 완료 처리를 할 수 있습니다.
    • 요청을 처리한 뒤에는 편집 요청 문서를 전체 편집하여 [[분류:편집 요청/{{BASEPAGENAME}}]]라고 적힌 부분을
      [[분류:편집 요청/{{BASEPAGENAME}}/완료]]라고 바꾸면 됩니다.
  • 잡담: 평가나 이슈 보고 이외의 내용으로 이용자들끼리 게임에 대해 대화할 수 있는 공간입니다

페이지 만들기[원본 편집]

위에 있는 문서 만들기를 이용하여 만드시면 됩니다. 물론 게임 이름 부분엔 자신이 생각했던 게임의 이름을 적어야겠지요.

리버티게임에도 위키문법이 통하기 때문에 위키문법을 적절히 사용해서 게임을 만드시면 됩니다. 위키 문법은 버:문법 도움말을 참조하시면 됩니다. 한편 각 게임에 속한 하위 문서는 슬래시 (/)로 구분합니다. 링크를 걸 때와 하위 문서를 만들 때는 '게임 이름/게임 내용' 처럼 게임 이름 다음에 슬래시가 들어 있는지 확인해야 합니다. 따라서 게임을 만들 때에는 제일 상위의 문서(최상위 문서)에 '/' 글자가 들어가지 않도록 주의하세요. 리버티게임의 모든 게임은 리버티게임 분류에 속해야 합니다. 따라서 [[분류:리버티게임]]을 메인페이지에 넣는걸 잊지 말아주시기 바랍니다. 또한 해당 분류는 메인 페이지에만 달아 두면 됩니다.

아래부터는 게임을 만드는 데 참고하고 사용법을 익히면 좋을 기능들을 설명할 것입니다.

특수 함수 사용[원본 편집]

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

미디어위키에 기본으로 설치되어 있거나 미디어위키에서 제공되는 확장 기능을 통해 사용할 수 있는 '특수 함수'로 더 복잡하고 자세한 것을 구현할 수 있습니다. 대개 '특수 함수'라 하면 초보 사용자들은 어려움을 느끼기 마련인데, 배웠을 때 할 수 있는 것이 매우 많아지기 때문에 일단 배워서 익숙해지는 것을 강력히 권장합니다. 이런 특수 함수에 무엇이 있는지는 리버티게임:특수 함수에 더 자세히 나와있습니다!

틀 사용[원본 편집]

멋지게 게임을 만들고 싶은데, 특수 함수고 HTML이고 뭐가 뭔지 하나도 모르겠다고요? 아니면, 게임 원본 소스가 게임을 만드는 자신도 알아보기 힘들겠다고요? 이 때문에 미디어위키에서는 틀 시스템을 제공하고 있으며, 리버티게임에서는 미디어위키의 틀 시스템을 활용해 수많은 틀을 만들어서 게임 개자의 편의를 돕고 있습니다. 틀을 단순히 끼워넣고자 하신다면 예를 들면 틀:찬성을 껴넣고자 하신다면 {{찬성}} 식으로 껴넣으시면 됩니다. 틀에도 여러 파라미터를 적용할 수 있는데, 이런 파라미터가 있는 틀은 해당 틀 문서에서 이에 관해 설명을 해놓으니 그것을 참고하시면 됩니다.

또, 한 게임에서만 사용될 전용 틀을 만드실 생각이라면, 리버티게임/틀 식으로 만드시고 {{:리버티게임/틀}} 식으로 껴넣으시면 됩니다. 사용자가 틀을 넣을 때 추가로 넣어주는 데이터인 파라미터를 만드실 생각이라면 {{{1}}}, {{{2}}} 식으로 만드시고, {{:리버티게임/틀|1|2}} 식으로 껴넣으시거나, {{{파라미터}}} 식으로 만드시고, {{:리버티게임;틀|파라미터=파라미터}} 식으로 껴넣으시면 됩니다. {{{1|(기본 내용)}}}과 같이 파라미터를 넘기지 않았을 때 기본적으로 나오는 내용을 설정할 수도 있습니다.

가령 '틀:데모'라는 다음과 같은 내용의 틀 문서가 있다면

이 틀 문서는 {{{1|어느 사용자}}}가 만들었습니다.

{{데모|너}}처럼 틀을 다른 문서에 넣을 경우

이 틀 문서는 너가 만들었습니다.

라는 내용이 추가되며, {{데모}}처럼 파라미터를 넘기지 않을 경우

이 틀 문서는 어느 사용자가 만들었습니다.

와 같은 내용이 나옵니다.

이제, 리버티게임에서 자주 쓰이는 틀을 소개합니다. 혹시 여기서 원하는 틀을 찾지 못하셨다면 리버티게임:교통에 관한 틀이나 분류:리버티게임 틀 등에서 찾을 수도 있습니다.

링크를 위한 틀[원본 편집]

대화용 틀[원본 편집]

설명가  : “보통의 대화를 보여줍니다.”

  • {{Q}} :
인용 형태로 대화를 보여줍니다.
설명가, 이 문서에서

게임 정보 관련 틀[원본 편집]

  • {{게임 정보}} : 자신의 게임의 최상위 문서(/로 구분되지 않은 게임 이름으로 된 문서)에 삽입하여 자신이 만든 게임에 관한 정보를 보여줍니다.
  • {{낚시}} : 간혹 특이한 곳(예: 게임 내용을 설명하는 문장 사이의 공백, 문서 제목)에 다른 문서로 이동하는 선택지를 숨긴 경우 플레이어가 못 찾을 경우를 대비해 이에 대한 힌트를 제공하는 틀입니다.
  • {{제목}} : 문서 제목을 바꿔줍니다. 화면에 보이는 문서 제목을 게임 문서의 이름과 다르게 하거나 문서 제목 내에 링크를 삽입하는 경우에 사용합니다.

{{Linkget}}과 {{CGI2}}의 이용[원본 편집]

{{Linkget}}은 매개변수를 사용할 수 있게 해 주는 틀입니다. 몇몇 게임을 플레이 하다보면 ?offset=숫자 같은것들이 주소에 붙어있는것을 확인할 수 있습니다. 이런 건 {{CGI}}를 이용한 게임으로(참고로 구형입니다), 새로 만들어진 {{Linkget}}의 기능은 이와 유사합니다.

{{#urlget:var}}라고 바로 쓰게 되면 주소에 쓰여 있는 var= 뒤의 값을 바로 출력합니다. 주소에 그런 게 없다면, 아무 것도 출력하지 않습니다.
{{Linkget|링크에 나타날 텍스트|get=var=값}} 라고 바로 쓰게 되면 현재 페이지에 var의 새로운 값을 넘겨줍니다.
{{Linkget|넘길 페이지|링크에 나타날 텍스트|get=var={{#urlget:var}}}} 라고 바로 쓰게 되면 현재 var의 값을 다른 페이지로 넘겨줍니다.
지금까지 계속 변수 이름으로 var라는 것을 사용해 왔는데요, var 대신 다른 문자열을 택해도 좋습니다. 여러 변수값을 넘겨주려면 get=변수1=값1&변수2=값2&...과 같이 쓸 수 있습니다. (여기서 변수1, 변수2, ...는 아까 썼던 var와 같은 것입니다.)
title, curid, oldid, action, diff, search 등등...
물론, 이들도 잘 응용하면 사용이 가능합니다. 예를들어, 편집창으로 가는 링크를 만들땐 {{linkget|2=편집하기|get=action=edit}}과 같이 쓸 수 있습니다. 그 외에도 다양한 특수 변수를 응용할 수 있습니다. 자세한 내용은 index.php의 변수 (미디어위키 위키)문서나 #고급 내부 링크 문단을 참고해 보세요.
  • {{linkget}}을 사용하다 보면, 여러가지 변수가 쌓이게 되고, 이러한 변수를 유지하면서 새 변수를 지정하기 위해 {{linkget|페이지|텍스트|get=변수1={{#urlget:변수1}}&변수2=값2}}라고 쓰게 됩니다. 매우 길고 비효율적이죠. 이럴땐 {{CGI2}}를 이용해 보세요. 변수를 지정할 때 다른 변수를 입력할 필요가 없고, 한번에 여러 변수를 지정할 수 있습니다.
    • 위의 코드를 {{CGI2}}를 이용하여 단순하게 만들어 보겠습니다: {{CGI2|{{CGI2/변수수정|변수2|값2}}|텍스트|페이지}} 어때요, 훨씬 간결하죠?
    • {{CGI2}}를 이용하여 두가지 이상의 변수를 지정하려면 {{CGI2|{{CGI2/일괄수정|변수1=값1|변수2=값2}}|텍스트|페이지}}와 같이 쓸 수 있습니다.

{{CGI}}와 기타 여러 함수를 엮어서 사용하면 여러 가지 이벤트, 조건을 만들 수가 있습니다.

고급 내부 링크[원본 편집]

바깥 링크를 거는 방법을 응용해서 현재 위키의 주소를 나타내는 fullurl과 문서 제목을 입력할 때 URL 주소에 맞게 글자를 변환(인코딩)을 해주는 urlencode를 사용해 고급 내부 링크를 걸 수 있습니다. 다만 {{urlencode:{{FULLPAGENAME}}}}와 같은 경우에는 {{FULLPAGENAMEE}} 처럼 ‘E’를 덧붙임으로서 문서를 URL 주소에 맞게 변환합니다.

문서를 보여줄 때[원본 편집]

문서를 보여줄 때에는 다음과 같이 링크를 걸면 됩니다만 보여줄 내용을 태그로 글자를 꾸미지 않는 이상 쓸 필요는 없습니다.

[{{fullurl:{{urlencode:문서 제목}}|offset=오프셋}} 보여줄 내용]
  • 문서 제목 : 링크할 문서 제목을 입력합니다.
  • offset : 오프셋 숫자를 입력합니다. {{CGI}} 또는 {{Get}}에서 사용하는 변수로, 해당 숫자를 CGI 틀에 보여줄 수 있습니다.
  • 보여줄 내용 : 링크에 보여줄 내용을 입력합니다.
  • 오프셋을 사용하지 않을 때 보여줄 내용에 태그로 글자를 꾸미려면 다음과 같은 방법으로 걸 것을 권합니다.
    • [[문서 제목|보여줄 내용]]
  • 보여줄 내용을 태그로 글자를 꾸미지 않고 그냥 넣을 때에는 고급 내부 링크를 거는 대신에 다음과 같은 방법으로 걸 것을 권합니다.

편집을 할 때[원본 편집]

편집을 할 때에는 다음과 같이 링크를 걸면 됩니다만 이 역시 보여줄 내용을 태그로 글자를 꾸미지 않는 이상 쓸 필요는 없습니다.

[{{fullurl:{{urlencode:문서 제목}}|action=edit&editintro={{urlencode:편집 윗부분에 보여줄 문서 제목}}&summary={{urlencode:편집 요약}}&minor=사소한 편집&redirectquery={{urlencode:저장시 넘어갈 urlget 변수}}&offset=오프셋}} 보여줄 내용]

여기서 editintro, summary, minor, offset 변수는 생략할 수 있으며 나머지는 반드시 입력해야 올바른 링크가 됩니다.

  • 문서 제목 : 링크할 문서 제목을 입력합니다.
  • editintro : 편집 윗부분에 보여줄 문서 제목을 입력합니다.
  • summary : 편집 요약을 입력할 수 있습니다.
  • minor : 사소한 편집 여부를 체크합니다. 1일 때는 사소한 편집에 체크가 되며, 0일 때는 체크가 되지 않습니다.
  • redirectquery : 저장 버튼을 누른 뒤 넘어올 페이지나 오프셋 등의 변수를 입력할 수 있습니다.
  • offset : 오프셋 숫자를 입력합니다. {{CGI}} 또는 {{Get}}에서 사용하는 변수로, 해당 숫자를 CGI 틀에 보여줄 수 있습니다.
  • 보여줄 내용 : 링크에 보여줄 내용을 입력합니다.
  • 보여줄 내용을 태그로 글자를 꾸미지 않고 그냥 넣을 때에는 고급 내부 링크를 거는 대신에 다음과 같은 방법으로 걸 것을 권합니다. CSS 작성에 능하시다면 {{CGI2}}를 쓰시더라도 클래스 변수를 활용해 글자를 꾸밀 수 있습니다!

확률적으로 다른 곳으로 분기시키기[원본 편집]

만일 단일한 링크를 눌렀는데 확률에 따라 서로 다른 다음 문서로 넘어가도록 하고 싶으면 choose 태그와 option 태그를 활용할 수 있습니다.

 <choose>
 <option weight="3">
 * [[/75퍼센트|다음으로 가기]]
 </option>
 <option>
 * [[/25퍼센트|다음으로 가기]]
 </option>
 </choose>

이러면 3:1의 비율로 다음으로 가기 링크를 눌렀을 때 75퍼센트라는 제목의 하위문서로 가거나 25퍼센트라는 제목의 하위문서로 갑니다. 다만 이 경우 플레이어가 확률에 따라 서로 다른 문서로 이동한다는 사실을 눈치 못 챌 수도 있으므로 분류:확률에 따라 분기가 달라지는 어드벤처 게임 문서 분류 같은 것을 달아두면 좋습니다.

만약 위 태그를 사용한 페이지에서 브라우저 새로 고침 만으로 링크나 보이는 문구를 바뀌게 하려면 다음 문구를 문서에 추가하면 됩니다.

__NOCACHE__

자바스크립트 게임 만들기[원본 편집]

이 부분의 본문은 리버티게임:자바스크립트 게임 만들기입니다.
이 부분의 본문은 리버티게임:플러그인입니다.

도보시오[원본 편집]