[category] | Guides [section] | 기본 제작 가이드 > 게임 서비스 > 로컬라이징 [title] | LocaleDataSet [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1120 [text] | # 학습 과정 소개 월드의 텍스트 번역 시 필수적으로 사용해야 하는 LocaleDataSet에 대해 알아봅시다. ##### 참고 가이드 [로컬라이징의 이해](docs/?postId=951) [포맷에 맞게 로컬라이징하기](docs/?postId=968) [자동 번역](docs/?postId=1072) # LocaleDataSet 소개 LocaleDataSet은 번역을 위한 전용 DataSet입니다. LocaleDataSet은 **Default, WebSync** 두 종류가 있습니다. LocaleDataSet은 **Workspace
[category] | Guides [section] | 기본 제작 가이드 > 객체 제어 > 이동 [title] | 특정 월드 인스턴스로 워프하기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1122 [text] | # 학습 과정 소개 `WorldInstanceService`를 활용해 현재 월드 인스턴스Id와 생성된 다른 월드 인스턴스들의 상태를 알 수 있습니다. 또한 `TeleportService`를 활용해 플레이어를 특정 월드 인스턴스로 워프시킬 수 있습니다. ##### 참고 가이드 [월드 인스턴스](/docs/?postId=984) [월드 인스턴스 통신](d/ocs/?postId=999) [월드 워프하기](/docs/?postId=743) ##### 참고 APIReference [TeleportService](/apiReference?p
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 [title] | 00_ Player [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1131 [text] | 플레이어와 관련된 컴포넌트, 로직 등을 모은 폴더입니다. $$childList $$
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 [title] | 02_InstanceRoom [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1132 [text] | 인스턴스 맵에서 쓰이는 컴포넌트와 로직 등을 모은 폴더입니다. $$childList $$
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 [title] | 03_System [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1133 [text] | 월드에서 전체적으로 사용하는 시스템, 로컬라이징 관련 테이블 등이 포함된 폴더입니다. $$childList $$
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 > 00_ Player [title] | 02_Player_Logic [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1134 [text] | # MapEnterLogic 플레이어가 맵을 이동하는 경우 호출하는 함수들을 모아둔 로직입니다. OnMapEnter 함수에서 해당 로직에 있는 함수들 중 이동한 맵에 맞는 함수를 호출합니다. #### Property | 실행제어 | 타입 | 이름 | 설명 | | --- | --- | --- | --- | | None | Entity (/ui/000_LoadingGroup) | loadingUI | 로딩 화면 UI입니다. | | None |Entity (/ui/001_LobbyGroup) | lobbyUI | 로비 그룹 UI입니
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 > 00_ Player [title] | 03_Player_Emoticon [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1135 [text] | # EmoticonData 플레이어가 사용하는 감정표현과 관련된 데이터를 관리하는 테이블입니다. | 이름 | 설명 | | --- | --- | | Key | 감정 표현을 호출하는 키 값으로, 해당 값을 KeyboardKey로 변환해 사용합니다. | | RUID | 감정 표현의 RUID 값입니다.| | Scale | RUID 마다 크기 값이 다르므로, 과하게 크거나 작은 이미지를 조절하기 위한 값입니다. | | PivotY | RUID 마다 피벗 또한 다르므로, y축 위치를 조절하기 위한 값입니다. | | Explain | 해당
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 > 01_StaticRoom [title] | 001_Lobby [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1136 [text] | # LobbyMatchManager #### Property | 동기화 | 타입 | 이름 | 설명 | | --- | --- | --- | --- | | None | number | matchInterval | 매칭 대기 시간을 설정해주는 변수입니다. | | None | number | minPlayerNum | 매칭에 필요한 최소 인원을 설정해주는 변수입니다. | | None | number | maxPlayerNum | 한 게임에 매칭되는 최대 인원을 설정해주는 변수입니다. | | None | SyncTable<string, s
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 > 02_InstanceRoom [title] | 004_Outro [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1137 [text] | # OutroManager #### Property | 동기화 | 타입 | 이름 | 설명 | | --- | --- | --- | --- | | None | SyncTable<string, number>| playerOutroTime | 플레이어 별 결과 확인 시간을 관리합니다. key는 플레이어Id, value는 결과 확인 시간 값입니다. | #### Function | 실행제어 | 타입 | 이름 | 설명 | | --- | --- | --- | --- | | server only | void | OutroTimerSet | 결과
[category] | Guides [section] | 응용 제작 가이드 > 슈피겔만 게임 리메이크 > 03_System [title] | Broadcast [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1138 [text] | # BroadcastLogic 시스템 메시지 시스템을 관리하는 로직입니다. #### Property | 동기화 | 타입 | 이름 | 설명 | | --- | --- | --- | --- | | None | Entity | broadcastSType | 작은 메시지 UI입니다. | | None | Entity | broadcastLType | 큰 메시지 UI입니다. | | None | SyncTable<string> | sTypeMessageTable | BroadcastPanel_S을 사용하는 메시지입니다. | | None | Syn
[category] | Guides [section] | 응용 제작 가이드 > UI에서 아바타 애니메이션 재생하기 [title] | UI 만들기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1140 [text] | AvatarGUIRendererComponent를 활용해 UI에서 아바타의 상태에 맞는 애니메이션을 재생하도록 만들어봅시다. 아래의 가이드를 참고하면 제작에 도움이 됩니다. ##### 참고 가이드 * [아바타 애니메이션 제어하기](/docs/?postId=820) * [아바타를 UI에서 표현하기](/docs/?postId=953) * [기본 UI 컴포넌트](/docs/?postId=744) * [UI 에디터 활용과 제어](/docs/?postId=120) * [StateComponent](/apiReference?postId=363
[category] | Guides [section] | 응용 제작 가이드 > 플래피 피쉬 리메이크 [title] | 장애물 만들기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1141 [text] | # 장애물 및 충돌 구현 장애물 엔티티를 만들어 충돌체를 추가해봅시다. 충돌체까지 구현한 엔티티는 모델로 만들어 추후 월드에 동적으로 불러옵니다. #### 장애물 엔티티 만들기 1. 새로운 EmptyEntity를 생성하고 이름을 **Model_Obstacle**로 변경합니다. 2. Model_Obstacle에 **TransformComponent**를 추가합니다. 2. 새로운 **Top, Bottom** 엔티티를 생성하고, **Model_Obstacle의 자식 엔티티**로 만듭니다. 부모-자식 관계로 만들어 더욱 관리가 용이합니
[category] | Guides [section] | 응용 제작 가이드 > 플래피 피쉬 리메이크 [title] | 시작, 종료 구현하기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1142 [text] | # 죽음 판정 1. **GameLogic**의 `OnBeginPlay()` 함수를 수정합니다. 풀링된 장애물 중 마지막 인덱스의 다음 인덱스로 초기화할 수 있도록 아래와 같이 코드를 변경합니다. ```lua [client only] void OnBeginPlay() { for i = 1, 5 do local entity = _SpawnService:SpawnByModelId(_EntryService:GetModelIdByName("Model_Obstacle"), "obst
[category] | Guides [section] | 응용 제작 가이드 > 플래피 피쉬 리메이크 [title] | 점수 획득 구현하기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1143 [text] | # 점수 획득 구현 Model_Obstacle의 부모 엔티티에 충돌체를 추가합니다. 해당 충돌체와 플레이어 엔티티가 충돌할 때 점수를 획득할 수 있도록 만들어 봅시다. 1. **Workspace - MyDesk - Model_Obstacle**에 **TriggerComponent**를 추가합니다. 2. **[Edit]** 버튼을 눌러 Collider를 추가합니다. 장애물의 중앙을 통과하도록 길게 세로로 Collider를 만듭니다. * ColiderType: Box * BoxSize: X 0.05, Y 20
[category] | Guides [section] | 응용 제작 가이드 > UI에서 아바타 애니메이션 재생하기 [title] | 애니메이션 재생 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1144 [text] | # 학습 과정 소개 무기 버튼을 누르면 아바타가 공격 스킬을 재생하도록 만들어 봅시다.  # ActionNameStruct 만들기 1. **Workspace - MyDesk - Create Scripts - Create StructType**에서 **ActionNameStruct**를 생성합니다. 2. **CoreActionName, PartsActionN
[category] | Guides [section] | 응용 제작 가이드 > UI에서 아바타 애니메이션 재생하기 [title] | 무기 목록 불러오기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1145 [text] | Model_Scroll_Item을 만들고, SkillDatas의 내용을 모델에 불러올 수 있도록 만들어 봅시다.  # Scroll_Item 모델 제작 Scroll_Layout UI에 나타날 버튼을 만들어 봅시다.  # SkillDataStruct 만들기 1. **Workspace - MyDesk - Create Scripts - Create StructType**을 눌러 새로운 **Sk
[category] | Guides [section] | 응용 제작 가이드 [title] | UI에서 아바타 애니메이션 재생하기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1147 [text] | AvatarGUIRendererComponent를 활용해 UI에서 아바타에 무기를 장착시키고, 특정 애니메이션을 재생하도록 만들어 봅시다. AvatarGUIRendererComponent는 아바타를 UI에 보여주는 컴포넌트로, AvatarRenderComponent와 사용 방법이 동일합니다. 그러므로 AvatarRendererComponent를 사용해 같은 방식으로 월드에서 아바타의 상태를 변경하고, 애니메이션을 재생시킬 수 있습니다. 가이드를 따라 월드를 제작하면 아래 그림과 같이 완성됩니다.  * [Hierarchy](/docs/?postId=453) * [프로퍼티 에디터](/docs/?postId=1087) * [UI 에디터 활용과 제어](/docs/?postId=120) # Scene Scene은 UI 화면, 맵, 테스트 중인 월드의 상태를 모두 볼 수 있는 창입니다. 크리에이터의 선택에 맞는 모습으
[category] | Guides [section] | 기본 제작 가이드 > UI [title] | UI 엔티티 제어하기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1154 [text] | # 학습 과정 소개 UI 엔티티를 효율적으로 제어하는 방법을 알아봅시다. UI 엔티티를 제어할 때 UI와 서버, 그리고 클라이언트의 관계를 파악해 만들어야 합니다. ##### 참고 가이드 * [UI 에디터](/docs?postId=120) * [UI 제작하기](/docs?postId=64) * [기본 UI 컴포넌트](/docs?postId=744) # UI 엔티티 제어 엔티티에 접근하는 것과 동일한 방법으로 UI 엔티티에 접근할 수 있습니다. 엔티티에 접근하는 방법은 [엔티티와 컴포넌트 참조](/docs?postId=164) 가이드
[category] | Guides [section] | 기본 제작 가이드 > 게임 로직/시스템 > 게임 로직 [title] | 행동 트리 노드 만들기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1155 [text] | # 학습 과정 소개 행동 트리를 만드는 데 사용하는 노드에 대해 알아보고, 직접 예제를 따라하며 행동 트리에 따라 움직이는 AI 몬스터를 만들어 봅시다. ##### 참고 가이드 * [행동 트리를 활용한 AI 만들기](/docs?postId=562) ##### 참고 API Reference * [BTNode](/apiReference?postId=455) * [AIComponent](/apiReference?postId=361) * [ParallelNode](/apiReference?postId=456) * [RandomSelec
[category] | Guides [section] | 제작 시 준수 사항 > 콘텐츠 제작의 IP사용 가이드 [title] | IP의 구체적인 활용 가능 범위 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1161 [text] | Toben이 직접 제공하는 IP 또는 별도로 사용을 허락한 게임 IP의 구체적인 활용 가능 범위를 안내합니다. 직접 제공하는 IP 또는 사용을 허락하는 게임 IP는 변동 및 업데이트될 수 있으며, 크리에이터는 최신 버전의 가이드를 준수해야 합니다. 1. **사용하려는 리소스가 허용 범위 외의 리소스인지 아닌지는 어디로 문의를 하면 되나요?** 가이드 내용 외 리소스 관련 궁금한 사항이 있을 경우, 아래 경로로 상세 내용을 담아 문의 접수 부탁드립니다. * 문의 접수처: [메이플스토리 월드 고객센터](https://c
[category] | Guides [section] | 기본 제작 가이드 > 시작하기 > 메이커 사용 [title] | LocalWorkspace [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1165 [text] | # 학습 과정 소개 로컬 워크스페이스는 크리에이터가 제작하는 월드 데이터를 내 컴퓨터로 내려받을 수 있는 기능입니다. 로컬 워크스페이스를 사용하고, 메이커와 동기화해 월드를 제작하는 방법을 알아봅시다. ##### 참고 가이드 * [공동제작](/docs/?postId=670) * [공동 제작 그룹 멤버의 등급과 권한](/docs/?postId=1077) * [WorldConfig](/docs/?postId=1101) * [LocalWorkspace 활용](/docs/?postId=1166) # 로컬 워크스페이스 소개 **로컬 워크
[category] | Guides [section] | 기본 제작 가이드 > 시작하기 > 메이커 사용 [title] | ExtendedScriptFormat [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1166 [text] | # 학습 과정 소개 확장된 스크립트 포맷을 사용하는 방법과 mlua 파일 형식 정의를 알아봅시다. ##### 참고 가이드 * [공동제작](/docs/?postId=670) * [공동 제작 그룹 멤버의 등급과 권한](/docs/?postId=1077) * [WorldConfig](/docs/?postId=1101) * [LocalWorkspace](/docs/?postId=1165) # 확장된 스크립트 포맷 소개 로컬 워크스페이스의 **확장된 스크립트 포맷**(ExtendedScriptFormat)을 활성화하면 메타데이터 파일
[category] | Guides [section] | 제작 시 준수 사항 [title] | 생성형 AI를 활용한 CGC 제작 가이드 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1174 [text] | Toben Studio Inc.(이하 “Toben”)는 크리에이터의 메이플스토리 월드 플랫폼(이하 “플랫폼”) 내 생성형 AI를 활용한 크리에이터 제작 콘텐츠(Creators Generated Contents 이하 "CGC") 제작 및 게시 등 행위가 올바르게 이루어질 수 있도록 본 가이드를 마련하였습니다. # 생성형 AI 정의 생성형 AI(Generative Artificial Intelligence)란 텍스트, 이미지, 음악 등 기존에 학습된 콘텐츠를 기반으로 다양한 형태의 새로운 콘텐츠를 생성할 수 있는 인공지능 기술을 의
[category] | Guides [section] | 기본 제작 가이드 > 시작하기 > 메이커 사용 [title] | Command Console [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1194 [text] | # 학습 과정 소개 Command Console의 다양한 명령어를 사용해 특정한 동작을 바로 수행할 수 있습니다. 특정 프로퍼티를 사용하고 있는 모든 엔티티를 찾을 수도 있고, 디버그에 활용할 수도 있습니다. Command Console 활용법을 알아봅시다. # Command Console 소개 Panel - Command Console을 눌러 Command Console 창을 열 수 있습니다. ![[object Object]](https://mod-file.dn.nexoncdn.co.kr/bbs/17307099056193c94f
[category] | Guides [section] | 기본 제작 가이드 > 시작하기 > 메이커 사용 [title] | Command Console 명령어 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1195 [text] | # 학습 과정 소개 Command Console 창에서 사용할 수 있는 명령어들을 알아봅시다. # help 사용할 수 있는 명령어와 설명을 출력합니다. ```lua help [command=all] [-out stream] [-err stream] ``` #### 매개 변수 * **command**: 설명을 출력할 명령어의 이름입니다. all을 입력하면 모든 명령어의 설명이 출력됩니다. #### 옵션 * **-out**: 결과를 출력할 스트림을 설정합니다. * stream: 출력할 스트림입니다. * **-err**: 에
[category] | Guides [section] | 기본 제작 가이드 > 시작하기 > 메이커 사용 [title] | Lua Executor [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1196 [text] | # 학습 과정 소개 메이커에서 제작한 월드를 테스트할 때 다양한 컴포넌트, 프로퍼티 값을 변경해 실시간으로 의도한 바가 맞는지 확인하거나, 서버 또는 클라이언트 환경에서 각각 만든 스크립트가 문제없이 작동하는지 확인하고 싶을 수 있습니다. Lua Executor로 이러한 내용을 쉽게 확인할 수 있습니다. 몇 가지 활용 예시와 함께 Lua Executor에 대해 알아봅시다. # Lua Excutor Lua Executor를 사용하면 메이커에서 플레이 중에 실시간으로 스크립트를 실행하고 즉시 월드에 반영됩니다. 크리에이터의 필요에 따
[category] | Guides [section] | 기본 제작 가이드 > 보안 및 최적화 [title] | RateLimitService 활용하기 [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1197 [text] | # 학습 과정 소개 유저의 server 함수 사용량을 제한하는 방법을 알아봅시다. ##### 참고 가이드 [패킷 변조 대비하기](https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1102) [월드 인스턴스](https://maplestoryworlds-creators.nexon.com/ko/docs?postId=984) [인스턴스 맵 만들기](https://maplestoryworlds-creators.nexon.com/ko/docs/?postId=540) # RateLi
[category] | Guides [section] | 기본 제작 가이드 > 시작하기 > 메이커 사용 [title] | VS Code: mLua Extension [url] | https://maplestoryworlds-creators.nexon.com/ko/docs?postId=1209 [text] | # 학습 과정 소개 LocalWorkspace와 ExtendedScriptFormat을 사용하는 크리에이터는 메이플스토리 월드에서 제공하는 mLua VS Code Extension을 활용하여 스크립트를 효율적으로 작성할 수 있습니다. ##### 참고 가이드 [LocalWorkspace](/docs/?postId=1165) [ExtendedScriptFormat](/docs/?postId=1166) [mLua](/docs?postId=1287) [공동 제작](/docs/?postId=670) # mLua VS Code Extens