KR102292931B1 - 객체를 제어하는 방법 및 장치 - Google Patents

객체를 제어하는 방법 및 장치 Download PDF

Info

Publication number
KR102292931B1
KR102292931B1 KR1020160119924A KR20160119924A KR102292931B1 KR 102292931 B1 KR102292931 B1 KR 102292931B1 KR 1020160119924 A KR1020160119924 A KR 1020160119924A KR 20160119924 A KR20160119924 A KR 20160119924A KR 102292931 B1 KR102292931 B1 KR 102292931B1
Authority
KR
South Korea
Prior art keywords
user
response
virtual world
game
mode
Prior art date
Application number
KR1020160119924A
Other languages
English (en)
Other versions
KR20160113086A (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 주식회사 넥슨코리아
Publication of KR20160113086A publication Critical patent/KR20160113086A/ko
Application granted granted Critical
Publication of KR102292931B1 publication Critical patent/KR102292931B1/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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • 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/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • 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/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • A63F13/655Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • A63F2300/6669Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera using a plurality of virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character change rooms

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Optics & Photonics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

객체를 제어하는 방법 및 장치가 제공된다. 일 실시예에 따르면 객체를 제어하는 장치는 제1 사용자 단말 및 제2 사용자 단말과 통신하는 통신부; 및 처리부를 포함하고, 상기 처리부는, 가상 세계 내에 제1 사용자에 대응하는 제1 객체가 표시되도록 제어하고, 상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하며, 상기 제1 사용자의 변신 조작(morphing control)에 응답하여, 적어도 하나의 후보 객체를 무작위로 선정하고, 상기 적어도 하나의 후보 객체 중 제2 객체를 상기 제1 사용자가 선택한 경우, 상기 제1 객체를 상기 제2 객체로 변경할 수 있다.

Description

객체를 제어하는 방법 및 장치{DEVICE AND METHOD TO CONTROL 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 사용자에 대응하는 제1 객체가 표시되도록 제어하는 단계; 제1 사용자의 이동 조작에 응답하여, 가상 세계 내에서 제1 객체의 위치가 이동되도록 제어하는 단계; 제1 사용자의 변신 조작(morphing control)에 응답하여, 적어도 하나의 후보 객체를 무작위로 선정하는 단계; 및 적어도 하나의 후보 객체 중 제2 객체를 제1 사용자가 선택한 경우, 제1 객체를 제2 객체로 변경하는 단계를 포함할 수 있다.
다른 일 실시예에 따르면 객체를 제어하는 장치는 제1 사용자 단말 및 제2 사용자 단말과 통신하는 통신부; 및 처리부를 포함하고, 처리부는, 가상 세계 내에 제1 사용자에 대응하는 제1 객체가 표시되도록 제어하고, 제1 사용자의 이동 조작에 응답하여, 가상 세계 내에서 제1 객체의 위치가 이동되도록 제어하며, 제1 사용자의 변신 조작(morphing control)에 응답하여, 적어도 하나의 후보 객체를 무작위로 선정하고, 적어도 하나의 후보 객체 중 제2 객체를 제1 사용자가 선택한 경우, 제1 객체를 제2 객체로 변경할 수 있다.
일 실시예에 따르면 사용자에 대응하는 객체를 변신시키도록 제어함으로써, 게임 중 일측의 사용자가 가상 세계에 숨을 수 있고, 각 사용자는 다른 사용자로부터 숨는 재미 및 다른 사용자를 찾는 재미를 느낄 수 있다.
일 실시예에 따르면 결제 여부에 따라 후보 객체를 인에이블/디스에이블함으로써, 사용자의 결제를 유도할 수 있다.
일 실시예에 따르면 상술한 후보 객체는 가상 세계 내의 사물 객체들에 기초하여 선정됨으로써, 양 측의 게임 밸런스가 조절될 수 있다.
일 실시예에 따르면 게임 중 일측의 사용자는 사용자에 대응하는 객체를 프리징시키고 관전 모드에 진입할 수 있다. 객체를 프리징한 후의 사용자는 다른 사용자들을 관전함으로써, 게임에 대한 흥미도를 유지할 수 있다.
일 실시예에 따르면 게임 중 다른 일측의 사용자는 시간 경과에 따라 버닝 모드에 진입함으로써 스트레스가 해소될 수 있다.
일 실시예에 따르면 이벤트에 따라 맵 상의 객체화 유사한 객체 또는 모든 사용자에게 동일한 객체를 후보 객체로 선정함으로써, 게임에 대한 흥미도가 증진될 수 있다.
일 실시예에 따르면 지난 스테이지의 게임 결과에 기초하여 사용자들을 양 측으로 분류함으로써, 게임에 대한 흥미도가 저하되지 않을 수 있다.
일 실시예에 따르면 같은 측의 사용자끼리만 채팅이 가능하도록 채팅 서비스를 제공함으로써, 게임의 전략성이 강화될 수 있다.
도 1은 일 실시예에 따른 객체를 제어하는 시스템의 구성을 개괄적으로 도시한 블럭도이다.
도 2는 일 실시예에 따른 객체를 제어하는 서버의 구성을 세부적으로 도시한 블럭도이다.
도 3은 일 실시예에 따른 객체를 제어하는 사용자 단말의 구성을 세부적으로 도시한 블럭도이다.
도 4는 일 실시예에 따른 객체를 제어하는 방법을 도시한 흐름도이다.
도 5a는 일 실시예에 따른 객체를 제어하는 사용자 단말의 화면을 도시한다.
도 5b 내지 도 5d는 일 실시예에 따른 제1 사용자에 대응하는 객체의 파라미터의 예시를 도시한다.
도 6 및 도 7은 일 실시예에 따른 후보 객체를 선정하는 예시를 도시한다.
도 8a 내지 도 8d는 다른 일 실시예에 따른 후보 객체를 선정하는 방법을 도시한 흐름도이다.
도 9a는 일 실시예에 따른 객체의 이동을 제어하는 방법을 도시한 흐름도이다.
도 9b는 일 실시예에 따른 객체의 프레임을 제어하는 방법을 도시한 흐름도이다.
도 10a 내지 도 10c는 일 실시예에 따른 관전 모드에서 객체를 제공하는 예시를 도시한다.
도 11 및 도 12는 다른 일 실시예에 따른 관전 모드에서 객체를 제공하는 예시를 도시한다.
도 13 및 도 14는 일 실시예에 따른 제1 객체를 변경하는 예시를 도시한다.
도 15 및 도 16은 일 실시예에 따른 버닝 모드에서 객체를 제공하는 예시를 도시한다.
도 17a, 도 17b 및 도 18은 일 실시예에 따라 이벤트를 제공하는 예시를 도시한다.
도 19는 일 실시예에 따라 참가자들을 제1 사용자 및 제2 사용자 중 하나로 결정하는 방법을 도시한 흐름도이다.
도 20a 내지 도 20d는 또 다른 일 실시예에 따라 후보 객체를 선정하는 방법을 도시한 흐름도이다.
도 21은 일 실시예에 따라 사용자들 간에 대화 메시지를 공유하는 예시를 도시한다.
도 22는 일 실시예에 따라 제1 사용자에게 제공되는 화면의 예시를 도시한다.
도 23 및 도 24는 일 실시예에 따른 가상 세계 내에서의 객체의 외형, 충돌 박스, 및 판정 박스의 변경을 도시한다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수 개의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 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)가 제공하는 게임 서비스에서 일측의 팀으로 분류된 사용자(예를 들어, 숨바꼭질의 피술래)를 나타낼 수 있다.
이하, 본 명세서에서 게임 서비스는 사용자에게 게임 플레이를 제공하는 서비스로서, 해당 게임은 적어도 하나의 스테이지로 구성될 수 있고, 각 스테이지는 일측의 모든 사용자의 상태 정보를 특정 상태(예를 들어, 사망 상태)로 변경하거나, 해당 스테이지에 할당된 시간이 경과하면 종료될 수 있다. 일측의 모든 사용자의 상태 정보가 특정 상태로 변경되면, 게임 서버(130)는 다른 일측의 사용자들이 해당 스테이지에서 승리한 것으로 결정할 수 있다. 게임 서버(130)는 양측의 적어도 일부 사용자가 특정 상태가 아닌데 스테이지에 할당된 시간이 경과된 경우, 양측의 사용자들의 상태 정보에 기초하여 스코어를 계산하고, 계산된 스코어에 기초하여 해당 스테이지에서 승리한 측을 결정할 수 있다.
제2 사용자 단말(120)은 제2 사용자에 대응하는 제3 객체를 제어할 수 있다. 예를 들어, 제2 사용자가 제2 사용자 단말(120)을 통해 제2 사용자 계정으로 서버(130)에 접속하여, 서버(130) 내에 생성된 제3 객체를 제어할 수 있다. 일 실시예에 따르면, 제2 사용자 단말(120)은 제2 사용자 계정에 대한 인증 요청을 서버(130)로 전송할 수 있다. 제2 사용자 계정에 대해 성공적으로 인증된 제2 사용자 단말(120)은 서버(130)에 제2 사용자 단말(120)에 대응하는 제3 객체를 생성할 수 있다. 생성된 제3 객체는 제1 사용자 단말(110) 및 제2 사용자 단말(120) 중 적어도 하나에 제공될 수 있다. 제2 사용자 단말(120)은 제2 사용자의 조작에 응답하여, 제3 객체를 제어할 수 있다.
이하, 본 명세서에서 제2 사용자는 서버가 제공하는 게임 서비스에서 상술한 제1 사용자와 구분되는 다른 일측의 팀으로 분류된 사용자(예를 들어, 숨바꼭질의 술래)를 나타낼 수 있다.
제1 사용자에 대응하는 제1 객체 및 제2 사용자에 대응하는 제3 객체는 각각 제1 사용자의 조작 및 제2 사용자의 조작에 응답하여, 서버(130)를 통해 상호작용할 수 있다. 제1 사용자 단말(110) 및 제2 사용자 단말(120)은 예시적으로 하나씩만 도시되었으나, 이로 한정하는 것은 아니고 객체를 제어하는 시스템(100)은 복수의 제1 사용자 단말들 및 복수의 제2 사용자 단말들을 포함할 수도 있다.
제1 사용자 단말(110) 및 제2 사용자 단말(120)의 구체적인 구성은 하기 도 3에서 상세히 설명한다.
서버(130)는 제1 사용자에 대응하는 제1 객체 및 제2 사용자에 대응하는 제3 객체를 각각의 제1 사용자 단말(110) 및 제2 사용자 단말(120)에 제공할 수 있다. 서버(130)는 예를 들어, 제1 사용자 단말(110) 및 제2 사용자 단말(120)에 게임 서비스를 제공할 수 있다. (이하, 서버(130)는 "게임 서버") 일 실시예에 따르면, 제1 객체 및 제3 객체는 제1 사용자 및 제2 사용자가 게임 서버(130)를 통해 해당 게임을 플레이할 때 사용되는 게임 캐릭터에 대응할 수 있다. 제1 객체 및 제3 객체는 게임 서버(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 사용자의 조작에 응답하여 게임 내의 제3 객체를 제어할 수 있다. 또한, 처리부(220)는 제1 사용자에 대응하는 제1 객체 및 제2 사용자에 대응하는 제3 객체 간의 상호작용을 처리할 수 있다. 더 나아가, 처리부(220)는 제1 객체로부터 변경된, 제1 사용자에 대응하는 제2 객체도 제어할 수 있다. 또한, 처리부(220)는 하기 도 4 내지 도 22에서 설명하는 동작들을 수행할 수 있다.
저장부(230)는 게임 서비스를 제공하기 위해 필요한 정보를 저장할 수 있다. 저장부(230)는 게임 서버(130)를 동작시키기 위한 명령어들을 포함하는 프로그램을 저장할 수 있다. 저장부(230)에 저장된 프로그램은 상술한 처리부(220)에 의해 실행될 수 있다. 예를 들어, 저장부(230)는 사용자 단말들에게 게임 서비스를 제공하기 위한 동작들을 실행하기 위한 명령어들, 각 사용자 계정의 계정 정보(예를 들어, 계정의 아이디, 비밀번호, 사용자의 캐릭터와 연관된 정보, 사용자의 아이템과 연관된 정보 등) 등을 저장할 수 있다.
도 3은 일 실시예에 따른 객체를 제어하는 사용자 단말의 구성을 세부적으로 도시한 블럭도이다.
도 3은 사용자 단말(300)의 세부적인 구성을 예로 들어 설명한다. 사용자 단말(300)은 통신부(310), 디스플레이(320), 입력수신부(330), 처리부(340), 및 저장부(350)를 포함할 수 있다.
통신부(310)는 게임 서버와 통신할 수 있다. 예를 들어, 통신부(310)는 무선 통신 및 유선 통신 중 적어도 하나를 이용하여 게임 서버와 통신할 수 있다. 일 실시예에 따르면 통신부(310)는 게임 서비스의 제공을 위해 필요한 게임과 연관된 정보를 게임 서버로 송신하거나 게임 서버로부터 수신할 수 있다.
디스플레이(320)는 사용자에게 게임 서비스와 연관된 화면을 표시할 수 있다. 디스플레이(320)는 처리부(340)의 제어에 응답하여, 사용자에게 게임과 연관된 정보에 기초한 화면을 표시할 수 있다.
입력수신부(330)는 사용자로부터 사용자 조작을 입력 받을 수 있다. 일 실시예에 따르면, 입력수신부(330)를 통해 입력된 조작은 처리부(340)에 의해 게임 서비스와 연관된 명령으로 변환될 수 있다. 예를 들어, 게임 서비스와 연관된 명령은 게임 내 객체(예를 들어, 제1 객체, 제2 객체 및 제3 객체 등)를 제어하기 위한 명령을 포함할 수 있다. 이하, 본 명세서에서 조작은, 예를 들어 이동 조작, 프리징 조작, 프리징 해제 조작, 관전 모드 진입 조작 등을 포함할 수 있으며, 게임 서비스의 제공 중 사용자로부터 수신되는 모든 조작을 포함할 수 있다.
처리부(340)는 사용자에게 게임 서비스를 제공하기 위한 처리를 수행할 수 있다. 예를 들어, 처리부(340)는 게임 서버로부터 수신된 게임과 연관된 정보에 기초하여 사용자에게 게임 서비스에 따른 게임 플레이를 제공하도록 통신부(310), 디스플레이(320), 입력수신부(330), 및 저장부(350) 중 적어도 하나를 제어할 수 있다. 처리부(340)는 사용자 계정에 대한 인증을 직접 처리하거나 통신부(310)를 통해 게임 서버로 인증 요청을 전송할 수 있다. 또한, 처리부(340)는 사용자 단말(300)의 동작에 필요한 처리를 수행할 수 있다. 여기서, 처리의 수행은 저장부(350) 내에 저장된 프로그램 코드를 실행하는 것을 나타낼 수 있다.
저장부(350)는 사용자 단말(300)을 동작시키기 위한 명령어들을 포함하는 프로그램을 저장할 수 있다. 저장부(350)에 저장된 프로그램은 상술한 처리부(340)에 의해 실행될 수 있다. 예를 들어, 저장부(350)는 게임 프로그램을 저장할 수 있다.
도 1에 도시된 제1 사용자 단말(110) 및 제2 사용자 단말(120)은 상술한 사용자 단말(300)로서 구성될 수 있다.
도 4는 일 실시예에 따른 객체를 제어하는 방법을 도시한 흐름도이다.
우선, 단계(410)에서는 제1 사용자 및 제2 사용자가 게임을 실행할 수 있다. 예를 들어, 제1 사용자는 제1 사용자 단말을 이용하여 게임 프로그램을 실행할 수 있고, 제2 사용자는 제2 사용자 단말을 이용하여 게임 프로그램을 실행할 수 있다.
일 실시예에 따르면, 제1 사용자는 제1 사용자 단말을 이용하여 제1 사용자 계정에 대한 인증을 게임 서버에 요청할 수 있다. 제2 사용자는 제2 사용자 단말을 이용하여 제2 사용자 계정에 대한 인증을 게임 서버에 요청할 수 있다. 예를 들어, 게임 서버에 대한 제1 사용자 및 제2 사용자의 인증이 성공적으로 완료된 후, 제1 사용자 및 제2 사용자는 게임 서버에 게임방(game room)을 생성하여, 게임 플레이를 시작할 수 있다. 게임 서버는 해당 게임방에 대응하는 가상 세계를 제1 사용자 단말 및 제2 사용자 단말로 제공할 수 있다. 각 게임방에서 제공되는 게임은 복수의 스테이지들로 구성될 수 있다.
그리고 단계(420)에서는 제1 사용자 단말 및 제2 사용자 단말 중 적어도 하나는 제1 사용자에 대응하는 제1 객체를 표시할 수 있다. 예를 들어, 제1 사용자에 대응하는 제1 객체가 관측될 수 있는 시점을 제공하는 사용자 단말은 제1 객체를 표시할 수 있다. 일 실시예에 따르면 제1 사용자 단말에서는 제1 객체가 1인칭 또는 3인칭 시점의 형태로 표시될 수 있다. 제2 사용자 단말에서는, 가상 세계 내에서 제1 객체가 제2 사용자 단말에 제공되는 시점(예를 들어, 제3 객체의 위치의 시점)에서 관측될 수 있는 경우에 독립된 사용자 객체로서 표시될 수 있다. 이하, 본 명세서에서 사용자 객체는 제1 사용자 또는 제2 사용자에 의해 조작되는 플레이어블 객체를 나타낼 수 있다. 일 실시예에 따르면, 게임 서버는 가상 세계 내에 제1 사용자에 대응하는 제1 객체가 표시되도록 제어할 수 있다.
이어서 단계(430)에서는 제1 사용자 단말 및 제2 사용자 단말 중 적어도 하나는 제2 사용자에 대응하는 제3 객체를 표시할 수 있다. 예를 들어, 제2 사용자에 대응하는 제3 객체가 관측될 수 있는 시점을 제공하는 사용자 단말은 제2 객체를 표시할 수 있다. 일 실시예에 따르면 제2 사용자 단말에서는 제3 객체가 1인칭 또는 3인칭 시점의 형태로 표시될 수 있다. 제1 사용자 단말에서는, 가상 세계 내에서 제3 객체가 제1 사용자 단말에 제공되는 시점(예를 들어, 제1 객체 또는 제2 객체의 위치의 시점)에서 관측될 수 있는 경우에 독립된 사용자 객체로서 표시될 수 있다.
일 실시예에 따르면, 제2 사용자 단말은 게임 시작 후 일정 시간(예를 들어, 40초간) 동안 아무 정보가 제공되지 않도록 암전된 화면을 제2 사용자에게 제공할 수 있다. 제2 사용자 단말의 화면이 암전된 동안, 제1 사용자들은 제1 객체 또는 제2 객체를 조작하여 가상 세계의 곳곳에 제1 객체 또는 제2 객체를 숨길 수 있다. 또한, 제1 사용자에 대응하는 제1 객체는 게임 시작시 및 게임 중간 중 적어도 한번 제2 객체로 변경될 수 있다.
그리고 단계(440)에서 게임 서버는 제1 사용자의 이동 조작에 응답하여 제1 객체의 위치를 이동시킬 수 있다. 예를 들어, 제1 사용자 단말은 제1 사용자의 이동 조작에 응답하여, 가상 세계 내에서 제1 객체가 위치화는 좌표를 변경하도록 게임 서버에 요청할 수 있다. 일 실시예에 따르면, 게임 서버는 제1 사용자의 이동 조작에 응답하여, 가상 세계 내에서 제1 객체의 위치가 이동되도록 제어할 수 있다. 제1 사용자 단말은 변경된 좌표에 기초하여, 제1 객체를 제1 사용자에게 표시할 수 있다. 여기서, 이동 조작은, 제1 객체의 위치를 이동시키기 위한 조작을 나타낼 수 있다.
이어서 단계(450)에서는 게임 서버는 제1 사용자로부터 수신된 변신 조작(morph control)에 응답하여 후보 객체를 무작위로 선정할 수 있다. 예를 들어, 변신 조작은 제1 객체를 다른 객체로 변경하기 위한 사용자의 조작을 나타낼 수 있다. 일 실시예에 따르면 후보 객체는 적어도 하나 이상 선정될 수 있다.
그리고 단계(460)에서는 게임 서버는 후보 객체 중 선택된 제2 객체로 제1 객체를 변경할 수 있다. 예를 들어, 게임 서버는 적어도 하나의 후보 객체 중 제2 객체를 제1 사용자가 선택한 경우, 제1 객체를 제2 객체로 변경할 수 있다. 여기서, 후보 객체는 제1 사용자에 의해 선택가능한 객체로서, 제1 사용자는 변경하고자 하는 후보 객체를 선택할 수 있다. 일 실시예에 따르면 사용자에 대응하는 객체를 변신시키도록 제어함으로써, 게임 중 일측의 사용자가 가상 세계에 숨을 수 있고, 각 사용자는 다른 사용자로부터 숨는 재미 및 다른 사용자를 찾는 재미를 느낄 수 있다. 또한, 사용자가 변신하고자 하는 후보 객체를 선정하여 사용자에게 제공함으로써, 사용자는 보다 효율적이고 신속하게 객체를 변경할 수 있다.
이하, 제1 사용자에 대응하는 객체로서, 제1 객체를 주로 예로 들어 설명하였으나, 이로 한정하는 것은 아니고, 제2 객체에 대해서도 각 방법이 적용될 수 있다.
도 5a는 일 실시예에 따른 객체를 제어하는 사용자 단말의 화면을 도시한다.
일 실시예에 따르면, 도 5a는 제1 사용자의 게임 화면(500)을 나타낼 수 있다. 제1 사용자에 대응하는 제1 객체는 도 5a에 도시된 바와 같이 1인칭 시점(510)으로 표시될 수 있다. 다만, 이로 한정하는 것은 아니고, 제1 객체는 3인칭 또는 자유 시점(예를 들어, 객체의 가상 세계 내 위치와 무관한 시점)으로 표시될 수도 있다.
예를 들어, 제1 사용자의 게임 화면(500)에서는, 제1 객체의 제1 상태 정보(530)(도 5a에서는 100%)가 도시될 수 있다. 예를 들어, 제1 상태 정보(530)는 제1 객체의 히트 포인트(HP, hit point)로서, HP가 0이 되면 해당 게임에서 제1 사용자는 패배하도록 설정될 수 있다. 제1 상태 정보(530)는 제2 사용자로부터 수신되는 상태 변경 조작에 기초하여 변경될 수 있다. 예를 들어, 제2 사용자로부터 수신되는 상태 변경 조작의 유효성이 검증되면, 게임 서버는 제1 상태 정보(530)를 변경(예를 들어, 제1 사용자에 대응하는 제1 객체 또는 제2 객체의 HP가 감소하도록 변경)할 수 있다.
상술한 도 4의 단계(450)에서 제1 사용자로부터 변신 조작이 수신되는 경우에 응답하여, 제1 사용자 단말은 변신 인터페이스(520)를 호출하여 디스플레이에 표시할 수 있다. 변신 인터페이스(520)는 변신 조작이 수신되는 경우에 응답하여, 무작위로 선정된 후보 객체를 표시할 수 있다. 예를 들어, 변신 조작이 수신된 경우에 응답하여, 변신 인터페이스(520)는 슬롯(521) 내에서 무작위로 일렬로 배치된 후보 객체들을 일정한 방향(예를 들어, 위에서 아래로 또는 아래에서 위로)으로 순서대로 번갈아 나타나도록 디스플레이할 수 있다. (예를 들어, 슬롯 머신과 유사한 방식으로 제공)
일 실시예에 따르면, 일렬로 배치된 후보 객체들이 일정한 방향으로 순서대로 번갈아 나타나도록 디스플레이되는 동안, 제1 사용자로부터 변신 인터페이스(520)의 슬롯 정지 조작(slot stop control)이 수신되는 경우에 응답하여, 변신 인터페이스(520)의 각 슬롯은 하나의 후보 객체를 표시하도록 제어될 수 있다. 제1 사용자는 각 슬롯에 대한 선택 조작을 통해 하나의 후보 객체를 선택할 수 있다. 예를 들어, 선택 조작은, 사용자가 적어도 하나의 슬롯 중 하나의 슬롯(521)을 선택하도록 구성되는 "선택" 버튼(522)을 활성화하는 조작을 나타낼 수 있다.
다른 일 실시예에 따르면, 변신 조작이 수신된 시점(예를 들어, 일렬로 배치된 후보 객체들이 일정한 방향으로 순서대로 번갈아 나타나도록 디스플레이되는 동작의 시작 시점)으로부터 일정한 시간이 경과된 경우, 게임 서버는 강제적으로(예를 들어, 사용자의 조작 여부와 무관하게) 적어도 하나의 후보 객체를 선정하여 각 슬롯에 표시할 수 있다. 이후, 게임 서버는 선정된 적어도 하나의 후보 객체 중 하나의 후보 객체를 제2 객체로서 강제적으로 결정할 수 있다.
이하, 본 명세서에서 특정 버튼 내지 객체를 활성화하는 조작은, 예를 들어, 마우스 클릭, 키보드 엔터, 터치스크린의 해당 인터페이스 지점을 터치하는 조작 등을 포함할 수 있다.
도 5b 내지 도 5d는 일 실시예에 따른 제1 사용자에 대응하는 객체의 파라미터의 예시를 도시한다.
도 5b 내지 도 5d에서는 설명의 편의를 위해 제1 사용자에 대응하는 객체의 파라미터로서, 객체의 속성(attribute)을 지시하는 속성 파라미터(attribute parameter)만을 도시하였으나, 이로 한정하는 것은 아니고, 일 실시예에 따른 객체는 설계에 따라 다른 파라미터들을 더 포함할 수 있다.
일 실시예에 따르면, 객체의 속성은 예를 들어, 해당 객체의 외형이 사람인 경우를 지시하는 사람 속성(human attribute)(예를 들어, "MARK_HUMAN"으로 도시됨), 및 해당 객체의 외형이 사물(thing)인 경우를 지시하는 사물 속성(thing attribute)(예를 들어, "MARK_PROP"으로 도시됨)을 포함할 수 있다. 다만, 객체의 속성의 종류를 상기로 한정하는 것은 아니고, 설계에 따라 다른 속성이 더 추가될 수 있다. 예를 들어, 가상 세계 내에 배치된 사물 객체들의 속성은 배경인 경우를 지시하는 배경 속성(background attribute)로 설정될 수 있다.
일 실시예에 따르면, 각 속성에 기초하여 객체에 할당되는 기능이 정의될 수 있다. 예를 들어, 사용자 단말 또는 게임 서버는 사람 속성을 가지는 객체에 대해 다른 사용자의 상태 변경을 유발하는 공격 기능(예를 들어, 칼, 총, 수류탄 등을 이용하여 공격), 및 무기 구입/변경 등의 시스템 기능 등이 허용되도록 정의할 수 있다.
다른 예를 들어, 사용자 단말 또는 게임 서버는 사물 속성을 가지는 객체에 대해 특정 위치에서 특정 시점으로 객체를 고정하는 프리징 모드로 진입하는 프리징 기능(하기 도 9a 및 도 9b에서 설명함), 및 관전 모드로 진입하는 관전 기능(하기 도 10a 내지 도 12에서 설명함) 등이 허용되도록 정의할 수 있다. 여기서, 사람 속성에 할당되는 공격 기능 및 시스템 기능은 사물 속성에 대해 허용되지 않을 수 있다.
상술한 각 속성은 각각 고유한 기능이 할당될 수 있고, 임의의 속성에 대해 할당된 고유한 기능은, 다른 속성을 가지는 객체에 대해서는 허용되지 않을 수 있다. 예를 들어, 사람 속성의 고유한 기능 공격 기능 및 시스템 기능으로 설정되고, 사물 속성의 고유한 기능은 프리징 기능 및 관전 기능으로 설정될 수 있다. 다만, 각 속성에 대해 할당되는 기능 및 고유한 기능을 상술한 바로 한정하는 것은 아니고, 설계에 따라 변경, 삭제, 및 추가될 수 있다. 또한, 사람 속성 및 사물 속성은 공통되는 기능으로서 변신 기능이 허용될 수 있다.
여기서, 처리부는 각 기능에 대해 고유한 기능인지를 속성 파라미터에 기초하여 체크할 수 있고, 현재 속성 파라미터에 대해 고유한 기능이 아닌 기능을 제한할 수 있고, 고유한 기능은 추가할 수 있다.
일 실시예에 따르면, 도 5b는 사용자 단말 또는 게임 서버가 제1 사용자에 대응하는 제1 객체(591)를 제2 객체(592)로 변경하는 경우의 예시, 도 5c는 제1 사용자에 대응하는 제2 객체(592)를 제1 객체(591)로 변경하는 경우의 예시, 도 5d는 제1 사용자에 대응하는 제2 객체(592)를 다른 제2 객체(592)로 변경하는 경우의 예시를 도시한다. 예를 들어, 제1 객체(591)는 제1 사용자에 대응하는 객체의 속성 파라미터가 사람 속성을 지시하는 객체를 나타낼 수 있고, 제2 객체(592)는 제1 사용자에 대응하는 객체의 속성 파라미터가 사물 속성을 지시하는 객체를 나타낼 수 있다.
도 5b에서 제1 객체(591)로부터 제2 객체(592)로 변경되는 경우에 응답하여, 사용자 단말 또는 게임 서버가 제1 사용자에 대응하는 객체의 속성 파라미터를 객체의 외형이 사람인 경우를 지시하는 "MARK_HUMAN"으로부터 객체의 외형이 사물인 경우를 지시하는 "MARK_PROP"으로 변경할 수 있다. 도 5c에서는 제2 객체(592)로부터 제1 객체(591)로 변경되는 경우에 응답하여, 사용자 단말 또는 게임 서버가 제1 사용자에 대응하는 속성 파라미터를 "MARK_PROP"으로부터 "MARK_HUMAN"으로 변경할 수 있다. 도 5d에서는 제2 객체(592)로부터 다른 제2 객체(592)로 변경되는 경우에 응답하여, 사용자 단말 또는 게임 서버가 제1 사용자에 대응하는 속성 파라미터를 "MARK_PROP"으로 유지할 수 있다.
일 실시예에 따르면 입력수신부는 제1 사용자로부터 수신되는 객체의 기능을 활성화하는 사용자 조작을 수신할 수 있다. 여기서, 입력수신부가 키보드인 경우를 가정하면, 입력수신부는 키 입력을 수신할 수 있다. 제1 사용자로부터 수신된 사용자 조작은 미리 정해진 기능 목록(function list)에 따라, 특정 기능에 매칭될 수 있다. 예를 들어, 처리부는 수신된 사용자 조작을 미리 정해진 기능 목록에 기초하여 대응하는 명령으로 변환할 수 있다.
또한, 도 5b 내지 도 5d에 도시된 바와 같이, 제1 사용자에 대응하는 객체의 속성 파라미터가 변경되면, 해당 속성 파라미터에 기초하여 사용자 조작에 매칭되는 기능이 변경될 수 있다. 예를 들어, 미리 정해진 기능 목록은 특정 사용자 조작에 대해, 속성 파라미터에 따라 다른 기능이 할당되도록 설정될 수 있다.
예를 들어, 사용자 단말 또는 게임 서버는 제1 사용자가 키보드의 특정 키를 입력수신부에 입력한 경우에 응답하여, 제1 사용자에 대응하는 객체가 사람 속성인 동안에는 시스템 기능을 활성화하고, 사물 속성인 동안에는 프리징 기능을 활성화할 수 있다. 다만, 각 속성에 대해 사용자 조작 및 기능의 매칭을 상기와 같이 한정하는 것은 아니고, 설계에 따라 변경될 수 있다.
도 6 및 도 7은 일 실시예에 따른 후보 객체를 선정하는 예시를 도시한다.
일 실시예에 따르면, 도 6은 상술한 도 4의 단계(450)의 예시적인 과정을 도시할 수 있다.
우선, 단계(651)에서 게임 서버는 제1 사용자의 변신 조작에 응답하여, N개의 후보 객체를 무작위로 선정할 수 있다. 여기서, N은 2이상의 정수를 나타낼 수 있다.
그리고 단계(652)에서 게임 서버는 제1 사용자의 사용자 권한에 따라, N개의 후보 객체 중 M개의 후보 객체에 대한 제1 사용자의 선택 가능성은 인에이블 또는 디스에이블할 수 있다. 여기서, M은 N보다 작거나 같고 1보다 크거나 같은 정수를 나타낼 수 있다. 예를 들어, M개의 후보 객체에 대한 제1 사용자의 선택 가능성이 인에이블되면, 제1 사용자는 M개의 후보 객체를 선택하는 것이 허용될 수 있다. 다른 예를 들어, M개의 후보 객체에 대한 제1 사용자의 선택 가능성이 디스에이블되면, 제1 사용자가 M개의 후보 객체를 선택하는 것이 허용되지 않을 수 있다.
여기서, 사용자 권한은 제1 사용자에 대응하는 제1 사용자 계정에 설정된 M개의 후보 객체에 대한 접근 권한일 수 있다. 예를 들어, 사용자 권한은 M개의 후보 객체의 선택 가능성에 대한 제1 사용자 계정의 결제 여부에 기초하여 설정될 수 있다. 제1 사용자가 M개의 후보 객체를 언락하기 위해 결제한 경우, 제1 사용자의 선택 가능성이 인에이블될 수 있고, 결제하지 않은 경우에는 디스에이블된 상태가 유지될 수 있다. 예를 들어, 결제는 인게임머니 또는 현금(cash)에 의해 지불될 수 있다. 일 실시예에 따르면 결제 여부에 따라 후보 객체를 인에이블/디스에이블함으로써, 사용자의 결제를 유도할 수 있다. 또한, 사용자의 결제 유도에 따라 서비스 제공자의 수익이 증대될 수 있다.
도 7에서는 N은 3이고, M은 1인 경우의 예시적인 게임 화면을 도시한다. 예를 들어, 도 7의 변신 인터페이스(520)에서는 3번 슬롯(721)에 대한 선택 가능성이 디스에이블된 상태일 수 있다. 이 경우, 제1 사용자가 3번 슬롯(721)에 대한 "선택" 버튼(722)을 활성화하려고 시도하더라도, 이러한 접근은 허용되지 않을 수 있다.
또한, 제1 사용자는 M개의 후보 객체 외에 다른 후보 객체를 선택하고자 하는 경우, 후보 객체를 다시 선정하도록 제1 사용자 단말을 조작할 수 있다. 예를 들어, 제1 사용자로부터 재선정 조작(예를 들어, "다시 돌리기" 버튼(723) 활성화)이 수신되는 경우에 응답하여, 게임 서버는 제1 사용자 단말로 다른 M개의 후보 객체를 선정하여 제공할 수 있다. 일 실시예에 따르면 재선정 조작은 인게임머니 또는 현금이 지불된 경우에 활성화될 수 있다.
도 8a 내지 8d는 다른 일 실시예에 따른 후보 객체를 선정하는 방법을 도시한 흐름도이다.
일 실시예에 따르면, 도 8a은 상술한 도 4의 단계(450)의 다른 예시적인 과정을 도시할 수 있다.
단계(851)에서는 게임 서버가 변신 조작에 응답하여, 가상 세계 내에 배치되는 복수의 사물 객체들(thing objects)에 대응하는 P개의 모후보 객체 중 적어도 하나를 적어도 하나의 후보 객체로서 결정할 수 있다.
여기서, 사물 객체는 가상 세계의 맵 상에 배치된 넌플레이어블하고, 맵 및 구조물 객체(structure object)와 구분되는 객체를 나타낼 수 있다. 예를 들어, 사물 객체는 가상 세계 내의 책상, TV, 사다리, 의자, 냉장고, 동상(statue), 물고기, 새 등을 포함할 수 있다. 예를 들어, 모후보 객체는 가상 세계에 배치되는 복수의 사물 객체들일 수 있다.
일 실시예에 따르면, 도 8b는 상술한 도 8a의 단계(851)의 예시적인 과정을 도시할 수 있다.
단계(801)에서는 게임 서버가 가상 세계 내에 배치되는 사물 객체에 식별 정보를 설정할 수 있다. 예를 들어, 게임 서버는 가상 세계 내에 배치되는 사물 객체의 각각에 대해 식별 정보를 설정하고, 설정된 식별 정보에 기초하여 후보 객체 목록을 생성할 수 있다. 예를 들어, 식별 정보는 각 사물 객체를 지시하는 인덱스를 포함할 수 있다. 인덱스는 예를 들어, 가상 세계에 존재하는 사물 객체의 개수가 L1+1개(여기서 L1은 0이상의 정수)인 경우, 0부터 L1로 설정될 수 있다. 일 실시예에 따르면, 게임 서버는 가상 세계 내에 배치되는 사물 객체들의 일부 또는 전체에 대해 식별 정보를 설정할 수 있다.
그리고 단계(802)에서는 게임 서버가 식별 정보를 무작위로 선택할 수 있다. 예를 들어, 게임 서버는 0부터 L1까지의 값 중 하나의 값을 무작위로 선택할 수 있다. 예를 들어, 게임 서버는 K1(여기서, K1는 0이상 L1이하의 정수)를 선택할 수 있다.
이어서 단계(803)에서는 게임 서버가 선택된 식별 정보에 대응하는 사물 객체를 후보 객체로 결정할 수 있다. 예를 들어, 상술한 단계(802)에서 선택된 인덱스 K1(하기 도 8c에서는 K2, 도 8d에서는 K3)에 대응하는 사물 객체를 후보 객체로 결정할 수 있다.
일 실시예에 따르면 도 8c는 상술한 도 8a의 단계(841)의 다른 예시적인 과정을 도시할 수 있다.
단계(804)에서는 게임 서버가 미리 정해진 사물 객체 목록으로부터 사물 객체를 선정할 수 있다. 여기서, 미리 정해진 사물 객체 목록은 서비스 제공자에 의해 임의로 생성될 수 있다. 예를 들어, 미리 정해진 사물 객체 목록은 가상 세계 내에서의 객체 크기가 지나치게 작거나, 흥미도가 낮은 사물 객체가 제외되도록 생성될 수 있다. 또한, 사물 객체 목록은 가상 세계에 존재하지 않는 별개의 사물 객체가 포함되도록 생성될 수 있다. 게임 서버는 미리 정해진 사물 객체 목록의 일부 사물 객체 또는 전체 사물 객체를 선정할 수 있다.
그리고 단계(805)에서는 게임 서버가 선정된 사물 객체에 식별 정보를 설정할 수 있다. 예를 들어, 식별 정보인 인덱스는, 선정된 사물 객체의 개수가 L2+1개(여기서 L2은 0이상의 정수)인 경우, 0부터 L2로 설정될 수 있다. 이후, 도 8b에 도시된 단계(802)에서처럼 게임 서버는 식별 정보를 무작위로 선택할 수 있다. 예를 들어, 게임 서버는 0부터 L2까지의 값 중 하나의 값을 무작위로 선택할 수 있다. 예를 들어, 게임 서버는 K2(여기서, K2는 0이상 L2이하의 정수)를 선택할 수 있다.
일 실시예에 따르면 도 8d는 상술한 도 8a의 단계(841)의 또 다른 예시적인 과정을 도시할 수 있다.
단계(806)에서는 게임 서버가 미리 정해진 사물 객체 목록 및 가상 세계 내에 배치되는 사물 객체 중 적어도 하나를 선정할 수 있다. 예를 들어, 게임 서버는 미리 정해진 사물 객체 목록의 일부 사물 객체 또는 전체 사물 객체 및 가상 세계 내에 배치되는 일부 사물 객체 또는 전체 사물 객체를 선정할 수 있다.
그리고 단계(807)에서는 게임 서버가 선정된 사물 객체에 식별 정보를 설정할 수 있다. 예를 들어, 식별 정보인 인덱스는, 선정된 사물 객체의 개수가 L3+1개(여기서 L3은 0이상의 정수)인 경우, 0부터 L3로 설정될 수 있다. 이후, 도 8b에 도시된 단계(802)에서처럼 게임 서버는 식별 정보를 무작위로 선택할 수 있다. 예를 들어, 게임 서버는 0부터 L3까지의 값 중 하나의 값을 무작위로 선택할 수 있다. 예를 들어, 게임 서버는 K3(여기서, K3는 0이상 L3이하의 정수)를 선택할 수 있다.
도 9a는 일 실시예에 따른 객체의 이동을 제어하는 방법을 도시한 흐름도이다.
일 실시예에 따르면, 도 9a는 상술한 도 4의 단계(440)의 예시적인 과정을 도시할 수 있다.
우선, 단계(941)에서 게임 서버는 이동 조작 중 제1 사용자로부터 프리징 조작을 수신할 수 있다. 예를 들어, 제1 사용자 단말이 프리징 조작을 입력 받으면, 제1 사용자 단말은 게임 서버로 해당 프리징 조작을 전송할 수 있다. 프리징 조작은 예를 들어, 제1 객체의 위치를 고정시키기 위한 조작일 수 있다. 예를 들어, 프리징 조작의 수신에 응답하여, 게임 서버는 제1 사용자에 대응하는 객체의 위치가 고정되는 프리징 모드(freezing mode)로 제1 사용자 단말을 진입시킬 수 있다. 프리징 모드는 사물 속성에 할당되는 고유한 기능일 수 있다. 또한, 프리징 모드에서는 제1 사용자 단말에 제공되는 시점이 제1 객체의 위치를 기준으로 제한될 수 있다. 프리징 모드에서 추가적으로 관전 모드 진입 조작이 수신되면 하기 도 10a와 같이 관전 모드로 진입하게 될 수 있다.
일 실시예에 따르면 제1 사용자에 대응하는 객체는 프리징 파라미터(예를 들어, "MARK_FREEZING")를 더 포함할 수 있다. 예를 들어, 프리징 모드에 진입하면, 프리징 파라미터가 활성화되고, 프리징 모드가 종료되면 프리징 파라미터가 비활성화될 수 있다. 관전 모드에서도 프리징 파라미터는 활성화된 상태일 수 있다.
그리고 단계(942)에서 게임 서버는 프리징 조작에 응답하여 가상 세계 내 제1 객체의 위치를 프리징 조작이 입력된 때의 위치로 고정할 수 있다. 예를 들어, 게임 서버는 프리징 조작이 입력된 이후에는, 제1 사용자로부터 수신되는 이동 조작을 배제하고, 제1 객체의 위치(예를 들어, 가상 세계에서의 좌표 값)를 변경하지 않을 수 있다. 예를 들어, 게임 서버는 제1 사용자의 프리징 파라미터에 기초하여 디스플레이의 매 프레임마다 제1 객체의 위치를 업데이트할 지 여부를 판단할 수 있다. 상술한 단계(941)에서 프리징 파라미터가 활성화되었으므로, 단계(942)에서는 이동 조작을 무시하고 제1 객체의 위치를 업데이트하지 않을 수 있다.
이어서 단계(943)에서 게임 서버는 제1 사용자로부터 프리징 해제 조작이 입력될 때까지 제1 객체에 대한 물리 엔진의 처리를 디스에이블할 수 있다. 구체적으로, 게임 서버는 프리징 조작이 입력된 후 프리징 해제 조작이 입력되기 전까지, 제1 객체의 위치에 대해, 제1 사용자 단말이 물리 엔진에 의한 연산을 배제하도록 제어할 수 있다.
예를 들어, 제1 객체가 가상 세계 내에서 점프, 낙하 등에 의해 공중에 위치하는 동안 프리징 조작이 입력된 경우, 게임 서버는 프리징 해제 조작이 입력되기 전까지 제1 객체의 위치를 프리징 조작이 입력된 때의 위치로 고정하여 유지할 수 있다. 또한, 제1 객체가 가상 세게 내에서 물살이 있는 장소, 바람이 부는 장소에 위치하는 동안 프리징 조작이 입력된 경우, 게임 서버는 프리징 해제 조작이 입력되지 전까지 제1 객체의 위치를 프리징 조작이 입력된 때의 위치로 고정하여 유지할 수 있다.
여기서, 프리징 모드가 종료되는 경우(즉, 프리징 해제 조작이 입력되는 경우)에 응답하여, 상술한 단계(942)에서 고정되었던 제1 객체의 위치로부터 사용자의 이동 조작 및 물리 엔진의 적용 중 적어도 하나에 따라 제1 객체의 위치를 업데이트할 수 있다. 따라서, 프리징 모드에서의 제1 객체의 위치와 프리징 모드 종료 직후의 제1 객체의 위치는 연속적일 수 있다.
일 실시예에 따르면 게임 중 일측의 사용자는 사용자에 대응하는 객체를 프리징시키고 관전 모드에 진입할 수 있다. 객체를 프리징한 후의 사용자는 다른 사용자들을 관전함으로써, 게임에 대한 흥미도를 유지할 수 있다. 또한, 다수의 사용자들이 프리징 후 다른 사용자들의 게임 진행을 관전할 수 있도록 함으로써, 더 많은 사용자들의 참여를 이끌 수 있으며, 또한 프리징한 사용자들의 캐릭터에 대한 물리 연산을 중지함으로써 시스템의 처리 부하를 감소시킬 수 있다.
상술한 도 9a의 각 단계(941, 942, 943)은 제1 객체를 예로 들어 설명하였으나, 이로 한정하는 것은 아니고, 프리징 조작 및 프리징 해제 조작은 제2 객체의 위치도 고정 및 고정해제할 수 있다.
도 9b는 일 실시예에 따른 객체의 프레임을 제어하는 방법을 도시한 흐름도이다.
단계(901)에서 사용자 단말 또는 게임 서버는 프리징 조작에 응답하여 제1 객체의 애니메이션 프레임을 유지할 수 있다. 예를 들어, 게임 서버는 제1 객체의 프리징 파라미터에 기초하여 애니메이션 프레임의 업데이트 여부를 결정할 수 있다. 프리징 조작의 수신에 응답하여, 게임 서버는 제1 객체의 프리징 파라미터를 활성화할 수 있고, 애니메이션 프레임의 업데이트를 중단할 수 있다. 예를 들어, 애니메이션 프레임은 프리징 모드 이외의 모드에서는 디스플레이의 매 프레임마다 재생되도록 각 객체에 할당된 프레임을 나타낼 수 있다.
그리고 단계(902)에서 사용자 단말 또는 게임 서버는 프리징 해제 조작이 입력될 때까지 제1 객체에 대한 애니메이션 프레임의 처리를 디스에이블할 수 있다. 예를 들어, 프리징 해제 조작이 입력되면, 프리징 모드가 종료되면서, 사용자 단말은 상술한 단계(901)에서 정지된 시점으로부터 애니메이션 프레임을 재생할 수 있다. 따라서, 프리징 모드에서의 제1 객체의 애니메이션 프레임과 프리징 모드 종료 직후의 제1 객체의 애니메이션 프레임은 연속적일 수 있다. 이에 따라 객체의 애니메이션 프레임이 프리징 모드 종료 시점을 전후로 위화감 없이 자연스럽게 재생될 수 있다. 또한, 프리징한 사용자들의 캐릭터에 대한 애니메이션 프레임의 재생을 중지함으로써 시스템의 처리 부하를 감소시킬 수 있다.
도 10a 내지 도 10c는 일 실시예에 따른 관전 모드에서 객체를 제공하는 예시를 도시한다.
도 10a은 제1 사용자에게 관전 모드를 제공하는 방법을 도시한 흐름도이다.
우선, 단계(1041)에서는 제1 사용자 단말은 프리징 조작이 입력된 후 제1 사용자로부터 관전 모드 진입 조작(observing mode enter control)을 수신할 수 있다. 예를 들어, 제1 사용자 단말은 제1 사용자로부터 관전 모드 진입 조작으로 정의된 조작을 입력수신부를 통해 입력받을 수 있다. 관전 모드 진입 조작은 제1 사용자에 대응하는 제1 상태 정보가 더 이상 플레이가 불가능한 사망 상태로 변경된 경우에도 생성되어, 제1 사용자 단말로부터 게임 서버로 전달될 수 있다.
그리고 단계(1042)에서 제1 사용자 단말은 관전 모드 진입 조작에 응답하여, 제1 사용자에게 관전 모드로 가상 세계를 제공할 수 있다. 관전 모드는, 제1 사용자 단말에게 제1 객체 또는 제2 객체의 위치와 무관한 시점을 제공하는 모드로서, 제1 사용자는 이동 조작을 통해 해당 시점의 위치를 변경하거나, 다른 제1 사용자의 시점으로 된 게임 화면을 제1 사용자에게 제공할 수 있다.
일 실시예에 따르면, 관전 모드에서는 제1 사용자에 대응하는 객체의 프리징 파라미터가 활성화될 수 있다. 또한, 관전 모드에서는 제1 사용자에 대응하는 객체의 위치 및 애니메이션 프레임을 유지한 채, 제1 사용자 단말에 제공되는 화면의 시점을 제공하는 카메라 객체의 위치만이 변경될 수 있다. 예를 들어, 관전 모드 동안, 제1 사용자에 대응하는 객체는 제2 사용자로부터 공격을 받거나 물리 연산 등이 적용될 수 있다. 관전 모드는 사물 속성에 할당되는 고유한 기능일 수 있다.
이어서 단계(1043)에서 제1 사용자 단말은 이동 조작에 응답하여 관전 모드의 제1 사용자에게 제공되는 화면의 시점이 이동되도록 제어할 수 있다. 예를 들어, 상술한 도 9a의 단계(942)에서 프리징 조작이 입력된 후 프리징 해제 조작이 입력되기 전까지, 이동 조작은 제1 객체 또는 제2 객체의 위치를 변경하는 대신, 제1 사용자 단말에 제공되는 게임 화면의 시점을 이동시키도록 설정될 수 있다.
일 실시예에 따르면, 관전 모드 종료 조작을 제1 사용자로부터 수신하는 경우에 응답하여, 제1 사용자 단말은 시점을 관전 모드 진입 직전의 시점으로 복원할 수 있다.
도 10b는 도 10a은 제1 사용자에게 관전 모드를 제공하는 방법의 구체적인 예시를 도시한 흐름도이다. 예를 들어, 도 10a의 단계(1042)는 단계들(1001, 1002)로 구체화될 수 있다.
단계(1001)에서 제1 사용자 단말은 제1 사용자에게 할당된 카메라 객체를 복제할 수 있다. 예를 들어, 카메라 객체는 제1 사용자 단말에 제공되는 화면의 시점을 결정하는 객체일 수 있다. 기본적으로 카메라 객체는 제1 사용자에 대응하는 객체와 연관되어 이동 및 조작될 수 있다.
그리고 단계(1002)에서 제1 사용자 단말은 수신될 이동 조작이 복제된 카메라 객체로 할당되도록 설정할 수 있다. 예를 들어, 제1 사용자 단말은 원본 카메라 객체로 할당되던 이동 조작을 복제된 카메라 객체로 할당되도록 변경할 수 있다. 원본 카메라 객체와 복제된 카메라 객체는 서로 독립적으로 존재할 수 있다.
이어서 단계(1043)에서는 이동 조작에 응답하여, 관전 모드의 제1 사용자에게 제공되는 화면의 시점이 이동되도록 제어할 수 있다. 예를 들어, 복제된 카메라 객체를 통해 화면의 시점이 이동될 수 있다. 도 10a의 단계(1043)에서는 이미 상세히 설명하였으므로 구체적인 설명은 생략한다.
그리고 단계(1003)에서 제1 사용자 단말은 관전 모드 종료 조작의 수신에 응답하여 이동 조작이 원본 카메라 객체로 할당되도록 설정하고, 복제된 카메라 객체를 삭제할 수 있다. 예를 들어, 관전 모드가 종료되면, 시점이 원본 카메라 객체, 예를 들어 제1 사용자에 대응하는 객체의 위치와 연관된 기존 시점으로 복귀될 수 있다.
도 10c는 도 10a은 제1 사용자에게 관전 모드를 제공하는 방법의 구체적인 다른 예시를 도시한 흐름도이다. 예를 들어, 도 10a의 단계(1042)는 단계들(1004, 1005)로 구체화될 수 있다.
단계(1004)에서 제1 사용자 단말은 원본 객체를 복제하고 위치를 고정할 수 있다. 예를 들어, 제1 사용자 단말은 제1 사용자에 대응하는 원본 객체를 복제할 수 있고, 제1 사용자에 대응하는 복제된 객체의 위치는 원본 객체의 위치와 동일하도록 생성될 수 있다. 여기서, 원본 객체 및 복제된 객체는 서로 분리된 것일 수 있고, 원본 객체와 연관된 원본 카메라 객체 및 복제된 객체와 연관된 복제된 카메라 객체도 서로 분리된 것일 수 있다.
그리고 단계(1005)에서 제1 사용자 단말은 원본 카메라 객체를 자유 시점으로 변경할 수 있다. 예를 들어, 제1 사용자 단말은 제1 사용자로부터 수신되는 이동 조작의 원본 객체로의 적용을 배제하고, 이동 조작을 원본 카메라 객체에만 적용할 수 있다.
이어서 단계(1043)에서는 이동 조작에 응답하여, 관전 모드의 제1 사용자에게 제공되는 화면의 시점이 이동되도록 제어할 수 있다. 예를 들어, 원본 카메라 객체를 통해 화면의 시점이 이동될 수 있다. 도 10a의 단계(1043)에서는 이미 상세히 설명하였으므로 구체적인 설명은 생략한다.
그리고 단계(1006)에서 제1 사용자 단말은 관전 모드 종료 조작의 수신에 응답하여, 원본 객체를 복제된 객체의 위치로 복원하고, 복제된 객체의 상태 변경을 원본 객체에 반영할 수 있다. 예를 들어, 원본 객체와 복제된 객체는 서로 링크될 수 있다. 관전 모드 종료 시, 제1 사용자에 대응하는 복제된 객체에서 변경된 상태 정보는 제1 사용자에 대응하는 원본 객체에 반영되어 업데이트될 수 있다.
도 11 및 도 12는 다른 일 실시예에 따른 관전 모드에서 객체를 제공하는 예시를 도시한다.
도 11은 관전 모드에서 제3 사용자에게 제1 사용자에 대응하는 제1 객체를 강조 표시하여 제공하는 과정을 도시한 흐름도이다.
우선, 단계(1141)에서 게임 서버는 제3 사용자에게 관전 모드로 가상 세계를 제공하는 경우, 제1 사용자에 대응하는 제1 객체가 제2 객체로 변경되었는지 판단할 수 있다. 예를 들어, 제3 사용자는 제1 사용자와 같은 측에 속하는 사용자로서, 본 명세서에서는 다른 제1 사용자라고도 나타낼 수 있다.
그리고 단계(1142)에서 게임 서버는 제1 객체가 제2 객체로 변경되지 않은 경우, 제1 객체의 모양을 변경하지 않고 관전 모드에서 제3 사용자에게 제공할 수 있다. 예를 들어, 제1 사용자가 제1 객체를 변경하지 않은 경우, 제1 객체를 그대로 제3 사용자에게 디스플레이할 수 있다.
이어서 단계(1143)에서 게임 서버는 제1 객체가 제2 객체로 변경된 경우, 제2 객체의 외곽선에 강조 표시를 하여 관전 모드에서 제3 사용자에게 제공할 수 있다. 예를 들어, 제3 사용자가 같은 측에 속한 제1 사용자를 쉽게 식별할 수 있도록, 게임 서버는 제3 사용자에게 제2 객체의 외곽선에 강조 표시를 하여 디스플레이하도록 제3 사용자의 사용자 단말을 제어할 수 있다.
예를 들어, 강조 표시는 제2 객체의 외곽선의 굵기를 변경, 외곽선의 색을 변경, 외곽선을 굵게 표시 등을 포함할 수 있다.
도 12는 상술한 도 9a의 단계(942) 및 도 11의 단계(1143)의 예시를 도시한 도면이다. 일 실시예에 따르면, 도 12는 제1 사용자에게 제공되는 게임 화면(500)을 나타낼 수 있다.
예를 들어, 제1 사용자에 대응하는 제2 객체(1211)(예를 들어, 제1 객체로부터 변경된 객체로서, 도 12에서는 드럼통으로 도시됨)는, 가상 세계 내에서 제1 사용자의 이동 조작에 의해 공중에 뜬 상태에서 제1 사용자로부터 프리징 조작을 수신하여, 제2 객체(1211)의 위치가 고정될 수 있다. 제2 객체(1211)의 위치가 고정된 이후, 제1 사용자의 이동 조작은 제1 사용자 단말에 제공되는 게임 화면(500)의 시점을 이동시키도록 설정될 수 있다. 도 12에 도시된 바와 같이, 제1 사용자 단말에 제공되는 게임 화면(500)은 제1 사용자에 대응하는 제2 객체(1211)의 1인칭 또는 3인칭 시점이 아닌, 자유 시점으로 제공될 수 있다.
또한, 제1 사용자 단말에 제공되는 게임 화면(500)에서, 다른 제1 사용자에 대응하는 객체(1212)는 외곽선이 강조되어 디스플레이될 수 있다. 다른 제1 사용자에 대응하는 객체(1212)는 예를 들어, 변신 후의 객체(1212)(예를 들어, 도 12에서는 에어컨 실외기로 도시됨)일 수 있다.
도 13 및 도 14는 일 실시예에 따른 제1 객체를 변경하는 예시를 도시한다.
일 실시예에 따르면, 도 13은 상술한 도 4의 단계(450)의 또 다른 예시적인 과정을 도시할 수 있다.
우선, 단계(1351)에서는 게임 서버가 제1 사용자로부터 변신 조작이 재차 수신된 경우에 응답하여, 이전 변신 조작이 수신된 시점으로부터 미리 정한 변신 제한 시간이 경과 하였는지 판단할 수 있다. 예를 들어, 변신 제한 시간은 제1 사용자가 제1 객체(510)를 제2 객체로 변신시키는 동작을 제한하는 시간으로서, 이전 변신 시점으로부터 일정 시간 동안 변신이 제한되도록 설정될 수 있다.
이어서 단계(1352)에서는 게임 서버가 재차 수신된 변신 조작이 미리 정한 변신 제한 시간을 경과한 경우에 응답하여, 적어도 하나의 후보 객체를 무작위로 선정할 수 있다.
그리고 단계(1353)에서는 재차 수신된 변신 조작이 미리 정한 변신 제한 시간을 경과하지 않은 경우에 응답하여, 제1 객체(510)를 유지할 수 있다. 예를 들어, 변신 제한 시간 중인 경우, 게임 서버는 제1 사용자로부터 수신된 변신 조작을 배제하고, 제1 객체(510)를 유지할 수 있다. 이후, 게임 서버는 단계(1351)로 돌아가, 제1 사용자로부터 변신 조작이 수신되는 것을 대기할 수 있다.
도 14는 상술한 도 13의 단계(1353)에서 변신 제한 시간이 경과하지 않은 경우 디스플레이되는 변신 제한 인터페이스(1490)를 나타낼 수 있다. 일 실시예에 따르면, 제1 사용자 단말은 제1 사용자가 미리 정한 변신 제한 시간이 경과하기 전에 제1 객체(510)를 제2 객체로 변경하려고 시도하는 경우, 도 14에 도시된 바와 같이 변신 제한 인터페이스(1490)를 통한 알림을 제공할 수 있다. 예를 들어, 변신 제한 인터페이스(1490)는 변신 제한 시간을 시각적으로 표시(예를 들어, 시간이 경과할 수록 게이지가 증가하거나 감소)하거나, 남은 시간을 숫자로 표시할 수 있다.
도 15 및 도 16은 일 실시예에 따른 버닝 모드에서 객체를 제공하는 예시를 도시한다.
일 실시예에 따르면, 도 15는 제2 사용자 단말에서 버닝 모드로 객체를 제공하는 방법을 도시한 흐름도로서, 도 15의 단계들(1571 내지 1573 및 1581 내지 1582)은 도 4의 단계들(440 내지 460)과 병렬적으로 수행될 수 있다.
우선, 단계(1571)에서 게임 서버는 제2 사용자로부터, 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)에 대한 상태 변경 조작을 수신할 수 있다. 여기서, 상태 변경 조작은 제2 사용자가 제1 사용자에 대응하는 제1 상태 정보를 변경하기 위한 조작을 나타낼 수 있다. 예를 들어, 상태 변경 조작은, FPS 게임에서 제2 사용자가 게임 화면(1600)에 나타난 에임(aim)(1621)을 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)를 겨냥하여, 제3 객체(1620)가 제1 객체 또는 제2 객체(1610)를 공격하도록 하는 조작을 포함할 수 있다.
그리고 단계(1572)에서 게임 서버는 상태 변경 조작의 유효성을 검증할 수 있다. 여기서, 상태 변경 조작의 유효성은, 제2 사용자에 의한 상태 변경 조작이 유효한 지 또는 유효하지 않은지 여부를 나타낼 수 있다. 상태 변경 조작의 유효성은 예를 들어, FPS 게임에서 제2 사용자에 대응하는 제3 객체(1620)로부터의 공격 동작이 가상 세계 내에서 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)에 적중하였는지 여부를 포함할 수 있다. 더 나아가, FPS 게임에서 제3 객체(1620)로부터의 공격이 가상 세계 내의 발사체에 의한 것이 경우, 게임 서버는 발사체에 대해 물리 엔진의 연산을 적용하여 계산된 궤적에 기초하여, 제1 객체 또는 제2 객체(1610)로의 적중 여부를 판단할 수 있다.
이어서 단계(1573)에서 게임 서버는 상태 변경 조작이 유효한 경우에 응답하여, 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)의 제1 상태 정보를 변경할 수 있다. 예를 들어, 상태 변경 조작이 유효하면 제2 사용자의 공격이 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)에 적중한 것으로서, 게임 서버는 제1 상태 정보에 대응하는 HP를 0으로 변경할 수 있다. 제2 사용자에 의해 제1 사용자가 피격 당하여 HP가 0이 되면, 제1 사용자가 더 이상 플레이를 할 수 없도록 제1 상태 정보는 사망 상태로 변경될 수 있다.
그리고 단계(1574)에서 게임 서버는 상태 변경 조작이 유효하지 않은 경우에 응답하여, 제2 사용자에 대응하는 제3 객체(1620)의 제2 상태 정보(1630)를 변경할 수 있다. 여기서, 제2 상태 정보(1630)는 제2 사용자에 대응하는 제3 객체(1620)의 HP를 포함할 수 있다. 예를 들어, 상태 변경 조작이 유효하지 않으면 제2 사용자의 공격이 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)에 대해 빗나간 경우로서, 게임 서버는 빗나간 공격에 대한 페널티로서 제2 상태 정보(1630)에 대응하는 HP를 감소시킬 수 있다.
일 실시예에 따르면, 제2 사용자의 HP가 총 100인 경우로 가정하고, 제2 사용자가 제1 사용자에 대응하는 제1 객체 또는 제2 객체(1610)에 대해 공격을 적중시키면 (공격 적중 횟수 * 10)만큼의 HP가 증가하고, 공격이 빗나가면 (공격 횟수 *10) 만큼의 HP가 감소될 수 있다. 제2 사용자에 대응하는 제3 객체(1620)의 HP가 0이 되면, 제2 사용자는 더 이상 플레이를 할 수 없도록, 제3 객체(1620)의 제2 상태 정보(1630)는 사망 상태로 변경될 수 있다.
이어서 단계(1581)에서 게임 서버는 미리 정한 시간 구간 동안, 제2 사용자에 대응하는 제3 객체(1620)의 가상 세계 내에서의 이동 속도를 증가시킬 수 있다. 예를 들어, 미리 정한 시간 구간은 버닝 모드로서 정의된 시간 구간(예를 들어, 게임 종료 전 30초)을 나타낼 수 있다. 제3 객체(1620)의 이동 속도가 가상 세계 내에서 증가하는 정도(level)는 설계에 따라 결정될 수 있다.
그리고 단계(1582)에서 게임 서버는 미리 정한 시간 구간 동안 제2 상태 정보(1630)를 유지할 수 있다. 예를 들어, 버닝 모드 동안은 제2 사용자에 의한 상태 변경 조작이 유효하지 않더라도, 제2 사용자에 대응하는 제2 상태 정보(1630)가 유지될 수 있다. 구체적으로는, 버닝 모드 동안은 제2 사용자의 공격이 아무리 많이 빗나가더라도, 제2 사용자는 HP 감소의 페널티를 받지 않을 수 있다.
일 실시예에 따르면 게임 중 다른 일측의 사용자는 시간 경과에 따라 버닝 모드에 진입함으로써 스트레스가 해소될 수 있다. 또한, 게임의 시간 제한을 설정함으로써, 하나의 게임 방이 무제한적으로 유지되는 것을 방지함으로써, 서버에 가중되는 부담이 경감될 수 있다.
도 16 은 제2 사용자 단말에서 디스플레이되는 게임 화면(1600)을 도시할 수 있다. 예를 들어, 제2 사용자에 대응하는 제3 객체(1620)로부터 공격(1622)이 발생할 수 있고, 도 16에 도시된 바와 같이 에임(1621)이 제1 사용자에 대응하는 제2 객체(1610)에 적중하면, 제2 사용자의 제2 상태 정보(1630)에 대응하는 HP가 증가할 수 있다.
일 실시예에 따르면 버닝 모드 인터페이스(1690)를 통해 제2 사용자에게 버닝 모드와 관련된 정보가 제공될 수 있다. 버닝 모드 인터페이스(1690)는 버닝 모드의 남은 시간을 시각적으로 표시(예를 들어, 게이지 감소)하거나 숫자로 표시할 수 있다. 버닝 모드 동안에는 제2 상태 정보(1630)에 대응하는 HP가 감소하지 않을 수 있다.
도 17a, 도 17b 및 도 18은 일 실시예에 따라 이벤트를 제공하는 예시를 도시한다.
도 17a는 가상 세계 내에 이벤트 객체(1890)를 제공하는 방법을 도시한 흐름도이다.
우선, 단계(1701)에서 게임 서버는 가상 세계에 복수의 미리 정한 이벤트 객체(1890)들을 배치할 수 있다. 예를 들어, 게임 서버는 게임방을 생성하면서, 게임의 각 스테이지를 시작하기 전에 이벤트 객체(1890)들을 가상 세계에 배치할 수 있다.
그리고 단계(1751)에서 게임 서버는 적어도 하나의 후보 객체의 모든 후보 객체를, 미리 정한 이벤트 객체(1890)들(예를 들어, 거북이 형태의 객체)과 유사한 형태를 가지도록 설정된 미리 정한 유사 객체(1810)(예를 들어, 거북이와 유사하지만 다른 형태의 객체)로 선정할 수 있다. 유사 객체(1810)는 이벤트 객체(1890)들과 유사한 형태를 가지도록 설정됨으로써, 제2 사용자가 가상 세계에 다수 배치된 이벤트 객체(1890)와 유사 객체(1810)를 혼동하도록 유도함으로써, 제1 사용자가 보다 잘 숨을 수 있다.
도 17b는 일 실시예에 따른 도 4 의 단계(450)에서 특정 이벤트에 따라, 가상 세계에 동일 객체를 제공하는 방법을 도시한 흐름도이다.
단계(1752)에서 게임 서버는 제1 사용자의 변신 조작에 응답하여 모든 후보 객체를 동일한 형태의 객체로 선정할 수 있다. 예를 들어, 모든 제1 사용자는 제1 객체를 동일한 형태의 제2 객체로 변경하게 되므로, 제2 사용자는 보다 용이하게 제1 사용자에 대응하는 제2 객체를 찾아 공격할 수 있다. 여기서, 모든 제1 사용자 단말들이 동일한 식별 정보를 선택하여 제공할 수 있다.
일 실시예에 따르면 이벤트에 따라 맵 상의 객체화 유사한 객체 또는 모든 사용자에게 동일한 객체를 후보 객체로 선정함으로써, 게임에 대한 흥미도가 증진될 수 있다. 또한, 맵 상에 동일한 객체 또는 유사한 객체를 후보 객체로 제공함으로써, 게임 서버 또는 사용자 단말에서 사용되는 리소스가 감소될 수 있다.
도 18은 특정 이벤트에 따라 유사 객체(1810)가 가상 세계에 제공되는 게임 화면(1600)을 도시한 도면이다. 도 18에 도시된 바와 같이 가상 세계에 이벤트 객체(1890)들(예를 들어, 거북이 형태의 객체)이 배치될 수 있다. 제1 사용자는 이벤트 객체(1890)와 유사한 형태의 유사 객체(1810)(예를 들어, 거북이와 유사한 형태의 객체)로 제1 객체를 변신시킬 수 있다.
도 19는 일 실시예에 따라 참가자들을 제1 사용자 및 제2 사용자 중 하나로 결정하는 방법을 도시한 흐름도이다.
게임 서버는 각 게임(예를 들어, 게임의 스테이지)의 시작 전에 제1 사용자 또는 제2 사용자로 게임에 접속한 사용자를 분류할 수 있다. 일 실시예에 따르면 지난 스테이지의 게임 결과에 기초하여 사용자들을 양 측으로 분류함으로써, 게임에 대한 흥미도가 저하되지 않을 수 있다. 예를 들어, 사용자들을 양 측에 게임 결과에 기초하여 분류함으로써 전체적인 게임의 승률이 양 측에 대해 유사해지도록 할 수 있다.
우선, 단계(1901)에서 게임 서버는 이전 게임 스테이지에서 제2 객체에 대응하는 제1 상태 정보를 변경시킨 횟수에 비례하여 이전 제2 사용자가 현재 게임 스테이지에서 제2 사용자로 결정되는 제2 사용자 확률을 감소시킬 수 있다. 예를 들어, 이전 스테이지에서 활약하여, 제1 사용자를 다수 사망시킨 제2 사용자는, 다른 사용자들의 게임 흥미 유지를 위해 제1 사용자로 결정되도록 확률이 설정될 수 있다. 여기서, 이전 스테이지는 직전 스테이지뿐 아니라, 현재 스테이지 이전의 모든 스테이지를 포함할 수 있다. 또한, 게임 서버는 직전 스테이지에서 제2 사용자였다면, 해당 사용자는 현재 스테이지에서 제2 사용자가 될 수 없도록 제한을 설정할 수 있다.
그리고 단계(1902)에서 게임 서버는 이전 게임 스테이지에서 제2 객체에 대응하는 제1 상태 정보가 유지된 정도에 비례하여 이전 제1 사용자가 현재 게임 스테이지에서 제1 사용자로 결정되는 제1 사용자 확률을 감소시킬 수 있다. 예를 들어, 이전 스테이지에서 활약하여, 제2 사용자에 의한 공격을 받지 않은 제1 사용자는, 다른 사용자들의 게임 흥미 유지를 위해 제2 사용자로 결정되도록 확률이 결정될 수 있다.
이어서 단계(1903)에서 게임 서버는 제1 사용자 확률 및 제2 사용자 확률에 기초하여 현재 게임 스테이지에 대한 제1 사용자 및 제2 사용자를 결정할 수 있다. 상술한 단계들(1901, 1902)에서 결정된 확률에 기초하여, 게임 서버는 게임의 현재 스테이지에 참가한 사용자들을 제1 사용자 또는 제2 사용자로 분류할 수 있다.
도 20a 내지 도 20d는 또 다른 일 실시예에 따라 후보 객체를 선정하는 방법을 도시한 흐름도이다.
도 20a는 객체 선정 확률을 부여하여 후보 객체를 선정하는 방법을 도시한 흐름도이다.
우선, 단계(2051)에서 게임 서버는 동일한 형태를 가지는 사물 객체들이 같은 그룹에 포함되도록, 가상 세계 내에 배치된 복수의 사물 객체들을 적어도 하나의 그룹으로 분류할 수 있다. 각 그룹은 동일한 형태를 가지는 같은 종류의 사물 객체들을 대표할 수 있다.
그리고 단계(2052)에서 게임 서버는 각 그룹에 포함된 사물 객체의 수 및 각 그룹에 대응하는 사물 객체의 크기 중 적어도 하나에 기초하여 적어도 하나의 그룹 중 각 그룹에 대해 객체 선정 확률을 부여할 수 있다. 예를 들어, 객체 선정 확률은 가상 세계의 맵에 배치된 특정 종류의 사물 객체의 수가 많을 수록 높게 설정되고, 사물 객체의 수가 적을 수록 낮게 설정될 수 있으며, 반대로도 설정될 수 있다. 다른 예를 들어, 사물 객체의 크기가 클 수록 객체 선정 확률이 높게 설정될 수 있으며, 크기가 작을 수록 객체 선정 확률이 낮게 설정될 수 있다. 일 실시예에 따르면 상술한 후보 객체는 가상 세계 내의 사물 객체들에 기초하여 선정됨으로써, 양 측의 게임 밸런스가 조절될 수 있다.
일 실시예에 따르면, 사물 객체의 크기가 클 수록 개체 선정 확률을 높게 설정함으로써, 제2 사용자가 제1 사용자에 대응하는 제2 객체를 발견하기 쉽게 해줌으로써, 제2 사용자의 게임 흥미도를 증가시킬 수 있다.
이어서 단계(2053)에서 게임 서버는 변신 조작에 응답하여, 객체 선정 확률에 기초하여 적어도 하나의 그룹 중 하나의 그룹을 무작위로 결정할 수 있다.
그리고 단계(2054)에서 게임 서버는 결정된 그룹에 대응하는 후보 객체를 선정할 수 있다.
도 20b는 가중치를 부여하여 후보 객체를 선정하는 방법을 도시한 흐름도이다.
우선, 단계(2001)에서 사용자 단말 또는 게임 서버는 사물 객체에 식별 정보를 설정할 수 있다. 예를 들어, 상술한 도 8b의 단계(801), 도 8c의 단계(805), 및 도 8d의 단계(807) 중 하나와 유사한 방식으로 식별 정보를 선정할 수 있다. 이하에서는 도 8b의 단계(801)에 따라 사물 객체에 식별 정보를 설정한 것으로 가정하고 설명한다. 다만, 이로 한정하는 것은 아니고 다른 방법이 적용될 수도 있다.
그리고 단계(2002)에서 사용자 단말 또는 게임 서버는 각 식별 정보에 대해 가중치를 부여할 수 있다. 여기서, 가중치는 서비스 제공자에 의해 임의로 설정되거나, 무작위로 설정되거나, 사용자에 의해 설정되거나, 자동으로 설정될 수 있다. 하기에서 가중치는 자연수를 가정하고 설명하지만, 이로 한정하는 것은 아니고 다른 형태의 수로서 실수 등도 사용될 수 있다.
이하에서는, 총 3개의 사물 객체를 가정하고 0번 사물 객체에 할당된 가중치는 10, 1번 사물 객체에 할당된 가중치는 20, 2번 사물 객체에 할당된 가중치는 30을 가정할 수 있다. 다만, 이로 한정하는 것은 아니고, 사물 객체의 개수 및 각 사물 객체에 대응하는 식별 정보에 대응하는 가중치는 설계에 따라 변경될 수 있다.
이어서 단계(2003)에서 사용자 단말 또는 게임 서버는 가중치에 기초하여 후보 객체를 선정할 수 있다. 가중치에 기초한 후보 객체의 선정은 하기 도 20c 및 도 20d에서 상세히 설명한다.
도 20c는 상술한 도 20b의 단계(2003)의 방법을 상세히 설명하는 흐름도이다.
단계(2081)에서는 게임 서버는 가중치의 총합 이하의 값으로부터 임계 가중치를 무작위로 선택할 수 있다. 예를 들어, 0번 사물 객체에 할당된 가중치는 10, 1번 사물 객체에 할당된 가중치는 20, 2번 사물 객체에 할당된 가중치는 30인 경우, 가중치의 총합은 60으로 계산될 수 있다. 여기서, 게임 서버는 0부터 60까지의 값 중 하나를 임계 가중치로서 무작위로 선택할 수 있다. 이하, 본 명세서에서는 임계 가중치가 28로 선택된 경우를 가정할 수 있다.
그리고 단계(2082)에서 게임 서버는 특정 식별 정보(예를 들어, i, 여기서 i는 0이상의 정수)에 대응하는 가중치는 제1 참조가중치로 선택할 수 있다. 초기에는 현재 식별 정보인 i는 0으로 설정될 수 있다. 예를 들어, 게임 서버는 0번 사물 객체에 대응하는 가중치를 제1 참조가중치로 선택할 수 있다. 여기서, 0번 사물 객체의 가중치는 10이므로, 제1 참조가중치는 10이 될 수 있다.
이어서 단계(2083)에서 게임 서버는 임계 가중치에 제1 참조가중치를 비교할 수 있다. 예를 들어, 게임 서버는 임계 가중치가 제1 참조가중치보다 크거나 같은지 여부를 판단할 수 있다.
그리고 단계(2084)에서 게임 서버는 제1 참조가중치가 임계 가중치보다 작은 경우에 응답하여 다음 식별 정보(예를 들어, i+1)에 대응하는 가중치를 제1 참조 가중치에 누적할 수 있다. 예를 들어, 제1 참조가중치의 값 10은 임계 가중치의 값 28보다 작으므로, 게임 서버는 다음 식별 정보로서 1번 사물 객체의 가중치를 제1 참조 가중치에 누적할 수 있다. 여기서, 누적은 기존 제1 참조 가중치에 다음 식별 정보의 가중치를 가산하는 동작을 나타낼 수 있다. 예를 들어, 다음 식별 정보의 가중치가 누적된 제1 참조가중치는 30이 될 수 있다. 이후, 게임 서버는 단계(2083)으로 돌아가서, 다음 식별 정보인 i+1에서 누적된 제1 참조가중치를 임계 가중치와 비교할 수 있다. 현재 식별 정보의 인덱스가 1씩 증가될 수 있다.
이어서 단계(2085)에서 게임 서버는 제1 참조가중치가 임계 가중치보다 크거나 같은 경우에 응답하여 현재 식별 정도에 대응하는 사물 객체를 후보 객체로 선정할 수 있다. 예를 들어, 상술한 단계(2084)에서 1번 사물 객체에 대해 누적된 제1 참조가중치는 30이므로 임계 가중치 28보다 큰 바, 현재 식별 정보인 1번 사물 객체를 후보 객체로 선정할 수 있다.
도 20d는 상술한 도 20b의 단계(2003)의 다른 방법을 상세히 설명하는 흐름도이다.
단계(2091)에서는 게임 서버는 가중치의 총합 이하의 값으로부터 임계 가중치를 무작위로 선택할 수 있다. 구체적으로는 상술한 도 20c의 단계(2081)와 유사하게 동작할 수 있다. 다만, 이하에서는 임계 가중치가 32로 선택된 경우를 가정할 수 있다.
그리고 단계(2092)에서 게임 서버는 가중치의 총합을 제2 참조가중치로 선정할 수 있다. 예를 들어, 게임 서버는 0번 사물 객체 내지 2번 사물 객체의 가중치들의 총합인 60을 제2 참조가중치로 선정할 수 있다.
이어서 단계(2093)에서 게임 서버는 임계 가중치에 제2 참조가중치를 비교할 수 있다. 예를 들어, 게임 서버는 임계 가중치가 제2 참조가중치보다 작거나 같은지 여부를 판단할 수 있다.
그리고 단계(2094)에서 게임 서버는 제2 참조가중치가 임계 가중치보다 큰 경우에 응답하여 다음 식별 정보(예를 들어, i+1)에 대응하는 가중치를 제2 참조 가중치로부터 감산할 수 있다. 예를 들어, 제2 참조가중치의 값 60은 임계 가중치의 값 32보다 크므로, 게임 서버는 다음 식별 정보로서 1번 사물 객체의 가중치를 제2 참조 가중치에 감산할 수 있다. 예를 들어, 다음 식별 정보의 가중치가 감산된 제2 참조가중치는 30이 될 수 있다. 이후, 게임 서버는 단계(2093)으로 돌아가서, 다음 식별 정보인 i+1에서 감산된 제2 참조가중치를 임계 가중치와 비교할 수 있다. 현재 식별 정보의 인덱스가 1씩 증가될 수 있다.
이어서 단계(2095)에서 게임 서버는 제2 참조가중치가 임계 가중치보다 작거나 같은 경우에 응답하여 현재 식별 정도에 대응하는 사물 객체를 후보 객체로 선정할 수 있다. 예를 들어, 상술한 단계(2094)에서 1번 사물 객체에 대해 감산된 제2 참조가중치는 30이므로 임계 가중치 32보다 작은 바, 현재 식별 정보인 1번 사물 객체를 후보 객체로 선정할 수 있다.
도 21은 일 실시예에 따라 사용자들 간에 대화 메시지를 공유하는 예시를 도시한다.
도 21이 좌측은 제1 사용자 단말의 게임 화면(500), 우측은 제2 사용자 단말의 게임 화면(1600)을 도시할 수 있다. 제1 사용자 단말의 게임 화면(500)에서, 제1 채팅 인터페이스(2110)는 다른 제1 사용자의 대화 메시지를 표시함으로써, 제1 사용자로부터의 대화 메시지를 적어도 하나의 다른 제1 사용자와 공유할 수 있다. 이와 달리, 제2 사용자 단말의 제2 채팅 인터페이스(2120)에서는 제1 사용자 및 다른 제1 사용자의 대화 메시지가 노출되지 않을 수 있다.
상술한 바와 같이 같은 측의 사용자 간에만 대화 메시지가 공유됨으로써, 사용자들은 게임을 보다 전략적으로 협동하여 플레이할 수 있다. 일 실시예에 따르면 같은 측의 사용자끼리만 채팅이 가능하도록 채팅 서비스를 제공함으로써, 게임의 전략성이 강화될 수 있다. 또한, 같은 측의 사용자끼리 채팅이 가능하게 함으로써, 보안이 강화될 수 있다.
도 22는 일 실시예에 따라 제1 사용자에게 제공되는 화면의 예시를 도시한다.
이하, 도 22와 관련하여 제1 사용자 단말에서 부가적으로 제공되는 인터페이스들을 설명한다.
생존 보너스 인터페이스(2230)는 제1 사용자에 대응하는 제1 객체 또는 제2 객체(2210)의 생존 시간이 길어질 수록 획득되는 생존 보너스(예를 들어, 도 22에서는 별의 개수로 도시됨)를 표시할 수 있다.
변신 요약 인터페이스(2211)는 변신과 관련된 요약 정보를 제공할 수 있다. 예를 들어, 변신 요약 인터페이스(2211)는 제1 사용자에게, 자신이 제1 객체를 변경한 제2 객체(2210)가 무엇인지 용이하게 확인할 수 있도록, 제2 객체(2210)의 2D 이미지를 제공할 수 있다.
또한, 상황 인터페이스(2220)는 같은 측 제1 사용자들이 각각 어떤 제2 객체(2210)인 지 확인할 수 있도록, 제2 객체(2210)와 연관된 정보를 제공할 수 있다. 예를 들어, 상황 인터페이스(2220)는 시각적으로 또는 텍스트로 제1 사용자들의 각각의 제2 객체(2210)의 종류를 디스플레이할 수 있다. 도 22에서는 예를 들어, A 플레이어인 제1 사용자가 드럼통으로 변신한 것이 상황 인터페이스(2220)에 표시될 수 있다.
일 실시예에 따르면, 칭찬 인터페이스(2240)는 관전 모드의 다른 제1 사용자들이 해당 제1 사용자(예를 들어, 아직 생존 상태인 제1 사용자)에게 부여한 칭찬과 관련된 정보를 디스플레이할 수 있다. 예를 들어, 이미 사망한 다른 제1 사용자들은, 오래 생존하는 제1 사용자에게 칭찬을 부여함으로써, 게임 흥미도를 증진시킬 수 있다.
도 23 및 도 24는 일 실시예에 따른 가상 세계 내에서의 객체의 외형, 충돌 박스(collision box), 및 판정 박스의 변경을 도시한다.
도 23은 사람 속성의 객체의 외형, 충돌 박스, 및 판정 박스가 변경되는 예시를 도시한다.
객체의 외형은 가상 세계 내에서 폴리곤 및 텍스쳐 등의 리소스에 의해 표현될 수 있다. 예를 들어, 객체의 외형은 3차원적인 형태로 표현될 수 있다.
충돌 박스(2321)는 가상 세계 내에서 다른 객체와의 상호 작용이 발생하는 범위 또는 공간으로서, 객체는 충돌 박스(2321)의 경계가 다른 객체의 충돌 박스(2321)의 경계 또는 가상 세계의 경계에 도달 또는 중첩되지 않는 범위 안에서만 존재할 수 있다. 예를 들어, 충돌 박스(2321)의 경계가 다른 객체의 충돌 박스(2321)의 경계에 도달하면 해당 객체의 이동이 제한될 수 있다. 예를 들어, 충돌 박스(2321)는 크기(여기서, 크기는 3차원적인 부피) 및 범위를 가지는 3차원적인 공간일 수 있다. 예를 들어, 충돌 박스(2321)는 바운딩 박스(bounding box)의 형태로 구현될 수 있다.
판정 박스(2322)는 가상 세계 내에서 다른 객체로부터의 상태 변경 조작이 유효한 범위를 나타낼 수 있다. 예를 들어, 제2 사용자가 제1 사용자에 대응하는 객체를 공격하였을 때, 제2 사용자의 에임이 제1 사용자에 대응하는 객체의 판정 박스(2322) 내에 적중하였을 경우에만 상태 변경 조작이 유효할 수 있다. 예를 들어, 판정 박스(2322)는 크기 및 범위를 가지는 3차원적인 공간일 수 있다.
이하, 본 명세서에서 충돌 박스(2321) 및 판정 박스(2322)는 박스라고 표현되었으나, 박스의 형태를 직육면체로 한정하는 것은 아니고, 다면체, 구 등을 포함하는 모든 3차원 형태가 적용될 수 있다. 또한, 박스의 형태를 3차원으로 한정하는 것은 아니고, 다각형, 원, 및 타원 등을 포함하는 모든 2차원 형태가 적용될 수 있다.
일 실시예에 따르면, 변신하기 전의 사람 속성을 가지는 제1 객체(2310)의 충돌 박스(2321) 및 판정 박스(2322)는 객체의 외형과 동일한 크기 및 범위로 설정될 수 있다.
제1 객체(2310)가 제2 객체(2320)로 변경되면, 객체의 외형이 변경될 수 있다. 예를 들어, 사용자 단말은 현재 사람 속성에 대응하는 외형 리소스를 삭제하고, 변신할 사물 속성에 대응하는 외형 리소스를 해당 객체의 외형 리소스로서 설정할 수 있다.
일 실시예에 따르면, 제1 객체(2310)로부터 변경된 제2 객체(2320)의 충돌 박스(2321)는 외형의 크기 및 범위와 다르게 설정될 수 있다. 예를 들어, 도 23에서 제2 객체(2320)는 냉장고의 외형 리소스를 나타내는데, 제2 객체(2320)의 충돌 박스(2321)의 크기가 냉장고의 외형 리소스보다 작게 설정될 수 있다. 또한, 제1 객체(2310)로부터 변경된 제2 객체(2320)의 판정 박스(2322)는 외형의 크기 및 범위와 같게 설정될 수 있다.
일 실시예에 따르면, 사용자 단말은 상술한 충돌 박스(2321)의 공간(예를 들어, 크기 및 범위)을, 사용자로부터 이동 조작을 수신하는 동안에만 일시적으로 변경할 수 있다. 사용자 단말은 이동 조작의 수신이 종료되는 경우에 응답하여, 충돌 박스(2321)의 공간을 원래 공간(예를 들어, 변경 전 공간)으로 복구할 수 있다. 예를 들어, 사용자 단말은 이동 조작의 수신에 응답하여 객체에 대응하는 충돌 박스(2321)의 공간을 제1 충돌공간으로부터 제2 충돌공간으로 변경하고, 이동 조작의 수신 종료에 응답하여 충돌 박스(2321)의 공간을 제2 충돌공간으로부터 제1 충돌공간으로 변경할 수 있다.
다만, 제2 객체(2320)의 충돌 박스(2321) 및 판정 박스(2322)의 크기 및 범위를 상술한 바로 한정하는 것은 아니고, 설계에 따라 변경될 수 있다. 필요에 따라 충돌 박스(2321) 및 판정 박스(2322)의 모양도 외형 리소스의 형태와 동일하거나 다르게 설정될 수 있다.
도 24는 임의의 가상 공간에서 제2 객체의 외형 및 충돌 박스의 예시를 도시한다.
도 24에 도시된 가상 공간(2400)은 벽 및 문(2409)을 포함할 수 있다. 여기서, 제2 객체의 외형(2410)은 해당 가상 공간(2400)에 포함된 문(2409)의 크기보다 클 수 있다. 만약, 제2 객체의 충돌 박스(2411)를 외형(2410)과 동일하게 설정하게 될 경우, 제2 객체는 문(2409)을 통과하지 못할 수 있다. 도 24에서 외형(2410) 및 충돌 박스(2411)는 원통으로 도시되었으나, 이로 한정하는 것은 아니고, 다른 2차원 공간 및 3차원 공간 등으로 설정될 수 있다.
일 실시예에 따르면, 사용자 단말은 제2 객체의 충돌 박스(2411)를 가상 공간(2400)의 문(2409)을 통과할 수 있을 정도의 크기 및 범위로 설정할 수 있다. 이를 통해 제1 사용자는 문(2409)보다 큰 크기의 제2 객체로 변신하더라도, 가상 공간(2400)을 자유롭게 이동할 수 있다.
일 실시예에 따르면, 사용자 단말은 사용자로부터 이동 조작을 수신하는 경우에 응답하여 제2 객체의 충돌 박스(2411)의 공간을 제1 충돌공간으로부터 제2 충돌공간으로 변경할 수 있다. 이후, 이동 조작이 연속적으로 수신되면 사용자 단말은 제2 객체의 충돌 박스(2411)의 공간을 제2 충돌공간으로 유지할 수 있다. 사용자 단말은 사용자로부터 이동 조작이 수신되지 않는 경우(예를 들어, 이동 조작의 수신이 종료되는 경우)에 응답하여 상술한 충돌 박스(2411)의 공간을 제2 충돌공간으로부터 제1 충돌공간으로 변경할 수 있다. 예를 들어, 제1 충돌공간은 가상 세계 내에서 객체의 외형과 동일한 크기 및 범위를 가지는 공간을 나타낼 수 있고, 제2 충돌공간은 객체보다 작은 크기 및 범위를 가지는 공간을 나타낼 수 있다.
예를 들어, 도 24에서는 사용자로부터 이동 조작이 수신되는 동안의 충돌 박스(2411)를 도시한 것으로서, 사용자가 제2 객체를 조작하여 문(2409)을 통과하기 위해 이동 조작을 입력하는 동안에는, 사용자 단말이 충돌 박스(2411)의 공간을 객체보다 작은 크기(예를 들어, 문을 통과할 수 있는 크기)를 가지는 제2 충돌공간으로 변경할 수 있다. 사용자가 조작하는 제2 객체가 문(2409)을 통과한 이후 사용자가 이동 조작의 입력을 중지하면, 사용자 단말은 충돌 박스(2411)의 공간을 제2 충돌공간으로부터 제1 충돌공간으로 변경할 수 있다. 상술한 바와 같이 객체의 이동 중에만 충돌 박스의 크기를 줄임으로써, 가상 세계 내에서 객체의 이동을 제한하지 않으면서도 객체의 충돌 박스와 외형 간의 위화감을 최소화할 수 있다. 또한, 정지 시에는 충돌 박스의 충돌공간을 객체의 외형과 동일 또는 유사하게 설정함으로써, 공격 없이 충돌을 시도하는 행위만으로 제2 사용자가 가상 세계 내의 배경 객체가 아닌 제1 사용자가 제어하는 제2 객체임을 간파하는 어뷰징을 방지할 수 있다.
상술한 도 1 내지 도 24에서 방법의 각 단계의 수행 주체 및 수행 순서는 예시적인 것으로서, 수행 주체는 게임 서버, 제1 사용자 단말, 제2 사용자 단말 및 또 다른 사용자 단말 중 적어도 하나가 될 수 있고, 수행 순서는 설계에 따라 변경될 수 있고, 각 도면에 도시된 단계는 설계에 따라 조합되어 수행될 수 있다. 또한, 상술한 도 1 내지 도 24에서 제1 사용자에 대응하는 객체를 주로 제1 객체로서 설명되었으나, 이로 한정하는 것은 아니고 제2 객체에 대해서도 적용될 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 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), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100: 객체를 제어하는 시스템
110: 제1 사용자 단말
120: 제2 사용자 단말
130: 서버

