KR20110068218A - 난수 기반 온라인 게임의 시스템 및 방법 - Google Patents

난수 기반 온라인 게임의 시스템 및 방법 Download PDF

Info

Publication number
KR20110068218A
KR20110068218A KR1020090125076A KR20090125076A KR20110068218A KR 20110068218 A KR20110068218 A KR 20110068218A KR 1020090125076 A KR1020090125076 A KR 1020090125076A KR 20090125076 A KR20090125076 A KR 20090125076A KR 20110068218 A KR20110068218 A KR 20110068218A
Authority
KR
South Korea
Prior art keywords
server
game
random number
client
login
Prior art date
Application number
KR1020090125076A
Other languages
English (en)
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 KR1020090125076A priority Critical patent/KR20110068218A/ko
Publication of KR20110068218A publication Critical patent/KR20110068218A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key

Abstract

본 발명은 난수 기반 온라인 게임의 시스템 및 방법에 관한 것으로서, 특히 난수 기반 게임에서 난수 발생의 필요시 서버에서 유저 정보를 기반으로 시분할 동기화를 하여 생성함으로써 결과 조작의 가능성을 차단시켜 게임 결과의 신뢰성을 보장하고, 게임의 기능별로 구분한 서버를 물리적으로 분리하여 독립적으로 구성함으로써 서버 동작의 독립성을 보장하여 해킹 방지에 뛰어난 효과가 있으며, 게임의 진행에 따른 서버간 데이터 통신을 단방향으로 동작하게 구성함으로써 보안성을 강화하여 서버 운영의 안정성을 증진시키고, 게임의 진행에 따른 서버간 데이터를 각기 다른 암호화 방식을 이용하여 통신하도록 하여 해킹의 가능성을 차단하는 효과가 있다.
온라인 게임, 난수, 주사위, 해킹 방지, 서버

Description

