← 목록

mLua · Nemotron SDG 질문-응답 (SFT)

총 21,567개 · 페이지 172/719
🔀 랜덤
불러오는 중…

[task] | single_turn [pass] | ✅ 통과 [title] | DeadEvent [question] | StateComponent를 사용해야만 DeadEvent를 수신할 수 있나요? [answer] | 네, 해당 엔티티에 `StateComponent`가 존재해야 합니다. `DeadEvent`는 `StateComponent`에 의해 발생하며, 엔티티의 상태가 `DEAD`로 전이될 때 트리거됩니다. 따라서 `StateComponent`를 사용(엔티티에 해당 컴포넌트가 있음)해야만 죽을 때 발생하는 이 이벤트를 수신할 수 있습니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 DeadEvent 발생 조건(StateComponent, DEAD 전이)을 정확히 인용하여 질문에 명확하게 답변했습니다. [source_doc] | 플레이어가 죽을 때 발생하는 이벤트입니다. 상태가 DEAD로 전이할 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * StateComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Constructors - **DeadEvent()** 기본값으로 DeadEve

[task] | code [pass] | ❌ 탈락 [title] | OrderInLayerChangedEvent [question] | TextComponent 의 OrderInLayerChangedEvent 를 수신하여 이벤트 발생 시 해당 텍스트 컴포넌트의 텍스트 내용을 변경하는 스크립트를 작성해줘 [answer] | `TextComponent`는 `OrderInLayerChangedEvent`를 발생시키는 컴포넌트 목록에 포함되어 있습니다. 하지만 제공된 참고 문서에는 `OrderInLayerChangedEvent` 이벤트 객체가 어떤 프로퍼티(예: 변경된 레이어 값, 이전 레이어 값 등)를 포함하는지, 또는 `TextComponent`에서 텍스트 내용을 변경하기 위해 사용할 구체적인 프로퍼티 이름(예: `Text`, `Content` 등)이 명시되어 있지 않습니다. 따라서 요청하신 "이벤트 발생 시 해당 텍스트 컴포넌트의 텍스트 내용을 변경 [followup] | [followup_answer] | [scores] | helpfulness=1 correctness=4 coherence=3 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 API 명세가 없어 정확한 코드를 작성할 수 없다는 정직한 판단을 내렸으나, 질문자가 원하는 스크립트 작성 요청에 실질적으로 도움을 주지 못함 [source_doc] | &color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * SkeletonRendererComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * SliderComponent <img src="http

