스쿠엠

SCUMM
매니악 맨션을 위한 스크립트 작성 유틸리티
Maniac Mansion.png
SCUMM 시스템이 원래 설계되었던 게임인 코모도어 64매니악 맨션 (1987)
설계자아리크 윌먼더
칩 모닝스타,
론 길버트
개발자루카스필름 게임스
루카스아츠
첫 등장1987; 35년 전 (1998년)
최종 발매
? / 1998; 24년 전 (1998년)
플랫폼크로스 플랫폼
OS크로스 플랫폼

SCUMM(Script Creation Utility for Manician Mansan)은 루카스필름 게임즈에서 개발한 비디오 게임 엔진으로, 후에 루카스아츠로 개명하여 그래픽 어드벤처 게임Manician Mans(1987년)의 개발을 용이하게 했다.이후 루카스아츠 어드벤처 게임의 엔진으로 사용되었다.

그것은 게임 엔진과 프로그래밍 언어 사이의 어딘가에 속하며, 설계자들이 게임 소스 코드가 끝나는 언어로 코드를 쓰지 않고도 위치, 항목 및 대화 시퀀스를 만들 수 있다.이것은 또한 게임의 스크립트와 데이터 파일을 교차 플랫폼, 즉 다양한 플랫폼에서 재사용할 수 있게 했다.SCUMM은 인터랙티브 MUSE(Interactive Streaming Animation Engine), INSANE(In-game animation Engine), CYST(In-game animation Engine), FLEM(방 안의 장소와 이름 객체), MMUCAS 등의 임베디드 게임 엔진의 호스트이기도 하다.SCUMM has been released on these platforms: 3DO, Amiga, Apple II, Atari ST, CDTV, Commodore 64, Fujitsu FM Towns & Marty, Apple Macintosh, Nintendo Entertainment System, DOS, Microsoft Windows, Sega CD (Mega-CD), and TurboGrafx-16/PC Engine.

역사

원본은 론 길버트(Chip Morningstar aka)에 의해 코드화되었다.UnXman)은 1987년에 Aric Wilmunder(예: SCUMM Lord) 및 기타 여러 가지 버전으로 이후 버전을 개선하였다.[1]이것은 획기적인 코딩 기술을 제공했던 토큰 언어다.P.R.I.N.E.와 같은 토큰이 가장 먼저 활용되었다.

SCUMM의 본질은 메인프레임 컴퓨터의 프로그래머로 활동해 온 윌먼더를 비롯한 루카스아트의 초기 프로그래머 대부분이 배경에서 나타났다.당시 개인용 컴퓨터(PC)는 프로그램을 편집하고 컴파일할 수 있을 만큼 큰 능력이나 속도가 없었기 때문에 루카스아츠 코더스는 메인프레임 시스템에 가능한 한 깨끗하게 코드를 작성하여 모든 오류를 제거하여 PC에 컴파일하는 속도가 느리지만 오류 발생률이 낮았다.이 개념은 교차 플랫폼이 될 스크립팅 언어의 아이디어를 알려주었다.[2]

SCUMM은 사람이 판독할 수 있는 명령을 바이트 크기의 토큰으로 변환하여 플레이어에 게임을 제공하는 실행 가능한 통역 프로그램이 읽을 수 있는 도구로 개발되었다.예를 들어, SCUMM 명령어walk dr-fred to laboratory-door4바이트 명령으로 토큰화 될 것이다.그들은 대본에 하드 코딩된 게임에 대한 구체적인 세부사항을 갖고 싶지 않았기 때문에 토큰키저가 내부 번호가 아닌 대본에서 자신의 이름으로 배우들을 알아볼 수 있을 것이다.유일한 예외는 번호를 포함해야 하는 마니아 맨션의 경우 캐릭터의 대화 상자를 다른 텍스트 색상으로 표시하는 것이었지만, 이는 이후맥크래켄이 출시될 무렵에 수정되었다.[2]대본에는 포그라운드 작업이 완료되기를 기다리는 동안 배경 배우들이 행동을 제정하도록 하는 등 멀티태스킹 기능이 포함됐다.[2]게임의 신속한 프로토타이핑을 가능하게 하는 결합된 도구.스크립터들은 작가들에게 피드백을 제공하면서 작가들이 대본을 연마하기 위해 그린 예비 캐릭터와 배경 예술로 작업할 수 있다.[2]

