KR100506173B1 - 1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체 - Google Patents

1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체 Download PDF

Info

Publication number
KR100506173B1
KR100506173B1 KR10-2003-0000200A KR20030000200A KR100506173B1 KR 100506173 B1 KR100506173 B1 KR 100506173B1 KR 20030000200 A KR20030000200 A KR 20030000200A KR 100506173 B1 KR100506173 B1 KR 100506173B1
Authority
KR
South Korea
Prior art keywords
game
player
server
master
information
Prior art date
Application number
KR10-2003-0000200A
Other languages
English (en)
Other versions
KR20040062705A (ko
Inventor
김동필
Original Assignee
주식회사 타이젬
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 타이젬 filed Critical 주식회사 타이젬
Priority to KR10-2003-0000200A priority Critical patent/KR100506173B1/ko
Priority to JP2003434974A priority patent/JP2004209251A/ja
Priority to CNB2004100012414A priority patent/CN100346342C/zh
Publication of KR20040062705A publication Critical patent/KR20040062705A/ko
Application granted granted Critical
Publication of KR100506173B1 publication Critical patent/KR100506173B1/ko

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode

Abstract

본 발명은 1:N 방식의 온라인 바둑대국 시스템 및 그 방법과 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다. 본 발명에 따른 시스템은, 1대국자 클라이언트 및 복수의 N대국자 클라이언트에 대한 통신망을 통한 온라인 접속을 허용하는 복수의 바둑대국 서버, 상기 바둑대국 서버를 관장하는 바둑대국 마스터 서버를 포함하되, 상기 바둑대국 서버는 소정의 바둑돌 착점 수순에서 1대국자 클라이언트 또는 N대국자 클라이언트로부터 바둑돌 착점위치 정보를 입력받아 상기 바둑대국 마스터 서버로 전송하고, 상기 바둑대국 마스터 서버는 1대국자 착점 수순에서 상기 1대국자 클라이언트로부터 전송된 바둑돌 착점정보를 바둑대국 서버를 매개로 하여 N대국자 클라이언트로 브로딩하고, N대국자 착점 수순에서 상기 복수의 N대국자 클라이언트로부터 입력된 바둑돌 착점위치 정보로부터 최다 바둑돌 착점위치 정보를 산출하여 1대국자 클라이언트 및 N대국자 클라이언트로 브로딩함으로써, 해당하는 바둑돌 착점 수순에서 상기 1대국자 또는 N대국자 클라이언트에서 바둑돌이 그래픽 인터페이스로 착점될 수 있도록 프로세스를 제어하는 것을 특징으로 한다.

Description

1:N 방식의 온라인 바둑대국 시스템, 그 방법 및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체 {ON-LINE PADUK PLAY SYSTEM IN THE FORM OF 1:N, METHOD IMPLEMENTING THE SAME, AND COMPUTER READABLE MEDIUM STORED THEREON COMPUTER EXECUTABLE INSTRUCTION PERFORMING THE METHOD}
본 발명은 온라인 상에서 바둑대국을 할 수 있는 시스템 및 그 방법과 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
최근 바둑 애호가들 사이에서 오프라인 상의 기원을 방문하지 않더라도 바둑대국을 온라인 상에서 즐길 수 있는 인터넷 사이트가 각광을 받고 있다. 하지만, 대부분이 종래 기원 등에서 두어오던 바둑대국을 단순히 온라인 화한 것에 불과한 것이 대부분이어서 색다른 재미가 있다고는 볼 수 없다.
한편, 바둑의 수준은 급수로 평가되는데 급수의 상향을 위한 가장 바람직한 방법은 자신보다 수준이 높은 대국자와 바둑을 두어 봄으로써 상황 대처능력을 실전에서 배양하여 보는 방법이라 하겠다. 하지만, 모든 대국자들은 자신보다 높거나 적어도 동급의 급수를 가진 자와의 바둑대국을 원하는 것이 일반적이므로 바둑 초보자의 입장에서는 실전 지향형의 바둑 학습을 하는데 많은 어려움이 있게 마련이다. 더구나, 일반 바둑 애호가들이 프로 바둑기사와 같이 바둑급수가 높은 자와 바둑대국을 해 본다는 것은 현실적으로 많은 제약이 따르게 된다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 일반 바둑 애호가들이 바둑 프로기사와 1:N 방식의 바둑대국을 온라인 상에서 진행하면서 자신이 직접 바둑돌을 착점한 위치와 확률적으로 가장 많이 착점된 위치를 서로 비교하여 봄으로써 평소 대국하기 어려운 프로기사들과의 바둑대국을 온라인을 통해서 한다는 재미는 물론, 자신의 바둑 실력을 빠르게 향상시킬 수 있는 온라인 바둑대국 시스템 및 그 방법과 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 1:N 방식의 온라인 바둑대국 시스템은, 1대국자 클라이언트 및 복수의 N대국자 클라이언트에 대한 통신망을 통한 온라인 접속을 허용하는 복수의 바둑대국 서버, 상기 바둑대국 서버를 관장하는 바둑대국 마스터 서버를 포함하는 1:N 방식의 온라인 바둑대국 시스템에 대한 것으로서,
상기 바둑대국 서버는 소정의 바둑돌 착점수순에서 1대국자 클라이언트 또는 N대국자 클라이언트로부터 바둑돌 착점위치 정보를 입력받아 상기 바둑대국 마스터 서버로 전송하고,
상기 바둑대국 마스터 서버는 1대국자 착점 수순에서 상기 1대국자 클라이언트로부터 전송된 바둑돌 착점정보를 바둑대국 서버를 매개로 하여 N대국자 클라이언트로 브로딩하고, N대국자 착점 수순에서 상기 복수의 N대국자 클라이언트로부터 입력된 바둑돌 착점위치 정보로부터 최다 바둑돌 착점위치 정보를 산출하여 1대국자 클라이언트 및 N대국자 클라이언트로 브로딩함으로써, 해당하는 바둑돌 착점 수순에서 상기 1대국자 또는 N대국자 클라이언트에서 바둑돌이 그래픽 인터페이스로 착점될 수 있도록 프로세스를 제어하는 것을 특징으로 한다.
본 발명에 따른 시스템에 있어서, 상기 바둑대국 서버는 1대국자 클라이언트가 접속되는 1바둑대국 서버와 N대국자 클라이언트가 접속되는 N바둑대국 서버로 분리 운용되는 것이 바람직하다.
본 발명에 따른 시스템에 있어서, 상기 바둑대국 서버와 상기 바둑대국 마스터 서버의 동작 상태를 감시하고 서버에 문제가 발생된 경우 서버를 재실행시키는 감시복구 모듈을 더 포함하는 것이 바람직하다. 이러한 경우, 상기 감시복구 모듈은 시스템 초기화시 공유 메모리 파일을 생성하고, 상기 바둑대국 마스터 서버는 상기 공유 메모리 파일에 바둑대국 정보와 현재까지 진행된 기보정보를 착점 수순에 따라 순차적으로 저장하고, 상기 바둑대국 서버는 접속된 N대국자 클라이언트의 ID별로 착점 참여 횟수, 착점 맞춤 횟수 정보를 N대국자 착점수순에서 최다 바둑돌 착점위치가 산출되어 상기 바둑대국 마스터 서버로부터 브로딩될 때마다 상기 공유 메모리 파일에 저장 및 갱신하는 것이 바람직하다.
본 발명에 따른 시스템에 감시복구 모듈이 더 포함된 경우, 상기 감시복구 모듈은 주기적으로 상기 바둑대국 마스터 서버의 네트워크 응답을 체크하고 미리 정해진 시간 동안 응답이 없으면 상기 바둑대국 마스터 서버를 재실행하고, 상기 바둑대국 마스터 서버는 재실행되자 마자 상기 공유 메모리 파일을 참조하여 재실행 직전의 상태로 서버를 복원할 수 있다.
본 발명에 따른 시스템에 있어서, 바둑대국 정보 및 바둑대국 협상 정보를 바둑대국 마스터 서버에 설정하기 위한 사용자 인터페이스, 바둑대국 진행의 임의적 제어를 위한 사용자 인터페이스, 대국 운용자가 바둑대국 해설정보를 상기 바둑대국 마스터 서버에 입력하여 1대국자 및 N대국자 클라이언트로 브로딩될 수 있도록 하는 사용자 인터페이스를 구비한 대국 컨트롤러 모듈을 더 포함하는 것이 바람직하다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 1:N 방식의 온라인 바둑대국 방법은, (a) 복수의 바둑대국 서버가 1대국자 클라이언트 및 복수의 N대국자 클라이언트에 대한 통신망을 통한 온라인 접속을 허용하는 단계; (b) 1대국자의 착점 수순에서, 바둑대국 마스터 서버가 1대국자 클라이언트가 접속된 바둑대국 서버를 매개로 하여 1대국자 클라이언트로부터 바둑돌 착점위치 정보를 입력받은 후 N대국자 클라이언트가 접속되어 있는 바둑대국 서버를 매개로 하여 각각의 N대국자 클라이언트로 1대국자의 바둑돌 착점위치 정보를 브로딩하는 단계; 및 (c) N대국자 착점 수순에서, 바둑대국 마스터 서버가 복수의 N대국자 클라이언트가 접속되어 있는 각각의 바둑대국 서버를 매개로 하여 N대국자 클라이언트로부터 바둑돌 착점위치 정보를 수집하여 N대국자의 최다 바둑돌 착점위치 정보를 산출한 후 산출된 바둑돌 착점위치 정보를 바둑대국 서버에 접속되어 있는 1대국자 및 N대국자 클라이언트로 브로딩하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따른 방법에 있어서, (b) 단계 및 (c)단계가 진행되는 중에, 상기 바둑대국 마스터 서버는 바둑대국 정보와 바둑돌 착점에 따른 기보정보를 소정의 공유 메모리 파일에 저장하는 것이 바람직하다. 이러한 경우, 본 발명에 따른 방법은, 상기 바둑대국 마스터 서버가 재실행되는 단계; 및 상기 바둑대국 마스터 서버가 상기 공유 메모리 파일에 수록된 바둑대국 정보와 기보정보를 참조하여 서버의 상태를 복원하는 단계를 더 포함할 수 있다.
본 발명에 따른 방법에 있어서, (b) 단계 및 (c)단계가 진행되는 중에, 상기 바둑대국 서버는 자신에게 접속되어 있는 N대국자 클라이언트의 ID별로 착점 참가 횟수와 착점 맞춤 횟수를 소정의 공유 메모리 파일에 저장하는 것이 바람직하다. 이러한 경우, 본 발명에 따른 방법은, 상기 바둑대국 서버가 재실행되는 단계; 및상기 바둑대국 서버가 자신에게 접속되어 있었던 N대국자 클라이언트 ID별로 상기 공유 메모리 파일에 수록되어 있는 착점 참가 횟수 및 착점 맞춤 횟수를 참조하여 서버의 상태를 복원하는 단계를 더 포함할 수 있다.
본 발명의 다른 기술적 과제는 상기 1:N 방식의 온라인 바둑대국 방법을 프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체에 의해서도 달성될 수 있을 것이다. 이러한 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 프로그램 및 데이터가 저장되는 모든 종류의 기록매체를 포함한다. 그 예로는, 롬(Read Only Memory), 램(Random Access Memory), CD(Compact Disk)-Rom, DVD (Digital Video Disk)-Rom, 자기 테이프, 플로피 디스크, 하드디스크, 광데이터 저장장치 등이 있다. 또한, 이러한 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이하, 본 발명을 구체적으로 설명하기 위해 실시예를 들어 설명하고, 발명에 대한 이해를 돕기 위해 첨부도면을 참조하여 상세하게 설명하기로 한다. 그러나, 본 발명에 따른 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래에서 상술하는 실시예들에 한정되는 것으로 해석되어지지 않아야 한다. 본 발명의 실시예들은 당업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되어지는 것이다. 이하의 설명에 있어서, 1대국자라 함은 1:N 방식의 바둑 대국에 있어서 N명의 대국자를 상대로 바둑대국을 진행하는 1인을 지칭하고, N대국자라 함은 상기 1대국자를 상대로 바둑대국을 진행하는 복수의 대국자를 지칭하고, 대국 운용자라 함은 바둑 대국의 진행시 바둑해설과 바둑대국 진행의 전반적인 흐름을 제어하는 자를 지칭함을 밝혀둔다.
도1은 본 발명의 일 실시예에 따른 1:N 방식의 온라인 바둑대국 시스템의 개략적인 구성도이다.
도1을 참조하면, 본 발명에 따른 온라인 바둑대국 시스템은 크게 1대국자 컴퓨터 단말에서 구동되는 1대국자 클라이언트(10)와; 복수의 N대국자 컴퓨터 단말에서 구동되는 복수의 N대국자 클라이언트(20)와; 상기 1대국자 클라이언트(10) 및 상기 N대국자 클라이언트(20)와 통신 네트워크, 예컨대 인터넷을 매개로 하여 웹 인터페이스를 형성하는 웹서버(30)와; 통신 네트워크, 예컨대 인터넷을 통해 상기 1대국자 클라이언트(10)의 온라인 접속을 허용하고, 1:N 방식의 온라인 바둑대국이 상기 1대국자 클라이언트(10)에서 진행될 수 있도록 전반적인 프로세스를 관장하는 1바둑대국 서버(40)와; 통신 네트워크, 예컨대 인터넷을 통해 복수의 N대국자 클라이언트(20)의 온라인 접속을 허용하고, 1:N 방식의 온라인 바둑대국이 상기 N대국자 클라이언트(20)에서 진행될 수 있도록 전반적인 프로세스를 관장하는 N바둑대국 서버(50)와; 상기 1바둑대국 서버(40) 및 상기 N바둑대국 서버(50)의 전반적인 제어 및 관리를 담당하고 1:N 방식의 온라인 바둑대국이 진행됨에 있어서 1대국자가 둔 바둑돌 착점위치 또는 복수의 N대국자들이 둔 바둑돌의 최다 착점위치를 계산하고 그 결과를 상기 1바둑대국 서버(40) 및 상기 N바둑대국 서버(50)를 매개로 하여 1대국자 클라이언트(10) 및 복수의 N대국자 클라이언트(20)로 브로딩함으로써 상기 클라이언트들(10, 20)에 그래픽 인터페이스로 디스플레이된 바둑판에 바둑돌이 착점될 수 있도록 온라인 바둑대국 프로세스를 제어하는 바둑대국 마스터 서버(60)와; 1:N 방식의 온라인 바둑대국의 진행을 위해 필요한 정보와 상기 온라인 바둑대국의 진행시 실시간으로 파생되는 각종 데이터가 저장되어 관리되는 데이터베이스(70)와; 상기한 웹서버(30), 1바둑대국 서버(40), N바둑대국 서버(50) 및 바둑대국 마스터 서버(60)가 상기 데이터베이스(70)의 조회, 데이터 갱신, 데이터 삭제 등의 요청을 할 경우 이를 처리하는 데이터베이스 관리모듈(80)과; 대국 운용자가 바둑대국 마스터 서버(60)에 로그인하여 온라인 바둑대국의 협상정보(치수, 공제, 바둑판 크기, 착점 제한시간)를 세팅하고 바둑대국이 진행되는 과정에서 소정 수순의 바둑돌 착점에 대한 전문가 해설정보의 입력 및 바둑대국의 운용자적 제어(착점시간 변동, 착점중지, 한수 쉼, 한수 무름 등)를 위한 사용자 인터페이스를 제공하고 바둑돌 착점시간 개시 및 종료를 지시하는 이벤트 코드를 발생시켜 온라인 바둑대국의 진행을 제어하는 대국 컨트롤러 모듈(90);을 포함하는 것을 특징으로 한다.
상기 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)는 엑티브엑스 (ActiveX) 컨트롤로 제작되어 웹페이지에 삽입되고, 1대국자 또는 N대국자가 상기 웹서버(30)에 접속하여 1:N 방식의 온라인 바둑대국 진행요청을 하였을 때 각각 1대국자 컴퓨터 단말 및 N대국자 컴퓨터 단말에서 실행되는 것이 바람직하다. 하지만, 본 발명에 따른 기술적 사상이 이에 한정되는 것은 아니다. 상기 1대국자 또는 N대국자 클라이언트(10, 20)는 바둑대국 진행시 필요한 바둑판의 이미지를 그래픽 인터페이스로 1대국자 또는 N대국자에게 출력하고, 1대국자 또는 N대국자가 자신의 바둑돌 착점 수순에서 미리 정해진 소정의 착점 제한 시간 안에 마우스 등의 공지된 데이터 입력장치를 이용하여 바둑돌 착점위치를 지정하면 그 위치에 바둑돌을 그래픽 인터페이스로 디스플레이 함과 동시에 바둑돌 착점위치 정보를 1바둑대국 서버(40) 또는 N바둑대국 서버(50)를 매개로 하여 바둑대국 마스터 서버(60)로 전송한다. 이 때, 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)는 대국 컨트롤러 모듈(90)로부터 착점개시 코드가 브로딩되면 바둑돌의 착점을 허용하고 착점종료 코드가 브로딩되면 현재 수순에서의 바둑돌 착점을 허용하지 않고, 1대국자 또는 N대국자가 정해진 시간 안에 바둑돌을 착점하는지를 판단하기 위해 소정의 시간을 카운팅해야 함은 물론이다. 그러면, 바둑대국 마스터 서버(60)는 전송된 바둑돌 착점위치 정보를 취합하여 현재 시점에서 착점될 바둑돌의 위치 정보를 다시 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)로 브로딩하여 해당 착점위치에 바둑돌이 그래픽 인터페이스로 확정적으로 출력되도록 한다.
이를 보다 구체적으로 살펴보면, 1대국자가 자신의 착점 수순에서 정해진 착점 제한 시간 안에 소정의 위치에 바둑돌을 착점하면 착점위치 데이터는 1바둑대국 서버(40)를 경유하여 바둑대국 마스터 서버(60)로 전송되고, 바둑대국 마스터 서버(60)는 다시 1바둑대국 서버(40) 및 N바둑대국 서버(50)를 매개로 하여 1대국자의 바둑돌 착점위치 데이터를 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)로 브로딩한다. 그러면, 1대국자 클라이언트(10)는 1대국자의 바둑돌 착점위치를 최종 확정하고, N대국자 클라이언트(20)는 1대국자가 착점한 바둑돌이 해당 위치에 그래픽 인터페이스로 출력되게 한다.
이와 달리, 복수로 된 N대국자 각각이 자신들의 착점 수순에서 미리 정해진 착점 제한 시간 안에 소정의 위치에 바둑돌을 착점하면 각각의 N대국자가 둔 바둑돌의 착점위치 데이터는 각각의 N대국자 클라이언트(20)가 접속되어 있는 해당 N바둑대국 서버(50)로 수집된다. 그런 다음, N바둑대국 서버(50) 각각은 착점 제한시간이 경과되자마자 곧 바로 자신에게 접수된 착점위치 정보를 이용하여 최다 착점위치 정보와 착점자수 정보를 바둑대국 마스터 서버(60)로 전송한다. 그러면, 바둑대국 마스터 서버(60)는 복수의 N바둑대국 서버(50)가 전송한 정보를 이용하여 복수의 N대국자들이 둔 바둑돌의 최다 바둑돌 착점위치를 산출하고 이를 다시 1바둑대국 서버(40) 및 N바둑대국 서버(50)를 매개로 하여 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)로 브로딩한다. 그러면, 1대국자 클라이언트(10)와 N대국자 클라이언트(20)는 브로딩된 N대국자 최다 바둑돌 착점위치 정보를 이용하여 해당하는 위치에 바둑돌이 그래픽 인터페이스로 출력되도록 한다.
상기 N대국자 클라이언트(20)는 N대국자가 자신이 착점한 바둑돌의 착점위치가 바둑대국 마스터 서버(60)로부터 브로딩된 최다 바둑돌 착점위치와 정확하게 일치하는 상황이 발생될 때마다 순차적으로 증가시켜가며 일치숫자를 N대국자에게 디스플레이하는 것이 바람직하다.
이를 위해, N바둑대국 서버(50)는 접속되어 있는 해당 N대국자 클라이언트 (20)로부터 바둑돌 착점위치가 전송되면 이를 메모리에 기억하고 있다가 바둑대국 마스터 서버(60)로부터 최다 바둑돌 착점위치 정보가 산출되어 브로딩되면 이를 메모리에 기억시켜 둔 각각의 N대국자가 둔 바둑돌 착점위치와 비교하여 일치하는 N대국자의 클라이언트(20)에게는 바둑돌 착점위치가 일치하였음을 의미하는 코드를 전송하여 주는 것이 바람직하다. 이러한 경우, N대국자의 클라이언트(20)는 상기 코드가 전송될 때마다 바둑돌 착점위치의 일치숫자를 순차적으로 1씩 증가시켜가며 N대국자에게 그래픽 인터페이스로 출력시킬 수 있다.
경우에 따라서는 N바둑대국 서버(50)가 최다 바둑돌 착점위치 정보가 바둑대국 마스터 서버(60)로부터 브로딩될 때마다 각각의 N대국자마다 자신이 둔 바둑돌 착점위치와 최다 바둑돌 착점위치와의 일치 숫자를 누적 계산하여 메모리에 저장하고 있다가 최다 바둑돌 착점위치 정보를 각각의 N대국자 클라이언트(20)로 브로딩하면서 현재 시점까지 누적 계산된 일치 숫자를 함께 전송할 수도 있다. 이러한 경우, N대국자의 클라이언트(20)는 전송 받은 누적 계산된 일치 숫자를 N대국자에게 그래픽 인터페이스로 단순히 디스플레이하여 통보하여 주면 된다.
본 발명에 있어서, 상기한 대국 컨트롤러 모듈(90)은 바둑대국의 진행상황(1대국자 또는 N대국자의 바둑돌 착점상황)을 그래픽 인터페이스로 출력시킴으로써 대국 운용자가 바둑대국 진행상황을 실시간으로 파악할 수 있도록 하는 것이 바람직하다. 이를 위해, 바둑대국 마스터 서버(60)는 1대국자 클라이언트(10)로부터 1대국자의 바둑돌 착점위치 정보를 전송 받을 때 및 N대국자들의 최다 바둑돌 착점위치가 결정될 때마다 당해 정보를 상기 대국 컨트롤러 모듈(90)로 전송하여 주는 것이 바람직하다. 이러한 경우, 상기 대국 컨트롤러 모듈(90)은 대국 운용자의 컴퓨터 단말에 그래픽 인터페이스로 출력된 바둑판의 이미지에 바둑대국 마스터 서버(60)가 전송한 바둑돌의 착점위치를 참조하여 해당 위치에 바둑돌이 그래픽 인터페이스로 출력되도록 프로세스를 제어한다.
상기 대국 컨트롤러 모듈(90)은 대국 운용자가 바둑대국이 진행될 때 해설정보를 1대국자 클라이언트(10) 및/또는 N대국자 클라이언트(20)에게 실시간으로 제공하여 줄 수 있도록 하는 해설정보 입력 인터페이스를 구비할 수 있다. 이러한 경우, 대국 운용자는 해설정보 입력 인터페이스에 바둑해설 정보를 입력할 수 있고, 이 때 대국 컨트롤러 모듈(90)은 입력된 바둑해설 정보를 바둑대국 마스터 서버(60)로 전송한다. 그러면, 바둑대국 마스터 서버(60)는 전송 받은 바둑해설 정보를 바둑대국 서버(40, 50)를 매개로 하여 1대국자 클라이언트(10) 또는 N대국자 클라이언트(20)로 브로딩하게 되고, 바둑해설 정보를 브로딩 받은 1대국자 클라이언트(10) 또는 N대국자 클라이언트(20)는 바둑해설 정보를 소정의 사용자 인터페이스, 예컨대 바둑해설 정보 출력 인터페이스에 그래픽 인터페이스로 출력시키는 것이 바람직하다.
또한, 대국 컨트롤러 모듈(90)은 기 설정되어 있는 바둑협상 정보, 예컨대 바둑돌 착점제한 시간을 조절할 수 있도록 하는 사용자 인터페이스, 바둑대국의 일시 정지나 한수 쉼 등 바둑대국의 진행을 운용자 임의로 조절할 수 있는 사용자 인터페이스를 구비할 수 있다. 이러한 경우, 상기한 사용자 인터페이스를 통하여 입력된 제어정보는 바둑대국 마스터 서버(60)와 1대국자 및 N바둑대국 서버(40, 50)를 경유하여 1대국자 및 N대국자 클라이언트(10, 20)로 브로딩됨으로써 바둑돌의 착점제한 시간의 변동, 바둑대국 일시정지, 한수 쉼 등의 제어가 이루어지게 된다.
한편, 본 발명에 따른 시스템과 같이 1:N 방식으로 바둑대국을 진행하는 시스템의 경우는 특성 상 상당한 데이터 처리 로드가 발생되고 이에 따라 경우에 따라서는 시스템에 포함되어 있는 각종 서버(특히, N바둑대국 서버, 바둑대국 마스터 서버)가 다운되는 사태가 발생될 수 있다. 따라서, 본 발명에 따른 온라인 바둑대국 시스템은 각종 서버의 동작상황을 실시간으로 감시하고 있다가 특정 서버가 다운되는 등의 사태가 발생될 경우 이를 다운되기 바로 직전의 상태로 복구하는 기술적 구성을 채택하는 것이 바람직하다.
보다 구체적으로, 본 발명에 따른 바둑대국 시스템은 데이터의 트래픽이 많은 N바둑대국 서버(50) 및 바둑대국 마스터 서버(60)의 동작상황을 실시간으로 모니터링하고 있다가 소정의 서버가 다운되는 등의 문제가 발생된 경우 해당 서버를 문제발생 시점 바로 직전의 상태로 복구시키는 감시복구 모듈(100)을 더 포함하는 것이 바람직하다. 이러한 경우, 상기 감시복구 모듈(100)은 본 발명에 따른 시스템이 초기화되면 먼저 메모리에 공유 메모리 파일을 생성하며, 소정의 1:N 방식의 온라인 바둑대국이 개시될 경우 상기 바둑대국 마스터 서버(60)는 상기 공유 메모리 파일에 현재 진행되는 온라인 바둑대국 정보(조치훈 9단과의 1:N 바둑대국); 착점위치(1대국자 또는 N대국자)가 결정될 때마다 현재까지 착점된 모든 바둑돌의 착점위치 정보(소위 기보정보); 및 현재 진행되는 바둑대국의 협상 정보를 저장하고, 상기한 각각의 N대국자 바둑서버(50)는 접속된 N대국자의 ID정보와 접속된 ID 별로 착점을 맞춘 횟수; 착점에 참여한 횟수; 및 당해 ID의 로그인 또는 로그오프 상황 정보를 바둑대국 마스터 서버(60)에서 N대국자의 최다 바둑돌 착점위치가 결정되어 그 위치정보가 브로딩될 때마다, N대국자가 새롭게 N바둑대국 서버(50)에 접속하거나 접속을 해제할 때마다 실시간으로 공유 메모리 파일에 상기한 정보들을 수록 또는 갱신시킨다. 이와 같이 하게 되면, 본 발명에 따른 시스템에 포함된 소정의 서버에 문제가 발생되는 경우 상기 감시복구 모듈(100)은 다음과 같은 과정을 통하여 문제 발생 전의 상태로 해당 서버를 복원시키게 된다.
[바둑대국 마스터 서버(60)의 복원]
온라인 바둑대국이 개시되면 상기 감시복구 모듈(100)은 환경설정 파일에 저장된 바둑대국 마스터 서버(60)의 IP와 포트번호를 이용하여 바둑대국 마스터 서버(60)에 네트워크 응답(Ping 응답)을 소정의 시간간격으로 요구하게 된다. 만약, 미리 정해진 시간동안 바둑대국 마스터 서버(60)가 네트워크 응답을 하지 않게 되면, 감시복구 모듈(100)은 바둑대국 마스터 서버(60)에 문제가 발생된 것으로 보고, 바둑대국 마스터 서버(60)를 재실행한다. 상기 바둑대국 마스터 서버(60)는 상기 감시복구 모듈(100)에 의해 재실행되자 마다 감시복구 모듈(100)이 관리하는 공유 메모리 파일을 참조함으로써 문제 발생 직전의 환경으로 서버 상태를 복원시키게 된다. 이 때, 참조되는 정보로는 현재 시점에서 진행되는 온라인 바둑대국 정보(조치훈 9단과의 1:N 바둑대국); 문제발생 직전에 저장되어 있던 모든 바둑돌의 착점위치 정보(기보정보); 및 현재 진행되는 바둑대국의 협상 정보 등을 들 수 있다. 바둑대국 마스터 서버(60)가 복원되는 동안 1바둑대국 서버(40) 및 N바둑대국 서버(50)는 대기상태를 유지하고 바둑대국 마스터 서버(60)에 전송해야 할 정보들을 바둑대국 마스터 서버(60)가 복원될 때가지 버퍼링하여 둔다. 바둑대국 마스터 서버(60)가 복원되면 1 또는 N바둑대국 서버(40, 50)는 버퍼링하여 둔 정보를 다시 바둑대국 마스터 서버(60)로 전송하여 주며 바둑대국 마스터 서버(60)는 온라인 바둑대국의 진행을 위해 수행하여야 하는 원래의 프로세스를 다시 시작한다.
[ N바둑대국 서버(50)의 복원 ]
온라인 바둑대국이 개시되면 상기 감시복구 모듈(100)은 환경설정 파일에 저장된 N바둑대국 서버(50)의 IP와 포트번호를 이용하여 N바둑대국 서버(50)에 네트워크 응답(Ping 응답)을 소정의 시간간격으로 요구하게 된다. 만약, 미리 정해진 시간동안 N바둑대국 서버(50)가 네트워크 응답을 하지 않게 되면, 감시복구 모듈(100)은 N바둑대국 서버(50)에 문제가 발생된 것으로 보고, N바둑대국 서버(50)를 재실행한다. N바둑대국 서버(50)는 상기 감시복구 모듈(100)에 의해 재실행되자 마다 감시복구 모듈(100)이 관리하는 공유 메모리 파일을 참조함으로써 문제 발생 직전의 환경으로 서버 상태를 복원시키게 된다. 보다 구체적으로, N바둑대국 서버(50)는 상기한 공유 메모리 파일을 참조하여 문제발생 직전에 접속되어 있었던 N대국자의 ID정보; 착점을 맞춘 횟수; 착점에 참여한 횟수; 로그인 또는 로그오프 상황 정보를 복사하여 N대국자들의 집계현황 정보를 복원하고, 다시 바둑대국 마스터 서버(60)에 접속하여 현재 시점에서 진행되고 있는 바둑 대국정보와 기보 정보를 전송 받아 서버를 다시 세팅함으로써 문제 발생전 상태로의 복원을 완료한다. 한편, N바둑대국 서버(50)가 복원되는 과정에서 경우에 따라 N대국자 클라이언트(20)의 접속이 해제될 수 있다. 이러한 경우, N대국자 클라이언트(20)는 N바둑대국 서버(50)에 자동으로 재접속을 시도하는 것이 바람직하다.
도2는 본 발명의 일 실시예에 따른 1:N 방식의 온라인 바둑대국 시스템의 초기화과정을 도시한 절차 흐름도이다.
도2를 참조하여 본 발명에 따른 바둑대국 시스템의 초기화 과정을 살펴보면, 시스템의 초기화가 시작되면 먼저 상기 감시복구 모듈(100)이 실행된다(S10단계). 이어서, 감시복구 모듈(100)은 상술한 공유 메모리 파일을 생성한 후(S20단계) 바둑대국 마스터 서버(60), 1바둑대국 서버(40), N바둑대국 서버(50)에 네트워크 응답을 요구하고 응답이 이루어지지 않을 경우 각 서버를 실행시킨다(S30단계). 바둑대국 마스터 서버(60)는 실행된 후 공유 메모리 파일에 엑세스하여 바둑대국과 관련된 정보(바둑대국 정보, 기보정보 등)가 이미 수록되어 있는지 조사하고 그렇다면 수록된 정보를 참조하여 서버를 세팅하고 그렇지 않다면 서버를 초기화 상태로 세팅한다(S40단계). 그런 다음, 바둑대국 마스터 서버(60)는 네트워크 상에서 자신의 존재를 브로딩하여 알리게 되고(S50단계), 이에 따라 1바둑대국 서버(40)와 N바둑대국 서버(50)는 바둑대국 마스터 서버(60)에 접속하여 1:N 방식의 바둑대국이 가능한 접속 대기상태를 이루게 된다(S60단계). 만약, 바둑대국 마스터 서버(60)가 초기화되면서 공유 메모리 파일에 이미 수록되어 있었던 정보(바둑대국 정보, 기보정보 등)에 따라 세팅이 이루어진 경우, 1 및 N바둑대국 서버(40, 50)는 초기화를 위한 바둑대국 마스터 서버(50)에 접속시 바둑대국 정보와 기보정보 등의 정보를 전송 받아 서버 상태를 세팅하게 된다.
신규의 1:N방식의 온라인 바둑대국이 진행되는 경우, 대국 운용자는 대국 컨트롤러 모듈(90)을 이용하여 대기중인 바둑대국 마스터 서버(60)에 접속하여 개최 예정인 바둑대국 정보(대국의 이름, 대국 참여자 조건, 대국협상 조건, 바둑돌 착점 제한 시간 등)를 설정한다. 그러면, 바둑대국 마스터 서버(60)는 상기한 정보들을 감시복구 모듈(90)이 생성한 공유 메모리 파일에 수록하고 네트워크를 통하여 1바둑대국 서버(50)와 N바둑대국 서버(50)에 브로딩하게 한다. 1바둑대국 서버(40)와 N바둑대국 서버(50)는 브로딩된 정보를 이용하여 서버를 세팅하고 1:N방식의 온라인 바둑대국의 진행을 위해 클라이언트(10, 20)의 온라인 접속을 대기하게 된다.
도3은 본 발명의 일 실시예에 따른 1:N 방식의 온라인 바둑대국 방법의 흐름을 개략적으로 도시한 절차 흐름도이고, 개최될 온라인 바둑대국 정보는 이미 대국 운용자에 의해 시스템에 반영되어 있는 상태이다.
도3을 참조하여 본 발명에 따른 온라인 바둑대국 방법의 진행과정을 상세하게 설명하면, 먼저 1대국자 및 N 대국자는 상술한 본 발명의 시스템에 구비된 웹서버(30)에 접속하여 회원으로 가입하여 대국자 ID와 비밀번호를 획득한다(S70단계). 이 때, 1대국자 및 N대국자가 회원정보로 제공하는 정보로는, 자신이 사용할 대국자 ID; 이름; 비밀번호; 바둑급수 등을 들 수 있다. 이러한 정보는 본 발명에 따른 시스템에 구비된 데이터베이스(70)에 수록되어 관리 및 갱신된다. 이어서, 1대국자 및 N대국자는 1:N 방식의 온라인 바둑대국을 하기 위해 상기 웹서버(30)에 접속하여 회원 로그인을 한다(S80단계). 회원 로그인에 성공하면, 1대국자 및 N대국자는 자신이 참여하고자 하는 1:N 방식의 바둑대국을 선택한다(S90단계). 그러면, 1대국자 및 N대국자 컴퓨터 단말에서는 상술한 바 있는 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)가 실행되고(S110단계) 1대국자 클라이언트는 1바둑대국 서버(40)에, N대국자 클라이언트는 N바둑대국 서버(50)에 접속이 이루어진다(S100단계).
이 때, 상기 N바둑대국 서버(50)는 복수로 운용되기 때문에 상기 웹서버(30)는 N바둑대국 서버(50)에 대한 클라이언트(50) 접속을 균일하게 분산시키는 것이 바람직하고, 1대국자는 최소한 1:N방식의 온라인 바둑대국이 시작되기 이전에 1바둑대국 서버(40)에 접속하여야 하고 N대국자의 경우는 적어도 1인 이상이 1:N방식의 온라인 바둑대국이 시작되기 이전에 N바둑대국 서버(50)에 접속하여야 하는 것이 바람직하다. N대국자의 경우는 1:N방식의 온라인 바둑대국이 진행되고 있는 도중에는 언제라도 N바둑대국 서버(50)에 접속하여 온라인 바둑대국에 참여하거나 접속을 해제하여 온라인 바둑대국에서 이탈하여도 무방함은 물론이다.
1대국자 및 N대국자 클라이언트(10, 20)가 컴퓨터 단말에서 실행되면(S110단계) 각각 1바둑대국 서버(40) 및 N바둑대국 서버(50)에 접속하여 바둑대국 정보; 협상정보; 현재까지 진행된 기보 데이터를 전송 받게 되고 전송 받은 정보에 따라 바둑판 이미지를 구성하여 현재 수순까지의 바둑돌 착점 현황을 그래픽 인터페이스로 출력한다(S120단계). 한편, 1바둑대국 서버(40) 및 N바둑대국 서버(50)는 현재 시점에서 접속한 1대국자 및 N대국자의 ID, 착점 참여 횟수, 착점 맞춤 횟수, 로그인 유지 상태 등의 정보를 관리하게 됨은 물론 감시복구 모듈(100)이 생성한 공유 메모리 파일에도 상기한 정보를 수록 및 갱신하게 된다. 1대국자 또는 N대국자의 바둑돌 착점에 따른 프로세스는 다음과 같이 서로 다르게 이루어진다(S130단계).
[1대국자의 착점]
1대국자가 자신에게 주어진 바둑돌 착점수순에서 소정의 시간 안에 바둑돌을 착점하게 되면(S140단계), 먼저 미리 설정되어 있는 바둑돌 착점제한시간 내의 착점인지 검사한 후(S145단계) 1대국자 클라이언트(10)는 1대국자의 바둑돌 착점상황을 그래픽 인터페이스로 출력함과 동시에 바둑돌이 착점된 위치 정보를 1바둑대국 서버(40)로 전송한다(S150단계). 1바둑대국 서버(40)는 전송 받은 바둑돌 착점위치 정보를 바둑대국 마스터 서버(60)로 다시 전송한다(S160단계). 그러면, 바둑대국 마스터 서버(60)는 현재 시점에서 착점된 바둑돌의 위치정보를 1바둑대국 서버(40) 및 N바둑대국 서버(50)를 매개로 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)로 브로딩하게 된다(S170단계). 그러면, 1대국자 클라이언트(10)에서는 1대국자가 둔 바둑돌의 착점이 확정되고 N대국자 클라이언트(20)에서는 1대국자가 둔 바둑돌이 해당 착점위치에 그래픽 인터페이스로 출력되게 된다(S180단계). 1대국자의 바둑돌 착점위치 정보가 바둑대국 마스터 서버(60)에서 슬레이브 서버들(40, 50)로 브로딩되는 과정에서 각 서버들은 메모리에 기억하고 있는 기보정보를 갱신한다(S190단계). 착점제한시간이 경과되고(S200단계), 바둑대국이 아직 진행중이면(S210단계) 바둑돌 착점수순이 N대국자들에게 넘어간다(S220단계).
[N대국자의 착점]
복수의 N대국자가 자신에게 주어진 바둑돌 착점수순에서 소정의 시간 안에 바둑돌을 착점하게 되면(S230단계), 먼저 미리 설정되어 있는 바둑돌 착점제한시간 내의 착점인지 검사한 후(S235단계) 먼저 각각의 N대국자 클라이언트(20)는 각 N대국자의 바둑돌 착점상황을 그래픽 인터페이스로 출력함과 동시에 바둑돌이 착점된 각 위치 정보를 자신이 접속되어 있는 N바둑대국 서버(50)로 전송한다(S240단계). 각 N바둑대국 서버(50)는 전송 받은 N대국자들의 바둑돌 착점위치 정보를 취합하여 최다 바둑돌 착점위치 정보와 그 착점위치에 바둑돌을 둔 N대국자의 숫자를 산출한 후 바둑대국 마스터 서버(60)로 전송한다(S250단계). 그러면, 바둑대국 마스터 서버(60)는 각각의 N바둑대국 서버(50)가 전송한 정보를 다시 취합하여 최종적인 최다 바둑돌 착점위치 정보를 산출한다. 그런 다음, 바둑대국 마스터 서버(60)는 산출된 최다 바둑돌 착점위치 정보를 1바둑대국 서버(40) 및 N바둑대국 서버(50)에 브로딩한다(S260단계). 그러면, 1바둑대국 서버(40)는 전송 받은 최다 바둑돌 착점위치 정보를 이용하여 메모리에 기억하고 있는 기보정보를 갱신하고(S270단계) 다시 상기 최다 바둑돌 착점위치 정보를 1대국자 클라이언트(10)로 브로딩한다(S280단계). 그러면, 1대국자 클라이언트(10)는 N대국자들이 둔 최다 바둑돌 착점위치에 바둑돌을 그래픽 인터페이스로 출력시키게 된다(S290단계). 한편, N바둑대국 서버(50)는 전송 받은 최다 바둑돌 착점위치 정보를 이용하여 메모리에 기억하고 있는 기보정보와, 현재 바둑돌을 착점하였던 N대국자의 착점 참여 횟수 정보 및 착점 맞춤 횟수를 갱신한 후(S270단계) 상기 최다 바둑돌 착점위치 정보를 자신에게 접속한 N대국자 클라이언트(20)로 브로딩하여 줌은 물론 N대국자 ID별로 착점 참여 횟수 정보 및 착점 맞춤 횟수 정보도 N대국자 클라이언트(20)로 브로딩하여 준다(S280단계). 그러면, N대국자 클라이언트(20)는 현재 수순에서의 바둑돌 착점위치를 바둑대국 마스터 서버(60)가 전송하여 준 최다 바둑돌 착점위치로 최종 확정짓고 바둑돌을 그래픽 인터페이스로 출력하게 되며, 브로딩된 착점 참여 횟수와 착점 맞춤 횟수 또한 그래픽 인터페이스로 출력시키게 된다(S290단계). 착점제한시간이 경과되고(S300단계), 바둑대국이 아직 진행중이면(S310단계) 바둑돌 착점수순이 1대국자들에게 넘어간다(S220단계).
상기한 바와 같은 1대국자 및 N대국자의 바둑돌 착점은 특별한 사정이 없는 한 바둑대국이 종료될 때까지 교대로 이루어진다. 또한, 바둑돌 착점의 개시와 종료는 대국 컨트롤러 모듈(90)에 의해 전체적으로 제어되는 것이 바람직하다. 이를 위해, 대국 컨트롤러 모듈(90)은 바둑돌의 착점 수순마다 바둑돌 착점 개시 코드와 종료 코드를 바둑대국 마스터 서버(60)를 매개로 하여 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)로 브로딩하고, 이에 맞추어 1대국자 클라이언트(10) 및 N대국자 클라이언트(20)가 바둑돌의 착점을 허용하는 것이 바람직하다. 또한, 대국 운용자가 바둑돌 착점제한 시간을 설정하여 둔 경우 상기한 바둑돌 착점 개시 코드가 클라이언트(10, 20)로 브로딩되면서 바둑돌 착점제한 시간이 같이 브로딩됨으로써 1대국자 클라이언트(10) 또는 N대국자 클라이언트(20)는 바둑돌의 착점가능 시간이 개시되자마자 역순으로 카운팅하여 착점가능 시간을 그래픽 인터페이스로 보여주는 것이 바람직하다.
1:N방식의 온라인 바둑대국이 진행되고 있는 도중에 새로운 N대국자가 로그인을 거쳐 N바둑대국 서버(50)에 접속하게 되면, N대국자 클라이언트(20)는 서버에 접속하자마자 N바둑대국 서버(50)로부터 바둑대국 정보, 바둑대국 협상 정보, 현재까지 진행되어 있는 기보정보를 전송 받아 바둑대국 환경을 설정함으로써 곧 바로 신규의 N대국자가 온라인 바둑대국에 참여할 수 있도록 하는 것이 바람직하다.
이상에서 본 발명의 최적 실시예들이 개시되었다. 여기에서 특정한 용어가 사용되었으나, 이는 단지 본 발명을 당업자에게 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다.
본 발명의 일 측면에 따르면, 종래의 1:1 방식이라는 바둑대국의 한계를 극복할 수 있다.
본 발명의 다른 측면에 따르면, 1대국자가 프로 바둑기사인 경우 N대국자의 자격으로 참여하는 자의 입장에서는 평소에는 상상도 할 수 없었던 프로 바둑기사와의 대국이라는 색다른 재미와 흥미를 만끽할 수 있음은 물론, 프로 바둑기사와 직접 바둑대국을 해 봄으로써 자신의 바둑 실력을 진일 층 배가시킬 수 있다.
본 발명의 또 다른 측면에 따르면, 최다 바둑돌 착점위치는 다수결의 원칙에 의해 결정되는 것이므로 자신의 착점 위치와 다른 사람의 착점 위치를 항상 대비하여 생각해 볼 수 있기 때문에 바둑 학습에 큰 도움이 된다.
본 발명의 또 다른 측면에 따르면, N바둑대국 서버 또는 바둑대국 마스터 서버에 문제가 발생 되더라도 감시복구 모듈이 생성해 놓은 공유 메모리 파일을 참조하면 되므로 그 복구가 손쉽게 이루어진다.
도1은 본 발명의 일 실시예에 따른 1:N 방식의 온라인 바둑대국 시스템의 개략적인 구성도이다.
도2는 본 발명의 일 실시예에 따른 1:N 방식의 온라인 바둑대국 시스템의 초기화과정을 도시한 절차 흐름도이다.
도3은 본 발명의 일 실시예에 따른 1:N 방식의 온라인 바둑대국 방법의 흐름을 개략적으로 도시한 절차 흐름도이다.

