← 목록

mLua · Nemotron-CC 리프레이즈 (CPT)

총 8,200개 · 페이지 153/274
🔀 랜덤
불러오는 중…

[task] | diverse_qa [title] | 리소스 찾기 [category] | Guides [rephrased] | 질문: Resource Storage의 기본 위치는 어디인가요? 답변: Resource Storage의 기본 위치는 Scene 탭 옆입니다. 질문: Resource Storage 창을 닫은 후 다시 열려면 어떻게 해야 하나요? 답변: 상단 내비게이션 메뉴의 Panels - Resource Storage를 클릭해 열 수 있습니다. 질문: Resource Storage는 어떤 세 가지 항목으로 나뉘어 있나요? 답변: 내 리소스, MSW 리소스, 즐겨찾기로 나뉘어 있습니다. 질문: 내 리소스에 외부에서 불러온 리소스 파일을 추가하면 [original] | # 학습 과정 소개 방대한 리소스 속에서 크리에이터에게 필요한 리소스만 골라 활용할 수 있습니다. 또한 크리에이터가 제작한 리소스를 추가해 제작에 활용할 수도 있습니다. # 리소스 스토리지 소개 메이플스토리 월드에서는 많은 리소스를 **Preset List**로 제공하지만, 모든 리소스가 **Preset List**에 있는 것은 아닙니다. 보다 방대한 데이터에서 원하는 리소스를 검색할 때는 **Resource Storage**를 활용해 봅시다. **Resource Storage**의 기본 위치는 **Scene** 탭 옆입니다 [chunk_id] | Guides:211:0

[task] | knowledge_list [title] | 제작한 월드 불러오기 및 관리 [category] | Guides [rephrased] | 제시된 문서는 메이플스토리 월드 메이커의 GUI(그래픽 사용자 인터페이스) 사용 가이드이며, mLua 스크립트 언어, API, 컴포넌트, 또는 코드 로직에 대한 정보는 포함되어 있지 않습니다. 따라서 요청하신 "API 이름·매개변수·반환 타입·동기화/서버·클라이언트 제약"을 명시하는 것은 해당 문서의 범위와 일치하지 않습니다. 문서에 명시된 **메이커(Maker) 프로그램 사용 절차 및 관리 기능**에 관한 핵심 사실만 목록으로 정리합니다. 1. 제작 중인 월드를 불러오기 위해서는 메뉴의 **[만들기]** 버튼을 클릭한 후, 월 [original] | # 학습 과정 소개 제작한 월드를 불러오고 관리하는 방법을 알아봅니다. # 제작 중인 월드 불러오기 1. 메뉴에서 **[만들기]** 버튼을 클릭합니다. 2. 월드 목록에서 불러올 월드를 선택합니다. 3. 월드 정보에서 **[이어서 만들기]** 버튼을 클릭하면 제작 중인 월드를 불러옵니다. # 리비전 관리 월드를 제작할 때는 리비전을 기록하고 관리하는 과정이 필요합니다. 중요한 변경점이 발생했을 때마다 리비전을 기록해두면 필요한 순간에 예전 리비전으로 월드를 되돌릴 수 있어 안전합니다. [chunk_id] | Guides:213:0