SCUMM 프로그램은 대본을 토큰화하고 다른 모든 자산(예술, 음향 등)을 패키지로 모으는 역할을 했다.재사용 가능한 통역은 SUMM이라고 불렸는데, 게임의 출하 시 게임 실행 파일의 이름으로 이름이 바뀐 SCUMM Presentation Utility(TM)는 SUMM이라고 한다.SUPTM은 스크립트를 해석하고 디스크에서 자산을 로드하며 게임과 다른 사용자 상호작용을 처리한다.[2]SUPTM은 실제로 상표권이 없었지만 윌먼더에 따르면, 그들은 "또 다른 체액을 따서 이름을 붙이기를 원했다"고 한다.[2]그 후 많은 루카스아츠 어드벤처 게임에서 SCUMM은 여러 번 업데이트되고 다시 쓰이게 되었다.윌먼더에 따르면, 매니악 맨션용 SCUMM 버전은 엔진의 후기 버전에서 사용하게 될 명령의 약 80%를 가지고 있었고, 대부분의 키 명령들은 수정이 필요 없었다.[2]다른 도구와 엔진은 개발을 돕기 위해 SCUMM과 함께 개발되었고, 다른 체액에 대한 이름을 붙였다.[2]SPIT는 화면의 다른 부분에 있는 텍스트 글꼴을 관리하는 데 사용되었다.FLEM은 특정 룸을 정의하고, 룸 내에서 객체를 추적하며, 캐릭터 애니메이션을 위해 클리핑 평면을 지정하는 데 사용되었다.MMUCAS는 FLEM과 함께 객실과 객체를 하나의 파일로 컴파일하여 스크립터가 객실의 설명을 다시 컴파일하지 않고도 신속한 변경을 할 수 있도록 하기 위해 사용되었다.BYLE와 이후 CYST는 캐릭터 애니메이션과 스케일링에 사용되었고, LucasArts의 후기 게임에서 더 복잡한 예술에 사용되었다.

풀 스로틀 게임을 위해, 이 팀은 스타워즈: 리벨론 어택을 위해 이전에 개발된 IRACH 애니메이션 엔진과 SCM을 통합하기 위해 노력했다.Wilmunder는 풀 스로틀의 선적을 위해 두 시스템을 작동시키기는 했지만, 두 시스템 간의 상호작용이 항상 안정적인 것은 아니었고, SCM을 IRAID 엔진의 꼭대기에서 작동시키기 위해 Monkey Island의 저주 이전에 시간을 보냈으며, 일부 SCUMMM 엔진 부품을 IRAID 엔진의 토착 부품으로 교체했다.[2]

내부적으로는 윌먼더가 비교적 간단하게 배울 수 있다고 믿었기 때문에 SCUMM의 작업 대부분이 문서화되지 않았지만, <몽키 섬의 비밀> 이전에 이 접근법을 바꾸었다.길버트는 엔진에서 신입 사원을 양성하기 위해 그들에게 일주일간의 기간 동안 SCM 대학을 통해 SCM 엔진 사용법을 가르쳤다.그리고 나서 쓰레기라고 불리는 이 새로운 고용주들은 그들이 개발 팀에 가장 적합한 곳을 알아내는 것을 돕는 일을 탐색하고 확장할 수 있는 기회를 얻었다.[2]

