Core Prime Creators · 맵 제작자, 모더, 도구 개발자를 위한 곳

Total Annihilation용 맵, 모드, 유닛, 도구 만들기

Total Annihilation과 TA: Kingdoms용 콘텐츠를 만드는 데 필요한 모든 것을 모았습니다. 두 게임에 들어 있는 모든 파일 형식을 바이트 단위로 설명하는 레퍼런스, 이를 읽고 쓰는 툴킷 kbot, 그리고 Open Annihilation용 맵, 모드, 뮤테이터, 컴퓨터 플레이어를 패키징하는 방법입니다.

파일 형식 레퍼런스두 게임에 쓰이는 모든 형식, 아카이브부터 유닛 스크립트까지전체 목록 ›

각 페이지는 형식이 디스크에 저장되는 구조와, 여러분의 설치본에서 그 구조를 직접 보여 주는 kbot 명령을 함께 다룹니다. 파일의 용도, 헤더와 데이터의 바이트 단위 구조, 읽는 순서, 실제 Cavedog 파일 분석, 그리고 주의할 점까지 담았습니다.

컨테이너·래퍼 형식

그래픽·미디어

맵·지형

유닛·스크립트·설정

TA: Kingdoms GUI

튜토리얼·참고 자료

kbot 툴킷모든 형식을 다루는 하나의 명령줄 도구GitHub의 kbot ›

kbot은 HPI, UFO, CCX, GP3 아카이브를 열고, 맵, 섹션, 스프라이트, 팔레트, 글꼴을 렌더링하며, COB 스크립트를 디컴파일하고 검사하며, TDF와 FBI 파일을 파싱하고, 설치본 전체를 탐색 가능한 하나의 폴더로 마운트합니다. 컨텍스트를 설정하면 형식 레퍼런스의 모든 명령을 쓰인 그대로 실행할 수 있습니다.

Go로 설치한 다음 게임 폴더를 등록하세요:

go install github.com/coreprime/kbot/cmd/kbot@latest
kbot ctx add ~/games/totala --alias ta --game totala

Open Annihilation 모딩mods.coreprime.net의 모딩 정보(Modding Info, 영어)모딩 정보(영어) ›

Open Annihilation에서는 여러분이 만든 맵과 모드로 플레이할 수 있습니다. 맵 팩은 .oamap 파일 하나, 모드는 .oamod 하나, 뮤테이터는 .oamut 하나, 컴퓨터 플레이어는 .oabrain 하나입니다. 모두 최상위에 매니페스트가 있는 zip 파일로, 게임이 검사한 뒤 설치합니다. 모딩 정보 페이지에서 각각을 장별로 다룹니다.

01

맵 팩의 구조

.oamap zip과 oamap.yaml 매니페스트, 패커가 기록하는 맵 인덱스, 그리고 맵의 크기와 지형지물로 게임에 들어갈 수 있는지가 정해지는 방식.

02

모드의 구조

.oamod zip과 프로필 oamod.yaml에 담기는 식별 정보, 레이아웃, 제한, 데이터 키, 스크립트 확장, 그리고 이 프로필이 켜는 표준 규칙.

03

뮤테이터 만들기

기본 게임이나 어떤 모드에든 덧씌우는 작은 .oamut. 폴더, 매니페스트, mutate가 돌려주는 계획, 옵션, 샌드박스, 그리고 여러 개를 겹칠 때 적용되는 순서.

04

Lua 예제

실제 패키지에서 가져온, 동작하는 스크립트 여섯 개. 규칙 하나, 상한이 있는 배율 조정, 진영 하나, 게임을 거부할 수 있는 유닛 훅, 지형지물 훅, 그리고 폴더를 겹쳐 쓰는 파일 계획.

05

기존 뮤테이터 이식하기

KroggyComm 1.1을 원래 아카이브에서 패키지로 옮기고, TA: Mutation 규칙 파일은 sm으로 그대로 쓰거나 Lua로 다시 작성합니다.

06

검사, 패키징, 게시

oa-tool mutator check와 pack, 시험 실행, 카탈로그 페이지에 보이는 내용, 아이콘, 그리고 Core Prime에 패키지를 제출하는 방법.

07

브레인 만들기

컴퓨터 슬롯 하나를 맡아 플레이하는 .oabrain. 폴더, 매니페스트의 모든 키, 태그, 레벨, 전체 시야, 스크립트가 실행되는 곳, 실행 예산, 그리고 브레인이 멈췄을 때 일어나는 일.

08

브레인의 Lua

Steady Commander의 매니페스트와 스크립트, 훅, 브레인이 알 수 있는 것과 할 수 있는 것, 숫자, 난수, 타이머, 채팅.

09

예제로 보는 Classic

Lua로 작성한 내장 컴퓨터 플레이어. 파일 구성, 작업 테이블, 작업 하나, 특이 동작 메모, 엔진에 남는 부분, 그리고 같은 명령을 내린다는 것을 증명하는 방법.

10

학습된 네트워크

브레인이 .oann을 함께 배포하는 이유, 정수 연산, 레이어, 네트워크 실행, oa-tool brain net, 제한, 그리고 라이브러리에 표시되는 내용.

11

브레인 검사, 패키징, 게시

oa-tool brain pack과 check, 헤드리스 대전과 트레이스, 라이브러리의 검사와 슬롯 로그, 카탈로그의 oabrain 종류, 그리고 Core Prime에 패키지를 제출하는 방법.

12

표준 규칙

프로필이 켤 수 있는 문서화된 규칙. 규칙마다 키와 값, 그리고 그 규칙이 비롯된 동작을 적었습니다. 시뮬레이션 규칙은 모든 플레이어가 같게 맞춰야 합니다.

13

스크립트 확장

프로필이 모드의 유닛 스크립트에 넘겨줄 수 있는 값(예: 유닛의 처치 수, 소유자의 동맹 관계)과 COB 스크립트가 각 값을 읽는 방법.

14

버전과 릴리스

버전은 자유 형식 텍스트이며 순서를 매기지 않습니다. packaging.revision은 다시 패키징할 때마다 올라가고, 릴리스 번호는 카탈로그가 매깁니다. 같은 버전과 리비전을 다른 바이트에 다시 쓰지 마세요.

15

Core Prime에 게시하기

패키지 검사, 콘텐츠 라이브러리 제출, 릴리스가 카탈로그와 모든 플레이어의 라이브러리에 나타나는 방식, 그리고 자체 레지스트리를 운영하는 방법.