← 목록

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

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

[task] | code [pass] | ⏳ 미판정 [title] | HttpService [question] | HttpService의 RequestAndWait를 사용하여 서버에서 PUT 메서드를 통해 지정된 URL의 리소스를 수정하고, 전송할 데이터를 JSON으로 인코딩하여 헤더에 Content-Type을 명시하는 스크립트를 작성해줘 [answer] | `HttpService`의 `RequestAndWait` 메서드를 사용하여 PUT 요청을 보내는 스크립트입니다. 주의할 점은 `RequestAndWait`를 사용할 때 `content`의 형식(예: `application/json`)을 반드시 `headers`에 명시해야 한다는 것입니다. 또한, 이 메서드는 서버에서만 실행되며([ServerOnly]), 응답을 기다리기 때문에 [Yield] 속성이 붙어 있습니다. ```lua Method: [server only] void UpdateResource() { -- 1. 전송 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | HTTP 요청을 보내는 기능을 제공합니다. # Properties - **boolean httpEnabled** http:// 프로토콜을 허용합니다. 기본값은 false이며 출시 게임에서는 https:// 프로토콜을 사용할 것을 권장합니다. # Methods - **string GetAndWait(string url, Dictionary<string, string> headers = nil) [ServerOnly] [Yield]** HTTP Get 요청을 보내고 application/json 응답을 받아옵니다. 헤더에

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService의 이벤트 시스템에서 SendEvent에 전달하는 EventType 객체를 어떻게 생성하거나 가져와야 하는지 알고 싶습니다. [answer] | ParticleService의 `SendEvent` 메서드는 `EventType` 타입의 객체를 인자로 받지만, 제공된 문서에는 `EventType` 객체를 생성하거나 가져오는 구체적인 메서드나 프로퍼티가 언급되어 있지 않습니다. 따라서 현재 문서 기준으로 `EventType` 객체를 어떻게 생성하거나 가져와야 하는지는 알 수 없습니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지

[task] | code [pass] | ⏳ 미판정 [title] | HttpService [question] | `_HttpService:GetAndWait`를 사용해 지정된 URL로 GET 요청을 보내고 응답 결과를 로그에 출력하는 스크립트를 작성해줘 [answer] | `_HttpService:GetAndWait` 메서드는 지정된 URL로 GET 요청을 보내고 응답을 기다리는 비동기 호출을 수행합니다. 이 메서드는 `[server only]` 실행 공간에서만 사용할 수 있으며, 두 번째 인자로 HTTP 헤더 테이블을 전달할 수 있습니다. 요청된 기능을 구현한 스크립트는 다음과 같습니다. ```lua Method: [server only] void SendGetRequest() { -- 헤더를 정의합니다. (필요 없으면 빈 테이블 {}도 가능) local headers = {} [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 1. HttpMethod Get/Post만 지원합니다. 2. PostAsync 전송 타입(HttpContentType)은 3가지입니다. * application/json * application/x-www-urlencoded * text/plain 3. 분당 최대 120회의 Http요청으로 제한합니다. 초과할 경우 30초간 HttpService요청이 불가능합니다. 4. 각 요청당 Timeout은 30초입니다. 5. Tls1.2 이상만 지원합니다. Tls1.0, Tls1.1의 경우 통신 시도를 하면 오류가 발생합니다. 6.

[task] | code [pass] | ⏳ 미판정 [title] | HttpService [question] | HttpService의 PostAndWait와 JSONEncode를 활용해 서버에서 사용자 입력을 JSON 형식으로 변환하여 지정된 API로 전송하고, 응답 결과를 로그로 기록하는 스크립트를 작성해줘 [answer] | `PostAndWait`와 `JSONEncode`를 사용하여 사용자 입력 데이터를 JSON 형식으로 변환하고 지정된 API로 전송하는 스크립트입니다. ```lua Property: [None] string TargetApiUrl = "https://api.example.com/endpoint" Method: [server only] void SendUserData(string userId, string username) { -- 전송할 데이터를 테이블로 구성 local dataToSend = { [" [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | HTTP 요청을 보내는 기능을 제공합니다. # Properties - **boolean httpEnabled** http:// 프로토콜을 허용합니다. 기본값은 false이며 출시 게임에서는 https:// 프로토콜을 사용할 것을 권장합니다. # Methods - **string GetAndWait(string url, Dictionary<string, string> headers = nil) [ServerOnly] [Yield]** HTTP Get 요청을 보내고 application/json 응답을 받아옵니다. 헤더에

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | CaptureFullScreenAsPixelDataAndWait 메서드의 픽셀 자동 조정 기준을 1문장 이내로 설명하세요. [answer] | 이미지의 픽셀 총 개수가 800x600 미만으로 자동 조정됩니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

[task] | code [pass] | ⏳ 미판정 [title] | PrismaticJoint [question] | PrismaticJointComponent의 Joints에 PrismaticJoint를 추가하고 MotorEnable을 true로 설정한 후 MotorSpeed를 2.0, MaxMotorForce를 100.0으로 지정하여 연결된 Entity가 목표 속도로 이동하도록 모터 기능을 활성화하는 스크립트를 작성해줘 [answer] | PrismaticJoint를 생성하고 `MotorEnable`, `MotorSpeed`, `MaxMotorForce` 값을 설정한 뒤 `PrismaticJointComponent`의 `Joints`에 추가하는 과정은 다음과 같습니다. 참고로 `PrismaticJoint` 객체를 직접 생성하여 프로퍼티를 수정한 후 `AddJoint` 메서드에 전달하는 방식은 제공된 문서의 예제(`DistanceJoint` 사용 예)와 동일한 접근 방식을 따르며, `PrismaticJoint`는 `PrismaticJoint()` 생성자를 통해 초기화 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 두 Entity가 특정 축을 따라서만 상대적 이동하도록 합니다. PrismaticJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 LocalAnchorA** JointComponent를 가진 Entity의 Anchor를 설정합니다. Entity 기준 상대 좌표를 사용합니다. - **Vector2 LocalAnchorB** Joint로 연

[task] | code [pass] | ⏳ 미판정 [title] | WheelJoint [question] | WheelJoint의 LocalAnchorA와 LocalAnchorB를 각각 Vector2(0, 0)과 Vector2(1, 0)으로 설정하고 CollideConnected를 false로 하여 연결 지점과 충돌 여부를 제어하는 스크립트를 작성해줘. [answer] | WheelJoint 컴포넌트의 `LocalAnchorA`, `LocalAnchorB`, `CollideConnected` 프로퍼티는 컴포넌트 자체의 설정 값입니다. 제공된 문서와 예제 코드에는 `WheelJointComponent`의 프로퍼티를 직접 조작하는 메서드나 `AddJoint` 시 인자로 Anchor 값을 전달하는 시그니처가 명시되어 있지 않습니다. (참고 예제에 있는 `DistanceJointComponent:AddJoint`는 DistanceJoint 전용이며, WheelJoint에는 해당하지 않습니다.) 따라서 mL [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 한 점에서 Entity를 연결하고 연결된 Entity가 해당 점을 기준으로 회전하도록 합니다. 마치 연결된 Entity가 바퀴처럼 동작하게 됩니다. WheelJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 LocalAnchorA** JointComponent를 가진 Entity의 Anchor를 설정합니다. Entity 기준 상대 좌표를 사

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | Windows 환경에서 CaptureFullScreenAsFileAndWait와 CaptureFullScreenToPhotoLibraryAndWait의 저장 경로를 각각 한 줄씩 비교해 보세요. [answer] | Windows 환경에서 두 메서드의 저장 경로는 다음과 같습니다. * `CaptureFullScreenAsFileAndWait`: 내 PC > 사진 > MapleStory Worlds > 월드 ID > fileName.png * `CaptureFullScreenToPhotoLibraryAndWait`: 내 PC > 사진 > MapleStory Worlds > 월드 ID > fileName.png [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | 반복 재생(isLoop)을 설정한 파티클을 중간에 제거하려면 어떤 절차로 RemoveParticle을 호출해야 하나요? [answer] | `isLoop` 플래그를 `true`로 설정하여 반복 재생 중인 파티클을 중간에 제거하려면, 파티클을 재생할 때 반환받은 **일련번호(serial)**를 저장해 두었다가 `RemoveParticle` 메서드에 해당 번호를 전달해야 합니다. 구체적인 절차는 다음과 같습니다. 1. **재생 및 일련번호 저장**: `PlayAreaParticle`, `PlayBasicParticle`, 또는 `PlaySpriteParticle` (및 Attached 버전) 메서드를 호출할 때 `isLoop` 파라미터를 `true`로 설정합니다. 이 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 파티클을 소환하는 기능을 제공합니다. # Methods - **integer PlayAreaParticle(AreaParticleType particleType, Vector2 areaSize, Entity instigator, Vector3 position, float zRotation, Vector3 scale, boolean isLoop = false, Dictionary<string, any> options = nil)** 현재 맵의 고정된 위치에 AreaParticle을 재생하고 이펙트를 제거하기 위한 일련번호를 반

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | CaptureScreenRegionAsPixelDataAndWait 메서드의 픽셀 자동 조정 기준과 지원 플랫폼을 2문장 이내로 설명하세요. [answer] | 캡처 영역이 800x600을 초과하면 픽셀 총 개수가 이 기준 미만으로 자동 축소됩니다. 이 메서드는 Windows PC, macOS, Android, iOS 환경에서 지원합니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | to, boolean includeUI = true) [ClientOnly] [Yield]** 화면 일부를 캡처해 PNG 파일로 저장합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Windows PC, macOS, Android, iOS 환경에서 지원합니다. - **void CaptureScreenRegionAsFileAsync(string fileName, Vector2 from, Vector2 to, func<ScreenshotError, string> callback

[task] | code [pass] | ⏳ 미판정 [title] | HttpService [question] | `_HttpService:JSONEncode`와 `_HttpService:PostAndWait`를 사용해 JSON 형태의 데이터를 `HttpContentType.ApplicationJson` 타입으로 POST 전송하고 응답을 처리하는 스크립트를 작성해줘 [answer] | `_HttpService:JSONEncode`와 `_HttpService:PostAndWait`를 사용하여 JSON 데이터를 POST 요청으로 전송하는 스크립트는 다음과 같습니다. 1. 전송할 데이터를 테이블로 구성합니다. 2. `_HttpService:JSONEncode`를 통해 데이터를 JSON 문자열로 변환합니다. 3. `_HttpService:PostAndWait` 메서드에 URL, 변환된 JSON 문자열, `HttpContentType.ApplicationJson`, 헤더를 인자로 전달하여 요청을 보냅니다. 4. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 1. HttpMethod Get/Post만 지원합니다. 2. PostAsync 전송 타입(HttpContentType)은 3가지입니다. * application/json * application/x-www-urlencoded * text/plain 3. 분당 최대 120회의 Http요청으로 제한합니다. 초과할 경우 30초간 HttpService요청이 불가능합니다. 4. 각 요청당 Timeout은 30초입니다. 5. Tls1.2 이상만 지원합니다. Tls1.0, Tls1.1의 경우 통신 시도를 하면 오류가 발생합니다. 6.

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | ScreenshotService 의 CaptureFullScreenAsFileAndWait 메서드 사용 예시를 코드만 출력하고, 에러 처리 및 로그 출력 로직은 주석으로만 설명하세요. [answer] | ```lua local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") -- 에러 처리: error 값이 ScreenshotError.Success 인지 확인하여 캡쳐 성공 여부를 판단합니다. -- 로그 출력: 성공 시 fullPath(저장된 파일의 전체 경로)를 log() 함수로 출력합니다. ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | two_turn [pass] | ⏳ 미판정 [title] | RevoluteJoint [question] | RevoluteJoint를 생성하여 두 Entity를 연결하고, 모터 기능을 활성화하여 특정 속도로 회전하도록 설정하는 mLua 코드 예시를 작성해 주세요. [answer] | RevoluteJoint를 생성하여 두 Entity를 연결하고 모터 기능을 활성화하는 과정은 `RevoluteJoint` 객체를 초기화한 후, 해당 객체의 프로퍼티를 설정하고, 마지막으로 `RevoluteJointComponent`의 `Joints` 컬렉션에 추가하는 방식으로 수행됩니다. 다음은 `RevoluteJoint`를 사용하여 두 Entity를 연결하고, 모터가 활성화된 상태로 특정 속도(`MotorSpeed`)로 회전하도록 설정하는 mLua 코드 예시입니다. ```lua Property: [None] Entity Tar [followup] | MotorEnable을 true로 설정하고 MotorSpeed를 90으로 지정하며, 각도 제한(UseLimits) 없이 0도에서 360도까지 자유롭게 회전하도록 설정하는 스크립트 코드를 보여주세요. [followup_answer] | 요청하신 설정(MotorEnable true, MotorSpeed 90, UseLimits false)을 반영하여 `RevoluteJoint`를 생성하고 `RevoluteJointComponent`에 추가하는 mLua 코드 예시는 다음과 같습니다. ```lua Property: [None] Entity TargetEntity = EntityPath Method: [server only] void SetupFreeRotatingJoint() { local target = self.TargetEntity if [scores] | [judge_reason] | [source_doc] | 두 Entity를 한 점에서 연결하고 해당 지점을 기준으로 회전하도록 합니다. RevoluteJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 LocalAnchorA** JointComponent를 가진 Entity의 Anchor를 설정합니다. Entity 기준 상대 좌표를 사용합니다. - **Vector2 LocalAnchorB** J

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | CaptureScreenRegionAsFileAndWait 메서드의 파라미터 구조와 리턴 값을 3문장 이내로 설명하세요. [answer] | `CaptureScreenRegionAsFileAndWait` 메서드는 파일 이름 문자열과 캡처 시작·끝 좌표(Vector2)를 파라미터로 받습니다. 호출 시 캡처 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 리턴 값으로 반환합니다. 에러 코드가 `ScreenshotError.Success`일 경우 캡처와 저장에 성공한 것입니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | two_turn [pass] | ⏳ 미판정 [title] | HttpService [question] | HttpService의 httpEnabled 프로퍼티가 false인 상황에서 http:// 프로토콜로 요청을 보내면 어떻게 되며, 출시 게임에서는 어떤 방식으로 설정을 변경하거나 https를 사용해야 하나요? [answer] | `HttpService`의 `httpEnabled` 프로퍼티는 기본적으로 `false`로 설정되어 있습니다. 이 값이 `false`인 상태에서 `http://` 프로토콜로 시작하는 URL을 사용하여 `GetAndWait`, `PostAndWait`, 또는 `RequestAndWait` 메서드를 호출하면 요청이 정상적으로 처리되지 않습니다. 이는 보안 및 안정성 차원에서 `http://` 프로토콜의 사용을 기본적으로 차단하기 위함입니다. 출시 게임에서는 반드시 `https://` 프로토콜을 사용해야 합니다. `httpEnabled` [followup] | httpEnabled를 true로 설정하여 http 요청을 허용하는 스크립트 설정 코드와, 보안상의 이유로 https를 권장하는 구체적인 사유나 주의점을 알려 주세요. [followup_answer] | `httpEnabled` 프로퍼티를 `true`로 설정하는 방법은 제공된 문서에 명시되어 있지 않습니다. 문서에는 `httpEnabled`가 `http://` 프로토콜을 허용하는 프로퍼티이며 기본값이 `false`라고만 되어 있고, 이를 `true`로 변경하는 구체적인 코드 예시나 방법이 포함되어 있지 않습니다. 보안상의 이유로 `https`를 권장하는 구체적인 사유나 주의점에 대해서도 문서에는 "출시 게임에서는 https:// 프로토콜을 사용할 것을 권장합니다"라는 문장만 존재하며, 그 구체적인 이유(예: 데이터 암호화, 중간자 [scores] | [judge_reason] | [source_doc] | HTTP 요청을 보내는 기능을 제공합니다. # Properties - **boolean httpEnabled** http:// 프로토콜을 허용합니다. 기본값은 false이며 출시 게임에서는 https:// 프로토콜을 사용할 것을 권장합니다. # Methods - **string GetAndWait(string url, Dictionary<string, string> headers = nil) [ServerOnly] [Yield]** HTTP Get 요청을 보내고 application/json 응답을 받아옵니다. 헤더에

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | CaptureScreenRegionAsFileAsync를 호출하여 에러 코드가 ScreenshotError.None 일 때 저장 경로를 로그로 출력하는 mLua 코드만 주석 포함으로 출력하세요. [answer] | ```lua Method: [client only] void CaptureAndLogPath () { -- CaptureScreenRegionAsFileAsync 호출 -- 매개변수: 파일명, 시작 좌표, 종료 좌표, 콜백 함수, UI 포함 여부(기본값 true) _ScreenshotService:CaptureScreenRegionAsFileAsync( "screenshot.png", Vector2(0, 0), Vector2(800, 600), funct [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | to, boolean includeUI = true) [ClientOnly] [Yield]** 화면 일부를 캡처해 PNG 파일로 저장합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Windows PC, macOS, Android, iOS 환경에서 지원합니다. - **void CaptureScreenRegionAsFileAsync(string fileName, Vector2 from, Vector2 to, func<ScreenshotError, string> callback

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService에서 ConnectEvent 메서드를 사용하면서 string 타입의 key와 Type 타입의 eventType 중 어떤 것을 선택해야 하는지 차이가 궁금합니다. [answer] | ParticleService의 `ConnectEvent` 메서드는 이벤트 연결 방식을 두 가지로 제공합니다. 선택 기준은 **이벤트 식별자의 형태**와 **타입 안전성**입니다. ### 1. `string key` 사용 시 - **식별자**: 이벤트의 **이름 문자열**을 직접 사용합니다. - **장점**: 직관적이고, 이벤트 이름만 알면 바로 연결 가능합니다. - **단점**: 컴파일 시점에 타입 검사가 이루어지지 않으므로, 오타가 있거나 존재하지 않는 이벤트 이름을 입력하면 런타임에 오류가 발생할 수 있습니다. - **사용 예 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지

[task] | code [pass] | ⏳ 미판정 [title] | RevoluteJoint [question] | RevoluteJoint의 TargetEntityRef를 특정 Entity로 지정하고, LocalAnchorA와 LocalAnchorB를 각각 Vector2(0, 1)과 Vector2(0, -1)로 설정하여 연결 지점을 조정하는 스크립트를 작성해줘. [answer] | RevoluteJoint의 `TargetEntityRef`를 특정 Entity로 지정하고, `LocalAnchorA`와 `LocalAnchorB`를 각각 `Vector2(0, 1)`과 `Vector2(0, -1)`으로 설정하는 스크립트입니다. RevoluteJoint는 `RevoluteJointComponent`의 `Joints` 배열에 추가되어 사용되므로, 먼저 해당 Component를 통해 Joint를 생성하거나 가져온 후 프로퍼티를 수정하는 방식으로 작성합니다. ```lua Method: [server only] void [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 두 Entity를 한 점에서 연결하고 해당 지점을 기준으로 회전하도록 합니다. RevoluteJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 LocalAnchorA** JointComponent를 가진 Entity의 Anchor를 설정합니다. Entity 기준 상대 좌표를 사용합니다. - **Vector2 LocalAnchorB** J

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | CaptureFullScreenAsFileAndWait 호출 시 첫 번째 인자로 전달해야 할 값은 무엇인가요? [answer] | `CaptureFullScreenAsFileAndWait`를 호출할 때 첫 번째 인자로 전달하는 값은 **저장할 이미지 파일의 이름(확장자 제외)** 입니다. 문서 예제에서는 `"Screenshot"`을 전달하여 `Screenshot.png` 파일로 저장하는 것을 보여줍니다. 즉, 전달하는 문자열이 파일 이름의 기본 부분이 됩니다. ```lua local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | 캡처가 성공했을 때 로그에 출력되는 정보 중 파일 위치를 나타내는 변수 이름은 무엇인가요? [answer] | 캡처가 성공했을 때 파일 위치를 나타내는 변수 이름은 `fullPath`입니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | code [pass] | ⏳ 미판정 [title] | PulleyJoint [question] | PulleyJoint의 Ratio 프로퍼티를 0.5로 설정하여 한쪽 줄이 다른 쪽 줄의 2배 속도로 움직이도록 구속력을 조절하고, CollideConnected를 false로 설정해 연결된 두 Entity가 서로 충돌하지 않도록 하는 스크립트를 작성해줘 [answer] | PulleyJoint의 `Ratio` 프로퍼티는 줄의 구속력 비율을 설정하는 값입니다. `Ratio`를 0.5로 설정하면 한쪽 줄의 움직임이 다른 쪽 줄과 비례하여 구속됩니다. 또한 `CollideConnected`를 `false`로 설정하면 Joint로 연결된 두 Entity가 서로 충돌하지 않도록 할 수 있습니다. 요청하신 설정을 적용한 mLua 스크립트 예제는 다음과 같습니다. ```lua Property: [None] EntityRef TargetEntity = EntityPath Method: [server only] [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 두 Entity의 Anchor와 GroundAnchor의 값을 설정해 선을 만들고, 그 선들의 총 합이 일정하게 유지되도록 합니다. 마치 두 Entity가 도르래에 연결된 것처럼 동작하게 됩니다. PullyJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 GroundAnchorA** JointComponent를 가진 Entity의 Groun

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | 전체 화면 캡처와 특정 영역 캡처를 구별하는 메서드 이름이 무엇인가요? [answer] | `_ScreenshotService`에서 사용하는 메서드 이름은 다음과 같습니다. * **전체 화면 캡처**: `CaptureFullScreenAsFileAndWait` * **특정 영역 캡처**: `CaptureScreenRegionAsFileAndWait` 두 메서드 모두 첫 번째 인자로 파일 이름을 받고, 실행 결과로 에러 코드와 저장된 파일의 전체 경로를 반환합니다. ```lua -- 전체 화면 캡처 local error, fullPath = _ScreenshotService:CaptureFullScreenAsF [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | 캡처 결과를 확인하기 위해 비교해야 하는 에러 코드 상수는 무엇인가요? [answer] | 캡처 결과를 확인하기 위해 비교해야 하는 에러 코드 상수는 `ScreenshotError.Success`입니다. `_ScreenshotService:CaptureFullScreenAsFileAndWait` 또는 `_ScreenshotService:CaptureScreenRegionAsFileAndWait` 호출 시 첫 번째 리턴 값으로 에러 코드를 받게 되며, 캡처가 성공적으로 완료된 경우 이 값이 `ScreenshotError.Success`와 같아집니다. ```lua local error, fullPath = _Screens [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | ScreenshotService의 동기/비동기 캡처 메서드 4종을 지원 플랫폼과 반환 타입 기준으로 비교하는 표로 정리하세요. [answer] | ScreenshotService의 캡처 메서드 4종은 호출 방식(동기/비동기)과 캡처 결과의 형태(파일 저장/픽셀 데이터)에 따라 구분됩니다. 각 메서드의 지원 플랫폼과 반환 타입은 다음과 같습니다. | 메서드명 | 실행 방식 | 캡처 대상 | 반환 타입 (동기) / 콜백 매개변수 (비동기) | 지원 플랫폼 | | :--- | :--- | :--- | :--- | :--- | | `CaptureFullScreenAsFileAndWait` | 동기 (`Yield`) | 파일 저장 (PNG) | `ScreenshotError, str [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | _ScreenshotService 로 캡처한 파일의 저장 경로를 어떻게 받아오나요? [answer] | `_ScreenshotService`의 캡처 메서드를 호출하면 두 번째 리턴 값으로 파일이 저장된 전체 경로(`fullPath`)를 받을 수 있습니다. 전체 화면을 캡처하는 경우: ```lua local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log("저장되었습니다. " .. fullPath) end ``` 특정 영역을 캡처하는 경우: ` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples #### CaptureFullScreenAsFileAndWait ```lua -- 전체 화면을 캡쳐해 "Screenshot.png" 이름으로 이미지 파일을 저장합니다. -- 리턴 값으로 캡쳐 결과를 나타내는 에러 코드와 파일이 저장된 전체 경로를 받을 수 있습니다. local error, fullPath = _ScreenshotService:CaptureFullScreenAsFileAndWait("Screenshot") if error == ScreenshotError.Success then log (

[task] | code [pass] | ⏳ 미판정 [title] | PulleyJoint [question] | PulleyJointComponent의 Joints에 PulleyJoint를 추가하여, LocalAnchorA와 LocalAnchorB를 각각 (0, 10)과 (0, -10)으로 설정하고 TargetEntityRef를 다른 Entity로 지정해 두 Entity가 도르래처럼 상하로 움직이도록 하는 스크립트를 작성해줘 [answer] | ## PulleyJoint 설정 스크립트 `PulleyJointComponent`의 `Joints`에 `PulleyJoint`를 추가하는 방식은 제공된 참고 문서에 포함되어 있지 않습니다. 참고 문서에는 `PulleyJoint` 객체의 프로퍼티(`LocalAnchorA`, `LocalAnchorB`, `TargetEntityRef` 등)와 생성자(`PulleyJoint()`, `PulleyJoint(PulleyJoint joint)`)만 정의되어 있으며, 이를 `PulleyJointComponent.Joints`에 실제로 추가하는 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 두 Entity의 Anchor와 GroundAnchor의 값을 설정해 선을 만들고, 그 선들의 총 합이 일정하게 유지되도록 합니다. 마치 두 Entity가 도르래에 연결된 것처럼 동작하게 됩니다. PullyJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 GroundAnchorA** JointComponent를 가진 Entity의 Groun

[task] | two_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | ScreenshotService를 사용해 화면 전체를 캡처하고 파일로 저장하려면 어떤 메서드를 호출해야 하나요? [answer] | 참고 문서에 제공된 `ScreenshotService` API 목록에는 **화면 전체**를 캡처하는 메서드가 포함되어 있지 않습니다. 문서에 나와 있는 캡처 관련 메서드는 모두 `CaptureScreenRegion...` 이름의 메서드로, `Vector2 from`와 `Vector2 to` 매개변수를 통해 **화면의 특정 영역(Region)**을 캡처하도록 설계되어 있습니다. 따라서, 주어진 문서 기준으로 화면 전체를 캡처하는 전용 메서드는 존재하지 않습니다. 만약 화면 전체를 캡처해야 한다면, 화면 좌상단 좌표와 우하단 좌표를 [followup] | `CaptureScreenRegionAsFileAndWait`에서 `from`과 `to`에 화면 좌표(예: 0,0 ~ 1920,1080)를 전달할 때 `includeUI`가 true인 경우와 false인 경우 저장되는 이미지 차이를 코드 예시로 설명해 주세요. [followup_answer] | `CaptureScreenRegionAsFileAndWait` 메서드에서 `includeUI` 매개변수는 캡처된 화면에 **UI 요소(인터페이스, 메뉴, 버튼 등)**를 포함할지 여부를 결정합니다. * **`includeUI = true` (기본값)**: 게임 화면과 함께 HUD, 메뉴, 대화 상자 등 모든 UI 레이어가 포함된 화면 전체가 캡처됩니다. * **`includeUI = false`**: UI 레이어는 제외되고, 배경과 게임 월드 객체(캐릭터, 아이템, 지형 등)만 포함된 화면이 캡처됩니다. 아래 코드 예시는 [scores] | [judge_reason] | [source_doc] | to, boolean includeUI = true) [ClientOnly] [Yield]** 화면 일부를 캡처해 PNG 파일로 저장합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Windows PC, macOS, Android, iOS 환경에서 지원합니다. - **void CaptureScreenRegionAsFileAsync(string fileName, Vector2 from, Vector2 to, func<ScreenshotError, string> callback

[task] | code [pass] | ⏳ 미판정 [title] | RevoluteJoint [question] | RevoluteJoint의 UseLimits를 true로 설정한 후, LowerAngle을 -45, UpperAngle을 45로 지정하여 회전 각도 제한 범위를 -45도에서 45도 사이로 고정하는 스크립트를 작성해줘. [answer] | `RevoluteJoint`의 `UseLimits`를 `true`로 설정하고 `LowerAngle`, `UpperAngle` 프로퍼티를 직접 수정하는 방식은 제공된 API 문서에 명시되지 않았습니다. 문서에는 해당 프로퍼티들이 `RevoluteJoint` 구조체의 필드임을 알 수 있으나, `RevoluteJointComponent`의 `Joints` 컬렉션에 추가된 개별 Joint 객체를 가져와서 프로퍼티를 수정하는 메서드(예: `GetJoint(index)`)가 존재하지 않습니다. 따라서 문서에 근거하여 각도 제한이 적용된 `R [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 두 Entity를 한 점에서 연결하고 해당 지점을 기준으로 회전하도록 합니다. RevoluteJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 LocalAnchorA** JointComponent를 가진 Entity의 Anchor를 설정합니다. Entity 기준 상대 좌표를 사용합니다. - **Vector2 LocalAnchorB** J

[task] | instruction_following [pass] | ⏳ 미판정 [title] | ParticleService [question] | 문서 예제에 포함된 `Property` 블록의 선언부와 `HandleKeyDownEvent`에서 `KeyboardKey.Q`를 눌렀을 때 실행되는 코드 블록만 출력하고, 나머지 설명은 주석으로 처리하세요. [answer] | ```lua Property: [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- -- KeyboardKey.Q 눌림 시 실행되는 코드 블록 if key == KeyboardKey.Q then self.P [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples 플레이어의 더블 점프 및 스킬 이펙트 효과를 파티클로 구현하는 예제입니다. ```lua Property : [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- if key == Ke

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | 화면 캡처 결과를 픽셀 데이터(RawImage)로 받아오는 함수에서 이미지 크기가 왜 800x600 미만으로 자동 조정되는지 원인을 알고 싶습니다. [answer] | 참고 문서에는 `CaptureFullScreenAsPixelDataAndWait` 및 `CaptureFullScreenAsPixelDataAsync` 함수가 "이미지의 픽셀 총 개수가 800x600 미만으로 자동 조정됩니다"라고 명시되어 있을 뿐, **왜** 이러한 제한이 적용되는지 그 구체적인 원인(예: 메모리 최적화, 성능 문제 방지 등)에 대한 설명은 제공되지 않습니다. 따라서 문서에 근거하여 해당 제한이 적용되는 '원인'을 설명해 드리는 것은 불가능합니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

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