2026-09-13 함께 즐기는 게임·IT·AI 커뮤니티
📋 Changelog

업데이트 로그

GAMEBOY.KR의 모든 변경사항을 투명하게 기록합니다

v3.75.0 현재 버전
262 릴리스 수
877 변경 항목
1주 전 마지막 업데이트
181~195 / 총 273개 릴리스 · 페이지 13/19
v3.18.1

🆕 신규 기능 3

  • MC Management 프론트엔드 개발 완료 — /mc-server/ 신청 페이지 구현 — 마인크래프트 서버 신청 관리 플러그인(gameboy-mc-management)의 프론트엔드 전체 개발 완료. ① URL 라우팅: /mc-server/ 경로 WordPress rewrite rule + query_vars 등록 ② 템플릿 렌더링: 커뮤니티 보드와 동일한 template_redirect + get_header()/include/get_footer()/exit 패턴 적용(기존 template_include 방식에서 변경 — 커스텀 query var 페이지에서 안정성 확보) ③ 신청서 목록 페이지: 접수 중/마감 상태 뱃지, 서버명, 마감일, 신청 인원 표시 ④ 개별 신청 폼: Google Forms 스타일 다크 카드 UI, 텍스트/textarea/select/radio/checkbox/minecraft_id 필드 타입 지원 ⑤ 로그인 필수: 비로그인 시 로그인 페이지로 리다이렉트 ⑥ 마인크래프트 ID 자동 입력: user_meta minecraft_id 연동(마이페이지에서 자동 입력됨 표시) ⑦ AJAX 제출: 중복 신청 방지, 60초 rate limit, 필수 필드 검증, MC ID 정규식 검증(영문/숫자/밑줄 3~16자), 제출 데이터 wp_gbmcm_submissions + wp_gbmcm_submission_data 테이블 저장 ⑧ 프론트엔드 CSS/JS: frontend/css/mc-forms.css (보라 액센트 다크 테마, 모바일 반응형) + frontend/js/mc-forms.js (AJAX 제출, 성공/실패 메시지 UI) ⑨ 푸터 링크: "참여하기" 섹션에 ⛏️ MC 서버 + 시즌 뱃지 자동 삽입 ⑩ 테스트 신청서 생성: "시즌 1 화이트리스트 신청" (서버: 새벽야생, 최대 20명, 마감: 2026-04-01, 필드 4개) — E2E 테스트 통과
  • SCP 디렉토리 중첩 문제 해결 — SCP 복사 시 gameboy-mc-management/gameboy-mc-management/frontend/ 이중 디렉토리 발생 → frontend/ 디렉토리를 올바른 위치로 이동 후 중첩 디렉토리 삭제
  • Nginx FastCGI 캐시 퍼지/mc-server/ URL의 이전 404 응답이 캐시되어 페이지 미표시 → 캐시 전체 퍼지 + nginx reload로 해결
v3.18.0

🔧 개선 7

  • 사이트 전역 SEO 감사 — 6개 핵심 이슈 수정 — 전체 사이트 기술 SEO 전수 감사 실시. 메타 태그, 구조화 데이터, 이미지 최적화 등 6건의 이슈를 발견하여 수정 완료.
  • OG 이미지 1200×630 규격 적용 — 기존 640×640 정사각형 OG 이미지를 SNS 공유에 최적화된 1200×630 와이드 이미지로 교체. 카카오톡, 페이스북, X(Twitter) 링크 공유 시 카드 미리보기가 정상 표시됩니다.
  • 개별 기사 article:tag 3배 중복 제거 — 각 기사의 태그 메타가 3번씩 중복 출력되던 문제 수정. Rank Math에서 통합 관리하도록 중복 소스 제거.
  • 구조화 데이터 Breadcrumb "Home" → "홈" — 검색 결과 Breadcrumb 표시에서 영문 "Home" 대신 한국어 "홈"으로 올바르게 표시됩니다.
  • 리뷰 기사 게임 이름 깨짐 수정 — 리뷰 스키마의 게임 제목이 한글 멀티바이트 문자에서 깨지던 문제 수정. 모든 리뷰 기사에서 게임 이름이 정상 표시됩니다.
  • 기사 스키마에 글자 수(wordCount) 추가 — Google News 최적화를 위해 모든 기사의 구조화 데이터에 글자 수 정보 자동 삽입.
  • 매거진 H1 태그 SEO 개선 — 일간 매거진 페이지의 H1 태그에 날짜별 고유 한국어 제목 추가. 시각적 디자인은 유지하면서 검색엔진 최적화 강화.
v3.17.9

