지엔조이
라그나로크 라그나로크제로 모바일 게임 이벤트 G캐시 고객센터 로그인
본문 바로가기

라그나로크Z

  • 가정의 달 이벤트
  • 4월 봄꽃 패션스톤II
  • 라그나로크 x 한맥 x 먼치 콜라보 이벤트
  • 에피소드 3 PART 3 업데이트
  • 2025봄꽃축제
  • 에피소드 3 PART 3 업데이트 기념 이벤트
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6

커뮤니티COMMUNITY

자유게시판

  • [기획안] GM 우클릭 퀴즈 시스템 ? 자동사냥 판별 기능
  • 2025.04.16 샤코。 62
  • ▷기획 목적

    자동사냥 유저 판별을 위해 운영자(gm)가 유저를 우클릭하면 퀴즈를 띄워 응답 여부로 자동 여부를 식별하는 기능. 탐지 시스템이 부족한 상황에서 최소한의 수동 도구를 제공.

    ▷핵심 기능

    gm이 유저 우클릭 → ‘퀴즈 출제’ 선택

    유저 화면에 3지선다 or ox 퀴즈 팝업

    제한 시간 60초 내 응답

    무응답 또는 오답 반복 시 ‘의심 로그’ 자동 기록

    반복시 격리맵 이동 or gm 수동 제재 가능

    ▷기술 요건

    클라이언트: 퀘스트창 혹은 별도 팝업 ui 사용

    서버: 응답 여부, 시간, 결과 자동 로그 저장

    오남용 방지: 동일 대상 하루 1회 제한, 운영자 로그 자동 기록

    ▷적용 효과

    봇은 팝업에 대응 불가 → 명확한 분리 가능

    유저는 “운영자가 감시 중”이라는 경각심 형성

    사람은 반응하고, 자동은 무반응 → 판별 기준 명확

    최소 개발로 최대 실효 (1~2주 내 기능 완성 가능)

    ▷추가 제안

    자동사냥 계정이 템을 본캐로 옮겼을 경우, 본계정도 정지

    공지사항에 본캐 명시 → 커뮤니티 내 자정 효과 유도

    격리맵 활용으로 리스크 없는 정밀 조사 가능

    ▷결론

    복잡한 기술 없이도 자동사냥 대응 가능.

    gm에게 현실적인 무기 제공.

    공정성과 신뢰 회복의 시작이 될 수 있음.

    참고용 퀴즈 판별 시스템 소스파일

    ?
    // 1. GM 명령어 (@quizcheck)
    ACMD_FUNC(quizcheck) {
    struct map_session_data* t_sd = map_nick2sd(message);
    if (!t_sd) return -1;

    clif_scriptmes(t_sd->fd, t_sd->bl.id, "포링의 색깔은?\n1. 빨강\n2. 분홍\n3. 파랑");
    t_sd->quiz_check = true;
    t_sd->quiz_start = gettick();
    return 0;
    }

    // 2. 응답 체크 (퀘스트창 대신 NPC 응답 사용 가능)
    void handle_quiz_response(struct map_session_data* sd, int answer) {
    if (!sd->quiz_check) return;

    if (answer == 2) { // 정답
    sd->quiz_check = false;
    } else {
    sd->quiz_fail++;
    if (sd->quiz_fail >= 3)
    pc_setpos(sd, "quiz_isolation", 50, 50, CLR_TELEPORT);
    }
    }

    // 3. 무응답 감지 (게임 루프에 체크 삽입)
    void check_quiz_timeout(struct map_session_data* sd) {
    if (sd->quiz_check && DIFF_TICK(gettick(), sd->quiz_start) > 60000) {
    sd->quiz_check = false;
    pc_setpos(sd, "quiz_isolation", 50, 50, CLR_TELEPORT);
    }
    }

윗글아랫글 목록 신고하기
댓글 등록
0개의 댓글이 있습니다.