본문으로 건너뛰기

CS2 맵 스크립트, 인질 추적하고 라운드 제어할 수 있게 됐다

2026년 10월 22일 업데이트는 맵 제작자를 위한 내용이었습니다. 맵 스크립팅에 인질 객체가 추가됐고, Console과 GameRules가 별도 섹션으로 분리됐으며, 리소스 사전 로딩 여부를 확인하는 기능도 생겼습니다.

CasewayCaseway
4분231
CS2 맵 스크립트, 인질 추적하고 라운드 제어할 수 있게 됐다
공유

이번 패치의 핵심은 인질 모드입니다. 인질이 이제 CSHostage라는 별도 객체가 되어, 맵 스크립트가 인질의 행동을 하나하나 확인할 수 있습니다. 구조를 시도하는 순간부터 구출되거나 사망할 때까지 추적합니다.

중요

매치메이킹만 플레이한다면 게임에서 달라지는 점은 없습니다. 10월 22일 업데이트 내역은 MAP SCRIPTING 한 섹션뿐입니다. 맵 제작자들이 스크립트를 업데이트하면 창작마당 맵과 커스텀 모드에서 새 기능을 사용할 수 있습니다.

인질이 더는 반응 없는 모델이 아니다

CSHostage에 IsBeingPickedUp, IsBeingCarried, IsRescued 메서드가 추가됐습니다. 인질을 들어 올리는 중인지, 들고 이동 중인지, 구출 지점에 도착했는지 스크립트에서 확인할 수 있습니다. GetRescuer는 구출한 플레이어를 반환하고, GetPickUpStartTime과 GetPickUpFinishTime은 인질을 들어 올리기 시작한 시각과 끝난 시각을 알려줍니다. 반대로 CSPlayerPawn.GetHostage를 이용하면 플레이어 쪽에서도 인질과의 연결을 확인할 수 있습니다.

새 메서드와 함께 맵이 즉시 반응할 수 있는 이벤트도 추가됐습니다.

  • OnHostagePickUpStart는 플레이어가 인질을 들어 올리기 시작할 때 발생합니다.
  • OnHostagePickUpAbort는 인질을 들어 올리는 동작이 중단됐을 때 발생합니다.
  • OnHostagePickUp은 인질을 들어 올렸을 때 발생합니다.
  • OnHostageDrop은 인질을 내려놓았을 때 발생합니다.
  • OnHostageRescue는 인질이 구출됐을 때 발생합니다.
  • OnHostageKill은 인질이 사망했을 때 발생합니다.

예를 들어 맵 제작자는 인질을 구출했을 때 점수를 주거나, 대테러부대가 인질을 붙잡는 순간 테러리스트 진영 기지에 경보를 울릴 수 있습니다.

Console과 GameRules로 Instance의 기능 일부가 옮겨갔다

Valve는 최상위 섹션 2개를 새로 추가했습니다. Console에는 콘솔 변수와 관련된 기능이 모였습니다. GetConvarBoolean, GetConvarNumber, GetConvarString, GetConvarVector, GetConvarQAngle, GetConvarColor로 원하는 자료형의 값을 읽고, SetConvar로 값을 설정할 수 있습니다. SetConvar는 sv_cheats가 활성화되지 않아도 사용할 수 있고 동기식으로 실행됩니다. 따라서 값이 바뀌면 바로 다음 스크립트 줄부터 적용됩니다.

이전변경 후
Instance.MsgConsole.Log
Instance.ClientCommand, ServerCommand, RegisterCheatCommandConsole의 동일한 메서드
Instance.IsWarmupPeriod, IsFreezePeriod, IsTeamIntroPeriodGameRules의 동일한 메서드
Instance.GetRoundsPlayed, GetRoundRemainingTime, SetRoundRemainingTimeGameRules의 동일한 메서드
Instance.AddTeamMoneyGameRules.AddTeamMoney

GameRules에는 새 메서드도 추가됐습니다. StartWarmup과 EndWarmup으로 워밍업을 시작하거나 끝낼 수 있고, GetTeamScore와 AddTeamScore로 팀 점수를 확인하고 변경할 수 있습니다. TerminateRound는 라운드를 종료합니다. 이제 맵 스크립트가 라운드 종료 시점을 직접 결정할 수 있습니다.

기존 이름도 당분간 사용할 수 있지만, 사용 중단 예정으로 표시됐습니다. 이름만 바뀐 것이므로 프로젝트에 호출이 많지 않을 때 미리 옮겨 두는 편이 간단합니다.

모든 플레이어의 리소스 로딩 여부를 스크립트에서 확인할 수 있다

Instance.Precache는 CSPrecache 객체를 반환합니다. IsServerLoading과 IsServerLoaded로 서버에서 리소스를 로딩 중인지 또는 로딩을 마쳤는지 확인할 수 있고, IsClientLoading과 IsClientLoaded로 클라이언트 상태도 확인할 수 있습니다. IsLoadedForAll은 모든 참가자의 로딩이 끝났는지 알려줍니다. 리소스가 더 필요하지 않으면 Release로 해제할 수 있습니다.

인터페이스, 레이더 및 수정 사항

그 밖에는 소소한 개선과 수정이 이뤄졌습니다. 사용자 지정 인터페이스 레이아웃(custom_hud_layout)에 최상위 클래스 HUD_TEAMMENU_VISIBLE과 HUD_CHAT_VISIBLE이 추가됐습니다. 팀 선택 메뉴나 채팅이 열려 있는지에 따라 레이아웃을 바꿀 수 있습니다. radar_element는 이제 Rush뿐 아니라 모든 모드에서 레이더에 표시됩니다.

  • GameRules.AddTeamMoney에 CSTeamMoneyReason.NONE을 전달해도 게임이 종료되지 않습니다.
  • CSTeamMoneyReason과 CSWeaponAttackType 열거형 값이 point_script.d.ts의 타입 설명과 일치하도록 수정됐습니다.
  • CSRadarPoint.IsVisibleToTeam과 CSObservablePoint.IsObservableForTeam이 이제 숫자가 아닌 불리언 값을 반환합니다.
  • 로그 경고에 JavaScript 호출 스택과 잘못된 인수에 대한 자세한 정보가 표시됩니다. 인수 번호는 1이 아닌 0부터 시작합니다.
글의 용어
Convar
서버나 클라이언트 설정처럼 읽거나 변경할 수 있는 게임 콘솔 변수입니다.
sv_cheats
콘솔 명령어 일부를 사용하려면 필요한 서버 설정입니다.
Precache
모델, 사운드 등 리소스가 게임에서 필요해지기 전에 미리 로딩하는 작업입니다.
2026년 9월 CS2 창작마당 맵: 연습, 협동, 색다른 모드가이드
함께 읽기2026년 9월 CS2 창작마당 맵: 연습, 협동, 색다른 모드9월 신작 11개와 지난달 인기 상위 맵 3개를 모았습니다. 에임 연습장부터 타워를 함께 돌파하는 협동 맵, 물리 샌드박스, 익숙한 맵에 새로운 규칙을 더한 작품까지 만나 보세요.CasewayCaseway모음읽기
오류나 부정확한 내용을 발견하셨나요?페이지에서 텍스트를 선택하고 Ctrl+Enter를 누르면 해당 부분이 메시지에 자동으로 들어갑니다.
공유
Caseway
Caseway편집팀

Caseway 블로그 편집팀입니다. CS2 스킨 시장 뉴스와 분석, 가이드, 아이템 Wiki를 제공합니다.

블로그 글 89개이 작성자의 모든 글
Caseway 상자Caseway의 CS2 상자155 개의 상자, ₩990부터모든 상자

함께 읽기

모든 글 보기