https://github.com/kasworld/goguelike-single
standalone(no network) version of gogguelike
https://github.com/kasworld/goguelike-single
opengl roguelike singleplayer
Last synced: about 2 months ago
JSON representation
standalone(no network) version of gogguelike
- Host: GitHub
- URL: https://github.com/kasworld/goguelike-single
- Owner: kasworld
- License: apache-2.0
- Created: 2021-03-24T06:10:45.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-03-14T06:34:47.000Z (about 4 years ago)
- Last Synced: 2025-10-26T02:02:21.973Z (7 months ago)
- Topics: opengl, roguelike, singleplayer
- Language: Go
- Homepage:
- Size: 12.6 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 실행하려면
설치 문서 INSTALL.md
지형 스크립트 설명 towerscript.md
# 개요 및 특징
## goguelike 의 단일 플레이어 버전
서버는 linux에서 golang으로 개발/실행
windows 지원 추가
클라이언트는 golang으로 webassembly 를 생성
## 100% 서버 기반
클라이언트는 viewer , 사용자 입력을 서버로 전달 하는 역할
websocket을 사용 연결 유지형 클라이언트
클라이언트를 통한 핵킹/치트 가능성을 원천 봉쇄
클라이언트는 캐릭터의 현재 위치기준으로 시야내의 지형정보만을 받는다. ( 맵핵의 원천 봉쇄)
클라이언트 설치 불필요
webassembly/websocket/webgl 지원하는 web browser 라면 플랫폼 불문하고 플레이 가능
## roguelike - roglight?
실시간 턴제
행동별로 필요한 turn이 다르다.
이동, 공격이 대각선인 경우 sqrt2 만큼 더 필요.
실시간 랭킹
서버가 시작 될때 마다 random한 지형을 생성 ( 동일한 지형 스크립트를 사용하더라도 )
## 지형 스크립트를 기반으로 지형을 생성
지형에 따른 공/방 변화
지형에 따른 시야의 제한
전투 가능/불가능 지역 지원
다른 지형 스크립트를 사용할 경우 완전히 다른 지형이 가능
지형 스크립트 생성기가 있다. - towermaker
## 시간에 따라 변화하는 세계
시간에 따라 지형이 변화 - 변화되는 지형을 visual 하게 표현
시간에 따른 환경의 변화가 게임 플레이에 영향을 끼침 ( 유리하게 또는 불리하게 )
서버/지역 별로 시간의 흐름을 다르게 할수 있다.
## 기본 게임 기능
시간 기반의 버프/디버프 구현
다양한 상태 이상(condition) 이 존재
전투와 탐험에 따른 경험치 획득 및 성장
함정이 존재 - 데미지, 텔레포트 성향 변화, 기억상실 등
범위 공격 존재
지뢰와 범위 공격을 하는 방해물 배치 가능
사망시 경험치 손실, 아이템, 소지금 드랍
장비 아이템 - level up 과 병행되는 강함
스크롤 과 포션, 게임 머니가 존재
재활용 상점(recycle)이 존재
장비/아이템의 무게 존재, 과중 시 페널티 존재.
채팅 가능
성장에 따라 HP(health point) / SP(stamina point) / 시야(sight) 증가
권한 키를 사용해 권한을 여러가지로 부여 할수 있다. ( admin 권한)