KR20170060889A - 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치 - Google Patents

사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치 Download PDF

Info

Publication number
KR20170060889A
KR20170060889A KR1020150165626A KR20150165626A KR20170060889A KR 20170060889 A KR20170060889 A KR 20170060889A KR 1020150165626 A KR1020150165626 A KR 1020150165626A KR 20150165626 A KR20150165626 A KR 20150165626A KR 20170060889 A KR20170060889 A KR 20170060889A
Authority
KR
South Korea
Prior art keywords
user
event
user terminal
receiving
user object
Prior art date
Application number
KR1020150165626A
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 KR1020150165626A priority Critical patent/KR20170060889A/ko
Publication of KR20170060889A publication Critical patent/KR20170060889A/ko

Links

Images

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/45Controlling the progress of the video game
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • 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/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/92Video game devices specially adapted to be hand-held while playing

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

객체를 제어하는 방법 및 장치가 제공된다. 일 실시예에 따르면, 객체를 제어하는 장치는 복수의 비사용자 객체를 이동시키고, 제1 사용자 단말로부터 수신한 제1 사용자의 이동 명령에 응답하여 제1 사용자 객체를 이동시키며, 이벤트의 발생에 응답하여 복수의 비사용자 객체가 이벤트와 연관된 행동을 수행하도록 복수의 비사용자 객체를 제어하고, 이벤트의 발생에 응답하여 제1 사용자 단말로 이벤트와 연관된 이벤트 정보를 제공하며, 제1 사용자 단말로부터 이벤트와 연관된 입력을 수신하여 제1 사용자 객체의 행동을 제어할 수 있다. 제2 사용자 단말로부터 제2 사용자의 인터랙션 명령을 수신하는 경우, 해당 인터랙션 명령의 유효 여부에 따라 각 사용자 객체의 상태 변경 여부를 결정할 수 있다.

Description

사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치{DEVICE AND METHOD TO CONTROL USER OBJECT AND NON-USER OBJECT}
이하, 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치가 제공된다.
온라인 게임(on-line game)은 각종 네트워크로 하는 게임으로서, 인터넷의 발달로 인해 급속도로 성장해 왔다. 하드 디스크 드라이브에 프로그램을 설치해 두고 인터넷 서버에 접속해 즐길 수 있는 흔히 머드(MUD:Multiple User Dialogue 혹은 Multiple User Dungeon)게임, 머그(MUG:Multiple User Graphic)게임, 브라우저만으로 게임을 할 수 있는 웹 기반의 게임, 휴대 전화나 휴대용 게임기를 이용하는 모바일 게임 등이 이에 속한다. 컴퓨터, 핸드폰, 휴대용 게임기 등 다양한 기기에서 각자 다양한 장르의 온라인 게임을 지원하나, 일반적으로는 인터넷을 통해 컴퓨터로 하는 유선 온라인 게임을 지칭한다.
온라인 게임의 일종으로서, 사용자에 의해 제어되는 캐릭터의 1인칭 시점으로 화면을 표시하는 게임을 FPS(First Person Shooting or First Person Shooter) 게임이라고 한다. 이러한 FPS 게임에서 사용자는 마치 자신이 게임 속에서 직접 움직이면서 게임의 내용들을 관찰하는 것과 같은 느낌을 가지게 되기 때문에 사용자의 게임 체감도가 올라가는 효과가 있다. FPS 게임에서 사용자 조작에 의해 제어되는 캐릭터가 왼쪽을 바라보면 게임 화면은 캐릭터의 왼쪽 시선 방향으로 변경되고 캐릭터가 오른쪽을 바라보면 게임 화면은 캐릭터의 오른쪽 시선 방향으로 변경되는 식이다.
일 실시예에 따르면 게임 중 일측의 사용자가 이벤트 연관 조작을 통해 해당 사용자에 대응하는 객체가 이벤트 행동 또는 이벤트 행동과 다른 행동을 수행하도록 제어할 수 있다.
일 실시예에 따르면 제1 사용자 및 제2 사용자에게 제공되는 이벤트 정보는 이벤트 행동 및 이벤트 행동과 다른 행동에 대한 정보를 포함할 수 있다.
일 실시예에 따르면 제1 사용자 객체 및 비사용자 객체는 동일하거나 유사한 형태로 시각화될 수 있다.
일 실시예에 따르면, 객체를 제어하는 장치는 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정하여 입력 키를 할당할 수 있다.
일 실시예에 따르면, 객체를 제어하는 방법은 복수의 비사용자 객체(non-user object)를 이동시키는 단계; 제1 사용자 단말로부터 제1 사용자의 이동 명령을 수신하는 단계; 상기 제1 사용자의 상기 이동 명령의 수신에 응답하여, 상기 제1 사용자 단말이 접속한 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동 시키는 단계; 이벤트의 발생에 응답하여, 상기 복수의 비사용자 객체가 상기 이벤트와 연관된 행동(action)을 수행 하도록 상기 복수의 비사용자 객체를 제어하는 단계; 상기 이벤트의 발생에 응답하여, 상기 제1 사용자 단말로 상기 이벤트와 연관된 이벤트 정보를 제공하는 단계; 상기 제1 사용자 단말로부터 상기 이벤트와 연관된 입력을 수신하는 단계; 및 상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 단계를 포함할 수 있다.
객체를 제어하는 방법은 제2 사용자 단말로부터 제2 사용자의 조작을 수신하여 제2 사용자 객체를 제어하는 단계; 상기 제2 사용자 객체의 상기 제1 사용자 객체에 대한 인터랙션 명령을 상기 제2 사용자 단말로부터 수신하는 단계; 및 상기 인터랙션 명령이 유효한 경우에 응답하여, 상기 제1 사용자 객체의 상태를 변경하는 단계를 더 포함할 수 있다.
객체를 제어하는 방법은 상기 이벤트가 발생하기 전에, 상기 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정하는 단계; 및 상기 제1 사용자 단말로 상기 복수의 행동들에 대해 무작위로 할당된 입력 키를 제공하는 단계를 더 포함할 수 있다.
객체를 제어하는 방법은 세션 동안 복수의 이벤트들을 미리 정한 타이밍마다 발생시키는 단계를 더 포함할 수 있다.
객체를 제어하는 방법은 상기 비사용자 객체의 형태를 상기 제1 사용자 객체의 형태와 동일하거나 유사한 형태로 결정하는 단계를 더 포함할 수 있다.
상기 이벤트의 발생에 응답하여, 상기 제1 사용자 단말로 상기 이벤트와 연관된 이벤트 정보를 제공하는 단계는, 상기 이벤트 정보에 기초하여 상기 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보를 제공하는 단계; 및 상기 이벤트 행동을 수행하여야 하는 타이밍을 지시하는 단계를 포함할 수 있다.
객체를 제어하는 장치는 제1 사용자 단말과 통신하는 통신부; 및 복수의 비사용자 객체(non-user object)를 이동시키고, 상기 통신부를 이용하여 제1 사용자 단말로부터 제1 사용자의 이동 명령을 수신하며, 상기 제1 사용자의 상기 이동 명령의 수신에 응답하여 상기 제1 사용자 단말이 접속한 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동 시키고, 이벤트의 발생에 응답하여 상기 복수의 비사용자 객체가 상기 이벤트와 연관된 행동(action)을 수행 하도록 상기 복수의 비사용자 객체를 제어하며, 상기 이벤트의 발생에 응답하여 상기 제1 사용자 단말로 상기 이벤트와 연관된 이벤트 정보를 제공하고, 상기 통신부를 이용하여 상기 제1 사용자 단말로부터 상기 이벤트와 연관된 입력을 수신하며, 상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 처리부를 포함할 수 있다.
다른 일 실시예에 따른 객체를 제어하는 방법은 제1 사용자로부터 이동 조작을 수신하는 단계; 상기 제1 사용자의 상기 이동 조작의 수신에 응답하여, 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동 시키는 단계; 서버로부터 이벤트의 발생을 수신하는 단계; 상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 이벤트 정보를 디스플레이하는 단계; 상기 이벤트 정보에 기초하여, 상기 이벤트와 연관된 행동(action)을 수행하도록 복수의 비사용자 객체를 제어하는 단계; 상기 제1 사용자로부터 상기 이벤트와 연관된 입력을 수신하는 단계; 및 상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 단계를 포함할 수 있다.
객체를 제어하는 방법은 다른 사용자 단말로부터 제2 사용자에 대응하는 제2 사용자 객체의 상기 제1 사용자 객체에 대한 인터랙션 명령을 수신하는 단계; 및 상기 인터랙션 명령이 유효한 경우에 응답하여, 상기 제1 사용자 객체의 상태를 변경하는 단계를 더 포함할 수 있다.
객체를 제어하는 방법은 상기 이벤트가 발생하기 전에, 세션 동안 발생하는 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정하는 단계; 및 상기 복수의 행동들에 대해 무작위로 입력 키를 할당하는 단계를 더 포함할 수 있다.
객체를 제어하는 방법은 상기 서버로부터 세션 동안 미리 정한 타이밍마다 복수의 이벤트들의 발생을 수신하는 단계를 포함할 수 있다.
객체를 제어하는 방법은 상기 비사용자 객체의 형태를 상기 제1 사용자 객체의 형태와 동일하거나 유사한 형태로 결정할 수 있다.
상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 이벤트 정보를 디스플레이하는 단계는, 상기 이벤트 정보에 기초하여 상기 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보를 디스플레이하는 단계; 및 상기 이벤트 정보에 기초하여 상기 이벤트 행동을 수행하여야 하는 타이밍을 지시하는 단계를 포함할 수 있다.
다른 일 실시예에 따른 객체를 제어하는 장치는 제1 사용자 객체, 비사용자 객체, 및 이벤트 정보를 시각화하는 디스플레이; 서버와 통신하는 통신부; 및 제1 사용자로부터 이동 조작을 수신하고, 상기 제1 사용자의 상기 이동 조작의 수신에 응답하여, 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동 시키며, 상기 통신부를 이용하여 상기 서버로부터 이벤트의 발생을 수신하고, 상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 상기 이벤트 정보 를 상기 디스플레이 상에 디스플레이하며, 상기 이벤트 정보에 기초하여, 상기 이벤트와 연관된 행동(action)을 수행하도록 복수의 비사용자 객체를 제어하고, 상기 제1 사용자로부터 상기 이벤트와 연관된 입력을 수신하며, 상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 처리부를 포함할 수 있다.
또 다른 일 실시예에 따른 객체를 제어하는 방법은 사용자의 이동 조작의 수신에 응답하여, 사용자 계정에 대응하는 사용자 객체를 이동 시키는 단계; 서버로부터 이벤트의 발생을 수신하는 단계; 상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 이벤트 정보를 디스플레이하는 단계; 이벤트 정보에 기초하여 복수의 대상 객체 중 적어도 일부 대상 객체가 이벤트와 연관된 행동을 수행하도록 제어하는 단계; 상기 사용자로부터 상기 복수의 대상 객체 중 적어도 하나의 대상 객체에 대한 인터랙션 조작을 수신하는 단계; 및 상기 인터랙션 조작의 유효 여부에 기초하여, 상기 적어도 하나의 대상 객체 및 상기 사용자 객체 중 적어도 하나의 상태를 변경하는 단계를 포함할 수 있다.
일 실시예에 따르면 사용자에 대응하는 객체가 이벤트 행동을 수행하도록 제어함으로써, 게임 중 일측의 사용자가 비사용자 객체의 행동과 동일하거나 유사한 행동을 수행하도록 사용자 객체를 제어할 수 있고, 각 사용자는 다른 사용자로부터 동일하거나 유사한 행동을 나타내는 비사용자 객체의 무리 속에 숨는 재미 및 다른 사용자를 찾는 재미를 느낄 수 있다.
일 실시예에 따르면 이벤트 정보로서 이벤트 행동 및 이벤트 행동과 다른 행동에 대한 정보를 제공함으로써, 제1 사용자의 실수를 유도하여 제2 사용자가 제1 사용자 객체를 보다 쉽게 식별하도록 도와줄 수 있다.
일 실시예에 따르면 제1 사용자 객체 및 비사용자 객체는 동일하거나 유사한 형태로 시각화함으로써, 제1 사용자에 대응하는 제1 사용자 객체가 제2 사용자에 의해 식별될 확률을 감소시킬 수 있다.
일 실시예에 따르면, 복수의 행동들에 대해 무작위로 입력 키를 할당함으로써, 제1 사용자의 게임에 대한 집중도 및 흥미도를 유지할 수 있다.
도 1은 일 실시예에 따른 객체를 제어하는 시스템의 구성을 개괄적으로 도시한 블럭도이다.
도 2는 일 실시예에 따른 객체를 제어하는 서버의 구성을 세부적으로 도시한 블럭도이다.
도 3은 일 실시예에 따른 객체를 제어하는 사용자 단말의 구성을 세부적으로 도시한 블럭도이다.
도 4 내지 도 7은 일 실시예에 따른 객체를 제어하는 방법을 도시한 흐름도이다.
도 8은 일 실시예에 따른 객체의 이동을 도시한 도면이다.
도 9는 일 실시예에 따른 제1 사용자 단말의 시점 화면을 도시한 도면이다.
도 10은 일 실시예에 따른 이벤트 정보의 제공을 도시한 도면이다.
도 11은 일 실시예에 따른 이벤트의 발생을 도시한 도면이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수 개의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따른 객체를 제어하는 시스템의 구성을 개괄적으로 도시한 블럭도이다.
객체를 제어하는 시스템(100)은 제1 사용자 단말(110), 제2 사용자 단말(120) 및 서버(130)를 포함한다.
제1 사용자 단말(110)은 제1 사용자에 대응하는 제1 사용자 객체를 제어할 수 있다. 예를 들어, 제1 사용자가 제1 사용자 단말(110)을 통해 제1 사용자 계정으로 서버(130)에 접속하여, 서버(130) 내에 생성된 제1 사용자 객체를 제어할 수 있다. 일 실시예에 따르면, 제1 사용자 단말(110)은 제1 사용자 계정에 대한 인증 요청을 서버(130)로 전송할 수 있다. 제1 사용자 계정에 대해 성공적으로 인증된 제1 사용자 단말(110)은 서버(130)에 제1 사용자 단말(110)에 대응하는 제1 사용자 객체를 생성할 수 있다. 생성된 제1 사용자 객체는 제1 사용자 단말(110) 및 제2 사용자 단말(120) 중 적어도 하나에 제공될 수 있고, 제공된 사용자 단말의 디스플레이 상에 시각적으로 표현될 수 있다. 제1 사용자 단말(110)은 제1 사용자의 조작에 응답하여, 제1 사용자 객체를 직접 제어하거나 서버(130)로 제어를 요청할 수 있다.
이하, 본 명세서에서 제1 사용자는 서버(130)가 제공하는 게임 서비스에서 일측의 팀으로 분류된 사용자(예를 들어, 숨바꼭질의 피술래)를 나타낼 수 있다.
이하, 본 명세서에서 게임 서비스는 사용자에게 게임 플레이를 제공하는 서비스로서, 해당 게임은 적어도 하나의 세션(session)으로 구성될 수 있고, 각 세션 동안 일측의 사용자의 상태 정보가 특정 상태(예를 들어, 사망 상태, 및 목적지 도달 상태 등)로 사용자 단말 또는 서버(130) 등에 의해 변경될 수 있고, 각 세션은 해당 세션에 할당된 시간이 경과하면 종료될 수 있다. 일측의 모든 사용자의 상태 정보가 특정 상태로 변경되면, 게임 서버(130)는 다른 일측의 사용자들이 해당 세션에서 승리한 것으로 결정할 수 있다. 예를 들어, 제1 사용자에 대응하는 제1 사용자 객체 중 적어도 하나의 제1 사용자 객체가 미리 정한 경로의 목적지에 도달하여 목적지 도달 상태로 변경된 경우, 게임 서버(130)는 제1 사용자가 해당 세션에서 승리한 것으로 결정할 수 있다. 다른 예를 들어, 모든 제1 사용자 객체가 사망 상태로 변경된 경우, 게임 서버(130)는 제2 사용자가 해당 세션에서 승리한 것으로 결정할 수 있다. 또 다른 예를 들어, 게임 서버(130)는 양측의 적어도 일부 사용자가 특정 상태가 아닌데 세션에 할당된 시간이 경과된 경우, 양측의 사용자들의 상태 정보에 기초하여 스코어를 계산하고, 계산된 스코어에 기초하여 해당 세션에서 승리한 측을 결정할 수 있다.
제2 사용자 단말(120)은 제2 사용자에 대응하는 제2 사용자 객체를 제어할 수 있다. 예를 들어, 제2 사용자가 제2 사용자 단말(120)을 통해 제2 사용자 계정으로 서버(130)에 접속하여, 서버(130) 내에 생성된 제2 사용자 객체를 제어할 수 있다. 일 실시예에 따르면, 제2 사용자 단말(120)은 제2 사용자 계정에 대한 인증 요청을 서버(130)로 전송할 수 있다. 제2 사용자 계정에 대해 성공적으로 인증된 제2 사용자 단말(120)은 서버(130)에 제2 사용자 단말(120)에 대응하는 제2 사용자 객체를 생성할 수 있다. 생성된 제2 사용자 객체는 제1 사용자 단말(110) 및 제2 사용자 단말(120) 중 적어도 하나에 제공될 수 있고, 제공된 사용자 단말의 디스플레이에 시각적으로 표현될 수 있다. 제2 사용자 단말(120)은 제2 사용자의 조작에 응답하여, 제2 사용자 객체를 제어할 수 있다.
이하, 본 명세서에서 제2 사용자는 서버가 제공하는 게임 서비스에서 상술한 제1 사용자와 구분되는 다른 일측의 팀으로 분류된 사용자(예를 들어, 숨바꼭질의 술래)를 나타낼 수 있다.
제1 사용자에 대응하는 제1 사용자 객체 및 제2 사용자에 대응하는 제2 사용자 객체는 각각 제1 사용자의 조작 및 제2 사용자의 조작에 응답하여, 서버(130)를 통해 인터랙션할 수 있다. 제1 사용자 단말(110) 및 제2 사용자 단말(120)은 예시적으로 하나씩만 도시되었으나, 이로 한정하는 것은 아니고 객체를 제어하는 시스템(100)은 복수의 제1 사용자 단말들 및 복수의 제2 사용자 단말들을 포함할 수도 있다.
제1 사용자 단말(110) 및 제2 사용자 단말(120)의 구체적인 구성은 하기 도 3에서 상세히 설명한다.
서버(130)는 제1 사용자에 대응하는 제1 사용자 객체, 제2 사용자에 대응하는 제2 사용자 객체, 및 사용자가 제어할 수 없는 비사용자 객체(non-user object)를 각각의 제1 사용자 단말(110) 및 제2 사용자 단말(120)에 제공할 수 있다. 제1 사용자 객체, 제2 사용자 객체, 및 비사용자 객체는 각 단말의 디스플레이를 통해 시각적으로 표현될 수 있다. 서버(130)는 예를 들어, 제1 사용자 단말(110) 및 제2 사용자 단말(120)에 게임 서비스를 제공할 수 있다. (이하, 서버(130)는 "게임 서버") 일 실시예에 따르면, 제1 사용자 객체 및 제2 사용자 객체는 제1 사용자 및 제2 사용자가 게임 서버(130)를 통해 해당 게임을 플레이할 때 사용되는 게임 캐릭터에 대응할 수 있고, 비사용자 객체는 제1 사용자 및 제2 사용자가 플레이하는데 사용할 수 없는 NPC(Non-playable character)에 대응할 수 있다. 일 실시예에 따르면, 비사용자 객체의 형태는 제1 사용자 객체의 형태와 동일하거나 유사한 형태로 사용자 단말 또는 서버 등에 의해 결정될 수 있다. 제1 사용자 객체, 제2 사용자 객체 및 비사용자 객체는 게임 서버(130)에 일시적으로 저장되거나, 반영구적으로 저장될 수 있다. 게임 서버(130)의 구체적인 구성은 하기 도 2에서 상세히 설명한다.
도 2는 일 실시예에 따른 객체를 제어하는 서버의 구성을 세부적으로 도시한 블럭도이다.
게임 서버(130)는 통신부(210), 처리부(220), 및 저장부(230)를 포함한다.
통신부(210)는 제1 사용자 단말 및 제2 사용자 단말과 통신할 수 있다. 예를 들어, 통신부(210)는 무선 통신 및 유선 통신 중 적어도 하나를 이용하여 사용자 단말과 통신할 수 있다. 일 실시예에 따르면 통신부(210)는 게임과 연관된 정보를 제1 사용자 단말 및 제2 사용자 단말 중 적어도 하나로 제공하기 위해 제1 사용자 단말 및 제2 사용자 단말 중 적어도 하나와 통신할 수 있다. 예를 들어, 통신부(210)는 네트워크 인터페이스 카드(network interface card), 네트워크 인터페이스 칩(network interface chip) 및 네트워킹 인터페이스 포트(network interface port) 등과 같은 하드웨어 모듈(hardware module)일 수 있고, 네트워크 디바이스 드라이버(network device driver) 또는 네트워킹 프로그램(networking program)과 같은 소프트웨어 모듈(software module)일 수 있다.
처리부(220)는 게임 서비스를 제공하기 위한 처리를 수행할 수 있다. 예를 들어, 처리부(220)는 게임 서비스를 제공하기 위해 필요한 게임과 연관된 정보를 생성할 수 있다. 예를 들어, 처리부(220)는 게임과 연관된 정보로서, 게임의 리소스 등을 생성할 수 있다. 또한, 처리부(220)는 게임 서버(130)의 동작에 필요한 처리를 수행할 수 있다. 여기서, 처리의 수행은 게임 서버(130) 내에 저장된 프로그램 코드(program code)를 실행하는 것을 나타낼 수 있다. 예를 들어, 처리부(220)는 적어도 하나의 프로세서(processor) 또는 프로세서 내의 적어도 하나의 코어(core)를 포함할 수 있다.
일 실시예에 따르면 처리부(220)는 제1 사용자 단말 및 제2 사용자 단말에 대해 통신부(210)를 이용하여 게임 서비스를 제공할 수 있다. 예를 들어, 처리부(220)는 제1 사용자 단말로부터 수신되는 제1 사용자의 조작에 응답하여 게임 내의 제1 사용자 객체를 제어하거나, 제2 사용자 단말로부터 수신되는 제2 사용자의 조작에 응답하여 게임 내의 제2 사용자 객체를 제어할 수 있다. 또한, 처리부(220)는 제1 사용자에 대응하는 제1 사용자 객체 및 제2 사용자에 대응하는 제2 사용자 객체 간의 인터랙션을 처리할 수 있다. 더 나아가, 처리부(220)는 비사용자 객체를 제어할 수도 있다. 또한, 처리부(220)는 하기 도 4 내지 도 11에서 설명하는 동작들을 수행할 수 있다.
저장부(230)는 게임 서비스를 제공하기 위해 필요한 정보를 저장할 수 있다. 저장부(230)는 게임 서버(130)를 동작시키기 위한 명령어들을 포함하는 프로그램을 저장할 수 있다. 저장부(230)에 저장된 프로그램은 상술한 처리부(220)에 의해 실행될 수 있다. 예를 들어, 저장부(230)는 사용자 단말들에게 게임 서비스를 제공하기 위한 동작들을 실행하기 위한 명령어들, 각 사용자 계정의 계정 정보(예를 들어, 계정의 아이디, 비밀번호, 사용자의 캐릭터와 연관된 정보, 사용자의 아이템과 연관된 정보 등) 등을 저장할 수 있다.
도 3은 일 실시예에 따른 객체를 제어하는 사용자 단말의 구성을 세부적으로 도시한 블럭도이다.
도 3은 사용자 단말(300)의 세부적인 구성을 예로 들어 설명한다. 사용자 단말(300)은 통신부(310), 디스플레이(320), 입력수신부(330), 처리부(340), 및 저장부(350)를 포함할 수 있다.
통신부(310)는 게임 서버와 통신할 수 있다. 예를 들어, 통신부(310)는 무선 통신 및 유선 통신 중 적어도 하나를 이용하여 게임 서버와 통신할 수 있다. 일 실시예에 따르면 통신부(310)는 게임 서비스의 제공을 위해 필요한 게임과 연관된 정보를 게임 서버로 송신하거나 게임 서버로부터 수신할 수 있다.
디스플레이(320)는 사용자에게 게임 서비스와 연관된 화면을 표시할 수 있다. 디스플레이(320)는 처리부(340)의 제어에 응답하여, 사용자에게 게임과 연관된 정보에 기초한 화면을 표시할 수 있다. 예를 들어, 디스플레이(320)는 제1 사용자 객체, 제2 사용자 객체, 비사용자 객체, 및 이벤트 정보 등을 시각적으로 표현할 수 있다.
입력수신부(330)는 사용자로부터 사용자 조작을 입력 받을 수 있다. 일 실시예에 따르면, 입력수신부(330)를 통해 입력된 조작은 처리부(340)에 의해 게임 서비스와 연관된 명령으로 변환될 수 있다. 예를 들어, 게임 서비스와 연관된 명령은 게임 내 사용자 객체(예를 들어, 제1 사용자 객체 및 제2 사용자 객체 등)를 제어하기 위한 명령을 포함할 수 있다. 이하, 본 명세서에서 조작은, 예를 들어 이동 조작, 이벤트 연관 조작, 및 인터랙션 조작 등을 포함할 수 있으며, 게임 서비스의 제공 중 사용자로부터 수신되는 모든 조작을 포함할 수 있다.
처리부(340)는 사용자에게 게임 서비스를 제공하기 위한 처리를 수행할 수 있다. 예를 들어, 처리부(340)는 게임 서버로부터 수신된 게임과 연관된 정보에 기초하여 사용자에게 게임 서비스에 따른 게임 플레이를 제공하도록 통신부(310), 디스플레이(320), 입력수신부(330), 및 저장부(350) 중 적어도 하나를 제어할 수 있다. 처리부(340)는 사용자 계정에 대한 인증을 직접 처리하거나 통신부(310)를 통해 게임 서버로 인증 요청을 전송할 수 있다. 또한, 처리부(340)는 사용자 단말(300)의 동작에 필요한 처리를 수행할 수 있다. 여기서, 처리의 수행은 저장부(350) 내에 저장된 프로그램 코드를 실행하는 것을 나타낼 수 있다.
저장부(350)는 사용자 단말(300)을 동작시키기 위한 명령어들을 포함하는 프로그램을 저장할 수 있다. 저장부(350)에 저장된 프로그램은 상술한 처리부(340)에 의해 실행될 수 있다. 예를 들어, 저장부(350)는 게임 프로그램을 저장할 수 있다.
도 1에 도시된 제1 사용자 단말(110) 및 제2 사용자 단말(120)은 상술한 사용자 단말(300)로서 구성될 수 있다.
도 4 내지 도 7은 일 실시예에 따른 객체를 제어하는 방법을 도시한 흐름도이다.
도 4는 서버에서 객체를 제어하는 방법을 도시한 흐름도이다.
우선, 단계(410)에서 서버의 처리부는 복수의 비사용자 객체를 이동시킬 수 있다. 예를 들어, 서버의 처리부는 하기 도 8 및 도 11에 도시된 바와 같이 복수의 비사용자 객체를 가상 공간 내의 미리 정한 경로를 따라 이동시킬 수 있다. 미리 정한 경로는 가상 공간 내에서 출발지(starting point) 및 목적지(destination point)로 향하는 경로로 설정되고, 서버의 처리부는 비사용자 객체가 출발지로부터 목적지로 이동(예를 들어, 위치를 변경)하도록 제어할 수 있다. 미리 정한 경로는 복수의 비사용자 객체의 각각에 대해 다른 경로로 설정되거나, 일부 비사용자 객체에 대해 다른 경로로 설정되거나, 모든 비사용자 객체에 대해 동일한 경로로 설정될 수 있다. 다만, 비사용자 객체의 이동 제어를 이로 한정하는 것은 아니고, 처리부는 복수의 비사용자 객체를 무작위로 이동시키거나, 미리 설정된 이동 조건(예를 들어, 해당 비사용자 객체의 주변에 존재하는 제1 사용자 객체와 동일 또는 유사하게 이동 등)에 따라 이동시킬 수 있다. 미리 정한 경로는 2차원 가상 공간 내에서는 2차원의 경로로 설정될 수 있고, 3차원 가상 공간 내에서는 2차원 또는 3차원의 경로로 설정될 수 있다.
그리고 단계(420)에서 서버의 통신부는 제1 사용자 단말로부터 제1 사용자의 이동 명령을 수신할 수 있다. 예를 들어, 제1 사용자의 이동 명령은, 제1 사용자 객체의 이동을 제어하기 위한 명령으로서, 가상 공간 내에서 제1 사용자 객체의 위치를 변경하는 명령을 나타낼 수 있다.
이어서 단계(430)에서 서버의 처리부는 제1 사용자의 이동 명령의 수신에 응답하여, 제1 사용자 단말이 접속한 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동시킬 수 있다. 예를 들어, 서버의 처리부는 제1 사용자의 이동 명령에 따라, 가상 공간 내에서의 제1 사용자 객체의 좌표를 변경할 수 있다. 또한, 처리부는 제1 사용자의 이동 명령과 물리 엔진의 처리를 같이 적용하여 제1 사용자 객체의 가상 공간 내에서의 위치를 변경할 수 있다.
그리고 단계(440)에서 서버의 처리부는 이벤트의 발생에 응답하여 복수의 비사용자 객체가 이벤트와 연관된 행동(action)을 수행하도록 복수의 비사용자 객체를 제어할 수 있다. 예를 들어, 서버의 처리부는 하나의 세션 동안 복수의 이벤트들을 미리 정한 타이밍마다 발생시킬 수 있다. 다만, 이로 한정하는 것은 아니고, 서버의 처리부는 하나의 세션 내에서 무작위로 선정된 타이밍마다 이벤트를 발생시킬 수 있다. 서버의 처리부는 한 세션 내에서 발생되는 이벤트의 개수를 미리 정하거나, 무작위로 결정할 수도 있다.
본 명세서에서 이벤트는 비사용자 객체가 특정 타이밍에 특정 행동을 수행하는 것을 나타낼 수 있다. 제2 사용자는 제2 사용자 단말을 통해, 제2 사용자 객체가 비사용자 객체와 동일하거나 유사한 행동을 수행하도록 제어할 수 있다. 예를 들어, 행동은 특정 방향으로 이동하거나, 회전하거나, 임의의 포즈(pose)를 취하는 행동 등을 포함할 수 있다. 다만, 이로 한정하는 것은 아니고, 행동은 비사용자 객체 및 제2 사용자 객체의 가상 공간 내에서의 위치 및 형태 중 적어도 하나를 변경하는 모든 행동을 포함할 수 있다. 이벤트와 연관된 행동은 서버의 처리부에 의해 결정된 행동으로서, 해당 이벤트에서 비사용자 객체가 수행하도록 설정된 행동을 나타낼 수 있다. 이벤트와 연관된 행동은 이벤트 행동이라고 나타낼 수도 있다.
이어서 단계(450)에서 서버의 처리부는 이벤트의 발생에 응답하여, 제1 사용자 단말로 이벤트와 연관된 이벤트 정보를 제공할 수 있다. 예를 들어, 서버의 처리부는 통신부를 통해 제1 사용자 단말로 이벤트 정보를 전송할 수 있다.
이벤트 정보는 이벤트와 연관된 정보로서 이벤트 정보에 기초하여 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보 및 이벤트 행동을 수행하여야 하는 타이밍 등을 포함할 수 있다. 이벤트 행동과 연관된 정보는 수행되어야 하는 이벤트 행동 및 수행되지 말아야 하는 행동(예를 들어, 이벤트 행동과 다른 행동) 등에 관한 정보를 포함할 수 있다. 일 실시예에 따르면 서버의 처리부는 제1 사용자 단말 및 제2 사용자 단말로 제2 사용자 객체 및 비사용자 객체에 의해 수행되어야 하는 행동 및 타이밍을 지시할 수 있다. 일 실시예에 따르면 객체를 제어하는 장치는 이벤트 정보로서 이벤트 행동 및 이벤트 행동과 다른 행동에 대한 정보를 제공함으로써, 제1 사용자의 실수를 유도하여 제2 사용자가 제1 사용자 객체를 보다 쉽게 식별하도록 도와줄 수 있다.
그리고 단계(460)에서 서버의 통신부는 제1 사용자 단말로부터 이벤트와 연관된 입력을 수신할 수 있다. 예를 들어, 통신부는 제1 사용자 단말로부터, 해당 이벤트에 대응하는 이벤트 행동을 수행하도록 하는 입력을 수신할 수 있다.
이어서 단계(470)에서 서버의 처리부는 이벤트와 연관된 입력의 수신에 응답하여 제1 사용자 객체의 행동을 제어할 수 있다.
일 실시예에 따르면 사용자에 대응하는 객체가 이벤트 행동을 수행하도록 제어함으로써, 게임 중 일측의 사용자가 비사용자 객체의 행동과 동일하거나 유사한 행동을 수행하도록 사용자 객체를 제어할 수 있고, 각 사용자는 다른 사용자로부터 동일하거나 유사한 행동을 나타내는 비사용자 객체의 무리 속에 숨는 재미 및 다른 사용자를 찾는 재미를 느낄 수 있다.
다만, 서버의 동작을 상술한 바로 한정하는 것은 아니고, 서버는 하기 도 7 내지 도 11에서 설명하는 동작을 수행할 수도 있다.
도 5는 제1 사용자 단말에서 객체를 제어하는 방법을 도시한 흐름도이다.
우선, 단계(510)에서는 제1 사용자 단말의 입력 수신부가 제1 사용자 단말로부터 이동 조작을 수신할 수 있다. 예를 들어, 이동 조작은 제1 사용자 객체의 가상 공간 내에서의 위치를 변경하기 위한 조작을 나타낼 수 있다.
그리고 단계(520)에서 제1 사용자 단말의 처리부는 제1 사용자의 이동 조작의 수신에 응답하여, 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동시킬 수 있다. 일 실시예에 따르면, 제1 사용자 단말은 제1 사용자로부터 제1 사용자 객체의 이동을 제어하기 위한 이동 조작(예를 들어, 키보드의 방향키 입력 등)을 수신할 수 있고, 해당 이동 조작에 기초하여 생성한 이동 명령을 서버로 송신할 수 있다. 서버에서 이동 명령에 기초하여 가상 공간 내에서 변경된 위치를 전송해오면 제1 사용자 객체의 위치를 변경된 위치로 변경할 수 있다. 다만, 제1 사용자 객체의 이동을 이로 한정하는 것은 아니고, 제1 사용자 단말 및 서버 각각에서 이동 조작 및 이동 명령에 기초하여 제1 사용자 객체의 위치를 산출하여 동기화할 수도 있다.
이어서 단계(530)에서 제1 사용자 단말의 통신부는 서버로부터 이벤트의 발생을 수신할 수 있다. 예를 들어, 통신부는 이벤트의 발생과 함께, 이벤트와 연관된 이벤트 정보를 수신할 수 있다. 일 실시예에 따르면, 통신부는 서버로부터 세션 동안 미리 정한 타이밍마다 복수의 이벤트들의 발생을 수신할 수 있다.
그리고 단계(540)에서 제1 사용자 단말의 디스플레이는 이벤트의 발생에 응답하여, 서버로부터 수신된 이벤트와 연관된 이벤트 정보를 디스플레이할 수 있다. 예를 들어, 디스플레이는 이벤트 정보에 기초하여 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보를 디스플레이하고, 이후 이벤트 정보에 기초하여 이벤트 행동을 수행하여야 하는 타이밍을 지시할 수 있다.
이어서 단계(550)에서 제1 사용자 단말의 처리부는 이벤트 정보에 기초하여, 이벤트와 연관된 행동을 수행하도록 복수의 비사용자 객체를 제어할 수 있다. 예를 들어, 제1 사용자 단말의 처리부는 이벤트 행동을 수행하여야 하는 타이밍에 비사용자 객체가 이벤트 행동을 수행하도록 제어할 수 있다. 여기서, 제1 사용자 단말의 처리부는 비사용자 객체의 형태를 제1 사용자 객체의 형태와 동일하거나 유사한 형태로 결정할 수 있다. 일 실시예에 따르면 제1 사용자 객체 및 비사용자 객체는 동일하거나 유사한 형태로 시각화함으로써, 제1 사용자에 대응하는 제1 사용자 객체가 제2 사용자에 의해 식별될 확률을 감소시킬 수 있다.
그리고 단계(560)에서 제1 사용자 단말의 입력 수신부는 제1 사용자로부터 이벤트와 연관된 입력을 수신할 수 있다. 예를 들어, 입력 수신부는 이벤트 연관 조작을 제1 사용자로부터 수신할 수 있다. 이벤트 연관 조작은 이벤트 행동을 수행하여야 하는 타이밍에 제1 사용자로부터 수신되는 제1 사용자 객체의 행동을 제어하기 위한 조작으로서, 이벤트 행동(예를 들어, 객체의 "춤" 등)을 위한 조작 및 이벤트 행동과 다른 행동에 대한 조작 등을 포함할 수 있다. 예를 들어, 일반적으로 제1 사용자는 이벤트 행동을 위한 조작을 입력할 것이나, 제1 사용자는 실수로 이벤트 행동과 다른 행동에 대한 조작을 입력할 수도 있다.
이어서 단계(570)에서 제1 사용자 단말의 처리부는 이벤트와 연관된 입력의 수신에 응답하여 제1 사용자 객체의 행동을 제어할 수 있다. 일 실시예에 따르면, 제1 사용자가 이벤트 행동을 위한 조작을 입력하면, 제1 사용자 단말의 처리부는 제1 사용자 객체가 이벤트 행동을 수행하도록 제어할 수 있다. 다만, 이로 한정하는 것은 아니고, 제1 사용자가 이벤트 행동과 다른 행동에 대한 조작을 입력하면, 처리부는 제1 사용자 객체가 해당 행동을 수행하도록 제어할 수 있다. 이 경우, 제2 사용자는 제1 사용자 객체의 행동을 통해, 제2 사용자 객체가 비사용자 객체가 아니라고 쉽게 인지할 수 있다.
다만, 제1 사용자 단말의 동작을 상술한 바로 한정하는 것은 아니고, 제1 사용자 단말은 하기 도 7 내지 도 11에서 설명하는 동작을 수행할 수도 있다.
도 6은 제2 사용자 단말에서 객체를 제어하는 방법을 도시한 흐름도이다.
우선, 단계(610)에서 제2 사용자 단말의 처리부는 제2 사용자의 이동 조작의 수신에 응답하여, 제2 사용자 계정에 대응하는 제2 사용자 객체를 이동시킬 수 있다. 예를 들어, 제2 사용자 단말은 입력 수신부를 통해 이동 조작을 수신할 수 있고, 처리부는 수신된 이동 조작에 기초하여 이동 명령을 생성하여 해당 이동 명령에 따라 제2 사용자 객체를 이동시킬 수 있다. 일 실시예에 따르면, 제2 사용자 단말이 이동 명령을 서버로 전송하면, 서버에서 제2 사용자 객체의 변경된 가상 공간 내의 위치를 결정하여 제2 사용자 단말로 전달할 수 있다. 다만, 이로 한정하는 것은 아니고, 제2 사용자 단말 및 서버 각각에서 제2 사용자 객체의 가상 공간 내의 위치를 결정하여 동기화할 수도 있다.
그리고 단계(620)에서 제2 사용자 단말의 통신부는 서버로부터 이벤트의 발생을 수신할 수 있다. 예를 들어, 통신부는 세션 동안 미리 정한 타이밍마다 복수의 이벤트들의 발생을 수신할 수 있다.
이어서 단계(630)에서 제2 사용자 단말의 디스플레이는 이벤트의 발생에 응답하여, 서버로부터 수신된 이벤트와 연관된 이벤트 정보를 디스플레이할 수 있다. 예를 들어, 제2 사용자 단말의 디스플레이는 이벤트 정보에 기초하여 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보를 디스플레이하고, 이후 이벤트 정보에 기초하여 비사용자 단말이 이벤트 행동을 수행하도록 예정된 타이밍에 대한 정보를 제공할 수 있다.
그리고 단계(640)에서 제2 사용자 단말의 처리부는 이벤트 정보에 기초하여 복수의 대상 객체 중 적어도 일부 객체가 이벤트와 연관된 행동을 수행하도록 제어할 수 있다. 대상 객체는 제2 사용자 객체를 제외한 객체로서, 예를 들어, 제1 사용자 객체 또는 비사용자 객체일 수 있다. 예를 들어, 이벤트와 연관된 행동을 수행하도록 제어되는 일부 객체는 비사용자 객체일 수 있다. 제2 사용자 단말의 디스플레이는 제1 사용자 객체 및 비사용자 객체를 동일하거나 유사한 형태로 시각화할 수 있다. 이 때, 서버 또는 제2 사용자 단말에 의해 대상 객체 중 비사용자 객체는 이벤트와 연관된 행동을 수행하도록 제어될 수 있고, 제1 사용자 객체는 제1 사용자의 조작에 따라 이벤트 행동을 수행하거나 다른 행동을 수행하도록 제어할 수 있다. 일 실시예에 따르면, 제2 사용자는 대상 객체의 행동이 이벤트 정보에 부합하는지 판단하여, 제1 사용자 객체 및 비사용자 객체를 구분해낼 수 있다.
이어서 단계(650)에서 제2 사용자 단말의 입력 수신부는 제2 사용자로부터 복수의 대상 객체 중 적어도 하나의 대상 객체에 대한 인터랙션 조작을 수신할 수 있다. 예를 들어, 제2 사용자 단말은 인터랙션 조작에 기초하여 인터랙션 명령을 생성할 수 있고, 인터랙션 명령은 제2 사용자 객체로부터 대상 객체에 대한 인터랙션을 적용하기 위한 명령을 나타낼 수 있다. 예를 들어, 인터랙션은 제2 사용자 객체의 제1 사용자 객체에 대한 공격 행위 등을 포함할 수 있다. 일 실시예에 따르면, 인터랙션 조작에 의한 인터랙션 명령은 단일 대상 객체에 적용될 수 있으나, 이로 한정하는 것은 아니고 복수의 대상 객체에 적용될 수도 있다.
그리고 단계(660)에서 제2 사용자 단말의 처리부는 인터랙션 조작의 유효 여부에 기초하여, 적어도 하나의 대상 객체 및 제2 사용자 객체 중 적어도 하나의 상태를 변경할 수 있다. 일 실시예에 따르면, 처리부는 인터랙션 조작에 기초하여 생성된 인터랙션 명령이 유효한 지 판단할 수 있다. 예를 들어, 처리부는 인터랙션 명령에 기초하여 제2 사용자 객체로부터 대상 객체에 대한 인터랙션(예를 들어, 제2 사용자 객체의 제1 사용자 객체에 대한 공격)이 적중하였는지 여부를 판단할 수 있다. 또한, 인터랙션이 적중한 경우, 처리부는 적중된 대상 객체가 제1 사용자 객체인 지 비사용자 객체인 지 여부를 판단할 수 있다. 인터랙션이 적중된 대상 객체가 제1 사용자 객체인 경우, 제2 사용자 단말의 처리부는 제1 사용자 객체의 상태를 변경(예를 들어, 제1 사용자 객체를 사망 상태로 변경)할 수 있다. 인터랙션이 적중된 대상 객체가 비사용자 객체인 경우, 제2 사용자 단말의 처리부는 제2 사용자 객체의 상태를 변경(예를 들어, 제2 사용자 객체에 대해 체력 감소 등의 페널티를 부과)할 수 있다. 다만, 이로 한정하는 것은 아니고, 처리부는 적중 여부, 적중된 대상 객체의 종류 등에 따라 다양한 보너스 또는 페널티를 제공할 수 있다.
다만, 제2 사용자 단말의 동작을 상술한 바로 한정하는 것은 아니고, 제2 사용자 단말은 하기 도 7 내지 도 11에서 설명하는 동작을 수행할 수도 있다.
도 7은 제1 사용자 단말, 제2 사용자 단말, 및 서버에서 객체를 제어하는 방법을 도시한 흐름도이다.
우선, 단계(711)에서 제1 사용자 단말(110)의 처리부는 이벤트와 연관된 복수의 행동들에 대해 무작위로 입력 키를 할당할 수 있다. 예를 들어, 제1 사용자 단말(110)의 처리부는 이벤트가 발생하기 전(예를 들어, 세션의 시작으로부터 일정 시간이 경과한 후로부터 첫 이벤트가 발생하기 전)에, 세션 동안 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정할 수 있다. 구체적으로는, 객체에 대한 n개(여기서, n은 1이상의 정수)의 행동들이 미리 저장되어 있고, 제1 사용자 단말(110)의 처리부는 그 중 m개(여기서, m은 1이상, n이하의 정수)의 행동을 무작위로 선정할 수 있다. 제1 사용자 단말(110)의 처리부는 복수의 행동들에 대해 무작위로 입력 키를 할당할 수 있다. 다만, 이로 한정하는 것은 아니고, 서버(130)에서 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정하여, 제1 사용자 단말(110)로 복수의 행동들에 대해 무작위로 할당된 입력 키를 제공할 수도 있다.
일 실시예에 따르면, 객체를 제어하는 장치는 복수의 행동들에 대해 무작위로 입력 키를 할당함으로써, 제1 사용자의 게임에 대한 집중도 및 흥미도를 유지할 수 있다.
그리고 단계(712)에서 제1 사용자 단말(110)의 입력 수신부는 제1 사용자로부터 이동 조작을 수신할 수 있다. 예를 들어, 제1 사용자 단말(110)의 입력 수신부는 도 5의 단계(510)에서 상술한 바와 같이 동작할 수 있다.
이어서 단계(713)에서 제1 사용자 단말(110)의 처리부는 제1 사용자로부터 수신된 이동 조작에 기초하여 제1 사용자 객체를 이동시킬 수 있다. 예를 들어, 제1 사용자 단말(110)의 처리부는 이동 조작에 기초하여 제1 사용자 객체의 위치를 갱신할 수 있고, 갱신된 제1 사용자 객체의 위치를 서버(130)로 전송할 수 있다. 다만, 이로 한정하는 것은 아니고, 서버(130)가 제1 사용자 단말(110)의 이동 조작에 기초하여 제1 사용자 객체의 위치를 갱신할 수도 있다.
아울러, 단계(721)에서 제2 사용자 단말(120)의 입력 수신부는 제2 사용자로부터 이동 조작을 수신할 수 있다. 예를 들어, 제2 사용자 단말(120)의 입력 수신부는 도 6의 단계(610)에서 상술한 바와 같이 동작할 수 있다.
그리고 단계(722)에서 제2 사용자 단말(120)의 처리부는 제2 사용자로부터 수신된 이동 조작에 기초하여 제2 사용자 객체를 이동시킬 수 있다. 예를 들어, 제2 사용자 단말(120)의 처리부는 이동 조작에 기초하여 제2 사용자 객체의 위치를 갱신할 수 있고, 갱신된 제2 사용자 객체의 위치를 서버(130)로 전송할 수 있다. 다만, 이로 한정하는 것은 아니고, 서버(130)가 제2 사용자 단말(120)의 이동 조작에 기초하여 제2 사용자 객체의 위치를 갱신할 수도 있다. 또한, 서버(130)는 제2 사용자 객체의 이동뿐만이 아니라, 제2 사용자 단말(120)로부터 제2 사용자의 조작을 수신하여 제2 사용자 객체를 제어할 수도 있다.
또한, 단계(731)에서 서버(130)의 처리부는 복수의 비사용자 객체를 이동시킬 수 있다. 예를 들어, 서버(130)의 처리부는 가상 공간 내에서 비사용자 객체가 미리 정해진 경로를 따라 이동하도록 제어할 수 있다.
이어서 단계(732)에서 서버(130)의 처리부는 이벤트를 발생시킬 수 있다. 예를 들어, 서버(130)의 처리부는 미리 정해진 타이밍마다 이벤트를 발생시킬 수 있다.
그리고 단계(714) 및 단계(723)에서 서버(130)의 처리부는 통신부를 통해 제1 사용자 단말(110) 및 제2 사용자 단말(120)로 이벤트 정보를 제공할 수 있다.
이어서 단계(715)에서 제1 사용자 단말(110)의 디스플레이는 이벤트 정보를 디스플레이할 수 있다. 예를 들어, 제1 사용자 단말(110)의 디스플레이는 도 5의 단계(540)에서 상술한 바와 같이 동작할 수 있다.
그리고 단계(716)에서 제1 사용자 단말(110)의 입력 수신부는 제1 사용자로부터 이벤트와 연관된 입력을 수신할 수 있다. 예를 들어, 제1 사용자 단말(110)의 입력 수신부는 도 5의 단계(560)에서 상술한 바와 같이 동작할 수 있다.
이어서 단계(717)에서 제1 사용자 단말(110)의 처리부는 제1 사용자 객체의 행동을 이벤트와 연관된 입력에 기초하여 제어할 수 있다. 예를 들어, 제1 사용자 단말(110)의 처리부는 도 5의 단계(570)에서 상술한 바와 같이 동작할 수 있다.
아울러, 단계(733)에서 서버(130)의 처리부는 이벤트와 연관된 행동을 수행하도록 복수의 비사용자 객체를 제어할 수 있다. 예를 들어, 서버(130)의 처리부는 도 4의 단계(440)에서 상술한 바와 같이 동작할 수 있다.
또한, 단계(724)에서 제2 사용자 단말(120)의 디스플레이는 이벤트 정보를 디스플레이할 수 있다. 예를 들어, 제2 사용자 단말(120)의 디스플레이는 도 6의 단계(630)에서 상술한 바와 같이 동작할 수 있다.
그리고 단계(725)에서 제2 사용자 단말(120)의 입력 수신부는 제2 사용자로부터 인터랙션 조작을 수신할 수 있다. 예를 들어, 제2 사용자 단말(120)의 입력 수신부는 도 6의 단계(650)에서 상술한 바와 같이 동작할 수 있다.
이어서 단계(726)에서 제2 사용자 단말(120)의 통신부는 인터랙션 명령을 서버(130)로 전달할 수 있다. 다만, 이로 한정하는 것은 아니고, 제2 사용자 단말(120)의 통신부는 서버(130)를 경유하여 제1 사용자 단말(110)로 인터랙션 명령을 전달할 수도 있다.
그리고 단계(734)에서 서버(130)의 처리부는 인터랙션 명령의 유효 여부에 따라 각 사용자 객체의 상태를 변경할 수 있다. 예를 들어, 서버(130) 통신부는 제2 사용자 객체의 제1 사용자 객체에 대한 인터랙션 명령을 제2 사용자 단말(120)로부터 수신할 수 있고, 서버(130)의 처리부는 인터랙션 명령이 유효한 경우에 응답하여, 제1 사용자 객체의 상태를 변경할 수 있다. 인터랙션 명령의 유효 여부는 도 6의 단계(660)에서 상술한 바와 같이 판단될 수 있다.
또한, 일 실시예에 따르면, 제1 사용자 단말(110)의 통신부가 제2 사용자 단말(120)로부터 제2 사용자에 대응하는 제2 사용자 객체의 제1 사용자 객체에 대한 인터랙션 명령을 수신할 수 있고, 제1 사용자 단말(110)의 처리부가 인터랙션 명령이 유효한 경우에 응답하여, 제1 사용자 객체의 상태를 변경할 수 있다. 제1 사용자 단말(110)의 처리부는 인터랙션 명령의 유효 여부를 도 6의 단계(660)에서 상술한 바와 유사하게 판단할 수 있다.
다만, 도 7의 각 단계의 수행 주체를 상술한 바로 한정하는 것은 아니고, 설계에 따라 각 단계를 제1 사용자 단말(110), 제2 사용자 단말(120), 및 서버(130) 중 적어도 하나가 수행할 수도 있고, 각 단계의 순서도 상술한 바로 한정하는 것은 아니다. 또한, 도 7의 방법은 상술한 도 4 내지 도 6의 방법과 결합될 수도 있다.
도 8은 일 실시예에 따른 객체의 이동을 도시한 도면이다.
도 8에 도시된 바와 같이, 제1 사용자 단말, 제2 사용자 단말, 및 서버 중 적어도 하나는 가상 공간(850) 내에 제1 사용자 객체(810), 제2 사용자 객체(820) 및 비사용자 객체(830)가 존재하도록 결정할 수 있다. 설명의 편의를 위하여 제1 사용자 객체(810)는 1개, 비사용자 객체(830)를 5개, 제2 사용자 객체(820)를 1개로 도시하였으나, 이로 한정하는 것은 아니고, 각 객체의 개수는 변경될 수 있다. 도 8은 상술한 도 7에서 단계들(713, 722, 731)을 예시적으로 설명할 수 있다.
또한, 제1 사용자 객체(810), 제2 사용자 객체(820), 및 비사용자 객체(830)의 형태는 사람의 형태로 도시되었으나, 이로 한정하는 것은 아니다. 예를 들어, 각 사용자 객체 및 비사용자 객체의 형태는 동물의 형태 등일 수도 있다.
상술한 바와 같이, 제1 사용자 단말, 제2 사용자 단말, 및 서버 중 적어도 하나는 가상 공간(850) 내에서 비사용자 객체(830)가 미리 정해진 경로(840)를 따라 이동하도록 제어할 수 있다. 예를 들어, 서버는 세션의 시작으로부터 일정 시간이 경과한 후, 비사용자 객체(830)가 이동을 시작하도록 제어할 수 있다. 여기서 미리 정해진 경로(840)는 하나의 출발지 및 하나의 목적지로 도시되었으나, 이로 한정하는 것은 아니고, 미리 정해진 경로(840)는 복수의 출발지 또는 복수의 목적지를 가지도록 설정될 수도 있다.
제1 사용자는 제1 사용자 단말을 통해, 제1 사용자 객체(810)를 제어할 수 있다. 일 실시예에 따르면, 제1 사용자는, 제2 사용자가 비사용자 객체(830)와 제1 사용자 객체(810)를 구분할 수 없게 하기 위하여, 제1 사용자 객체(810)를 비사용자 객체(830)를 따라 이동하도록 제어할 수 있다.
제2 사용자는 제2 사용자 단말을 통해 제2 사용자 객체(820)를 제어할 수 있다. 일 실시예에 따르면 제2 사용자는, 제2 사용자 객체(820)가 가상 공간(850) 내에서 이동하도록 제어할 수 있다.
도 9는 일 실시예에 따른 제1 사용자 단말의 시점 화면을 도시한 도면이다.
제1 사용자 단말은 제1 사용자에게 1인칭의 시점 화면(910)을 제공할 수 있다. 예를 들어, 제1 사용자 단말은 제1 사용자 객체의 상태 정보(902) 및 제1 사용자 객체의 1인칭 형태(901)를 제1 사용자에게 시각화하여 제공할 수 있다. 여기서, 상태 정보(902)는 예시적으로 HP(hit point)를 도시하였으나, 이로 한정하는 것은 아니고, 생존 상태, 사망 상태 등과 같은 정보를 포함할 수도 있다.
또한, 제1 사용자 단말은 이벤트에서 지정되는 복수의 행동들(920)을 무작위로 선정하여, 시점 화면(910)을 통해 제1 사용자에게 제공할 수 있다. 복수의 행동들(920)은 해당 세션에서 서버에 의해 발생하는 이벤트에서 비사용자 객체가 수행하도록 지정된 이벤트 행동일 수 있다. 예를 들어, 도 9에서 각 행동은 "춤"(예를 들어, 객체가 일정 시간 동안 춤 추는 동작을 수행함), "권법"(예를 들어, 객체가 권법 자세의 형태로 변경됨), "점프"(예를 들어, 객체가 가상 공간 내에서 일시적으로 수직 방향으로 상승함), "앉기"(예를 들어, 객체가 가상 공간 내에서 앉는 자세의 형태로 변경됨), "만세"(예를 들어, 객체가 만세하는 자세로 변경됨) 등으로 도시되었으나, 이로 한정하는 것은 아니고 설계에 따라 객체의 다양한 행동이 지정될 수 있다. 도 9에서 "춤" 행동에 대해서는 숫자키 1, "권법" 행동에 대해서는 숫자키 2, "점프" 행동에 대해서는 숫자키 3, "앉기" 행동에 대해서는 숫자키 4, "만세" 행동(922)에 대해서는 숫자키 5(921)가 할당된 것으로 도시되었는데, 이는 단순한 예시로서, 숫자키가 아닌 다른 키가 무작위로 할당될 수 있다.
도 9에서는 복수의 행동들(920)이 사람의 형태에서 가능한 행동으로 설명되었으나, 이로 한정하는 것은 아니고, 각 형태에서 가능한 행동을 포함할 수 있다. 예를 들어, 사용자 객체 및 비사용자 객체 등의 형태가 동물의 형태인 경우, "꼬리 흔들기" 등의 행동을 포함할 수도 있다.
도 10은 일 실시예에 따른 이벤트 정보의 제공을 도시한 도면이다.
사용자 단말은 해당 사용자에게 사용자 객체의 1인칭 형태(1001) 및 상태 정보(1002)를 포함하는 1인칭의 시점 화면(1010)을 제공할 수 있다. 여기서, 사용자는 제1 사용자 또는 제2 사용자일 수 있고, 사용자 객체는 제1 사용자 객체 또는 제2 사용자 객체일 수 있다.
일 실시예에 따르면, 사용자 단말은 사용자에게 이벤트 정보(1020)를 제공할 수 있다. 이벤트 정보(1020)는 특정 타이밍에 비사용자 객체가 수행하도록 설정된 이벤트 행동(1022, 1023)을 포함할 수 있다. 다만, 이로 한정하는 것은 아니고, 도 10에 도시된 바와 같이, 이벤트 정보(1020)는 이벤트 행동(1022, 1023)과 다른 행동(1021)으로서 해당 타이밍에 수행되면 안되거나, 수행될 필요가 없는 행동을 포함할 수도 있다. 이벤트 정보(1020)로서 이벤트 행동(1022, 1023)에 대한 정보 및 이벤트 행동과 다른 행동(1021)에 대한 정보를 함께 제공함으로써, 제1 사용자가 실수로 비사용자 객체와 다른 행동을 수행하도록 제1 사용자 객체를 제어하게 되는 가능성을 제공할 수 있다. 제2 사용자가 비사용자 객체와 다른 행동을 수행하는 제1 사용자 객체를 대상 객체로부터 구분할 수 있다.
도 10에서는 예를 들면, "만세" 행동(1023)이 이벤트 행동으로서 서버에 의해 지시된 바, 도 9의 제1 사용자는 숫자키 5를 입력함으로써, 제1 사용자 객체가 "만세" 행동을 수행하도록 제어할 수 있다.
도 11은 일 실시예에 따른 이벤트의 발생을 도시한 도면이다.
일 실시예에 따르면, 서버는 지정된 복수의 행동들(920) 중 특정 타이밍에서 적어도 하나의 행동을 선택하여, 비사용자 객체가 해당 행동을 수행하도록 제어할 수 있다. 예를 들어, 상술한 도 10에서 설명한 바와 같이, 서버는 특정 타이밍의 이벤트에 대해 "전진" 행동 및 "만세" 행동을 이벤트 행동으로서 지시할 수 있다.
예를 들어, 서버는 도 11에 도시된 바와 같이 특정 타이밍에서 비사용자 객체를 가상 공간(850) 내에서 미리 정한 경로(840)를 따라 전진시키고, "만세" 행동을 수행하도록 제어할 수 있다. 제1 사용자는 이벤트 정보에 따라 제1 사용자 객체가 비사용자 객체처럼 해당 이벤트에 대응하는 이벤트 행동을 수행하도록 제어할 수 있다.
다만, 도 11에서는 제1 사용자가 실수로 이벤트 행동을 수행하라는 조작을 입력하지 못한 경우를 도시한다. 예를 들어, 도 11에 도시된 바와 같이 제1 사용자 단말은 제1 사용자 객체가 "만세" 행동을 수행하지 않도록 제어할 수 있다.
일 실시예에 따르면, 제2 사용자 단말은 제2 사용자 객체가 대상 객체(예를 들어, 제1 사용자 객체 또는 비사용자 객체)에 대해 인터랙션(예를 들어, 대상 객체를 공격하는 행동)을 적용하도록 제어할 수 있다. 여기서, 제2 사용자는 제2 사용자 단말의 디스플레이를 통해 대상 객체를 관찰할 수 있다. 도 11에 도시된 방과 같이, 제1 사용자 객체가 이벤트 행동을 수행하지 않는 경우, 제2 사용자는 대상 객체로부터 제1 사용자 객체를 구분할 수 있다. 이 경우, 제2 사용자는 제2 사용자 단말을 통해, 제2 사용자 객체가 제1 사용자 객체에 대해 인터랙션(1160)을 적용하도록 인터랙션 조작을 입력할 수 있다. 도 7의 단계(734)에서 상술한 바와 같이, 인터랙션 명령이 유효한 경우, 서버는 제1 사용자 객체의 상태를 변경할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
110: 제1 사용자 단말
120: 제2 사용자 단말
130: 서버

Claims (17)

  1. 복수의 비사용자 객체(non-user object)를 이동시키는 단계;
    제1 사용자 단말로부터 제1 사용자의 이동 명령을 수신하는 단계;
    상기 제1 사용자의 상기 이동 명령의 수신에 응답하여, 상기 제1 사용자 단말이 접속한 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동시키는 단계;
    이벤트의 발생에 응답하여, 상기 복수의 비사용자 객체가 상기 이벤트와 연관된 행동(action)을 수행하도록 상기 복수의 비사용자 객체를 제어하는 단계;
    상기 이벤트의 발생에 응답하여, 상기 제1 사용자 단말로 상기 이벤트와 연관된 이벤트 정보를 제공하는 단계;
    상기 제1 사용자 단말로부터 상기 이벤트와 연관된 입력을 수신하는 단계; 및
    상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 단계
    를 포함하는 객체를 제어하는 방법.
  2. 제1항에 있어서,
    제2 사용자 단말로부터 제2 사용자의 조작을 수신하여 제2 사용자 객체를 제어하는 단계;
    상기 제2 사용자 객체의 상기 제1 사용자 객체에 대한 인터랙션 명령을 상기 제2 사용자 단말로부터 수신하는 단계; 및
    상기 인터랙션 명령이 유효한 경우에 응답하여, 상기 제1 사용자 객체의 상태를 변경하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  3. 제1항에 있어서,
    상기 이벤트가 발생하기 전에, 상기 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정하는 단계; 및
    상기 제1 사용자 단말로 상기 복수의 행동들에 대해 무작위로 할당된 입력 키를 제공하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  4. 제1항에 있어서,
    세션 동안 복수의 이벤트들을 미리 정한 타이밍마다 발생시키는 단계
    를 더 포함하는 객체를 제어하는 방법.
  5. 제1항에 있어서,
    상기 비사용자 객체의 형태를 상기 제1 사용자 객체의 형태와 동일하거나 유사한 형태로 결정하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  6. 제1항에 있어서,
    상기 이벤트의 발생에 응답하여, 상기 제1 사용자 단말로 상기 이벤트와 연관된 이벤트 정보를 제공하는 단계는,
    상기 이벤트 정보에 기초하여 상기 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보를 제공하는 단계; 및
    상기 이벤트 행동을 수행하여야 하는 타이밍을 지시하는 단계
    를 포함하는 객체를 제어하는 방법.
  7. 하드웨어와 결합되어 제1항 내지 제6항 중 어느 한 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  8. 제1 사용자 단말과 통신하는 통신부; 및
    복수의 비사용자 객체(non-user object)를 이동시키고, 상기 통신부를 이용하여 제1 사용자 단말로부터 제1 사용자의 이동 명령을 수신하며, 상기 제1 사용자의 상기 이동 명령의 수신에 응답하여 상기 제1 사용자 단말이 접속한 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동시키고, 이벤트의 발생에 응답하여 상기 복수의 비사용자 객체가 상기 이벤트와 연관된 행동(action)을 수행하도록 상기 복수의 비사용자 객체를 제어하며, 상기 이벤트의 발생에 응답하여 상기 제1 사용자 단말로 상기 이벤트와 연관된 이벤트 정보를 제공하고, 상기 통신부를 이용하여 상기 제1 사용자 단말로부터 상기 이벤트와 연관된 입력을 수신하며, 상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 처리부
    를 포함하는 게임 서버.
  9. 제1 사용자로부터 이동 조작을 수신하는 단계;
    상기 제1 사용자의 상기 이동 조작의 수신에 응답하여, 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동시키는 단계;
    서버로부터 이벤트의 발생을 수신하는 단계;
    상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 이벤트 정보를 디스플레이하는 단계;
    상기 이벤트 정보에 기초하여, 상기 이벤트와 연관된 행동(action)을 수행하도록 복수의 비사용자 객체를 제어하는 단계;
    상기 제1 사용자로부터 상기 이벤트와 연관된 입력을 수신하는 단계; 및
    상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 단계
    를 포함하는 객체를 제어하는 방법.
  10. 제9항에 있어서,
    다른 사용자 단말로부터 제2 사용자에 대응하는 제2 사용자 객체의 상기 제1 사용자 객체에 대한 인터랙션 명령을 수신하는 단계; 및
    상기 인터랙션 명령이 유효한 경우에 응답하여, 상기 제1 사용자 객체의 상태를 변경하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  11. 제9항에 있어서,
    상기 이벤트가 발생하기 전에, 세션 동안 발생하는 이벤트에서 지정될 수 있는 복수의 행동들을 무작위로 선정하는 단계; 및
    상기 복수의 행동들에 대해 무작위로 입력 키를 할당하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  12. 제9항에 있어서,
    상기 서버로부터 세션 동안 미리 정한 타이밍마다 복수의 이벤트들의 발생을 수신하는 단계
    를 포함하는 객체를 제어하는 방법.
  13. 제9항에 있어서,
    상기 비사용자 객체의 형태를 상기 제1 사용자 객체의 형태와 동일하거나 유사한 형태로 결정하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  14. 제9항에 있어서,
    상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 이벤트 정보를 디스플레이하는 단계는,
    상기 이벤트 정보에 기초하여 상기 비사용자 객체가 수행하게 될 이벤트 행동과 연관된 정보를 디스플레이하는 단계; 및
    상기 이벤트 정보에 기초하여 상기 이벤트 행동을 수행하여야 하는 타이밍을 지시하는 단계
    를 포함하는 객체를 제어하는 방법.
  15. 하드웨어와 결합되어 제9항 내지 제14항 중 어느 한 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  16. 제1 사용자 객체, 비사용자 객체, 및 이벤트 정보를 시각화하는 디스플레이;
    서버와 통신하는 통신부; 및
    제1 사용자로부터 이동 조작을 수신하고, 상기 제1 사용자의 상기 이동 조작의 수신에 응답하여, 제1 사용자 계정에 대응하는 제1 사용자 객체를 이동시키며, 상기 통신부를 이용하여 상기 서버로부터 이벤트의 발생을 수신하고, 상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 상기 이벤트 정보를 상기 디스플레이 상에 디스플레이하며, 상기 이벤트 정보에 기초하여, 상기 이벤트와 연관된 행동(action)을 수행하도록 복수의 비사용자 객체를 제어하고, 상기 제1 사용자로부터 상기 이벤트와 연관된 입력을 수신하며, 상기 이벤트와 연관된 입력의 수신에 응답하여 상기 제1 사용자 객체의 행동을 제어하는 처리부
    를 포함하는 사용자 단말.
  17. 사용자의 이동 조작의 수신에 응답하여, 사용자 계정에 대응하는 사용자 객체를 이동시키는 단계;
    서버로부터 이벤트의 발생을 수신하는 단계;
    상기 이벤트의 발생에 응답하여, 상기 서버로부터 수신된 상기 이벤트와 연관된 이벤트 정보를 디스플레이하는 단계;
    이벤트 정보에 기초하여 복수의 대상 객체 중 적어도 일부 대상 객체가 이벤트와 연관된 행동을 수행하도록 제어하는 단계;
    상기 사용자로부터 상기 복수의 대상 객체 중 적어도 하나의 대상 객체에 대한 인터랙션 조작을 수신하는 단계; 및
    상기 인터랙션 조작의 유효 여부에 기초하여, 상기 적어도 하나의 대상 객체 및 상기 사용자 객체 중 적어도 하나의 상태를 변경하는 단계
    를 포함하는 객체를 제어하는 방법.
