Nekoplay
by tnkiiNekoplay
Nekoplay로 브라우저에서 바로 브라우저 게임을 만들 수 있습니다.
어디서나 게임 공유
Nekoplay로 만들 수 있는 게임:
‣ 레트로 아케이드 게임
‣ 퍼즐 및 논리 게임
‣ 로그라이크와 던전 게임
‣ 캐주얼 미니게임
‣ 게임잼용 프로토타입
예제
이미지 그리기
텍스트 그리기
사운드 재생
함수 정의
학습 →
소개
Nekoplay로 2D 게임을 만들 수 있습니다.
모던 브라우저와 인터넷 연결만 있으면 됩니다.
온라인 인터페이스
Nekoplay는 다음에서 호스팅됩니다:
nekoplay.niupleis.com
쉽게 배울 수 있으며, 5가지 레슨으로 구성된 이 가이드를 따라할 수 있습니다:
소개
1. 게임 설정
2. 도구
3. 텍스트 에디터
4. 게임
5. 모범 사례
API
Nekoplay로 게임을 개발하려면 API에 익숙해져야 합니다.
▹ audio••••••오디오 트랙 제어
▹ camera•••••카메라 위치 제어
▹ cursor•••••터치 제스처 및 마우스 이벤트 처리
▹ div••••••••HTML 요소
▹ draw•••••••화면에 그리기
▹ ease•••••••값 보간
▹ file•••••••데이터 저장, 로드 및 삭제
▹ get••••••••파일 및 리소스 로드
▹ hitbox•••••충돌 감지
▹ key••••••••키보드 입력 감지
▹ scancode•••물리적 키보드 입력 감지
▹ physics••••물리 모듈
▹ random•••••난수 생성
▹ set••••••••그리기 설정
▹ scene••••••씬 제어
▹ Android••••Kotlin 인터페이스
Nekoscript
Nekoscript는 Nekoplay 내에서 사용하기 위해 설계된 간단하고 표현력 있는 스크립팅 언어입니다.
그 문법은 Javascript와 호환됩니다.
일반 Javascript 코드를 작성하여 시작할 수 있으며, Nekoplay는 필요한 변환을 자동으로 적용하여 코드를 해석합니다.
‣ Nekoscript 레퍼런스 - Nekoscript 참조 문서
‣ MDN의 JavaScript 가이드 - JavaScript를 배우기 위한 완전하고 공식적인 참조
‣ 모던 JavaScript 튜토리얼 - 기본 및 고급 개념을 이해하기 위한 상세하고 최신의 튜토리얼
게임 만들기 시작하기
1. 페이지 접속
2. 게임 설정
게임 이름, 크기 및 그래픽 설정을 입력하세요.
이 설정은 나중에 변경할 수 있습니다.
3. 프로그래밍 시작
nekoscript로 게임을 프로그래밍하세요.
튜토리얼을 읽으며 배우세요.
이미지, 오디오 또는 파일과 같은 리소스는 웹에서 제공되어야 합니다.
4. 게임 내보내기
파일 → 내보내기 클릭
게임 설정을 확인하고 계속 클릭
리소스 크기에 따라 프로세스에 시간이 걸릴 수 있으며, 오류가 발생하면 여러 번 재시도하세요.
프로세스가 완료되면 .zip 파일이 자동으로 다운로드됩니다.
인터페이스 가이드 ↗
API →
API
NekoPlay는 2D 게임을 쉽고 직관적으로 만들기 위해 특별히 설계된 자체 API로 작동합니다.
이 API에는 draw.rectangle, @key.pressed, draw.sprite 등의 함수가 포함되어 있습니다. 모든 것이 외부 라이브러리나 복잡한 설정에 의존하지 않고 게임 로직을 작성할 수 있도록 설계되었습니다.
NekoPlay API는 버그 수정뿐만 아니라 엔진이 발전함에 따라 새로운 기능을 추가하고 프로세스를 단순화하기 위해 지속적으로 업데이트됩니다.
이렇게 작동하는 이유는 NekoPlay의 초점이 적극적인 개발에 있으며 게임 제작의 새로운 아이디어와 방법에 적응하기 때문입니다.
Api 1.4.3
▹ audio••••••오디오 트랙 제어
▹ camera•••••카메라 위치 제어
▹ cursor•••••터치 제스처 및 마우스 이벤트 처리
▹ div••••••••HTML 요소
▹ draw•••••••화면에 그리기
▹ ease•••••••값 보간
▹ file•••••••데이터 저장, 로드 및 삭제
▹ get••••••••파일 및 리소스 로드
▹ hitbox•••••충돌 감지
▹ key••••••••키보드 입력 감지
▹ scancode•••물리적 키보드 입력 감지
▹ physics••••물리 모듈
▹ random•••••난수 생성
▹ set••••••••그리기 설정
▹ scene••••••씬 제어
▹ Android••••Kotlin 인터페이스
버전 →
현재 버전
현재 버전은 1.4.3입니다.
v1.4.3
(2025년 11월 16일)
Windows용 내보내기
파일 → 내보내기 → Windows
모듈 Windows
Windows.closeGame
Windows.minimize
Windows.maximize
Windows.fullscreen
v1.4.2
(2025년 11월 12일)
draw의 새로운 함수
draw.animation()
버그 수정: Android용 내보내기 시 오류
v1.4.1
(2025년 11월 5일)
'nkp' 파일 수동 저장 개선.
스케일링 로직 개선.
audio 제어 기능 개선.
버그 수정: div에서 'onclick' 이벤트가 정의되지 않음.
버그 수정: camera에서 동적 카메라가 초기화되지 않음.
v1.4.0
(2025년 11월 3일)
새 모듈 physics
physics.material()
physics.contact()
physics.body()
physics.wire()
physics.chain()
physics.bumper()
physics.prism()
physics.tape()
physics.cable()
physics.gear()
physics.lock()
physics.spring()
physics.torsor()
physics.gravity()
camera의 새로운 함수
camera.follow()
camera.frame()
camera.page()
cursor의 새로운 함수
cursor.swipe()
cursor.scroll()
div의 새로운 함수
div.progress()
audio의 새로운 함수
<audio>.sfx()
<audio>.log()
Nekoscript
동적 코드 실행 eval()
새 테마
vaporwave
변경: draw.circle에서 기본적으로 원이 중앙 정렬됨
버그 수정: 마우스 상태가 active로 유지됨
버그 수정: 내보내기 시 div 요소의 기본 스타일이 정의되지 않음
버그 수정: Android에서 전체 화면 유형이 정의되지 않음
버그 수정: every가 $dt에 올바르게 접근하지 못함
버그 수정: wait이 오류 발생
v1.3.0
(2025년 10월 15일)
Android용 내보내기
파일 → 내보내기 → Android
Android 모듈 - Kotlin 인터페이스
Android.closeGame
Android.showToast
Android.requestNotifications
Android.notification
Android.fileSet
Android.fileGet
Android.fileDel
Android.fileExists
Android.fileSize
Android.fileList
div.button: 이벤트가 있는 버튼 추가.
모듈 이름 변경 gesture → cursor
(모호함 방지를 위해)
새로운 테마
카드 테마
보이드 테마
매직 변수 및 함수는 $로 작성
이전: @fps @dt @messages
현재: $fps $dt $messages
새 도형: 회전하는 직사각형
마지막이 각도인 5값 배열:[x, y, w, h, r]
예시:
draw.rectangle([0, 0, 480, 270, 45])
hitbox.collision([8, 8, 32, 32, 16], [16, 16, 24, 24, 35])
gesture.click([64, 64, 16, 20, 110])
Nekoscript
'로 문자열 외부 객체 접근: 'Hello ${name}'
global 없이 전역 변수 선언 가능
typeof - 객체 타입 확인
twice - 시퀀스당 1회 실행
otherwise - else 별칭
purr - 함수 정의 (func 별칭)
meow - 콘솔 출력 (print 별칭)
forever - 영구 실행
sometimes - 가끔 실행
maybe - 확률 실행
?[] - 랜덤 변수
Nekoscript 참조 →
그래픽 개선
버그 수정: once가 `main`에서 2회 실행됨
버그 수정: div 요소가 'load' 동기화 시 재설정되지 않음
v1.2.0
(2025년 9월 4일)
div: HTML 요소 모듈
div.input: 텍스트 입력 영역 추가
명령줄
정보: 인터페이스 - 레슨 4
Nekoscript
every
wait
message
on
once
remove
@messages
정보: 게임 지향 및 상수
v1.1.0
(2025년 7월 18일)
gesture: 원형 영역 감지
gesture.hover
gesture.active
gesture.click
gesture.released
Nekoscript 완전 통합
draw 모듈 함수가 set 모듈로 이동
keyboard 모듈 변경
로직이 key와 scancode 두 모듈로 분리
keyboard.pressedKeys → @keys
keyboard.pressedScancodes → @scancodes
새 함수 hitbox.inside
ease 모듈 재구성
audio.newAudio 제거
get.audio 사용
image.newImage 제거
get.image 사용
json 모듈 제거
get 모듈 사용
audio API 재구성
scene.load 제거
scene.change가 "async" 로드 지원
iframe 기반 디스플레이
이전에는 canvas로 인해 렉이 발생했습니다
v1.0.2
(2025년 6월 29일)
리소스 내보내기 버그 수정
터치스크린에서 gesture.getPosition 버그 수정
파이프라인 버그 수정
v1.0.1
(2025년 6월 21일)
Nekoscript 통합
v1.0.0
(2025년 6월 20일)
자동 스케일링
프레임워크: 로드 → 루프
씬
글로벌 스크립트
Chromium 지원
씬 에디터
스크립트 에디터
실시간 동기화
내보내기
<iframe>용 내보내기
<canvas>용 내보내기
index.html 포함 내보내기
게임 저장 .nkp
게임 불러오기 .nkp
씬 저장 .nkscene
씬 불러오기 .nkscene
스크립트 저장 .nkscript
스크립트 불러오기 .nkscript
언어
English
Español
Português
中文
日本語
한국어
위키
API
오디오
오디오 로드 (url)
오디오 재생
오디오 일시정지
오디오 정지
오디오 탐색
볼륨
볼륨 밸런스 (좌/우)
2D 카메라
카메라 변경
카메라 재설정
그리기
이미지 로드 (url)
이미지 그리기
스프라이트 그리기
사각형 그리기
선 그리기
다각형 그리기
원 그리기
호 그리기
텍스트 그리기
색상
투명도
효과
필터
값 부드럽게 하기
데이터 저장 (세이브 파일)
저장된 데이터 가져오기
저장된 데이터 수정/삭제
마우스 입력
터치 입력
커서 위치
클릭 위치
커서 상태
커서 상태 및 위치 계산
사각형 충돌
다각형 충돌
게임 정보 가져오기
초당 프레임
게임 시간
씬 시간
씬
파일 로드
json 로드 (url)
텍스트 파일 로드 (url)
Blob 로드 (url)
바이너리 로드 (url)
키보드 입력
키 상태
활성 키
난수
무작위 결정
확률 계산
씬 로드
씬 전환
테마
night 테마
eclipse 테마
snow 테마
power 테마
space 테마
tokyo 테마
arcade 테마
cyberpunk 테마
retro 테마
lsd 테마
arizona 테마