🔧 개선 4

  • 방송 채널 수탉 페이지 SEO 전수 감사 + 7건 수정https://gameboy.kr/streamer/sutak/ 페이지 SEO 전수 감사 실시. 7건의 기술적 SEO 문제를 발견하여 전량 수정 완료. ① 중복 Canonical URL 해소이 2개(홈페이지+스트리머 페이지) 출력되어 Google이 잘못된 canonical을 선택할 위험. 테마 gamernews_seo_is_handled() 함수에 /streamer/ 경로 감지 추가하여 사이트 전체 SEO 엔진이 방송 채널 페이지에서 실행되지 않도록 수정. ② 중복 Robots 메타 해소 — Rank Math + Streamer Hub 플러그인 각각 출력. disableRankMathOnStreamerPage()에 Rank Math robots/canonical 비활성화 추가. ③ 중복 Description/Keywords 메타 해소 — ①번 수정으로 동시 해결. ④ 외부 링크 보안 강화target="_blank" 69개 링크에 rel="noopener noreferrer" 누락(탭내빙 취약점). Streamer Hub 플러그인 내 11개소 일괄 추가. ⑤ 이미지 접근성 개선 — 트렌딩 게임 썸네일 31건의 alt="" 빈 속성을 게임 제목으로 교체 + loading="lazy" 추가. ⑥ 잘못된 Naver 인증 메타 제거naver-site-verification 값이 gameboy-streamer-hub(가짜 값)으로 설정되어 있어 삭제. ⑦ Rank Math 충돌 완전 해소 — 기존 OG/JSON-LD 비활성화에 더해 robots, canonical 출력도 비활성화하여 Streamer Hub 플러그인의 자체 SEO와 완전 분리
  • 커뮤니티 보드 전체 SEO 전수 감사 + 3건 수정/board/ 하위 12개 페이지(메인, 자유게시판, 베스트, 카지노, 배틀, 퀴즈, 랭킹, 데일리 룰렛, 파이오니어, 개별 게시글 등) 전수 감사 실시. ① 파이오니어 페이지 SEO 미구현 (Critical) — /board/casino/pioneers/ 페이지에 전용 SEO 데이터가 없어 Title이 "커뮤니티"(제네릭), Canonical/OG URL이 /board/(홈으로 잘못 지정)으로 출력. seo.phpcasino_pioneers 전용 case 추가하여 제목("🏆 최초 기록자 명예의 전당"), 설명, canonical, keywords, OG 이미지, JSON-LD(WebPage) 완비. ② 랭킹 페이지 이미지 alt 누락 21건ranking.php 내 MVP 아바타 + 5개 탭 랭킹 아바타의 alt="" 빈 속성 6건을 사용자 닉네임으로 교체하여 접근성 및 이미지 SEO 개선. ③ 가짜 Naver 인증 메타 태그 제거seo.php에서 naver-site-verificationgameboy-kr-community(플레이스홀더) 출력 → 삭제 (방송 채널 페이지와 동일한 패턴)
  • 방송 채널 랭킹 페이지(/streamers/) SEO 5건 수정 — 방송 채널 랭킹 페이지 전수 감사 + 중복 메타 태그 근본 해결. ① 중복 Keywords 메타 태그 해소gamernews_seo_is_handled() 함수가 /streamer/(개별 방송 채널)만 감지하고 /streamers/(랭킹 페이지)를 미감지하여 sitewide SEO 엔진이 이중 실행됨. /streamers/ 경로 감지 추가. ② 중복 JSON-LD 해소 — 동일 원인으로 CollectionPage+ItemList JSON-LD가 index.php와 sitewide SEO 양쪽에서 출력(5-6블록)→3블록으로 정상화. ③ Canonical URL 누락 수정 (Critical) — Rank Math가 standalone PHP 페이지에서 canonical 출력 실패하고, 기존 ob_start/ob_end_flush 패턴도 매칭 실패하여 canonical 0개 상태. 불안정한 ob_start 패턴을 제거하고 커스텀 SEO 훅에서 직접 출력으로 교체. ④ Dublin Core 중복 4건 제거 — sitewide SEO 엔진 스킵으로 DC.title/DC.description/DC.language/DC.publisher 자동 해소. ⑤ 외부 링크 보안 강화 — LIVE/채널 보기 target="_blank" 100건에 rel="noopener noreferrer" 일괄 추가(HTML 템플릿 2개소 + AJAX JS 동적 생성 2개소)
  • 수다 채널 → GAMEBOY.KR 외부 채널 섹션 정리 (9개 → 3개) — 푸터 하단 gb-suda-channels-section 채널 카드를 9개에서 3개로 정리. 섹션 제목 "수다 채널" → "GAMEBOY.KR 외부 채널"로 변경, 부제 "수다와 소통하세요" → "GAMEBOY.KR과 소통하세요"로 변경. 유지: ① GAMEBOY.KR 디스코드(커뮤니티 & 실시간 소통), ② GAMEBOY.KR 이메일(문의 & 협업 제안), ③ 카카오톡 오픈채팅(태그 "소통과 송금 기능으로 후원"으로 변경). 제거: 수다 유튜브, 수다 치지직, 수다위키, 수다 인스타그램, 수다 X(Twitter), 수다 GitHub. 제거된 채널의 CSS(색상, glow, hover) + .gb-x-logo 클래스 일괄 삭제. 데스크톱/모바일 검증 완료
v3.17.8

