KR102199526B1 - 게임 내의 컨텐츠 제공 방법 및 장치 - Google Patents

게임 내의 컨텐츠 제공 방법 및 장치 Download PDF

Info

Publication number
KR102199526B1
KR102199526B1 KR1020190063659A KR20190063659A KR102199526B1 KR 102199526 B1 KR102199526 B1 KR 102199526B1 KR 1020190063659 A KR1020190063659 A KR 1020190063659A KR 20190063659 A KR20190063659 A KR 20190063659A KR 102199526 B1 KR102199526 B1 KR 102199526B1
Authority
KR
South Korea
Prior art keywords
target
content
determining
data
target data
Prior art date
Application number
KR1020190063659A
Other languages
English (en)
Other versions
KR20200137381A (ko
Inventor
전선영
진석호
황영태
Original Assignee
넷마블 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 넷마블 주식회사 filed Critical 넷마블 주식회사
Priority to KR1020190063659A priority Critical patent/KR102199526B1/ko
Publication of KR20200137381A publication Critical patent/KR20200137381A/ko
Application granted granted Critical
Publication of KR102199526B1 publication Critical patent/KR102199526B1/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/85Providing additional services to players
    • 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/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/69Generating 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 by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
    • 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/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

컨텐츠를 제공하기 위해, 컨텐츠의 진행 중에 작전 타임을 위한 조건이 만족되었는지 여부를 결정하고, 조건이 만족된 경우 컨텐츠의 진행을 중단함으로써 복수의 사용자들에게 작전 타임을 제공하며, 복수의 사용자들에게 작전 타임을 위한 적어도 하나의 기능을 제공하고, 작전 타임이 종료된 경우 컨텐츠의 진행을 재개한다.

Description

게임 내의 컨텐츠 제공 방법 및 장치{METHOD AND APPARATUS PROVIDING CONTENT IN A GAME}
아래의 실시예들은 게임을 이용하는 사용자에게 컨텐츠를 제공하는 기술에 관한 것이다.
사용자가 게임을 플레이하는 경우, 게임 내에서 제공되는 다양한 컨텐츠들을 이용할 수 있다. 예를 들어, 대전 게임과 같은 경우 다양한 레벨의 NPC(non-player character)들을 상대할 수 있다. 일반적으로, 게임의 진행도가 증가할수록 상대적으로 강한 NPC가 등장하기 때문에, 주어진 조건을 만족하지 못하면 계속적으로 게임 진행을 하기 어려워진다. 이러한 게임 특징에 의해 사용자는 게임 또는 특정 컨텐츠에 대해 스트레스를 받을 수 있고, 이는 게임 플레이의 중단으로 이어질 수 있다.
일 실시예는 컨텐츠에 대해 사용자가 받는 스트레스의 레벨을 결정하고, 스트레스의 레벨에 기초하여 컨텐츠를 제공하는 방법 및 장치를 제공할 수 있다.
일 측면에 따른, 서버에 의해 수행되는, 게임 내의 컨텐츠를 제공하는 방법은, 상기 게임을 이용하는 사용자 계정의 복수의 로그들을 획득하는 단계, 상기 복수의 로그들에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 결정하는 단계, 상기 복수의 컨텐츠들 중 제1 타겟 컨텐츠에 대한 제1 타겟 스트레스 레벨이 미리 설정된 레벨 이상인 경우, 미리 설정된 상기 제1 타겟 컨텐츠의 제1 초기 수행 횟수를 제1 타겟 수행 횟수로 조정하는 단계, 및 상기 사용자가 상기 제1 타겟 컨텐츠를 상기 제1 타겟 수행 횟수로 수행한 경우, 미리 설정된 제1 타겟 보상을 상기 사용자 계정에게 제공하는 단계를 포함한다.
상기 제1 타겟 컨텐츠의 상기 제1 초기 수행 횟수가 상기 제1 타겟 수행 횟수로 조정된 경우에도, 상기 제1 타겟 보상은 동일할 수 있다.
상기 컨텐츠 제공 방법은, 상기 사용자가 상기 복수의 컨텐츠들 각각에 대해 설정된 타겟 수행 횟수를 모두 수행한 경우, 상기 사용자 계정에게 미리 설정된 최종 보상을 제공하는 단계를 더 포함할 수 있다.
상기 컨텐츠 제공 방법은, 상기 복수의 컨텐츠들 중 제2 타겟 컨텐츠에 대한 제2 타겟 스트레스 레벨이 미리 설정된 레벨 미만이고, 상기 제1 초기 수행 횟수가 상기 제1 타겟 수행 횟수로 조정된 경우, 미리 설정된 상기 제2 타겟 컨텐츠의 제2 초기 수행 횟수를 제2 타겟 수행 횟수로 조정하는 단계, 및 상기 사용자가 상기 제2 타겟 컨텐츠를 상기 제2 타겟 수행 횟수로 수행한 경우, 상기 사용자 계정에게 제2 타겟 보상을 제공하는 단계를 더 포함할 수 있다.
상기 복수의 컨텐츠들 중 상기 제1 타겟 컨텐츠의 상기 제1 초기 수행 횟수 및 상기 제2 타겟 컨텐츠의 상기 제2 초기 수행 횟수가 조정된 경우에도, 상기 복수의 컨텐츠들의 전체 수행 횟수의 합은 동일할 수 있다.
상기 제1 타겟 컨텐츠의 제1 유형 및 상기 제2 타겟 컨텐츠의 제2 유형은 서로 상이하고, 상기 제1 타겟 수행 횟수가 상기 제1 초기 수행 횟수에 비해 감소되는 경우, 상기 제2 타겟 수행 횟수는 상기 제2 초기 수행 횟수에 비해 증가할 수 있다.
상기 제1 타겟 수행 횟수 및 상기 제2 타겟 수행 횟수는 알고리즘을 이용하여 상기 사용자에 대한 전체 스트레스 레벨이 최소화되도록 조정될 수 있다.
상기 알고리즘은 강화 학습(reinforcement learning)을 통해 훈련될 수 있다.
상기 로그에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 계산하는 단계는, 로그에 대해 미리 설정된 복수의 인덱스들 중 스트레스 상황이 발생하였는지를 결정하기 위한 적어도 하나의 타겟 인덱스를 결정하는 단계, 상기 타겟 인덱스에 기초하여 상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 타겟 데이터들을 결정하는 단계, 및 상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들을 결정하는 단계는, 상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 후보 타겟 데이터들을 결정하는 단계, 및 상기 복수의 후보 타겟 데이터들 중 미리 설정된 시간에 대응하는 상기 복수의 타겟 데이터들을 결정하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는, 상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들의 대표 값을 계산하는 단계, 및 상기 대표 값에 기초하여 상기 스트레스 레벨을 계산하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는, 상기 복수의 타겟 데이터들 각각이 정상 데이터일 확률을 계산하는 단계, 및 계산된 복수의 확률들에 기초하여 상기 스트레스 레벨을 결정하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는, 상기 복수의 타겟 데이터들의 시 계열적 패턴 및 미리 저장된 참조 패턴 간의 유사도를 계산하는 단계, 및 상기 유사도에 대응하는 상기 스트레스 레벨을 결정하는 단계를 포함할 수 있다.
상기 타겟 인덱스는, 게임 플레이 데이터 인덱스, 음성 데이터 인덱스, 자세 데이터 인덱스 중 적어도 하나를 포함할 수 있다.
다른 일 측면에 따른, 게임 내의 복수의 컨텐츠들을 제공하는 서버는, 복수의 컨텐츠들을 사용자에게 제공하는 프로그램이 기록된 메모리, 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 상기 게임을 이용하는 사용자 계정의 복수의 로그들을 획득하는 단계, 상기 복수의 로그들에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 결정하는 단계, 상기 복수의 컨텐츠들 중 제1 타겟 컨텐츠에 대한 제1 타겟 스트레스 레벨이 미리 설정된 레벨 이상인 경우, 미리 설정된 상기 제1 타겟 컨텐츠의 제1 초기 수행 횟수를 제1 타겟 수행 횟수로 조정하는 단계, 및 상기 사용자가 상기 제1 타겟 컨텐츠를 상기 제1 타겟 수행 횟수로 수행한 경우, 미리 설정된 제1 타겟 보상을 상기 사용자 계정에게 제공하는 단계를 수행한다.
상기 프로그램은, 상기 사용자가 상기 복수의 컨텐츠들 각각에 대해 설정된 타겟 수행 횟수를 모두 수행한 경우, 상기 사용자 계정에게 미리 설정된 최종 보상을 제공하는 단계를 더 수행할 수 있다.
상기 프로그램은, 상기 복수의 컨텐츠들 중 제2 타겟 컨텐츠에 대한 제2 타겟 스트레스 레벨이 미리 설정된 레벨 미만이고, 상기 제1 초기 수행 횟수가 상기 제1 타겟 수행 횟수로 조정된 경우, 미리 설정된 상기 제2 타겟 컨텐츠의 제2 초기 수행 횟수를 제2 타겟 수행 횟수로 조정하는 단계, 및 상기 사용자가 상기 제2 타겟 컨텐츠를 상기 제2 타겟 수행 횟수로 수행한 경우, 상기 사용자 계정에게 제2 타겟 보상을 제공하는 단계를 더 수행할 수 있다.
상기 제1 타겟 수행 횟수 및 상기 제2 타겟 수행 횟수는 알고리즘을 이용하여 상기 사용자에 대한 전체 스트레스 레벨이 최소화되도록 조정될 수 있다.
상기 알고리즘은 강화 학습(reinforcement learning)을 통해 훈련될 수 있다.
상기 로그에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 계산하는 단계는, 로그에 대해 미리 설정된 복수의 인덱스들 중 스트레스 상황이 발생하였는지를 결정하기 위한 적어도 하나의 타겟 인덱스를 결정하는 단계, 상기 타겟 인덱스에 기초하여 상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 타겟 데이터들을 결정하는 단계, 및 상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들을 결정하는 단계는, 상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 후보 타겟 데이터들을 결정하는 단계, 및 상기 복수의 후보 타겟 데이터들 중 미리 설정된 시간에 대응하는 상기 복수의 타겟 데이터들을 결정하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 지수를 결정하는 단계는, 상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들의 대표 값을 계산하는 단계, 및 상기 대표 값에 기초하여 상기 스트레스 레벨을 계산하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 지수를 결정하는 단계는, 상기 복수의 타겟 데이터들 각각이 정상 데이터일 확률을 계산하는 단계, 및 계산된 복수의 확률들에 기초하여 상기 스트레스 레벨을 결정하는 단계를 포함할 수 있다.
상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는, 상기 복수의 타겟 데이터들의 시 계열적 패턴 및 미리 저장된 참조 패턴 간의 유사도를 계산하는 단계, 및 상기 유사도에 대응하는 상기 스트레스 레벨을 결정하는 단계를 포함할 수 있다.
상기 타겟 인덱스는, 게임 플레이 데이터 인덱스, 음성 데이터 인덱스, 자세 데이터 인덱스 중 적어도 하나를 포함할 수 있다.
컨텐츠에 대해 사용자가 받는 스트레스의 레벨을 결정하고, 스트레스의 레벨에 기초하여 컨텐츠를 제공하는 방법 및 장치가 제공될 수 있다.
도 1은 일 예에 따른 컨텐츠 제공 시스템의 구성도이다.
도 2는 일 실시예에 따른 서버의 구성도이다.
도 3은 일 실시예는 게임 내의 컨텐츠 제공 방법의 흐름도이다.
도 4는 일 예에 따른 복수의 컨텐츠들에 설정된 수행 횟수가 모두 수행된 경우 사용자에게 최종 보상을 제공하는 방법의 흐름도이다.
도 5는 일 예에 따른 복수의 컨텐츠들에 대한 수행 횟수가 조정된 경우 사용자에게 조정된 수행 횟수를 알려주는 방법을 도시한다.
도 6은 일 실시예에 따른 사용자 단말의 구성도이다.
도 7은 일 예에 따른 컨텐츠에 대한 스트레스 레벨을 결정하는 방법의 흐름도이다.
도 8은 일 예에 따른 타겟 인덱스에 대응하는 타겟 데이터들을 결정하는 방법의 흐름도이다.
도 9는 일 예에 따른 복수의 로그들을 포함하는 로그 테이블을 도시한다.
도 10은 일 예에 따른 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 방법의 흐름도이다.
도 11은 다른 일 예에 따른 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 방법의 흐름도이다.
도 12는 또 다른 일 예에 따른 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 방법의 흐름도이다.
도 13은 일 예에 따른 스트레스 통계 데이터를 생성하는 방법의 흐름도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 예에 따른 컨텐츠 제공 시스템의 구성도이다.
게임 제공 시스템은 게임을 사용자 단말들(120, 130)로 제공하는 서버(110) 및 사용자 단말들(120, 130)을 포함한다. 사용자는 사용자 단말(120)을 통해 서버(110)에 온라인으로 접속하고, 사용자 단말(120)을 이용하여 게임을 플레이한다. 사용자 단말(120)은 게임 플레이에 의해 발생한 데이터를 로그 데이터(log data) 또는 로그로서 생성한다. 사용자 단말(120)은 로그를 서버(110)로 전송한다. 서버(110)는 로그를 통해 사용자의 게임 진행 정보를 획득할 수 있다.
사용자가 게임을 계속적으로 플레이하기 위해서는 게임 진행도에 따른 적절한 보상 및 난이도 등이 요구된다. 그러나, 게임 내의 환경 또는 외부의 환경에 의해 사용자가 과도한 스트레스를 받는 경우, 사용자가 게임 플레이를 중단할 가능성이 높아진다. 예를 들어, 컨텐츠의 반복 수행으로 인한 스트레스, 낮은 컨텐츠 보상으로 인한 스트레스, 및 개인 성향과는 맞지 않은 컨텐츠로 인한 스트레스 등이 있을 수 있다.
이에 따라, 사용자가 게임을 플레이하면서 어느 정도의 스트레스를 받고 있는지를 알 수 있다면, 게임 제공자는 사용자의 스트레스의 정도를 조절하기 위한 조치를 취할 수 있다. 예를 들어, 게임 제공자의 조치는 게임 난이도를 조절하는 것일 수 있고, 다른 예로, 게임 제공자의 조치는 사용자가 보상을 획득하기 위해 수행해야하는 게임 내에서 제공되는 복수의 컨텐츠들의 수행 횟수를 조절하는 것일 수 있으나, 기재된 실시예로 한정되지 않는다
일 측면에 따르면, 사용자 단말(120)에 의해 생성된 로그를 분석함으로써 컨텐츠에 대한 사용자의 스트레스 레벨을 측정할 수 있다. 아래에서, 도 2 내지 도 12를 참조하여 컨텐츠에 대해 결정된 스트레스 레벨에 기초하여 컨텐츠를 제공하는 방법에 대해 상세히 설명된다.
도 2는 일 실시예에 따른 서버의 구성도이다.
서버(200)는 통신부(210), 프로세서(220) 및 메모리(230)를 포함한다. 예를 들어, 서버(200)는 도 1을 참조하여 전술된 서버(110)에 대응한다.
통신부(210)는 프로세서(220) 및 메모리(230)와 연결되어 데이터를 송수신한다. 통신부(210)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다.
통신부(210)는 서버(200) 내의 회로망으로 구현될 수 있다. 예를 들어, 통신부(210)는 내부 버스 및 외부 버스를 포함할 수 있다. 다른 예로, 통신부(210)는 서버(200)와 외부의 장치를 연결하는 요소일 수 있다. 통신부(210)는 인터페이스일 수 있다. 통신부(210)는 외부의 장치로부터 데이터를 수신하여, 프로세서(220) 및 메모리(230)에 데이터를 전송할 수 있다.
프로세서(220)는 통신부(210)가 수신한 데이터 및 메모리(230)에 저장된 데이터를 처리한다. 프로세서(220)는 메모리(예를 들어, 메모리(230))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(220)에 의해 유발된 인스트럭션들을 실행한다.
메모리(230)는 통신부(210)가 수신한 데이터 및 프로세서(220)가 처리한 데이터를 저장한다. 예를 들어, 메모리(230)는 프로그램(또는 어플리케이션, 소프트웨어)을 저장할 수 있다. 저장되는 프로그램은 사용자 단말(120 또는 130)로 게임을 제공할 수 있도록 코딩되어 프로세서(220)에 의해 실행 가능한 신텍스들의 집합일 수 있다. 저장되는 다른 프로그램은 사용자 단말(120 또는 130)로부터 수신한 로그에 기초하여 컨텐츠에 대한 스트레스 레벨을 결정하고, 스트레스 레벨에 기초하여 사용자에게 컨텐츠를 제공할 수 있는 프로그램일 수 있다.
일 측면에 따르면, 메모리(230)는 하나 이상의 휘발성 메모리, 비휘발성 메모리 및 RAM, 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.
메모리(230)는 서버(200)를 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 서버(200)를 동작 시키는 명령어 세트는 프로세서(220)에 의해 실행된다.
통신부(210), 프로세서(220) 및 메모리(230)에 대해, 아래에서 도 3-5, 및 7-13을 참조하여 상세히 설명된다.
도 3은 일 실시예는 게임 내의 컨텐츠 제공 방법의 흐름도이다.
단계들(310 내지 340)은 서버(200)에 의해 수행된다.
단계(310)에서, 서버(200)는 게임을 이용하는 사용자 계정의 복수의 로그들을 획득한다. 서버(200)는 사용자 계정으로 로그인된 사용자의 단말로 게임 플레이를 제공하고, 사용자 단말로부터 게임 플레이에 대한 결과를 로그로서 수신한다. 서버(200)가 로그를 획득하는 상세한 방법에 대해, 아래에서 도 6 및 7을 참조하여 상세히 설명된다.
단계(320)에서, 서버(200)는 복수의 로그들에 기초하여 복수의 컨텐츠들 각각에 대한 사용자의 스트레스 레벨을 결정한다. 예를 들어, 복수의 컨텐츠들은 사용자가 보상을 획득하기 위해 게임 내에서 일정 기간 내에 일정 횟수로 수행해야하는 컨텐츠들일 수 있다. 예를 들어, 일일 퀘스트, 주간 퀘스트, 월간 퀘스트 및 이벤트 퀘스트를 달성하기 위한 목표로서 복수의 컨텐츠들의 조합이 구성될 수 있다. 복수의 컨텐츠들은 다양한 유형의 컨텐츠들일 수 있다. 예를 들어, 복수의 컨텐츠들은 PvP(player VS player) 컨텐츠, PvE(player VS environment) 컨텐츠, 레이드 컨텐츠. 장비 강화 컨텐츠 및 채집 컨텐츠 등을 포함할 수 있다.
서버(200)는 복수의 컨텐츠들 중 제1 타겟 컨텐츠에 대한 제1 타겟 스트레스 레벨 및 제2 타겟 컨텐츠에 대한 제2 타겟 스트레스 레벨 등을 계산할 수 있다. 컨텐츠에 대한 스트레스 레벨을 결정하는 방법이 아래의 도 7 내지 도 12를 참조하여 상세히 설명된다.
단계(330)에서, 서버(200)는 제1 타겟 컨텐츠에 대한 제1 타겟 스트레스 레벨이 미리 설정된 레벨 이상이 경우, 미리 설정된 제1 타겟 컨텐츠의 제1 초기 수행 횟수를 제1 타겟 수행 횟수로 조정한다. 사용자가 제1 타겟 컨텐츠에 대해 스트레스를 받고 있으므로, 사용자의 스트레스를 감소시키기 위해 제1 타겟 컨텐츠의 수행 횟수를 감소시킬 수 있다.
단계(340)에서, 서버(200)는 사용자가 제1 타겟 컨텐츠를 제1 타겟 수행 횟수로 수행한 경우, 미리 설정된 제1 타겟 보상을 사용자 계정에게 제공한다. 제1 타겟 보상은 복수의 컨텐츠들이 모두 수행된 경우 제공되는 최종 보상과는 별도의 보상일 수 있다. 즉, 제1 타겟 보상은 부분 보상일 수 있다. 제1 타겟 컨텐츠의 제1 초기 수행 횟수가 제1 타겟 수행 횟수로 조정된 경우에도, 제1 타겟 보상은 기존과 동일할 수 있다.
도 4는 일 예에 따른 복수의 컨텐츠들에 설정된 수행 횟수가 모두 수행된 경우 사용자에게 최종 보상을 제공하는 방법의 흐름도이다.
도 3을 참조하여 전술된 단계들(330 및 340)과 병렬적이고, 독립적으로 아래의 단계들(410 내지 420)이 더 수행될 수 있다. 단계들(340 및 420)의 수행이 완료된 경우, 단계(430)가 더 수행될 수 있다.
단계(410)에서, 서버(200)는 제2 타겟 컨텐츠에 대한 제2 타겟 스트레스 레벨이 미리 설정된 레벨 미만인 경우, 미리 설정된 제2 타겟 컨텐츠의 제2 초기 수행 횟수를 제2 타겟 수행 횟수로 조정한다. 사용자가 제2 타겟 컨텐츠에 대해 스트레스를 받고 있지 않으므로, 제1 타겟 컨텐츠의 수행 횟수의 감축에 대응하여 제2 타겟 컨텐츠의 수행 횟수를 증가시킬 수 있다.
일 측면에 따르면, 제1 타겟 컨텐츠의 제1 유형 및 제2 타겟 컨텐츠의 제2 유형은 서로 상이하고, 제1 타겟 수행 횟수가 제1 초기 수행 횟수에 비해 감소되는 경우, 제2 타겟 수행 횟수는 제2 초기 수행 횟수에 비해 증가할 수 있다.
제1 타겟 수행 횟수 및 제2 타겟 수행 횟수는 알고리즘을 이용하여 사용자에 대한 전체 스트레스 레벨이 최소화되도록 조정될 수 있고, 알고리즘은 강화 학습(reinforcement learning)을 통해 사전에 훈련될 수 있다.
일 측면에 따르면, 강화 학습을 위해 이용되는 데이터는 게임을 이용하는 전체 사용자들의 데이터가 초기 데이터로서 이용될 수 있다. 초기 훈련된 알고리즘이 해당 사용자의 로그 데이터를 통해 개인화될 수 있다.
강화 학습을 위해 이용되는 데이터는 로그의 사용자 식별자(identifier: ID), 및 컨텐츠 ID와, 해당 로그가 스트레스 로그에 해당하는지 여부를 포함할 수 있다. 해당 로그가 스트레스 로그에 해당하는 여부는 {0, 1}로 표현될 수 있다. 알고리즘은 데이터가 입력된 경우, 해당 데이터에 대한 스트레스의 총량을 계산할 수 있고, 강화 학습을 위해 스트레스의 총량이 감소하는 방향으로 리워드(reward)가 주어질 수 있다. 사용자가 수행해야 하는 복수의 컨텐츠들이 설정된 경우, 훈련이 종료된 알고리즘은 미리 설정된 조건을 만족하는 범위에서 복수의 컨텐츠들이 수행되어야 하는 개별 횟수를 결정할 수 있다.
복수의 컨텐츠들의 개별 수행 횟수를 결정하는 단계는 실시간적으로도 수행될 수 있다. 예를 들어, 일일 퀘스트가 진행 중인 경우에도 사용자에게 추가의 스트레스가 감지되는 경우, 아직 수행되지 않은 컨텐츠의 수행 횟수를 조정할 수 있다. 수행 횟수가 조정된 경우, 사용자에게 즉각적으로 피드백될 수 있다.
단계(420)에서, 서버(200)는 사용자가 제2 타겟 컨텐츠를 제2 타겟 수행 횟수로 수행한 경우, 미리 설정된 제2 타겟 보상을 사용자 계정에게 제공한다. 제2 타겟 보상은 복수의 컨텐츠들이 모두 수행된 경우 제공되는 최종 보상과는 별도의 보상일 수 있다. 즉, 제2 타겟 보상은 부분 보상일 수 있다. 제2 타겟 컨텐츠의 제2 초기 수행 횟수가 제2 타겟 수행 횟수로 조정된 경우에도, 제2 타겟 보상은 기존과 동일할 수 있다.
일 측면에 따르면, 복수의 컨텐츠들 중 제1 타겟 컨텐츠의 제1 초기 수행 횟수 및 제2 타겟 컨텐츠의 제2 초기 수행 횟수가 조정된 경우에도, 복수의 컨텐츠들의 전체 수행 횟수의 합은 동일하게 유지될 수 있다.
다른 일 측면에 따르면, 복수의 컨텐츠들 중 제1 타겟 컨텐츠의 제1 초기 수행 횟수 및 제2 타겟 컨텐츠의 제2 초기 수행 횟수가 조정된 경우에도, 복수의 컨텐츠들을 통해 제공되는 전체의 보상이 동일하게 유지될 수 있다.
단계(430)에서, 서버(200)는 사용자가 복수의 컨텐츠들 각각에 대해 설정된 타겟 수행 횟수를 모두 수행한 경우, 사용자 계정에게 미리 설정된 최종 보상을 제공한다. 예를 들어, 사용자가 일일 퀘스트에 설정된 복수의 컨텐츠들을 모두 수행한 경우, 사용자 계정에게 일일 퀘스트의 보상이 제공될 수 있다
.
도 5는 일 예에 따른 복수의 컨텐츠들에 대한 수행 횟수가 조정된 경우 사용자에게 조정된 수행 횟수를 알려주는 방법을 도시한다.
예를 들어, 일일 퀘스트에 대해 미리 설정된 컨텐츠들의 초기 리스트(510)는 버섯 채집 컨텐츠, 던전 탐험 컨텐츠 및 다른 사용자와 비무 컨텐츠를 포함할 수 있다. 버섯 채집 컨텐츠의 초기 수행 횟수는 3회, 던전 탐험 컨텐츠의 초기 수행 횟수는 2회, 다른 사용자와 비무 컨텐츠는 2회로 미리 설정될 수 있다.
예를 들어, 사용자가 다른 사용자와 비무 컨텐츠에 대해 스트레스를 받는 경우, 해당 컨텐츠의 수행 횟수가 1회 감소될 수 있다. 반면, 사용자가 스트레스를 받지 않는 버섯 채집 컨텐츠가 1회 증가될 수 있다. 다른 예로, 다른 사용자와 비무 컨텐츠의 수행 횟수가 2회 감소되는 경우, 버섯 채집 컨텐츠의 수행 횟수가 1회, 던전 탐험 컨텐츠의 수행 횟수가 1회 각각 증가할 수 있다. 즉, 복수의 컨텐츠들 중 제1 타겟 컨텐츠의 제1 초기 수행 횟수 및 제2 타겟 컨텐츠의 제2 초기 수행 횟수가 조정된 경우에도, 복수의 컨텐츠들의 전체 수행 횟수의 합은 동일할 수 있다.
복수의 컨텐츠들에 대한 수행 횟수가 조정된 경우 사용자에게 조정된 수행 횟수가 리스트(520)를 통해 전달될 수 있다. 리스트(520)에는 추가 코멘트(521)가 더 출력될 수 있다.
도 6은 일 실시예에 따른 사용자 단말의 구성도이다.
사용자 단말(600)은 통신부(610), 프로세서(620), 메모리(630) 및 센서부(640)를 포함한다. 예를 들어, 사용자 단말(600)은 도 1을 참조하여 전술된 사용자 단말(120)에 대응한다.
통신부(610)는 프로세서(620), 메모리(630) 및 센서부(640)와 연결되어 데이터를 송수신한다. 통신부(610)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다.
통신부(610)는 사용자 단말(600) 내의 회로망으로 구현될 수 있다. 예를 들어, 통신부(610)는 내부 버스 및 외부 버스를 포함할 수 있다. 다른 예로, 통신부(610)는 사용자 단말(600)과 외부의 장치를 연결하는 요소일 수 있다. 통신부(610)는 인터페이스일 수 있다. 통신부(610)는 외부의 장치로부터 데이터를 수신하여, 프로세서(620) 및 메모리(630)에 데이터를 전송할 수 있다.
프로세서(620)는 통신부(610)가 수신한 데이터 및 메모리(630)에 저장된 데이터를 처리한다. 프로세서(620)는 메모리(예를 들어, 메모리(630))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(620)에 의해 유발된 인스트럭션들을 실행한다.
메모리(630)는 통신부(610)가 수신한 데이터 및 프로세서(620)가 처리한 데이터를 저장한다. 예를 들어, 메모리(630)는 프로그램(또는 어플리케이션, 소프트웨어)을 저장할 수 있다. 저장되는 프로그램은 게임을 제공할 수 있도록 코딩되어 프로세서(620)에 의해 실행 가능한 신텍스들의 집합일 수 있다.
일 측면에 따르면, 메모리(630)는 하나 이상의 휘발성 메모리, 비휘발성 메모리 및 RAM, 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.
메모리(630)는 사용자 단말(600)을 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 사용자 단말(600)을 동작 시키는 명령어 세트는 프로세서(620)에 의해 실행된다.
센서부(640)는 마이크(641) 및 가속도 센서(642)를 포함한다. 마이크(641)는 사용자 단말(600) 주변의 음성을 수신하고, 음성 데이터를 생성할 수 있다. 음성 데이터는 음성의 진폭 또는 음성 데이터의 특징을 포함할 수 있다. 예를 들어, 음성 데이터의 특징은 MFCC(Mel Frequency Cepstral Coefficient), Mel spectrogram일 수 있다.
가속도 센서(642)는 사용자 단말(600)의 가속도 변화를 측정함으로써 사용자 단말(600)의 자세 데이터를 생성할 수 있다. 자세 데이터는 3축(예를 들어, x, y, z)에 대한 가속도의 변화량 및 각각의 축에 대한 회전량(예를 들어, yaw, pitch, roll)을 포함할 수 있다.
통신부(610), 프로세서(620), 메모리(630) 및 센서부(640)에 대해, 아래에서 도 7을 참조하여 상세히 설명된다.
도 7은 일 예에 따른 컨텐츠에 대한 스트레스 레벨을 결정하는 방법의 흐름도이다.
단계들(710 내지 730)은 사용자 단말(600)에 의해 수행되고, 단계들(740 내지 750)는 서버(200)에 의해 수행될 수 있다.
단계(710)에서, 사용자 단말(600)은 사용자에게 게임 플레이를 제공한다. 예를 들어, 사용자 단말(600)은 사용자 단말(600)에 설치된 어플리케이션을 통해 사용자에게 게임 플레이를 제공한다.
단계(720)에서, 사용자 단말(600)은 센서부(640)를 이용하여 사용자의 게임 플레이 중 발생하는 정보를 센서 데이터로서 생성한다. 예를 들어, 센서 데이터는 음성 데이터일 수 있다. 다른 예로, 센서 데이터는 사용자 단말(600)의 자세 데이터일 수 있다.
단계(730)에서, 사용자 단말(600)은 게임 플레이에 대한 로그를 생성한다. 로그는 게임 플레이 데이터 및 센서 데이터를 포함할 수 있고, 게임 플레이 데이터 및 센서 데이터가 연관될 수 있다. 예를 들어, 게임 플레이 데이터 및 센서 데이터는 타임 스탬프(time stamp)에 기초하여 매핑될 수 있다. 즉, 동일한 시각 또는 거의 동일한 것으로 취급될 수 있는 시각에 발생한 게임 플레이 데이터 및 센서 데이터가 서로 연관될 수 있다. 생성된 로그는 서버(200)로 전송된다.
단계(740)에서, 서버(200)는 사용자 단말(600)로부터 로그를 수신한다. 서버(200)는 복수의 사용자 단말들로부터 복수의 로그들을 수신할 수 있고, 복수의 로그들을 로그 테이블로서 관리할 수 있다. 로그 테이블에 대해, 아래에서 도 9를 참조하여 상세히 설명된다. 단계(740)는 도 3을 참조하여 전술된 단계(310)에 대응할 수 있다.
단계(750)는 아래의 단계들(751 내지 753)을 포함한다. 단계(750)는 도 3을 참조하여 전술된 단계(320)에 대응할 수 있다.
단계(751)에서, 서버(200)는 로그에 대해 미리 설정된 복수의 인덱스들 중 스트레스 상황이 발생하였는지를 결정하기 위한 적어도 하나의 타겟 인덱스를 결정한다. 예를 들어, 복수의 인덱스들은 사용자 ID, 타임 스탬프, 컨텐츠 ID, 음성 데이터, 자세 데이터, 게임 플레이 데이터 등을 포함할 수 있다. 컨텐츠 별로 사용자의 스트레스 레벨을 결정하기 위해, 타겟 인덱스로서 사용자 ID 및 컨텐츠 ID 가 결정될 수 있다. 복수의 인덱스들에 대해, 아래에서 도 9를 참조하여 상세히 설명된다.
타겟 인덱스는 서버(200)의 관리자에 의해 결정될 수도 있고, 미리 설정된 룰(rule)에 기반하여 결정될 수도 있으며, 기재된 실시예로 한정되지 않는다.
단계(752)에서, 서버(200)는 타겟 인덱스에 대응하는 타겟 데이터를 결정한다. 예를 들어, 로그 테이블 내의 복수의 로그들 중 타겟 인덱스를 포함하는 하나 이상의 로그들을 결정하고, 결정된 로그들의 데이터들 중 타겟 인덱스에 해당하는 값들이 타겟 데이터로 결정될 수 있다. 타겟 데이터를 결정하는 방법에 대해, 아래에서 도 8을 참조하여 상세히 설명된다.
단계(753)에서, 서버(200)는 타겟 데이터들이 나타내는 스트레스 레벨을 결정한다. 예를 들어, 스트레스 레벨은 정상 모델링(normal modeling) 또는 비정상 모델링(abnormal modeling)에 기초하여 계산될 수 있다. 다른 예로, 스트레스 레벨은 타겟 데이터가 나타내는 패턴에 기초하여 계산될 수 있다. 스트레스 레벨을 결정하는 방법에 대해, 아래에서 도 10 내지 12를 참조하여 상세히 설명된다.
도 8은 일 예에 따른 타겟 인덱스에 대응하는 타겟 데이터들을 결정하는 방법의 흐름도이다.
도 7을 참조하여 전술된 단계(752)는 아래의 단계들(810 및 820)을 포함한다.
단계(810)에서, 서버(200)는 복수의 로그들 중 타겟 인덱스에 대응하는 복수의 후보 타겟 데이터들을 결정한다. 예를 들어, 로그 테이블 내의 복수의 로그들 중 타겟 인덱스를 포함하는 복수의 로그들이 결정되고, 결정된 복수의 로그들의 데이터들 중 타겟 인덱스에 해당하는 값들이 후보 타겟 데이터들로 결정될 수 있다. 결정된 후보 타겟 데이터들은 특정 컨텐츠에 대한 로그일 수 있다.
단계(820)에서, 서버(200)는 복수의 후보 타겟 데이터들 중 미리 설정된 시간에 대응하는 복수의 타겟 데이터들을 결정한다. 미리 설정된 시간은 시간 필터(예를 들어, 시간 윈도우)일 수 있다. 즉, 특정한 구간에 해당하는 후보 타겟 데이터만이 타겟 데이터로 결정될 수 있다.
도 9는 일 예에 따른 복수의 로그들을 포함하는 로그 테이블을 도시한다.
로그 테이블(900)은 복수의 로그들(920, 930, 940)을 포함한다. 복수의 로그들(920, 930, 940) 각각은 복수의 인덱스들(911 내지 916)에 대응하는 데이터를 포함한다. 기본적으로, 로그 테이블(900)은 로그를 수신한 시각에 기초하여 복수의 로그들(920, 930, 940)을 정렬할 수 있다.
예를 들어, 타겟 인덱스가 컨텐츠 ID 인덱스(913)(예를 들어, '제1 컨텐츠') 및 음성 데이터 인덱스(914)로 결정된 경우, 제1 음성 데이터 및 제3 음성 데이터가 타겟 데이터일 수 있다.
다른 예로, 타겟 인덱스가 사용자 ID 인덱스(911)(예를 들어, 'A') 및 자세 데이터 인덱스(915)로 결정된 경우, 제1 자세 데이터가 타겟 데이터일 수 있다. 그 테이블(900)에서는 'A' 사용자에 대한 로그가 하나 밖에 도시되지 않았으나, 실제의 경우에는 복수 개의 로그들이 타겟 데이터들로 결정될 수 있다. 컨텐츠 별로 사용자의 스트레스 레벨을 결정하기 위해 사용자 ID(911) 및 컨텐츠 ID(913)가 타겟 인덱스로 결정될 수 있다.
도 10은 일 예에 따른 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 방법의 흐름도이다.
일 측면에 따르면, 도 7를 참조하여 전술된 단계(753)는 아래의 단계들(1010 및 1020)을 포함한다.
단계(1010)에서, 서버(200)는 복수의 타겟 데이터들에 기초하여 복수의 타겟 데이터들의 대표 값을 계산한다. 일반적으로, 특정 시간 마다 발생하는 복수의 타겟 데이터들의 개수는 일정하지 않다. 이에 따라, 복수의 타겟 데이터들의 특성을 나타낼 수 있는 값이 대표 값으로 계산될 수 있다. 예를 들어, 대표 값은 평균 값, 표준 편자, 분산, RFM(recency, frequency, Monetary) 특징 값 등일 수 있고, 기재된 실시예로 한정되지 않는다.
단계(1020)에서, 서버(200)는 대표 값에 기초하여 스트레스 레벨을 계산한다. 예를 들어, 대표 값이 정상 데이터 또는 비정상 데이터일 확률에 기초하여 스트레스 레벨이 계산될 수 있다. 대표 값이 정상 데이터일 확률이 계산되는 경우, 스트레스 레벨은 계산된 확률과 반비례의 관계에 있을 수 있다. 대표 값이 비정상 데이터일 확률이 계산되는 경우, 스트레스 레벨은 계산된 확률과 비례할 수 있다.
대표 값이 정상 데이터일 확률은 미리 결정된 확률 모델을 이용하여 계산될 수 있다. 정상적인 상태로 미리 결정된 데이터들을 이용하여 확률 모델이 미리 생성되어 있을 수 있다. 대표 값이 정상 데이터일 확률은 P(normal | representative value)로 표현될 수 있다.
예를 들어, 확률을 계산하기 위해 정규 분포(gaussian distribution), 정규 분포의 혼합(mixture of gaussian distribution), 다변량 정규 분포(multivariate gaussian distribution), 밀도 추정(Density Estimation), 및 커널 밀도 추정(Kernel Density Estimation)와 같은 통계적 방법이 이용될 수 있다.
다른 예로, 확률을 계산하기 위해 one-class SVM(support vector machine), one-class neural network(예를 들어, MLP(Multilayer Processing), RNN(Recurrent Neural Network) 또는 CNN(Convolutional Neural Network))와 같은 기계 학습 방법이 이용될 수 있다.
도 11은 다른 일 예에 따른 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 방법의 흐름도이다.
다른 일 측면에 따르면, 도 7을 참조하여 전술된 단계(753)는 아래의 단계들(1110 및 1120)을 포함한다.
단계(1110)에서, 서버(200)는 복수의 타겟 데이터들 각각이 정상 데이터일 확률을 계산한다. 예를 들어, 복수의 타겟 데이터들이 x1, x2, 및 x3인 경우, P(normal|x1), P(normal|x2) 및 P(normal|x3)이 계산될 수 있다. 다른 예로, P(x3|x2) 및 P(x2|x1)이 계산될 수 있다.
단계(1120)에서, 서버(200)는 계산된 복수의 확률들에 기초하여 스트레스 레벨을 계산한다. 예를 들어, 스트레스 레벨은 아래의 [수학식 1] 또는 [수학식 2]로 계산될 수 있다.
[수학식 1]
P(normal|x1) ⅹ P(normal|x2) ⅹ P(normal|x3)
[수학식 2]
P(x3|x2) ⅹ P(x2|x1)
도 12는 또 다른 일 예에 따른 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 방법의 흐름도이다.
도 7을 참조하여 전술된 단계(753)는 아래의 단계들(1210 및 1220)을 포함할 수 있다.
단계(1210)에서, 서버(200)는 복수의 타겟 데이터들의 시계열적 패턴 및 저장된 참조 패턴 간의 유사도를 계산한다. 예를 들어, 동일한 사용자에 대한 자세 데이터들(또는 음성 데이터들)이 복수의 타겟 데이터들인 경우, 생성 시각에 따라 복수의 타겟 데이터들을 정렬함으로써 복수의 타겟 데이터들의 시계열적 패턴이 생성될 수 있다. 유사도는 코사인 거리(cosine distance) 및 유클리드 거리(Euclid distance) 등을 이용하여 계산될 수 있다.
일 측면에 따르면, 사용자의 스트레스가 높은 경우 나타날 수 있는 사용자 단말의 자세 패턴들이 참조 패턴으로서 미리 저장될 수 있다. 예를 들어, 사용자 단말이 강하게 흔들어지는 패턴 및 사용자 단말이 던져지는 패턴 등이 참조 패턴으로서 저장될 수 있다. 생성된 시계열적 패턴 및 복수의 참조 패턴들 각각 사이의 유사도들이 계산되고, 계산된 유사도들 중 가장 큰 유사도가 결정될 수 있다.
단계(1220)에서, 서버(200)는 유사도에 대응하는 스트레스 레벨을 결정한다. 예를 들어, 유사도가 높을수록 스트레스 레벨이 높을 수 있다.
도 13은 일 예에 따른 스트레스 통계 데이터를 생성하는 방법의 흐름도이다.
도 3을 참조하여 전술된 단계(340)가 수행된 후 서버(200)는 아래의 단계들(1310 및 1320)을 더 수행할 수 있다.
단계(1310)에서, 서버(200)는 사용자(또는, 관리자)로부터 스트레스 통계 데이터 생성 요청을 수신한다. 요청은 통계의 생성 조건 등을 포함할 수 있다.
단계(1320)에서, 서버(200)는 조건에 맞는 스트레스 통계 데이터를 생성하고, 사용자에게 제공할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
200: 서버
210: 통신부
220: 프로세서
230: 메모리

Claims (26)

  1. 서버에 의해 수행되는, 게임 내의 복수의 컨텐츠들을 제공하는 방법은,
    상기 게임을 이용하는 사용자 계정의 복수의 로그들을 획득하는 단계;
    상기 복수의 로그들에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 결정하는 단계;
    상기 복수의 컨텐츠들 중 제1 타겟 컨텐츠에 대한 제1 타겟 스트레스 레벨이 미리 설정된 레벨 이상인 경우, 미리 설정된 상기 제1 타겟 컨텐츠의 제1 초기 수행 횟수를 제1 타겟 수행 횟수로 조정하는 단계;
    상기 사용자가 상기 제1 타겟 컨텐츠를 상기 제1 타겟 수행 횟수로 수행한 경우, 미리 설정된 제1 타겟 보상을 상기 사용자 계정에게 제공하는 단계;
    상기 복수의 컨텐츠들 중 제2 타겟 컨텐츠에 대한 제2 타겟 스트레스 레벨이 미리 설정된 레벨 미만이고, 상기 제1 초기 수행 횟수가 상기 제1 타겟 수행 횟수로 조정된 경우, 미리 설정된 상기 제2 타겟 컨텐츠의 제2 초기 수행 횟수를 제2 타겟 수행 횟수로 조정하는 단계; 및
    상기 사용자가 상기 제2 타겟 컨텐츠를 상기 제2 타겟 수행 횟수로 수행한 경우, 상기 사용자 계정에게 제2 타겟 보상을 제공하는 단계
    를 포함하고,
    상기 제1 타겟 컨텐츠의 제1 유형 및 상기 제2 타겟 컨텐츠의 제2 유형은 서로 상이하고,
    상기 제1 타겟 수행 횟수가 상기 제1 초기 수행 횟수에 비해 감소되는 경우, 상기 제2 타겟 수행 횟수는 상기 제2 초기 수행 횟수에 비해 증가하는,
    컨텐츠 제공 방법.
  2. 제1항에 있어서,
    상기 제1 타겟 컨텐츠의 상기 제1 초기 수행 횟수가 상기 제1 타겟 수행 횟수로 조정된 경우에도, 상기 제1 타겟 보상은 동일한,
    컨텐츠 제공 방법.
  3. 제1항에 있어서,
    상기 사용자가 상기 복수의 컨텐츠들 각각에 대해 설정된 타겟 수행 횟수를 모두 수행한 경우, 상기 사용자 계정에게 미리 설정된 최종 보상을 제공하는 단계
    를 더 포함하는,
    컨텐츠 제공 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 복수의 컨텐츠들 중 상기 제1 타겟 컨텐츠의 상기 제1 초기 수행 횟수 및 상기 제2 타겟 컨텐츠의 상기 제2 초기 수행 횟수가 조정된 경우에도, 상기 복수의 컨텐츠들의 전체 수행 횟수의 합은 동일한,
    컨텐츠 제공 방법.
  6. 삭제
  7. 제1항에 있어서,
    상기 제1 타겟 수행 횟수 및 상기 제2 타겟 수행 횟수는 알고리즘을 이용하여 상기 사용자에 대한 전체 스트레스 레벨이 최소화되도록 조정되는,
    컨텐츠 제공 방법.
  8. 제7항에 있어서,
    상기 알고리즘은 강화 학습(reinforcement learning)을 통해 훈련되는,
    컨텐츠 제공 방법.
  9. 제1항에 있어서,
    상기 로그에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 계산하는 단계는,
    로그에 대해 미리 설정된 복수의 인덱스들 중 스트레스 상황이 발생하였는지를 결정하기 위한 적어도 하나의 타겟 인덱스를 결정하는 단계;
    상기 타겟 인덱스에 기초하여 상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 타겟 데이터들을 결정하는 단계; 및
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계
    를 포함하는,
    컨텐츠 제공 방법.
  10. 제9항에 있어서,
    상기 복수의 타겟 데이터들을 결정하는 단계는,
    상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 후보 타겟 데이터들을 결정하는 단계; 및
    상기 복수의 후보 타겟 데이터들 중 미리 설정된 시간에 대응하는 상기 복수의 타겟 데이터들을 결정하는 단계
    를 포함하는,
    컨텐츠 제공 방법.
  11. 제10항에 있어서,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들의 대표 값을 계산하는 단계; 및
    상기 대표 값에 기초하여 상기 스트레스 레벨을 계산하는 단계
    를 포함하는,
    컨텐츠 제공 방법.
  12. 제10항에 있어서,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는,
    상기 복수의 타겟 데이터들 각각이 정상 데이터일 확률을 계산하는 단계; 및
    계산된 복수의 확률들에 기초하여 상기 스트레스 레벨을 결정하는 단계
    를 포함하는,
    컨텐츠 제공 방법.
  13. 제10항에 있어서,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는,
    상기 복수의 타겟 데이터들의 시 계열적 패턴 및 미리 저장된 참조 패턴 간의 유사도를 계산하는 단계; 및
    상기 유사도에 대응하는 상기 스트레스 레벨을 결정하는 단계
    를 포함하는,
    컨텐츠 제공 방법.
  14. 제9항에 있어서,
    상기 타겟 인덱스는, 게임 플레이 데이터 인덱스, 음성 데이터 인덱스, 자세 데이터 인덱스 중 적어도 하나를 포함하는,
    컨텐츠 제공 방법.
  15. 제1항 내지 제3항, 제5항, 및 제7항 내지 제14항 중 어느 한 항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
  16. 게임 내의 복수의 컨텐츠들을 제공하는 서버는,
    복수의 컨텐츠들을 사용자에게 제공하는 프로그램이 기록된 메모리; 및
    상기 프로그램을 수행하는 프로세서
    를 포함하고,
    상기 프로그램은,
    상기 게임을 이용하는 사용자 계정의 복수의 로그들을 획득하는 단계;
    상기 복수의 로그들에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 결정하는 단계;
    상기 복수의 컨텐츠들 중 제1 타겟 컨텐츠에 대한 제1 타겟 스트레스 레벨이 미리 설정된 레벨 이상인 경우, 미리 설정된 상기 제1 타겟 컨텐츠의 제1 초기 수행 횟수를 제1 타겟 수행 횟수로 조정하는 단계;
    상기 사용자가 상기 제1 타겟 컨텐츠를 상기 제1 타겟 수행 횟수로 수행한 경우, 미리 설정된 제1 타겟 보상을 상기 사용자 계정에게 제공하는 단계;
    상기 복수의 컨텐츠들 중 제2 타겟 컨텐츠에 대한 제2 타겟 스트레스 레벨이 미리 설정된 레벨 미만이고, 상기 제1 초기 수행 횟수가 상기 제1 타겟 수행 횟수로 조정된 경우, 미리 설정된 상기 제2 타겟 컨텐츠의 제2 초기 수행 횟수를 제2 타겟 수행 횟수로 조정하는 단계; 및
    상기 사용자가 상기 제2 타겟 컨텐츠를 상기 제2 타겟 수행 횟수로 수행한 경우, 상기 사용자 계정에게 제2 타겟 보상을 제공하는 단계
    를 수행하고,
    상기 복수의 컨텐츠들 중 상기 제1 타겟 컨텐츠의 상기 제1 초기 수행 횟수 및 상기 제2 타겟 컨텐츠의 상기 제2 초기 수행 횟수가 조정된 경우에도, 상기 복수의 컨텐츠들의 전체 수행 횟수의 합은 동일한,
    서버.
  17. 제16항에 있어서,
    상기 프로그램은,
    상기 사용자가 상기 복수의 컨텐츠들 각각에 대해 설정된 타겟 수행 횟수를 모두 수행한 경우, 상기 사용자 계정에게 미리 설정된 최종 보상을 제공하는 단계
    를 더 수행하는,
    서버.
  18. 삭제
  19. 제16항에 있어서,
    상기 제1 타겟 수행 횟수 및 상기 제2 타겟 수행 횟수는 알고리즘을 이용하여 상기 사용자에 대한 전체 스트레스 레벨이 최소화되도록 조정되는,
    서버.
  20. 제19항에 있어서,
    상기 알고리즘은 강화 학습(reinforcement learning)을 통해 훈련되는,
    서버.
  21. 제16항에 있어서,
    상기 로그에 기초하여 상기 복수의 컨텐츠들 각각에 대한 상기 사용자 계정의 사용자의 스트레스 레벨을 계산하는 단계는,
    로그에 대해 미리 설정된 복수의 인덱스들 중 스트레스 상황이 발생하였는지를 결정하기 위한 적어도 하나의 타겟 인덱스를 결정하는 단계;
    상기 타겟 인덱스에 기초하여 상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 타겟 데이터들을 결정하는 단계; 및
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계
    를 포함하는,
    서버.
  22. 제21항에 있어서,
    상기 복수의 타겟 데이터들을 결정하는 단계는,
    상기 복수의 로그들 중 상기 타겟 인덱스에 대응하는 복수의 후보 타겟 데이터들을 결정하는 단계; 및
    상기 복수의 후보 타겟 데이터들 중 미리 설정된 시간에 대응하는 상기 복수의 타겟 데이터들을 결정하는 단계
    를 포함하는,
    서버.
  23. 제22항에 있어서,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 지수를 결정하는 단계는,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들의 대표 값을 계산하는 단계; 및
    상기 대표 값에 기초하여 상기 스트레스 레벨을 계산하는 단계
    를 포함하는,
    서버.
  24. 제22항에 있어서,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 지수를 결정하는 단계는,
    상기 복수의 타겟 데이터들 각각이 정상 데이터일 확률을 계산하는 단계; 및
    계산된 복수의 확률들에 기초하여 상기 스트레스 레벨을 결정하는 단계
    를 포함하는,
    서버.
  25. 제22항에 있어서,
    상기 복수의 타겟 데이터들에 기초하여 상기 복수의 타겟 데이터들이 나타내는 스트레스 레벨을 결정하는 단계는,
    상기 복수의 타겟 데이터들의 시 계열적 패턴 및 미리 저장된 참조 패턴 간의 유사도를 계산하는 단계; 및
    상기 유사도에 대응하는 상기 스트레스 레벨을 결정하는 단계
    를 포함하는,
    서버.
  26. 제21항에 있어서,
    상기 타겟 인덱스는, 게임 플레이 데이터 인덱스, 음성 데이터 인덱스, 자세 데이터 인덱스 중 적어도 하나를 포함하는,
    서버.
KR1020190063659A 2019-05-30 2019-05-30 게임 내의 컨텐츠 제공 방법 및 장치 KR102199526B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190063659A KR102199526B1 (ko) 2019-05-30 2019-05-30 게임 내의 컨텐츠 제공 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190063659A KR102199526B1 (ko) 2019-05-30 2019-05-30 게임 내의 컨텐츠 제공 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020200188289A Division KR20210005835A (ko) 2020-12-30 2020-12-30 게임 내의 컨텐츠 제공 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200137381A KR20200137381A (ko) 2020-12-09
KR102199526B1 true KR102199526B1 (ko) 2021-01-07

Family

ID=73786844

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190063659A KR102199526B1 (ko) 2019-05-30 2019-05-30 게임 내의 컨텐츠 제공 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102199526B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101749706B1 (ko) * 2016-06-02 2017-06-22 충남대학교산학협력단 사용자 장치를 사용하여 획득된 상황 정보 및 생체 정보를 기반으로 사용자의 감정을 예측하는 방법 및 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0922314A (ja) * 1995-07-05 1997-01-21 Sanyo Electric Co Ltd ストレス適応の制御装置
KR100948738B1 (ko) * 2007-08-01 2010-03-22 중앙대학교 산학협력단 동적 난이도 게임 방법 및 그 시스템
KR20130124240A (ko) * 2013-08-02 2013-11-13 박자민 사용자의 감정 변화에 기반한 게임 난이도의 실시간 조절장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101749706B1 (ko) * 2016-06-02 2017-06-22 충남대학교산학협력단 사용자 장치를 사용하여 획득된 상황 정보 및 생체 정보를 기반으로 사용자의 감정을 예측하는 방법 및 시스템

Also Published As

Publication number Publication date
KR20200137381A (ko) 2020-12-09

Similar Documents

Publication Publication Date Title
KR102239062B1 (ko) 감각 기반의 동적 게임 상태 구성
US11369880B2 (en) Dynamic difficulty adjustment
KR102060879B1 (ko) 비디오 게임 애플리케이션 내의 게임플레이 파라미터들의 실시간 동적 수정 및 최적화
KR20200094065A (ko) 게임 내 스트레스 상황이 발생하였는지를 결정하는 방법 및 그 장치
CN108920221B (zh) 游戏难度调整的方法及装置、电子设备、存储介质
KR101246938B1 (ko) 가상 현실 환경에서 컴퓨터 제어되는 아바타의 개인화된 동작을 위한 시스템, 방법 및 컴퓨터 판독가능 기록 매체
US9993734B2 (en) Player model
US8348733B2 (en) Apparatus and method for analyzing characteristic of game player in real time
US10272341B1 (en) Procedural level generation for games
CN108920213A (zh) 游戏的动态配置方法及装置
KR20200039536A (ko) 이상 케이스 탐지 방법 및 장치
US20230364514A1 (en) Systems and methods for behavior-based characterization of avatars in a computer-generated environment
US10279267B2 (en) Monitoring game activity to detect a surrogate computer program
US20220193554A1 (en) Device and method for generating npc capable of adjusting skill level
KR102199526B1 (ko) 게임 내의 컨텐츠 제공 방법 및 장치
KR20210005835A (ko) 게임 내의 컨텐츠 제공 방법 및 장치
KR101986726B1 (ko) 게임 프로그램에서 개인화된 콘텐츠 제공 장치 및 방법
KR102021398B1 (ko) 게임 내 스트레스 상황이 발생하였는지를 결정하는 방법 및 그 장치
KR20200017326A (ko) 게임에 대한 과몰입 방지 장치 및 방법
KR101986730B1 (ko) 게임 프로그램의 콘텐츠 제공 방법 및 장치
KR102343354B1 (ko) 게임의 에너지 충전 장치 및 방법
KR101985852B1 (ko) 게임 재화 가치 추정 장치 및 이의 동작 방법
KR102162179B1 (ko) 아이템 정보 제공 장치 및 방법
KR102017467B1 (ko) 사용자의 컨텐츠 이용을 보조하는 방법 및 장치
KR20200068552A (ko) 게임 프로그램에서 개인화된 콘텐츠 제공 장치 및 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant