Ultimate Shift Controller
사용자 설명서
Version 3.0.9

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 1. 배포 형태 및 시스템 요구 사항
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

무료 소프트웨어이며 사용료는 없습니다. 64비트 Windows 10/11, .NET 8 Desktop Runtime (x64), 키보드와 마우스가 필요합니다. 장치, 앱, 게임에 따라 동작이 달라질 수 있습니다. 가상 컨트롤러는 추가 드라이버가 필요할 수 있습니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 2. 설치
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

설치 프로그램은 없습니다. ZIP을 쓰기 가능한 폴더에 풀고 UltimateShiftController.exe를 실행한 뒤 매핑을 설정하고 [저장]을 누르십시오. ZIP 내부에서 직접 실행하지 마십시오.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 3. 제거
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

시작 프로그램을 끄고 트레이의 USC까지 종료한 뒤 폴더를 삭제합니다. 설정까지 지우려면 [Settings] 폴더도 삭제하십시오. 별도로 설치한 드라이버는 별도로 제거해야 합니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 4. USC 소개
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Ultimate Shift Controller는 키보드와 마우스 입력을 조합하여 키를 다시 배치하고, 마우스 버튼으로 단축키를 실행하고, 레이어 트리거를 누르는 동안 다른 매핑으로 전환하는 Windows 앱입니다. 게임뿐 아니라 문서 작성, 편집, 방송, 브라우저 등에도 사용할 수 있습니다. 기본 기능에는 가상 컨트롤러가 필요하지 않습니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 5. 주요 기능
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

키보드/마우스 매핑, 조합 단축키, 다중 출력, F1-F24, NORMAL/HYPER/ULTRA/ULTIMATE 레이어, 터보, 탭, 프로필, 가져오기/내보내기, HUD, 트레이, 상위 레이어의 좌/우 클릭 입력 및 Chrome 기반 온디바이스 번역을 지원합니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 6. 기본 설정
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

앱을 실행하고 레이어를 고른 뒤, 행의 위쪽에 입력을, 아래쪽에 출력을 등록하고 [저장]을 누른 다음 테스트합니다. 예: Q -> CTRL+1.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 7. 네 개의 레이어
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

NORMAL은 기본 레이어입니다. HYPER와 ULTRA는 각 트리거를 누르는 동안, ULTIMATE는 두 트리거를 함께 누르는 동안 사용됩니다. 상단 버튼은 편집할 레이어를 선택하고, 트리거가 실제 활성 레이어를 결정합니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 8. HYPER / ULTRA / ULTIMATE 및 외부 마우스
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

HYPER/ULTRA 논리 호출 키는 F13-F24만 사용할 수 있으며 서로 달라야 합니다.

예: HYPER=F13, ULTRA=F14. 물리 버튼은 USC에 설정한 것과 같은 F키를 보내야 합니다.

터보가 꺼진 USC의 F13-F24 매핑 출력도 내부적으로 호출 입력으로 사용할 수 있습니다. HYPER/ULTRA/ULTIMATE의 입력 쪽에는 좌/우 클릭을 등록할 수 있지만 NORMAL 입력과 모든 출력 쪽에서는 보호를 위해 등록할 수 없습니다. 비터보 출력은 원래 입력을 놓을 때까지 눌림 상태를 유지합니다.

[Razer Synapse 2]
Synapse 2는 F13-F24 이름을 화면에 표시하지 않지만 저장할 수 있습니다. F13 예: USC NORMAL에서 물리 F1의 출력을 잠시 F13으로 변경하고, Synapse 2의 버튼 키 등록 화면에서 F1을 누른 뒤 이름이 보이지 않아도 저장합니다. 저장 후 USC의 F1을 원래대로 돌리고 HYPER 트리거를 F13으로 설정합니다.

[Razer Synapse 3]
F13-F24를 직접 선택할 수 있다면 버튼에 F13/F14를 지정하고 USC에도 같은 키를 사용합니다.

[Logicool/Logitech G-Shift 및 G HUB]
G HUB에서는 F1-F24를 선택할 수 있습니다. 일반 버튼 또는 G-Shift 버튼에 F13/F14를 지정하고 USC에도 같은 키를 사용합니다.

[기타 장치]
설정 프로그램이 F13-F24를 등록할 수 있다면 같은 방식으로 사용할 수 있습니다. 이름이 표시되지 않아도 저장되고 실제로 입력되면 작동합니다. 가능하면 F13-F24를 사용하십시오.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 9. 탭, 프로필, 저장
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

탭은 매핑을 정리하고, 프로필은 전체 설정을 저장합니다. 변경 후 반드시 [저장]을 누르십시오. 데이터는 [Settings] 폴더에 있습니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 10. Turbo, HUD, 상태
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Turbo는 출력을 반복합니다. US HUD는 현재 레이어를 표시합니다. CLEAN은 남은 입력 상태를 해제하려고 시도합니다. Keyboard Lock은 키보드를 임시 잠그며 마우스로 해제합니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 11. 주요 설정
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[매핑된 입력 Kill]은 원래 입력과 출력이 동시에 동작하는 것을 막습니다. 레이어 중 미설정 입력 차단은 HYPER/ULTRA/ULTIMATE에서 지정하지 않은 입력의 통과를 막습니다. 트레이 및 Windows 시작 옵션도 있습니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 12. 가상 컨트롤러
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