난수 기반 온라인 게임의 시스템 및 방법{RANDOM NUMBERS BASED ONLINE GAME SYSTEM AND METHOD}
본 발명은 난수 기반 온라인 게임의 시스템 및 방법에 관한 것으로서, 보다 상세하게는 난수 기반 게임에서 난수 발생의 필요시 서버에서 유저 정보를 기반으로 시분할 동기화를 하여 생성하고, 게임의 기능별로 구분한 서버를 물리적으로 분리하여 독립적으로 구성하며, 게임의 진행에 따른 서버간 데이터 통신을 단방향으로 동작하게 구성하고, 게임의 진행에 따른 서버간 데이터를 각기 다른 암호화 방식을 이용하여 통신하도록 한 난수 기반 온라인 게임의 시스템 및 방법에 관한 것이다.
현재 카드게임, 고스톱게임등과 같이 게임의 시작전에 기 설정된 수의 시나리오를 준비한 후 시나리오 중 하나를 선택하여 카드나 고스톱을 임의의 순서로 섞은 후 게임을 진행해야 하는 온라인 게임이 많이 서비스 되고 있다.
일반적으로, 위와 같이 시나리오를 이용하여 카드나 고스톱의 게임을 진행할 때 게임의 사용자들은 하기와 같은 점에서 게임의 신뢰성에 의문을 갖는다.
첫째, 카드나 고스톱 게임을 할때 게임에 참여한 인원의 수 또는 게임에서 사용자가 내는 패에 따라 확률적으로 나오기 어려운 카드의 조합이 빈번하게 발생한다. 난수를 이용하여 게임을 진행한다면 잘 나오지 않는 상황이 현재 서비스하고 있는 게임에서 확률 이상으로 자주 발생하게 되는데, 이와 같은 이유는 게임의 설계시에 사용자들에게 보다 박진감이 넘치는 상황을 연출하기 위해 다양한 시나리오에 따른 카드의 조합을 미리 설정해 놓고 게임을 시작하기 때문이다. 그러나, 상기와 같은 게임을 계속하다보면 선택된 시나리오에 따라 계속 같은 상황이 연출되어 그 재미가 반감되고 랜덤한 상황이 주는 게임의 묘미를 얻을 수 없게된다.
둘째, 해킹 프로그램등에 의해 게임 서버와 클라이언트간의 통신 패킷의 규칙이 노출되어 게임에 참여한 플레이어중 누군가에 의해 게임 자체가 조작되거나 배팅 금액에 따라 게임 서버 운영자의 의도적인 결과 조작에 의해서 게임의 승패가 뒤바뀌는 경우도 있다.
상기와 같은 이유로 현재 서비스 되는 카드나 고스톱 온라인 게임은 사용자들로부터 그 신뢰성을 잃고 있는 실정이다. 따라서, 게임 운영의 신뢰성을 강화하면서 사용자가 랜덤한 상황이 주는 재미를 얻을 수 있는 난수 기반 온라인 게임을 서비스 하기 위해서는, 게임의 진행을 좌우하는 요소가 오직 난수만을 이용하도록 하여 순수하게 확률을 기반으로 게임이 진행되도록 하고, 이에 따라 게임 서버의 구성등이 물리적으로 독립 구성되어 해킹 프로그램 또는 게임 서버의 운영자등에 의해 게임 조작의 여부가 원천 차단되도록 하여 그 보안성을 강화하는 난수 기반 온라인 게임 시스템 및 방법이 요구된다.
전술한 문제점을 개선하기 위한 본 발명 실시예들의 목적은 난수 기반 게임에서 난수 발생의 필요시 서버에서 유저 정보를 기반으로 시분할 동기화를 하여 생성함으로써 결과 조작의 가능성을 차단시킨 난수 기반 온라인 게임의 시스템 및 방법을 제공하는 것이다.
본 발명 실시예들의 다른 목적은 게임의 기능별로 구분한 서버를 물리적으로 분리하여 독립적으로 구성함으로써 서버 동작의 독립성을 보장한 난수 기반 온라인 게임의 시스템 및 방법을 제공하는 것이다.
본 발명 실시예들의 또 다른 목적은 게임의 진행에 따른 서버간 동작을 단방향으로 동작하게 구성함으로써 보안성을 강화한 난수 기반 온라인 게임의 시스템 및 방법을 제공하는 것이다.
본 발명 실시예들의 또 다른 목적은 게임의 진행에 따른 서버간 데이터를 각기 다른 암호화 방식을 이용하여 통신하게 한 난수 기반 온라인 게임의 시스템 및 방법을 제공하는 것이다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템은, 게임 데이터베이스 서버, 계정 데이터베이스 서버, 중 계서버, 채팅(Chatting)서버, 채널서버, 로그인서버, 로그인 게이트 서버, 로그서버를 포함한다.
상기 채널서버는 게임을 위한 방을 생성하고 개인방등을 관리한다.
상기 중계서버는 클라이언트가 상기 채널서버의 이동을 가능하도록 중계한다.
상기 채팅서버는 게임중 채팅창에서 채팅하는 클라이언트들의 통신을 중계한다.
상기 게임 데이터베이스 서버 및 상기 계정 데이터베이스 서버는 분리하여 구성되어 있으며, 상기 게임 데이터베이스 서버는 유저의 턴, 내부 이벤트를 관리한다. 또한, 그 결과값의 정보는 암호화 되어 계정 데이터베이스 서버에서 내부 SQL문에 의해 판독되고 처리된다.
상기 게임 데이터베이스 서버의 동작을 주사위 게임의 예를 들어 설명하면, 클라이언트가 주사위를 게임화면에서 굴릴때(주사위 게임 이외의 경우라면 난수를 이용해야하는 상기의 상황과 유사한 경우가 해당된다), 상기 클라이언트의 패킷 정보가 일정 시간(예를 들어, 0.5초등) 단위로 상기 게임 데이터베이스 서버와 동기화 되고, 상기 클라이언트의 플레이어가 멈춤 버튼을 선택하는 시점에 맞추어 해당 시점에서 선택된 상기 게임 데이터베이스 서버에서 암호화 된 값을 상기 클라이언트에 적용시킨다.
또한, 상기 클라이언트와 서버간의 내부의 동작값은 암호화되어 통신된다.
상기 로그인서버 및 상기 로그인 게이트 서버는 로그인 처리에 관한 절차를 담당한다.
상기 로그서버는 특정 이벤트 발생시 그 기록을 파일 형태로 기록하여 저장하며, 게임서버 자체에 대한 해킹 프로그램의 패킷 공격도 로그서버에 파일형태로 모두 기록된다.
본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템 및 방법은 난수 기반 게임에서 난수 발생의 필요시 서버에서 유저 정보를 기반으로 시분할 동기화를 하여 생성함으로써 결과 조작의 가능성을 차단시켜 게임 결과의 신뢰성을 보장하는 효과가 있다.
본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템 및 방법은 게임의 기능별로 구분한 서버를 물리적으로 분리하여 독립적으로 구성함으로써 서버 동작의 독립성을 보장하여 해킹 방지에 뛰어난 효과가 있다.
본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템 및 방법은 게임의 진행에 따른 서버간 데이터 통신을 단방향으로 동작하게 구성함으로써 보안성을 강화하여 서버 운영의 안정성을 증진시키는 효과가 있다.
본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템 및 방법은 게임의 진행에 따른 서버간 데이터를 각기 다른 암호화 방식을 이용하여 통신하도록 하여 해킹의 가능성을 차단하는 효과가 있다.
상기한 바와 같은 본 발명을 첨부된 도면들과 실시예들을 통해 상세히 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템을 적용한 주사위 게임의 화면을 나타낸 것이다. 상기 주사위 게임은 일반적인 시나리오를 이용하여 플레이하는 부분이 없고 오직 주사위(70)를 던져 나오는 숫자를 이용하여 게임이 진행되므로 순수하게 확률에 의존하여 게임이 진행된다. 또한, 물리적으로 독립적인 서버 구성을 적용하여 승패 조작의 가능성을 배제하고 해킹 프로그램등에 의한 게임 조작의 가능성을 차단하여 하여 보안성을 크게 강화시키면서도 게임 결과의 신뢰성을 높혀 게임의 즐거움을 배가하도록 구성하였다.
상기 주사위 게임의 동작 원리를 살펴보자면 다음과 같다. 플레이어는 게임 서버에 로그인하여 자신이 게임을 즐길 수 있는 게임 방을 선택할 수 있다. 각각의 게임방은 방 개설자가 설정한 내기 판돈의 액수가 설정되어 있다. 게임방의 입장 최대 인원은 6인이며, 해당 인원을 넘어서서 입장할 수 없다.
상기 주사위 게임은 주사위(70)를 가지고 게임이 진행되는데, 상기 주사위(70)는 정육면체의 도형으로 제작되어 있으며, 각각의 면에는 1 ~ 6까지 숫자를 상징하는 눈을 가지고 있다. 모든 플레이어(10, 20, 30, 40, 50, 60)는 게임 시작시 다섯개의 주사위(21)를 가지고 게임을 시작하며, 게임에 참여한 플레이어는 각각 돌아가며 현재 자신이 소지한 모든 주사위(21)를 동시에 굴린다. 1번 플레이어(10)부터 마지막 플레이어(60)까지 자신이 소지한 주사위를 굴리고 결과를 확인 하면 전체 1턴(Turn)의 종료로 인정한다.
플레이어(20)는 현재 자신이 가지고 있는 모든 주사위(21)의 숫자를 바닥에 깔아서 다른 플레이어에게 숫자를 확인 시켜준 후, 동시에 모든 주사위를 화면 중앙에서 굴린다. 주사위를 굴린 후 플레이어가 멈춤버튼(80)을 누르면. 주사위가 멈추게 되고 결과로 나온 주사위(70)의 숫자에 따라 다음과 같이 게임이 진행된다.
첫째, 자신의 주사위가 1이 나오면 해당 주사위는 파괴되어 사라진다.
둘째, 자신의 주사위가 6이 나오면 해당 주사위는 사라지며, 다음 순서의 플레이어에게 더해진다. 또한, 자신의 다음 플레이어가 없을 시에는 그 다음 플레이어에게 더해진다.
셋째, 1이나 6이외의 숫자가 나온 주사위는 해당 플레이어의 주사위 판에 남아있게 된다.
상기의 1이나 6의 숫자는 게임의 변형에 따라 임의의 두 숫자로 얼마든지 변경이 가능하다. 예를 들어, 해당 주사위가 파괴되어 사라지는 숫자를 2, 해당 주사위가 사라지며 다음 순서의 플레이어에게 더해지는 숫자를 4로 지정할 수도 있다. 즉, 상기의 숫자를 임의의 숫자로 변경하거나 또는 육면체 주사위 대신 팔면체 혹은 십이면체 주사위등 다양한 종류의 주사위를 이용한 게임의 변형 실시가 가능하다.
넷째, 해당 턴에서 게임이 종료되었을 때, 승리한 플레이어가 있다면, 해당 게임이 종료되고 결과창을 출력한다. 상기 결과창의 출력 이후 게임은 초기화되어, 다시 준비 상태로 진행된다.
다섯째, 이전 판에서 게임에 승리한 플레이어가 보스(BOSS)가 되어 다시 게임을 시작할 수 있다. 동시에 2명 이상이 승리한 경우는 최초에 승리한 플레이어를 기준으로 한다.
상기 주사위 게임에서 승리의 조건은 자신의 주사위가 모두 없어지면 승리하게 되며, 자신의 주사위가 모두 없어졌다 하더라도 해당 턴에서 다른 사람의 주사위가 자신에게 넘어온다면 승리 하지 않은 것으로 판단한다. 이외의 모든 플레이어는 패배로 간주한다. 2명 이상이 같은 게임 턴에서 주사위가 모두 없어졌을 때는 동시 승리이며, 이때는 전체 플레이어의 배팅 금액을 해당 인원 숫자만큼 나누어서 배급한다.
또한, 해당 턴에 플레이어 중에 모든 주사위를 없앤 플레이어가 있다면, 한판의 게임이 종료한 것으로 판단한다. 이때, 턴의 중간에 플레이어가 종료한다 하더라도, 해당 턴의 끝까지 모든 플레이어가 주사위를 굴릴 수 있는 권리를 가지고 있다.
위와 같이 오직 주사위를 난수를 이용하여 굴리는 것으로 게임이 진행시킴으로써 순수한 확률 기반의 게임을 구현할 수 있으며, 시나리오가 개입할 여지를 주지 않으므로 플레이어가 게임을 진행함에 있어서 어떠한 형태의 외부 영향이 존재하지 않는다는 것을 보장하여 사용자로부터 게임에 대한 절대적인 신뢰를 얻어낼 수 있다. 또한, 상기 주사위 게임의 구현시에 도 2 내지 도 3에 도시한 바와 같이 서버를 기능별로 구분하고 각 서버들을 독립적으로 구성하여 동작하게 함으로써 해킹 프로그램에 의한 게임의 오동작을 방지하고 보안성을 강화하도록한다.
도 2는 본 발명의 일 실시예에 따른 클라이언트(100), 로그인 서버(400) 및 로그인 게이트(Gate) 서버(500)의 구성도이다.
클라이언트(100)는 주사위 게임의 이용을 위해 로그인 게이트 서버(500)로 접속을 요청한다. 상기 로그인 게이트 서버(500)는 로그인 처리 완료 전까지의 접속한 클라이언트(100)들의 로그인 요청정보를 버퍼에 쌓아둔다. 또한, 상기 로그인 게이트 서버(500)는 주기적으로 로그인 서버(400)의 상태를 체크하여 적절한 양의 상기 로그인 요청정보를 상기 로그인 서버(400)로 전송한다.
상기 로그인 서버(400)는 상기 로그인 게이트 서버(500)에서 전송된 상기 로그인 요청정보에 대한 로그인 인증 키를 생성하여 클라이언트(100)가 접속할 채널서버(300)에 전송한다. 또한, 상기 로그인 요청정보에 대한 결과정보와 상기 접속할 채널 서버(300)의 정보를 동시에 로그인 게이트 서버(500)로 전송한다.
상기 로그인 게이트 서버(500)에서는 클라이언트(100)의 로그인 요청정보에 대한 결과정보를 클라이언트(100)로 보내고, 클라이언트(100)와의 접속을 종료한다.
상기와 같이 로그인시 절차적으로 처리되는 각 단계별 서버간 데이터 통신을 단방향으로만 동작하게 시스템을 구성함으로써 보안성을 강화하여 서버 운영의 안정성을 증진시킨다.
상기 클라이언트(100)는 상기 결과 정보를 이용하여 상기 채널 서버(300)에 접속하고, 상기 채널 서버(300)는 상기 로그인 인증 키를 이용하여 상기 클라이언 트(100)의 로그인을 검증하며, 로그인 처리 절차가 완료되면 상기 채널 서버(300)가 로그인 완료 결과를 상기 로그인 서버(400)에 보내어, 상기 로그인 서버(400)가 해당 클라이언트(100)의 로그인 여부를 계정 데이터베이스(700)에 기록하게 한다.
이상과 같이 로그인 서버(400) 및 로그인 게이트 서버(500)는 클라이언트(100)가 접속하는 채널서버(300)와 물리적으로 분리하여 독립적으로 구성함으로써 각 서버의 동작의 독립성을 보장하여 해킹 프로그램에 의한 게임 결과 조작등을 방지할 수 있다.
도 3은 본 발명의 일 실시예에 따른 전체 서버의 구성도로서, 도시한 바와 같이 게임 데이터베이스 서버(600), 계정 데이터베이스 서버(700), 중계서버(200), 채팅(Chatting)서버(900), 채널서버(300), 로그인서버(400), 로그인 게이트 서버(500), 로그서버(800)등이 물리적으로 독립되어 구성되어 있다.
아무리 완벽한 서버구조라도 데이터베이스가 동시에 적용된다면 암호화 해지가 우려되는 바, 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템에서는 중계서버(200), 로그인서버(400), 계정 데이터베이스 서버(700) 및 게임 데이터베이스 서버(600)는 물리적으로 분리되고, 상기 서버간의 데이터는 서로 상이한 암호화 방식으로 통신하므로 외부의 어떠한 패킷도 절차적으로 분석되어 게임의 안정성과 신뢰도는 일반적인 서버구조보다 매우 높다.
상기 채널서버(300)는 게임을 위한 방을 생성하고 개인방등을 관리한다.
상기 중계서버(200)는 클라이언트(100)가 상기 채널서버(300)의 이동을 가능 하도록 중계한다.
상기 채팅서버(900)는 게임중 채팅창에서 채팅하는 클라이언트(100)들의 통신을 중계한다.
상기 게임 데이터베이스 서버(600) 및 상기 계정 데이터베이스 서버(700)는 도시한 바와 같이 분리하여 구성되어 있으며, 상기 게임 데이터베이스 서버(600)는 유저의 턴, 내부 이벤트를 관리한다. 또한, 그 결과값의 정보는 암호화 되어 계정 데이터베이스 서버(700)에서 내부 SQL문에 의해 판독되고 처리된다.
상기의 같이 게임의 기능별로 구분한 서버를 물리적으로 분리하여 독립적으로 구성함으로써 서버 동작의 독립성을 보장하고 내외부의 어떠한 부정적인 패킷에도 독립적인 결과값을 산출하게 되어 사용자들에게 보다 신뢰성 높은 결과값을 제공하게 된다.
상기 게임 데이터베이스 서버(600)의 동작을 도 1에서 설명한 주사위 게임의 예를 들어 설명하면, 클라이언트(100)가 주사위를 게임화면에서 굴릴때(주사위 게임 이외의 경우라면 난수를 이용해야하는 상기의 상황과 유사한 경우가 해당된다), 상기 클라이언트(100)의 패킷 정보가 일정 시간(예를 들어, 0.5초등) 단위로 상기 게임 데이터베이스 서버(600)와 동기화 되고, 상기 클라이언트(100)의 플레이어가 멈춤 버튼을 선택하는 시점에 맞추어 해당 시점에서 선택된 상기 게임 데이터베이스 서버(600)에서 암호화 된 값을 상기 클라이언트(100)에 적용시킨다.
상기와 같이 본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템은 난수 발생의 필요시 클라이언트(100) 시점 정보를 기반으로 게임 데이터베이스 서 버(600)에서 시분할 동기화를 하여 난수를 생성하여 적용하므로 그 구성상 결과 조작의 가능성을 차단시켜 게임 결과의 신뢰성을 보장한다. 즉, 상기 게임 데이터베이스 서버(600)는 클라이언트(100)의 점수 또는 해당 게임 상황에 대한 아무런 정보가 주어지지 않고 오직 클라이언트(100)의 요청 시점 정보만을 기반으로 해당 시점에 서버에서 발생한 난수값을 클라이언트(100)에 전송하여 게임이 진행됨으로써 시나리오등에 의한 게임 결과 조작 혹은 해킹 프로그램에 의한 게임 개입이 원천 차단된다.
또한, 상기 시점 정보의 전송 주기를 상기 서버의 난수 생성 주기와 일치하도록 구성하는 것이 일반적이나 상이하더라도 그 구성에는 무리가 없다. 상기 클라이언트(100)와 서버간의 내부의 동작값은 암호화되어 통신되므로, 그 난수 발생값을 상기 서버에 접근하는 외부 패킷등을 이용하더라도 임의로 바꿀 수가 없다.
상기 로그인서버(400) 및 상기 로그인 게이트 서버(500)는 로그인 처리에 관한 절차를 담당한다.
상기 로그서버(800)는 특정 이벤트 발생시 그 기록을 파일 형태로 기록하여 저장하며, 게임서버(600) 자체에 대한 해킹 프로그램의 패킷 공격도 로그서버(800)에 파일형태로 모두 기록되므로 해킹의 가능성을 미연에 방지할 수 있다.
또한, 본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템은 각 서버간 데이터 통신이 별도의 프로토콜의 방식을 이용하여 통신 가능하도록 구성되어 있으므로, 각 서버간의 데이터 통신 프로토콜을 모두 파악하지 않는 한 게임의 진행에 개입할 수 없도록 하여 보안성을 크게 높힐 수 있다.
도 4는 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템의 로그인 처리의 순서도이다.
상기 클라이언트는 주사위 게임의 이용을 위해 로그인 게이트 서버로 접속을 요청한다(S41). 상기 로그인 게이트 서버는 로그인 처리 완료 전까지의 접속한 클라이언트들의 로그인 요청정보를 버퍼에 쌓아두고, 주기적으로 로그인 서버의 상태를 체크하여 적절한 양의 상기 로그인 요청정보를 상기 로그인 서버로 전송한다(S42).
상기 로그인 서버는 상기 로그인 게이트 서버에서 전송된 상기 로그인 요청정보에 대한 로그인 인증 키를 생성하여 클라이언트가 접속할 채널서버에 전송한다(S43).
또한, 상기 로그인 서버는 상기 로그인 요청정보에 대한 결과정보와 상기 접속할 채널 서버의 정보를 동시에 로그인 게이트 서버로 전송하고, 상기 로그인 게이트 서버에서는 클라이언트의 로그인 요청정보에 대한 결과정보를 클라이언트로 보내고, 클라이언트와의 접속을 종료한다(S44).
상기와 같이 로그인시 절차적으로 처리되는 각 단계별 서버간 데이터 통신을 단방향으로만 동작하게 시스템을 구성함으로써 보안성을 강화하여 서버 운영의 안정성을 증진시킨다.
상기 클라이언트는 상기 결과 정보를 이용하여 상기 채널 서버에 접속하고, 상기 채널 서버는 상기 로그인 인증 키를 이용하여 상기 클라이언트의 로그인을 검 증하며(S45), 로그인 처리 절차가 완료되면 상기 채널 서버가 로그인 완료 결과를 상기 로그인 서버에 보내어, 상기 로그인 서버가 해당 클라이언트의 로그인 여부를 계정 데이터베이스에 기록하게 한다(S46).
이상과 같이 로그인 서버 및 로그인 게이트 서버는 클라이언트가 접속하는 채널서버와 물리적으로 분리하여 독립적으로 구성함으로써 각 서버의 동작의 독립성을 보장하여 해킹 프로그램에 의한 게임 결과 조작등을 방지할 수 있다.
도 5는 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템의 난수 발생 및 적용의 순서도이다.
게임 데이터베이스 서버는 일정한 시점별로 난수를 발생시킨다(S51). 클라이언트가 주사위를 게임화면에서 굴릴때(주사위 게임 이외의 경우라면 난수를 이용해야하는 상기의 상황과 유사한 경우가 해당된다), 상기 클라이언트의 패킷 정보가 일정 시간(예를 들어, 0.5초등) 단위로 상기 게임 데이터베이스 서버와 동기화 되고(S52), 상기 클라이언트가 선택하는 시점(S53)에 맞추어 해당 시점에서 선택된 상기 게임 데이터베이스 서버에서 암호화 된 값을 상기 클라이언트에 전송한다(S54). 상기 클라이언트는 서버로부터 난수를 전송받아 해당 게임에 적용시킨다(S55).
상기와 같이 본 발명 실시예들에 따른 난수 기반 온라인 게임의 시스템은 난수 발생의 필요시 클라이언트 시점 정보를 기반으로 게임 데이터베이스 서버에서 시분할 동기화를 하여 난수를 생성하여 적용하므로 그 구성상 결과 조작의 가능성 을 차단시켜 게임 결과의 신뢰성을 보장한다. 즉, 상기 게임 데이터베이스 서버는 클라이언트의 점수 또는 해당 게임 상황에 대한 아무런 정보가 주어지지 않고 오직 클라이언트의 요청 시점 정보만을 기반으로 해당 시점에 서버에서 발생한 난수값을 클라이언트에 전송하여 게임이 진행됨으로써 시나리오등에 의한 게임 결과 조작 혹은 해킹 프로그램에 의한 게임 개입이 원천 차단된다.
이상에서는 본 발명에 따른 바람직한 실시예들에 대하여 도시하고 또한 설명하였다. 그러나 본 발명은 상술한 실시예에 한정되지 아니하며, 특허 청구의 범위에서 첨부하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능할 것이다.
도 1은 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템을 적용한 주사위 게임의 화면.
도 2는 본 발명의 일 실시예에 따른 클라이언트, 로그인 서버 및 로그인 게이트 서버의 구성도.
도 3은 본 발명의 일 실시예에 따른 전체 서버의 구성도.
도 4는 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템의 로그인 처리의 순서도.
도 5는 본 발명의 일 실시예에 따른 난수 기반 온라인 게임의 시스템의 난수 발생 및 적용의 순서도.
** 도면의 주요 부분에 대한 부호의 설명 **
100: 클라이언트 200: 중계 서버
300: 채널 서버 400: 로그인 서버
500: 로그인 게이트 서버 600: 게임 데이터베이스 서버
700: 계정 데이터베이스 서버 800: 로그 서버
900: 채팅 서버