LucasArts는 마침내 1998년 SCM 엔진을 포기했고, 그 때 무료 소프트웨어 스크립팅 언어 Lua를 사용하여 GrimE로 전환하여 Grim PandangoMonkey Island로부터의 탈출 게임을 했다.휴머스 엔터테인먼트는 교육용 게임과 스포츠 시리즈인 뒤뜰 스포츠에 엔진을 계속 사용했다.[3]

2016년 3월 윌먼더는 기트허브를 통해 디지털 형식으로 제공할 계획인 루카스아트의 많은 어드벤처 게임 디자인 문서와 SCUMM 엔진의 소스 코드를 공유하겠다고 밝혔다.[4]

디자인

대부분의 SCUMM 게임은 동사-객체 설계 패러다임을 특징으로 한다.플레이어가 조종하는 캐릭터는 재고가 있고, 게임 세계는 다양한 동사를 사용하여 플레이어가 상호작용할 수 있는 물건들로 어지럽게 널려 있다.초기 게임에서는 화면 하단에 이런 것들이 많이 등장했지만, 풀 스로틀(1995)과 몽키 의 저주(1997)에 의해 캐릭터의 눈, (사용, 집어들기, 밀기, 당기기 등)이나 입(말하기, 소비하기, 소비하기)을 사용할 수 있는 옵션으로 마우스 커서에 나타나는 "버브 코인"으로 축소되었다.헤일을 하다

(1990년)은 기존의 동사의 SCUMM 인터페이스를 음악적 디스태프에서 재생되는 주문으로 대체한다.

퍼즐은 예를 들어 "고무나무와 비스킷 절단기 사용"과 같은 적절한 물체에 적절한 동사 작용을 사용하는 것을 포함한다."Talk to"는 일반적으로 대화 시퀀스를 생성하는데, 플레이어가 미리 정의된 질문이나 코멘트 목록에서 선택하고, 미리 정의된 응답으로 응답하는 캐릭터와 대화한다.

이 일반적인 패러다임의 주목할 만한 예외는 (1990)으로, 표준 동사-객체 인터페이스를 사용하지 않고 대부분의 동작을 계측기에서 재생되는 주문 선택으로 대체한다.

재구현

컴파일러

ScummC는 일련의 도구(스크립트와 코스튬 컴파일러, 워크박스 편집기, charset, 그래픽, 오디오 및 MIDI 도구 포함)로, 자체 JavaScript와 유사한 언어를 SCUM v6 바이트 코드로 컴파일할 수 있으며, ScummVM에서처럼 실행할 수 있다.필요한 기술을 가진 사람이라면 누구나 새롭고 독창적인 SCM 게임을 만들 수 있으며, 테마의 날, 샘 & 맥스 히트로드와 동등한 특징을 가지고 있다.[5]

Scumm이라는 비슷한 프로젝트GEN은 사용자 친화적인 도구로 동일한 것을 달성하는 것을 목표로 한다.[6]

Scummbler는 SCUMM 엔진 버전 3에서 5까지 SCUMM 바이트코드를 위한 컴파일러다.[7]스컴패커(Scummbler의[8] 저자)와 같은 언팩팅 도구와 스컴VM의 설명 도구를 조합해 검색한 원본 게임 파일에서 디컴파일된 스크립트를 사용한다.이들 스크립트는 원본 게임 파일에 다시 삽입할 수 있어 번역 등 기존 게임을 수정하는 데 유용하다.또한 이미지 인코더 디코더와 [9]텍스트 음성 파일을 텍스트에 매핑하는 데 도움이 되는 도구도 사용할 수 있다.[10]

통역관

