← 목록

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

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

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | TweenFloatingComponent 예제에서 사용된 EaseType 상수 값을 코드 블록 안에만 출력하세요. [answer] | ```lua EaseType.QuadEaseInOut ``` [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 질문한 EaseType 상수 값을 참고 문서에 명시된 그대로 코드 블록 안에만 정확히 출력했습니다. [source_doc] | Entity가 부유하는 듯한 효과를 주는 예제입니다. ```lua local tween = self.Entity.TweenFloatingComponent -- 이동 거리 0.1 tween.Amplitude = 0.1 -- 주기 1초 tween.OneCycleTime = 1 -- 서서히 느려지다가 다시 빨라지는 효과 tween.TweenType = EaseType.QuadEaseInOut ``` # SeeAlso * EaseType

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | TweenFloatingComponent의 Amplitude, OneCycleTime, TweenType 속성을 설정하는 코드만 출력하고 설명은 주석으로 작성하세요. [answer] | ```lua local tween = self.Entity.TweenFloatingComponent -- 이동 거리 0.1 tween.Amplitude = 0.1 -- 주기 1초 tween.OneCycleTime = 1 -- 서서히 느려지다가 다시 빨라지는 효과 tween.TweenType = EaseType.QuadEaseInOut ``` [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 코드와 주석을 정확히 재현하여 질문에 완벽하게 부합하며, 추가 설명 없이 주석으로만 설명한 요구사항도 잘 따랐습니다. [source_doc] | Entity가 부유하는 듯한 효과를 주는 예제입니다. ```lua local tween = self.Entity.TweenFloatingComponent -- 이동 거리 0.1 tween.Amplitude = 0.1 -- 주기 1초 tween.OneCycleTime = 1 -- 서서히 느려지다가 다시 빨라지는 효과 tween.TweenType = EaseType.QuadEaseInOut ``` # SeeAlso * EaseType

[task] | single_turn [pass] | ✅ 통과 [title] | TileMapComponent [question] | OrderInLayer가 [Sync] 속성이기 때문에 서버에서 변경하면 클라이언트에도 바로 반영되나요? [answer] | 네, `OrderInLayer`는 `[Sync]` 속성이므로 서버에서 값을 변경하면 클라이언트에도 동기화됩니다. 참고로 `OrderInLayer`가 변경되면 `OrderInLayerChangedEvent`가 발생하며, 같은 레이어(Layer) 내에서 값이 클수록 앞에 보이도록 우선순위가 결정됩니다. ```lua Property: [Sync] int32 OrderInLayer = 0 Method: [server only] void OnBeginPlay () { -- 서버에서 OrderInLayer를 변경하면 클라이언트로 [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=3 coherence=4 complexity=2 verbosity=2 [judge_reason] | API 이름과 이벤트는 정확하지만, [Sync] 속성의 '즉시(바로)' 반영 여부를 문서에 없는 정보로 단정했으며, 이벤트 핸들러의 서비스 접두사([service: Component])가 표준 규칙(_XxxService)과 어긋납니다. [source_doc] | 메이플스토리 지형 기능을 제공합니다. 맵 레이어당 하나만 존재할 수 있습니다. # Properties - **Color Color [Sync]** 타일맵의 색상을 지정합니다. - **boolean CreateFoothold [MakerOnly]** 발판의 생성 여부를 결정합니다. false일 시 발판은 생성되지 않습니다. - **float FootholdDrag [ReadOnly]** RigidbodyComponent가 포함된 엔티티가 발판 위에 있을 때 적용되는 마찰력입니다. 값이 클수록 빠르게 감속합니다. - **

[task] | single_turn [pass] | ✅ 통과 [title] | TileMapComponent [question] | 맵 레이어당 TileMapComponent가 하나만 존재할 수 있다는 제약 때문에, 같은 레이어에 여러 타일맵을 겹쳐서 배치하고 싶을 때 어떻게 처리해야 하나요? [answer] | 제공된 문서에는 "맵 레이어당 TileMapComponent가 하나만 존재할 수 있다"는 제약 사항만 명시되어 있으며, 같은 레이어에 여러 타일맵을 겹쳐서 배치하기 위한 구체적인 해결 방법이나 우회 기법은 설명되어 있지 않습니다. 따라서 주어진 정보를 바탕으로 해당 제약 사항을 우회하는 방법에 대해 답변할 수 없습니다. [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 없는 우회 기법을 지어내지 않고 문서에 명시된 정보 범위 내에서 답변한 점이 정확하며, 사용자가 원하는 해결책은 제공하지 못했으나 성실한 태도로 평가됩니다. [source_doc] | 메이플스토리 지형 기능을 제공합니다. 맵 레이어당 하나만 존재할 수 있습니다. # Properties - **Color Color [Sync]** 타일맵의 색상을 지정합니다. - **boolean CreateFoothold [MakerOnly]** 발판의 생성 여부를 결정합니다. false일 시 발판은 생성되지 않습니다. - **float FootholdDrag [ReadOnly]** RigidbodyComponent가 포함된 엔티티가 발판 위에 있을 때 적용되는 마찰력입니다. 값이 클수록 빠르게 감속합니다. - **

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | Amplitude 값이 1일 때 엔티티가 실제로 이동하는 최대 거리는 얼마인가요? [answer] | Amplitude 값이 1인 경우, 엔티티는 시작 위치에서 위쪽 또는 아래쪽으로 각각 0.5만큼 이동합니다. 따라서 엔티티가 실제로 이동하는 최대 거리는 0.5입니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서의 Amplitude 설명에 따라 시작 위치에서 최고/최저점까지의 거리가 0.5임을 정확히 추출하여 질문에 직접적으로 답변했습니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | single_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | FootholdEnterEvent와 FootholdCollisionEvent의 발생 시점 차이와 각각의 용도가 어떻게 다른지 궁금합니다. [answer] | RigidbodyComponent에서 `FootholdEnterEvent`와 `FootholdCollisionEvent`는 발판과 관련된 상호작용을 나타내지만, 발생 시점과 의미가 다릅니다. **1. FootholdEnterEvent** * **발생 시점:** 엔티티가 발판에 **붙었을 때** 발생합니다. * **용도:** 캐릭터나 엔티티가 발판 위에 정상적으로 서거나 착지하여 발판과 연결 상태가 되었음을 알리는 이벤트입니다. '발판에 올라타는' 행위가 완료된 시점으로 이해할 수 있습니다. **2. FootholdColl [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 정의에 충실하게 두 이벤트의 발생 시점(붙을 때 vs 충돌할 때)과 용도 차이를 명확히 비교 설명했으며, 추가 정보도 적절히 제공했습니다. [source_doc] | - **FootholdCollisionEvent** RigidBodyComponent가 발판에 충돌했을 때 발생하는 이벤트입니다. - **FootholdEnterEvent** 엔티티가 발판에 붙었을 때 발생하는 이벤트입니다. - **FootholdLeaveEvent** 엔티티가 발판에서 떨어졌을 때 발생하는 이벤트입니다. - **RigidbodyAttachEvent** 엔티티가 RigidbodyComponent:AttachTo(string, Vector3)를 통해 특정 엔티티에 붙었을 때 발생하는 이벤트입니다. 플레이

[task] | single_turn [pass] | ❌ 탈락 [title] | RigidbodyComponent [question] | AttachTo로 다른 엔티티에 붙였다가 다시 자유롭게 이동하려면 Detach를 호출해야 하는데, 이 과정에서 물리 동작이 즉시 복원되는지 아니면 추가 설정이 필요한지 알고 싶습니다. [answer] | `RigidbodyComponent`의 `Detach()` 메서드를 호출하면 `AttachTo()`로 다른 엔티티에 붙어 있던 상태가 해제됩니다. 문서에 따르면 `AttachTo()` 시 엔티티는 "물리 동작을 하지 않고" 붙혀진 엔티티의 이동에 종속됩니다. 따라서 `Detach()`를 호출하면 이러한 종속 상태가 끝나고, 엔티티는 다시 자체 물리 동작(힘, 점프 등)에 의해 움직이게 됩니다. 추가 설정이 필요한지 여부는 문서에 명시되어 있지 않으며, `Detach()` 호출만으로 물리 동작이 복원되는 것으로 이해할 수 있습니다. [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=3 complexity=3 verbosity=2 [judge_reason] | 문서에 없는 API(TriggerEnterEvent, Vector3.zero)와 다른 엔진 문법(GetComponent 유사 접근, C# 스타일 호출)을 사용하여 코드 예제가 오류이며, 물리 동작 복원 여부에 대한 추측이 섞여 있음 [source_doc] | # Methods - **void AddForce(Vector2 forcePower)** 엔티티에 가해지는 힘을 더합니다. 엔티티는 기존 힘에 추가로 더해진 힘의 방향으로 가·감속 운동을 하게 됩니다. - **void AttachTo(string entityId, Vector3 offset)** 이 엔티티를 entityId에 해당하는 엔티티에게 붙힙니다. 이로서 이 엔티티는 물리 동작을 하지 않고 붙혀진 엔티티의 이동에 종속되게 됩니다. - **void Detach()** RigidbodyComponent:AttachT

[task] | two_turn [pass] | ❌ 탈락 [title] | RigidbodyComponent [question] | AttachTo와 Detach를 사용하여 엔티티를 다른 객체에 부착하고 해제하는 과정에서 물리 시뮬레이션이 어떻게 변하나요? [answer] | `RigidbodyComponent`의 `AttachTo`와 `Detach` 메서드를 사용할 때 물리 시뮬레이션의 변화는 다음과 같습니다. **1. 부착 상태 (`AttachTo`)** * `AttachTo(string entityId, Vector3 offset)`를 호출하면 해당 엔티티는 더 이상 자체적인 물리 동작(중력, 관성, 힘에 의한 이동 등)을 수행하지 않습니다. * 대신, 부착 대상 엔티티(`entityId`)의 이동에 완전히 종속되어 함께 움직이게 됩니다. * 즉, 물리 엔진의 독립적인 시뮬레이션에서 제 [followup] | AttachTo 시 물리 동작이 비활성화되는 메커니즘과, Detach 후 즉시 물리 연산이 재개되는지 아닌지 확인하는 방법이나 코드 예시가 있나요? [followup_answer] | 제공된 참고 문서에 따르면, `AttachTo`와 `Detach`의 메커니즘과 물리 연산 재개 시점에 대한 구체적인 확인 방법(예: 물리 활성 상태 여부를 반환하는 별도 프로퍼티나 메서드)은 명시되어 있지 않습니다. 문서에서 확인 가능한 사실은 다음과 같습니다. 1. **AttachTo 시:** 엔티티는 "물리 동작을 하지 않고" 붙여진 엔티티의 이동에 종속됩니다. 이는 물리 엔진의 독립적인 시뮬레이션(중력, 힘 적용 등)이 중단됨을 의미합니다. 2. **Detach 시:** 다른 엔티티에 붙어 있던 엔티티를 떼어냅니다. 문 [scores] | helpfulness=3 correctness=2 coherence=3 complexity=3 verbosity=2 [judge_reason] | 핵심 개념 설명은 정확하나, 코드 예제에 문서와 규칙에 없는 TriggerEnterEvent/TriggerBodyEntity API를 지어내어 정확도가 낮음 [source_doc] | # Methods - **void AddForce(Vector2 forcePower)** 엔티티에 가해지는 힘을 더합니다. 엔티티는 기존 힘에 추가로 더해진 힘의 방향으로 가·감속 운동을 하게 됩니다. - **void AttachTo(string entityId, Vector3 offset)** 이 엔티티를 entityId에 해당하는 엔티티에게 붙힙니다. 이로서 이 엔티티는 물리 동작을 하지 않고 붙혀진 엔티티의 이동에 종속되게 됩니다. - **void Detach()** RigidbodyComponent:AttachT

[task] | single_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | KinematicMove 프로퍼티가 true일 때 발생하는 RigidbodyKinematicMoveJumpEvent는 점프와 착지 중 어떤 시점에 정확히 트리거되며, 이를 통해 어떤 로직을 구현할 수 있나요? [answer] | 제공된 참고 문서에 따르면, `RigidbodyKinematicMoveJumpEvent`는 `KinematicMove` 프로퍼티가 `true`인 경우 **점프하거나 착지하면** 발생하는 이벤트입니다. 문서에는 "점프"와 "착지" 각각의 정확한 시점(예: 점프 버튼 입력 시, 지면 탈출 시, 지면 접촉 감지 시 등)에 대한 상세한 기술이 포함되어 있지 않습니다. 단순히 "점프하거나 착지하면 발생한다"는 설명만 존재합니다. 따라서 이 이벤트를 통해 구현할 수 있는 구체적인 로직이나 제한 사항에 대한 추가적인 정보(예: 이벤트 객체에 [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 없는 세부 정보를 지어내지 않고 제한된 내용을 정확히 설명하되, 질문의 의도(구체적 시점 및 로직)에 대한 답변이 다소 부족함. [source_doc] | - **FootholdCollisionEvent** RigidBodyComponent가 발판에 충돌했을 때 발생하는 이벤트입니다. - **FootholdEnterEvent** 엔티티가 발판에 붙었을 때 발생하는 이벤트입니다. - **FootholdLeaveEvent** 엔티티가 발판에서 떨어졌을 때 발생하는 이벤트입니다. - **RigidbodyAttachEvent** 엔티티가 RigidbodyComponent:AttachTo(string, Vector3)를 통해 특정 엔티티에 붙었을 때 발생하는 이벤트입니다. 플레이

[task] | two_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | JustJump와 DownJump를 사용할 때 발판(Foothold) 상태가 미치는 영향과 예외 처리가 어떻게 되나요? [answer] | 제공된 문서에 따르면 `JustJump`와 `DownJump` 함수의 발판 상태에 따른 동작과 예외 처리는 다음과 같습니다. **1. DownJump** * **발판 상태 영향:** 엔티티가 **지형 위에 있을 때만** 유효합니다. 즉, 공중에 있거나 지형과 연결되지 않은 상태에서는 아래 점프가 수행되지 않습니다. * **예외 처리/반환값:** 함수의 반환 타입은 `boolean`입니다. 지형 위에 있지 않아 점프가 실행되지 않는 경우를 포함하여, 점프가 성공적으로 수행되었는지 여부에 따라 `true` 또는 `false`를 [followup] | IsOnGround가 false일 때 JustJump의 반환값, 그리고 PredictFootholdEnd를 이용해 발판 끝을 미리 확인하는 로직 구현 예시가 있나요? [followup_answer] | 제공된 문서에 근거하여 질문에 답합니다. ### 1. IsOnGround가 false일 때 JustJump의 반환값 문서에는 `JustJump(Vector2 jumpRate)`가 "대상을 점프시킵니다"라고만 기술되어 있으며, `DownJump`와 달리 **"지형 위에 있을 때만 유효하다"는 명시적 제한 조건이 없습니다.** 따라서 `IsOnGround()`가 `false`인 상태(공중 상태 등)에서 `JustJump`를 호출했을 때의 반환값(`true` 또는 `false`)에 대한 구체적인 규칙이나 예외 처리 사항은 문서에 기재되 [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에 명시된 DownJump의 지형 제한과 JustJump의 미기재 사항을 정확히 구분하여 서술하고, 존재하지 않는 예외 처리 로직을 지어내지 않으면서도 표준 구문을 활용한 적절한 코드 예시를 제공하여 질문에 충실히 답했습니다. [source_doc] | # Methods - **void AddForce(Vector2 forcePower)** 엔티티에 가해지는 힘을 더합니다. 엔티티는 기존 힘에 추가로 더해진 힘의 방향으로 가·감속 운동을 하게 됩니다. - **void AttachTo(string entityId, Vector3 offset)** 이 엔티티를 entityId에 해당하는 엔티티에게 붙힙니다. 이로서 이 엔티티는 물리 동작을 하지 않고 붙혀진 엔티티의 이동에 종속되게 됩니다. - **void Detach()** RigidbodyComponent:AttachT

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | OneCycleTime이 1초로 설정되어 있다면 최저점에서 최고점까지 이동하는 데 걸리는 시간은 몇 초인가요? [answer] | OneCycleTime의 값이 1인 경우, 최저점에서 최고점까지 이동하는 데 걸리는 시간은 **1초**입니다. 참고로, OneCycleTime은 "최저점에서 최고점까지 이동하는데 걸리는 시간"을 초 단위로 설정하는 프로퍼티입니다. 따라서 이 값이 1이면 한쪽 방향(최저점 → 최고점 또는 최고점 → 최저점) 이동에 1초가 소요되며, 왕복으로 돌아오는 전체 주기(One Cycle)는 2초가 됩니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서에 명시된 OneCycleTime의 정의와 예시(1이면 왕복 2초)를 정확히 인용하여 질문에 대한 답을 명확하게 제시했습니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | 트윈이 끝난 후 컴포넌트가 자동으로 사라지게 하려면 어떤 프로퍼티를 어떻게 설정해야 하나요? [answer] | 트윈이 끝난 후 컴포넌트가 자동으로 사라지게 하려면 `AutoDestroy` 프로퍼티를 `true`로 설정해야 합니다. `AutoDestroy`는 `TweenBaseComponent`에서 상속된 프로퍼티이며, 이 값을 `true`로 지정하면 트윈이 목적지에 도달하여 끝나거나 `Stop()`이 직접 호출되었을 때 해당 컴포넌트가 엔티티에서 자동으로 제거됩니다. ```lua local tween = self.Entity.TweenFloatingComponent tween.AutoDestroy = true ``` [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에서 명시된 AutoDestroy 프로퍼티의 동작과 설정 방법을 정확히 설명하고, mLua 규칙에 부합하는 코드 예시를 제공하여 질문에 완벽하게 답했습니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | single_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | PredictFootholdEnd 메서드에서 isForward 파라미터가 false일 때 좌측 방향을 확인한다고 하는데, 발판 끝에 도달했는지 판단하는 논리가 distance 값과 어떻게 상호작용하는지 구체적으로 설명해 주세요. [answer] | `RigidbodyComponent`의 `PredictFootholdEnd(float distance, boolean isForward)` 메서드에서 `isForward`가 `false`일 때의 동작 논리는 다음과 같습니다. 1. **방향 확인**: `isForward`가 `false`이면 현재 엔티티가 밟고 있는 발판의 **왼쪽 방향**을 기준으로 판단합니다. (참고: `true`일 때는 오른쪽 방향입니다.) 2. **거리 비교**: 현재 위치에서 왼쪽 방향으로 발판 끝까지의 실제 물리적 거리를 계산합니다. 3. **판단 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 설명과 코드가 정확히 일치하며, 질문의 핵심인 distance와 isForward의 상호작용을 명확히 설명했습니다. [source_doc] | # Methods - **void AddForce(Vector2 forcePower)** 엔티티에 가해지는 힘을 더합니다. 엔티티는 기존 힘에 추가로 더해진 힘의 방향으로 가·감속 운동을 하게 됩니다. - **void AttachTo(string entityId, Vector3 offset)** 이 엔티티를 entityId에 해당하는 엔티티에게 붙힙니다. 이로서 이 엔티티는 물리 동작을 하지 않고 붙혀진 엔티티의 이동에 종속되게 됩니다. - **void Detach()** RigidbodyComponent:AttachT

[task] | single_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | PredictFootholdEnd 메서드의 두 번째 인자인 방향(true/false)이 양의 방향을 의미하는 것으로 해석되어도 되는지, 발판 끝점 판별 시 distance 파라미터가 음수인 경우 어떻게 동작하는지 알고 싶습니다. [answer] | 제공된 참고 문서에 근거하여 답변드립니다. **1. 두 번째 인자(true/false)의 의미** 참고 문서의 `PredictFootholdEnd` 예제 설명에 따르면, 두 번째 인자가 `true`인 경우 **"양의 방향"**으로 발판 끝점까지의 거리를 판별합니다. * 예제 코드의 주석 및 설명: *"캐릭터가 밟고 있는 발판에서 **양의 방향으로** 발판의 끝이 10보다 가까우면 true, 멀다면 false를 반환합니다."* * 따라서 `true`는 양의 방향, `false`는 음의 방향(반대 방향)을 의미한다고 해석할 수 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서에 명시된 '양의 방향' 설명과 '10' 예제만을 근거로 두 번째 인자의 의미를 합리적으로 추론하고, 문서에 없는 음수 distance 동작에 대해서는 정보를 제공하지 않는다고 정확히 답변하여 질문자의 의도에 부합합니다. [source_doc] | - **FootholdCollisionEvent** RigidBodyComponent가 발판에 충돌했을 때 발생하는 이벤트입니다. - **FootholdEnterEvent** 엔티티가 발판에 붙었을 때 발생하는 이벤트입니다. - **FootholdLeaveEvent** 엔티티가 발판에서 떨어졌을 때 발생하는 이벤트입니다. - **RigidbodyAttachEvent** 엔티티가 RigidbodyComponent:AttachTo(string, Vector3)를 통해 특정 엔티티에 붙었을 때 발생하는 이벤트입니다. 플레이

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | SyncType을 client only로 설정하면 서버와 클라이언트 간 트윈 상태 동기화에 어떤 차이가 발생하나요? [answer] | `SyncType`을 **client only**로 설정하면, 트윈을 제어하는 함수(`Play`, `Pause`, `Stop`, `Destroy`, `RestartFromCurrentPosition`)가 **클라이언트에서만 실행**되며, **서버 상태는 클라이언트로 동기화되지 않습니다.** 즉, 클라이언트에서 트윈을 재생하거나 중지하더라도 서버는 해당 트윈의 상태를 알지 못하며, 서버에서 트윈을 제어하는 것도 불가능해집니다. 이는 트윈의 동작이 완전히 클라이언트 로컬에 한정됨을 의미합니다. 반면, 기본값인 **Default**를 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 SyncType 설명과 일치하며, 질문의 핵심인 동기화 차이를 명확히 답변하고 있습니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | Amplitude와 OneCycleTime의 수학적 관계(예: Amplitude=1일 때 최대/최소점 거리, OneCycleTime=1일 때 전체 주기 시간)를 2문장 이내로 설명하세요. [answer] | Amplitude가 1이면 시작 위치에서 최고점과 최저점까지의 거리는 각각 0.5입니다. OneCycleTime이 1이면 최저점에서 최고점까지 이동하는 데 1초가 걸리므로 전체 왕복 주기는 2초입니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 Amplitude와 OneCycleTime 정의에 정확히 부합하는 간결하고 명확한 설명입니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | single_turn [pass] | ❌ 탈락 [title] | TweenFloatingComponent [question] | Entity에 TweenFloatingComponent가 붙어 있는데 이동 중에도 부유 효과가 정상적으로 유지되나요? [answer] | 제시된 참고 문서에는 `TweenFloatingComponent`가 이동 중에도 부유 효과를 유지하는지에 대한 명시적인 정보가 없습니다. 문서에는 `TweenFloatingComponent`의 `Amplitude`, `OneCycleTime`, `TweenType` 프로퍼티 설정 예제와 `_TweenLogic` 서비스의 `MoveOffset`, `PlayTween` 메서드 사용 예제만 포함되어 있어, 두 컴포넌트/서비스 간의 상호작용이나 동시 동작 시 동작 방식에 대한 설명은 찾을 수 없습니다. [followup] | [followup_answer] | [scores] | helpfulness=2 correctness=0 coherence=3 complexity=1 verbosity=2 [judge_reason] | 참고 문서에 없는 `_TweenLogic` 서비스와 `MoveOffset`, `PlayTween` 메서드를 지어내어 사실과 어긋난 정보를 포함했습니다. [source_doc] | Entity가 부유하는 듯한 효과를 주는 예제입니다. ```lua local tween = self.Entity.TweenFloatingComponent -- 이동 거리 0.1 tween.Amplitude = 0.1 -- 주기 1초 tween.OneCycleTime = 1 -- 서서히 느려지다가 다시 빨라지는 효과 tween.TweenType = EaseType.QuadEaseInOut ``` # SeeAlso * EaseType

[task] | code [pass] | ❌ 탈락 [title] | MovementComponent [question] | MovementComponent의 JumpForce 속성을 20.0으로 초기화하고, 이벤트 핸들러에서 사용자 입력 시 Jump 메서드를 호출하여 점프 성공 여부를 로그로 출력하는 스크립트를 작성해줘 [answer] | MovementComponent의 `JumpForce` 프로퍼티를 20.0으로 초기화하고, 사용자 입력을 감지하여 `Jump()` 메서드를 호출한 후 그 결과를 로그로 출력하는 스크립트는 다음과 같습니다. 사용자 입력을 감지하는 구체적인 이벤트 핸들러(예: 키보드 입력, 터치 등)는 문서에 명시된 MovementComponent 관련 이벤트(`ChangedMovementInputEvent`, `ClimbPauseEvent`)나 일반 컴포넌트 이벤트로 직접 매핑하기 어려운 부분이 있어, 일반적인 사용자 입력 처리를 위해 `Playe [followup] | [followup_answer] | [scores] | helpfulness=0 correctness=2 coherence=0 complexity=3 verbosity=4 [judge_reason] | 응답이 반복문으로만 구성되어 실제 코드를 제공하지 못했고, 문서에 없는 PlayerControllerComponent API를 언급하며 질문을 회피했기 때문입니다. [source_doc] | RigidbodyComponent, KinematicbodyComponent, SideviewbodyComponent를 제어하기 위한 이동 관련 기능을 제공합니다. 점프력과 속력을 간단하게 수정할 수 있습니다. # Properties - **float InputSpeed [Sync]** 이동 속력을 설정합니다. 값이 클수록 이동 속력이 빨라집니다. - RigidbodyComponent가 true인 경우 좌우의 속력이 변경됩니다. - KinematicMove가 true인 경우 상하좌우의 속력이 변경됩니다. - Kinamatic

[task] | single_turn [pass] | ✅ 통과 [title] | TileMapComponent [question] | TileMapComponent에서 FootholdDrag 값을 크게 설정했는데, 캐릭터가 발판 위에서 멈추는 데 시간이 너무 오래 걸려서 왜 그런지 이해가 안 됩니다. [answer] | `TileMapComponent`의 `FootholdDrag` 프로퍼티는 RigidbodyComponent를 가진 엔티티가 발판 위에 있을 때 적용되는 **마찰력**입니다. 문서에서 `FootholdDrag`에 대해 "값이 클수록 **빠르게 감속**합니다"라고 명시하고 있습니다. 따라서 `FootholdDrag` 값을 크게 설정하면 캐릭터는 더 짧은 시간에 멈추어야 합니다. 질문자께서 "값을 크게 설정했는데 멈추는 데 시간이 오래 걸린다"고 느끼신다면, 이는 `FootholdDrag`의 동작 원리(값이 클수록 감속이 빨라짐)와 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 FootholdDrag 정의와 동작 원리를 정확히 인용하고, 관련 프로퍼티(FootholdForce, CreateFoothold 등)를 활용해 현상의 원인을 논리적으로 분석하여 질문자의 의문점을 명확히 해소하였습니다. [source_doc] | 메이플스토리 지형 기능을 제공합니다. 맵 레이어당 하나만 존재할 수 있습니다. # Properties - **Color Color [Sync]** 타일맵의 색상을 지정합니다. - **boolean CreateFoothold [MakerOnly]** 발판의 생성 여부를 결정합니다. false일 시 발판은 생성되지 않습니다. - **float FootholdDrag [ReadOnly]** RigidbodyComponent가 포함된 엔티티가 발판 위에 있을 때 적용되는 마찰력입니다. 값이 클수록 빠르게 감속합니다. - **

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenLineComponent [question] | TweenBaseComponent에서 상속받은 ReadOnly 속성 중 HideFromInspector가 붙어 있는 속성 이름만 코드 블록으로 [answer] | ```lua CurrentState OriginPosition OriginRotation OriginScale TweenTime ``` [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 TweenBaseComponent 상속 속성 중 ReadOnly와 HideFromInspector 속성이 모두 붙어 있는 5개 이름을 정확히 추출하여 요청된 형식으로 제시했습니다. [source_doc] | 엔티티가 지정한 경로로 이동합니다. 다양한 움직임 효과를 지원합니다. # Properties - **CoordinateType DestinationCoordinateType [Sync]** Positions가 절대 좌표인지, 상대 좌표인지 설정합니다. 재생 중 변경되면 트윈을 재시작합니다. - **float Duration [Sync]** 출발지에서 목적지까지 편도 이동 시간을 설정합니다. 초 단위로 설정합니다. 예를 들어, Duration이 1이고 OneRoundTrip으로 이동한다면 각 편도 이동 시간은 정방향 1초,

[task] | two_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | KinematicMove를 true로 설정할 때 기존 지형 이동 로직과 충돌 없이 상하좌우 탑다운 이동을 구현하려면 어떤 Property들을 함께 변경해야 하나요? [answer] | `KinematicMove`를 `true`로 설정하면 이동 방식이 중력과 지형 제약이 있는 물리 기반 이동에서 탑다운 방식의 상하좌우 이동으로 변경됩니다. 이 모드에서 기존 지형 이동 로직(중력, 경사, 발판 등)과 충돌 없이 동작하려면, `KinematicMove`와 직접적으로 연관된 속성들을 함께 설정해야 합니다. 참고 문서에 근거할 때, `KinematicMove`가 `true`일 때 동작하거나 함께 변경해야 하는 주요 Property는 다음과 같습니다. 1. **KinematicMoveAcceleration**: `Ki [followup] | EnableKinematicMoveJump가 false인 상태에서 점프 입력을 무시하고, KinematicMoveAcceleration을 통해 평탄한 이동만 유지하는 스크립트 로직을 작성해 주세요. [followup_answer] | `KinematicMove`를 활성화하고 `EnableKinematicMoveJump`를 `false`로 설정하면, 점프 기능이 비활성화되어 상하좌우 탑다운 이동 중 점프 입력이 무시됩니다. 이 상태에서 `KinematicMoveAcceleration`으로 이동 속력을 제어하면 평탄한 탑다운 이동을 유지할 수 있습니다. 아래 스크립트는 `OnBeginPlay`에서 해당 설정을 초기화하고, `OnUpdate`에서 `KinematicMoveAcceleration`을 통해 이동 속력을 제어하는 예시입니다. ```lua Property [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서에 명시된 KinematicMove 관련 프로퍼티(KinematicMoveAcceleration, EnableKinematicMoveJump)를 정확히 식별하고, mLua 표준 문법(self.Entity.X, OnBeginPlay)에 부합하는 올바른 코드 예시를 제공했습니다. [source_doc] | 메이플스토리 움직임을 적용합니다. 중력 및 가·감속 영향을 받습니다. # Properties - **float AirAccelerationX** 공중에서의 속도를 보정합니다. 값이 증가할 수록 공중에서의 이동 속도가 빨라집니다. - **float AirDecelerationX** 공중에서의 입력이 없을 경우 X축의 이동 속도가 얼마나 빠르게 멈추는지를 보정합니다. - **boolean ApplyClimbableRotation [Sync]** true인 경우 회전하거나 기울어진 사다리를 탄 캐릭터는 사다리의 모습을 따릅

[task] | single_turn [pass] | ✅ 통과 [title] | RigidbodyComponent [question] | 엔티티가 현재 지형 위에 서 있는지 판단할 때 IsOnGround와 GetCurrentFoothold 중 어떤 메서드가 더 정확하며, 발판(Foothold)의 기울기나 수직선 정보를 얻고 싶을 때는 어떤 메서드를 써야 하나요? [answer] | 질문하신 두 가지 상황(지형 위 서 있는지 판단, 발판의 기울기/수직선 정보 획득)에 대해 각각 적합한 메서드를 설명드리겠습니다. **1. 엔티티가 현재 지형 위에 서 있는지 판단할 때** `IsOnGround()`와 `GetCurrentFoothold()`를 모두 사용할 수 있지만, 목적에 따라 명확한 차이가 있습니다. * **단순 여부 확인 (추천):** 엔티티가 "지형 위에 서 있는가?"라는 **부울(true/false) 값**만 필요할 때는 `IsOnGround()`를 사용하는 것이 가장 정확하고 효율적입니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에 명시된 API 정의와 동작 방식을 정확히 인용하여 질문에 완벽하게 답했으며, 표준 구문을 사용한 코드 예시도 적절합니다. [source_doc] | # Methods - **void AddForce(Vector2 forcePower)** 엔티티에 가해지는 힘을 더합니다. 엔티티는 기존 힘에 추가로 더해진 힘의 방향으로 가·감속 운동을 하게 됩니다. - **void AttachTo(string entityId, Vector3 offset)** 이 엔티티를 entityId에 해당하는 엔티티에게 붙힙니다. 이로서 이 엔티티는 물리 동작을 하지 않고 붙혀진 엔티티의 이동에 종속되게 됩니다. - **void Detach()** RigidbodyComponent:AttachT

[task] | single_turn [pass] | ✅ 통과 [title] | TileMapComponent [question] | HandleTriggerLeaveEvent에서 캐릭터 이름 확인 없이 색상을 초기화하는 것과, 이름 확인 후 초기화하는 것의 차이점은 무엇인가요? [answer] | 참고 문서에 포함된 예제를 기준으로, `HandleTriggerLeaveEvent`에서 캐릭터 이름 확인(필터링) 유무에 따른 차이는 다음과 같습니다. **1. 이름 확인 없이 초기화하는 경우 (문서 예제)** 문서에 제시된 `HandleTriggerLeaveEvent` 예제는 이름 확인 없이 무조건적으로 `self:SetColor(Color.white)`를 호출합니다. ```lua Event Handler: [self] HandleTriggerLeaveEvent (TriggerLeaveEvent event) { -- Param [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 예제와 설명을 정확히 분석하여 두 시나리오의 동작 차이와 구조적 특징을 명확하게 비교 설명했습니다. [source_doc] | 캐릭터가 엔티티에 출동하면 타일 맵의 색상이 변경됩니다. 충돌 범위를 벗어나면 본래 색상으로 돌아오게 됩니다. ```lua Method: void SetColor (Color color) { local tileMap = _EntityService:GetEntityByPath("/maps/map01/TileMap") tileMap.TileMapComponent.Color = color } Event Handler: [self] HandleTriggerEnterEvent (TriggerEnterEvent event) { --

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenLineComponent [question] | AutoDestroy와 AutoStart가 false일 때 트윈이 종료된 후 엔티티에 남은 컴포넌트 상태와 재시작 시점을 3문장 이내로 [answer] | AutoDestroy가 false이면 트윈이 목적지에 도달하거나 정지되어도 TweenLineComponent는 엔티티에서 제거되지 않고 그대로 유지됩니다. AutoStart가 false라면 게임 시작 시 자동 재생되지 않으므로, Play() 함수가 명시적으로 호출되는 시점이 트윈의 시작점이 됩니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 AutoDestroy와 AutoStart의 동작 및 Play() 함수의 존재를 정확히 바탕으로 질문에 간결하고 명확하게 답변했습니다. [source_doc] | 엔티티가 지정한 경로로 이동합니다. 다양한 움직임 효과를 지원합니다. # Properties - **CoordinateType DestinationCoordinateType [Sync]** Positions가 절대 좌표인지, 상대 좌표인지 설정합니다. 재생 중 변경되면 트윈을 재시작합니다. - **float Duration [Sync]** 출발지에서 목적지까지 편도 이동 시간을 설정합니다. 초 단위로 설정합니다. 예를 들어, Duration이 1이고 OneRoundTrip으로 이동한다면 각 편도 이동 시간은 정방향 1초,

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | Stop 메서드의 reset 파라미터에 true와 false를 지정했을 때 엔티티의 위치 변화는 어떻게 다른가요? [answer] | `Stop(boolean reset)` 메서드의 `reset` 파라미터 값에 따라 엔티티의 위치가 다음과 같이 달라집니다. * **`true`**: 트윈이 중지된 후 엔티티의 위치와 진행도가 **초기 상태(트윈 시작 전 위치)**로 되돌아갑니다. * **`false`**: 트윈이 중지되었을 때 엔티티는 **현재 이동하고 있던 위치 그대로** 정지하며, 초기 위치로 되돌아가지 않습니다. 즉, `true`를 지정하면 애니메이션이 처음부터 다시 시작되는 것처럼 위치가 초기화되고, `false`를 지정하면 현재 프레임에서 움직임 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 Stop 메서드 설명과 일치하며, mLua 구문 규칙에 따라 컴포넌트 접근과 코드 예제를 적절히 제시했습니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | two_turn [pass] | ❌ 탈락 [title] | RigidbodyComponent [question] | Mass 값이 큰 캐릭터와 가벼운 캐릭터가 같은 이동 입력을 받았을 때, WalkDrag와 AirDecelerationX가 미치는 영향 차이를 어떻게 설명할 수 있나요? [answer] | RigidbodyComponent의 `Mass` 값은 캐릭터의 질량을 나타내며, 값이 클수록 가감속이 느려지고 외부 요인에 대한 반응성이 낮아집니다. 이 질량 특성은 이동 속도를 조절하는 `WalkDrag`와 `AirDecelerationX`의 실제 물리적 영향에도 반영됩니다. 두 속성의 역할과 질량에 따른 차이점은 다음과 같습니다. ### 1. WalkDrag (지형 이동 시) * **역할**: 지형 위를 이동할 때 미끄러짐에 저항하는 힘입니다. 입력값이 클수록 미끄러지지 않고 빠르게 멈추게 됩니다. * **질량(Mas [followup] | Mass가 10인 캐릭터가 공중에서 입력을 멈추었을 때 AirDecelerationX가 0.1과 0.5일 때 각각 얼마나 빨리 속도가 감소하는지 계산 공식이나 테스트 코드를 요청합니다. [followup_answer] | 참고 문서에 `AirDecelerationX` 값이 실제 속도 감소량(예: 초당 감소하는 단위, 감속 가속도 등)으로 변환되는 **수학적 계산 공식은 명시되어 있지 않습니다.** 문서에는 `AirDecelerationX`가 "공중에서의 입력이 없을 경우 X축의 이동 속도가 얼마나 빠르게 멈추는지를 보정"하는 값이라고만 정의되어 있으며, `Mass`와의 구체적인 연산 관계나 물리 엔진 내부의 감속 알고리즘 공식은 제공되지 않습니다. 따라서 `Mass` 10일 때 `AirDecelerationX` 0.1과 0.5의 정확한 수치적 감 [scores] | helpfulness=3 correctness=2 coherence=4 complexity=3 verbosity=2 [judge_reason] | Mass가 WalkDrag와 AirDecelerationX에 직접적인 물리적 영향을 미친다는 설명은 문서의 '반응성 낮아짐'을 과도하게 해석한 것이며, 두 속성은 독립적인 보정값으로 정의되어 있어 질량에 따라 그 효과가 변한다고 단정할 근거가 부족함 [source_doc] | 메이플스토리 움직임을 적용합니다. 중력 및 가·감속 영향을 받습니다. # Properties - **float AirAccelerationX** 공중에서의 속도를 보정합니다. 값이 증가할 수록 공중에서의 이동 속도가 빨라집니다. - **float AirDecelerationX** 공중에서의 입력이 없을 경우 X축의 이동 속도가 얼마나 빠르게 멈추는지를 보정합니다. - **boolean ApplyClimbableRotation [Sync]** true인 경우 회전하거나 기울어진 사다리를 탄 캐릭터는 사다리의 모습을 따릅

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | 부유 효과가 전혀 보이지 않을 때, 가장 먼저 확인해야 할 스크립트 설정은 무엇인가요? [answer] | 부유 효과가 보이지 않을 때 가장 먼저 확인해야 할 설정은 `TweenFloatingComponent`의 `Amplitude`(이동 거리) 값입니다. 참고 문서의 예제에서 `Amplitude`는 0.1로 설정되어 있으며, 이 값이 0이거나 매우 작은 값으로 설정되어 있다면 Entity가 이동하는 양이 미세하여 육안으로 부유 효과를 인지하기 어려울 수 있습니다. 따라서 `Amplitude` 값이 적절히 설정되어 있는지 확인하고, 필요 시 값을 크게 조정해 보세요. ```lua local tween = self.Entity.Twee [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | Amplitude가 0일 경우 효과가 보이지 않는다는 논리는 타당하며, 제시된 API와 코드가 문서와 정확히 일치하지만 OneCycleTime 등 다른 설정값에 대한 언급이 없어 완전한 진단을 제공하지는 못함 [source_doc] | Entity가 부유하는 듯한 효과를 주는 예제입니다. ```lua local tween = self.Entity.TweenFloatingComponent -- 이동 거리 0.1 tween.Amplitude = 0.1 -- 주기 1초 tween.OneCycleTime = 1 -- 서서히 느려지다가 다시 빨라지는 효과 tween.TweenType = EaseType.QuadEaseInOut ``` # SeeAlso * EaseType

[task] | single_turn [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | 부유 효과가 너무 거칠게 느껴질 때 EaseType을 어떻게 설정해야 부드럽게 보일까요? [answer] | 부유 효과가 거칠게 느껴질 때는 `TweenFloatingComponent` 의 `TweenType` 속성을 부드러운 이징(Easing) 값으로 설정하면 됩니다. 참고 문서에 따르면, **서서히 느려지다가 다시 빨라지는 효과**를 위해 `EaseType.QuadEaseInOut` 를 사용할 수 있습니다. 이 값은 움직임의 시작과 끝에서 속도가 천천히 변하므로 부유 효과가 훨씬 부드럽게 보이게 합니다. 아래는 부유 효과를 부드럽게 설정하는 mLua 예제입니다. ```lua Method: [server only] void OnBe [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 명시된 QuadEaseInOut 이징을 정확히 인용하여 부드러운 부유 효과 설정법을 예제와 함께 명확히 설명하고 있습니다. [source_doc] | Entity가 부유하는 듯한 효과를 주는 예제입니다. ```lua local tween = self.Entity.TweenFloatingComponent -- 이동 거리 0.1 tween.Amplitude = 0.1 -- 주기 1초 tween.OneCycleTime = 1 -- 서서히 느려지다가 다시 빨라지는 효과 tween.TweenType = EaseType.QuadEaseInOut ``` # SeeAlso * EaseType

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenFloatingComponent [question] | 트윈을 재생 후 특정 위치에서 재시작하고, 이후 자동 삭제되도록 설정하는 코드만 출력하되, 모든 설명은 Lua 주석(-- )으로만 작성하세요. [answer] | ```lua Method: [server only] void OnBeginPlay() { -- 트윈 컴포넌트 참조 local tween = self.Entity.TweenFloatingComponent -- 트윈 재생 tween:Play() -- 트윈이 특정 위치(현재 위치 기준)에서 재시작되도록 설정 -- 참고: RestartFromCurrentPosition()은 현재 위치에서 재시작하는 메서드입니다. -- "특정 위치"로 명시된 절대 좌표로 재시작하는 API는 문서에 제공되 [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 없는 절대 좌표 재시작 API를 지어내지 않고 현재 위치 재시작으로 대체한 점과 주석만 사용했다는 요구를 잘 충족했으나, Play 직후 즉시 RestartFromCurrentPosition을 호출하는 로직은 실제 게임 로직에서는 의도된 동작(재생 후 특정 시점 재시작)과 다를 수 있어 실질적 도움은 약간 제한적입니다. [source_doc] | Entity가 위 아래로 왕복 이동합니다. # Properties - **float Amplitude [Sync]** 최저점에서 최고점까지의 거리를 설정합니다. 값이 1인 경우 시작 위치에서 최고/최저점까지의 거리는 0.5가 됩니다. - **float OneCycleTime [Sync]** 최저점에서 최고점까지 이동하는데 걸리는 시간을 설정합니다. 초 단위입니다. 예를 들어, 값이 1인 경우 한 이동 주기는 2초가 소요됩니다. - **EaseType TweenType [Sync]** 움직임 효과를 설정합니다. ###

[task] | instruction_following [pass] | ✅ 통과 [title] | TweenLineComponent [question] | DestinationCoordinateType, Duration, Interpolation, Positions, ReturnDuration, ReturnTweenType, StopType, TweenType, UseReturnTweenType 속성의 Sync 속성 유무를 표로 정리해서 [answer] | 요청하신 `TweenLineComponent`의 속성별 Sync 속성 유무는 다음과 같습니다. | 속성 이름 | Sync 속성 유무 | | :--- | :--- | | DestinationCoordinateType | 있음 ([Sync]) | | Duration | 있음 ([Sync]) | | Interpolation | 있음 ([Sync]) | | Positions | 있음 ([Sync]) | | ReturnDuration | 있음 ([Sync]) | | ReturnTweenType | 있음 ([Sync]) | | StopTyp [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서와 정확히 일치하며 요청한 정보를 표로 명확하게 정리했습니다. [source_doc] | 엔티티가 지정한 경로로 이동합니다. 다양한 움직임 효과를 지원합니다. # Properties - **CoordinateType DestinationCoordinateType [Sync]** Positions가 절대 좌표인지, 상대 좌표인지 설정합니다. 재생 중 변경되면 트윈을 재시작합니다. - **float Duration [Sync]** 출발지에서 목적지까지 편도 이동 시간을 설정합니다. 초 단위로 설정합니다. 예를 들어, Duration이 1이고 OneRoundTrip으로 이동한다면 각 편도 이동 시간은 정방향 1초,

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