Claims (20)

  1. 처리부에 의해 수행되는 객체를 제어하는 방법에 있어서,
    가상 세계 내에 제1 사용자에 대응하는 제1 객체가 표시되도록 제어하는 단계;
    상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하는 단계;
    적어도 하나의 후보 객체를 무작위로 선정하는 단계; 및
    상기 적어도 하나의 후보 객체 중 제2 객체를 상기 제1 사용자가 선택한 경우, 상기 제1 객체를 상기 제2 객체로 변경하는 단계
    를 포함하고,
    상기 적어도 하나의 후보 객체를 무작위로 선정하는 단계는,
    상기 가상 세계 내에 배치되는 사물 객체로부터 적어도 하나의 사물 객체를 선정하는 단계; 및
    상기 선정된 적어도 하나의 사물 객체로부터 상기 후보 객체를 결정하는 단계
    를 포함하고,
    상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하는 단계는,
    상기 제1 사용자로부터 관전 모드로 진입하라는 관전 모드 진입 조작(observing mode enter control)을 입력 받는 단계;
    상기 관전 모드 진입 조작에 응답하여, 상기 제1 사용자에게 관전 모드로 상기 가상 세계를 제공하는 단계; 및
    상기 이동 조작에 응답하여, 상기 관전 모드의 상기 제1 사용자에게 제공되는 화면의 시점이 이동되도록 제어하는 단계
    를 포함하는 객체를 제어하는 방법.
  2. 제1항에 있어서,
    상기 적어도 하나의 후보 객체를 무작위로 선정하는 단계는,
    미리 정해진 사물 객체 목록 중 적어도 하나의 사물 객체를 선정하는 단계;
    를 더 포함하는 객체를 제어하는 방법.
  3. 제1항에 있어서,
    상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하는 단계는,
    상기 이동 조작 중 상기 제1 사용자로부터 프리징 조작을 입력 받는 단계;
    상기 프리징 조작에 응답하여 상기 가상 세계 내 상기 제1 객체의 위치를 상기 프리징 조작이 입력된 때의 위치로 고정시키는 단계; 및
    상기 제1 사용자로부터 프리징 해제 조작이 입력될 때까지 상기 제1 객체에 대한 물리 엔진의 처리를 디스에이블하는 단계
    를 포함하는 객체를 제어하는 방법.
  4. 제1항에 있어서,
    상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하는 단계는
    상기 제1 사용자에게 할당된 카메라 객체를 복제하는 단계;
    상기 이동 조작이 상기 복제된 카메라 객체로 할당되도록 설정하는 단계; 및
    관전 모드 종료 조작의 수신에 응답하여, 상기 이동 조작이 원본 카메라 객체로 할당되도록 설정하고 상기 복제된 카메라 객체는 삭제하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  5. 제1항에 있어서,
    상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하는 단계는,
    상기 제1 사용자에 대응하는 원본 객체를 복제하고 상기 복제된 객체의 위치를 고정하는 단계;
    상기 원본 객체와 연관된 원본 카메라 객체를 자유 시점으로 변경하는 단계; 및
    관전 모드 종료 조작의 수신에 응답하여, 상기 원본 객체를 상기 복제된 객체의 위치로 복원하고, 상기 복제된 객체의 상태 변경을 상기 원본 객체에 반영하는 단계
    를 포함하는 객체를 제어하는 방법.
  6. 제1항에 있어서,
    상기 적어도 하나의 후보 객체 중 제2 객체를 상기 제1 사용자가 선택한 경우, 상기 제1 객체를 상기 제2 객체로 변경하는 단계는,
    상기 제1 객체가 상기 제2 객체로 변경된 경우에 응답하여, 상기 제2 객체의 판정 박스를 상기 제2 객체의 외형과 동일하도록 설정하는 단계;
    상기 제2 객체의 충돌 박스의 공간을 제1 충돌공간으로부터 제2 충돌공간으로 변경하는 단계
    를 포함하는 객체를 제어하는 방법.
  7. 제1항에 있어서,
    제2 사용자로부터, 상기 제1 사용자에 대응하는 상기 제1 객체 또는 상기 제2 객체에 대한 상태 변경 조작을 수신하는 단계;
    상기 상태 변경 조작에 따라, 상기 제2 사용자에 대응하는 제3 객체의 제2 상태 정보를 변경하는 단계;
    상기 상태 변경 조작의 유효성을 검증하는 단계; 및
    상기 상태 변경 조작이 유효한 경우에 응답하여, 상기 제1 사용자에 대응하는 상기 제1 객체 또는 상기 제2 객체의 제1 상태 정보를 변경하는 단계
    를 포함하는 객체를 제어하는 방법.
  8. 제7항에 있어서,
    상기 상태 변경 조작의 유효성을 검증하는 단계는,
    상기 제2 사용자의 에임이 상기 제1 사용자에 대응하는 상기 제1 객체 또는 상기 제2 객체의 판정 박스의 범위 내에 위치하는 동안 상기 상태 변경 조작이 수신된 경우에 응답하여, 상기 상태 변경 조작이 유효한 것으로 판단하는 단계
    를 포함하는 객체를 제어하는 방법.
  9. 제1항에 있어서,
    제3 사용자에게 관전 모드로 상기 가상 세계를 제공하는 경우, 상기 제2 객체의 외곽선에 강조 표시를 하여 상기 관전 모드에서 상기 제3 사용자에게 제공하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  10. 제1항에 있어서,
    상기 제1 사용자의 변신 조작에 응답하여 모든 후보 객체를 동일한 형태의 객체로 선정하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  11. 제1항에 있어서,
    게임 시작 후 일정 시간 암전된 화면을 제2 사용자에게 제공하는 단계
    를 더 포함하는 객체를 제어하는 방법.
  12. 제1항 내지 제11항 중 어느 한 항의 방법을 수행하도록 명령어들을 포함하는 하나 이상의 프로그램을 저장한 컴퓨터 판독 가능 저장매체.
  13. 객체를 제어하는 장치에 있어서,
    제1 사용자 단말 및 제2 사용자 단말과 통신하는 통신부; 및
    처리부를 포함하고,
    상기 처리부는,
    가상 세계 내에 제1 사용자에 대응하는 제1 객체가 표시되도록 제어하고, 상기 제1 사용자의 이동 조작에 응답하여, 상기 가상 세계 내에서 상기 제1 객체의 위치가 이동되도록 제어하며, 상기 가상 세계 내에 배치되는 사물 객체로부터 적어도 하나의 사물 객체를 선정하고, 상기 선정된 적어도 하나의 사물 객체로부터 후보 객체를 결정하며, 상기 결정된 후보 객체 중 제2 객체를 상기 제1 사용자가 선택한 경우 상기 제1 객체를 상기 제2 객체로 변경하며,
    상기 제1 사용자로부터 관전 모드로 진입하라는 관전 모드 진입 조작(observing mode enter control)을 입력 받은 경우에 응답하여, 상기 제1 사용자에게 관전 모드로 상기 가상 세계를 제공하고, 상기 이동 조작에 응답하여, 상기 관전 모드의 상기 제1 사용자에게 제공되는 화면의 시점이 이동되도록 제어하는,
    객체를 제어하는 장치.
  14. 제13항에 있어서,
    상기 처리부는,
    상기 이동 조작 중 상기 제1 사용자로부터 프리징 조작을 입력 받고,
    상기 프리징 조작에 응답하여 상기 가상 세계 내 상기 제1 객체의 위치를 상기 프리징 조작이 입력된 때의 위치로 고정시키며,
    상기 제1 사용자로부터 프리징 해제 조작이 입력될 때까지 상기 제1 객체에 대한 물리 엔진의 처리를 디스에이블하는,
    객체를 제어하는 장치.
  15. 삭제
  16. 제13항에 있어서,
    상기 처리부는,
    제3 사용자에게 관전 모드로 상기 가상 세계를 제공하는 경우, 상기 제2 객체의 외곽선에 강조 표시를 하여 상기 관전 모드에서 상기 제3 사용자에게 제공하는,
    객체를 제어하는 장치.
  17. 제13항에 있어서,
    상기 처리부는,
    미리 정한 변신 제한 시간을 경과한 경우에 응답하여, 적어도 하나의 후보 객체를 무작위로 선정하며,
    상기 미리 정한 변신 제한 시간을 경과하지 않은 경우에 응답하여, 상기 제1 객체를 유지하는,
    객체를 제어하는 장치.
  18. 제13항에 있어서,
    상기 처리부는,
    제2 사용자로부터, 상기 제1 사용자에 대응하는 상기 제1 객체 또는 상기 제2 객체에 대한 상태 변경 조작을 수신하고,
    상기 수신된 상태 변경 조작에 따라 상기 제2 사용자에 대응하는 제3 객체의 제2 상태 정보를 변경하며,
    상기 상태 변경 조작이 유효한 경우에 응답하여, 상기 제1 사용자에 대응하는 상기 제1 객체 또는 상기 제2 객체의 제1 상태 정보를 변경하는,
    객체를 제어하는 장치.
  19. 제18항에 있어서,
    상기 처리부는,
    미리 정한 시간 구간(time interval) 동안, 상기 제2 사용자에 대응하는 상기 제3 객체의 상기 가상 세계 내에서의 이동 속도를 증가시키는,
    객체를 제어하는 장치.
  20. 제13항에 있어서,
    상기 처리부는,
    상기 제1 사용자로부터의 대화 메시지를 적어도 하나의 다른 제1 사용자와 공유하고,
    상기 제2 사용자 단말로는 상기 제1 사용자로부터의 대화 메시지가 노출되지 않도록 제어하는,
    객체를 제어하는 장치.
