[task] | single_turn [pass] | ✅ 통과 [title] | AccountTrustLevel [question] | Level 0과 Level 1의 차이는 무엇이며 현재 스크립트에서 이 둘을 구별할 수 있나요? [answer] | Level 0과 Level 1의 차이는 계정 종류에 따라 다음과 같습니다. **한국 계정** * **Level 0**: e-mail 인증을 하지 않은 계정입니다. * **Level 1**: e-mail 인증을 완료한 계정입니다. **글로벌 계정** * **Level 0**: 계정 보안 설정에서 SMS와 Google Authenticator가 모두 활성화되어 있지 않은 계정입니다. * **Level 1**: 계정 보안 설정에서 SMS와 Google Authenticator 중 1개만 활성화되었거나 Phone Numb [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서의 Level 0/1 정의 및 미구현 상태(0으로 반환)를 정확히 설명하여 질문에 완벽히 부합합니다. [source_doc] | 유저 계정의 인증 레벨입니다. 계정 종류마다 계정 인증 방식이 다르게 적용됩니다.\n한국 계정은 넥슨 OTP를 2차 인증 수단으로 사용합니다.\n글로벌 계정의 경우 SMS, Google Authenticator를 2차 인증 수단으로 사용합니다.\n지정된 레벨에 부합하지 않는 유저에게 계정 종류별 확인해야 하는 항목을 안내하는 것을 권장합니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Level0 | 0 | 한국 계정의 경우 e-mail 인증을 하지 않은 계정입니다. 글로벌 계정의 경우 계정 보안
[task] | single_turn [pass] | ✅ 통과 [title] | WorldInstanceInfoPages [question] | MoveToNextPageAndWait() 호출 시 스크립트가 멈추는 Yield 특성이 서버 로직에 어떤 영향을 주나요? [answer] | `MoveToNextPageAndWait()`는 **Yield** 특성을 가진 메서드입니다. 이는 메서드 호출 시점부터 다음 페이지로 이동이 완료될 때까지 해당 스크립트의 실행을 일시정지(중단)시킵니다. 서버 로직에 미치는 주요 영향은 다음과 같습니다. 1. **동시성 유지 (블로킹 방지)**: Yield 특성이 있으므로, 페이지 이동 중에도 서버는 다른 엔티티나 다른 스크립트의 업데이트(Update) 등을 정상적으로 처리할 수 있습니다. 스크립트가 단순히 멈추는 것이 아니라, 서버 엔진의 이벤트 루프에 양보하는 방식이 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 Yield 및 ServerOnly 특성을 정확히 해석하고, mLua의 비동기 실행 모델(스택 중단 후 재개)을 기반으로 서버 로직에 미치는 영향을 논리적으로 잘 설명했습니다. [source_doc] | WorldInstanceService에서 검색한 월드 인스턴스 목록을 페이지 단위로 조회합니다. # Properties - **boolean IsLastPage [ReadOnly]** 현재 페이지가 마지막 페이지인지 확인합니다. # Methods - **table<WorldInstanceInfo> GetCurrentPageDatas() [ServerOnly]** 현재 페이지의 WorldInstanceInfo 목록을 가져옵니다. - **boolean MoveToNextPageAndWait() [ServerOnly] [Y
[task] | instruction_following [pass] | ✅ 통과 [title] | LineGUIRendererComponent [question] | Enable과 EnableInHierarchy 프로퍼티의 차이점을 단계별 번호 목록으로 3단계 이내로 설명하세요. [answer] | 1. `Enable`은 해당 컴포넌트 자체의 활성화 여부를 직접 설정하고 확인하는 프로퍼티입니다. 2. `EnableInHierarchy`는 이 컴포넌트가 속한 엔티티의 활성화 상태까지 함께 고려하여, 계층 구조상 실제로 컴포넌트가 활성화되어 있는지를 반환하는 읽기 전용 프로퍼티입니다. 3. `Enable`이 `true`라 하더라도 상위 엔티티가 비활성 상태(`false`)라면 `EnableInHierarchy`는 `false`를 반환하지만, `Enable`은 여전히 `true`로 유지됩니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서의 정의와 제약 조건(ReadOnly, 계층 구조 반영)을 정확히 3단계로 요약하여 질문에 완벽히 부합합니다. [source_doc] | UI에 선을 그리며, 선의 속성을 설정할 수 있는 기능을 제공합니다. # Properties - **float Flexibility** 꺾이는 부분의 너비를 조절합니다. IsFlexible이 true일 때 적용됩니다. - **boolean IsFlexible** 꺾이는 부분을 이어 그릴지 끊어 그릴지 설정합니다. - **boolean IsSmooth** true면 부드러운 곡선, false면 날카로운 꺾은 선으로 그립니다. - **boolean Loop** true면 자동으로 시작점과 끝점을 이어 닫힌 선을 그립니
[task] | instruction_following [pass] | ✅ 통과 [title] | PolicyService [question] | `GetPolicyInfoForUserAsync`를 사용하여 유저의 정책 정보를 비동기로 조회하고, 결과값이 nil이 아닐 때에만 로그를 출력하는 mLua 코드를 '주석으로 설명을 포함하여 코드만 출력'하세요. [answer] | ```lua Method: [server only] void CheckUserPolicy(string userId) { -- GetPolicyInfoForUserAsync를 호출하여 비동기로 정책 정보를 조회합니다. -- 두 번째 인자로 결과를 처리할 콜백 함수를 전달합니다. _PolicyService:GetPolicyInfoForUserAsync(userId, function(policyInfo) -- 콜백 함수 내부에서 정책 정보 조회 결과를 확인합니다. if policyInfo [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서의 API 서명 및 동작 방식을 정확히 반영하여 요청된 조건(주석 포함, nil 체크, 코드만)을 완벽히 충족했습니다. [source_doc] | 지역별 정책 정보를 확인할 수 있는 기능을 제공합니다. # Methods - **PolicyInfo GetPolicyInfoForUserAndWait(string userId) [ServerOnly] [ReleaseOnly] [Yield]** 유저가 거주하는 지역의 정책 정보를 불러옵니다. 실패 시 nil을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. 출시 환경에서만 동작하는 함수입니다. 메이커에서 실행하면 nil을 반환합니다. - **void GetPolicyInfoForUserAsync(string userId
[task] | instruction_following [pass] | ✅ 통과 [title] | PolicyService [question] | PolicyService에서 상속받은 이벤트 관련 메서드 3가지(`ConnectEvent`, `DisconnectEvent`, `SendEvent`)의 기능을 '단계별 번호 목록'으로 간결하게 요약하세요. [answer] | PolicyService에서 상속받은 이벤트 관련 메서드 3가지의 기능은 다음과 같습니다. 1. **ConnectEvent** - 지정된 이벤트(`key` 이름 또는 `eventType` 타입)가 발생할 때 호출될 핸들러(`eventHandler`)를 연결합니다. - 이벤트 발생 시 핸들러에 event 매개 변수가 전달됩니다. 2. **DisconnectEvent** - 지정된 이벤트(`key` 이름 또는 `eventType` 타입)와 특정 핸들러(`eventHandler`) 간의 연결을 해제합니다. 3. ** [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 명시된 메서드들의 기능을 요구된 형식(단계별 번호 목록)으로 정확하고 간결하게 요약했습니다. [source_doc] | 지역별 정책 정보를 확인할 수 있는 기능을 제공합니다. # Methods - **PolicyInfo GetPolicyInfoForUserAndWait(string userId) [ServerOnly] [ReleaseOnly] [Yield]** 유저가 거주하는 지역의 정책 정보를 불러옵니다. 실패 시 nil을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. 출시 환경에서만 동작하는 함수입니다. 메이커에서 실행하면 nil을 반환합니다. - **void GetPolicyInfoForUserAsync(string userId
[task] | instruction_following [pass] | ✅ 통과 [title] | PolicyService [question] | `GetPolicyInfoForUserAndWait`와 `GetPolicyInfoForUserAsync`의 차이점을 '동기/비동기 처리 방식', '메이커 환경 동작 여부' 항목으로 구분하여 표로 정리하세요. [answer] | `GetPolicyInfoForUserAndWait`와 `GetPolicyInfoForUserAsync`의 차이점은 다음과 같습니다. | 구분 | GetPolicyInfoForUserAndWait | GetPolicyInfoForUserAsync | | :--- | :--- | :--- | | **동기/비동기 처리 방식** | 동기 처리 (Yield). 수행하는 동안 스크립트 실행을 중단하고 결과를 기다립니다. | 비동기 처리. 즉시 반환되고, 데이터가 도착하면 `callbackFunction`이 호출됩니다. | | **메이커 환 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서에 명시된 동기/비동기 처리 방식 및 메이커 환경에서의 동작(ReleaseOnly, nil 반환)을 요구사항에 맞게 정확하고 간결하게 표로 정리했습니다. [source_doc] | 지역별 정책 정보를 확인할 수 있는 기능을 제공합니다. # Methods - **PolicyInfo GetPolicyInfoForUserAndWait(string userId) [ServerOnly] [ReleaseOnly] [Yield]** 유저가 거주하는 지역의 정책 정보를 불러옵니다. 실패 시 nil을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. 출시 환경에서만 동작하는 함수입니다. 메이커에서 실행하면 nil을 반환합니다. - **void GetPolicyInfoForUserAsync(string userId
[task] | instruction_following [pass] | ✅ 통과 [title] | NexonOtpStateType [question] | 한국 계정과 글로벌 계정의 2차 인증 수단 차이를 2문장 이내로 비교해서 설명하세요. [answer] | 한국 계정은 넥슨 OTP를 2차 인증 수단으로 사용하며, 글로벌 계정은 SMS와 Google Authenticator를 2차 인증 수단으로 사용합니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 참고 문서의 내용을 정확하고 간결하게 요약하여 질문에 부합하는 답변을 제공했습니다. [source_doc] | 유저의 2차 인증 사용 여부를 나타냅니다. 2차 인증은 계정 종류마다 다른 방식으로 적용됩니다.\n한국 계정은 넥슨 OTP를 2차 인증 수단으로 사용합니다.\n글로벌 계정은 SMS, Google Authenticator를 2차 인증 수단으로 사용합니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Unknown | -1 | 시스템 장애로 2차 인증 사용 여부 값을 받을 수 없습니다. | | Inactive | 0 | 2차 인증을 사용하지 않는 계정입니다. 한국 계정의 경우 넥슨 OTP를 사용하지 않
[task] | single_turn [pass] | ❌ 탈락 [title] | WorldInstanceInfoPages [question] | WorldInstanceService로 검색한 목록을 가져오기 전에 WorldInstanceInfoPages 객체를 초기화하는 구체적인 방법은 무엇인가요? [answer] | `WorldInstanceInfoPages` 객체는 별도로 직접 생성하거나 초기화할 필요가 없습니다. `WorldInstanceService`에서 제공하는 검색 메서드를 호출하면, 그 반환값으로 `WorldInstanceInfoPages` 객체가 자동으로 생성되어 반환됩니다. 따라서 구체적인 초기화 방법은 `WorldInstanceService`의 해당 검색 메서드를 호출하는 것 그 자체입니다. 참고 문서에는 `WorldInstanceService`의 구체적인 검색 메서드 이름(예: `GetWorldInstancePagesAnd [followup] | [followup_answer] | [scores] | helpfulness=2 correctness=2 coherence=3 complexity=2 verbosity=2 [judge_reason] | 문서에 없는 'SearchWorldInstancesAndWait' 메서드를 예시로 제시했으나 명시적 가정을 달았으므로 중립적, 'ipairs' 사용은 문서의 'pairs'와 다름 [source_doc] | WorldInstanceService에서 검색한 월드 인스턴스 목록을 페이지 단위로 조회합니다. # Properties - **boolean IsLastPage [ReadOnly]** 현재 페이지가 마지막 페이지인지 확인합니다. # Methods - **table<WorldInstanceInfo> GetCurrentPageDatas() [ServerOnly]** 현재 페이지의 WorldInstanceInfo 목록을 가져옵니다. - **boolean MoveToNextPageAndWait() [ServerOnly] [Y
[task] | code [pass] | ✅ 통과 [title] | DayOfWeekType [question] | DayOfWeekType.Sunday ~ DayOfWeekType.Saturday 값을 순서대로 저장하는 테이블을 생성하고, DayOfWeekType.CastFrom(number) 메서드를 사용하여 0에서 6까지의 숫자를 각각 해당 요일 타입으로 변환하여 테이블에 매핑하는 스크립트를 작성해줘 [answer] | `DayOfWeekType` enum의 정의를 활용하여 0부터 6까지의 숫자 값과 각 요일 타입(`Sunday` ~ `Saturday`)을 매핑하는 테이블을 생성하는 스크립트입니다. 요청하신 대로 `DayOfWeekType.CastFrom(number)` 메서드를 사용하여 숫자 값을 enum 타입으로 변환하여 테이블에 저장합니다. ```lua Property: [None] table WeekdayMap = {} Method: [server only] void OnBeginPlay() { -- 0부터 6까지의 숫자를 Da [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 API 정의와 mLua 규칙에 부합하여 요청한 테이블 생성 및 변환 로직을 정확하고 명확하게 구현했습니다. [source_doc] | 요일을 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Sunday | 0 | 일요일입니다. | | Monday | 1 | 월요일입니다. | | Tuesday | 2 | 화요일입니다. | | Wednesday | 3 | 수요일입니다. | | Thursday | 4 | 목요일입니다. | | Friday | 5 | 금요일입니다. | | Saturday | 6 | 토요일입니다. | # Methods - **DayOfWeekType CastFrom(number value) [Static]**
[task] | instruction_following [pass] | ❌ 탈락 [title] | NexonOtpStateType [question] | NexonOtpStateType의 CastFrom 메서드 시그니처 두 가지를 코드 블록으로만 출력하고, 각 파라미터 타입을 주석으로 명시하세요. [answer] | ```lua NexonOtpStateType CastFrom(number value) [Static] // 파라미터 value 타입: number NexonOtpStateType CastFrom(string value) [Static] // 파라미터 value 타입: string ``` [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=4 complexity=1 verbosity=2 [judge_reason] | 문서에 없는 C++/C# 스타일 주석(//)을 mLua(Lua 5.3) 코드 블록에 사용하여 문법적 오류가 있으며, '코드 블록으로만'이라는 지시에서 주석 포함이 의도되었는지 불분명하나 주석 문법 자체가 잘못됨. [source_doc] | 유저의 2차 인증 사용 여부를 나타냅니다. 2차 인증은 계정 종류마다 다른 방식으로 적용됩니다.\n한국 계정은 넥슨 OTP를 2차 인증 수단으로 사용합니다.\n글로벌 계정은 SMS, Google Authenticator를 2차 인증 수단으로 사용합니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Unknown | -1 | 시스템 장애로 2차 인증 사용 여부 값을 받을 수 없습니다. | | Inactive | 0 | 2차 인증을 사용하지 않는 계정입니다. 한국 계정의 경우 넥슨 OTP를 사용하지 않
[task] | single_turn [pass] | ❌ 탈락 [title] | AccountTrustLevel [question] | AccountTrustLevel 값이 Unknown(1000000)으로 반환되는 원인은 무엇이며 이 상태일 때 개발자가 취해야 할 조치는 무엇인가요? [answer] | `AccountTrustLevel` 값이 `Unknown`(1000000)으로 반환되는 원인은 **시스템 장애**로 인해 계정 인증 레벨 값을 정상적으로 받을 수 없는 상태이기 때문입니다. 이 상태일 때 개발자가 취해야 할 조치는 다음과 같습니다. 1. **원인 확인**: 시스템 장애가 원인임을 인지하고, 서버 상태나 외부 서비스 연결 상태를 점검해야 합니다. 2. **사용자 안내**: 인증 레벨이 `Unknown`인 유저에게는 계정 인증 레벨을 정확히 판별할 수 없으므로, 계정 보안 설정이나 인증 상태를 재확인하도록 안내하 [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서 기반 원인 설명은 정확하나, '서버 상태 점검' 등 문서에 없는 구체적 조치와 CastFrom 예시 코드가 API 사용법을 지어낸 것으로 판단됩니다. [source_doc] | 유저 계정의 인증 레벨입니다. 계정 종류마다 계정 인증 방식이 다르게 적용됩니다.\n한국 계정은 넥슨 OTP를 2차 인증 수단으로 사용합니다.\n글로벌 계정의 경우 SMS, Google Authenticator를 2차 인증 수단으로 사용합니다.\n지정된 레벨에 부합하지 않는 유저에게 계정 종류별 확인해야 하는 항목을 안내하는 것을 권장합니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Level0 | 0 | 한국 계정의 경우 e-mail 인증을 하지 않은 계정입니다. 글로벌 계정의 경우 계정 보안
[task] | instruction_following [pass] | ✅ 통과 [title] | PolygonGUIRendererComponent [question] | PolygonGUIRendererComponent에서 UVs와 Points의 길이가 같아야 하는 제약 조건과 UseCustomUVs가 true일 때의 동작 방식을 3문장 이내로 설명하세요. [answer] | PolygonGUIRendererComponent의 UVs 프로퍼티는 반드시 Points 프로퍼티와 동일한 길이를 가져야 합니다. UseCustomUVs가 true로 설정되면 UVs에 지정된 값들이 도형의 꼭짓점에 직접 적용됩니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 제약 조건과 동작 방식을 정확하고 간결하게 설명했습니다. [source_doc] | UI에 다각형을 그리는 기능입니다. # Properties - **Color Color** 다각형의 색상입니다. - **string MaterialId [Sync]** 렌더러에 적용할 머티리얼 Id를 지정합니다. - **SyncList<Vector2> Points** 다각형을 구성하는 꼭짓점들의 집합입니다. - **boolean UseCustomUVs** true라면 UVs에 설정한 UV 값이 도형에 적용됩니다. - **SyncList<Vector2> UVs** 꼭짓점의 UV를 설정합니다. 반드시 Points와
[task] | instruction_following [pass] | ✅ 통과 [title] | NexonOtpStateType [question] | NexonOtpStateType의 멤버별 값과 설명을 3열 표로 정리해서 출력하세요. [answer] | | 이름 | 값 | 설명 | |---|---|---| | Unknown | -1 | 시스템 장애로 2차 인증 사용 여부 값을 받을 수 없습니다. | | Inactive | 0 | 2차 인증을 사용하지 않는 계정입니다. 한국 계정의 경우 넥슨 OTP를 사용하지 않는 계정을 의미합니다. 글로벌 계정의 경우 2차 인증 수단 모드를 사용하지 않는 계정을 의미합니다. | | Active | 1 | 2차 인증을 마친 경우 반환되는 값입니다. 한국 계정의 경우 넥슨 OTP를 사용합니다. 글로벌 계정의 경우 SMS 또는 Google Authent [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 멤버별 값과 설명을 요청된 형식에 맞춰 정확하고 간결하게 정리했습니다. [source_doc] | 유저의 2차 인증 사용 여부를 나타냅니다. 2차 인증은 계정 종류마다 다른 방식으로 적용됩니다.\n한국 계정은 넥슨 OTP를 2차 인증 수단으로 사용합니다.\n글로벌 계정은 SMS, Google Authenticator를 2차 인증 수단으로 사용합니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Unknown | -1 | 시스템 장애로 2차 인증 사용 여부 값을 받을 수 없습니다. | | Inactive | 0 | 2차 인증을 사용하지 않는 계정입니다. 한국 계정의 경우 넥슨 OTP를 사용하지 않
[task] | code [pass] | ✅ 통과 [title] | SoundPlayStateChangedEvent [question] | SoundPlayStateChangedEvent 를 수신해 State 가 SoundPlayState.Play 로 변경될 때마다 특정 좌표에 파티클 효과를 생성하는 [client only] 스크립트를 작성해줘 [answer] | SoundPlayStateChangedEvent는 SoundService 또는 SoundComponent의 사운드 재생 상태가 변경될 때 **Client** 공간에서 발생합니다. 이 이벤트를 수신하여 `State`가 `SoundPlayState.Play`일 때 특정 좌표에 파티클 효과를 생성하는 스크립트는 다음과 같습니다. 참고로, 파티클 생성을 위해 `_SpawnService`와 같은 스폰 서비스 API는 제공된 문서에 명시되어 있지 않으므로, 실제 구현 시에는 해당 API가 존재하는지 확인해야 합니다. 아래 예제는 일반적인 m [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=3 coherence=4 complexity=3 verbosity=2 [judge_reason] | 이벤트 수신 구조와 프로퍼티 정의는 정확하나, 요청된 '파티클 생성' 동작을 실제 API로 구현하지 못하고 주석으로 대체하거나 존재하지 않는 컴포넌트를 언급하여 실질적 도움이 제한적이다. [source_doc] | SoundService의 BGM, SoundComponent의 효과음 재생 상태가 변경될 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * SoundComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> * SoundService <img src="https://img.shields.io
[task] | code [pass] | ❌ 탈락 [title] | RegexCapture [question] | 사용 가능한 문서 정보(RegexCapture의 Properties: Index, Length, Text)만 활용하여, 정규식 매칭 결과를 처리하는 4가지 구체적인 과제를 작성합니다. [answer] | 참고 문서에 제공된 `RegexCapture` 객체의 `Index`, `Length`, `Text` 프로퍼티 정보와 실제 mLua 예제에서 확인되는 `Regex` 객체의 `Match` 메서드, `log` 함수, 문자열 연산자(`..`) 및 인덱싱 문법만을 사용하여 정규식 매칭 결과 처리 과제를 작성합니다. 참고: 문서에는 `Regex` 클래스의 생성자 `Regex(pattern)`와 `Match(origin, startIndex?)` 메서드, 그리고 매칭 결과 객체(문서에서는 단일 캡처 결과로 설명되었으나 예제에서 `Index`, [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=4 complexity=2 verbosity=2 [judge_reason] | RegexCapture는 성공한 단일 캡처 결과 객체로, 응답에서 지어낸 Regex 클래스 생성자 및 Match 메서드를 사용하여 객체를 생성하는 방식은 문서와 불일치하며, 이는 없는 API를 지어낸 경우에 해당합니다. [source_doc] | 성공한 단일 캡처 결과입니다. # Properties - **int32 Index [ReadOnly]** 원래 문자열에서 캡처된 부분 문자열의 첫번째 위치 인덱스를 가져옵니다. - **int32 Length [ReadOnly]** 캡처된 부분 문자열의 길이를 가져옵니다. - **string Text [ReadOnly]** 캡처된 부분 문자열을 가져옵니다. # SeeAlso * [정규식](/docs?postId=1041) * [정규식 언어](/docs?postId=1043)
[task] | instruction_following [pass] | ✅ 통과 [title] | PolygonGUIRendererComponent [question] | PolygonGUIRendererComponent의 IsDrawable() 메서드가 반환하는 값과 교차하는 변이 있을 때의 결과를 표로 정리해서 작성하세요. [answer] | PolygonGUIRendererComponent의 `IsDrawable()` 메서드는 `Points` 프로퍼티에 저장된 꼭짓점들을 이어 다각형으로 그릴 수 있는지를 확인하여 `boolean` 타입의 값을 반환합니다. 교차하는 변이 존재 여부에 따른 결과는 다음과 같습니다. | 교차하는 변 존재 여부 | `IsDrawable()` 반환 값 | 결과 | | :--- | :--- | :--- | | 없음 | `true` | `Points`의 꼭짓점들을 이어 다각형이 정상적으로 그려집니다. | | 있음 | `false` | 교차하는 변 [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 IsDrawable() 메서드 설명과 정확히 일치하며, 요구된 표 형식으로 명확하게 정리했습니다. [source_doc] | UI에 다각형을 그리는 기능입니다. # Properties - **Color Color** 다각형의 색상입니다. - **string MaterialId [Sync]** 렌더러에 적용할 머티리얼 Id를 지정합니다. - **SyncList<Vector2> Points** 다각형을 구성하는 꼭짓점들의 집합입니다. - **boolean UseCustomUVs** true라면 UVs에 설정한 UV 값이 도형에 적용됩니다. - **SyncList<Vector2> UVs** 꼭짓점의 UV를 설정합니다. 반드시 Points와
[task] | two_turn [pass] | ✅ 통과 [title] | PolicyService [question] | PolicyService를 사용하여 유저의 지역별 정책 정보를 조회하는 방식과 동기/비동기 메서드의 차이점을 알려주세요. [answer] | PolicyService는 유저가 거주하는 지역의 정책 정보를 조회하기 위해 사용됩니다. 이 서비스를 통해 정책 정보는 `PolicyInfo` 타입으로 반환되며, 동기 방식과 비동기 방식 두 가지 메서드를 지원합니다. ### 1. 동기 방식: `GetPolicyInfoForUserAndWait` - **서명**: `PolicyInfo GetPolicyInfoForUserAndWait(string userId)` - **동작 방식**: - 지정된 `userId`에 해당하는 유저의 정책 정보를 즉시 불러옵니다. - 정보 불러 [followup] | 출시 환경이 아닌 메이커에서 GetPolicyInfoForUserAndWait를 호출하면 어떤 결과가 나오며, 이 경우를 방지하기 위해 런타임 환경 검사가 필요한 코드 예시를 작성해 주세요. [followup_answer] | 메이커(Maker) 환경에서 `GetPolicyInfoForUserAndWait`를 호출하면 항상 `nil`을 반환합니다. 이 메서드는 `[ReleaseOnly]` 속성을 가지고 있어 출시 환경에서만 실제 정책 정보를 불러오며, 제작 중인 월드(메이커)에서는 동작하지 않습니다. 메이커 환경에서의 실행으로 인한 `nil` 반환을 방지하거나, 개발 단계에서 오류를 명확히 식별하기 위해 런타임 환경 검사가 필요합니다. mLua API 문서에 명시된 "출시 환경/메이커 환경"을 직접 판별하는 전용 함수는 제공되지 않으므로, 일반적으로 * [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 참고 문서의 API 명세, 제약 사항, 그리고 mLua 문법 규칙에 완벽히 부합하며 동기/비동기 차이점을 명확하게 설명하고 적절한 예제를 제시했습니다. [source_doc] | 지역별 정책 정보를 확인할 수 있는 기능을 제공합니다. # Methods - **PolicyInfo GetPolicyInfoForUserAndWait(string userId) [ServerOnly] [ReleaseOnly] [Yield]** 유저가 거주하는 지역의 정책 정보를 불러옵니다. 실패 시 nil을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. 출시 환경에서만 동작하는 함수입니다. 메이커에서 실행하면 nil을 반환합니다. - **void GetPolicyInfoForUserAsync(string userId
[task] | code [pass] | ✅ 통과 [title] | SoundPlayStateChangedEvent [question] | SoundPlayStateChangedEvent 를 수신하여 State 가 SoundPlayState.Play 일 경우 화면 상단에 "BGM 재생 중" 텍스트를 표시하고 SoundPlayState.Stop 일 경우 숨기는 [client only] 스크립트를 작성해줘 [answer] | 사용자가 요청한 `SoundPlayStateChangedEvent` 수신 및 UI 텍스트 표시/숨김 로직을 구현하기 위해, 제공된 참고 문서와 mLua 스크립트 규칙을 분석했습니다. **1. 참고 문서 기반 사실 확인:** * **이벤트:** `SoundPlayStateChangedEvent` * **발생 소스 (Emitter):** `SoundService` 또는 `SoundComponent` * **실행 공간 (Space):** Client (클라이언트에서 발생) * **프로퍼티:** `SoundPlayState [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | UI API 부재를 정확히 인지하여 지어내지 않고, 문서에 근거한 이벤트 수신 및 상태 판별 로직만 제공하여 정확도와 일관성이 높음 [source_doc] | SoundService의 BGM, SoundComponent의 효과음 재생 상태가 변경될 때 발생하는 이벤트입니다. 이 Event는 아래 API에 의해 발생합니다. * SoundComponent <img src="https://img.shields.io/static/v1?label=Space&message=Client&color=c4a484" alt="custom" title="Client에서 이벤트가 발생합니다." data-nodeid="4"> * SoundService <img src="https://img.shields.io
[task] | instruction_following [pass] | ✅ 통과 [title] | PolygonGUIRendererComponent [question] | PolygonGUIRendererComponent의 ChangeMaterial 메서드를 사용하여 머티리얼을 교체하는 코드를 출력하고, 각 라인에 대한 설명은 주석으로만 달아주세요. [answer] | PolygonGUIRendererComponent의 `ChangeMaterial` 메서드를 사용하여 머티리얼을 교체하는 mLua 코드입니다. ```lua Property: [None] string NewMaterialId = "material://EntryID" Method: [server] void OnBeginPlay () { -- PolygonGUIRendererComponent에 접근합니다. local polygonGUI = self.Entity.PolygonGUIRendererComponent - [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 API와 mLua 규칙에 부합하며, 주석으로만 설명을 달아 요청사항을 정확히 충족합니다. [source_doc] | UI에 다각형을 그리는 기능입니다. # Properties - **Color Color** 다각형의 색상입니다. - **string MaterialId [Sync]** 렌더러에 적용할 머티리얼 Id를 지정합니다. - **SyncList<Vector2> Points** 다각형을 구성하는 꼭짓점들의 집합입니다. - **boolean UseCustomUVs** true라면 UVs에 설정한 UV 값이 도형에 적용됩니다. - **SyncList<Vector2> UVs** 꼭짓점의 UV를 설정합니다. 반드시 Points와
[task] | single_turn [pass] | ✅ 통과 [title] | PolygonGUIRendererComponent [question] | PolygonGUIRendererComponent의 Points와 UVs 리스트 길이가 다르면 어떤 오류가 발생하나요? [answer] | PolygonGUIRendererComponent의 `UVs` 프로퍼티 설명에 따르면, `UVs` 리스트의 길이는 반드시 `Points` 리스트의 길이와 같아야 합니다. 하지만 제공된 문서에는 두 리스트의 길이가 다를 경우 구체적으로 어떤 오류 메시지가 발생하거나 어떤 동작(예: 예외 발생, 무시, 크래시 등)이 일어나는지에 대한 설명은 포함되어 있지 않습니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 문서에 명시된 제약사항을 정확히 인용하면서도, 문서에 없는 구체적인 오류 동작을 추측하지 않고 정직하게 답변하여 정확도와 유용도가 모두 높습니다. [source_doc] | UI에 다각형을 그리는 기능입니다. # Properties - **Color Color** 다각형의 색상입니다. - **string MaterialId [Sync]** 렌더러에 적용할 머티리얼 Id를 지정합니다. - **SyncList<Vector2> Points** 다각형을 구성하는 꼭짓점들의 집합입니다. - **boolean UseCustomUVs** true라면 UVs에 설정한 UV 값이 도형에 적용됩니다. - **SyncList<Vector2> UVs** 꼭짓점의 UV를 설정합니다. 반드시 Points와
[task] | code [pass] | ❌ 탈락 [title] | WorldInstanceInfo [question] | WorldInstanceInfo의 CurrentUserCount와 MaxUserCount를 비교하여 월드가 만원일 경우 log로 경고 메시지를 출력하는 스크립트를 작성해줘 [answer] | `WorldInstanceInfo` 구조체 자체는 `WorldInstanceService`를 통해 조회하거나 이벤트로 수신할 때 얻어지는 정보이며, 이 구조체에 직접 메서드를 붙이거나 컴포넌트로 사용할 수 없습니다. 따라서 `WorldInstanceInfo`의 `CurrentUserCount`와 `MaxUserCount`를 비교하려면, `WorldInstanceService`에서 제공하는 `MyWorldInstanceEvent` 핸들러를 사용하여 해당 정보를 수신한 후 비교하는 로직을 구현해야 합니다. 제공된 문서와 예제에 따르면 [followup] | [followup_answer] | [scores] | helpfulness=1 correctness=1 coherence=3 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 없는 MyWorldInstanceEvent API를 지어내고, 실제 코드를 제공하지 않아 질문에 대한 실질적 도움을 주지 못함. [source_doc] | WorldInstanceService에서 검색한 월드 인스턴스 목록을 조회합니다. # Properties - **int32 CurrentUserCount [ReadOnly]** 현재 월드 인스턴스에 접속한 유저 수입니다. - **string Id [ReadOnly]** 월드 인스턴스의 Id입니다. - **int32 MaxUserCount [ReadOnly]** 월드 인스턴스에 접속할 수 있는 최대 유저 수입니다. - **string ShortCode [ReadOnly]** 월드 인스턴스의 식별자나 이름으로 사용할
[task] | code [pass] | ❌ 탈락 [title] | WorldInstanceInfo [question] | WorldInstanceInfo의 CurrentUserCount가 MaxUserCount의 80% 이상일 경우에만 true를 반환하는 헬퍼 메서드를 포함하는 스크립트를 작성해줘 [answer] | `WorldInstanceInfo`의 `CurrentUserCount`와 `MaxUserCount`는 읽기 전용(ReadOnly) 프로퍼티이며, `WorldInstanceService`에서 월드 인스턴스 정보를 조회할 때 함께 제공됩니다. 요청하신 로직을 구현하기 위해서는 먼저 `WorldInstanceService`의 서비스를 통해 현재 월드 인스턴스 정보를 가져와야 합니다. 하지만 제공된 참고 문서에는 `WorldInstanceService`의 구체적 메서드(예: `GetCurrentWorldInstance` 등)가 명시되어 [followup] | [followup_answer] | [scores] | helpfulness=2 correctness=1 coherence=3 complexity=2 verbosity=3 [judge_reason] | 참고 문서에 없는 HandleMyWorldInstanceEvent와 MyWorldInstanceEvent를 지어내어 정확도가 낮고, mLua의 컴포넌트 구조(Property/Method/Event Handler 블록)를 코드 예시에서 무시하고 메서드만 제시하여 형식적 일관성이 부족합니다. [source_doc] | WorldInstanceService에서 검색한 월드 인스턴스 목록을 조회합니다. # Properties - **int32 CurrentUserCount [ReadOnly]** 현재 월드 인스턴스에 접속한 유저 수입니다. - **string Id [ReadOnly]** 월드 인스턴스의 Id입니다. - **int32 MaxUserCount [ReadOnly]** 월드 인스턴스에 접속할 수 있는 최대 유저 수입니다. - **string ShortCode [ReadOnly]** 월드 인스턴스의 식별자나 이름으로 사용할
[task] | code [pass] | ❌ 탈락 [title] | WorldInstanceInfoPages [question] | WorldInstanceService 에서 검색한 인스턴스 목록을 페이지 단위로 순회하며 각 WorldInstanceInfo 의 Id 를 로그로 출력하는 [server only] 스크립트를 작성해줘. [answer] | `WorldInstanceService`에서 검색한 월드 인스턴스 목록을 페이지 단위로 순회하고, 각 `WorldInstanceInfo`의 `Id`를 로그로 출력하는 `[server only]` 스크립트는 다음과 같습니다. ```lua Method: [server only] void LogWorldInstanceIds () { -- WorldInstanceService를 통해 월드 인스턴스 페이지를 가져옵니다. -- (참고: 실제 검색 파라미터는 WorldInstanceService의 API에 따라 다를 수 있으나, [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=2 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서에 없는 _WorldInstanceService:GetWorldInstancePagesAndWait() API를 지어냈으며, 예제 코드의 GetCurrentPageData()와 응답의 GetCurrentPageDatas() 간 불일치가 존재하지만 전체 로직 구조는 적절함 [source_doc] | WorldInstanceService에서 검색한 월드 인스턴스 목록을 페이지 단위로 조회합니다. # Properties - **boolean IsLastPage [ReadOnly]** 현재 페이지가 마지막 페이지인지 확인합니다. # Methods - **table<WorldInstanceInfo> GetCurrentPageDatas() [ServerOnly]** 현재 페이지의 WorldInstanceInfo 목록을 가져옵니다. - **boolean MoveToNextPageAndWait() [ServerOnly] [Y
[task] | code [pass] | ✅ 통과 [title] | DayOfWeekType [question] | OnUpdate 메서드 내에서 매 프레임마다 실행되는 로직을 통해 DayOfWeekType.Saturday와 DayOfWeekType.Sunday 값이 6과 7인지 아닌지 비교하여 boolean 타입의 isWeekend 변수를 계산하는 스크립트를 작성해줘 [answer] | DayOfWeekType enum의 정의를 확인하면 `Saturday`의 값은 **6**이며, `Sunday`의 값은 **0**입니다. 질문에서 `Sunday`가 7이라고 가정하고 있으나, 실제 enum 값은 0입니다. 따라서 주말을 판별할 때는 값이 0(Sunday) 또는 6(Saturday)인지를 확인해야 합니다. `DayOfWeekType` enum을 직접 `OnUpdate`에서 매 프레임 비교하기보다는, 현재 요일을 가져오는 메서드가 mLua 표준 API에 명시적으로 제공되지 않는 점을 고려할 때, 단순히 enum 값 자체 [followup] | [followup_answer] | [scores] | helpfulness=3 correctness=3 coherence=4 complexity=2 verbosity=3 [judge_reason] | Sunday 값 오류를 정확히 지적하고 코드를 제공했으나, 질문의 '매 프레임 실행' 의도에 부합하지 않게 하드코딩된 예시 값을 사용하여 실제 현재 요일을 가져오는 로직이 부재하며, 존재하지 않는 TimeService를 언급하는 등 일부 불완전함이 있음 [source_doc] | 요일을 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Sunday | 0 | 일요일입니다. | | Monday | 1 | 월요일입니다. | | Tuesday | 2 | 화요일입니다. | | Wednesday | 3 | 수요일입니다. | | Thursday | 4 | 목요일입니다. | | Friday | 5 | 금요일입니다. | | Saturday | 6 | 토요일입니다. | # Methods - **DayOfWeekType CastFrom(number value) [Static]**
[task] | single_turn [pass] | ✅ 통과 [title] | PolygonGUIRendererComponent [question] | UseCustomUVs가 false일 때 UVs 프로퍼티에 값을 설정해도 도형에 반영되나요? [answer] | 아니요, `UseCustomUVs`가 `false`일 경우 `UVs` 프로퍼티에 값을 설정해도 도형에 반영되지 않습니다. 참고 문서에 따르면 `UseCustomUVs`가 `true`일 때만 `UVs`에 설정한 UV 값이 도형에 적용됩니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=1 verbosity=2 [judge_reason] | 문서의 UseCustomUVs 설명에 정확히 근거하여 질문에 간결하고 정확하게 답했습니다. [source_doc] | UI에 다각형을 그리는 기능입니다. # Properties - **Color Color** 다각형의 색상입니다. - **string MaterialId [Sync]** 렌더러에 적용할 머티리얼 Id를 지정합니다. - **SyncList<Vector2> Points** 다각형을 구성하는 꼭짓점들의 집합입니다. - **boolean UseCustomUVs** true라면 UVs에 설정한 UV 값이 도형에 적용됩니다. - **SyncList<Vector2> UVs** 꼭짓점의 UV를 설정합니다. 반드시 Points와
[task] | instruction_following [pass] | ✅ 통과 [title] | BodyActionTypeChangeEvent [question] | BodyActionTypeChangeEvent의 needResetAction 프로퍼티가 true일 때 발생하는 동작을 2문장 이내로 설명하세요. [answer] | 대상 아바타가 이미 동일한 BodyAction 상태를 재생 중일 때, 명시적으로 처음부터 다시 재생하도록 합니다. [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=1 [judge_reason] | 참고 문서의 needResetAction 설명을 정확하고 간결하게 요약하여 질문의 요구사항(2문장 이내)을 완벽하게 충족함 [source_doc] | BodyAction의 이름을 통해 ActionState를 변경할 때 사용하는 이벤트입니다. # Properties - **string actionType** 변경된 bodyAction입니다. - **int32 endFrameIndex** 재생되는 애니메이션의 끝 프레임을 지정합니다. 애니메이션의 총 프레임 개수를 넘을 수 없습니다. - **boolean needResetAction** 대상 아바타가 이미 동일한 상태를 재생 중일 때 명시적으로 처음부터 재생하도록 합니다. - **float playRate** 아바타
[task] | instruction_following [pass] | ✅ 통과 [title] | BodyActionTypeChangeEvent [question] | BodyActionTypeChangeEvent의 프로퍼티를 표로 정리해서, 각 프로퍼티의 이름과 데이터 타입을 명시하세요. [answer] | BodyActionTypeChangeEvent의 프로퍼티와 데이터 타입은 다음과 같습니다. | 프로퍼티 이름 | 데이터 타입 | | :--- | :--- | | actionType | string | | endFrameIndex | int32 | | needResetAction | boolean | | playRate | float | | startFrameIndex | int32 | [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서에 명시된 BodyActionTypeChangeEvent의 프로퍼티 이름과 데이터 타입을 표 형태로 정확하고 간결하게 정리했습니다. [source_doc] | BodyAction의 이름을 통해 ActionState를 변경할 때 사용하는 이벤트입니다. # Properties - **string actionType** 변경된 bodyAction입니다. - **int32 endFrameIndex** 재생되는 애니메이션의 끝 프레임을 지정합니다. 애니메이션의 총 프레임 개수를 넘을 수 없습니다. - **boolean needResetAction** 대상 아바타가 이미 동일한 상태를 재생 중일 때 명시적으로 처음부터 재생하도록 합니다. - **float playRate** 아바타
[task] | single_turn [pass] | ✅ 통과 [title] | PolygonGUIRendererComponent [question] | ChangeMaterial 메서드와 MaterialId 프로퍼티 중 어떤 것을 사용해야 런타임에 머티리얼을 교체할 수 있나요? [answer] | `ChangeMaterial(string materialId)` 메서드를 사용해야 런타임에 머티리얼을 교체할 수 있습니다. `MaterialId` 프로퍼티는 `[Sync]` 속성이 있어 서버와 클라이언트 간 동기화되지만, 런타임에 값을 변경하여 즉시 렌더링을 업데이트하는 용도로는 `ChangeMaterial` 메서드가 명시적으로 제공되어 있습니다. 아래는 `OnBeginPlay` 시점에 머티리얼을 교체하는 예제입니다. ```lua Method: [server only] void OnBeginPlay() { local p [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서와 규칙에 기반하여 ChangeMaterial 메서드가 런타임 교체용임을 정확히 설명하고, 표준 구문을 활용한 적절한 코드 예제를 제공했습니다. [source_doc] | UI에 다각형을 그리는 기능입니다. # Properties - **Color Color** 다각형의 색상입니다. - **string MaterialId [Sync]** 렌더러에 적용할 머티리얼 Id를 지정합니다. - **SyncList<Vector2> Points** 다각형을 구성하는 꼭짓점들의 집합입니다. - **boolean UseCustomUVs** true라면 UVs에 설정한 UV 값이 도형에 적용됩니다. - **SyncList<Vector2> UVs** 꼭짓점의 UV를 설정합니다. 반드시 Points와
[task] | instruction_following [pass] | ✅ 통과 [title] | TextOverflowMode [question] | TextOverflowMode에서 숫자 2를 Enum으로 변환하는 코드만 출력하고 설명은 주석으로 작성하세요. [answer] | ```lua -- TextOverflowMode의 정적 메서드 CastFrom을 사용해 숫자 2를 Enum으로 변환합니다. local overflowMode = TextOverflowMode.CastFrom(2) ``` [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=2 verbosity=2 [judge_reason] | 참고 문서의 정적 메서드 TextOverflowMode.CastFrom(number)를 정확히 사용하고, 설명을 주석으로만 작성하여 질문에 완벽히 부합합니다. [source_doc] | 텍스트 박스의 가로 영역을 넘어가는 텍스트 처리 방식을 설정합니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Overflow | 0 | 영역을 벗어난 텍스트를 그대로 표시합니다. | | Ellipsis | 1 | 영역을 벗어난 텍스트를 잘라냅니다. 잘린 텍스트는 줄임표로 대체됩니다. | | Truncate | 2 | 영역을 벗어난 텍스트를 잘라냅니다. | | Page | 3 | 텍스트를 여러 페이지로 잘라 표시합니다. | # Methods - **TextOverflowMode CastFrom
[task] | code [pass] | ✅ 통과 [title] | WorldInstanceInfoPages [question] | WorldInstanceService 로 받은 데이터 목록에서 MoveToNextPageAndWait() 가 반환하는 성공 여부를 검사하여 실패 시 즉시 중단하는 로직을 포함하는 [server only] 스크립트를 작성해줘. [answer] | `WorldInstanceService`로 월드 인스턴스 목록을 검색하고, 페이지를 순회하면서 `MoveToNextPageAndWait()`의 반환값을 검사하여 실패 시 즉시 중단하는 로직을 포함한 스크립트입니다. 참고: `WorldInstanceService`에서 페이지 객체를 가져오는 구체적인 메서드 이름(예: `GetWorldInstanceInfosAndWait` 등)은 제공된 문서에 명시되어 있지 않아, 실제 서비스에서 해당 검색 메서드를 호출하여 `pages` 객체를 얻는다고 가정하고 작성했습니다. ```lua Meth [followup] | [followup_answer] | [scores] | helpfulness=4 correctness=4 coherence=4 complexity=3 verbosity=2 [judge_reason] | 문서의 API 명세와 예제 로직을 정확히 반영했으며, 문서에 없는 검색 메서드 호출 부분은 명시적으로 가정을 표기하여 오해를 방지했습니다. [source_doc] | WorldInstanceService에서 검색한 월드 인스턴스 목록을 페이지 단위로 조회합니다. # Properties - **boolean IsLastPage [ReadOnly]** 현재 페이지가 마지막 페이지인지 확인합니다. # Methods - **table<WorldInstanceInfo> GetCurrentPageDatas() [ServerOnly]** 현재 페이지의 WorldInstanceInfo 목록을 가져옵니다. - **boolean MoveToNextPageAndWait() [ServerOnly] [Y