🐛 버그 수정 4

  • SteelSeries Arctis Nova Pro Wireless 딜 기사 원문 대비 7건 오류 수정 (Post #107259) — IGN 원문(Eric Song)과 대조하여 발견된 오류 일괄 수정. ① IGN CDN 제품 이미지 2장(PS5/PC 화이트 에디션, Xbox/PS5/PC 블랙 에디션) 삽입. ② 원문 기자명(Eric Song) 출처에 추가. ③ 하이퍼링크 5건(best gaming headsets 가이드, Nova Elite 제품, best wireless gaming headset 가이드, WC Freeze 젤 이어패드, Arctis Nova Pro 리뷰 by Kevin Lee) 삽입. ④ AI 환각 섹션 "한국 게이머를 위한 궁극의 오디오 솔루션인가?" 삭제. ⑤ AI 환각 댓글 유도 문구 삭제. ⑥ Eric Song 에디터 추천(개인 사용 경험 + WC Freeze 이어패드 업그레이드 팁) 섹션 추가. ⑦ DB source_domain NULL → www.ign.com 보정
  • 엑스박스 AI 코파일럿 기사 이미지 깨짐 + 원문 대비 5건 오류 수정 (Post #107262) — The Verge 원문(Emma Roth)과 대조하여 발견된 오류 일괄 수정. ① 깨진 이미지(로컬 파일 참조) → Verge CDN URL(platform.theverge.com)로 교체하여 Xbox Series X 화이트 에디션 사진 정상 표시. ② 원문 기자명(Emma Roth) 출처에 추가. ③ 하이퍼링크 9건(GamesRadar 보도, 게이밍 코파일럿 소개, Windows 11 베타, Xbox Ally 핸드헬드, Xbox 공식 페이지, Project Helix, PC 게임 플레이, Phil Spencer 퇴임, Asha Sharma CEO 선임) 삽입. ④ AI 환각 섹션 2건("한국 게이머들이 주목할 AI 비서의 잠재력과 도전 과제", "경쟁 구도 — 소니 플레이스테이션/닌텐도 스위치 비교") 삭제. ⑤ 발췌문(excerpt) 정확한 요약으로 교체
  • 마리오 + 래비드 스파크 오브 호프 기사 원문 대비 10건 오류 수정 (Post #107290) — Game Rant 원문(Aleksandra Kubas)과 대조하여 발견된 오류 일괄 수정. ① 원문 기자명(Aleksandra Kubas) 출처에 추가. ② takkk.jpg 콜라주 스크린샷 삽입. ③ 하이퍼링크 6건(닌텐도 eShop 스토어, OpenCritic 점수, 전략 RPG 랭킹, 스위치 2 출시 예정작, Rayman DLC 기사, 판매량 반등 기사) 삽입. ④ AI 환각 텍스트 3건("한국 게이머들은 자국 eShop에서 할인 여부를 확인해야", "카툰 폭력으로 E10+ 등급", "스컬 앤 본즈 연이은 출시 연기") 삭제. ⑤ AI 환각이 포함된 발췌문(excerpt) 정확한 요약으로 교체. ⑥ DB body_text 630자→3,793자 재추출, body_images/body_videos NULL → 정상 데이터 보정
  • Genesis Relic 기사 원문 대비 11건 오류 수정 (Post #107293) — IndieDB 원문(LiquidMeow)과 대조하여 발견된 오류 일괄 수정. ① 원문 기자명(LiquidMeow) 출처에 추가. ② 공식 YouTube 출시 트레일러 삽입. ③ Wishlist Actions 현황 차트 + Steam Deck Playable 등급 배지 이미지 2장 삽입. ④ "완벽 호환" 오역 → "Playable" 등급으로 정정(원문: 키보드 필요 가능성, 작은 텍스트 안내). ⑤ 2인 개발팀(2년 개발) 정보 추가. ⑥ 15% 출시 할인 $3.39 가격 정보 추가. ⑦ 에디터 기능(플레이어 커스텀 콘텐츠) 추가. ⑧ AI 환각 텍스트 3건(마인크래프트, 쿠키 클리커, 유니버설 페이퍼클립스 비교) 삭제. ⑨ AI 환각 섹션(한국 게이머 시장 분석) 삭제. ⑩ Steam 스토어 + IndieDB 게임 페이지 링크 삽입. ⑪ DB body_text/images/videos/source_domain/author 전부 NULL → 정상 데이터 보정

🔧 개선 5

  • 수다 채널 → GAMEBOY.KR 외부 채널 섹션 정리 (9개 → 3개) — 푸터 하단 gb-suda-channels-section 채널 카드를 9개에서 3개로 정리. 섹션 제목 "수다 채널" → "GAMEBOY.KR 외부 채널"로 변경, 부제 "수다와 소통하세요" → "GAMEBOY.KR과 소통하세요"로 변경. 유지: ① GAMEBOY.KR 디스코드(커뮤니티 & 실시간 소통), ② GAMEBOY.KR 이메일(문의 & 협업 제안), ③ 카카오톡 오픈채팅(태그 "소통과 송금 기능으로 후원"으로 변경). 제거: 수다 유튜브, 수다 치지직, 수다위키, 수다 인스타그램, 수다 X(Twitter), 수다 GitHub. 제거된 채널의 CSS(색상, glow, hover) + .gb-x-logo 클래스 일괄 삭제. 데스크톱/모바일 검증 완료
  • 뉴스 미디어 수집 엔진 v4.9.9 — IGN processedHtml 인라인 이미지 추출 신설(Step ④-0.5). IGN 딜/커머스 기사는 제품 이미지를 processedHtml 내 태그로 삽입하지만, 기존에는 feedImage(대표 이미지 1장)만 추출하여 다중 제품 이미지가 누락됨. processedHtml에서 태그를 직접 파싱하여 문맥 순서대로 이미지를 추출하고, 트래킹 픽셀(width=0|1), 아바타, 로고, 광고 이미지를 자동 필터링. ignimgs.com 외 외부 CDN 이미지(Amazon 등)도 수집 대상에 포함
  • 뉴스 미디어 수집 엔진 v4.9.8 — Vox Media(The Verge, Polygon, SB Nation) CDN 이미지 고해상도 변환 지원. isVoxMediaDomain() 4개 Vox Media 도메인 자동 인식. normalizeVoxMediaImageUrl() platform.theverge.com CDN에서 crop 파라미터 제거 + w=2400 + quality=90 적용하여 원본 비율 고해상도 이미지 자동 업그레이드. gn_source_profiles에 www.theverge.com 프로필 추가(body_selector: .duet--article--article-body-component, remove_selectors: .duet--article--related, .duet--article--share-buttons 등 7개)
  • 뉴스 미디어 수집 엔진 v4.9.7 — SVG 로고/아이콘 이미지 필터링 강화. Valnet CMS(GameRant 등)에서 본문 이미지 수집 시 사이트 로고 SVG 파일(gr-logo-icon-colored-light.svg, gr-db-logo-icon-colored-dark.svg)이 body_images에 혼입되는 노이즈 문제 해결. isIgnoredImage()logo-icon, /assets/images/.*logo, .svg$ 3개 패턴 추가. CLI 배너 버전 표시 v3.8→v4.9.7 동기화
  • 뉴스 미디어 수집 엔진 v4.9.6 — IndieDB, ModDB(DBolical 계열) 2개 사이트를 cURL 차단 도메인 목록에 추가. 해당 사이트는 Cloudflare/Anti-bot 보호로 cURL 요청에 403을 반환하여 불필요한 15초 타임아웃 대기가 발생하던 문제 해결. 향후 IndieDB/ModDB RSS 수집 시 스크래핑 시도를 즉시 건너뛰어 수집 속도 향상
v3.17.7

🐛 버그 수정 1

  • 아크 레이더스 기사 원문 대비 6건 오류 수정 (Post #106979) — GamesIndustry.biz 원문과 대조하여 발견된 오류 일괄 수정. ① 원문 기자명(Alex Forbes-Calvin) 출처에 추가. ② Patrick Söderlund 초상사진 + Arc Raiders 게임 스크린샷 3장(총 4장) 삽입. ③ Marathon 비교 오역 수정(원문: "마라톤이 아크 레이더스보다 하드코어" → 기존 번역이 반대로 되어 있었음). ④ 원문 하이퍼링크 6건(게임 페이지, Nexon 매출 보고서, BF6 인원 감축/판매량, Marathon, YouTube Pachter 인터뷰) 삽입. ⑤ DB 원본 author /u/Iggy_Slayer(Reddit 유저명) → Alex Forbes-Calvin(원문 기자) 보정. ⑥ DB 원본 body_images NULL → 4개 이미지 보정

🔧 개선 1

  • 뉴스 미디어 수집 엔진 v4.9.5 — GamesIndustry.biz를 Gamer Network 도메인 목록에 추가하여 향후 해당 사이트 기사의 본문 이미지(assetsio.gnwcdn.com CDN)가 자동으로 고해상도(width=1280) 변환 및 갤러리 이미지 추출 대상에 포함되도록 개선. 기존에 Future PLC 주석으로 잘못 분류되어 있던 것도 Gamer Network(ReedPop/IGN Entertainment) 소속으로 정정
v3.17.6

🐛 버그 수정 1

  • 🚨 MC 서버 제어 패널 — 서버 간 SSH 포트 공유 치명적 버그 수정 — 마인크래프트 서버 설정을 수정하면 다른 서버의 SSH 포트까지 함께 변경되는 치명적인 버그 수정. 근본 원인: 서버 수정 시 SSH 포트와 RCON 포트가 현재 입력된 값으로 항상 덮어쓰기되어, 이전에 열었던 다른 서버의 입력값이 잔존한 채 저장됨. 수정 모달이 기존 서버 데이터를 불러오지 않아 빈 폼이 기본값(22)으로 표시되면서 실제 포트(예: 9022)가 22로 덮어쓰기되는 문제 포함

🔧 개선 2

  • MC 서버 수정 모달 데이터 자동 로드 — 서버 수정 시 기존에 저장된 서버 정보(SSH 호스트, SSH 포트, SSH 사용자, SSH 키 경로, RCON 포트, 타임아웃)가 자동으로 폼에 채워져 표시됩니다. 이전에는 빈 폼이 열려 모든 정보를 다시 입력해야 했습니다
  • MC 서버 제어 패널 v1.2.0 업그레이드 — 서버별 독립 데이터 저장 보장, 수정 모달 폼 초기화 로직 분리, 포트/타임아웃 필드 조건부 업데이트로 데이터 무결성 강화
v3.17.5

🐛 버그 수정 1

  • 🚨 전체 사이트 긴급 복구 (약 14분 장애) — gameboy.kr, sudapeople.tv 등 전체 사이트가 접속 불가한 장애 발생 및 복구 완료. 근본 원인: 레거시 사이트의 DB 테이블이 손상(crashed)되어, 이를 조회하는 PHP 요청이 무한 대기 → 웹 서버 처리 워커 전체 포화(50/50) → 모든 사이트 동시 다운. DB 테이블 복구(REPAIR TABLE) 후 전체 서비스 정상화

성능 4

  • PHP 워커 포화 방지 3중 방어 구축 — 동일 장애 재발을 원천 차단하는 3가지 방어 조치 적용:
  • ① 느린 요청 자동 종료 시간 단축 (5분 → 30초) — 장시간 응답 없는 요청이 워커를 점유하는 시간 대폭 축소
  • ② 최대 워커 수 증가 (50 → 70) — DB 지연 시에도 다른 요청을 처리할 여유 워커 확보
  • ③ 관리자 페이지 접속 속도 제한 추가 — 브라우저 자동 재시도 폭주로 인한 워커 재포화 방지
v3.17.4

📌 기타 6

  • 카지노 허브 페이지 리브랜딩 완료 — 타이틀 "포인트 카지노"→"골드 카지노", 서브타이틀 "포인트를 걸고"→"골드를 걸고", 안전장치 안내 "가상 포인트"→"가상 골드" (casino.php 템플릿 4건)
  • 더블 오어 낫싱 리브랜딩 — 규칙 설명 "적립된 포인트 전부 잃음"→"골드 전부 잃음", "적립 포인트를 확정"→"적립 골드를 확정" (double-or-nothing.php 2건)
  • cx-system.js 구걸 수락 다이얼로그 P→G — 수락 확인 메시지 "P (내 포인트에서 차감)"→"G (내 골드에서 차감)", 버튼 텍스트 P→G (3건)
  • 관리자 구걸 시스템 페이지(admin/beg.php) 전면 리브랜딩 — 탭 이름, 싱크 집계 헤더, 비용 단위(P→G), 골드 부자 목록/표시/설정 라벨, 전체기록 비용 단위 등 12건 일괄 수정
  • 코드 내 주석·로그 메시지 전수 통일 (40건+) — gameboy-community-board.php(20건), casino.php(6건), beg-system.php(8건), point-system.php(6건), battle-ai.php(3건), content-feed.php(1건), quiz-system.php(1건), board.js(1건), cron-penalty-check.php(3건) 등 모든 "포인트"→"골드", "P"→"G" 주석 및 gb_add_point() 사유 텍스트 통일
  • wp-admin 대시보드 위젯(dashboard-widgets.php) 및 마이페이지(page-mypage.php) — 원격→로컬 동기화로 gb_total_gold 메타 키 사용 확인

🔧 개선 3

  • 원격 서버 전수 grep: "포인트" 잔여 0건, "gb_total_points" 실 코드 참조 0건 (주석·마이그레이션 스크립트만 보존)
  • 데스크톱/모바일 양쪽 라이브 검증: gn-gold-badge = casino-balance = gbb-pt-value = 214,999G
  • PHP-FPM + Nginx 캐시 완전 퍼지 후 확인
v3.17.3

🐛 버그 수정 2

  • 🚨 카지노/커뮤니티 골드 잔액 불일치 긴급 수정 — 상단 NavBar 골드 배지(214,999G), 카지노 잔액(124,547G), CX 스탯바(0G)가 각각 다른 값을 표시하던 심각한 불일치 버그 수정. 근본 원인: 골드 리브랜딩(v3.13.0)에서 출석 플러그인의 메타 키만 gb_total_pointsgb_total_gold로 마이그레이션 완료됐으나, 카지노·커뮤니티 보드 플러그인은 구 메타 키 참조가 미수정 상태. CX 스탯바는 정의되지 않은 함수를 호출하여 항상 0 반환. 수정 8건: ① casino.php getBalance() 메타 키 통일 ② point-system.php fallback 메타 키 통일 ③ point-system.php gbb_get_points() 메타 키 통일 ④ beg-system.php 포인트 부자 쿼리 메타 키 통일 ⑤ beg-system.php 에러 메시지 P→G ⑥ casino.php 더블다운 에러 P→G ⑦ cx-system.js 카지노 잔액 P→G ⑧ top-nav.php CX 스탯바 미존재 함수→실존 함수 교체
  • beg-system.php 골드 리브랜딩 잔여 P→G 수정 3건 — 구걸 수락 시 차감 메시지, 포인트 부족 에러 2곳에서 P→G + 포인트→골드 표기 변경
v3.17.2

🐛 버그 수정 2

  • The 7th Guest 리메이크 기사 누락 콘텐츠 복원 — Nintendo Life 원문에 있던 공식 YouTube 트레일러, 본문 스크린샷 4장이 미수집되어 누락되었던 기사에 원본 미디어 삽입. 출처 기자명(Ollie Reynolds) 추가, Push Square VR 리뷰 링크 및 25주년 리마스터 게임 페이지 링크 삽입. 원문에 없는 AI 환각 텍스트(헤르츠/반도 게임 언급) 삭제
  • 배틀필드 6 무료 체험 기사 전면 재수정 — VG247 원문에 없는 AI 날조 섹션 3개(한국 게이머 전술 분석, 배틀필드 시리즈 역사, 콜 오브 듀티 비교)를 전량 삭제하고 원문 기반으로 재구성. 공식 YouTube 트레일러(Season 2 Free Trial Week), Hagental Base 맵 스크린샷, 출처 기자명(Sherif Saed) 추가. Battlefield Redsec 하이퍼링크 삽입

🔧 개선 1

  • 뉴스 미디어 수집 엔진 v4.9.4 — Nintendo Life, Push Square, Pure Xbox, Time Extension 등 Hookshot CMS 계열 4개 사이트에서 본문 이미지가 저해상도 썸네일(445×245px)로 수집되던 문제 해결. 이미지 URL의 크기 지시자를 자동으로 원본 크기(large)로 변환하여 고해상도 이미지 수집 보장
v3.17.1

🐛 버그 수정 1

  • Cursed Words 기사 누락 콘텐츠 복원 — PCGamesN 원문에 있던 게임 보드 스크린샷, 인게임 상점 스크린샷 2장이 미수집되어 누락되었던 기사에 원본 이미지 삽입. 출처 기자명(Paul Kelly) 추가, Steam 데모 링크 및 Slay the Spire 2 Steam 링크 삽입

🔧 개선 2

  • 뉴스 미디어 수집 엔진 v4.9.3 — PCGamesN, WargamerN, TheLoadout, PocketTactics 등 Network N Media 산하 10개 게임 매체 자동 인식 추가. 갤러리 이미지 원본 크기 자동 추출 및 광고 노이즈 필터링 8개 패턴 추가
  • 업데이트 로그 보안 정제 — 기존 업데이트 기록에 포함되어 있던 내부 구현 상세(파일 경로, 함수명, DB 스키마 등)를 일반적 설명으로 교체하여 보안 강화. 업데이트 기록의 내용과 가독성은 동일하게 유지
v3.17.0

🐛 버그 수정 18

  • 더블 오어 낫싱 연승 축하 효과 미작동 수정 — 더블 오어 낫싱(및 하이로우)에서 cashout 시 연승 신기록 축하 효과(불꽃놀이/신기록 오버레이)가 전혀 작동하지 않던 버그 수정. 근본 원인: 서버 응답에서 response.data.streak(인게임 연속 성공 횟수, 정수)와 response.data.win_streak(연승 시스템 데이터 객체)가 공존하는데, JS의 streak || win_streak 평가에서 정수 1이 truthy이므로 객체가 영영 사용되지 않음. streakData = 1streakData.is_new_record = undefined → 축하 효과 조건 영원히 불성립. win_streak 객체를 우선 참조하도록 ajaxCompletehandleStreakResult 2곳 수정
  • 더블 오어 낫싱 cashout 시 G 배지 누락 수정 — 연승 업데이트 함수 호출에서 $actual_배팅 금액 파라미터가 누락되어 cashout 시 마지막 배팅 필드가 0으로 저장되던 버그 수정
  • 더블 오어 낫싱 P→G 잔여 표기 9건 수정 — JS(7건): 0P0G, +XP+XG, -XP 잃음-XG 잃음, +XP 확정+XG 확정. PHP 템플릿(2건): 현재 적립·다음 성공 시 0P0G
  • 더블 오어 낫싱 명예의 전당 G 배지 미표시 수정 — 더블 게임의 연승 기록·최초 기록자 명예의 전당에서 골드(G) 배팅 배지가 표시되지 않던 문제 수정. 원인: cashout 시 연승 업데이트 함수 호출에서 $actual_배팅 금액 파라미터 누락으로 last_배팅 금액 = 0 저장. 코드 수정 + 기존 DB 레코드 2건 마지막 배팅 필드 보정(0→1) 완료
  • 카지노 바카라 뱅커 승리 시 연승 미반영 수정 — 바카라에서 뱅커(×1.95)에 배팅하여 승리해도 연승이 증가하지 않던 버그 수정. 근본 원인: 바카라 핸들러의 game_data 배열에 result 키가 누락되어, 연승 판정이 $profit > 0 폴백으로 처리됨. 1G 배팅 시 intval(1 × 1.95) = 1profit = 0 → 승리인데 패배 판정. 바카라·경마·룰렛·포커 4개 게임의 game_data에 명시적 result 키를 추가하여 배율 반올림과 무관하게 정확한 승패 판정 보장. 라이브 검증 완료(뱅커 8 vs 7 → +1G → 연승 바 "1연승" 정상 표시)
  • 🚨 카지노 룰렛 휠 멈춤 위치-결과 불일치 심각 버그 수정 — 룰렛 휠이 서버 결과와 다른 숫자 위치에서 멈추는 치명적 비주얼 디싱크 버그 수정. 근본 원인: 프론트엔드 모듈의 회전 각도 계산에서 rgCurrentRotation(누적 회전량)이 이중 적용됨 — totalRotation = rgCurrentRotation + 1800 + targetAngle 계산 후 ((totalRotation%360)+360)%360 + rgCurrentRotation + 1800으로 한 번 더 합산. 첫 스핀(rgCurrentRotation=0)은 우연히 정상이나, 2번째 스핀부터 ~3600°+ 오차 누적으로 완전히 다른 세그먼트에 정지. 수정: 현재 회전 상태에서 목표 세그먼트까지의 델타 각도(delta)를 정확히 계산하는 방식으로 교체 → totalRotation = rgCurrentRotation + 1800 + delta. 10회 시뮬레이션(10/10 정확) + 라이브 2회 스핀(29번·25번 정확 정지) 검증 완료
  • 카지노 연승·파이오니어 명예의 전당 G 배지 누락 수정 — 연승 기록 명예의 전당과 최초 기록자 명예의 전당에서 일부 기록에 골드(G) 배지가 표시되지 않던 문제 수정. 근본 원인: 배팅 금액별 분리 추적에서 통합 추적(배팅 금액=0)으로 전환 시, 프론트엔드가 배팅 금액 > 0 조건으로 G 배지를 표시하여 통합 레코드에서 배지 누락. DB 스키마에 마지막 배팅 필드 컬럼 추가하여 실제 배팅 금액을 별도 기록, 프론트엔드는 마지막 배팅 필드 기반 배지 표시로 전환. 레거시 중복 레코드(배팅 금액>0)도 랭킹 쿼리 WHERE 배팅 금액 = 0 필터로 정리. 수정 전 10개(5개 G 미표시) → 수정 후 5개(전부 G 표시)
  • 관리자 사이드바 PAY 메뉴 위치 복원 — PAY 메뉴가 Wordfence 아래(사이드바 맨 하단)로 밀려나던 문제 수정. 근본 원인: 관리자 메뉴 모듈(필수 플러그인)의 메뉴 클래스 필터 필터(priority 99999)가 테마 함수 모듈의 menu_order 필터를 덮어쓰는 구조에서, 관리자 메뉴 모듈에 PAY 대시보드 슬러그 등 10개 slug이 누락되어 "남은 항목"으로 처리됨. 메뉴 슬러그 배열 배열을 테마 함수 모듈의 메뉴 순서 설정와 완전 동기화하여 PAY 메뉴를 뉴스 인사이트 다음/골드 관리 이전으로 복원
  • 관리자 대시보드 출석·골드 위젯 오래된 데이터 표시 수정 — 출석·포인트 현황 위젯이 레거시 usermeta(포인트 메타 키, 239,956P)를 조회하여 최신 골드 데이터를 전혀 반영하지 못하던 심각한 버그 수정. 근본 원인: 골드 리브랜딩(v3.13.0)에서 usermeta key가 포인트 메타 키 → 골드 메타 키로 변경되었으나 대시보드 위젯 플러그인에 미반영. meta key를 골드 메타 키로 수정하고 위젯 제목·레이블·단위를 "골드/G"로 통일. 수정 후 골드 보유자 9→11명, 총 골드 239,956P→723,214G로 최신 데이터 정상 반영 확인
  • 🐛 대시보드 위젯 meta key 롤백 + 골드 리브랜딩 잔여 P→G 전수 수정 — 이전 수정에서 대시보드 위젯의 meta key를 골드 메타 키로 변경했으나, 실제 포인트 시스템(출석 모듈)이 포인트 메타 키 메타 키를 사용하여 데이터 불일치 발생. 포인트 메타 키로 롤백하고 UI 표시만 "골드/G"로 통일. 동시에 사이트 전체에서 잔존하던 "포인트/P" 표기를 골드(G)로 일괄 변경: ① 커뮤니티 보드 상단 배너 내 골드 XXXG ② 8개 카지노 게임 잔액 표시 ③ 배팅 칩 라벨(1G~500G) ④ 배팅 에러 메시지 ⑤ 출석 토스트 알림 ⑥ 프론트엔드 모듈 실시간 잔액 업데이트
  • 🐛 카지노 연승 기록 초기 로딩 실패 수정 — 카지노 게임 페이지 진입 시 연승 표시 바가 0/0/- 으로 표시되던 문제 수정. 카지노 연승 데이터 AJAX 핸들러가 서버에 미배포되어 403 Forbidden 반환. SFTP 동기화 후 페이지 로드 시 정상적으로 연승 데이터(현재 연승, 최고 연승, 게임별 1위) 로드 확인. 게임 결과 후에도 연승 바가 실시간 업데이트됨
  • 🐛 카지노 전 게임 연승 판정 로직 근본 수정 — 승리해도 연승이 기록되지 않아 축하 메시지·애니메이션·이펙트가 표시되지 않던 핵심 버그 수정. 근본 원인: 연승 판정을 $profit > 0(수익 양수)으로 판단했으나, 1G 배팅 시 intval(1 × 1.95) = 1이 되어 payout = bet → profit = 0 → 승리인데 패배 판정. 게임 데이터의 실제 결과(result=win/win=true)를 우선 참조하도록 수정하여 전 게임(9종) 정확한 승패 판정 보장
  • 🐛 카지노 연승 바 실시간 반영 안 되는 문제 수정 — 칩 크기(배팅 금액) 변경 시 연승이 끊기고 0으로 리셋되던 문제 수정. 근본 원인: 연승을 배팅 금액별로 분리 추적(예: 1G 연승, 10G 연승 별도)하여, 1G→10G 칩 전환만으로 연승이 새로 시작됨. 게임 유형별 통합 연승(배팅 금액 무관)으로 변경하고, 기존 분산 데이터를 통합 레코드로 마이그레이션. 칩 크기를 자유롭게 변경하면서도 연승이 유지됨
  • 하이로우·더블 오어 낫싱 연승 기록 과소 반영 수정 — 세션 기반 게임(하이로우, 더블 오어 낫싱)에서 인게임 연속 성공 횟수가 연승 기록에 반영되지 않던 근본적 버그 수정. 근본 원인: 하이로우에서 8연속 성공 후 캐시아웃해도 연승 기록에 +1만 반영됨(실제로는 +8이어야 함). 연승 업데이트 함수에 $streak_increment 파라미터 추가, 결과 기록 함수에서 game_data['streak'](인게임 연속 성공 수)를 자동 감지하여 정확한 연승 증가폭 반영. 기존 데이터(수다 하이로우: 4→20연승) 보정 완료
  • 더블 오어 낫싱 연승 기록 배팅 금액 필드 미전달 수정 — 더블 오어 낫싱의 연승 업데이트 함수 호출 3곳(첫 도전 실패, 도전 실패, 캐시아웃)에서 배팅 금액 필드가 누락되어 모든 연승 기록이 배팅 금액=0으로 저장되던 버그 수정. 캐시아웃 시 인게임 연속 성공 횟수($saved['streak'])도 streak_increment로 정상 전달되도록 수정. 잘못 저장된 배팅 금액=0 데이터 정리 완료
  • 게임 결과 전 연승 축하 표시 타이밍 버그 수정$(document).ajaxComplete 전역 후킹으로 AJAX 응답 즉시 연승 축하 오버레이가 표시되어, 게임 결과(카드 딜링/레이스/휠 회전 등)가 표시되기 전에 신기록 축하가 먼저 나오던 심각한 UX 버그 수정. 수정: 바 업데이트(현재 연승·최고 기록)는 즉시 수행하되, 신기록 축하 오버레이는 게임별 애니메이션 완료 시간(블랙잭 5초, 경마 30초, 룰렛 5.5초 등)을 고려한 지연 후에만 표시
  • FGS Live From GDC 2026 기사 보강 (Post #106448) — 출처 기자명(Jordan Oloman) 추가. 원문(GamesRadar+)의 주요 게임 이미지 2장(슬래시 제로, 딥 락 갤럭틱: 로그 코어) 삽입. Emberville 성우진 정보(더그 코클, 아부바카르 살림 등) 보강. FGS Montage 섹션 누락 게임명(Romestead, Permafrost, Distant Shore: BRETAGNE, Deesicks) 추가. SQL 직접 UPDATE 사용(WordPress 업데이트 함수 iframe 삭제 방지)
  • DB 미디어 재추출 (#88812) — 본문/이미지/영상 데이터가 모두 NULL이던 GamesRadar 기사를 media_extractor --id=88812로 재추출. 13개 이미지 + 7386자 본문 정상 수집. Future PLC 셀렉터(.text-copy, .bodyCopy)는 정상 작동 확인 — 원인은 최초 수집 시 일회성 네트워크 오류로 판단

🆕 신규 기능 6

  • 🔥 카지노 연승 기록 시스템 — 카지노 전 게임(블랙잭, 슬롯, 홀짝, 하이로우, 룰렛, 바카라, 경마, 포커, 더블 오어 낫싱)에 연승 추적 시스템 도입. 현재 연승·최고 연승·게임별 1위 기록을 실시간 추적. 신기록 달성 시 축하 오버레이(불꽃 파티클+골드 컨페티) 애니메이션 자동 재생
  • 🏆 최초 기록자 명예의 전당 — 각 게임에서 연승 기록을 최초로 달성한 선구자를 영구적으로 기록하는 시스템. 한 번 이름이 올라가면 신기록이 경신되어도 최초 기록자의 이름은 영원히 보존됨
  • 🏆 최초 기록자 전용 페이지 (/board/casino/pioneers/) — 전체 게임별 최초 기록자를 게임 카테고리별로 보여주는 전용 명예의 전당 페이지. 히어로 헤더, 요약 통계(총 기록 수/기록 보유자/기록 보유 게임/최고 연승), 9개 게임별 상세 기록, 미기록 게임 도전 유도 UI
  • 카지노 허브 명예의 전당 섹션 (/board/casino/) — 카지노 메인 페이지 하단에 🔥 연승 기록 명예의 전당 + 🏆 최초 기록자 하이라이트 2개 섹션 추가. 최초 기록자 전용 페이지로의 바로가기 링크 포함
  • 💰 배팅 골드별 연승·파이오니어 기록 분화 — 연승 기록과 최초 기록자가 이제 배팅 골드(1G, 10G, 30G, 500G 등)별로 독립 추적됨. DB 스키마(카지노 연승 테이블, 파이오니어 테이블)에 배팅 금액 필드 컬럼 추가, 유니크 키를 (user_id, game_type, 배팅 금액)로 확장. 카지노 허브·파이오니어 페이지에 배팅 골드 뱃지(예: 500G, 10G) UI 표시. 내부 버전 업데이트
  • 🎰 카지노 관리자 페이지 (wp-admin > 커뮤니티 > 🎰 카지노 관리) — 연승 기록·최초 기록자(파이오니어) 데이터 조회 및 초기화 기능. 3개 초기화 버튼(연승만/파이오니어만/전체), 현재 기록 현황 테이블(유저·게임·배팅·연승·날짜), JavaScript 확인 다이얼로그로 실수 방지

🔧 개선 4

  • 연승 표시 바 — 개별 게임 페이지에서 현재 연승·최고 연승·게임별 1위를 표시하는 컴팩트 바. 3연승 이상 시 불타는 글로우 효과
  • 신기록 축하 연출 — 연승 신기록 달성 시 풀스크린 오버레이(회전 링+파티클+불꽃놀이) 자동 재생. 탭/클릭으로 닫기
  • 모바일 UX 최적화 — 연승 바, 축하 오버레이, 명예의 전당 페이지 모두 모바일 반응형 대응. 라이트 모드 호환
  • 카지노 허브 섹션 안내 박스 — 수익왕·연승·최초 기록자 3개 섹션에 로직 설명 박스 추가. 초기화 주기(수익왕: 매주 월요일/연승·파이오니어: 영구), 기록 방식(배팅 골드별 독립), 세션 게임 연승 확정 조건 등을 간결한 안내 텍스트로 표시. 다크/라이트 모드·모바일 반응형 대응
v3.16.5

🔧 개선 5

  • MediaExtractor v4.9.2 — Valnet CMS YouTube 추출 3패턴 전면 개선 — DualShockers/TheGamer/GameRant 등 Valnet 계열에서 youtubeEmbedCodes = [](빈 배열)인 기사에서도 YouTube ID 추출 가능하도록 3패턴 보강:
  • 패턴 2: window.arrayOfEmbeds["VIDEO_ID"] — 기존 배열([]) 매칭에서 객체 키(["ID"]) 매칭으로 수정
  • 패턴 3(신규): — Valnet CMS가 JS 동적 YouTube를 마크업하는 div의 id 속성에서 직접 추출
  • 패턴 4: HTML 디코딩 후 youtube.com/embed/ID 전역 검색 — HTML 엔티티 인코딩(", < 등)으로 매칭 실패하던 문제 해결
  • Aphelion 기사(#88985) 테스트 결과 U6xCfctMVRE 정상 추출 확인

🐛 버그 수정 2

  • Aphelion 기사 보강 (Post #106445) — 출처 크레딧에 기자명(Tay Garcia) 추가, ESA(유럽 우주국) 표기 보강. WordPress 업데이트 함수에 의한 iframe 삭제 문제 → SQL 직접 업데이트로 복원. DB 원본(#88985) 영상 데이터 NULL→1개(YouTube U6xCfctMVRE) 보정
  • ⚠️ 주의: WordPress 업데이트 함수는 iframe을 WordPress 필터 필터로 제거 — iframe 포함 콘텐츠는 반드시 DB 직접 업데이트(SQL) 사용 필요
v3.16.4

🔧 개선 1

  • MediaExtractor v4.9.1 — Gamer Network YouTube youtube-nocookie.com + data-src 패턴 추가 — Rock Paper Shotgun 등 Gamer Network 계열 사이트는 iframe에 src="youtube-nocookie.com/embed/..." + data-src="youtube.com/embed/..." 이중 속성 사용. 기존 패턴 2는 youtube.com/embed/만 매칭하여 RPS 기사에서 YouTube 비디오 미수집. data-src 우선 + youtube-nocookie.com 정규식 추가, .video-stage 외부 iframe도 검색하여 누락 방지. ReVamp 기사 (#88786) 테스트 결과 ijIg_qm3SmU 정상 추출 확인

🐛 버그 수정 1

  • ReVamp 기사 Steam ID 오류 수정 (Post #106432) — AI 기사에서 ReVamp 스팀 앱 ID가 2681020(존재하지 않는 페이지)으로 잘못 생성됨 → 올바른 ID 3295000으로 5건 전량 교체. YouTube 트레일러(ijIg_qm3SmU, ReVamp Reveal Trailer) 미삽입 → 첫 번째 H3 앞에 wp-block-embed-youtube 블록 삽입. AI 환각 텍스트("이미지: ReVamp의 독특한 모듈식 성 시스템과 전투 장면을 담은 스크린샷이 공개되었습니다.") 삭제. 출처 크레딧에 기자명(Oisin Kuhnke) 추가. DB 원본(#88786) 영상 데이터 NULL→1개(YouTube), 이미지 데이터 1→2개 보정
v3.16.3

🔧 개선 2

  • MediaExtractor v4.9 — IGN 슬라이드쇼 갤러리 cURL 자동 추출 — IGN 처리된 HTML 내 data-transform="slideshow" + 슬러그 속성 감지 시 /slideshows/{slug} 페이지를 추가 cURL 요청하여 SSR된 태그에서 ignimgs.com 갤러리 이미지 자동 추출. Blight: Survival 기사 테스트 결과 10장 중 6장(feedImage 1 + SSR 갤러리 5) 자동 수집 성공(v4.8 대비 6배). 데이터 속성 유형별 분기: slideshow→갤러리 이미지 추출, ignvideo→비디오 URL 생성. IGN GraphQL API(mollusk.apis.ign.com/graphql) 조사 완료 — introspection 비활성화로 직접 쿼리 불가, 향후 역공학 시 전량 추출 가능성 확인
  • ⚠️ 한계: IGN SSR은 슬라이드쇼 이미지의 약 50%만 렌더링 (나머지는 클라이언트 JS에서 lazy load). 전량 추출에는 headless browser 또는 GraphQL 역공학 필요