OpenRA 프로젝트 | |
공개 | 2010년 |
장르 | 전략시뮬레이션 |
엔진 | OpenRA 엔진(자체개발) |
개발언어 | C#[1] |
플랫폼 | 윈도우, 리눅스, MacOS, FreeBSD |
다운로드 / 맵 자료실 / 트레일러 GitHub / Wiki |
[clearfix]
1. 개요
OpenRA는 웨스트우드사가 발매한 커맨드 앤 컨커 레드얼럿의 현대화를 목표로 출범한 2D 및 2.5D RTS 오픈 소스 플랫폼 프로젝트이다. GPLv3 라이센스를 따르고 있으므로 누구나 다운받아 즐기고 자유롭게 개발에 참여할 수 있다.바닐라 버전에서 제공되는 게임은 커맨드 앤 컨커(이하 타이베리안 던), 커맨드 앤 컨커 레드얼럿(이하 레드얼럿), 듄 2000이 있으며, 커맨드 앤 컨커 타이베리안 선 포팅과 커스텀 모드(Custom Mod)[2] 개발을 진행하고 있다. 공식적으로 리스트에 올라 있지는 않으나 커맨드 앤 컨커 레드얼럿 2의 포팅도 진행했던 것으로 보인다.#
OpenRA는 게임이 아니라 런처, 즉 프로젝트 틀 내에서 개발된 RTS를 플레이할 수 있는 플랫폼이다. OpenRA를 실행하면 별도로 세 게임을 선택해 내려받을 수 있으며, 게임 구성요소들을 선택적으로 다운로드할 수도 있다. 게임의 용량은 10~20MB, 배경음악은 게임별로 100MB 수준이다. 시네마틱 비디오, 브리핑 영상 등은 다운로드를 제공하지 않으며, 게임 디스크[3]를 넣어서 추출해야 한다. 물론 이 기능도 디스크를 넣고 버튼만 누르면 OpenRA 런처 내에서 간단하게 처리해 준다.
2. 특징
OpenRA는 리마스터 프로젝트가 아니라 C&C 프랜차이즈의 팬들이 이상적으로 여기는 현대적인 레드얼럿을 개발하는 프로젝트이다. 그에 따라 OpenRA 버전의 이식작들은 레거시 에셋(그래픽, 사운드, 효과 등)만 보존한 현대적인 게임으로 재탄생하게 되었다. OpenRA가 원작과 차별화되는 요소들은 아래와 같다.첫째, 기존 UI를 깔끔하게 폐기하고 커맨드 앤 컨커 3 타이베리움 워(이하 C&C3)의 UI를 채택했다. 이에 따라 C&C3 이후의 작품으로부터 유입되는 유저들은 적응하기가 한결 편리하다. 한편 1995~96년 출시된 원작만을 플레이한 유저들에게는 껍데기만 고전인 새로운 게임으로 느껴질 수 있다. 적용 예시는 아래와 같다.
- 우클릭 시스템/좌클릭 시스템 택일 가능 - 웨스트우드의 RTS는 유닛 선택과 이동, 공격 등 모든 입력을 좌클릭에 할당하고 우클릭은 선택 취소, 건설 취소 등의 기능에 할당해 두었다. 한편 블리자드식 RTS는 유닛 선택과 입력 취소에 좌클릭을 사용하고 이동, 공격을 우클릭에 할당했다. 좌클릭 시스템은 C&C3에 이르러 사실상 레거시로만 남겨 두고 우클릭 시스템으로 전향하게 된다. OpenRA는 우클릭을 기본값으로 하여 좌클릭 옵션을 제공한다.
- C&C3의 단축키 시스템 전면 도입 - 단축키에 대한 모든 정보는 공식 홈페이지의 단축키 일람을 참고할 것. 기존 타이베리안 던과 레드얼럿의 단축키는 그 종류가 많지 않았다. 정지(S), 산개(X), 부대지정(Ctrl+1~0), 부대선택(1~0), 강제이동(Alt+클릭), 강제공격(Ctrl+클릭)이 거의 전부였는데, C&C3의 단축키를 지원함으로써 생산, 유닛별 공세유형, 수리, 전력차단/복귀, 판매 등 전영역에 걸친 단축키 이용이 가능해졌다.
- 생산 완료된 유닛의 집결지를 생산건물별로 지정할 수 있음 - 생산건물을 하나 이상 선택하고 원하는 지점에 우클릭을 하면 생산된 유닛들이 자동으로 해당 지점에 집결한다.
- 전력차단·복귀 도입 - 타이베리안 선에 추가되어 좋은 반응을 얻고 후속작들에서 널리 활용된 전력 관련 기능이 추가되었다. 전력을 소모하는 대부분의 건물의 전원을 끄고 켤 수 있어 효율적인 전력 관리가 가능해졌다. 또한 후속작들과 마찬가지로 전력부족이 발생할 경우 가동중지된 건물들에 음영이 씌워져 시각적으로 어느 건물이 불이익을 얻고 있는지 알 수 있게 되었다.
- 예약 생산 도입(Shift+클릭 또는 Shift+F1~F12 입력시 5단위 예약) - 예약생산은 타이베리안 선에서 처음 제한적으로 도입되었다. 당시에는 최대 5기까지 예약이 가능했고, 이후 작품에서 제한이 풀렸다. OpenRA에서는 예약에 제한이 없으며, 예약을 위해 클릭한 순서대로 생산이 이루어진다.
- 유닛 공격과 이동시 가이드라인 생성 - 타이베리안 선에 처음 도입된 기능으로, 이동 중인 유닛을 선택하면 현위치와 목적지를 잇는 실선이 실시간으로 표시된다. 유닛들이 어디로 이동 중인지 한 눈에 파악할 수 있으며, 잘못 이동중인 유닛의 경로를 바로잡기에도 편리하다.
둘째, 레드얼럿 이후의 작품들에서 호평받았거나 필수요소로 여겨지는 시스템들을 도입하였다. 적용 예시는 아래와 같다.
- 소규모 전투의 결과에 따라 전투에 기여한 유닛의 계급이 상승 - 유닛들은 진급에 따라 이동 속도 등에서 어드밴티지를 받는다.
- 전장의 안개 개선 - 원작에서는 한 번 정찰한 지역은 게임이 끝날 때까지 계속 시야가 밝혀져 있었는데, 이 점을 개선하여 한 번 정찰했으나 현재 유닛들의 시야에 들지 않은 지역은 음영으로 덮이게 되었다. 이 기능은 옵션에서 켜고 끌 수 있다.
- MCV(Mobile Construction Vehicle) 재배치 가능 - 모든 건설의 기본이 되는 차량 유닛인 MCV는 한 번 전개하면 건물이 되며, 원작에서는 이를 되돌릴 수 없었다. 기지를 구축한 후 MCV를 접어 멀티를 건설하기 더욱 편해졌다.
- 중립 건물을 점거하여 이익을 취할 수 있음 - 맵에 따라서 엔지니어로 점령할 수 있는 중립 건물이 있다.
- 유닛 고유의 공격 모션, 파괴 모션 추가 - 예를 들면 비행유닛의 경우 격추 시 불시착하는 모션이 추가되었고, 다련장 로켓 유닛은 발사 모션이 수정되었다.
- 헬기 유닛은 무장 보급이 필요하지 않음 - Orca나 Apache, Hind 같은 공격 헬리콥터 유닛은 공격 후 Helipad에서 무장을 보급 받아야 했지만, OpenRA 구현에서는 일정 시간이 지나면 다시 충전된다. 즉, 헬리패드를 하나만 건설하고 헬리콥터 유닛을 계속 생산해도 문제 없다.
셋째, 현대적인 멀티플레이와 스커미시 조건을 제공한다.
- 게임 리플레이 기능과, 온라인 방송을 위한 옵저버 인터페이스 제공
- AI의 도입과 지속적인 수정 - AI 종류에 따라 공세적/방어적/노멀의 형태로 나뉜다. 전체 AI의 공통으로 APM(Actions per Minute) 효율 및 자원 효율이 굉장히 좋고 확장지향적이어서, 잠시 멍때리면 맵 절반 이상이 적의 멀티로 뒤덮이거나 아군 하베스터들에 대한 동시다발적 테러가 벌어지는 모습을 볼 수 있다. 유닛 조합도 그 종류가 매우 풍부하여 초보적인 운영으로는 적절히 대응하기가 쉽지 않다. 시간마다 복잡한 구성의 공세가 몰려옴은 물론, 슈퍼무기의 사용도 얄미울 정도로 적절하다. 사용자의 피드백과 기여로 점점 AI가 보강되고 있어 온라인 매칭이 귀찮은 유저들에게도 아쉽지 않은 난이도를 제공하고 있다.
- 멀티플레이 게임 통계를 제공한다.
넷째, 유저들이 오랜 기간 논의해 왔던 불만사항들에 대한 패치가 이루어 졌다.
- 고해상도 지원
- 남/북쪽 우위 등 불합리한 버그성 이익에 대한 개선
- 유저들에 의해 합의된 수준의 밸런스 패치 진행
- 기타 원작의 수많은 버그와 충돌상황에 대한 개선 - 엔진을 새로 짰기 때문에 기존의 버그가 잔존할 턱이 없고, 오픈 소스이기 때문에 새로 발생한 버그에 기민하게 대응할 수 있다.
3. 한계
OpenRA는 비록 레드얼럿의 현대화를 목표로 출발하긴 했지만 어디까지나 새로 개발한 엔진에 레드얼럿의 에셋을 씌워 재구성한 새로운 게임이지, 원작을 직접 수정하여 개선한 게임이 아니다. 프로젝트의 목적은 어디까지나 멀티플레이를 활발히 즐기는 팬들의 불편 해소와 편의성 증진에 집중되어 있다. 그에 따라 원작에 향수를 가지고 OpenRA를 접하는 유저들은 밸런스, 모션 등 여러 부분에서 상당한 이질감을 느낄 수 있다.또한, 캠페인 요청이 워낙 많아서인지 점진적으로 스토리 미션을 이식하고는 있지만 어디까지나 제한적이다. 모든 임무가 처음부터 개방되어 있어 그 중 선택해 플레이할 수 있고, 클리어시 다음 임무로 넘어가는 것이 아니라 메인 메뉴로 돌아온다. 이렇다 보니 원하는 미션을 즐길 수는 있지만 클리어하고 메인화면에서 일일이 다음 임무를 선택하고 있자면 몰입감이 떨어지고 맥이 빠질 수 있다.
OpenRA의 바닐라 버전에는 실사 브리핑 영상, 그래픽 컷신이 포함되어 있지 않다. 원본 디스크에서 영상을 추출하는 기능을 런처에서 제공하고 있으므로 원본 게임을 가지고 있다면 적용해 보는 것도 좋다.
그리고 원본 C&C 게임처럼 최적화가 되지 않았는지 유닛숫자가 매우 많아지면 AI 병목현상때문에? 게임이 느려지는 현상도 있다. 관련 깃허브 스레드 [4] 현재까진 게임이 싱글코어만 써서 그런것으로 보여진다.
4. OpenRA 모드의 예시
4.1. C&C와 관련된 모드
- Combined Arms
레드얼럿 사가의 진영과 타이베리움 사가의 진영을 한 게임에서 동시에 선택하게 할수있도록 조정하였다. 물론 합쳤다는것에만 의의가 있어서 밸런스는 고려되지 않았다. 이후 타이베리안 사가 시리즈과 레드얼럿 2의 일부 유닛, 예를 들면 타이탄[5], 키로프 비행선, 그외 세부 팩션전용유닛 등이 C&C1의 그래픽을 개조해서 구현되기도 했다. 기존 레드얼럿 세부진영도 국가별 특수유닛이 레드얼럿2 사양 비스무리하게 적용되었다. LITE버전과 일반버전이 있는데 일반버전에는 레드얼럿의 국가들과 타이베리안 사가의 서브팩션들을 포함해 총 4x3진영을 고를수 있다. 0.70에서는 스크린이 추가되었다.
이것과 비슷하지만 OpenRA기반이 아닌 타이베리안 선 엔진 기반으로 만들어진 던 오브 타이베리움 에이지라는 물건도 존재한다. 참고로 이쪽 역시 기본적으로 스탠드얼론이다. 무엇보다도 여기에는 독자적인 싱글플레이 미션도 약간 있다.
- 카메오(OpenRA)[6]
Combined arms보다 더 많은 타 RTS게임의 진영이 나온다. 워존 2100을 기반으로 한 진영과 심시티[7]를 기반으로 한 진영, 거기다 스타크래프트 3종족까지 나와서 C&C vs 스타크래프트라는 희대의 드림매치가 가능해졌다. 0.22에서는 워크래프트: 오크와 인간에 다크레인까지 추가되었다. 아무래도 C&C 기반의 RTS 전반 드림매치를 모드의 목표로 하는듯하다. 상세는 문서 참조.
애드온 BGM중에 스타크래프트1 오리지널 초출의 3종족 사운드트랙을 추가로 적용할수도 있다.(아쉽게도 브루드워 추가음악은 없다)
4.2. C&C와 무관한 모드
기존 C&C와 거리가 먼 소재들로 만든 모드들의 예시다.미디블 워페어. 독자적인 중세풍의 유닛으로 꾸몄다.
악마(둠 시리즈) 무한 디펜스(?)맵의 협동전 예시
에이지 오브 엠파이어 시리즈풍(?) 모드
OpenRA로 KKND 1을 구현
스웜 어썰트라는 게임도 구현
1993년 개발하려다 취소된 RTS게임인 <Hard Vacuum>(TV Tropes 설명 : #)을 재구한 OpenHV. 고전 IBM PC 게임을 안다면 '그래픽이 티리안 같은데?'라는 느낌이 들텐데, 정답이다. 그래픽 담당자가 대니얼 쿡으로 같기 때문이다. 이 게임의 그래픽은 대니얼 쿡 본인이 공개한 그래픽 어셋에 기반하고 있다.
5. 개발
올드팬들의 격려에 힘입어 현재도 활발하게 개발이 진행되고 있다. Changelog를 보면 기능추가와 패치 이외에도 밸런스 조절을 위한 변경도 지속적으로 이루어지고 있다. 또한, Issues를 통해 개발진에게 버그 신고나 기능 추가에 대한 피드백을 줄 수도 있다(물론 다 반영되는 건 아니다).게임 개발에 기여하거나, 공부하고 싶은 사람은 이 페이지를 참조해보기 바란다. Delft 공대의 소프트웨어 구조 수업에서 Jasper Abbink, Peter Evers, Nick ten Veen, Joost Verdoorn 학생이 OpenRA 소스의 구조를 분석한 글이다.[8][9]
[1] 윈도우의 경우 .NET Framework 4.5 이상이 설치되어야 하며, macOS 와 리눅스의 경우 Mono 프레임워크가 설치되어 있어야 한다.[2] 특히, Custom Mod 기능은 OpenRA 엔진을 통해 범용 RTS를 직접 제작할 수 있는 에디터를 제공하기 때문에, 개인/커뮤니티 레벨에서의 개발이 쉬워질 것으로 보인다. 그렇기 때문에 아래 언급된 Cameo 모드의 C&C vs 스타크래프트 같은 것도 나올 수 있었다.[3] The FIrst Decade, Ultimate Collection 등 합본 디스크도 가능.[4] 사용자는 대형맵에서 Combined arms 모드로 봇과 플레이했는데 게임이 매우 느려졌다는 사례다.[5] 다만 일부 구버전에서는 1대밖에 생산할수 없는대신 뭔 요상한 빔을 난사하는 영웅유닛으로 나왔다. 이 경우 겉은 타이탄이지만 사실상 맘모스 mk2 포지션.[6] 개발 당시에는 딱히 명칭이 없었고 개발자의 이름인 'Zeruel87의 모드'라고만 되어있었다.[7] 그래픽 출처는 대부분 슈퍼패미컴판 심시티.[8] 소프트웨어 구조 수업의 일환으로, Github 에서 프로젝트를 하나 선택하여 연구하는 방식으로 진행하였다. Delft Students on Software Architecture: DESOSA 2015[9] 이 과정에서 버그를 수정하거나 하는 활동에도 참여했다.OpenRA 7486, OpenRA 7544