ScummVM은 휴대용 SDL(Simple DirectMedia Layer) 라이브러리 기반 SCUM-엔진 클라이언트를 만드는 무료 오픈 소스 소프트웨어 프로젝트로, 현대적인 WindowsMacintosh 시스템, Linux(휴대용 한 포함)를 비롯하여 원본이 작동하지 않거나 작동에 문제가 있는 시스템에서 많은 SCUM 엔진 게임을 실행할 수 있도록 한다.dholds - Android, GP2X, GP2X Wiz, Maemo 등), BeOS-하이쿠, 아미가OS (3.x, 4.0, and its clones MorphOS and AROS), Palm OS, Windows Mobile (Pocket PC), Dreamcast, PlayStation 2, PlayStation Portable, Nintendo DS, Wii, Symbian (SeriesXX and UIQ), iOS (iPad, iPhone, iPod Touch), webOS and QNX-Playbook platforms.[11]

scvm은 ScummC 저자가 개발한 SCUMM 통역사다.[12]2008년 4월 현재, 프로토타입 상태에 있으며, ScummC 개발을 위한 스크립트 디버거가 되는 것을 의미한다.hiscumm은 scvm과 scumm의 일부 비트를 좌현으로 옮기려는 시도다.Adobe Flash [13][14]백엔드가 있는 인터프리터를 생성하기 위해 Haxe 플랫폼에 VM 연결

참조 및 대화 상자

루카스아츠 어드벤처 게임의 공통점은 인조크 레퍼런스였다.개발자들은 몇몇 게임에서 코믹 효과를 위해 엔진의 이름을 사용했다.

마니아 맨션에서 언급된 펑크 밴드인 레이저와 스쿰메테스, 그리고몽키 섬의 비밀》의 SCUM 바는 모두 스크립팅 언어에서 이름을 따왔다.적대적 인수합병(Monkey Island)의 피해자인 '탈락(Excape from Monky Island)'에서 SCUM 바는 이전 게임에 사용된 엔진을 대체한 프로그래밍 언어인 '루아 바'가 된다.SCOMM은 또한 몽키 아일랜드 사극의 첫 번째 오퍼스에 있는 grog의 성분에도 포함되어 있다.

참고 항목

참조

  1. ^ 게임스팟, "Classic Studio 사후: Lucasfilm Games" 2015-09-04년 웨이백 머신보관Ron Gilbert, 2014년 3월 24일 2015년 4월 3일에 액세스
  2. ^ a b c d e f g h i j Bevan, Mike (July 21, 2013). "The SCUMM Diary: Stories behind one of the greatest game engines ever made". Gamasutra. Archived from the original on March 23, 2016. Retrieved March 23, 2016.
  3. ^ Cifaldi, Frank (30 October 2020). "The Secrets of Monkey Island - An Evening With Ron Gilbert". YouTube. Google. Archived from the original on 2021-12-11. Retrieved 26 September 2021. at 3:34:00: I mean obviously the adventure games were done in SCUMM but the whole sports series of Backyard Sports, I mean those were all done in SCUMM.
  4. ^ Kerr, Chris (March 23, 2016). "SCUMM co-creator digs up game design treasure trove". Gamasutra. Archived from the original on May 30, 2016. Retrieved March 23, 2016.
  5. ^ Wayback Machine에 2015-09-04년 보관된 ScummC SCUMM Compiler
  6. ^ Wayback Machine에 보관된 ScummGEN 2010-07-16
  7. ^ Scummbler 2014-08-02년 웨이백 머신보관
  8. ^ Wayback Machine에 2013-11-08 보관된 ScummPacker
  9. ^ 웨이백 머신보관SCUMM 이미지 인코더 2015-02-15
  10. ^ Wayback Machine보관ScummSpeaks 2015-02-15
  11. ^ SCUMMVM 호환성 목록 웨이백 머신보관된 2006-06-15
  12. ^ Bedel, Alban (2021-02-22), AlbanBedel/scummc, retrieved 2021-03-19
  13. ^ "Haxe, Part II Wayback Machine에 2015-05-19 아카이브"(2008), Cuppadev
  14. ^ Urquhart, James (2019-02-11), jamesu/hiscumm, retrieved 2021-03-19

외부 링크