Claims (12)

1대국자 클라이언트에 대한 통신망을 통한 온라인 접속을 허용하는 1바둑대국 서버; 복수의 N대국자 클라이언트에 대한 통신망을 통한 온라인 접속을 허용하는 복수의 N바둑대국 서버; 및 상기 1 및 N바둑대국 서버와 마스터-슬레이브 관계를 형성하여 상기 1 및 N바둑대국 서버를 관장하는 바둑대국 마스터 서버를 포함하고,
상기 1바둑대국 서버는 1대국자 착점수순에서 온라인 상태를 유지하고 있는 1대국자 클라이언트로부터 바둑돌 착점위치 정보를 입력받아 상기 바둑대국 마스터 서버로 전송하고, 상기 바둑대국 마스터 서버는 이에 응답하여 1대국자의 착점정보를 각각의 N 바둑대국 서버를 매개로 하여 N대국자 클라이언트로 브로딩하고,
상기 N바둑대국 서버는 N대국자 착점 수순에서 온라인 상태를 유지하고 있는 복수의 N대국자 클라이언트로부터 입력된 바둑돌 착점위치 정보를 입력받아 상기 바둑대국 마스터 서버로 전송하고, 상기 바둑대국 마스터 서버는 이에 응답하여 최다 바둑돌 착점위치 정보를 산출하여 1바둑대국 서버 및 각각의 N바둑대국 서버를 매개로 하여 1대국자 및 각각의 N대국자 클라이언트로 브로딩하고,
대국이 진행되는 과정에서, 상기 바둑대국 마스터 서버는 온라인 바둑대국 정보 및 현재까지 착점된 모든 바둑돌의 착점 위치 정보를, 상기 N바둑대국 서버는 접속된 N대국자의 ID정보, 접속된 ID별로 착점을 맞춘 횟수, 및 ID의 로그인 및 로그오프 상황을 공통적으로 참조 가능한 저장공간에 수록하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 시스템.
삭제
제1항에 있어서,
상기 바둑대국 서버와 상기 바둑대국 마스터 서버의 동작 상태를 감시하고 서버에 문제가 발생된 경우 서버를 재실행시키는 감시복구 모듈을 더 포함하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 시스템.
제3항에 있어서,
상기 저장공간은 공유 메모리 파일이고,
상기 감시복구 모듈은 시스템 초기화시 상기 공유 메모리 파일을 생성하고,
상기 바둑대국 마스터 서버는 상기 공유 메모리 파일에 온라인 바둑대국 정보 및 현재까지 착점된 모든 바둑돌의 착점 위치 정보를 저장하고,
상기 N바둑대국 서버는 상기 공유 메모리 파일에 접속된 N대국자의 ID정보, 접속된 ID별로 착점을 맞춘 횟수, 및 ID의 로그인 및 로그오프 상황을 저장하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 시스템.
제4항에 있어서,
상기 감시복구 모듈은 주기적으로 상기 바둑대국 마스터 서버의 네트워크 응답을 체크하고 미리 정해진 시간 동안 응답이 없으면 상기 바둑대국 마스터 서버를 재실행하고,
상기 바둑대국 마스터 서버는 재실행되자 마자 상기 공유 메모리 파일을 참조하여 재실행 직전의 상태로 서버를 복원하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 시스템.
제1항에 있어서,
바둑대국 정보 및 바둑대국 협상 정보를 바둑대국 마스터 서버에 설정하기 위한 사용자 인터페이스, 바둑대국 진행의 임의적 제어를 위한 사용자 인터페이스, 대국 운용자가 바둑대국 해설정보를 상기 바둑대국 마스터 서버에 입력하여 1대국자 및 N대국자 클라이언트로 브로딩될 수 있도록 하는 사용자 인터페이스를 구비한 대국 컨트롤러 모듈을 더 포함하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 시스템.
(a) 1바둑대국 서버 및 복수의 N바둑대국 서버가 각각 1대국자 클라이언트 및 N대국자 클라이언트에 대한 통신망을 통한 온라인 접속을 허용하는 단계;
(b) 1대국자의 착점 수순에서, 바둑대국 마스터 서버가 1대국자 클라이언트가 접속된 1바둑대국 서버를 매개로 하여 1대국자 클라이언트로부터 바둑돌 착점위치 정보를 입력받은 후 N대국자 클라이언트가 접속되어 있는 N바둑대국 서버를 매개로 하여 각각의 N대국자 클라이언트로 1대국자의 바둑돌 착점위치 정보를 브로딩하는 단계; 및
(c) N대국자 착점 수순에서, 바둑대국 마스터 서버가 복수의 N대국자 클라이언트가 접속되어 있는 각각의 N바둑대국 서버를 매개로 하여 N대국자 클라이언트로부터 바둑돌 착점위치 정보를 수집하여 N대국자의 최다 바둑돌 착점위치 정보를 산출한 후 산출된 바둑돌 착점위치 정보를 1바둑대국 서버 및 각각의 N바둑대국 서버에 접속되어 있는 1대국자 및 N대국자 클라이언트로 브로딩하는 단계를 포함하고,
대국이 진행되는 과정에서, 상기 바둑대국 마스터 서버는 온라인 바둑대국 정보 및 현재까지 착점된 모든 바둑돌의 착점 위치 정보를, 상기 N바둑대국 서버는 접속된 N대국자의 ID정보, 접속된 ID별로 착점을 맞춘 횟수, 및 ID의 로그인 및 로그오프 상황을 공통적으로 참조 가능한 저장공간에 수록하는 것을 특징으로 하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 방법.
삭제
제7항에 있어서,
상기 바둑대국 마스터 서버의 네트워크 응답을 주기적으로 체크하여 서버로부터 응답이 없으면 바둑대국 마스터 서버를 재실행하는 단계; 및
상기 바둑대국 마스터 서버가 상기 저장공간에 수록된 바둑대국 정보및 현재까지 착점된 모든 바둑돌의 착점 위치 정보를 참조하여 서버의 상태를 복원하는 단계;를 더 포함하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 방법.
삭제
제7항에 있어서,
상기 N바둑대국 서버의 네트워크 응답을 주기적으로 체크하여 서버로부터 응답이 없으면 N바둑대국 서버를 재실행하는 단계; 및
상기 N바둑대국 서버가 상기 저장공간에 수록된 접속된 N대국자의 ID정보, 접속된 ID별로 착점을 맞춘 횟수, 및 ID의 로그인 및 로그오프 상황 정보를 참조하여 서버의 상태를 복원하는 단계;를 더 포함하는 것을 특징으로 하는 1:N 방식의 온라인 바둑대국 방법.
제7항 내지 제11항 중 어느 한 항에 따른 1:N 방식의 온라인 바둑대국 방법을 프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체.
KR10-2003-0000200A 2003-01-03 2003-01-03 1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체 KR100506173B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR10-2003-0000200A KR100506173B1 (ko) 2003-01-03 2003-01-03 1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체
JP2003434974A JP2004209251A (ja) 2003-01-03 2003-12-26 1:n方式のオンライン囲碁対局システム、その方法及びこれをプログラム化して記録したコンピュータで読取可能な記録媒体
CNB2004100012414A CN100346342C (zh) 2003-01-03 2004-01-02 1∶n方式的在线围棋对局系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0000200A KR100506173B1 (ko) 2003-01-03 2003-01-03 1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체