드라이버, 물리/가상 컨트롤러 분리, 게임 설정이 필요할 수 있는 고급 기능입니다. 잘못 설정하면 이중 입력이 발생할 수 있습니다. 이미지 설명:
https://github.com/Lu-ci-el/UltimateShiftController/blob/main/Instructions_en.md

키보드, 마우스, 레이어, 단축키 기능만 사용할 때는 필요하지 않습니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 13. 문제 해결
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

설정을 저장했는지, 트리거가 일치하는지, 이중 입력 시 Kill 설정, Keyboard Lock, CLEAN을 확인하십시오. 저장이 안 되면 Program Files가 아닌 쓰기 가능한 폴더를 사용하십시오.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 14. 문의 및 버그 보고
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

https://github.com/Lu-ci-el/UltimateShiftController/issues

문제, 재현 절차, 빈도, 환경, 로그를 적어 주십시오. 개별 답변, 즉시 수정, 모든 환경 지원은 보장되지 않습니다. 악용 또는 개별 개발 요청은 받지 않습니다.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 15. 주의 사항
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Settings]를 백업하고 업데이트 전 USC를 종료하십시오. 단축키 충돌과 게임/서비스 규정을 확인하십시오. 치트, 방해, 괴롭힘에 사용하지 마십시오. 사용으로 인한 손해에 대해 작성자는 책임지지 않습니다.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ USC_TRANSLATION_3_0_4 / 번역
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

- 번역 기능에는 64비트 Google Chrome과 Chrome에서 지원하는 온디바이스 모델이 필요합니다. Microsoft Edge로 대체하지 않습니다.
- 설정에서 번역 기능을 켜고 번역 설정을 엽니다. 번역 키는 F13-F24 논리 키이며 HYPER/ULTRA 호출 키와 같게 설정할 수 없습니다.
- 기폭 키 입력란을 왼쪽 클릭하면 등록을 시작하고 오른쪽 클릭하면 해제합니다. 실제 키보드/마우스/컨트롤러 조합 또는 현재 레이어의 터보 OFF USC 매핑 출력을 사용할 수 있습니다. 물리 입력과 내부 출력의 일부를 섞어 판정하지 않습니다.
- 외국어 선택 문장은 USC에서 현재 선택한 자기 언어로 번역됩니다. 자기 언어 문장은 마지막으로 성공한 상대 언어로 번역되며, 기록이 없으면 기본 번역 대상을 사용합니다.
- 결과는 심플 창에 표시됩니다. 선택한 문자를 가져올 때 USC는 전면 애플리케이션에 Ctrl+C를 정확히 한 번만 보내며, scan code 이벤트를 Left Ctrl DOWN → C DOWN → C UP → Left Ctrl UP 순서로 각각 전송하고 C를 누르기 전에 Ctrl을 잠시 유지합니다. C를 먼저 보내거나 복사 실패 후 C를 다시 보내지 않습니다. 클립보드 갱신이 확인된 문자열만 번역하며, 가져오지 못하면 번역하지 않고 심플 창에 안내합니다. 화면 캡처와 OCR은 사용하지 않습니다.
- USC 기본 14개 언어는 한 번에 준비할 수 있습니다. 추가 언어는 Chrome이 지원하는 경우 BCP-47 태그로 개별 준비합니다.
- 설정 열기, 상태 업데이트, Pack 행 선택만으로는 다운로드가 시작되지 않습니다. 명시적인 DL 또는 표준 언어 일괄 DL만 다운로드 권한을 가집니다.
- 명시적 DL은 일반 Chrome에 짧게 유지되는 token 보호 로컬 페이지를 엽니다. Chrome이 이미 실행 중이어도 사용할 수 있으며 Chrome 화면에서 클릭한 뒤에만 시작합니다. 외부 사이트는 열지 않으며 모델은 Chrome이 소유합니다.
- 일반 번역은 표준 입출력을 사용하는 숨김 1회 요청 Helper로 처리하며 Chrome 페이지/탭/창/localhost listener를 열지 않습니다. 누락 모델을 자동 다운로드하지 않습니다.
- USC는 [Settings\Translation]에 설정과 가벼운 증거만 저장합니다. Chrome 프로필, TranslateKit, 언어 Pack, 모델, 구성 요소, runtime, cache를 USC 폴더로 복사하지 않습니다.
- Markdown, URL, 코드, 인용문, 문단, 줄바꿈은 모델 밖에서 보호하고 유한한 크기로 나눈 뒤 다시 조립합니다. 영구 저장은 USC 메인 창의 [저장]을 사용하십시오.