Claims (17)

  1. 온라인 게임에 참여하는 클라이언트, 상기 클라이언트와 통신하고 온라인 게임을 운영하는 서버 시스템을 포함하며 난수의 발생이 게임의 진행에 요구되는 난수 기반 온라인 게임의 시스템에 있어서,
    상기 서버 시스템으로 시점 정보를 전송하는 클라이언트;
    상기 서버 시스템에 포함되며, 상기 서버 시스템 내의 다른 서버에 독립적으로 동작하여 일정 주기로 난수를 생성하고, 상기 클라이언트로부터 전송받은 시점 정보에 대응하는 주기에 생성한 난수를 상기 클라이언트로 송신하는 난수 발생 서버를 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  2. 청구항 1에 있어서, 상기 클라이언트는
    상기 시점 정보의 전송 주기를 상기 난수 발생 서버의 난수 생성 주기와 동기화하여 전송하는 것을 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  3. 청구항 1에 있어서,
    상기 클라이언트로부터 게임 접속 요청을 수신받는 로그인 게이트 서버;
    상기 로그인 게이트 서버로부터 상기 게임 접속 요청을 전달받아 그에 대한 로그인 인증 키를 생성하여 클라이언트가 접속할 채널 서버에 전송하는 로그인 서버;
    상기 로그인 인증 키를 이용하여 상기 클라이언트의 상기 게임 접속 요청을 허가하는 채널 서버를 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  4. 청구항 3에 있어서,
    상기 채널 서버는 상기 게임 접속 요청 결과를 상기 로그인 서버로 전송하고, 상기 로그인 서버는 상기 게임 접속 요청 결과를 상기 로그인 게이트 서버로 전송하며, 상기 로그인 게이트 서버는 상기 게임 접속 요청 결과를 해당 클라이언트로 전송하는 것을 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  5. 청구항 3에 있어서,
    상기 각 서버간 데이터 전송시 암호화하여 전송하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  6. 청구항 3에 있어서,
    상기 각 서버간 데이터 전송시 각각 상이한 프로토콜을 사용하여 전송하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  7. 청구항 1에 있어서,
    게임 내에서 상기 클라이언트의 순서, 이벤트 정보를 관리하는 게임 데이터베이스 서버;
    상기 클라이언트의 순서, 이벤트 정보의 결과값을 관리하는 계정 데이터베이스 서버를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  8. 청구항 7에 있어서,
    상기 게임 데이터베이스 서버와 상기 계정 데이터베이스 서버는 물리적으로 독립하여 구성되어 있는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  9. 청구항 1에 있어서,
    게임을 위한 방을 생성하고 개인방을 관리하는 중계서버를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  10. 청구항 1에 있어서,
    게임 중 채팅창에서 채팅하는 클라이언트들의 통신을 중계하는 중계서버를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  11. 청구항 1에 있어서,
    특정 이벤트 발생시 그 내용을 파일 형태로 기록하여 저장하는 로그서버를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  12. 청구항 1에 있어서,
    상기 온라인 게임은 주사위를 이용하는 것을 특징으로 하는 난수 기반 온라인 게임의 시스템.
  13. 온라인 게임에 참여하는 클라이언트, 상기 클라이언트와 통신하고 온라인 게임을 운영하는 서버 시스템을 포함하며 난수의 발생이 게임의 진행에 요구되는 난 수 기반 온라인 게임의 시스템을 이용한 난수 기반 온라인 게임의 방법에 있어서,
    a) 상기 서버 시스템에 포함되며, 상기 서버 시스템내의 다른 서버에 독립적으로 동작하는 난수 발생 서버가 일정 주기로 난수를 생성하는 단계;
    b) 클라이언트가 시점 정보를 상기 서버 시스템으로 전송하는 단계;
    c) 상기 난수 발생 서버가 상기 클라이언트로부터 전송받은 시점 정보에 대응하는 주기에 생성한 난수를 상기 클라이언트로 송신하는 단계를 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 방법.
  14. 청구항 13에 있어서, 상기 b)단계는
    d) 상기 클라이언트가 상기 시점 정보의 전송 주기를 상기 난수 발생 서버의 난수 생성 주기와 동기화하여 전송하는 단계를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 방법.
  15. 청구항 13에 있어서,
    e) 상기 클라이언트가 상기 난수 발생 서버로부터 전송받은 난수를 게임에 적용하는 단계를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 방법.
  16. 청구항 13에 있어서,
    f) 상기 서버 시스템 중 로그인 게이트 서버가 상기 클라이언트로부터 게임 접속 요청을 수신받는 단계;
    g) 상기 서버 시스템 중 로그인 서버가 상기 로그인 게이트 서버로부터 상기 게임 접속 요청을 전달받아 그에 대한 로그인 인증 키를 생성하여 클라이언트가 접속할 채널 서버에 전송하는 단계;
    h) 상기 서버 시스템 중 상기 채널 서버가 상기 로그인 인증 키를 이용하여 상기 클라이언트의 상기 게임 접속 요청을 허가하는 단계를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 방법.
  17. 청구항 16에 있어서,
    i) 상기 채널 서버가 상기 게임 접속 요청 결과를 상기 로그인 서버로 전송하는 단계;
    j) 상기 로그인 서버가 상기 게임 접속 요청 결과를 상기 로그인 게이트 서버로 전송하는 단계;
    k) 상기 로그인 게이트 서버가 상기 게임 접속 요청 결과를 해당 클라이언트로 전송하는 단계를 더 포함하는 것을 특징으로 하는 난수 기반 온라인 게임의 방법.