Publications (2)

Publication Number Publication Date
KR20040062705A KR20040062705A (ko) 2004-07-09
KR100506173B1 true KR100506173B1 (ko) 2005-08-05

Family

ID=32822575

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0000200A KR100506173B1 (ko) 2003-01-03 2003-01-03 1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체

Country Status (3)

Country Link
JP (1) JP2004209251A (ko)
KR (1) KR100506173B1 (ko)
CN (1) CN100346342C (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100813402B1 (ko) * 2006-04-05 2008-03-12 주식회사 케이티 사이버 청백 게임 서비스 제공 시스템 및 방법
CN100565537C (zh) 2006-04-19 2009-12-02 腾讯科技(深圳)有限公司 网络休闲游戏录放方法
KR101592212B1 (ko) * 2014-07-17 2016-02-05 주식회사 코어라인소프트 기보를 이용한 바둑 학습 방법 및 그 장치
CN111260513B (zh) * 2020-01-13 2023-12-19 深圳研略科技有限公司 少儿围棋教学互联管理系统
CN113946604B (zh) * 2021-10-26 2023-01-20 网易有道信息技术(江苏)有限公司 分阶段围棋教学方法、装置、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06218143A (ja) * 1992-08-20 1994-08-09 Riyuushiyou Sangyo Kk 多面打指導ゲーム通信システム
US5823879A (en) * 1996-01-19 1998-10-20 Sheldon F. Goldberg Network gaming system
US6042477A (en) * 1996-12-12 2000-03-28 Addink; Dale H. Method of and system for minimizing the effects of time latency in multiplayer electronic games played on interconnected computers
US6024643A (en) * 1997-03-04 2000-02-15 Intel Corporation Player profile based proxy play
US6371850B1 (en) * 1997-09-11 2002-04-16 Sega Enterprises, Ltd. Video game system for fighting game and method for executing fighting game
US6749513B2 (en) * 2000-02-24 2004-06-15 Park Jong-Hyouk Method of the game for one to many persons on the online

Also Published As

Publication number Publication date
KR20040062705A (ko) 2004-07-09
CN1517935A (zh) 2004-08-04
CN100346342C (zh) 2007-10-31
JP2004209251A (ja) 2004-07-29

Similar Documents

Publication Publication Date Title
US8882588B2 (en) Method and apparatus for use in reserving a position within a simulation for another user
RU2546498C1 (ru) Способ и устройство сохранения состояния игры
KR101325326B1 (ko) 네트워크 게임 시스템, 게임 장치, 서버 장치, 및 기록 매체
EP2061210B1 (en) Nerwork game system and program
TWI597094B (zh) 交戰遊戲之作業系統及方法
JP2007151602A (ja) ゲームシステム、サーバ及び端末機
KR100506173B1 (ko) 1:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체
JP2017035451A (ja) プログラム、サーバ装置および制御方法
JP4955160B2 (ja) 対戦型ネットワークゲームシステム
CN107930113B (zh) 一种基于客户端同步的Xbox平台多人游戏接入控制方法
KR100473393B1 (ko) M:n 방식의 온라인 바둑대국 시스템, 그 방법 및 이를프로그램화하여 수록한 컴퓨터로 읽을 수 있는 기록매체
JP2002066139A (ja) ゲームシステム、ゲームプログラムが記憶された記録媒体
CN111359213A (zh) 用于控制游戏对局中的虚拟玩家的方法和设备
JP2021104149A (ja) プログラム、情報処理装置、および情報処理装置の制御方法
JP4268992B2 (ja) ゲームシステム及びサーバ
JP2005316807A (ja) トーナメント大会運営システム
KR101665041B1 (ko) 게임 서버의 종료 처리 방법 및 시스템
JP7204598B2 (ja) 制御プログラム、ゲーム装置及び制御方法
KR100690399B1 (ko) 블록 매칭 게임 시스템, 블록 매칭 게임 방법 및 그 방법실행 프로그램을 기록한 저장매체
KR20020005263A (ko) 온라인 게임 서비스 방법
KR101665040B1 (ko) 온라인 게임에서의 강제픽 처리방법 및 시스템
JP7085053B1 (ja) ゲームシステム、ゲームプログラム及び情報処理方法
JP7396714B1 (ja) ゲームシステム、ゲームシステムの制御方法およびプログラム
JP2003047776A (ja) ゲームシステム、ゲーム制御方法およびその記録媒体ならびにコンピュータプログラム
JP7157344B2 (ja) ゲームプログラムおよびゲームシステム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120530

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130726

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141125

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee