Java Swing 기반 F1 레이싱/타이핑 미니프로젝트입니다.
- 시작 화면
- 팀/트랙 선택
- 퀄리파잉
- 타이어 전략 설정
- 본 레이스 및 랭킹 저장
mkdir -p build/classes
javac -encoding UTF-8 -d build/classes src/*.javaIDE에서 MyFrame을 실행하거나, 프로젝트 루트 기준으로 컴파일 후 실행합니다.
java -cp build/classes MyFrame기본 리소스 루트는
src입니다. 다른 폴더를 리소스 루트로 쓰려면-Dgame.resource.dir=<경로>를 지정할 수 있습니다.
java -Dgame.resource.dir=src -cp build/classes MyFrame현재 GitHub Release에는 BGM, 효과음, 팀 로고 이미지를 제외한 lite 버전만 배포합니다.
| Artifact/Release asset | 포함 내용 | 제외 내용 | 용도 |
|---|---|---|---|
gameproject-release-lite |
JAR, 팀 로고 제외 이미지, words.txt, rank.txt |
src/bgm, src/sound, src/img/teamlogo |
빠른 다운로드/테스트 및 제출용 |
압축 해제 후 해당 폴더에서 실행합니다.
java -jar gameproject.jar사운드 파일이 없어도 앱이 종료되지 않도록
SoundManager가 파일 없음 상태를 건너뜁니다.
.github/workflows/windows-app.yml은 수동 실행(workflow_dispatch) 시에만 Windows runner에서 BGM/효과음/팀 로고를 제외한 lite portable app을 만듭니다. 자동 GitHub Release 배포 대상은 아닙니다.
사용 방법:
- GitHub Actions에서 Windows Lite Portable App workflow를 수동 실행
- Artifact의
F1MiniGame-windows-lite-portable다운로드 F1MiniGame-windows-portable.zip압축 해제- 압축 해제된
F1MiniGame/F1MiniGame.exe실행
F1MiniGame.exe만 단독으로 복사하면 실행되지 않습니다.runtime,app폴더가 포함된F1MiniGame폴더 전체를 유지해야 합니다.
GitHub Actions와 동일한 방식으로 lite-only 실행 번들을 로컬에서 만들 수 있습니다.
scripts/ci/build_release_bundle.sh
scripts/ci/verify_release_bundle.sh
scripts/ci/smoke_release_bundle.sh생성 파일:
| 파일 | 설명 |
|---|---|
build/gameproject-release-lite.zip |
BGM/효과음/팀 로고 제외 경량 실행 번들 |
Windows 환경에서는 다음 PowerShell 스크립트로 Java runtime이 포함된 portable app zip을 만들 수 있습니다. macOS에서는 Windows용 exe를 직접 생성하지 않고 GitHub Actions Windows runner 사용을 권장합니다.
scripts/ci/build_windows_app.ps1생성 파일:
| 파일 | 설명 |
|---|---|
build/F1MiniGame-windows-portable.zip |
Windows용 F1MiniGame.exe와 runtime 포함 lite portable 실행 폴더 |
GitHub Release를 만들 때는 v* 태그를 push하면 Actions가 lite zip 파일 하나만 Release asset으로 업로드합니다.
git tag v1.0.0
git push origin v1.0.0