KR1020090125076A 2009-12-15 2009-12-15 난수 기반 온라인 게임의 시스템 및 방법 KR20110068218A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090125076A KR20110068218A (ko) 2009-12-15 2009-12-15 난수 기반 온라인 게임의 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090125076A KR20110068218A (ko) 2009-12-15 2009-12-15 난수 기반 온라인 게임의 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20110068218A true KR20110068218A (ko) 2011-06-22

Family

ID=44400496

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090125076A KR20110068218A (ko) 2009-12-15 2009-12-15 난수 기반 온라인 게임의 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR20110068218A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210094145A (ko) * 2012-08-08 2021-07-28 스킬즈 인크. 피어-투-피어 내기 플랫폼

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210094145A (ko) * 2012-08-08 2021-07-28 스킬즈 인크. 피어-투-피어 내기 플랫폼
KR20220020432A (ko) * 2012-08-08 2022-02-18 스킬즈 플랫폼 인크. 피어-투-피어 내기 플랫폼
KR20220110336A (ko) * 2012-08-08 2022-08-05 스킬즈 플랫폼 인크. 피어-투-피어 내기 플랫폼
KR20220164624A (ko) * 2012-08-08 2022-12-13 스킬즈 플랫폼 인크. 피어-투-피어 내기 플랫폼
US11551515B2 (en) 2012-08-08 2023-01-10 Skillz Platform, Inc. Peer-to-peer wagering platform
US11915548B2 (en) 2012-08-08 2024-02-27 Skillz Inc. Peer-to-peer wagering platform

