원문 캡처 · github.com
원문 캡처 · github.com

lp-engine은 사용자가 보유한 Nintendo DS 게임 LovePlus+를 Windows, macOS, Linux에서 실행하는 전용 엔진이다. 게임 전체를 영어로 번역해 제공하고, 그래픽을 최대 4배 해상도로 그리는 등 화면 개선 기능도 지원한다. 일반 DS 에뮬레이터는 아니다.

게임을 실행하려면 일본판 LovePlus+(게임 코드 BOXJ)의 .nds 파일이 필요하다. lp-engine에는 게임 데이터가 포함되지 않으며, 첫 실행 때 사용자의 파일을 읽어 별도 폴더에 저장한다. 원본 .nds 파일은 수정하지 않는다.

시스템다운로드 파일실행 방법
macOS 11 이상(Apple silicon 또는 Intel)LovePlus+-…-macos.zip압축을 풀고 LovePlus+.app을 Applications로 옮겨 실행한다
Windows 10/11(64비트)LovePlus+-…-windows-x64.exe설치 과정 없이 실행한다
Linux(x86-64)loveplus_…_amd64.deb 또는 LovePlus+-…-x86_64.AppImagesudo apt install ./loveplus_…_amd64.deb를 실행하거나 AppImage에 chmod +x를 적용한 뒤 실행한다

시스템별 빌드 다운로드를 제공한다. 첫 실행에서는 .nds 파일을 선택해야 하며, 파일을 읽는 데 몇 초가 걸린 뒤 게임이 시작된다.

대화 2만 9,000줄과 메뉴, 메시지, 게임 내 그래픽을 영어로 번역했다. 어휘 퀴즈와 이름 읽기 등 일부 부분은 의도적으로 일본어를 유지한다. 3D 그래픽은 GPU에서 최대 4배 해상도로 그리며, 선택 사항으로 안티앨리어싱, 텍스처 필터링, 부드러운 셀 셰이딩을 적용할 수 있다. 캐릭터 애니메이션은 초당 30프레임이며, 텍스처와 사진 배경은 노이즈를 줄인 ‘smooth’ 설정을 포함한 FSR로 확대할 수 있다. 픽셀 아트 UI는 선명하게 유지된다.

게임 내 시계는 컴퓨터 시계를 따르며, 일정에 맞지 않으면 Clock 설정에서 조정할 수 있다. 터치스크린은 마우스로 조작하고, 키보드 키는 다시 지정할 수 있으며 게임패드도 지원한다. 마이크 입력과 창을 최소화해 게임을 절전 상태로 두는 기능도 제공한다. DeSmuME의 .sav·.dsv 파일이나 카트리지 저장 파일을 가져오고 내보낼 수 있다.

무선 기능인 Talk Mode, 카드 교환, 근거리 통신, 저장 데이터 보내기·받기·이전, 지역 캡슐은 지원하지 않는다. 해당 기능을 선택하면 안내가 표시되고 메뉴로 돌아간다.

게임 세션은 시작 시점의 저장 데이터와 입력 기록으로 조용히 기록된다. 게임 코드가 멈추면 기록을 보존하고 파일 위치를 알린다. 기록을 이슈에 첨부하면 해당 세션을 단계별로 재생할 수 있으며, Game > Keep Session Recordings를 켜면 모든 기록을 보관한다.

저장 데이터와 설정은 사용자별 폴더에 들어간다. macOS는 ~/Library/Application Support/LovePlus+, Windows는 %APPDATA%\\LovePlus+, Linux는 ~/.config/loveplus를 사용하며 저장 파일은 saves/loveplus.sav다. Game > Show Game Folder를 선택하면 해당 폴더를 열 수 있다.

소스는 Rust로 작성한 엔진과 Python 도구로 구성된다. 저장소에는 다음과 같은 빌드 명령이 안내돼 있다.

text
cd engine
cargo build --release --bin game
./target/release/game # as released: first run asks for your .nds file
./target/release/game ../content # development: run from an extracted content folder

lp-engine 저장소에서 프로젝트와 설명서를 확인할 수 있다. MIT 라이선스로 배포되며, LovePlus는 Konami Digital Entertainment의 상표다. 프로젝트는 Konami나 Nintendo와 제휴하거나 이들의 승인을 받지 않았다. 게임 코드와 자산은 포함하지 않고 사용자가 보유한 게임에서 실행 중 읽으며, 번역은 해당 사본에만 적용되는 변경분으로 배포한다.