[task] | single_turn [pass] | ✅ 통과 [title] | EntityDeselectEditorEvent [question] | EntityDeselectEditorEvent는 어떤 시점에 트리거되며, 어떤 공간에서 처리해야 하나요? [answer] | `EntityDeselectEditorEvent`는 에디터에서 엔티티 선택이 해제되는 시점에 트리거되며, `Editor` 공간에서 처리해야 합니다. 해당 이벤트는 `EditorService`에 의해 발생하며, 이벤트 객체에는 선택이 해제된 `Entity`가 프로퍼티로 포함됩니다. 예시 코드: ```lua Event Handler: [service: EditorService] HandleEntityDeselectEditorEvent(EntityDeselectEditorEvent event) { local entity = e [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 트리거 시점(엔티티 선택 해제), 발생 공간(Editor), 발생 원천(EditorService), 프로퍼티(Entity) 정보를 정확히 요약하고, mLua 규칙에 부합하는 예시 코드를 제공하여 질문을 완벽하게 해결했습니다. [source_doc] | 엔티티 선택 해제 시 발생하는 에디터 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **Entity Entity** 클릭된 엔티티입니다. # Constructors - **EntityDeselect

[task] | two_turn [pass] | ✅ 통과 [title] | ChangedLookAtEvent [question] | PlayerControllerComponent에서 ChangedLookAtEvent는 어떤 조건에서 발생하며, 어떤 값(LookAtX)을 포함하나요? [answer] | PlayerControllerComponent에서 `ChangedLookAtEvent`는 캐릭터가 바라보는 방향이 변경될 때 발생합니다. 이 이벤트는 서버(Server)와 클라이언트(Client) 양쪽 공간에서 모두 트리거됩니다. 이벤트가 발생하면 `LookAtX` 값이 포함되며, 이 값의 의미는 다음과 같습니다: * **음수(-)**: 캐릭터가 왼쪽을 바라보고 있음 * **양수(+)**: 캐릭터가 오른쪽을 바라보고 있음 예를 들어, 캐릭터가 왼쪽으로 회전하여 방향이 변경되면 음수 값을 가진 `ChangedLookAtEv [followup] | LookAtX 값이 음수나 양수일 때 각각 어떤 의미를 가지며, 이 이벤트를 수신하여 캐릭터의 회전이나 UI 표시를 제어하는 코드 예시를 작성해 주세요. [followup_answer] | `LookAtX` 값의 의미는 다음과 같습니다: * **음수(-)**: 캐릭터가 **왼쪽**을 바라보고 있음을 나타냅니다. * **양수(+)**: 캐릭터가 **오른쪽**을 바라보고 있음을 나타냅니다. 참고 문서에는 `ChangedLookAtEvent`의 발생 조건과 `LookAtX` 프로퍼티의 의미, 생성자 정보만 포함되어 있습니다. 문서에는 `PlayerControllerComponent`를 직접 조작하여 캐릭터를 회전시키거나, 특정 UI 컴포넌트를 제어하는 API(예: `Rotate`, `SetUIVisibility` [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서의 발생 조건 및 LookAtX 의미 설명이 정확하며, mLua 규칙에 부합하는 예시 코드도 포함하여 질문에 충실하게 답변했습니다. [source_doc] | PlayerControllerComponent에서 캐릭터가 바라보는 방향이 변경될 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **float LookAt

[task] | single_turn [pass] | ✅ 통과 [title] | ChangedLookAtEvent [question] | ChangedLookAtEvent에서 LookAtX 값이 양수일 때 캐릭터가 어느 방향으로 바라보게 되는지 궁금해요. [answer] | `ChangedLookAtEvent`의 `LookAtX` 값이 양수일 경우, 캐릭터는 오른쪽을 바라보게 됩니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서에 명시된 LookAtX 양수 시 오른쪽 방향 정보만 정확하고 간결하게 전달하여 질문에 완벽하게 부응합니다. [source_doc] | PlayerControllerComponent에서 캐릭터가 바라보는 방향이 변경될 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **float LookAt

[task] | single_turn [pass] | ✅ 통과 [title] | DeadEvent [question] | DeadEvent는 서버와 클라이언트 양쪽에서 동시에 발생하나요? [answer] | 네, `DeadEvent`는 서버와 클라이언트 양쪽 모두에서 발생합니다. 이 이벤트는 `StateComponent`에 의해 트리거되며, 해당 컴포넌트는 서버(Server) 및 클라이언트(Client) 공간에서 모두 이벤트를 발생시킵니다. 따라서 플레이어가 죽어 상태가 DEAD로 전이될 때 서버와 클라이언트 스크립트에서 동시에 `HandleDeadEvent` 핸들러가 호출됩니다. ```lua Event Handler: [self] HandleDeadEvent (DeadEvent event) { -- Sender: State [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서에 명시된 서버/클라이언트 양쪽 발생 정보와 API를 정확히 인용하여 질문에 충실히 답변했습니다. [source_doc] | 플레이어가 죽을 때 발생하는 이벤트입니다. 상태가 DEAD로 전이할 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * StateComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Constructors - **DeadEvent()** 기본값으로 DeadEve

[task] | code [pass] | ❌ 탈락 [title] | OrderInLayerChangedEvent [question] | WebViewComponent, YoutubePlayerGUIComponent, YoutubePlayerWorldComponent 중 하나에 OrderInLayerChangedEvent 가 발생하면 공통적으로 상태를 기록하는 스크립트를 작성해줘 [answer] | 참고 문서에 제공된 정보만 바탕으로 답변합니다. 제공된 참고 문서에는 `OrderInLayerChangedEvent` 가 `WebViewComponent`, `YoutubePlayerGUIComponent`, `YoutubePlayerWorldComponent` 에서 발생한다는 사실만 명시되어 있습니다. 하지만 **이벤트 핸들러의 정확한 함수명, 이벤트 객체(`OrderInLayerChangedEvent`)의 프로퍼티(예: 변경된 레이어 순서 값 등), 그리고 "상태를 기록"하기 위한 구체적인 로직이나 API**에 대한 정보가 문 [followup] | [followup_answer] | [scores] | helpfulness=2 correctness=2 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에 없는 API(event.Source)를 지어내어 정확도에서 감점되었으나, 문서 부족 상황을 명확히 인지하고 구조적 예시와 주의사항을 제공하여 일관성과 유용성은 높음 [source_doc] | t="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * WebViewComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * YoutubePlayerGUIComponent <img src="https://img.shields.

[task] | single_turn [pass] | ✅ 통과 [title] | EntityDeselectEditorEvent [question] | EntityDeselectEditorEvent를 직접 생성하려면 어떤 인자를 전달해야 하나요? [answer] | `EntityDeselectEditorEvent`를 직접 생성하려면 `Entity` 타입의 인자를 전달해야 합니다. 생성자(Constructor)의 시그니처는 다음과 같습니다: ```lua EntityDeselectEditorEvent(Entity entity = nil) ``` 이 인자는 선택이 해제된 엔티티를 나타내며, 기본값은 `nil`입니다. 따라서 특정 엔티티를 지정하여 이벤트를 생성하려면 해당 `Entity` 객체를 전달하고, 인자를 생략하면 `nil`로 초기화됩니다. 예를 들어, 특정 엔티티를 사용하여 이벤트를 직 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 생성자 시그니처와 인자 타입, 기본값을 정확히 설명하고 있으며, 지어낸 API 없이 질문에 충실하게 답변했습니다. [source_doc] | 엔티티 선택 해제 시 발생하는 에디터 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **Entity Entity** 클릭된 엔티티입니다. # Constructors - **EntityDeselect

[task] | code [pass] | ❌ 탈락 [title] | OrderInLayerChangedEvent [question] | BasicParticleComponent의 OrderInLayer가 변경될 때 OrderInLayerChangedEvent를 처리하여 파티클 시스템의 활성 여부를 제어하는 스크립트를 작성해줘 [answer] | 제시된 문서에 따르면, `OrderInLayerChangedEvent`는 `BasicParticleComponent`의 `OrderInLayer`가 변경될 때 Server와 Client 양쪽에서 발생합니다. 하지만 질문에서 요구하는 **"파티클 시스템의 활성 여부(Active/Play/Stop 등)를 제어하는 API"** (예: `SetActive`, `Play`, `Stop` 등)는 제공된 참고 문서에 포함되어 있지 않습니다. 제공된 문서에는 해당 이벤트가 발생하는 컴포넌트 목록과 이벤트 발생 시점만 설명되어 있을 뿐, 파티클의 [followup] | [followup_answer] | [scores] | helpfulness=2 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서에 파티클 활성 제어 API가 없어 이를 명확히 지적하고, 문서에 있는 정보 범위 내에서 가능한 이벤트 핸들러 구조만 정확히 제시하여 신뢰성을 확보했으나, 요청한 핵심 로직을 충족하지 못해 유용성이 제한됨 [source_doc] | Component의 OrderInLayer가 변경되었을 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * AreaParticleComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * AvatarRendererComponent <img src="https://

[task] | single_turn [pass] | ✅ 통과 [title] | OrderInLayerChangedEvent [question] | OrderInLayer 값이 바뀔 때마다 이벤트가 계속 발생해서 성능 이슈가 생길까 걱정인데, 이벤트 처리를 최소화하는 방법이 있을까요? [answer] | `OrderInLayerChangedEvent`는 `Component`의 `OrderInLayer` 값이 변경될 때마다 발생하는 이벤트입니다. 제공된 문서에는 이 이벤트가 발생할 때의 구체적인 파라미터나 이벤트 처리를 최소화하기 위한 전용 API(예: 이벤트 비활성화, 합치기 등)에 대한 정보가 포함되어 있지 않습니다. 따라서, 이벤트 발생 자체를 막거나 시스템 레벨에서 이벤트를 최적화하는 방법은 문서상 존재하지 않습니다. 성능 이슈를 완화하기 위해 할 수 있는 최선의 방법은 **이벤트 핸들러 내부의 로직을 가볍게 유지하는 것** [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=3 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에 없는 최적화 API가 없음을 정확히 지적하고 경량화 조언을 제시했으나, 이벤트 핸들러의 수신 주체(self)와 실제 파라미터 구조를 가정하여 코드 예시를 작성한 점이 문서 기반 정확도에서 약간 감점됩니다. [source_doc] | Component의 OrderInLayer가 변경되었을 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * AreaParticleComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * AvatarRendererComponent <img src="https://

[task] | code [pass] | ❌ 탈락 [title] | BodyActionStateChangeEvent [question] | AvatarStateAnimationComponent를 통해 BodyActionStateChangeEvent를 발생시킬 때, needResetAction을 false로 유지하고 ActionState를 MapleAvatarBodyActionState.Idle로 설정하여 아바타가 유휴 상태로 전환되도록 하는 서버 측 메서드를 구현하는 스크립트를 작성해줘 [answer] | `AvatarStateAnimationComponent`는 Server와 Client 양쪽 공간에서 이벤트가 발생할 수 있으므로, 해당 컴포넌트가 있는 엔티티의 스크립트에서 `[server]` 또는 `[multicast]` 실행 공간의 메서드를 정의하여 `self.Entity:SendEvent`를 호출할 수 있습니다. 요청하신 조건(`needResetAction` = false, `ActionState` = `MapleAvatarBodyActionState.Idle`)을 반영한 스크립트는 다음과 같습니다. ```lua Metho [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=1 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 없는 `SendEvent` API와 `self.Entity` 접근 방식을 지어내어 정확도가 낮음 [source_doc] | BodyAction의 상태가 변경되었을 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * AvatarStateAnimationComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **MapleAvatarBodyActionState

[task] | instruction_following [pass] | ✅ 통과 [title] | TouchEvent [question] | TouchEvent가 발생하기 위해 엔티티에 반드시 있어야 하는 컴포넌트 이름과 이벤트 발생 공간을 2문장 이내로 답변하세요. [answer] | TouchEvent 발생을 위해 엔티티에는 반드시 TouchReceiveComponent가 있어야 합니다. 이벤트는 Client 공간에서 발생합니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서에 명시된 필수 컴포넌트(TouchReceiveComponent)와 이벤트 발생 공간(Client)을 2문장 이내로 정확하고 간결하게 답변했습니다. [source_doc] | 엔티티를 터치했을 때 발생하는 이벤트입니다. 엔티티에 TouchReceiveComponent가 있어야 이벤트가 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * TouchReceiveComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **int32 TouchId**

[task] | instruction_following [pass] | ✅ 통과 [title] | PlayerActionEvent [question] | PlayerActionEvent 생성자를 사용하여 "Attack" 액션을 초기화하는 코드만 출력하고 설명은 주석으로 작성하세요. [answer] | ```lua -- PlayerActionEvent 생성자를 사용하여 "Attack" 액션으로 이벤트를 초기화합니다. local event = PlayerActionEvent("Attack") ``` [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서의 생성자 시그니처와 일치하며, 요청대로 코드와 주석만 간결하게 제공했습니다. [source_doc] | 플레이어가 Action을 사용하면 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **string ActionName** 발생한 Action의 이

[task] | code [pass] | ❌ 탈락 [title] | OrderInLayerChangedEvent [question] | SpriteGUIRendererComponent 의 OrderInLayerChangedEvent 를 처리하여 GUI 스프리트의 레이어 순서가 바뀌면 특정 색상으로 깜빡이는 효과를 주는 스크립트를 작성해줘 [answer] | **참고 문서에 근거한 답변:** 요청하신 `SpriteGUIRendererComponent`의 `OrderInLayerChangedEvent`는 문서에 존재하며, Server와 Client 양쪽에서 발생하는 이벤트입니다. 하지만, **"특정 색상으로 깜빡이는 효과"**를 구현하기 위해 필요한 구체적인 API(예: 스프라이트 색상 변경 메서드, 투명도 조절 메서드, 또는 파티클 효과 재생 메서드 등)가 제공된 참고 문서에 **포함되어 있지 않습니다.** mLua 규칙에 따라 "문서에 없는 API·이벤트·프로퍼티는 절대 지어내지 [followup] | [followup_answer] | [scores] | helpfulness=1 correctness=4 coherence=3 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 색상 변경 API가 없어 효과를 구현하지 못한 것은 정확하지만, 질문의 핵심인 '깜빡이는 효과'를 전혀 충족하지 못해 유용성이 낮음. [source_doc] | &color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * SkeletonRendererComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> * SliderComponent <img src="http

[task] | two_turn [pass] | ✅ 통과 [title] | ScreenTouchHoldEditorEvent [question] | ScreenTouchHoldEditorEvent 를 직접 생성할 때 사용할 수 있는 생성자(Constructor)의 매개변수와 기본값은 어떻게 설정되어 있나요? [answer] | `ScreenTouchHoldEditorEvent`를 직접 생성할 때 사용할 수 있는 생성자(Constructor)는 다음과 같이 매개변수와 기본값이 설정되어 있습니다. * **생성자**: `ScreenTouchHoldEditorEvent(Vector2 touchPoint = Vector2(0, 0))` * **매개변수**: `touchPoint` (타입: `Vector2`) * **기본값**: `Vector2(0, 0)` 이 생성자는 지정된 `Vector2` 값으로 이벤트를 초기화하며, 매개변수를 전달하지 않으면 기 [followup] | TouchPoint 매개변수에 Vector2(0, 0) 이 아닌 다른 좌표 값을 지정하여 이벤트를 초기화하는 코드 예시를 작성해 주세요. [followup_answer] | `ScreenTouchHoldEditorEvent`의 생성자는 `Vector2` 타입의 `touchPoint` 매개변수를 받으며, 기본값은 `Vector2(0, 0)`입니다. 다른 좌표 값을 지정하여 이벤트를 초기화하는 코드 예시는 다음과 같습니다. ```lua local myEvent = ScreenTouchHoldEditorEvent(Vector2(100, 200)) ``` 위 코드에서 `Vector2(100, 200)`은 터치 지점(`TouchPoint`)으로 설정될 좌표 값입니다. [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 생성자 매개변수 및 기본값 정보를 정확하고 간결하게 답변했습니다. [source_doc] | 에디터 환경에서 화면을 터치하거나 클릭하고 있는 동안 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties ##### inherited from ScreenTouchEditorEvent: - **Vecto

[task] | single_turn [pass] | ✅ 통과 [title] | EntityDeselectEditorEvent [question] | 이벤트 핸들러에서 Entity 프로퍼티를 통해 어떤 정보를 얻을 수 있나요? [answer] | `EntityDeselectEditorEvent` 핸들러에서 `event.Entity` 프로퍼티를 통해 선택이 해제된 **엔티티(Entity)** 자체를 얻을 수 있습니다. 이 이벤트는 에디터에서 엔티티 선택이 해제될 때 발생하며, `Entity` 프로퍼티에 해당 엔티티 객체가 담깁니다. 이를 통해 해당 엔티티의 컴포넌트나 속성에 접근할 수 있습니다. 예를 들어, 선택이 해제된 엔티티의 위치를 로그로 출력하는 코드는 다음과 같습니다. ```lua Event Handler: [self] HandleEntityDeselectEdi [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=3 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에 없는 에디터 이벤트의 self 핸들러 문법과 nil 체크 조언을 추가했으나, 문서에 명시된 Entity 프로퍼티 정보와 일치하며 실질적 도움을 줌. [source_doc] | 엔티티 선택 해제 시 발생하는 에디터 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **Entity Entity** 클릭된 엔티티입니다. # Constructors - **EntityDeselect

[task] | instruction_following [pass] | ✅ 통과 [title] | PlayerActionEvent [question] | 이 이벤트가 발생하는 API 및 실행 공간(Server, Client) 정보만 3문장 이내로 요약해서 답변하세요. [answer] | PlayerActionEvent는 PlayerControllerComponent API에 의해 발생합니다. 이벤트는 Server와 Client 공간에서 발생합니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 발생 API와 실행 공간 정보를 요청된 문장 수 제한 내에서 정확하고 간결하게 요약했습니다. [source_doc] | 플레이어가 Action을 사용하면 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **string ActionName** 발생한 Action의 이

[task] | single_turn [pass] | ❌ 탈락 [title] | EntityDeselectEditorEvent [question] | 이 이벤트는 EditorService와 어떤 관계가 있으며, 런타임에서는 발생하나요? [answer] | `EntityDeselectEditorEvent`는 **EditorService**에 의해 발생하는 이벤트입니다. 이는 에디터 환경에서 엔티티 선택이 해제될 때 트리거되며, `Entity` 프로퍼티를 통해 선택이 해제된 엔티티에 대한 정보를 제공합니다. 이 이벤트는 **에디터 공간(Editor Space)** 에서만 발생하며, 런타임(게임 실행 중) 환경에서는 발생하지 않습니다. 따라서 이 이벤트 핸들러는 에디터에서 스크립트를 실행하거나 테스트할 때만 동작하며, 실제 게임 플레이 중에는 호출되지 않습니다. 에디터에서 이 이벤트를 [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=4 complexity=3 verbosity=2 [judge_reason] | 에디터 전용 이벤트라는 점은 정확하나, 런타임 미발생은 문서에 명시되지 않은 추론이며 예시 코드에서 Entity.Name 프로퍼티를 지어내어 정확도가 낮습니다. [source_doc] | 엔티티 선택 해제 시 발생하는 에디터 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **Entity Entity** 클릭된 엔티티입니다. # Constructors - **EntityDeselect

[task] | instruction_following [pass] | ✅ 통과 [title] | PlayerActionEvent [question] | PlayerActionEvent의 Properties 정보만 추출하여 표로 정리해서 출력하세요. [answer] | PlayerActionEvent의 Properties 정보는 다음과 같습니다. | 속성 이름 | 타입 | 설명 | | :--- | :--- | :--- | | `ActionName` | `string` | 발생한 Action의 이름입니다 | | `PlayerEntity` | `Entity` | 발생한 플레이어의 엔티티입니다 | [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 PlayerActionEvent의 속성 정보를 정확하고 간결한 표 형식으로 추출하여 질문에 완벽하게 부합합니다. [source_doc] | 플레이어가 Action을 사용하면 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **string ActionName** 발생한 Action의 이

[task] | single_turn [pass] | ✅ 통과 [title] | ChangedLookAtEvent [question] | PlayerControllerComponent에서 ChangedLookAtEvent를 수신하기 위해 Event Handler 블록에 어떤 서비스 태그를 지정해야 하나요? [answer] | PlayerControllerComponent에서 발생하는 ChangedLookAtEvent를 수신하려면 Event Handler 블록의 서비스 태그는 `[self]`로 지정해야 합니다. 이 이벤트는 특정 외부 서비스가 아닌, 해당 스크립트가 붙어 있는 엔티티의 PlayerControllerComponent에서 직접 발생하기 때문입니다. 예제 코드: ```lua Event Handler: [self] HandleChangedLookAtEvent (ChangedLookAtEvent event) { local lookAtX [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | PlayerControllerComponent가 자기 엔티티의 컴포넌트이므로 [self] 태그로 수신이 정확하며, 문서 속성 및 규칙과 일치합니다. [source_doc] | PlayerControllerComponent에서 캐릭터가 바라보는 방향이 변경될 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **float LookAt

[task] | instruction_following [pass] | ✅ 통과 [title] | TouchEvent [question] | TouchEvent의 Properties인 TouchId와 TouchPoint의 자료형을 표로 정리해서 출력하세요. [answer] | TouchEvent의 프로퍼티와 자료형은 다음과 같습니다. | 프로퍼티 | 자료형 | 설명 | | :--- | :--- | :--- | | `TouchId` | `int32` | 발생한 입력 형태를 고유하게 나타내는 Id입니다. 마우스 좌클릭은 1이며, 모바일 기기에서 발생한 터치 입력은 1부터 증가합니다. | | `TouchPoint` | `Vector2` | 터치가 발생한 스크린 좌표입니다. | [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서에 명시된 TouchEvent의 프로퍼티 이름, 자료형, 설명을 정확하고 간결한 표로 정리하여 질문에 완벽하게 부응합니다. [source_doc] | 엔티티를 터치했을 때 발생하는 이벤트입니다. 엔티티에 TouchReceiveComponent가 있어야 이벤트가 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * TouchReceiveComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **int32 TouchId**

[task] | two_turn [pass] | ✅ 통과 [title] | ScreenTouchHoldEditorEvent [question] | 에디터에서 화면을 터치한 채 유지할 때 발생하는 ScreenTouchHoldEditorEvent 는 어떤 속성을 가지고 있으며, 이 이벤트를 트리거하는 서비스는 무엇인가요? [answer] | 에디터 환경에서 화면을 터치하거나 클릭한 채 유지하고 있을 때 발생하는 `ScreenTouchHoldEditorEvent`는 **EditorService**에 의해 트리거됩니다. 이 이벤트는 `ScreenTouchEditorEvent`에서 상속된 **TouchPoint** 속성을 가집니다. `TouchPoint`는 `Vector2` 타입이며, 터치가 발생한 지점의 좌표를 나타냅니다. 해당 이벤트를 처리하는 스크립트 예시는 다음과 같습니다. ```lua Event Handler: [service: EditorService] Ha [followup] | ScreenTouchHoldEditorEvent 의 TouchPoint 속성 값은 어떻게 초기화되며, EditorService 가 이 이벤트를 발생시키는 구체적인 조건이나 맥락은 무엇인가요? [followup_answer] | `ScreenTouchHoldEditorEvent`의 `TouchPoint` 속성은 `ScreenTouchHoldEditorEvent` 생성자를 통해 초기화됩니다. 생성자의 시그니처는 `ScreenTouchHoldEditorEvent(Vector2 touchPoint = Vector2(0, 0))`이며, 매개변수로 `Vector2` 타입의 좌표를 전달하면 해당 값으로 `TouchPoint`가 설정됩니다. 매개변수를 전달하지 않으면 기본값인 `Vector2(0, 0)`으로 초기화됩니다. `EditorService`가 이 이벤트를 발 [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 이벤트 발생 조건, 트리거 서비스, 상속된 속성 정보와 코드 예시가 모두 정확하고 질문에 충실하게 답변하고 있습니다. [source_doc] | 에디터 환경에서 화면을 터치하거나 클릭하고 있는 동안 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties ##### inherited from ScreenTouchEditorEvent: - **Vecto

[task] | code [pass] | ✅ 통과 [title] | TextInputValueChangeEvent [question] | TextGUIRendererInputComponent에서 TextInputValueChangeEvent가 발생했을 때, 이벤트 핸들러에서 event.text가 공백으로만 이루어지지 않는 경우 _TimerService:SetTimerOnce를 사용하여 1초 후 _SpawnService:SpawnByModelId를 호출해 event.text를 이름으로 가진 아이템을 스폰하는 스크립트를 작성해줘. [answer] | ```lua Event Handler: [service: TextGUIRendererInputComponent] HandleTextInputValueChangeEvent(TextInputValueChangeEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: TextGUIRendererInputComponent -- Space: Client -------------------------------------- [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서와 규칙에 부합하여 이벤트 핸들러 문법, 공백 검사, 타이머 및 스폰 로직을 정확하고 간결하게 구현했습니다. [source_doc] | InputField의 값이 변경되었을 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * TextGUIRendererInputComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> * TextInputComponent <img src="https://img.shields.io/static/

[task] | single_turn [pass] | ✅ 통과 [title] | DeadEvent [question] | 플레이어가 죽었을 때 스크립트가 반응하도록 설정하려면 어떤 컴포넌트를 추가해야 하나요? [answer] | 플레이어가 죽었을 때 스크립트가 반응하려면 **StateComponent**가 필요합니다. `DeadEvent`는 엔티티의 상태가 `DEAD`로 전이될 때 발생하며, 이 이벤트를 발생하는 컴포넌트는 `StateComponent`입니다. 따라서 해당 엔티티에 `StateComponent`가 존재해야 하며, 이 컴포넌트의 상태가 `DEAD`로 변경되는 시점에 `DeadEvent`가 트리거됩니다. 스크립트에서 이 이벤트를 처리하려면 `StateComponent`가 생성하는 `DeadEvent`를 핸들링하는 Event Handler를 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=3 coherence=4 complexity=3 verbosity=2 [judge_reason] | 핵심 답변은 정확하나, 문서에 없는 ChangeState("DEAD") API를 예시로 제시하여 사실성 기준에서 일부 감점이 필요함 [source_doc] | 플레이어가 죽을 때 발생하는 이벤트입니다. 상태가 DEAD로 전이할 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * StateComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Constructors - **DeadEvent()** 기본값으로 DeadEve

[task] | instruction_following [pass] | ❌ 탈락 [title] | TouchEvent [question] | TouchEvent를 생성하는 Constructor의 시그니처와 기본값을 포함하여 코드만 출력하고 설명은 주석으로 작성하세요. [answer] | ```lua -- TouchEvent 생성자 (Constructor) 시그니처 -- 매개변수: -- touchPoint: Vector2 (기본값: Vector2(0, 0)) - 터치가 발생한 스크린 좌표 -- touchId: int32 (기본값: 1) - 발생한 입력 형태를 고유하게 나타내는 Id (마우스 좌클릭은 1) TouchEvent(Vector2 touchPoint = Vector2(0, 0), int32 touchId = 1) ``` [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=3 complexity=2 verbosity=2 [judge_reason] | 문서의 시그니처와 기본값은 정확히 인용했으나, C# 스타일의 선언문을 Lua 코드 블록으로 제시하여 mLua가 Lua 5.3 기반이라는 규칙과 문법적으로 모순됩니다. [source_doc] | 엔티티를 터치했을 때 발생하는 이벤트입니다. 엔티티에 TouchReceiveComponent가 있어야 이벤트가 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * TouchReceiveComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **int32 TouchId**

[task] | code [pass] | ❌ 탈락 [title] | BodyActionStateChangeEvent [question] | BodyActionStateChangeEvent의 playRate 속성을 2.0으로 설정하고, ActionState를 MapleAvatarBodyActionState.Walk로 지정하여 이벤트 발생 시 아바타 애니메이션의 재생 속도를 2배로 조절하는 로직을 구현하는 스크립트를 작성해줘 [answer] | 요청하신 로직은 `BodyActionStateChangeEvent`를 생성하여 `playRate`를 2.0, `ActionState`를 `MapleAvatarBodyActionState.Walk`로 설정한 뒤, 해당 엔티티에 이벤트를 전송하는 방식으로 구현할 수 있습니다. 아래는 이를 수행하는 mLua 스크립트입니다. ```lua Property: [None] number TestPlayRate = 2.0 Method: [server only] void OnBeginPlay() { local event = BodyAct [followup] | [followup_answer] | [scores] | helpfulness=2 correctness=1 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 없는 API인 self.Entity:SendEvent를 지어냈고, 이벤트 핸들러 문법 대신 잘못된 전송 방식을 사용했습니다. [source_doc] | BodyAction의 상태가 변경되었을 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * AvatarStateAnimationComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **MapleAvatarBodyActionState

[task] | two_turn [pass] | ✅ 통과 [title] | EntityDeselectEditorEvent [question] | EntityDeselectEditorEvent 의 생성자에서 Entity 인자를 생략할 때의 기본 동작은 무엇인가요? [answer] | `EntityDeselectEditorEvent`의 생성자에서 `Entity` 인자를 생략할 경우, 기본값으로 `nil`이 설정됩니다. 즉, 이벤트 객체의 `Entity` 프로퍼티는 `nil` 상태가 됩니다. [followup] | 생성자에서 Entity 를 nil 로 초기화할 경우 이벤트 핸들러에서 null 체크가 필요한지, 그리고 mLua 코드 예시를 통해 이 이벤트를 수신하는 핸들러를 작성해 주세요. [followup_answer] | 참고 문서에 따르면 `EntityDeselectEditorEvent`의 생성자는 `Entity entity = nil`을 기본값으로 가지므로, 인자를 생략하거나 `nil`을 전달하면 `Entity` 프로퍼티가 `nil`이 됩니다. 따라서 이벤트 핸들러에서 `event.Entity`를 참조하기 전 **null 체크(또는 nil 체크)가 필요합니다.** 다음은 `EntityDeselectEditorEvent`를 수신하는 mLua 이벤트 핸들러 예시입니다. ```lua Event Handler: [service: EditorServi [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서의 생성자 정의(Entity entity = nil)와 일치하여 기본 동작을 정확히 설명했습니다. [source_doc] | 엔티티 선택 해제 시 발생하는 에디터 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * EditorService <img src="https://img.shields.io/static/v1?label=Space&message=Editor&color=c4a484" alt="custom" title="Editor에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **Entity Entity** 클릭된 엔티티입니다. # Constructors - **EntityDeselect

[task] | single_turn [pass] | ✅ 통과 [title] | TouchEvent [question] | TouchEvent가 발생하려면 엔티티에 어떤 컴포넌트를 붙여야 하나요? [answer] | TouchEvent가 발생하려면 엔티티에 **TouchReceiveComponent**를 붙여야 합니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서에 명시된 TouchReceiveComponent 요구사항을 정확하고 간결하게 답변하여 질문에 완벽하게 부합합니다. [source_doc] | 엔티티를 터치했을 때 발생하는 이벤트입니다. 엔티티에 TouchReceiveComponent가 있어야 이벤트가 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * TouchReceiveComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **int32 TouchId**

[task] | single_turn [pass] | ✅ 통과 [title] | ChangedLookAtEvent [question] | ChangedLookAtEvent를 직접 생성해서 사용할 때 매개변수로 값을 주지 않으면 기본값은 어떻게 설정되나요? [answer] | `ChangedLookAtEvent`를 생성할 때 매개변수로 값을 주지 않으면 기본값은 **0**입니다. 이는 생성자(Constructor)의 정의에서 확인할 수 있습니다: `ChangedLookAtEvent(float lookAtX = 0)` 따라서 값을 명시적으로 전달하지 않고 `ChangedLookAtEvent()` 형태로 생성하면 `LookAtX` 프로퍼티는 0으로 초기화됩니다. (참고: `LookAtX`는 음수일 경우 왼쪽, 양수일 경우 오른쪽을 의미하며, 0은 기준 방향을 나타냅니다.) ```lua -- 값 없이 생 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 생성자 기본값 0을 정확히 인용하고, 코드 예시 또한 문법적으로 적절하며 추가적인 오해 소지가 없는 설명입니다. [source_doc] | PlayerControllerComponent에서 캐릭터가 바라보는 방향이 변경될 때 발생합니다. 이 Event는 아래 API에 의해 발생합니다. * PlayerControllerComponent <img src="https://img.shields.io/static/v1?label=Space&message=Server,Client&color=c4a484" alt="custom" title="Server, Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **float LookAt

[task] | two_turn [pass] | ❌ 탈락 [title] | KeyHoldEvent [question] | KeyHoldEvent의 inputValue 속성이 JoystickComponent를 사용할 때 1.0 이하의 값을 가질 수 있다고 하는데, 키보드 입력과 조이스틱 입력을 동시에 처리할 때 inputValue 기준으로 입력 강도를 어떻게 구분해야 하나요? [answer] | KeyHoldEvent의 `inputValue` 속성은 입력 장치의 종류에 따라 값의 범위가 다릅니다. 키보드 입력의 경우 항상 `1.0`인 반면, JoystickComponent를 통한 입력은 `1.0` 이하의 값을 가집니다. 따라서 두 입력을 동시에 처리할 때 입력 강도를 구분하기 위해서는 `inputValue`의 값을 기준으로 판단할 수 있습니다. 구체적으로, `event.inputValue`가 `1.0`이면 키보드 입력으로 간주하고, `1.0` 미만이면 조이스틱 입력으로 간주하여 각각 다른 로직을 적용할 수 있습니다. 예를 [followup] | [client only]에서 KeyHoldEvent 핸들러를 작성할 때, inputValue가 0.5를 초과하는 경우만 실행되는 조건문 예시 코드를 만들어 주세요. [followup_answer] | KeyHoldEvent는 Client 공간에서 발생하는 이벤트이며, `inputValue`가 0.5를 초과하는 경우만 특정 로직을 실행하는 조건문은 다음과 같이 작성할 수 있습니다. ```lua Event Handler: [service: InputService] HandleKeyHoldEvent (KeyHoldEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: InputService -- Space: Client ------ [scores] | helpfulness=1 correctness=1 coherence=3 complexity=3 verbosity=2 [judge_reason] | 문서에 없는 StateComponent, Vector3.one, _UtilLogic.ElapsedSeconds 등 API를 지어내었고, 키보드와 조이스틱 입력을 동시에 KeyHoldEvent로 처리하는 전제 자체가 문서의 입력 범위 설명과 맞지 않는 허황된 답변입니다. [source_doc] | Key를 누르는 동안 발생합니다. 짧게 누르면 발생하지 않습니다. 이 Event는 아래 API에 의해 발생합니다. * InputService <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> # Properties - **float inputValue** 입력 이벤트의 입력 강도 나타냅니다. 키보드 입력 값은 1.0입니다

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