KR1020160119924A 2014-12-22 2016-09-20 객체를 제어하는 방법 및 장치 KR102292931B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020140186485 2014-12-22
KR20140186485 2014-12-22
KR1020160023024A KR101660247B1 (ko) 2014-12-22 2016-02-26 객체를 제어하는 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020160023024A Division KR101660247B1 (ko) 2014-12-22 2016-02-26 객체를 제어하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160113086A KR20160113086A (ko) 2016-09-28
KR102292931B1 true KR102292931B1 (ko) 2021-08-24

Family

ID=55652330

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020150021116A KR101608172B1 (ko) 2014-12-22 2015-02-11 객체를 제어하는 방법 및 장치
KR1020160023024A KR101660247B1 (ko) 2014-12-22 2016-02-26 객체를 제어하는 방법 및 장치
KR1020160119924A KR102292931B1 (ko) 2014-12-22 2016-09-20 객체를 제어하는 방법 및 장치

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020150021116A KR101608172B1 (ko) 2014-12-22 2015-02-11 객체를 제어하는 방법 및 장치
KR1020160023024A KR101660247B1 (ko) 2014-12-22 2016-02-26 객체를 제어하는 방법 및 장치

Country Status (3)

Country Link
US (2) US10315112B2 (ko)
JP (1) JP6564582B2 (ko)
KR (3) KR101608172B1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5785339B1 (ja) * 2013-10-25 2015-09-30 楽天株式会社 情報処理システム、情報処理システムの制御方法、情報処理装置、情報処理装置の制御方法、プログラム、及び情報記憶媒体
CN106503477B (zh) * 2016-11-24 2018-09-07 腾讯科技(深圳)有限公司 虚拟对象的控制方法及相关装置
CN106861192B (zh) * 2017-01-24 2020-06-30 腾讯科技(深圳)有限公司 事件执行方法和装置
US10740804B2 (en) 2017-07-28 2020-08-11 Magical Technologies, Llc Systems, methods and apparatuses of seamless integration of augmented, alternate, virtual, and/or mixed realities with physical realities for enhancement of web, mobile and/or other digital experiences
US11249714B2 (en) 2017-09-13 2022-02-15 Magical Technologies, Llc Systems and methods of shareable virtual objects and virtual objects as message objects to facilitate communications sessions in an augmented reality environment
WO2019079826A1 (en) 2017-10-22 2019-04-25 Magical Technologies, Llc DIGITAL ASSISTANT SYSTEMS, METHODS AND APPARATUSES IN AN INCREASED REALITY ENVIRONMENT AND LOCAL DETERMINATION OF VIRTUAL OBJECT PLACEMENT AND SINGLE OR MULTIDIRECTIONAL OBJECTIVES AS GATEWAYS BETWEEN A PHYSICAL WORLD AND A DIGITAL WORLD COMPONENT OF THE SAME ENVIRONMENT OF INCREASED REALITY
US10616033B2 (en) * 2017-11-06 2020-04-07 Honda Motor Co., Ltd. Different perspectives from a common virtual environment
US10904374B2 (en) 2018-01-24 2021-01-26 Magical Technologies, Llc Systems, methods and apparatuses to facilitate gradual or instantaneous adjustment in levels of perceptibility of virtual objects or reality object in a digital scene
US11398088B2 (en) 2018-01-30 2022-07-26 Magical Technologies, Llc Systems, methods and apparatuses to generate a fingerprint of a physical location for placement of virtual objects
KR101982342B1 (ko) * 2018-02-21 2019-05-24 (주)원더피플 보급 상자를 이용하는 배틀 로얄 게임을 제공하는 방법 및 그를 이용한 서버
JP2019185363A (ja) * 2018-04-09 2019-10-24 Necパーソナルコンピュータ株式会社 表示制御装置、表示制御方法、及びプログラム
US11077365B2 (en) 2018-06-27 2021-08-03 Niantic, Inc. Low latency datagram-responsive computer network protocol
CN109395385B (zh) 2018-09-13 2021-05-25 深圳市腾讯信息技术有限公司 虚拟场景的配置方法和装置、存储介质、电子装置
US11420116B2 (en) 2019-02-25 2022-08-23 Niantic, Inc. Augmented reality mobile edge computing
US11467656B2 (en) 2019-03-04 2022-10-11 Magical Technologies, Llc Virtual object control of a physical device and/or physical device control of a virtual object
JP6595737B1 (ja) * 2019-04-12 2019-10-23 株式会社Cygames 情報処理システムおよび情報処理方法
GB2586059B (en) * 2019-08-01 2023-06-07 Sony Interactive Entertainment Inc System and method for generating user inputs for a video game
US11489763B2 (en) 2019-12-20 2022-11-01 Niantic, Inc. Data hierarchy protocol for data transmission pathway selection
CN111290695B (zh) * 2020-01-21 2021-12-14 维达力实业(深圳)有限公司 基于优先级控制的终端控制方法、装置和终端
CN112121410B (zh) * 2020-10-22 2024-04-12 深圳市瑞立视多媒体科技有限公司 一种基于vr游戏的装备入柜的方法
CN113827986B (zh) * 2021-09-24 2024-08-13 网易(杭州)网络有限公司 角色阵亡后的游戏观战方法及装置、电子设备、存储介质
US20230141621A1 (en) * 2021-11-09 2023-05-11 Wonder People Co., Ltd. Method for providing battle royale game which allows players to search for sub items used for upgrading or repairing main items and game server using the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001046737A (ja) * 1999-08-06 2001-02-20 Koto:Kk キャラクタの画像を変更するキャラクタ変身プログラムを含むゲームプログラムデータを記録した記録媒体、キャラクタの画像を変更するキャラクタ変身プログラムを含むゲームプログラムデータを記録した記憶素子を内蔵したカートリッジ及びキャラクタの画像を変更するキャラクタ変身プログラムを含むゲームプログラムデータを記録した記憶素子を内蔵したゲーム機

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09164271A (ja) * 1995-12-14 1997-06-24 Fujitsu Ltd ネットワークゲームシステム
WO1997046970A1 (fr) 1996-06-05 1997-12-11 Sega Enterprises, Ltd. Processeur d'image, procede de traitement d'images, jeu electronique et support d'enregistrement
US6476830B1 (en) * 1996-08-02 2002-11-05 Fujitsu Software Corporation Virtual objects for building a community in a virtual world
US5802296A (en) * 1996-08-02 1998-09-01 Fujitsu Software Corporation Supervisory powers that provide additional control over images on computers system displays to users interactings via computer systems
AUPP734198A0 (en) * 1998-11-26 1998-12-24 Aristocrat Leisure Industries Pty Ltd Player information delivery
EP1136106A3 (en) * 2000-03-21 2001-12-05 Sony Computer Entertainment Inc. Entertainment apparatus, storage medium, and method of displaying an object
JP2001340637A (ja) * 2000-06-02 2001-12-11 Enix Corp 携帯型ビデオゲーム表示装置およびプログラムを格納した記録媒体
JP3559024B2 (ja) 2002-04-04 2004-08-25 マイクロソフト コーポレイション ゲームプログラムおよびゲーム装置
JP2007068824A (ja) 2005-09-08 2007-03-22 Konami Digital Entertainment:Kk ゲームプログラム、ゲーム装置及びゲーム方法
US7794315B2 (en) * 2005-09-09 2010-09-14 Microsoft Corporation Role play system
JP3839459B1 (ja) * 2005-11-02 2006-11-01 任天堂株式会社 通信ゲームシステム
JP4137140B2 (ja) * 2006-05-01 2008-08-20 株式会社スクウェア・エニックス ビデオゲーム処理装置、およびビデオゲーム処理プログラム
KR20080111756A (ko) * 2007-06-19 2008-12-24 (주)솔메이즈 기억력 향상 미로 게임
JP5408948B2 (ja) * 2008-10-01 2014-02-05 株式会社バンダイナムコゲームス プログラム及びゲームシステム
JP5433230B2 (ja) 2008-12-26 2014-03-05 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US8469819B2 (en) * 2009-06-04 2013-06-25 Michael Parker McMain Game apparatus and game control method for controlling and representing magical ability and power of a player character in an action power control program
US8280966B2 (en) * 2009-10-22 2012-10-02 Sap Ag System and method of controlling access to information in a virtual computing environment
US8864589B2 (en) * 2009-10-27 2014-10-21 Activision Publishing, Inc. Video game with representative physical object related content
US8850342B2 (en) * 2009-12-02 2014-09-30 International Business Machines Corporation Splitting avatars in a virtual world
KR101182034B1 (ko) * 2010-05-14 2012-09-11 허창환 게임 캐릭터의 이미지를 변경하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
US8366554B1 (en) 2011-09-21 2013-02-05 Ryan Luencheen Yuan Customizable, adaptable, multiuser computer-based role-playing method and apparatus therefor
CN103135755B (zh) 2011-12-02 2016-04-06 深圳泰山在线科技有限公司 交互系统及方法
JP5551724B2 (ja) 2012-02-03 2014-07-16 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲームシステム、ゲーム装置の制御方法、及びプログラム
CN102609985A (zh) 2012-02-29 2012-07-25 北京恒泰实达科技发展有限公司 三维电站图形平台
US8622802B2 (en) * 2012-03-15 2014-01-07 Universal Entertainment Corporation Gaming machine and gaming method
JP5260765B1 (ja) * 2012-03-30 2013-08-14 株式会社コナミデジタルエンタテインメント ゲーム管理装置、ゲームシステム、ゲーム管理方法及びプログラム
US9844729B2 (en) 2012-12-26 2017-12-19 Sony Interactive Entertainment America Llc Systems and methods for managing video game titles and user play metrics for video game titles executing on a game cloud system
JP5781116B2 (ja) * 2013-03-27 2015-09-16 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理システム、及びプログラム
EP2988495A4 (en) 2013-06-28 2016-05-11 Huawei Tech Co Ltd DATA PRESENTATION METHOD, DEVICE AND SYSTEM
CN103838982B (zh) 2014-03-27 2017-05-03 广州爱九游信息技术有限公司 一种虚拟游戏对象生成方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001046737A (ja) * 1999-08-06 2001-02-20 Koto:Kk キャラクタの画像を変更するキャラクタ変身プログラムを含むゲームプログラムデータを記録した記録媒体、キャラクタの画像を変更するキャラクタ変身プログラムを含むゲームプログラムデータを記録した記憶素子を内蔵したカートリッジ及びキャラクタの画像を変更するキャラクタ変身プログラムを含むゲームプログラムデータを記録した記憶素子を内蔵したゲーム機