[task] | knowledge_list [title] | 리소스 찾기 [category] | Guides [rephrased] | 제시된 문서에는 mLua 스크립트 언어, API 함수, 메서드, 이벤트 핸들러 또는 코드 예제가 포함되어 있지 않습니다. 해당 문서는 메이플스토리 월드 에디터의 UI(인터페이스) 및 리소스 관리 정책(내부 데이터 구조 및 운영 규칙)에 대한 설명이므로, 요청하신 "API 이름·매개변수·반환 타입·동기화/서버·클라이언트 제약"을 명시할 수 있는 기술적 사실은 존재하지 않습니다. 따라서 원문에 포함된 **에디터 사용법 및 리소스 관리 정책**에 한해 핵심 사실만 추출하여 목록으로 정리합니다. ```lua -- 해당 문서에는 mLua [original] | # 학습 과정 소개 방대한 리소스 속에서 크리에이터에게 필요한 리소스만 골라 활용할 수 있습니다. 또한 크리에이터가 제작한 리소스를 추가해 제작에 활용할 수도 있습니다. # 리소스 스토리지 소개 메이플스토리 월드에서는 많은 리소스를 **Preset List**로 제공하지만, 모든 리소스가 **Preset List**에 있는 것은 아닙니다. 보다 방대한 데이터에서 원하는 리소스를 검색할 때는 **Resource Storage**를 활용해 봅시다. **Resource Storage**의 기본 위치는 **Scene** 탭 옆입니다 [chunk_id] | Guides:211:0

[task] | wikipedia [title] | 리소스 찾기 [category] | Guides [rephrased] | **메이커 사용 리소스 찾기** 메이플스토리 월드(MSW)의 메이커에서는 검색한 리소스를 즐겨찾기에 등록하여 RUID(Resource ID)를 보다 편리하게 관리할 수 있습니다. 리소스 항목의 별 모양 버튼을 누르면 해당 리소스가 즐겨찾기에 저장되며, 최대 5,000개까지 저장할 수 있습니다. ### 리소스 카테고리 구분 MSW의 리소스는 **Sprite**, **AnimationClip**, **AudioClip**, **AvatarItem**이라는 4개의 상위 카테고리 아래에서 각각의 하위 카테고리로 세분화되어 분류됩니다. [original] | 검색한 리소스를 즐겨찾기에 등록해 편리하게 RUID를 찾을 수 있습니다. 별 모양 버튼을 누르면 즐겨찾기에 저장됩니다. 최대 5,000개의 리소스를 즐겨찾기에 저장할 수 있습니다. # 리소스 카테고리 구분 리소스는 4개의 상위 카테고리 **Sprite, AnimationClip, AudioClip, AvatarItem** 아래에 하위 카테고리로 분류되어 있습니다. 4개의 카테고리 중 찾으려는 분류를 선택해 검색합니다. | 카테고리 | 설명 | | --- | --- | | Sprite | 다양하게 활용할 수 있는 스프라이트 [chunk_id] | Guides:211:1

[task] | diverse_qa [title] | 리소스 찾기 [category] | Guides [rephrased] | 질문: 검색한 리소스를 즐겨찾기에 저장하기 위해 어떤 버튼을 눌러야 하는가? 답변: 별 모양 버튼을 누르면 즐겨찾기에 저장됩니다. 질문: 즐겨찾기에 저장할 수 있는 리소스의 최대 개수는 몇 개인가? 답변: 최대 5,000개의 리소스를 즐겨찾기에 저장할 수 있습니다. 질문: 메이플스토리 월드에서 리소스는 몇 개의 상위 카테고리로 분류되어 있는가? 답변: 리소스는 Sprite, AnimationClip, AudioClip, AvatarItem의 4개의 상위 카테고리로 분류되어 있습니다. 질문: 'Sprite' 카테고리의 하위 카테 [original] | 검색한 리소스를 즐겨찾기에 등록해 편리하게 RUID를 찾을 수 있습니다. 별 모양 버튼을 누르면 즐겨찾기에 저장됩니다. 최대 5,000개의 리소스를 즐겨찾기에 저장할 수 있습니다. # 리소스 카테고리 구분 리소스는 4개의 상위 카테고리 **Sprite, AnimationClip, AudioClip, AvatarItem** 아래에 하위 카테고리로 분류되어 있습니다. 4개의 카테고리 중 찾으려는 분류를 선택해 검색합니다. | 카테고리 | 설명 | | --- | --- | | Sprite | 다양하게 활용할 수 있는 스프라이트 [chunk_id] | Guides:211:1

[task] | extract_knowledge [title] | 실행 제어 [category] | Guides [rephrased] | # 실행 제어 (Execution Control) ## 1. 개념 설명 메이플스토리 월드의 컴포넌트는 서버와 클라이언트에서 공용으로 사용됩니다. 따라서 특정 함수가 서버 공간에서 호출되었을 때 서버에서 실행되어야 하는지, 혹은 클라이언트로 전송되어 클라이언트에서 실행되어야 하는지 명확하게 정의해야 합니다. 수동적으로 `if-else` 분기문을 통해 현재 실행 공간(`isClient`, `isServer`)을 판별하는 방식은 코드 가독성이 떨어지고, 반복적인 로직에서 효율성이 낮습니다. 이를 해결하기 위해 mLua는 함수 단위별 [original] | 실행 제어의 동작 방식을 이해하기 위해 함수 호출 상황을 살펴봅시다. 특정한 소리 효과를 내는 `PlaySoundEffect` 함수가 있다고 가정합니다. 소리 효과는 개인 PC에서 나야 하므로 클라이언트에서만 사용하는 함수일 것입니다. 만약, 서버에서 특정 타이밍에 소리 효과를 내야 한다면, 서버는 효과음과 연관된 메시지를 생성해 송신하고, 클라이언트는 수신부를 구현해 `PlaySoundEffect` 함수를 호출합니다. | 메시지 전송 흐름 | 참고 이미지 | | --------- | ------ | | 메시지 생성 | | | 메 [chunk_id] | Guides:210:1

[task] | diverse_qa [title] | 제작한 월드 불러오기 및 관리 [category] | Guides [rephrased] | 질문: 제작 중인 월드를 불러오기 위해 메뉴에서 클릭해야 하는 버튼은 무엇인가요? 답변: 메뉴에서 [만들기] 버튼을 클릭해야 합니다. 질문: 월드 목록에서 특정 월드를 선택한 후, 그 월드를 불러오기 위해 월드 정보에서 클릭해야 하는 버튼의 이름은 무엇인가요? 답변: [이어서 만들기] 버튼을 클릭해야 합니다. 질문: 월드를 제작할 때 리비전을 기록하고 관리해야 하는 주요 이유는 무엇인가요? 답변: 중요한 변경점 발생 시 예전 리비전으로 월드를 되돌릴 수 있어 안전하고, 이전 버전을 추적하고 관리할 때 편리하기 때문입니다. 질문 [original] | # 학습 과정 소개 제작한 월드를 불러오고 관리하는 방법을 알아봅니다. # 제작 중인 월드 불러오기 1. 메뉴에서 **[만들기]** 버튼을 클릭합니다. 2. 월드 목록에서 불러올 월드를 선택합니다. 3. 월드 정보에서 **[이어서 만들기]** 버튼을 클릭하면 제작 중인 월드를 불러옵니다. # 리비전 관리 월드를 제작할 때는 리비전을 기록하고 관리하는 과정이 필요합니다. 중요한 변경점이 발생했을 때마다 리비전을 기록해두면 필요한 순간에 예전 리비전으로 월드를 되돌릴 수 있어 안전합니다. [chunk_id] | Guides:213:0

[task] | wikipedia [title] | 실행 제어 [category] | Guides [rephrased] | # 실행 제어 실행 제어(Execution Control)는 메이플스토리 월드 스크립트 컴포넌트 내 함수가 서버와 클라이언트 중 어디에서 호출되고 실행될지를 지정하는 메커니즘이다. 메이플스토리 월드의 컴포넌트는 서버와 클라이언트에서 공용으로 사용되므로, 컴포넌트에 속한 함수는 두 공간 중 어디에서든 호출될 수 있다. 그러나 특정 기능은 실행 공간에 따라 적절하지 않을 수 있다. 예를 들어, 소리 효과와 같은 개인 PC 하드웨어에 의존하는 기능은 반드시 클라이언트에서만 실행되어야 한다. 만약 서버에서 특정 타이밍에 소리 효과를 발 [original] | 실행 제어의 동작 방식을 이해하기 위해 함수 호출 상황을 살펴봅시다. 특정한 소리 효과를 내는 `PlaySoundEffect` 함수가 있다고 가정합니다. 소리 효과는 개인 PC에서 나야 하므로 클라이언트에서만 사용하는 함수일 것입니다. 만약, 서버에서 특정 타이밍에 소리 효과를 내야 한다면, 서버는 효과음과 연관된 메시지를 생성해 송신하고, 클라이언트는 수신부를 구현해 `PlaySoundEffect` 함수를 호출합니다. | 메시지 전송 흐름 | 참고 이미지 | | --------- | ------ | | 메시지 생성 | | | 메 [chunk_id] | Guides:210:1

[task] | wikipedia [title] | 리소스 찾기 [category] | Guides [rephrased] | # 메이플스토리 월드 리소스 관리 및 활용 메이플스토리 월드(MapleStory Worlds)는 방대한 양의 게임 리소스를 제공하며, 크리에이터는 이 중 프로젝트에 필요한 리소스를 선별하여 활용할 수 있습니다. 또한 크리에이터가 직접 제작하거나 외부에서 가져온 리소스를 추가하여 제작 과정에 접목할 수도 있습니다. ## 리소스 스토리지(Resource Storage) 개요 메이플스토리 월드의 기본 인터페이스인 **Preset List**에는 일부 기본 리소스만 포함되어 있습니다. 보다 광범위한 데이터 세트에서 특정 리소스를 검색 [original] | # 학습 과정 소개 방대한 리소스 속에서 크리에이터에게 필요한 리소스만 골라 활용할 수 있습니다. 또한 크리에이터가 제작한 리소스를 추가해 제작에 활용할 수도 있습니다. # 리소스 스토리지 소개 메이플스토리 월드에서는 많은 리소스를 **Preset List**로 제공하지만, 모든 리소스가 **Preset List**에 있는 것은 아닙니다. 보다 방대한 데이터에서 원하는 리소스를 검색할 때는 **Resource Storage**를 활용해 봅시다. **Resource Storage**의 기본 위치는 **Scene** 탭 옆입니다 [chunk_id] | Guides:211:0

[task] | wikipedia [title] | 제작한 월드 불러오기 및 관리 [category] | Guides [rephrased] | # 메이플스토리 월드 메이커: 월드 불러오기 및 관리 본 섹션에서는 메이플스토리 월드 메이커에서 제작한 월드를 불러오고, 리비전을 관리하며, 월드를 삭제하는 방법에 대해 설명합니다. ## 제작 중인 월드 불러오기 메이커에서 이전에 제작했던 월드를 다시 열기 위해서는 다음과 같은 단계를 따라야 합니다. 먼저 상단 메뉴에서 **[만들기]** 버튼을 클릭하여 월드 목록 화면으로 이동합니다. 해당 목록에서 불러오고자 하는 월드를 선택한 후, 표시된 월드 정보 영역의 **[이어서 만들기]** 버튼을 클릭하면 해당 월드가 편집 상태로 로 [original] | # 학습 과정 소개 제작한 월드를 불러오고 관리하는 방법을 알아봅니다. # 제작 중인 월드 불러오기 1. 메뉴에서 **[만들기]** 버튼을 클릭합니다. 2. 월드 목록에서 불러올 월드를 선택합니다. 3. 월드 정보에서 **[이어서 만들기]** 버튼을 클릭하면 제작 중인 월드를 불러옵니다. # 리비전 관리 월드를 제작할 때는 리비전을 기록하고 관리하는 과정이 필요합니다. 중요한 변경점이 발생했을 때마다 리비전을 기록해두면 필요한 순간에 예전 리비전으로 월드를 되돌릴 수 있어 안전합니다. [chunk_id] | Guides:213:0

[task] | wikipedia [title] | 실행 제어 [category] | Guides [rephrased] | # 스크립트 이해: 실행 제어 메이플스토리 월드 스크립트 편집기에서는 함수의 실행 공간(Execution Space)을 아이콘으로 시각화하여 표시합니다. 이는 스크립트 컴포넌트 내의 함수가 서버, 클라이언트, 또는 양쪽 모두에서 어떻게 실행되는지를 한눈에 파악할 수 있도록 돕는 기능입니다. ## 실행 제어 아이콘 함수 앞에 표시되는 아이콘은 해당 함수의 실행 제어 설정을 나타냅니다. 아이콘과 그에 대응하는 실행 제어 설정은 다음과 같습니다. * **아이콘 없음**: 실행 제어 설정이 적용되지 않음(사용하지 않음) * [original] | 스크립트 함수의 실행 제어 설정을 아이콘으로 표시합니다. 아이콘은 다음과 같습니다. | Icon | 실행 제어 설정 | | ---- | -------- | | 없음 | 사용하지 않음 | | | Client | | | ClientOnly | | | Server | | | ServerOnly | | | Multicast | 실행 제어가 설정된 함수에는 실행 제어 아이콘이 표시됩니다. 실행될 수 없는 함수는 아이콘이 표시됩니다. # 실행 제어 함수의 매개 변수 서로 다른 공간의 함수를 실행할 때 매개 변수를 통해 다른 [chunk_id] | Guides:210:2

[task] | knowledge_list [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | ```lua -- 핵심 사실 목록 1. SpawnService는 엔티티 생성을 위한 함수인 SpawnByEntity와 SpawnByModelId를 제공합니다. 2. _SpawnService:SpawnByEntity 함수는 매개변수 entity(Entity), name(string), spawnPosition(Vector3)를 필수로 받아들이며, parent(Entity)와 includeChild(boolean)는 선택적 매개변수입니다. 3. _SpawnService:SpawnByEntity 함수의 parent 매개변수는 생성된 엔 [original] | # 학습 과정 소개 엔티티의 생성과 삭제는 월드를 제작하면서 가장 많이 사용하는 기능입니다. 이번 과정에서는 엔티티 생성과 삭제 방법, 그리고 엔티티 존재 여부를 확인하는 유효성 체크 기능을 살펴봅니다. # 엔티티 생성 **SpawnService**는 엔티티 생성 함수를 제공합니다. 주요 엔티티 생성 함수인 `SpawnByEntity`와 `SpawnByModelId`를 알아보겠습니다. ## SpawnByEntity 엔티티를 바탕으로 새로운 엔티티를 생성합니다. #### 매개 변수 |Parameter |Type |D [chunk_id] | Guides:290:0

