Skip to content

Latest commit

 

History

History
65 lines (41 loc) · 4.24 KB

README.md

File metadata and controls

65 lines (41 loc) · 4.24 KB

OthelloProject

해당 프로젝트는 네트워크 프로그래밍 수업에서 Java 소켓 프로그래밍 실습으로 진행한 1인 텀프로젝트입니다.

메이플 스토리의 배틀 리버스를 참고하여 이미지를 구성했습니다.

GameSever 실행 후, 해당 서버에 접속하는 클라이언트는 게임 방을 생성하고 참여하여 오셀로 게임을 진행할 수 있습니다.


기능

  • 로비 기능

  • 방 생성 (8x8, 10x10, 12x12)

  • 채팅 기능

  • 무르기 기능

  • 자신과 상대방의 돌의 개수를 표시하는 기능

로비 방 생성
image image image image
유저가 접속하는 순서대로 로비에 입장 메세지가 전달됩니다. 방 생성을 누르면 방의 이름을 설정할 수 있고 방의 사이즈를 고를 수 있습니다.
방 생성이 완료되는 경우 방 인원의 제한
image image image
방은 접속해있는 유저에게 모두 보여지며 유저는 빈 방에 입장할 수 있습니다. 방의 인원이 모두 차면 유저는 해당 방에 들어갈 수 없습니다.
게임 입장 돌 두기
image image image image
빨간색 동그라미로 표시된 구역에 방의 이름이 표시되며 초기 게임은 슬라임 돌 2개, 핑크빈 돌 2개로 이루어집니다.
게임은 핑크빈 돌을 가지는 유저가 선공을 얻게 됩니다.
돌을 두게 되면 8방향으로 자신의 돌을 검사하게 되고, 사이에 있는 상대방의 돌은 자신의 돌이 됩니다.
무르기 무르기 수락
image image image image
자신의 차례인 경우 무르기를 요청할 수 있습니다. 무르기 요청을 수락하는 경우 이전 상태로 돌아가게 됩니다. 이후 돌을 다시 둘 수 있게 됩니다.
게임 나가기
image
image image
1번 방의 유저들이 모두 나가기를 눌러 게임을 나가는 경우 게임 방은 삭제됩니다.

기획

  • 시스템 구성도

  • 시스템 흐름도

아쉬운 점

  • 게임의 승패를 구현하지 못한 것

  • 복기 기능을 구현하지 못한 것

  • 관전 기능이 없는 것

  • UI 품질이 별로인 점