KR1020150165626A 2015-11-25 2015-11-25 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치 KR20170060889A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150165626A KR20170060889A (ko) 2015-11-25 2015-11-25 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150165626A KR20170060889A (ko) 2015-11-25 2015-11-25 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20170060889A true KR20170060889A (ko) 2017-06-02

Family

ID=59222199

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150165626A KR20170060889A (ko) 2015-11-25 2015-11-25 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20170060889A (ko)

Similar Documents

Publication Publication Date Title
KR101660247B1 (ko) 객체를 제어하는 방법 및 장치
KR101398086B1 (ko) 온라인 게임에서의 유저 제스처 입력 처리 방법
KR102432011B1 (ko) 게임 애플리케이션의 사용자 인터페이스 요소를 햅틱 피드백으로 트랜스크라이빙하기 위한 시스템 및 방법
US20200376380A1 (en) Information processing apparatus, information processing method, and recording medium
US11033813B2 (en) Latency erasure
KR20240033087A (ko) 가상 시나리오에서의 오프닝 조작의 제어 방법, 장치, 기기, 저장 매체 및 프로그램 제품
KR101493507B1 (ko) 온라인 게임에 등장하는 대상체를 자동으로 타겟팅하는 방법 및 장치.
KR102584901B1 (ko) 이벤트 정보 송신 장치 및 방법, 이벤트 정보 출력 장치 및 방법
KR20150017016A (ko) 게임 스킬 구현 방법 및 서버
KR20170060889A (ko) 사용자 객체 및 비사용자 객체를 제어하는 방법 및 장치
KR102557808B1 (ko) 게임 서비스 시스템 및 상기 시스템에서의 메모 공유 방법
JP7131905B2 (ja) 情報処理方法、サーバ装置、プログラム、及び情報端末
KR102581654B1 (ko) 화면을 분할하는 장치 및 방법
KR101492248B1 (ko) 온라인 게임에 출현하는 객체를 타겟팅하는 방법 및 장치.
KR102211564B1 (ko) 게임 서비스 제공 방법 및 장치
KR102463571B1 (ko) 게임 제어 장치 및 방법
KR102663055B1 (ko) 아이템-영상 연동 방법 및 이를 수행하기 위한 사용자 단말 및 서버
KR102170825B1 (ko) 게임 제어 장치 및 방법
JP7170454B2 (ja) システム、端末装置及びサーバ
KR101832556B1 (ko) 객체에 대한 스킬 효과 전이 방법 및 장치
KR101540461B1 (ko) 시나리오를 이용한 시뮬레이션 방법 및 시스템
KR101540460B1 (ko) 실시간 중계를 위한 시뮬레이션 방법 및 시스템
US9692803B2 (en) Computer device, system and methods for controlling an exchange of objects between devices
KR20190127301A (ko) 게임 서비스 시스템 및 상기 시스템에서의 영상 제공 방법
KR20150009618A (ko) 온라인 게임에서의 드래그 입력 처리 방법

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2017101003395; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20170717

Effective date: 20190226