[task] | distill [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | # 심화 엔티티 생성, 삭제 및 유효성 체크 ## 1. 엔티티 생성 (`_SpawnService`) 엔티티 생성은 `_SpawnService`의 함수를 통해 수행합니다. 성공 시 `Entity` 객체를, 실패 시 `nil`을 반환합니다. ### `SpawnByEntity(entity, name, spawnPosition, parent?, includeChild?)` 기존 엔티티를 복제하여 새로운 엔티티를 생성합니다. | 매개변수 | 타입 | 설명 | | :--- | :--- | :--- | | `entity` | `Entit [original] | # 학습 과정 소개 엔티티의 생성과 삭제는 월드를 제작하면서 가장 많이 사용하는 기능입니다. 이번 과정에서는 엔티티 생성과 삭제 방법, 그리고 엔티티 존재 여부를 확인하는 유효성 체크 기능을 살펴봅니다. # 엔티티 생성 **SpawnService**는 엔티티 생성 함수를 제공합니다. 주요 엔티티 생성 함수인 `SpawnByEntity`와 `SpawnByModelId`를 알아보겠습니다. ## SpawnByEntity 엔티티를 바탕으로 새로운 엔티티를 생성합니다. #### 매개 변수 |Parameter |Type |D [chunk_id] | Guides:290:0

[task] | knowledge_list [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | 1. `Preset List`에서 원하는 모델의 콘텍스트 메뉴를 연 뒤 `Add to Workspace`를 누르면 해당 모델이 `Workspace`에 추가됩니다. 2. 추가된 모델의 콘텍스트 메뉴에서 `Copy Entry ID`를 누르면 해당 모델의 `Entry ID`가 클립보드에 복사되며, 스크립트에서 사용할 때 앞에 붙는 `"model://"` 접두사는 제거해야 합니다. 3. `SpawnManager` 컴포넌트의 `SpawnByModelId` 함수 내에서 `_SpawnService:SpawnByModelId` 메서드는 모델 ID [original] | 1. **Preset List**에서 원하는 모델의 콘텍스트 메뉴를 연 뒤, **Add to Workspace**를 눌러 **Workspace**에 모델을 추가합니다. 2. 추가한 모델의 콘텍스트 메뉴에서 **Copy Entry ID**를 눌러 **Entry ID**를 클립보드에 복사합니다. 3. **SpawnManager** 컴포넌트를 열고 `SpawnByModelId` 함수를 생성합니다. ```lua void SpawnByModelId() { local id = [chunk_id] | Guides:290:1

[task] | extract_knowledge [title] | 리소스 찾기 [category] | Guides [rephrased] | # 메이커 리소스 검색 및 RUID 관리 ## 1. 개념 설명 메이플스토리 월드(MSW)의 리소스는 `Sprite`, `AnimationClip`, `AudioClip`, `AvatarItem`이라는 4개의 상위 카테고리로 분류됩니다. 각 상위 카테고리 아래에는 구체적인 용도에 따른 하위 카테고리가 존재하며, 이는 스크립팅 시 특정 타입의 리소스를 참조하기 위한 기준이 됩니다. | 상위 카테고리 | 설명 | 주요 하위 카테고리 | | :--- | :--- | :--- | | **Sprite** | 정적인 이미지 리소스 | ob [original] | 검색한 리소스를 즐겨찾기에 등록해 편리하게 RUID를 찾을 수 있습니다. 별 모양 버튼을 누르면 즐겨찾기에 저장됩니다. 최대 5,000개의 리소스를 즐겨찾기에 저장할 수 있습니다. # 리소스 카테고리 구분 리소스는 4개의 상위 카테고리 **Sprite, AnimationClip, AudioClip, AvatarItem** 아래에 하위 카테고리로 분류되어 있습니다. 4개의 카테고리 중 찾으려는 분류를 선택해 검색합니다. | 카테고리 | 설명 | | --- | --- | | Sprite | 다양하게 활용할 수 있는 스프라이트 [chunk_id] | Guides:211:1

[task] | extract_knowledge [title] | 실행 제어 [category] | Guides [rephrased] | # 4.2 스크립트 함수의 실행 제어 및 데이터 전송 메이플스토리 월드(mLua)에서는 스크립트 함수가 서버(Server), 클라이언트(Client), 또는 양쪽(Multicast) 중 어디에서 실행되는지를 명시적으로 지정할 수 있습니다. 이를 통해 네트워크 환경에서의 데이터 흐름과 실행 로직을 제어하며, 서로 다른 실행 공간 사이에서 필요한 데이터를 전달하는 것이 가능합니다. ## 1. 실행 제어 아이콘 및 지정 스크립트 에디터에서 함수의 실행 제어 설정은 함수 정의 앞에 붙는 아이콘(또는 키워드)으로 표시됩니다. | 아이 [original] | 스크립트 함수의 실행 제어 설정을 아이콘으로 표시합니다. 아이콘은 다음과 같습니다. | Icon | 실행 제어 설정 | | ---- | -------- | | 없음 | 사용하지 않음 | | | Client | | | ClientOnly | | | Server | | | ServerOnly | | | Multicast | 실행 제어가 설정된 함수에는 실행 제어 아이콘이 표시됩니다. 실행될 수 없는 함수는 아이콘이 표시됩니다. # 실행 제어 함수의 매개 변수 서로 다른 공간의 함수를 실행할 때 매개 변수를 통해 다른 [chunk_id] | Guides:210:2

[task] | knowledge_list [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | * `SpawnService`의 `SpawnByModelId` 메서드를 호출하여 엔티티를 생성하고, 그 결과로 반환된 엔티티 객체를 스크립트 컴포넌트의 `[none]` 속성인 `SpawnedEntity` 타입 `any` 변수에 저장해야 한다. * `SpawnByModelId` 메서드는 모델 ID 문자열, 엔티티 이름 문자열, 생성 위치 `Vector3`, 그리고 부모 엔티티를 매개변수로 받아 생성된 엔티티를 반환하며, `_EntityService:GetEntityByPath` 메서드로 부모 엔티티를 조회하여 전달한다. * [original] | **SpawnService**의 스폰 기능을 통해 엔티티를 생성하고, 생성된 후 3초 후에 제거되도록 합니다. 예제는 위 엔티티 생성에서 사용한 **SpawnManager** 스크립트 컴포넌트를 활용합니다. 1. 프로퍼티를 추가하고, 타입과 이름을 다음과 같이 설정합니다. ```lua Property: [none] any SpawnedEntity = nil ``` 2. `SpawnByModelId` 함수를 다음과 같이 수정합니다. ```lua void SpawnByMode [chunk_id] | Guides:290:2

[task] | distill [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | ### `isvalid` 유효성 체크 엔티티의 존재 여부를 확인하는 함수입니다. * **매개 변수**: `entity` (확인 대상 엔티티) * **반환 값**: * `true`: 엔티티가 존재할 때 * `false`: 엔티티가 `nil`, 삭제 대기 중, 또는 이미 삭제된 경우 > **Tip**: 글로벌 함수 `isvalid(entity)`와 `_EntityService:IsValid(entity)`는 동일한 기능을 수행합니다. #### 사용 예시 엔티티 삭제 전후로 값이 어떻게 변하는지 확인 [original] | | Parameter | Description | | :--: | ----------- | | entity | 유효성 체크 대상이 되는 엔티티를 넣어줍니다. | #### 반환 값 * 매개 변수로 넘겨진 엔티티가 존재하면 **true**를 반환합니다. * 엔티티가 nil이거나 삭제 대기 중, 또는 삭제된 엔티티라면 **false**를 반환합니다. #### 사용 예시 위 `Destroy` 함수 예제에 이어서 엔티티 삭제 전후로 `isvalid` 함수가 어떤 값을 반환하는지 확인하고 실제 사용법을 살펴봅니다. 1. **Spawn [chunk_id] | Guides:290:3

[task] | distill [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | # 심화 엔티티의 생성과 삭제, 유효성 체크 ## 1. 엔티티 생성 (`_SpawnService:SpawnByModelId`) 1. **Preset List**에서 모델의 **Entry ID**를 복사합니다. 2. `SpawnByModelId` 함수를 구현하여 `_SpawnService:SpawnByModelId`를 호출합니다. - **Entry ID**: `model://` 접두어 제거 필수. - **parent**: `_EntityService:GetEntityByPath`로 부모 엔티티를 조회하여 전달. - [original] | 1. **Preset List**에서 원하는 모델의 콘텍스트 메뉴를 연 뒤, **Add to Workspace**를 눌러 **Workspace**에 모델을 추가합니다. 2. 추가한 모델의 콘텍스트 메뉴에서 **Copy Entry ID**를 눌러 **Entry ID**를 클립보드에 복사합니다. 3. **SpawnManager** 컴포넌트를 열고 `SpawnByModelId` 함수를 생성합니다. ```lua void SpawnByModelId() { local id = [chunk_id] | Guides:290:1

[task] | knowledge_list [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | 제시된 문서 내용에 기반하여 추출한 핵심 사실 목록입니다. 1. `isvalid` 함수는 유효성 체크 대상이 되는 엔티티를 매개변수로 받습니다. 2. `isvalid` 함수는 매개변수로 전달된 엔티티가 존재할 경우 `true`를 반환합니다. 3. `isvalid` 함수는 엔티티가 `nil`이거나 삭제 대기 중이거나 이미 삭제된 상태라면 `false`를 반환합니다. 4. `isvalid`는 글로벌 함수이며, `_EntityService:IsValid(entity)` 함수와 동일한 기능을 수행합니다. 5. 엔티티 삭제 전후로 `isv [original] | | Parameter | Description | | :--: | ----------- | | entity | 유효성 체크 대상이 되는 엔티티를 넣어줍니다. | #### 반환 값 * 매개 변수로 넘겨진 엔티티가 존재하면 **true**를 반환합니다. * 엔티티가 nil이거나 삭제 대기 중, 또는 삭제된 엔티티라면 **false**를 반환합니다. #### 사용 예시 위 `Destroy` 함수 예제에 이어서 엔티티 삭제 전후로 `isvalid` 함수가 어떤 값을 반환하는지 확인하고 실제 사용법을 살펴봅니다. 1. **Spawn [chunk_id] | Guides:290:3

[task] | wikipedia [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | # 심화: 엔티티의 생성과 삭제, 유효성 체크 메이플스토리 월드 스크립트에서 모델 기반 엔티티를 생성하고, 생성된 엔티티의 유효성을 검사하며, 엔티티를 제거하는 방법을 설명합니다. ## 모델 기반 엔티티 생성 모델 기반 엔티티를 생성하기 위해서는 먼저 에디터의 **Preset List**에서 원하는 모델을 선택하여 **Workspace**에 추가해야 합니다. 추가된 모델의 콘텍스트 메뉴에서 **Copy Entry ID**를 선택하여 해당 모델의 **Entry ID**를 클립보드에 복사합니다. 이후 **SpawnManager* [original] | 1. **Preset List**에서 원하는 모델의 콘텍스트 메뉴를 연 뒤, **Add to Workspace**를 눌러 **Workspace**에 모델을 추가합니다. 2. 추가한 모델의 콘텍스트 메뉴에서 **Copy Entry ID**를 눌러 **Entry ID**를 클립보드에 복사합니다. 3. **SpawnManager** 컴포넌트를 열고 `SpawnByModelId` 함수를 생성합니다. ```lua void SpawnByModelId() { local id = [chunk_id] | Guides:290:1

[task] | wikipedia [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | # 엔티티의 생성과 삭제, 유효성 체크 엔티티의 생성과 삭제는 메이플스토리 월드(MapleStory Worlds) 월드 제작 과정에서 가장 빈번하게 활용되는 기능입니다. 이 가이드에서는 엔티티를 생성하고 삭제하는 방법, 그리고 엔티티의 존재 여부를 확인하는 유효성 체크 기능에 대해 다룹니다. ## 엔티티 생성 `SpawnService`는 엔티티를 생성하기 위한 함수들을 제공합니다. 이 중 주요 생성 함수인 `SpawnByEntity`와 `SpawnByModelId`의 사용법에 대해 살펴봅니다. ### SpawnByEntity [original] | # 학습 과정 소개 엔티티의 생성과 삭제는 월드를 제작하면서 가장 많이 사용하는 기능입니다. 이번 과정에서는 엔티티 생성과 삭제 방법, 그리고 엔티티 존재 여부를 확인하는 유효성 체크 기능을 살펴봅니다. # 엔티티 생성 **SpawnService**는 엔티티 생성 함수를 제공합니다. 주요 엔티티 생성 함수인 `SpawnByEntity`와 `SpawnByModelId`를 알아보겠습니다. ## SpawnByEntity 엔티티를 바탕으로 새로운 엔티티를 생성합니다. #### 매개 변수 |Parameter |Type |D [chunk_id] | Guides:290:0

[task] | diverse_qa [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | 질문: SpawnService에서 엔티티를 생성하는 주요 함수 두 가지는 무엇인가요? 답변: SpawnByEntity와 SpawnByModelId입니다. 질문: SpawnByEntity 함수의 첫 번째 매개 변수 entity의 타입은 무엇이며, 어떤 역할을 하나요? 답변: 타입은 Entity이며, 복제할 엔티티를 지정하는 역할을 합니다. 질문: SpawnByEntity 함수에서 includeChild 매개 변수가 boolean 타입인 이유는 무엇이며, 이 값이 true일 때 어떤 일이 발생하나요? 답변: 복제할 엔티티의 하위 엔 [original] | # 학습 과정 소개 엔티티의 생성과 삭제는 월드를 제작하면서 가장 많이 사용하는 기능입니다. 이번 과정에서는 엔티티 생성과 삭제 방법, 그리고 엔티티 존재 여부를 확인하는 유효성 체크 기능을 살펴봅니다. # 엔티티 생성 **SpawnService**는 엔티티 생성 함수를 제공합니다. 주요 엔티티 생성 함수인 `SpawnByEntity`와 `SpawnByModelId`를 알아보겠습니다. ## SpawnByEntity 엔티티를 바탕으로 새로운 엔티티를 생성합니다. #### 매개 변수 |Parameter |Type |D [chunk_id] | Guides:290:0

[task] | diverse_qa [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | 질문: `isvalid` 함수의 매개 변수 `entity`에 무엇을 넣어야 하나요? 답변: 유효성 체크 대상이 되는 엔티티를 넣어줍니다. 질문: 매개 변수로 넘겨진 엔티티가 존재할 때 `isvalid` 함수는 어떤 값을 반환하나요? 답변: true를 반환합니다. 질문: 엔티티가 nil이거나 삭제 대기 중이거나 삭제된 상태라면 `isvalid` 함수는 어떤 값을 반환하나요? 답변: false를 반환합니다. 질문: `isvalid` 글로벌 함수와 동일한 기능을 수행하는 서비스 함수는 무엇인가요? 답변: `_EntityService [original] | | Parameter | Description | | :--: | ----------- | | entity | 유효성 체크 대상이 되는 엔티티를 넣어줍니다. | #### 반환 값 * 매개 변수로 넘겨진 엔티티가 존재하면 **true**를 반환합니다. * 엔티티가 nil이거나 삭제 대기 중, 또는 삭제된 엔티티라면 **false**를 반환합니다. #### 사용 예시 위 `Destroy` 함수 예제에 이어서 엔티티 삭제 전후로 `isvalid` 함수가 어떤 값을 반환하는지 확인하고 실제 사용법을 살펴봅니다. 1. **Spawn [chunk_id] | Guides:290:3

[task] | distill [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | # 심화 엔티티 생성, 삭제 및 유효성 체크 **SpawnService**로 엔티티를 생성하고, 3초 후 삭제하는 예제입니다. `SpawnManager` 컴포넌트를 기반으로 작성합니다. ## 1. 프로퍼티 및 생성 로직 생성된 엔티티 참조를 저장하기 위해 `any` 타입 프로퍼티를 추가하고, `SpawnByModelId` 메서드에서 생성 및 유효성 검사를 수행합니다. ```lua Property: [none] any SpawnedEntity = nil Method: void SpawnByModelId() { loca [original] | **SpawnService**의 스폰 기능을 통해 엔티티를 생성하고, 생성된 후 3초 후에 제거되도록 합니다. 예제는 위 엔티티 생성에서 사용한 **SpawnManager** 스크립트 컴포넌트를 활용합니다. 1. 프로퍼티를 추가하고, 타입과 이름을 다음과 같이 설정합니다. ```lua Property: [none] any SpawnedEntity = nil ``` 2. `SpawnByModelId` 함수를 다음과 같이 수정합니다. ```lua void SpawnByMode [chunk_id] | Guides:290:2

[task] | diverse_qa [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | 질문: Preset List에서 모델을 Workspace에 추가하기 위한 정확한 절차는 무엇인가요? 답변: Preset List에서 원하는 모델의 콘텍스트 메뉴를 연 뒤, **Add to Workspace**를 눌러 Workspace에 모델을 추가합니다. 질문: 모델의 Entry ID를 클립보드에 복사하는 방법은 무엇인가요? 답변: 추가한 모델의 콘텍스트 메뉴에서 **Copy Entry ID**를 누르면 Entry ID가 클립보드에 복사됩니다. 질문: `SpawnByModelId` 함수에서 `id` 변수에赋여할 값의 형식은 어떻 [original] | 1. **Preset List**에서 원하는 모델의 콘텍스트 메뉴를 연 뒤, **Add to Workspace**를 눌러 **Workspace**에 모델을 추가합니다. 2. 추가한 모델의 콘텍스트 메뉴에서 **Copy Entry ID**를 눌러 **Entry ID**를 클립보드에 복사합니다. 3. **SpawnManager** 컴포넌트를 열고 `SpawnByModelId` 함수를 생성합니다. ```lua void SpawnByModelId() { local id = [chunk_id] | Guides:290:1

[task] | extract_knowledge [title] | 제작한 월드 불러오기 및 관리 [category] | Guides [rephrased] | # 메이플스토리 월드 메이커: 월드 관리 및 리비전 제어 본 절에서는 메이플스토리 월드 메이커(Maker) 환경에서 제작 중인 월드를 불러오고, 변경 이력을 추적하는 리비전(Revision) 관리 기능, 그리고 월드 삭제 절차에 대해 설명합니다. ## 1. 개념 설명 ### 1.1 월드 불러오기 메이커는 사용자가 생성한 월드 목록을 관리하며, 기존에 제작 중이던 월드를 선택하여 편집 세션을 재개하는 기능을 제공합니다. 이는 프로젝트의 연속성을 유지하기 위한 기본 워크플로우입니다. ### 1.2 리비전(Revision) 관리 [original] | # 학습 과정 소개 제작한 월드를 불러오고 관리하는 방법을 알아봅니다. # 제작 중인 월드 불러오기 1. 메뉴에서 **[만들기]** 버튼을 클릭합니다. 2. 월드 목록에서 불러올 월드를 선택합니다. 3. 월드 정보에서 **[이어서 만들기]** 버튼을 클릭하면 제작 중인 월드를 불러옵니다. # 리비전 관리 월드를 제작할 때는 리비전을 기록하고 관리하는 과정이 필요합니다. 중요한 변경점이 발생했을 때마다 리비전을 기록해두면 필요한 순간에 예전 리비전으로 월드를 되돌릴 수 있어 안전합니다. [chunk_id] | Guides:213:0

[task] | wikipedia [title] | 엔티티의 생성과 삭제, 유효성 체크 [category] | Guides [rephrased] | # 심화: 엔티티의 생성과 삭제, 유효성 체크 ## 유효성 체크 (isvalid) 엔티티가 실제로 존재하고 사용 가능한 상태인지 확인하기 위해 `isvalid` 함수를 사용할 수 있습니다. 이 함수는 주로 엔티티를 삭제하기 전후로 참조 오류를 방지하거나, 삭제된 객체를 다시 참조하는 것을 막는 데 활용됩니다. ### 매개 변수 `isvalid` 함수는 유효성 검사 대상이 되는 `entity` 객체를 인수로 받아야 합니다. ### 반환 값 이 함수는 검사 결과를 부울 타입(`boolean`)으로 반환합니다. * 인수로 [original] | | Parameter | Description | | :--: | ----------- | | entity | 유효성 체크 대상이 되는 엔티티를 넣어줍니다. | #### 반환 값 * 매개 변수로 넘겨진 엔티티가 존재하면 **true**를 반환합니다. * 엔티티가 nil이거나 삭제 대기 중, 또는 삭제된 엔티티라면 **false**를 반환합니다. #### 사용 예시 위 `Destroy` 함수 예제에 이어서 엔티티 삭제 전후로 `isvalid` 함수가 어떤 값을 반환하는지 확인하고 실제 사용법을 살펴봅니다. 1. **Spawn [chunk_id] | Guides:290:3

[task] | distill [title] | Hierarchy [category] | Guides [rephrased] | # Hierarchy **Hierarchy** 탭은 게임 현황을 **계층 구조(부모-자식)**로 표시하는 패널입니다. 복잡한 맵에서 엔티티 탐색 및 체계적 관리를 위해 사용합니다. ## 기본 구조 가장 상위 **World** 아래에 기본 하위 엔트리가 존재합니다. | 이름 | 설명 | | :--- | :--- | | **World** | 제작에 사용된 모든 엔티티의 최상위 계층. `common`, `maps`, `ui`를 포함합니다. | | **common** | 게임 전체 룰 적용. 컴포넌트를 추가해 사용합니다. | | ** [original] | # 학습 과정 소개 **Hierarchy** 탭을 이용해 제작 현황을 확인하고, 제작 능률을 높일 수 있습니다. # Hierarchy 소개 **Hierarchy** 탭은 제작 중인 게임 현황을 **계층 구조(부모-자식)**로 볼 수 있는 패널입니다. 복잡하게 구성한 맵에서 원하는 엔티티를 빠르게 찾을 때 사용하거나, 체계적으로 엔티티를 관리할 때 사용합니다. 가장 상위인 **World** 계층 아래에 **common**, **maps**, **ui** 엔트리가 있으며 **maps**와 **ui** 엔트리는 각자 기본 하위 엔트 [chunk_id] | Guides:453:0

[task] | extract_knowledge [title] | 리소스 찾기 [category] | Guides [rephrased] | # 메이플스토리 월드 리소스 관리 (Resource Storage) 메이플스토리 월드에서는 방대한 양의 게임 자산(리소스)을 효율적으로 검색하고, 외부에서 가져온 파일을 관리하며, 리메이크(Remake) 시 발생할 수 있는 버전 충돌 문제를 해결하기 위해 `Resource Storage` 시스템을 제공합니다. 본 절에서는 `Resource Storage`의 구조, 폴더 기반 관리 규칙, 그리고 리소스 저장 위치에 따른 리메이크 영향 범위를 다룹니다. ## 1. 개념 및 UI 구성 `Preset List`는 미리 정해진 범위의 [original] | # 학습 과정 소개 방대한 리소스 속에서 크리에이터에게 필요한 리소스만 골라 활용할 수 있습니다. 또한 크리에이터가 제작한 리소스를 추가해 제작에 활용할 수도 있습니다. # 리소스 스토리지 소개 메이플스토리 월드에서는 많은 리소스를 **Preset List**로 제공하지만, 모든 리소스가 **Preset List**에 있는 것은 아닙니다. 보다 방대한 데이터에서 원하는 리소스를 검색할 때는 **Resource Storage**를 활용해 봅시다. **Resource Storage**의 기본 위치는 **Scene** 탭 옆입니다 [chunk_id] | Guides:211:0

← → 방향키로 페이지 이동 · 숫자 입력 후 Enter로 점프