Similar Documents

Publication Publication Date Title
US20210252407A1 (en) Distributed ledger tracking of event data
JP5225008B2 (ja) ゲーム制御プログラム、ゲーム装置、ゲームサーバ、及びゲーム制御方法
US10532280B2 (en) Game system, and storage medium
WO2010041359A1 (ja) ゲーム制御プログラム、ゲーム装置、ゲームサーバ、及びゲーム制御方法
US7980949B2 (en) Guard condition system
JP5078830B2 (ja) ゲーム制御プログラム、ゲーム装置、ゲームサーバ、及びゲーム制御方法
JP5443642B1 (ja) ゲーム制御方法、プログラム、及びコンピュータ
US11741779B2 (en) System and method for executing a remote interactive live game
JP2019154467A (ja) ゲームシステム、管理サーバのプログラム及びゲーム装置のプログラム
JP2021010612A (ja) 情報処理プログラム、情報処理装置、及び情報処理システム
CN107930113B (zh) 一种基于客户端同步的Xbox平台多人游戏接入控制方法
US7584154B1 (en) Arbitration of online game results using an arbitration server and method
KR100447468B1 (ko) 카지노 영업현장의 실제게임을 원격지에서 애니메이션과그래픽화된 가상게임으로 실시간 동일하게 구현한 사이버카지노 게임 제공방법 및 시스템
KR20110068218A (ko) 난수 기반 온라인 게임의 시스템 및 방법
KR101569645B1 (ko) 게임 수행 방법, 게임 서버 및 게임 시스템
JP6405479B1 (ja) ゲームシステム、ゲーム端末、及びプログラム
JP5425147B2 (ja) ゲーム制御プログラム、ゲーム装置、ゲームサーバ、及びゲーム制御方法
JP7448789B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2005267347A (ja) 仮想空間共有装置
JP5848835B2 (ja) ゲーム制御方法、プログラム、及びコンピュータ
JP2023528740A (ja) オンラインゲームの管理装置、その方法及びシステム
TW202216260A (zh) 實體遊戲機台之遠端操作系統及方法
JP3912514B2 (ja) 通信ゲームシステム、サーバおよびクライアント
JP2021090621A (ja) 情報処理装置、情報処理方法及びプログラム
KR100638496B1 (ko) 온라인 확률 게임 운영 시스템 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E601 Decision to refuse application