Also Published As

Publication number Publication date
KR20160113086A (ko) 2016-09-28
US20160175715A1 (en) 2016-06-23
KR101660247B1 (ko) 2016-09-27
KR20160076537A (ko) 2016-06-30
US10994206B2 (en) 2021-05-04
JP2016116826A (ja) 2016-06-30
KR101608172B1 (ko) 2016-03-31
JP6564582B2 (ja) 2019-08-21
US20190240578A1 (en) 2019-08-08
US10315112B2 (en) 2019-06-11

Similar Documents

Publication Publication Date Title
KR102292931B1 (ko) 객체를 제어하는 방법 및 장치
KR102258278B1 (ko) 시즌별 보상 분배 시스템
US20180280799A1 (en) Game system
US11154785B2 (en) Game system and method of providing information related to match-up game
US11478717B2 (en) Game system and method of providing information related to match-up game
US20200206638A1 (en) Game system, method of providing information related to match-up game, and method of executing match-up game
JP7536955B2 (ja) ゲームシステム、プログラム及びゲーム提供方法
KR101404635B1 (ko) 온라인 게임에서의 드래그 입력 처리 방법
KR20150083488A (ko) 온라인 게임 제공 방법 및 그 게임 제공 서버
CN106139590B (zh) 控制对象的方法和装置
JP2017055999A (ja) ゲーム装置及びプログラム
JP2019177059A (ja) ゲームシステム及びプログラム
TWI598142B (zh) 控制對象之方法及其裝置
JP7131905B2 (ja) 情報処理方法、サーバ装置、プログラム、及び情報端末
KR101226765B1 (ko) 온라인 슈팅 게임 제공 방법 및 그 시스템
US9795881B2 (en) Controlling groups of game entities in a video game in a collective, coordinated, and/or collaborative manner using a group entity
WO2023231557A1 (zh) 虚拟对象的互动方法、装置、设备、存储介质及程序产品
US9480922B1 (en) System and method for facilitating use of temporary defensive structures in a tower defense game
KR101492248B1 (ko) 온라인 게임에 출현하는 객체를 타겟팅하는 방법 및 장치.
JP6908866B1 (ja) 情報処理装置、情報処理方法及びプログラム
JP7150597B2 (ja) ゲームシステム及びプログラム
JP7341697B2 (ja) プログラム、情報処理装置、ゲームシステム及びゲーム提供方法
JP7291517B2 (ja) ゲームシステム、ゲーム提供方法及びプログラム
JP6989363B2 (ja) プログラム、サーバ装置、及びゲームシステム
KR102553856B1 (ko) 통제 정보 제공 장치 및 방법, 통제 정보 표시 장치 및 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant