If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

카드놀이 (윈도, 2007년)

From The Cutting Room Floor
Jump to navigation Jump to search
This page is a translated version of the page Solitaire (Windows, 2007) and the translation is 100% complete.
Other languages:
English • ‎français • ‎polski • ‎日本語 • ‎한국어

타이틀 화면

카드놀이

개발사: Oberon Media, Microsoft
발매유통사: Microsoft
플랫폼: Windows
전세계 발매: 2007년 1월 30일


이 게임에 포함되어 있는 것:
CodeIcon.png 사용하지 않은 코드


카드놀이의 2007년 버전은 윈도 Vista/7에 포함된, 새로운 그래픽과 기능을 추가한 리메이크 버전이다. 그것 말고는, 플레이 방법은 똑같다.

디버그 모드

내부의 g_bDebugEnabled 변수를 0이 아닌 숫자로 바꾸면, 여러 디버그 메뉴가 활성화된다. 이 변수를 게임상에서 바꿀 수 없으므로, 수동으로 설정하여야 한다.

메뉴

SolVistaDbgMenu.png

일반적인 메뉴(리소스 102) 대신에, 다른 메뉴(리소스 103)가 로드된다(리소스는 Solitaire.exe.mui에 있음). 대부분의 메뉴가 직관적이지만, "Toggle Deck Lock"(덱 잠그기)는 아무 효과도 일어나지 않는다.

치트 코드

Ctrl, Alt, Shift를 덱을 클릭하는 동안 누르면, 덱에서 3장을 빼는 옵션을 적용해도 1장밖에 나오지 않는다. 이 기능은 또한 어떤 카드든 옮길 수 있고, 카드 모양과 숫자에 상관없이 쌓을 수 있게 해준다.

블록 모드

SolVistaBlockMode.png

F6을 누르고 있으면 판 전체가 회색으로 렌더링되며, 카드가 없는 쪽은 더 회색같이 보이게 된다.

일시정지 모드

Home 키를 누르면 화면이 정지된다. 화면만 멈출 뿐, 그 외에는 정지하지 않아서 시간이 적용된 게임의 경우 시간이 계속 흘러가며, 소리 효과는 그대로 유지된다. End를 누르면 화면이 다시 진행된다. Insert 키를 누르면 이 기능을 토글할지 안할지 설정할 수 있다.

로그 기록

디버그와 같이, 내부의 두 변수가 로그에 관여를 하는데, UTF-16 형식으로 현재 폴더에 log.txt로 저장시키거나(g_uiFileMask), 표준 출력으로 출력을 한다(g_uiConsoleMask). 또한, 이 두 변수 역시 게임상에서 바꿀 수 없으므로, 수동으로 설정하여야 한다.

로그 예시:

SolLogGeneral: (673) SolitaireGame::FindHigherCardToPutOnStack() - Not a main stack, don't bother checking.
CardLibLogGeneral: (674) CardStack::SetHighlight()::bHighlight == false
CardLibLogGeneral: (675) Card::SetHighlight()::bHighlight == false
0x00002000: (676) Hide tip
Rendering: (884) SetState: 260
Rendering: (885) (RenderManager.cpp:2156) Present Failed: 88760868(D3DERR_DEVICELOST)
Rendering: (886) (RenderManager.cpp:1704) Resuming after lost device
Rendering: (887) (Font.cpp:691) Invalidating a font cache
Rendering: (888) (Font.cpp:691) Invalidating a font cache
Rendering: (889) (RenderManager.cpp:2253) Reset: 800 x 496 format 22
Rendering: (890) (RenderManager.cpp:1465) RecreateDefaultResources()
UI: (891) Recreating font: Segoe UI
UI: (892) Recreating font: Segoe UI
Rendering: (893) (RenderManager.cpp:150) CreateCachedBackBuffer()
Rendering: (894) SetState: 4096
Core: (909) Engine_GotFocus()
Timekeeping: (910) Reset timers
Core: (911) Engine_LostFocus()
Core: (912) Engine_GotFocus()
Timekeeping: (913) Reset timers
Rendering: (914) (RenderManager.cpp:2369) Saved the back buffer for cached presentation
CardLibLogGeneral: (915) CardStack::SetEnabled()::bAccess == true
Core: (916) Engine_LostFocus()

로그와 디버그 모드가 활성화되면, F11을 눌러 사용하고 있는 이미지와 사운드를 로그 형식으로 덤프(파일화)가 가능하다.

XInput(게임패드) 지원

XInput(게임패드)를 지원한다는 이야기는 어디에도 써있지 않지만, 실제로 지원한다. 만약 게임이 Xbox 360 컨트롤러를 USB 포트를 통해 인식한다면, 컨트롤러의 P1 부분이 켜지며, 사용 가능하게 된다. 아마 마이크로소프트가 이 기능이 기존의 조작에 비해 이상하고, 카드 게임에 게임패드가 작동하지 않을 것을 예상한 탓인지 쓰지 않은 것으로 보인다. 그렇다 할지라도, 꽤 갖춰진 소소한 기능이다.

조작

버튼 효과
왼쪽 아날로그 스틱/D패드/어깨버튼/트리거 커서를 옮긴다. 이상하게도, 메뉴 바를 둘러보는 데도 쓸 수 있다.
B/Back 이전의 이동을 되돌린다.
A/X 커서가 가리키는 카드를 선택한다. 커서로 카드를 가리키고 A/X를 한번 더 누르면 이전으로 돌아간다. 두 번 누르게 되면, 카드가 홈 스택으로 가게 된다.
Y/Start 게임 메뉴를 연다.