Below you will find pages that utilize the taxonomy term “websocket”
Posts
하나의 게임을 두종류의 클라이이언트로 vs 두종류의 게임을 하나의 클라이언트로
gowasm2dgame vs gowasm3dgame의 이야깁니다.
gowasm2dgame 에는 두가지 버전(2d, 3d) 의 클라이이언트를 구현 하고
gowasm3dgame 에는 두 종류의 게임(2d stage, 3d stage)을 구현 해보았습니다.
두 프로젝트 모두 게임 로직은 서버의 stage에서 구현하고 있고 클라이언트는 viewer로만 작동하기 때문에 가능한 구조입니다.
현재는 사용자의 게임조작을 서버로 전달하는 부분이 빠저있지만 추가하는 것이 어렵진 않습니다.
gowasm2dgame 은 재미삼아 구현 한 것이고,
gowasm3dgame 은 장기적으로 stage기반의 online게임 프레임워크를 만들수 있지 않을까 하는 생각으로 작업중인 것입니다.
gowasm2dgame html canvas version client
Posts
2020년 현재 goguelike의 상태 정리
goguelike - mmo-roguelike golang, websocket, webassembly, htmlcanvas (가능한한) 혼자서 만드는 MMO 서버 관리 서버 ( ground server )
다중 서버 지원
서버는 linux에서 golang으로 개발/실행
클라이언트는 golang으로 webassembly 를 생성
100% 서버 기반 클라이언트는 viewer , 사용자 입력을 서버로 전달 하는 역할
websocket을 사용 연결 유지형 클라이언트
클라이언트를 통한 핵킹/치트 가능성을 원천 봉쇄
클라이언트는 캐릭터의 현재 위치기준으로 시야내의 지형정보만을 받는다. ( 맵핵의 원천 봉쇄)
클라이언트 설치 불필요
webassembly/html5 canvas를 지원하는 web browser 라면 플랫폼 불문하고 플레이 가능
Posts
go4game 에 웹 클라이언트를 추가 했습니다.
사진 설명 : go4game web client
소스코드는 언제나 처럼 https://github.com/kasworld/go4game 에 있습니다.
go언어는 서버에서 사용하는 것을 중점으로 하고 있기 때문에 client UI 를 작성할 만한 라이브러리가 적당한 것이 없습니다.
기본 라이브러리만이 아니고 3rd party 에서도 아직까지는 딱히 이거다 라고 할만한 것이 없더군요.
그에 반해서 서버를 만들기 위한 라이브러리는 tcp/http 불문하고 넘칠 정도로 많고 또 잘되어 있는데 아마도 go언어로 만든 프로그램의 UI는 당연히 web으로 작성하라는 의미 같습니다.
그런 관계로 go4game도 client UI는 웹으로 작성해야 겠다는 생각이 들어서 ( 사실은 클라이언트 UI 라이브러리를 찾다 포기하고 ^^; ) 웹 작업을 했습니다.