[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP7543223B2 - Game Program - Google Patents

Game Program Download PDF

Info

Publication number
JP7543223B2
JP7543223B2 JP2021122524A JP2021122524A JP7543223B2 JP 7543223 B2 JP7543223 B2 JP 7543223B2 JP 2021122524 A JP2021122524 A JP 2021122524A JP 2021122524 A JP2021122524 A JP 2021122524A JP 7543223 B2 JP7543223 B2 JP 7543223B2
Authority
JP
Japan
Prior art keywords
user
game
cell
moving
objects
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021122524A
Other languages
Japanese (ja)
Other versions
JP2023018411A (en
Inventor
一晃 須貝
兼太朗 宮下
徹 山崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Colopl Inc
Original Assignee
Colopl Inc
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 Colopl Inc filed Critical Colopl Inc
Priority to JP2021122524A priority Critical patent/JP7543223B2/en
Publication of JP2023018411A publication Critical patent/JP2023018411A/en
Application granted granted Critical
Publication of JP7543223B2 publication Critical patent/JP7543223B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Description

本発明の実施形態は、ゲームプログラムに関する。 An embodiment of the present invention relates to a game program.

スマートフォン等のコンピュータ端末において、ユーザが複数のセルに配置されたパネルを組み合わせて経路を形成するパズルゲームが知られている。 Puzzle games are known on computer terminals such as smartphones in which a user combines panels arranged in multiple cells to form a path.

例えば、特許文献1には、ユーザが複数の要素の配置を変更して経路を形成するゲームが記載されている。特許文献2には、ユーザがオブジェクトを選択して生成した経路をスタート地点とゴール地点に基づいて正誤判定をするゲームが記載されている。 For example, Patent Document 1 describes a game in which a user creates a route by changing the arrangement of multiple elements. Patent Document 2 describes a game in which a user selects an object and creates a route, and the route is judged to be correct based on the start point and goal point.

特開2014-117389号公報JP 2014-117389 A 特開2020-168133号公報JP 2020-168133 A

この発明の目的は、パズルゲームの興趣性を一層高めることを可能にする技術を提供することにある。 The purpose of this invention is to provide technology that can further increase the interest of puzzle games.

上記課題を解決するためにこの発明の一態様は、コンピュータによって実行されるプログラムであって、ゲームに設定された少なくとも1つのゲートオブジェクトを表示することと、方向オブジェクト及び少なくとも1つのユーザオブジェクトを含む複数のオブジェクトを配置する配列オブジェクトを表示することと、少なくとも1つのユーザオブジェクトに対するユーザの操作に基づいて、少なくとも1つのユーザオブジェクトの位置を更新することと、配列オブジェクトにおいて少なくとも1つのゲートオブジェクトから移動する移動オブジェクトを表示することと、少なくとも1つのユーザオブジェクトの位置と移動オブジェクトの位置とに基づいてユーザオブジェクトの位置の正解を判定することと、を上記コンピュータに実行させるようにした。 In order to solve the above problem, one aspect of the present invention is a program executed by a computer, which causes the computer to execute the following: displaying at least one gate object set in a game; displaying an array object in which a plurality of objects including a direction object and at least one user object are arranged; updating the position of at least one user object based on a user operation on at least one user object; displaying a moving object that moves from at least one gate object in the array object; and determining the correct position of the user object based on the position of the at least one user object and the position of the moving object.

この発明の一態様に係るゲームプログラムは、パズルゲームの興趣性を一層高めることを可能にする。 The game program according to one aspect of the present invention makes it possible to further increase the interest of puzzle games.

図1は、実施形態に係るゲームプログラムに関連するゲームシステムの全体構成の一例を示す図である。FIG. 1 is a diagram showing an example of the overall configuration of a game system related to a game program according to an embodiment. 図2は、図1に示したゲームシステムにおけるサーバの機能構成の一例を示す図である。FIG. 2 is a diagram showing an example of a functional configuration of the server in the game system shown in FIG. 図3は、図1に示したゲームシステムにおけるユーザ端末の機能構成の一例を示す図である。FIG. 3 is a diagram showing an example of a functional configuration of a user terminal in the game system shown in FIG. 図4は、実施形態に係るユーザ端末が有するオブジェクトタイプテーブルを例示する図である。FIG. 4 is a diagram illustrating an object type table included in the user terminal according to the embodiment. 図5は、実施形態に係るゲームプログラムによって実現されるユーザ端末に表示される画像の例を示す図である。FIG. 5 is a diagram showing an example of an image displayed on a user terminal realized by a game program according to an embodiment. 図6は、実施形態に係るユーザ端末の情報処理動作の一例を示すフローチャートである。FIG. 6 is a flowchart illustrating an example of an information processing operation of the user terminal according to the embodiment. 図7は、実施形態に係るユーザ端末の正解判定動作の一例を示すフローチャートである。FIG. 7 is a flowchart illustrating an example of a correct answer determination operation of the user terminal according to the embodiment. 図8は、実施形態に係るゲームプログラムによって実現されるユーザ端末に表示される画像の例を示す図である。FIG. 8 is a diagram showing an example of an image displayed on a user terminal realized by a game program according to an embodiment.

以下、図面を参照してこの発明に係わる実施形態を説明する。なお、以降、説明済みの要素と同一又は類似の要素には同一又は類似の符号を付し、重複する説明については基本的に省略する。例えば、複数の同一又は類似の要素が存在する場合に、各要素を区別せずに説明するために共通の符号を用いることがあり、各要素を区別して説明するために当該共通の符号に加えて枝番号を用いることもある。 Below, an embodiment of the present invention will be described with reference to the drawings. In the following, elements that are the same or similar to elements already described will be given the same or similar reference numerals, and duplicated descriptions will generally be omitted. For example, when there are multiple identical or similar elements, a common reference numeral may be used to describe each element without distinguishing between them, and a subnumber may be used in addition to the common reference numeral to describe each element with distinction between them.

ゲームプログラムは、ゲームのプレイヤ(以下、「ユーザ」という)によって使用される端末装置(以下、「ユーザ端末」という)上でゲームを実現させるためのプログラムである。以下では、ゲームを実現させるためのプログラムを、一般的なコンピュータの機能を実現させるためのプログラムと区別して、ゲームプログラムと呼ぶ。 A game program is a program for running a game on a terminal device (hereafter referred to as a "user terminal") used by a game player (hereafter referred to as a "user"). Hereinafter, a program for running a game will be called a game program to distinguish it from a program for running general computer functions.

ゲームプログラムによって実現されるゲームは、例えば、パズルゲームである。ゲームプログラムによって実現されるゲームは、ロールプレイングゲーム(RPG)、アクションゲーム、アドベンチャーゲーム、シミュレーションゲーム、育成ゲーム、シューティングゲーム、スポーツゲーム、パズルゲーム等、あらゆる分野のゲームの一部(ミニゲーム、クエスト、イベント等)のパズルゲームであり得る。 The game realized by the game program is, for example, a puzzle game. The game realized by the game program can be a puzzle game that is part of any type of game (mini-game, quest, event, etc.), such as a role-playing game (RPG), action game, adventure game, simulation game, training game, shooting game, sports game, puzzle game, etc.

ゲームプログラムは、ゲーム空間内に種々のオブジェクトを配置し、ゲームを実現し得る。ゲーム空間は、ゲームプログラムによって実現される種々のオブジェクトを配置するための空間である。ゲーム空間は、3次元(3D)で表現された空間であるものとして説明するが、2次元(2D)で表現された空間であってもよい。ゲーム空間は、仮想的な種々のオブジェクトを配置するための仮想空間の一例である。仮想空間は、3次元で表現された空間であってもよいし、2次元で表現された空間であってもよい。 A game program can place various objects in a game space to realize a game. The game space is a space for placing various objects realized by the game program. The game space will be described as a space expressed in three dimensions (3D), but it may also be a space expressed in two dimensions (2D). The game space is an example of a virtual space for placing various virtual objects. The virtual space may be a space expressed in three dimensions, or may be a space expressed in two dimensions.

ゲームプログラムは、ゲーム空間内に少なくとも1つのゲートオブジェクトを配置し、ゲートオブジェクトから移動する移動オブジェクトを表示するゲームであって、ゲーム空間内に配置されたユーザオブジェクトをユーザの操作に従って移動するゲームを実現する。ゲームは、少なくとも一つの問題を含む。ゲートオブジェクトは、問題毎に設定されてもよい。ゲームに1つの問題のみが設定される場合、「問題」の表記は「ゲーム」と読み替えてもよい。ゲームに複数のユーザオブジェクトが設定される場合、複数のユーザオブジェクトのそれぞれは、各ユーザオブジェクトと関連付けられた各ユーザにより操作されてもよい。 The game program realizes a game in which at least one gate object is placed in a game space, and a moving object that moves from the gate object is displayed, and a user object placed in the game space is moved according to a user's operation. The game includes at least one problem. A gate object may be set for each problem. If only one problem is set in the game, the word "problem" may be read as "game". If multiple user objects are set in the game, each of the multiple user objects may be operated by a user associated with each user object.

ゲームは、ゲーム空間内に配置された配列オブジェクト内の複数のセルのうち、ゲートオブジェクトから移動する移動オブジェクトが通過しない安全セルにユーザがユーザオブジェクトを制限時間内に移動させるものである。ゲームは、複数のユーザが同時にプレイする場合、各ユーザが各ユーザオブジェクトを移動することができるものである。 The game involves a user moving a user object within a time limit to a safe cell among multiple cells in an array object arranged in a game space, which the moving object moving from the gate object will not pass through. When multiple users are playing the game simultaneously, each user can move their own user object.

種々のオブジェクトは、キャラクタのオブジェクトを含む。キャラクタは、人間や擬人化キャラクタ等のキャラクタに限られるものではなく、任意のキャラクタであってもよい。キャラクタのオブジェクトは、動きのあるオブジェクトである。キャラクタのオブジェクトは、例えば、ゲーム空間内を移動するオブジェクトである。キャラクタのオブジェクトは、ユーザが操作可能なキャラクタのオブジェクトを含む。キャラクタのオブジェクトは、ユーザが操作不可能なNPC(Non Player Character)のオブジェクトを含む。種々のオブジェクトは、背景オブジェクトを含む。背景オブジェクトは、ゲームの背景を構成するオブジェクトである。背景オブジェクトは、ユーザが操作可能な背景オブジェクトを含む。背景オブジェクトは、ユーザが操作不可能であるが、キャラクタのオブジェクトが操作可能な背景のオブジェクトを含む。背景オブジェクトは、ユーザが操作不可能、かつ、キャラクタのオブジェクトが操作不可能な背景のオブジェクトを含む。種々のオブジェクトは、種々のUI(User Interface)オブジェクトを含む。UIオブジェクトは、ユーザの指示を入力可能にするオブジェクトを含む。UIオブジェクトは、ユーザへ情報を示すオブジェクトを含む。 The various objects include character objects. The characters are not limited to characters such as human or anthropomorphized characters, and may be any character. The character objects are objects that move. The character objects are, for example, objects that move within a game space. The character objects include character objects that can be operated by the user. The character objects include non-player character (NPC) objects that cannot be operated by the user. The various objects include background objects. The background objects are objects that make up the background of the game. The background objects include background objects that can be operated by the user. The background objects include background objects that cannot be operated by the user but can be operated by the character objects. The background objects include background objects that cannot be operated by the user and cannot be operated by the character objects. The various objects include various UI (User Interface) objects. The UI objects include objects that allow the user to input instructions. The UI objects include objects that show information to the user.

種々のオブジェクトは、配列オブジェクトを含む。配列オブジェクトは、第1の方向と第1の方向に直交する第2の方向により規定された複数のセルにより構成される。セルは、配列オブジェクトにおいて複数のオブジェクトの各々が配置される区分けされた領域である。各セルは、例えば、矩形のセルである。ここでは、各セルは正方形で構成されるものとする。配列オブジェクトは、例えば、複数のセルをグリッド状に配列するオブジェクトである。配列オブジェクトは、複数のオブジェクトを配列するオブジェクトである。セルは、マス目、又はパネルともいう。複数のオブジェクトの各々が配置されるセルは、オブジェクトの位置ともいう。複数のオブジェクトは、ユーザが操作不可能な固定オブジェクト、及びユーザが操作可能なユーザオブジェクトを含む。固定オブジェクトは、移動オブジェクトの移動を制御するオブジェクトである。移動オブジェクトは、ゲートオブジェクトから移動するオブジェクトである。ゲートオブジェクトは、配列オブジェクトの外縁の一部を構成するセルのうち1つのセルに関連付けられて配置されるオブジェクトである。配列オブジェクトの外縁の一部を構成するセルは、末端セルと通常セルを含む。末端セルは、移動オブジェクトの移動方向に沿って隣接するセルを有しないセルを指す。配列オブジェクトの外縁の一部を構成するセルのうち、末端セルでないセルは通常セルであるとする。通常セルは、固定オブジェクト又はユーザオブジェクトが配置されていない配列オブジェクト内のセルを指す。ゲートオブジェクトは、移動オブジェクトのスタート地点である。ゲートオブジェクトが関連付けられるセルは、スタートセルともいう。ゲートオブジェクトは、ゲートオブジェクトの位置情報、及びゲートオブジェクトから移動オブジェクトが移動する方向を示す情報と関連付けられる。ゲートオブジェクトの位置情報は、ゲートオブジェクトが関連付けられるスタートセルの位置情報を含む。移動オブジェクトは、例えば、セルの一辺から入り他の一辺から出る光線である。固定オブジェクトは、例えば、通過オブジェクト、及び方向オブジェクトを含む。固定オブジェクトは、ゲームに設定された配列オブジェクト内のセルに固定される。通過オブジェクトは、移動オブジェクトを通過させるオブジェクトである。通過オブジェクトは、移動オブジェクトの移動方向を維持する。方向オブジェクトは、移動オブジェクトが移動する移動方向を変更するオブジェクトである。方向オブジェクトは、例えば、光線を反射する反射板である。ユーザオブジェクトは、ゲームに設定された配列オブジェクト内の位置に配置される。ユーザオブジェクトの位置は、ユーザの操作に基づいて変更され得る。配列オブジェクトは少なくとも1つのユーザオブジェクトを含む。固定オブジェクトは、上述のオブジェクトに限られず、ゲームに設定された他のオブジェクトを含んでもよい。 The various objects include an array object. The array object is composed of a plurality of cells defined by a first direction and a second direction perpendicular to the first direction. A cell is a partitioned area in which each of the plurality of objects is arranged in the array object. Each cell is, for example, a rectangular cell. Here, each cell is assumed to be composed of a square. The array object is, for example, an object that arranges a plurality of cells in a grid shape. The array object is an object that arranges a plurality of objects. The cell is also called a grid or a panel. The cell in which each of the plurality of objects is arranged is also called the position of the object. The plurality of objects include fixed objects that cannot be operated by the user and user objects that can be operated by the user. The fixed object is an object that controls the movement of a moving object. The moving object is an object that moves from a gate object. The gate object is an object that is associated with one of the cells that constitute a part of the outer edge of the array object and is arranged. The cells that constitute a part of the outer edge of the array object include end cells and normal cells. The end cell refers to a cell that does not have an adjacent cell along the movement direction of the moving object. Among the cells constituting a part of the outer edge of the array object, cells that are not terminal cells are considered to be normal cells. A normal cell refers to a cell in an array object in which a fixed object or a user object is not placed. A gate object is a starting point of a moving object. A cell to which a gate object is associated is also called a start cell. A gate object is associated with position information of the gate object and information indicating a direction in which a moving object moves from the gate object. The position information of the gate object includes position information of a start cell to which the gate object is associated. A moving object is, for example, a ray of light that enters from one side of a cell and exits from the other side. Fixed objects include, for example, a passing object and a direction object. A fixed object is fixed to a cell in an array object set in a game. A passing object is an object that allows a moving object to pass. A passing object maintains the moving direction of a moving object. A direction object is an object that changes the moving direction in which a moving object moves. A direction object is, for example, a reflector that reflects a ray of light. A user object is placed at a position in an array object set in a game. The position of a user object can be changed based on a user's operation. The array object includes at least one user object. The fixed object is not limited to the above-mentioned objects, but may include other objects set in the game.

種々のオブジェクトは、テキストオブジェクトを含んでもよい。テキストオブジェクトは、テキスト情報を含むオブジェクトである。テキスト情報は、ゲームの進行に応じて表示されるテキスト情報を含む。テキスト情報は、例えば、指示文、又は正解を示すメッセージ等である。テキストオブジェクトは、ユーザが操作不可能なオブジェクトを含む。種々のオブジェクトは、インジケータを含んでもよい。インジケータは、時間に関する情報を含むオブジェクトである。時間に関する情報は、制限時間、及び残り時間等を含む。インジケータは、ユーザが操作不可能なオブジェクトを含む。種々のオブジェクトは、上述のオブジェクトの他、ゲームの進行に関連するゲーム進行オブジェクトを含む。 The various objects may include text objects. Text objects are objects that include text information. The text information includes text information that is displayed according to the progress of the game. The text information is, for example, instructions or a message indicating the correct answer. The text objects include objects that the user cannot operate. The various objects may include indicators. The indicators are objects that include information related to time. The information related to time includes a time limit, a time remaining, and the like. The indicators include objects that the user cannot operate. The various objects include the above-mentioned objects as well as game progress objects related to the progress of the game.

ゲームプログラムは、1台のユーザ端末でローカルにゲームを実現させるゲームプログラム、ユーザ端末とサーバに協働してゲームを実現させるゲームプログラム、サーバ経由で又はサーバを介さず複数のユーザ端末に協働してゲームを実現させるゲームプログラム等であり得る。以下では単なる一例として、サーバがゲームプログラムを包括的に管理し、ユーザ端末からの要求に応じてゲームプログラム及び関連データ等を送信し、実際のゲーム進行は主にユーザ端末において実現されるゲームシステムについて説明する。また、以下では主に3次元のゲーム空間と3Dのオブジェクトで表現されるゲームに関して説明するが、これに限られるものではなく、本実施形態は2次元のゲーム空間と2Dのオブジェクトで表現されるゲームにも適用可能である。 The game program may be a game program that realizes a game locally on one user terminal, a game program that realizes a game in cooperation with a user terminal and a server, or a game program that realizes a game in cooperation with multiple user terminals with or without a server. As a mere example, the following describes a game system in which a server comprehensively manages game programs and transmits game programs and related data in response to requests from user terminals, and the actual game progress is realized mainly on user terminals. In addition, the following describes a game that is mainly expressed in a three-dimensional game space and 3D objects, but is not limited to this and this embodiment can also be applied to a game that is expressed in a two-dimensional game space and 2D objects.

(1)構成
(1-1)ゲームシステム
図1は、第1の実施形態に係るゲームプログラムに関連するゲームシステム1の全体構成の一例を示す図である。
ゲームシステム1は、複数のユーザ端末100と、サーバ200とを含む。各ユーザ端末100は、サーバ200との間でネットワークNWを介して通信可能である。サーバ200には、任意の数のユーザ端末100が接続可能であるが、簡単のために1つのユーザ端末100についてのみ詳細な構成を図示し説明する。
(1) Configuration (1-1) Game System FIG. 1 is a diagram showing an example of the overall configuration of a game system 1 related to a game program according to a first embodiment.
The game system 1 includes a plurality of user terminals 100 and a server 200. Each user terminal 100 is capable of communicating with the server 200 via a network NW. Any number of user terminals 100 can be connected to the server 200, but for simplicity, the detailed configuration of only one user terminal 100 will be illustrated and described.

ネットワークNWは、例えばインターネットであり、LAN(Local Area Network)、WAN(Wide Area Network)、移動通信網、有線電話網、FTTH(Fiber To The Home)、CATV(Cable Television)網等のアクセス網を含み得る。 The network NW is, for example, the Internet, and may include access networks such as a LAN (Local Area Network), a WAN (Wide Area Network), a mobile communication network, a wired telephone network, an FTTH (Fiber To The Home), and a CATV (Cable Television) network.

ユーザ端末100は、ゲームをプレイするユーザによって使用される端末である。ユーザ端末100は、ゲームプログラムを実行することによりゲームを実現させ、ゲーム進行に応じた表示データに基づく画像を表示する。画像は、ゲーム空間に配置された複数のオブジェクトを描画した画像である。ユーザ端末100は、例えば、スマートフォン、タブレット端末、ノート型パーソナルコンピュータ等の携帯端末である。ユーザ端末100は、デスクトップ型パーソナルコンピュータのような据置型コンピュータであってもよい。ユーザ端末100はまた、ゲームプレイに適した専用のゲーム端末であってもよい。以下では一例としてユーザ端末100が、タッチスクリーンを備えるスマートフォンであるものとして説明する。 The user terminal 100 is a terminal used by a user who plays a game. The user terminal 100 executes a game program to realize the game, and displays images based on display data according to the progress of the game. The images are images that depict multiple objects arranged in a game space. The user terminal 100 is, for example, a mobile terminal such as a smartphone, a tablet terminal, or a notebook personal computer. The user terminal 100 may be a stationary computer such as a desktop personal computer. The user terminal 100 may also be a dedicated game terminal suitable for playing a game. In the following, as an example, the user terminal 100 will be described as being a smartphone equipped with a touch screen.

サーバ200は、例えばゲーム開発業者等によって運営及び管理される装置である。サーバ200は、ゲームプログラム及びユーザ情報を包括的に管理し、ユーザ端末100におけるゲームの進行を支援する。サーバ200は、ワークステーションやパーソナルコンピュータ等の汎用コンピュータであってよい。例えばサーバ200は、ネットワークNWを介してユーザ端末100からユーザ情報や種々の要求を受け付け、ネットワークNWを介してユーザ端末100にゲームプログラムや関連データを送信する。サーバ200は、同時に複数のユーザ端末100との間で情報の送受信が可能であり、複数のユーザ端末100におけるゲームの進行を並行して支援し得る。 The server 200 is a device operated and managed by, for example, a game developer. The server 200 comprehensively manages game programs and user information, and supports the progress of the game on the user terminal 100. The server 200 may be a general-purpose computer such as a workstation or a personal computer. For example, the server 200 accepts user information and various requests from the user terminal 100 via the network NW, and transmits game programs and related data to the user terminal 100 via the network NW. The server 200 can simultaneously send and receive information to multiple user terminals 100, and can support the progress of the game on multiple user terminals 100 in parallel.

ユーザ端末100は、サーバ200からゲームプログラム及び必要な設定データを一度に受信し、以後はサーバ200と通信することなくゲームを進行させてもよい。又はユーザ端末100は、ゲームの進行に応じて随時サーバ200と通信し、その都度必要なゲームプログラム又はデータをサーバ200から受信するようにしてもよい。 The user terminal 100 may receive the game program and necessary setting data from the server 200 at once, and thereafter proceed with the game without communicating with the server 200. Alternatively, the user terminal 100 may communicate with the server 200 as the game progresses, and receive the necessary game program or data from the server 200 each time.

(1-2)ハードウェア構成
(1-2-1)サーバ
図1に示すように、サーバ200は、ハードウェアとして、プロセッサ2001と、メモリ2002と、ストレージ2003と、通信インタフェース(通信I/F)2004と、入出力インタフェース(入出力I/F)2005とを備え、これらがバス2006を介して互いに電気的に接続される。
(1-2) Hardware Configuration (1-2-1) Server As shown in FIG. 1, the server 200 comprises, as hardware, a processor 2001, a memory 2002, a storage 2003, a communication interface (communication I/F) 2004, and an input/output interface (input/output I/F) 2005, which are electrically connected to each other via a bus 2006.

プロセッサ2001は、サーバ200全体の動作を制御する。プロセッサ2001は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等の汎用プロセッサを含む。プロセッサ2001は、汎用プロセッサに限らず、ASIC(Application Specific Integrated Circuit)又はFPGA(Field-Programmable Gate Array)等の専用プロセッサであってもよい。 The processor 2001 controls the operation of the entire server 200. The processor 2001 includes, for example, a general-purpose processor such as a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or a GPU (Graphics Processing Unit). The processor 2001 is not limited to a general-purpose processor, and may be a dedicated processor such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array).

メモリ2002は、主記憶装置であり、ROM(Read Only Memory)及びRAM(Random Access Memory)等を含む。 Memory 2002 is a main storage device and includes ROM (Read Only Memory) and RAM (Random Access Memory), etc.

ストレージ2003は、補助記憶装置であり、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD:Solid State Drive)等の不揮発性記憶装置を含む。ストレージ2003は、プロセッサ2001により実行されるプログラムや、プログラムの実行に必要な設定データ等を記憶する。プログラムの一部は、ROMに記憶されてもよい。 Storage 2003 is an auxiliary storage device, and includes a non-volatile storage device such as a hard disk drive (HDD) or a solid state drive (SSD: Solid State Drive). Storage 2003 stores programs executed by processor 2001, setting data required for executing the programs, etc. Part of the programs may be stored in ROM.

プロセッサ2001は、ストレージ2003からプログラムを読み出してメモリ2002に展開し、展開したプログラムを解釈及び実行することによって、後述する処理機能を実現し得る。 The processor 2001 can realize the processing functions described below by reading a program from the storage 2003, expanding it in the memory 2002, and interpreting and executing the expanded program.

通信インタフェース(通信I/F)2004は、ネットワークNWを介してユーザ端末100等の外部装置と通信するためのモジュールであり、送受信のための信号処理回路、光コネクタ等を含む。通信インタフェース2004は、例えば光通信モジュールを含んでもよい。 The communication interface (communication I/F) 2004 is a module for communicating with external devices such as the user terminal 100 via the network NW, and includes a signal processing circuit for transmission and reception, an optical connector, etc. The communication interface 2004 may include, for example, an optical communication module.

入出力インタフェース(入出力I/F)2005は、キーボードやマウス等の入力装置を通じてオペレータが入力した操作データを取り込むとともに、出力データを液晶又は有機EL(Electro Luminescence)ディスプレイやスピーカ等の出力装置に出力する。 The input/output interface (input/output I/F) 2005 takes in operation data input by an operator through input devices such as a keyboard or mouse, and outputs output data to output devices such as a liquid crystal or organic EL (Electro Luminescence) display or a speaker.

(1-2-2)ユーザ端末
図1に示すように、ユーザ端末100は、ハードウェアとして、プロセッサ1001と、メモリ1002と、ストレージ1003と、センサ1004と、通信インタフェース(通信I/F)1005と、入出力インタフェース(入出力I/F)1006と、タッチスクリーン1007とを備え、これらがバス1008を介して互いに電気的に接続される。
(1-2-2) User Terminal As shown in FIG. 1, the user terminal 100 comprises, as hardware, a processor 1001, a memory 1002, a storage 1003, a sensor 1004, a communication interface (communication I/F) 1005, an input/output interface (input/output I/F) 1006, and a touch screen 1007, which are electrically connected to each other via a bus 1008.

プロセッサ1001は、ユーザ端末100の全体の動作を制御する。プロセッサ1001は、例えば、CPU、MPU、GPU等の汎用プロセッサを含む。プロセッサ1001もまた、汎用プロセッサに限らず、ASIC又はFPGA等の専用プロセッサであってもよい。 The processor 1001 controls the overall operation of the user terminal 100. The processor 1001 includes, for example, a general-purpose processor such as a CPU, an MPU, or a GPU. The processor 1001 is also not limited to a general-purpose processor, and may be a dedicated processor such as an ASIC or an FPGA.

プロセッサ1001は、ストレージ1003からプログラムを読み出してメモリ1002に展開し、展開したプログラムを解釈及び実行することによって、後述する処理機能を実現し得る。 The processor 1001 can realize the processing functions described below by reading a program from the storage 1003, expanding it in the memory 1002, and interpreting and executing the expanded program.

メモリ1002は、主記憶装置であり、ROM及びRAM等を含む。 Memory 1002 is a main storage device and includes ROM, RAM, etc.

ストレージ1003は、補助記憶装置であり、内蔵又は外付けの半導体メモリ(例えばフラッシュメモリ)等を含む。ストレージ1003は、プロセッサ1001により実行されるプログラムや、プログラムの実行に必要な設定データ等を記憶する。プログラムの一部は、ROMに記憶されてもよい。 Storage 1003 is an auxiliary storage device, and includes built-in or external semiconductor memory (e.g., flash memory), etc. Storage 1003 stores programs executed by processor 1001, setting data required for executing the programs, etc. Part of the programs may be stored in ROM.

センサ1004は、例えば、イメージセンサ、加速度センサ、角速度センサ、地磁気センサ、GPSセンサ、近接センサ、環境光センサ等である。センサ1004は、感知された種々の情報を電気信号に変換し、出力する。 The sensor 1004 is, for example, an image sensor, an acceleration sensor, an angular velocity sensor, a geomagnetic sensor, a GPS sensor, a proximity sensor, an ambient light sensor, etc. The sensor 1004 converts various sensed information into an electrical signal and outputs it.

通信インタフェース(通信I/F)1005は、ネットワークNWを介してサーバ200等の外部装置と通信するためのモジュールであり、送受信のための信号処理回路、アンテナ、LAN端子等を含む。通信インタフェース1005は、例えば、移動通信用のモジュール、無線/有線LAN用のモジュール、近距離無線通信用のモジュール等を含み得る。 The communication interface (communication I/F) 1005 is a module for communicating with external devices such as the server 200 via the network NW, and includes a signal processing circuit for transmission and reception, an antenna, a LAN terminal, etc. The communication interface 1005 may include, for example, a module for mobile communication, a module for wireless/wired LAN, a module for short-range wireless communication, etc.

入出力インタフェース(入出力I/F)1006は、外部装置から入力データを取り込むとともに、出力データを外部装置に出力する。入出力インタフェース1006は、例えば、ユーザ端末100の物理ボタンや、ユーザ端末100に内蔵されたスピーカ、USB(Universal Serial Bus)ポート等を含み得る。 The input/output interface (input/output I/F) 1006 takes in input data from an external device and outputs output data to an external device. The input/output interface 1006 may include, for example, a physical button on the user terminal 100, a speaker built into the user terminal 100, a USB (Universal Serial Bus) port, etc.

タッチスクリーン1007は、入力部1071と、表示部1072とを備え、ユーザの入力操作を受け付けるとともにユーザに表示データに基づく画像を提示する機能を有する。 The touch screen 1007 includes an input unit 1071 and a display unit 1072, and has the function of accepting input operations from the user and presenting an image based on display data to the user.

入力部1071は、例えば静電容量式や抵抗膜式のタッチパネルである。入力部1071は、ユーザが指やタッチペン(スタイラスペン)で触れた接触位置を検知し、接触位置の座標情報を生成する。 The input unit 1071 is, for example, a capacitive or resistive touch panel. The input unit 1071 detects the contact position of the user's finger or touch pen (stylus pen) and generates coordinate information of the contact position.

表示部1072は、例えば液晶ディスプレイや有機ELディスプレイであり、表示データに基づく種々の画像を表示する。 The display unit 1072 is, for example, a liquid crystal display or an organic EL display, and displays various images based on the display data.

ユーザ端末100は、入出力インタフェース1006を介して接続される、キーボード、マウス、コントローラ等の外部入力装置からユーザの操作を受け付けることもできる。ユーザ端末100は、入出力インタフェース1006を介して接続される、メモリカード等の外部記憶装置からゲームプログラム及び関連データを取得してもよい。ユーザ端末100は、入出力インタフェース1006を介して接続される、ディスプレイやスピーカ等の外部出力装置に表示情報を出力することもできる。ユーザ端末100は、入出力インタフェース1006を介して接続される、メモリカード等の外部記憶装置をストレージ1003として使用してもよい。ユーザ端末100はまた、センサ1004からの信号をユーザの操作として受け付けてもよい。 The user terminal 100 can also accept user operations from an external input device such as a keyboard, mouse, or controller connected via the input/output interface 1006. The user terminal 100 can also acquire game programs and related data from an external storage device such as a memory card connected via the input/output interface 1006. The user terminal 100 can also output display information to an external output device such as a display or speaker connected via the input/output interface 1006. The user terminal 100 can use an external storage device such as a memory card connected via the input/output interface 1006 as storage 1003. The user terminal 100 can also accept signals from the sensor 1004 as user operations.

(1-3)機能構成
(1-3-1)サーバ
図2は、図1に示したゲームシステム1におけるサーバ200の機能構成の一例を示す図である。なお、一般的なコンピュータの機能構成及びゲームの実現に必要な公知の構成については、図示及び説明を省略する。
(1-3) Functional Configuration (1-3-1) Server Fig. 2 is a diagram showing an example of the functional configuration of the server 200 in the game system 1 shown in Fig. 1. Note that illustrations and descriptions of the functional configuration of a general computer and well-known configurations necessary to realize a game are omitted.

サーバ200は、各ユーザ端末100と通信し、ユーザ端末100におけるゲームの進行を支援する機能を有する。例えば、サーバ200は、各ユーザ端末100からの要求に応じて、各ユーザ端末100にゲームプログラムや、ゲームプログラムの実行に必要な関連データ等を送信する機能を有する。
サーバ200は、制御部210と、記憶部220とを備える。
The server 200 has a function of communicating with each user terminal 100 and supporting the progress of the game in the user terminal 100. For example, the server 200 has a function of transmitting a game program, related data required for executing the game program, and the like to each user terminal 100 in response to a request from each user terminal 100.
The server 200 includes a control unit 210 and a storage unit 220 .

記憶部220は、ストレージ2003により実現され得る。記憶部220は、ゲームプログラム記憶部221と、ゲーム情報記憶部222と、ユーザ情報データベース(DB)223とを備える。 The memory unit 220 may be realized by the storage 2003. The memory unit 220 includes a game program memory unit 221, a game information memory unit 222, and a user information database (DB) 223.

ゲームプログラム記憶部221は、ゲームプログラムを記憶する。 The game program storage unit 221 stores the game program.

ゲーム情報記憶部222は、ゲームプログラムを実行する際に参照される種々のゲーム情報を記憶する。 The game information storage unit 222 stores various game information that is referenced when executing a game program.

ユーザ情報データベース(DB)223は、各ユーザ端末100に関連付けられるユーザに関する情報を記憶するデータベースであり、例えば、ユーザアカウント情報を記憶する。 The user information database (DB) 223 is a database that stores information about users associated with each user terminal 100, for example, user account information.

制御部210は、プロセッサ2001及びメモリ2002により実現され得る。制御部210は、サーバ200全体の機能を制御する。制御部210は、ゲームプログラム記憶部221に記憶されたゲームプログラムを実行することにより、受信制御部211、送信制御部212及びゲーム進行部213として機能し得る。 The control unit 210 may be realized by a processor 2001 and a memory 2002. The control unit 210 controls the overall functions of the server 200. The control unit 210 may function as a reception control unit 211, a transmission control unit 212, and a game progression unit 213 by executing a game program stored in the game program storage unit 221.

受信制御部211は、各ユーザ端末100から、ユーザ情報、プログラム又は関連データの送信要求、各ユーザ端末100におけるゲームの進行状況に関する情報等を受け付ける。 The reception control unit 211 receives, from each user terminal 100, requests to send user information, programs or related data, information regarding the progress of the game on each user terminal 100, etc.

送信制御部212は、各ユーザ端末100に、要求されたプログラム又は関連データ、あるいは更新されたプログラム等を送信する。送信制御部212はまた、各ユーザ端末100にゲームの進行状況に関する情報の送信を要求し得る。 The transmission control unit 212 transmits the requested program or related data, or an updated program, etc., to each user terminal 100. The transmission control unit 212 may also request each user terminal 100 to transmit information regarding the progress of the game.

ゲーム進行部213は、ゲームプログラムに記述されたコードに従って、ゲーム情報記憶部222に記憶されたゲーム情報及びユーザ情報データベース223に記憶されたアカウント情報を参照し、各ユーザ端末100におけるゲームの進行状況を管理する。ゲーム進行部213はまた、各ユーザ端末100からの情報収集の要否や、各ユーザ端末100へのデータ送信の要否を判定し得る。 The game progression unit 213 refers to the game information stored in the game information storage unit 222 and the account information stored in the user information database 223 according to the code written in the game program, and manages the progress of the game on each user terminal 100. The game progression unit 213 can also determine whether or not it is necessary to collect information from each user terminal 100, and whether or not it is necessary to transmit data to each user terminal 100.

例えば、制御部210は、受信制御部211により、ユーザ端末100からゲームプログラムの送信要求を受け付け、ゲーム進行部213により、当該ユーザ端末100に送信すべきゲームプログラムと関連データを決定し、送信制御部212により、決定されたゲームプログラム及び関連データをユーザ端末100に送信する。 For example, the control unit 210 receives a request to transmit a game program from the user terminal 100 via the reception control unit 211, determines the game program and related data to be transmitted to the user terminal 100 via the game progression unit 213, and transmits the determined game program and related data to the user terminal 100 via the transmission control unit 212.

(1-3-2)ユーザ端末
図3は、図1に示したゲームシステム1において使用され得るユーザ端末100の機能構成の一例を示す図である。なお、一般的なコンピュータの機能構成及びゲームの実現に必要な公知の構成については、図示及び説明を省略する。
ユーザ端末100は、制御部110と、記憶部120とを含む。
(1-3-2) User Terminal Fig. 3 is a diagram showing an example of the functional configuration of a user terminal 100 that can be used in the game system 1 shown in Fig. 1. Note that illustrations and descriptions of the functional configuration of a general computer and well-known configurations necessary to realize a game are omitted.
The user terminal 100 includes a control unit 110 and a storage unit 120 .

記憶部120は、ストレージ1003により実現され得る。記憶部120は、ゲームプログラム記憶部121と、ゲーム情報記憶部122とを含む。 The memory unit 120 may be realized by the storage 1003. The memory unit 120 includes a game program memory unit 121 and a game information memory unit 122.

ゲームプログラム記憶部121は、ゲームプログラムを記憶する。 The game program storage unit 121 stores the game program.

ゲーム情報記憶部122は、ゲームプログラムを実行する際に参照される種々のゲーム情報を記憶する。ゲーム情報は、例えば、ゲーム空間に配置されるオブジェクトの情報を含む。オブジェクトの情報は、オブジェクトの位置情報を含み得る。ゲーム情報記憶部122は、オブジェクトデータ1221、オブジェクトタイプテーブル1222、配列オブジェクト管理情報1223、制限時間情報1225、及びクリア条件情報1226を含む。ゲーム情報記憶部122は、ゲーム情報を表示する表示データを生成する際に参照される画像、音声及び音楽等の表示情報を記憶する。 The game information storage unit 122 stores various game information that is referenced when executing a game program. The game information includes, for example, information about objects placed in the game space. The object information may include object position information. The game information storage unit 122 includes object data 1221, an object type table 1222, array object management information 1223, time limit information 1225, and clear condition information 1226. The game information storage unit 122 stores display information such as images, sounds, and music that is referenced when generating display data that displays the game information.

オブジェクトデータ1221は、配列オブジェクト、ゲートオブジェクト、固定オブジェクト、ユーザオブジェクト、移動オブジェクト、及びゲーム進行オブジェクトを構成するデータである。 Object data 1221 is data that constitutes array objects, gate objects, fixed objects, user objects, moving objects, and game progress objects.

オブジェクトタイプテーブル1222は、各オブジェクトを識別するオブジェクトタイプと、各オブジェクトに設定された移動オブジェクトの制御態様を規定するデータを格納するテーブルである。移動オブジェクトの制御態様は、各オブジェクトが配置されたセルにおける移動オブジェクトの制御態様である。オブジェクトタイプテーブル1222は、末端セルにおける移動オブジェクトの制御態様を規定するデータを格納する。オブジェクトタイプテーブル1222のオブジェクトタイプで示される末端セルは、固定オブジェクト又はユーザオブジェクトが配置されていない末端セルを指す。オブジェクトタイプテーブル1222は、通常セルにおける移動オブジェクトの制御態様を規定するデータを格納する。オブジェクトタイプテーブル1222のオブジェクトタイプで示される通常セルは、固定オブジェクト又はユーザオブジェクトが配置されていない配列オブジェクト内のセルを指す。通常セルは、末端セルを含まない。移動オブジェクトの制御態様は、通過、及び方向変更を含む。「通過」は、移動オブジェクトの移動方向を維持したまま通過させる。例えば、「通過」は以下のような制御を含む。移動オブジェクトがセルの上辺から入ってきた場合、「通過」は、下辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの下辺から入ってきた場合、「通過」は、上辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの右辺から入ってきた場合、「通過」は、左辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの左辺から入ってきた場合、「通過」は、右辺から出る態様で移動オブジェクトを制御する。 The object type table 1222 is a table that stores data that specifies the object type that identifies each object and the control mode of the moving object set for each object. The control mode of the moving object is the control mode of the moving object in the cell in which each object is placed. The object type table 1222 stores data that specifies the control mode of the moving object in the terminal cell. The terminal cell indicated by the object type in the object type table 1222 refers to the terminal cell in which no fixed object or user object is placed. The object type table 1222 stores data that specifies the control mode of the moving object in the normal cell. The normal cell indicated by the object type in the object type table 1222 refers to a cell in an array object in which no fixed object or user object is placed. The normal cell does not include the terminal cell. The control mode of the moving object includes passing and direction change. "Passing" passes the moving object while maintaining the moving direction. For example, "passing" includes the following controls. If the moving object enters from the top side of the cell, "passing" controls the moving object in a manner that exits from the bottom side. If a moving object enters from the bottom edge of a cell, "Pass" controls the moving object to exit from the top edge. If a moving object enters from the right edge of a cell, "Pass" controls the moving object to exit from the left edge. If a moving object enters from the left edge of a cell, "Pass" controls the moving object to exit from the right edge.

「方向変更」は、移動オブジェクトの移動方向を変更することを含む。「方向変更」は、移動オブジェクトを反射することを含む。例えば、「方向変更」は固定オブジェクトのオブジェクトタイプに応じて異なる以下のような制御を含む。移動オブジェクトがセルの上辺から入ってきた場合、「方向変更」は、左辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの上辺から入ってきた場合、「方向変更」は、右辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの右辺から入ってきた場合、「方向変更」は、上辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの右辺から入ってきた場合、「方向変更」は、下辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの左辺から入ってきた場合、「方向変更」は、上辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの左辺から入ってきた場合、「方向変更」は、下辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの下辺から入ってきた場合、「方向変更」は、左辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの下辺から入ってきた場合、「方向変更」は、移動オブジェクトを右辺から出る態様で制御する。「方向変更」は、移動オブジェクトを停止する。停止は、移動オブジェクトの移動方向を逆方向に変えることを含む。 "Direction change" includes changing the direction of movement of a moving object. "Direction change" includes reflecting a moving object. For example, "Direction change" includes the following controls that differ depending on the object type of a fixed object: If a moving object enters from the top edge of a cell, "Direction change" controls the moving object to exit from the left edge. If a moving object enters from the top edge of a cell, "Direction change" controls the moving object to exit from the right edge. If a moving object enters from the right edge of a cell, "Direction change" controls the moving object to exit from the top edge. If a moving object enters from the right edge of a cell, "Direction change" controls the moving object to exit from the bottom edge. If a moving object enters from the left edge of a cell, "Direction change" controls the moving object to exit from the top edge. If a moving object enters from the left edge of a cell, "Direction change" controls the moving object to exit from the bottom edge. If a moving object enters from the bottom edge of a cell, "Direction change" controls the moving object to exit from the left edge. If a moving object enters the cell from the bottom edge, "change direction" controls the moving object to exit from the right edge. "change direction" stops the moving object. Stopping involves changing the moving object's direction of movement to the opposite direction.

固定オブジェクトの種類は、ゲームに含まれる問題毎に設定されてもよい。オブジェクトタイプテーブル1222の構成例については後述する。 The type of fixed object may be set for each question included in the game. An example of the configuration of the object type table 1222 will be described later.

配列オブジェクト管理情報1223は、配列オブジェクトを構成する複数のセルを管理する管理情報である。配列オブジェクト管理情報1223は、複数のセルの位置情報と各セルに配置されるオブジェクトの情報を含む。配列オブジェクト管理情報1223は、各セルの位置情報と配置されるオブジェクトの情報を対応付けて管理する。セルの位置情報は、各セルを識別するセル番号により示されてもよい。セルの位置情報は、各セルの位置を示す座標により示されてもよい。オブジェクトの情報は、各オブジェクトを識別するオブジェクトタイプを含む。オブジェクトタイプは、1以上の固定オブジェクト及びユーザオブジェクトを識別するオブジェクトタイプを含む。配列オブジェクト管理情報1223は、後述するオブジェクト処理部115の処理に応じて更新される。 Array object management information 1223 is management information that manages multiple cells that make up an array object. Array object management information 1223 includes position information of multiple cells and information on objects placed in each cell. Array object management information 1223 manages the position information of each cell in association with information on the objects placed. The position information of a cell may be indicated by a cell number that identifies each cell. The position information of a cell may be indicated by coordinates that indicate the position of each cell. The object information includes an object type that identifies each object. The object type includes an object type that identifies one or more fixed objects and user objects. Array object management information 1223 is updated in accordance with the processing of object processing unit 115, which will be described later.

移動オブジェクト管理情報1224は、配列オブジェクトの各セルにおける移動オブジェクトの制御態様を管理する管理情報である。移動オブジェクト管理情報1224は、配列オブジェクトの各セルの位置情報と各セルにおける移動オブジェクトの制御態様を対応付けて記憶する。移動オブジェクトは、移動オブジェクト管理情報1224に従って配列オブジェクト上を移動する。移動オブジェクト管理情報1224は、後述するオブジェクト処理部115の処理に応じて更新される。 The moving object management information 1224 is management information that manages the control mode of the moving object in each cell of the array object. The moving object management information 1224 stores the position information of each cell of the array object and the control mode of the moving object in each cell in association with each other. The moving object moves on the array object according to the moving object management information 1224. The moving object management information 1224 is updated according to the processing of the object processing unit 115, which will be described later.

制限時間情報1225は、制限時間、及び残り時間に関するデータである。制限時間は、例えば、10秒、20秒、又は30秒等の時間である。残り時間は、制限時間からユーザがゲームを開始してからの経過時間を引いた時間である。制限時間は、ゲームに含まれる問題毎に設定されてもよい。制限時間は、ゲームプログラムに従い予め設定されてもよく、適宜更新されてもよい。 The time limit information 1225 is data related to the time limit and the remaining time. The time limit is, for example, 10 seconds, 20 seconds, or 30 seconds. The remaining time is the time limit minus the elapsed time since the user started the game. The time limit may be set for each question included in the game. The time limit may be set in advance according to the game program, or may be updated as appropriate.

クリア条件情報1226は、ゲームをクリアするためのクリア条件に関するデータである。クリア条件は、少なくとも一つのユーザオブジェクトの位置が安全セルの位置と一致することを含む。少なくとも一つのユーザオブジェクトの位置が安全セルの位置と一致することは、少なくとも一つのユーザオブジェクトの位置が安全セルの位置に含まれることを含む。クリア条件は、すべてのユーザオブジェクトの位置が安全セルの位置と一致することを含む。安全セルは、配列オブジェクト内の複数のセルのうち、移動オブジェクトが通過しないセルである。移動オブジェクトが通過しないセルは、移動オブジェクトが表示されないセルに対応する。クリア条件を満たすことは、ゲームをクリアすることに対応する。ゲームをクリアすることは、ユーザオブジェクトの位置が正解であることに対応する。ゲームに複数のユーザオブジェクトが設定される場合、ユーザオブジェクト毎にクリア条件が判定される。クリア条件の判定は、正解の判定を含む。ゲームに複数の問題が含まれる場合、問題毎に正解の判定をしてもよい。その場合、複数の問題に対する正解の判定に基づいてゲームのクリア条件の判定をしてもよい。 The clear condition information 1226 is data on the clear condition for clearing the game. The clear condition includes that the position of at least one user object matches the position of a safe cell. The match of the position of at least one user object with the position of a safe cell includes that the position of at least one user object is included in the position of the safe cell. The clear condition includes that the positions of all user objects match the positions of the safe cells. A safe cell is a cell among multiple cells in an array object through which a moving object does not pass. A cell through which a moving object does not pass corresponds to a cell in which a moving object is not displayed. Satisfying the clear condition corresponds to clearing the game. Clearing the game corresponds to the position of the user object being correct. When multiple user objects are set in a game, the clear condition is determined for each user object. The determination of the clear condition includes the determination of the correct answer. When multiple questions are included in a game, the correct answer may be determined for each question. In that case, the clear condition of the game may be determined based on the determination of the correct answers to the multiple questions.

制御部110は、プロセッサ1001及びメモリ1002により実現され得る。制御部110は、ユーザ端末100全体の機能を制御する。制御部110は、ゲームプログラム記憶部121に記憶されたゲームプログラムを実行することにより、操作受付部111、ゲーム進行部112、仮想カメラ制御部113、表示制御部114、オブジェクト処理部115、オブジェクト操作取得部116、及び正解処理部117として機能し得る。 The control unit 110 can be realized by a processor 1001 and a memory 1002. The control unit 110 controls the overall functions of the user terminal 100. By executing a game program stored in the game program storage unit 121, the control unit 110 can function as an operation reception unit 111, a game progression unit 112, a virtual camera control unit 113, a display control unit 114, an object processing unit 115, an object operation acquisition unit 116, and a correct answer processing unit 117.

操作受付部111は、入力部1071を介して入力されたユーザの操作を受け付ける。以下では、「ユーザの操作」という表記は、入力部1071を介して入力されたユーザの操作を指すものとする。ユーザの操作は、タップ操作、ドラッグアンドドロップ操作、スワイプ操作等の入力部1071を介した種々の種類の操作を含む。タップ操作は、入力部1071において一点に接触し、短時間で接触を解除する操作の例である。接触を解除する操作は、入力部1071において接触している指を離す操作の例である。接触を解除する操作は、ユーザの操作の終了に対応する。タップ操作は、入力部1071において一点に接触することで配列オブジェクト内のユーザオブジェクトを選択する操作を含む。タップ操作は、入力部1071において一点に接触することで選択した配列オブジェクト内のユーザオブジェクトを移動する操作を含む。ドラッグアンドドロップ操作は、入力部1071において一点に接触し、接触位置を時系列に移動させる操作の例である。ドラッグアンドドロップ操作は、入力部1071において一点に接触することで配列オブジェクト内のユーザオブジェクトを選択する操作を含む。ドラッグアンドドロップ操作は、入力部1071において一点の接触位置を移動させることで配列オブジェクト内のユーザオブジェクトを移動する操作を含む。 The operation reception unit 111 receives a user operation inputted through the input unit 1071. Hereinafter, the term "user operation" refers to a user operation inputted through the input unit 1071. The user operation includes various types of operations through the input unit 1071, such as a tap operation, a drag-and-drop operation, and a swipe operation. The tap operation is an example of an operation of touching a point on the input unit 1071 and releasing the touch in a short time. The operation of releasing the touch is an example of an operation of releasing the finger touching the input unit 1071. The operation of releasing the touch corresponds to the end of the user operation. The tap operation includes an operation of selecting a user object in an array object by touching a point on the input unit 1071. The tap operation includes an operation of moving a user object in an array object selected by touching a point on the input unit 1071. The drag-and-drop operation is an example of an operation of touching a point on the input unit 1071 and moving the touch position in a time series. The drag-and-drop operation includes an operation of selecting a user object within an array object by touching a single point on the input unit 1071. The drag-and-drop operation includes an operation of moving a user object within an array object by moving the contact position of a single point on the input unit 1071.

操作受付部111は、入力部1071による接触位置の検知に基づいて、ユーザの操作の開始を検知し得る。操作受付部111は、入力部1071による接触位置の検知から非検知への遷移に基づいて、ユーザの操作の終了を検知し得る。操作受付部111は、ユーザの操作の開始に対応する接触位置からユーザの操作の終了に対応する接触位置までの座標情報を入力部1071から連続的に取得する。操作受付部111によるユーザの操作の判別は、公知の方法で行われ得る。操作受付部111は、ゲームのモードに応じて、座標情報をゲーム進行部112に送ることもあるし、仮想カメラ制御部113に送ることもあるし、オブジェクト操作取得部116に送ることもある。 The operation reception unit 111 may detect the start of a user's operation based on the detection of a contact position by the input unit 1071. The operation reception unit 111 may detect the end of a user's operation based on a transition from detection to non-detection of a contact position by the input unit 1071. The operation reception unit 111 continuously acquires coordinate information from the input unit 1071 from the contact position corresponding to the start of the user's operation to the contact position corresponding to the end of the user's operation. The operation reception unit 111 may determine the user's operation using a known method. Depending on the game mode, the operation reception unit 111 may send the coordinate information to the game progression unit 112, the virtual camera control unit 113, or the object operation acquisition unit 116.

操作受付部111は、ユーザの操作の開始に対応する接触位置からユーザの操作の終了に対応する接触位置までの座標情報に基づいて、ユーザの操作に関する情報を取得し得る。ユーザの操作に関する情報は、ユーザの操作を特定可能な情報である。ユーザの操作に関する情報は、ユーザの操作の種類を示す情報を含み得る。ユーザの操作に関する情報は、ユーザの操作の方向を示す情報を含み得る。例えば、ユーザの操作の方向は、上下左右の4方向、及び右上、右下、左上、左下の斜め4方向を含み得る。ユーザの操作に関する情報は、ユーザの操作の操作量を示す情報を含み得る。例えば、操作量は、ユーザの操作により接触位置の遷移した距離に基づく値である。ユーザの操作の操作量を示す情報は、ユーザの操作の開始に対応する接触位置とユーザの操作の終了に対応する接触位置との距離に基づく値を示す情報である。ユーザの操作の開始に対応する接触位置は、ユーザの操作開始位置ともいう。ユーザの操作の終了に対応する接触位置は、ユーザの操作終了位置、又は接触解除位置ともいう。 The operation reception unit 111 may acquire information about the user's operation based on coordinate information from the contact position corresponding to the start of the user's operation to the contact position corresponding to the end of the user's operation. The information about the user's operation is information that can identify the user's operation. The information about the user's operation may include information indicating the type of the user's operation. The information about the user's operation may include information indicating the direction of the user's operation. For example, the direction of the user's operation may include four directions, up, down, left, and right, and four diagonal directions, upper right, lower right, upper left, and lower left. The information about the user's operation may include information indicating the amount of operation of the user's operation. For example, the amount of operation is a value based on the distance of the transition of the contact position due to the user's operation. The information indicating the amount of operation of the user's operation is information indicating a value based on the distance between the contact position corresponding to the start of the user's operation and the contact position corresponding to the end of the user's operation. The contact position corresponding to the start of the user's operation is also called the user's operation start position. The contact position corresponding to the end of the user's operation is also called the user's operation end position or contact release position.

なお、ユーザは、入力部1071への接触を解除することなく、互いに逆を向く2方向へスライドさせる操作を繰り返すこともあり得る。例えば、互いに逆を向く2方向は、上方向及び下方向である。例えば、互いに逆を向く2方向は、左方向及び右方向である。例えば、互いに逆を向く2方向は、右上方向及び左下方向である。例えば、互いに逆を向く2方向は、右下方向及び左上方向である。この例では、ユーザの操作の方向を示す情報は、時系列に沿った複数の方向を示す情報を含んでもよい。ユーザの操作の操作量を示す情報は、複数の方向のそれぞれの操作量を含んでもよい。操作受付部111は、ゲームのモードに応じて、ユーザの操作に関する情報をゲーム進行部112に送ることもあるし、仮想カメラ制御部113に送ることもあるし、オブジェクト操作取得部116に送ることもある。 The user may repeat the operation of sliding in two opposite directions without releasing contact with the input unit 1071. For example, the two opposite directions are the upward and downward directions. For example, the two opposite directions are the left and right directions. For example, the two opposite directions are the upper right and the lower left directions. For example, the two opposite directions are the lower right and the upper left directions. In this example, the information indicating the direction of the user's operation may include information indicating multiple directions along a time series. The information indicating the amount of the user's operation may include the amount of operation in each of the multiple directions. Depending on the game mode, the operation reception unit 111 may send information regarding the user's operation to the game progression unit 112, to the virtual camera control unit 113, or to the object operation acquisition unit 116.

ゲーム進行部112は、ゲームプログラムに記述されたコードに従って、ゲーム情報記憶部122に記憶されたゲーム情報を参照し、ゲーム空間にオブジェクトを配置してゲームを進行させる処理を行う。ゲーム進行部112は、操作受付部111からのユーザの操作に応じた座標情報及びユーザの操作に関する情報から特定されるユーザの指示をゲームの進行に反映し得る。 The game progression unit 112 performs processing to refer to the game information stored in the game information storage unit 122 and place objects in the game space in accordance with the code written in the game program, and progress the game. The game progression unit 112 can reflect the coordinate information according to the user's operation from the operation reception unit 111 and the user's instructions identified from the information related to the user's operation in the progress of the game.

仮想カメラ制御部113は、ゲーム進行部112の指示に基づいて、仮想カメラの撮影態様を制御し得る。仮想カメラは、ゲーム空間から画像を得るための仮想的なカメラである。仮想カメラ制御部113は、仮想カメラの撮影態様を制御する。仮想カメラ制御部113は、操作受付部111からのユーザの操作に応じた座標情報又はユーザの操作に関する情報から特定されるユーザの指示に基づいて、仮想カメラの撮影態様を制御し得る。操作受付部111からのユーザの操作に応じた座標情報又はユーザの操作に関する情報から特定されるユーザの指示に基づくことは、ユーザの操作に基づくことに対応する。 The virtual camera control unit 113 may control the shooting mode of the virtual camera based on instructions from the game progression unit 112. The virtual camera is a virtual camera for obtaining images from the game space. The virtual camera control unit 113 controls the shooting mode of the virtual camera. The virtual camera control unit 113 may control the shooting mode of the virtual camera based on coordinate information in response to a user's operation from the operation reception unit 111 or a user's instruction identified from information related to the user's operation. Being based on a user's instruction identified from coordinate information in response to a user's operation from the operation reception unit 111 corresponds to being based on a user's operation.

表示制御部114は、画像を表示させる。例えば、表示制御部114は、ゲーム進行部112及び仮想カメラ制御部113と連携し、仮想カメラにより得られる画像の表示データを生成する。表示制御部114は、表示データを表示部1072に出力する。表示制御部114は、表示データに基づく画像を表示部1072に表示させる。表示制御部114は、オブジェクトデータ1221に記憶された種々のオブジェクトに基づく画像を表示部1072に表示させる。 The display control unit 114 displays an image. For example, the display control unit 114 cooperates with the game progression unit 112 and the virtual camera control unit 113 to generate display data for an image captured by the virtual camera. The display control unit 114 outputs the display data to the display unit 1072. The display control unit 114 displays an image based on the display data on the display unit 1072. The display control unit 114 displays an image based on various objects stored in the object data 1221 on the display unit 1072.

オブジェクト処理部115は、表示制御部114と連携し、オブジェクトデータ1221に基づき、種々のオブジェクトを表示部1072に表示させる。オブジェクト処理部115は、種々のオブジェクトの表示態様を変える。 The object processing unit 115 cooperates with the display control unit 114 to display various objects on the display unit 1072 based on the object data 1221. The object processing unit 115 changes the display mode of various objects.

オブジェクト操作取得部116は、操作受付部111と連携し、ユーザの操作に基づいてユーザオブジェクトの移動に関する情報を取得する。移動に関する情報は、ユーザオブジェクトが移動されたセルの位置の情報を含む。移動に関する情報は、ユーザオブジェクトの移動量を含んでもよい。 The object operation acquisition unit 116 cooperates with the operation reception unit 111 to acquire information related to the movement of the user object based on the user's operation. The information related to the movement includes information on the position of the cell to which the user object has been moved. The information related to the movement may also include the amount of movement of the user object.

正解処理部117は、配列オブジェクト管理情報1223及び移動オブジェクト管理情報1224を参照し、安全セルに基づいてユーザオブジェクトの位置が正解であると判定する。ユーザオブジェクトの位置が正解であると判定することは、例えば、ユーザオブジェクトが安全セルに配置されることを判定することである。 The correct answer processing unit 117 refers to the array object management information 1223 and the moving object management information 1224, and determines that the position of the user object is correct based on the safe cell. Determining that the position of the user object is correct means, for example, determining that the user object is placed in a safe cell.

(1-4)オブジェクトタイプテーブル1222の構成例
図4は、実施形態に係るユーザ端末100が有するオブジェクトタイプテーブル1222を例示する図である。
オブジェクトタイプテーブル1222は、1以上の固定オブジェクト及びユーザオブジェクトを識別するオブジェクトタイプと、各オブジェクトに設定された移動オブジェクトの制御態様を規定するデータを格納するテーブルである。オブジェクトタイプテーブル1222は、末端セル及び通常セルにおける移動オブジェクトの制御態様を規定するデータを格納する。
(1-4) Example of the Configuration of the Object Type Table 1222 FIG. 4 is a diagram illustrating an example of the object type table 1222 of the user terminal 100 according to the embodiment.
The object type table 1222 is a table for storing object types for identifying one or more fixed objects and user objects, and data defining the control manner of moving objects set for each object. The object type table 1222 stores data defining the control manner of moving objects in end cells and normal cells.

図4の例では、オブジェクトタイプテーブル1222には、ゲームに設定された固定オブジェクト、ユーザオブジェクト、末端セル及び通常セルに対応する移動オブジェクトの制御態様がセットされる。オブジェクトタイプは、方向オブジェクト、通過オブジェクト、ユーザオブジェクト、末端セル、通常セル等を含む。 In the example of FIG. 4, the object type table 1222 sets the control modes of moving objects corresponding to fixed objects, user objects, end cells, and normal cells set in the game. Object types include directional objects, passing objects, user objects, end cells, normal cells, etc.

方向オブジェクトは、移動オブジェクトの移動方向を変更する。方向オブジェクトは、図4におけるオブジェクト番号1~4に示すオブジェクトを含む。方向オブジェクトは、配列オブジェクトにおけるセルの辺と平行な辺と、セルの対角線と平行な辺により構成される。セルの辺と平行な辺は、第1の辺ともいう。セルの対角線と平行な辺は、第2の辺ともいう。方向オブジェクトは、第1の辺において、移動オブジェクトを停止する。方向オブジェクトは、第2の辺において、移動オブジェクトの移動方向を変更する。 A direction object changes the movement direction of a moving object. Direction objects include objects indicated by object numbers 1 to 4 in FIG. 4. A direction object is composed of an edge parallel to a cell edge in an array object and an edge parallel to a diagonal line of the cell. An edge parallel to a cell edge is also called a first edge. An edge parallel to a diagonal line of the cell is also called a second edge. A direction object stops a moving object at the first edge. A direction object changes the movement direction of a moving object at the second edge.

各方向オブジェクトの第2の辺による移動オブジェクトの制御態様を説明する。オブジェクト番号1の方向オブジェクトによる移動オブジェクトの制御態様を説明する。移動オブジェクトがセルの上辺から入ってきた場合、方向オブジェクトは、右辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの右辺から入ってきた場合、方向オブジェクトは、上辺から出る態様で移動オブジェクトを制御する。オブジェクト番号2の方向オブジェクトによる移動オブジェクトの制御態様を説明する。移動オブジェクトがセルの右辺から入ってきた場合、方向オブジェクトは、下辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの下辺から入ってきた場合、方向オブジェクトは、右辺から出る態様で移動オブジェクトを制御する。オブジェクト番号3の方向オブジェクトによる移動オブジェクトの制御態様を説明する。移動オブジェクトがセルの左辺から入ってきた場合、方向オブジェクトは、下辺から出る態様で移動オブジェクトを制御する。移動オブジェクトがセルの下辺から入ってきた場合、方向オブジェクトは、左辺から出る態様で移動オブジェクトを制御する。オブジェクト番号4の方向オブジェクトによる移動オブジェクトの制御態様を説明する。移動オブジェクトがセルの上辺から入ってきた場合、方向オブジェクトは、左辺から出る形態で移動オブジェクトを制御する。移動オブジェクトがセルの左辺から入ってきた場合、方向オブジェクトは、上辺から出る態様で移動オブジェクトを制御する。 The manner in which a moving object is controlled by the second edge of each direction object is described. The manner in which a moving object is controlled by a direction object of object number 1 is described. When a moving object enters from the top edge of a cell, the direction object controls the moving object in a manner that it exits from the right edge. When a moving object enters from the right edge of a cell, the direction object controls the moving object in a manner that it exits from the top edge. The manner in which a moving object is controlled by a direction object of object number 2 is described. When a moving object enters from the right edge of a cell, the direction object controls the moving object in a manner that it exits from the bottom edge. When a moving object enters from the bottom edge of a cell, the direction object controls the moving object in a manner that it exits from the right edge. The manner in which a moving object is controlled by a direction object of object number 3 is described. When a moving object enters from the left edge of a cell, the direction object controls the moving object in a manner that it exits from the bottom edge. When a moving object enters from the bottom edge of a cell, the direction object controls the moving object in a manner that it exits from the left edge. The manner in which a moving object is controlled by a direction object of object number 4 is described. If a moving object enters the cell from the top edge, the direction object controls the moving object to exit from the left edge. If a moving object enters the cell from the left edge, the direction object controls the moving object to exit from the top edge.

通過オブジェクトは、図4におけるオブジェクト番号5で示すオブジェクトである。通過オブジェクトは、移動オブジェクトを通過させる。通過オブジェクトは、移動オブジェクトの移動方向を維持する。 The passing object is the object indicated by object number 5 in Figure 4. The passing object allows the moving object to pass through. The passing object maintains the moving direction of the moving object.

ユーザオブジェクトは、図4におけるオブジェクト番号6で示すセルである。ユーザオブジェクトは、移動オブジェクトを通過させる。ユーザオブジェクトは、移動オブジェクトの移動方向を維持する。 The user object is the cell indicated by object number 6 in Figure 4. The user object allows the moving object to pass through. The user object maintains the moving direction of the moving object.

末端セルは、図4におけるオブジェクト番号7で示すセルである。末端セルは、移動オブジェクトを通過させる。末端セルは、移動オブジェクトの移動方向を維持する。通常セルは、図4におけるオブジェクト番号8で示すセルである。通常セルは、移動オブジェクトを通過させる。通常セルは、移動オブジェクトの移動方向を維持する。 The terminal cell is the cell indicated by object number 7 in Figure 4. Terminal cells allow moving objects to pass through. Terminal cells maintain the moving direction of the moving object. The normal cell is the cell indicated by object number 8 in Figure 4. Normal cells allow moving objects to pass through. Normal cells maintain the moving direction of the moving object.

(2)画像例
表示部1072に表示される画像の一例について説明する。
図5は、ゲームプログラムによって実現されるユーザ端末100に表示される画像Im1の例を示す図である。
(2) Example of Image An example of an image displayed on the display unit 1072 will be described.
FIG. 5 is a diagram showing an example of an image Im1 displayed on the user terminal 100 realized by the game program.

表示部1072は、ゲーム開始時の画像Im1を表示する。画像Im1は、配列オブジェクトOb1、ゲートオブジェクトOb21-1~Ob21-4、固定オブジェクトOb22-1~Ob22-3、Ob23、ユーザオブジェクトOb3、及びゲーム進行オブジェクトOb6~Ob8を含む画像である。なお、移動オブジェクトは、ゲーム開始時の画像Im1においては表示されない。 The display unit 1072 displays an image Im1 at the start of the game. Image Im1 is an image that includes array object Ob1, gate objects Ob21-1 to Ob21-4, fixed objects Ob22-1 to Ob22-3 and Ob23, user object Ob3, and game progress objects Ob6 to Ob8. Note that moving objects are not displayed in image Im1 at the start of the game.

配列オブジェクトOb1は、複数のセルをグリッド状に配列する。配列オブジェクトOb1は、例えば、5×5のセル群を配列する。なお、配列オブジェクトOb1に配列される複数のセルの数は、上述の数に限られず、4×4又は6×6等の任意の数であってよい。第1の方向に配置されるセルの数は、第2の方向に配置されるセルの数と同じであってもよいし、異なってもよい。なお、配列オブジェクトOb1の形状は、矩形に限られず、多角形等の任意の形であってもよい。例えば、配列オブジェクトOb1は、三角タイル、ハチの巣、モザイク等の形であってもよい。 Array object Ob1 arranges multiple cells in a grid pattern. For example, array object Ob1 arranges a 5x5 group of cells. Note that the number of multiple cells arranged in array object Ob1 is not limited to the above numbers and may be any number such as 4x4 or 6x6. The number of cells arranged in the first direction may be the same as the number of cells arranged in the second direction, or may be different. Note that the shape of array object Ob1 is not limited to a rectangle and may be any shape such as a polygon. For example, array object Ob1 may be in the shape of a triangular tile, a honeycomb, a mosaic, etc.

ゲートオブジェクトOb21-1~Ob21-4は、ゲームに設定された移動オブジェクトのスタート地点である。ゲートオブジェクトは、配列オブジェクトOb1上の任意の末端セルに関連付けられて配置され得る。ゲートオブジェクトは、ゲートオブジェクトから移動オブジェクトが移動する方向を示す。オブジェクト処理部115は、制限時間までの残り時間に応じてゲートオブジェクトの表示態様を変えて表示する。表示態様は、例えば、色、明度又は輝度、背景パターン、点滅表示等を含む。例えば、オブジェクト処理部115は、残り時間の減少に伴い、色及び点滅の間隔を変えてゲートオブジェクトを表示してもよい。 Gate objects Ob21-1 to Ob21-4 are starting points for moving objects set in the game. The gate objects can be placed in association with any end cell on array object Ob1. The gate objects indicate the direction in which moving objects move from the gate object. The object processing unit 115 changes and displays the display mode of the gate objects according to the time remaining until the time limit. The display mode includes, for example, color, brightness or luminance, background pattern, blinking display, etc. For example, the object processing unit 115 may display the gate objects by changing the color and blinking interval as the remaining time decreases.

固定オブジェクトOb22-1~Ob22-3は、方向オブジェクトである。オブジェクト処理部115は、方向オブジェクトが配置されたセルにおいて移動オブジェクトの移動する方向を変える。方向オブジェクトは、配列オブジェクトOb1上の任意のセルに設定され得る。方向オブジェクトの数は問題毎に設定され得る。方向オブジェクトの数は問題の難易度に応じて設定されてもよい。 Fixed objects Ob22-1 to Ob22-3 are directional objects. The object processing unit 115 changes the direction in which a moving object moves in a cell in which the directional object is placed. The directional object can be set in any cell on the array object Ob1. The number of directional objects can be set for each question. The number of directional objects may be set according to the difficulty of the question.

固定オブジェクトOb23は、通過オブジェクトである。オブジェクト処理部115は、通過オブジェクトが配置されたセルにおいて移動オブジェクトを通過させる。通過オブジェクトは、配列オブジェクトOb1上の任意のセルに設定され得る。通過オブジェクトの数は問題毎に設定され得る。通過オブジェクトの数は問題の難易度に応じて設定されてもよい。オブジェクト処理部115は、通過オブジェクトを透明なセルとして表示してもよい。 The fixed object Ob23 is a passing object. The object processing unit 115 causes the moving object to pass through the cell in which the passing object is placed. The passing object may be set in any cell on the array object Ob1. The number of passing objects may be set for each question. The number of passing objects may be set according to the difficulty of the question. The object processing unit 115 may display the passing object as a transparent cell.

ユーザオブジェクトOb3は、ユーザの位置を示すオブジェクトである。ユーザオブジェクトOb3は、ユーザにより選択されたキャラクタを示してもよい。オブジェクト処理部115は、ユーザオブジェクトOb3が配置されたセルにおいて移動オブジェクトを通過させる。ユーザオブジェクトOb3の位置は、ユーザの操作により変更される。ユーザオブジェクトOb3は、配列オブジェクトOb1上の任意のセルに設定され得る。配列オブジェクトOb1において、少なくとも1つのユーザオブジェクトOb3が設定される。ユーザオブジェクトOb3の数は、問題毎に設定され得る。ユーザオブジェクトOb3の数は、問題の難易度に応じて設定されてもよい。ユーザオブジェクトOb3の数は、ユーザと異なる他のユーザの数に応じて設定されてもよい。他のユーザは、複数のユーザが同一のゲームを同時にプレイする場合のユーザと異なる他のユーザである。例えば、ユーザと1人の他のユーザを合わせた2人が協力してゲームをプレイする場合、ユーザオブジェクトOb3の数は、2であってもよい。 The user object Ob3 is an object that indicates the position of the user. The user object Ob3 may indicate a character selected by the user. The object processing unit 115 passes a moving object through the cell in which the user object Ob3 is placed. The position of the user object Ob3 is changed by the user's operation. The user object Ob3 may be set in any cell on the array object Ob1. At least one user object Ob3 is set in the array object Ob1. The number of user objects Ob3 may be set for each question. The number of user objects Ob3 may be set according to the difficulty level of the question. The number of user objects Ob3 may be set according to the number of other users different from the user. The other users are other users different from the user when multiple users play the same game simultaneously. For example, when two people, including the user and one other user, play the game cooperatively, the number of user objects Ob3 may be two.

なお、ユーザオブジェクトOb3-1~Ob3-2が、複数のユーザにより操作される場合、オブジェクト処理部115は、ユーザにより操作されるユーザオブジェクトOb3-1をユーザと異なる他のユーザにより操作されるユーザオブジェクトOb3-2と識別可能な表示態様で表示してもよい。例えば、オブジェクト処理部115は、ユーザオブジェクトOb3-1の背景色をユーザオブジェクトOb3-2と異なる色で表示してもよい。オブジェクト処理部115は、ユーザオブジェクトOb3-1とユーザオブジェクトOb3-2にユーザと他のユーザを識別可能なユーザ名等を表示してもよい。オブジェクト処理部115は、ユーザオブジェクトOb3-1とユーザオブジェクトOb3-2にユーザと他のユーザにより選択されたキャラクタを表示してもよい。 When user objects Ob3-1 to Ob3-2 are operated by multiple users, the object processing unit 115 may display user object Ob3-1 operated by a user in a display manner that allows it to be distinguished from user object Ob3-2 operated by a user other than the user. For example, the object processing unit 115 may display the background color of user object Ob3-1 in a color different from that of user object Ob3-2. The object processing unit 115 may display user names, etc., on user objects Ob3-1 and Ob3-2 that allow the user to be distinguished from other users. The object processing unit 115 may display characters selected by the user and other users on user objects Ob3-1 and Ob3-2.

ゲーム進行オブジェクトOb6は、リタイアボタンを含む。ユーザによりリタイアボタンがタッチ操作されると、ゲーム進行部112は、ゲームを終了する。 The game progression object Ob6 includes a retire button. When the user touches the retire button, the game progression unit 112 ends the game.

ゲーム進行オブジェクトOb7は、キャラクタオブジェクトを含む。キャラクタオブジェクトは、ユーザが操作不可能なオブジェクトである。キャラクタオブジェクトは、他のオブジェクトの表示態様の変化に伴い、表示態様を変えて表示されてもよい。例えば、キャラクタオブジェクトは、残り時間の減少に伴い動作を変えて表示されてもよい。 The game progress object Ob7 includes a character object. A character object is an object that cannot be operated by a user. A character object may be displayed in a different manner in accordance with changes in the display manner of other objects. For example, a character object may be displayed in a different manner in accordance with a decrease in the remaining time.

ゲーム進行オブジェクトOb8は、キャラクタオブジェクトのステータス情報を示すステータスオブジェクトを含む。ステータスオブジェクトは、ユーザが操作不可能なオブジェクトである。ステータスオブジェクトは、例えば、キャラクタのレベル、攻撃力、防御力等を示すステータス情報を示す。 The game progress object Ob8 includes a status object that indicates the status information of the character object. A status object is an object that cannot be operated by the user. The status object indicates status information that indicates, for example, the character's level, attack power, defense power, etc.

ゲーム進行オブジェクトは、上述のOb6~Ob8の他、ゲームの進行に応じて表示されるテキストオブジェクトを含んでもよい。テキストオブジェクトは、ゲーム開始時に問題文を示すテキスト情報を含んでもよい。指示文は、例えば、「よけろ。」等である。テキストオブジェクトは、他のオブジェクトの表示態様の変化に伴い、表示態様を変えて表示されてもよい。例えば、テキストオブジェクトは、残り時間の減少に伴い、「残り5秒」等のメッセージを表示してもよい。テキストオブジェクトは、正解判定時では正解を示すメッセージを含んでもよい。正解を示すメッセージは、例えば、「GOOD」等である。 In addition to Ob6 to Ob8 described above, the game progress objects may include text objects that are displayed as the game progresses. The text objects may include text information indicating a question at the start of the game. An example of the instruction is "Get out of the way." The text objects may be displayed in a different manner in accordance with changes in the display manner of other objects. For example, the text object may display a message such as "5 seconds remaining" as the remaining time decreases. The text object may include a message indicating the correct answer when the correct answer is determined. An example of the message indicating the correct answer is "GOOD."

(3)動作
図6は、図3に示したユーザ端末100の情報処理動作の一例を示すフローチャートである。
(3) Operation FIG. 6 is a flowchart showing an example of an information processing operation of the user terminal 100 shown in FIG.

以降の動作の前提として、ユーザ端末100の制御部110及び記憶部120の協働により、ゲームプログラムに記述されたコードに従ってゲームが進行され、表示データが生成されているものとする。以降の動作は、ユーザの操作によりゲームが開始されると実行される。ゲーム進行部213は、ゲームの開始を指示するユーザの操作に応答してタイマを起動し、ゲームを開始してからの経過時間を計測する。ゲーム進行部213は、ゲームに設定された制限時間から経過時間を引いた残り時間を制限時間情報1225に保存する。ゲーム進行部213は、制限時間までのカウントダウンを開始してもよい。 As a prerequisite for the following operations, it is assumed that the control unit 110 and memory unit 120 of the user terminal 100 work together to progress the game in accordance with the code written in the game program, and generate display data. The following operations are executed when the game is started by a user operation. The game progression unit 213 starts a timer in response to a user operation to instruct the start of the game, and measures the elapsed time since the game started. The game progression unit 213 saves the remaining time, which is obtained by subtracting the elapsed time from the time limit set for the game, in the time limit information 1225. The game progression unit 213 may start a countdown until the time limit.

オブジェクト処理部115は、オブジェクトデータ1221に基づき、種々のオブジェクトを生成し、生成されたオブジェクトを表示部1072に表示する(ステップS1)。オブジェクトデータ1221は、問題毎に設定されたオブジェクトの情報を含む。ステップS1では、例えば、オブジェクト処理部115は、配列オブジェクト、少なくとも1つのゲートオブジェクト、固定オブジェクト、少なくとも1つのユーザオブジェクト、及びゲーム進行オブジェクトを表示部1072に表示する。例えば、ゲートオブジェクト、固定オブジェクト及びユーザオブジェクトは、問題毎に設定された配列オブジェクトのセルに配置される。 The object processing unit 115 generates various objects based on the object data 1221, and displays the generated objects on the display unit 1072 (step S1). The object data 1221 includes information on objects set for each question. In step S1, for example, the object processing unit 115 displays an array object, at least one gate object, a fixed object, at least one user object, and a game progress object on the display unit 1072. For example, the gate object, the fixed object, and the user object are placed in the cells of the array object set for each question.

オブジェクト操作取得部116は、ユーザの操作があったか否かを判定する(ステップS2)。ステップS2では、例えば、オブジェクト操作取得部116は、操作受付部111により取得されたユーザの操作に関する情報に基づいて、ユーザの操作があったと判定する。 The object operation acquisition unit 116 determines whether or not a user operation has been performed (step S2). In step S2, for example, the object operation acquisition unit 116 determines that a user operation has been performed based on information about the user operation acquired by the operation reception unit 111.

オブジェクト操作取得部116は、ユーザオブジェクトに対するユーザの操作に基づいて、ユーザにより操作されたユーザオブジェクトの情報を取得する。ユーザの操作は、少なくとも1つのユーザオブジェクトの位置を変更することを含む。ユーザオブジェクトの情報は、ユーザオブジェクトの位置を示す情報を含む。ユーザオブジェクトの位置を示す情報は、ユーザオブジェクトの移動先のセルの位置情報を含む。 The object operation acquisition unit 116 acquires information about a user object operated by a user based on the user's operation on the user object. The user's operation includes changing the position of at least one user object. The user object information includes information indicating the position of the user object. The information indicating the position of the user object includes position information of the cell to which the user object is to be moved.

例えば、オブジェクト操作取得部116は、ユーザによるドラッグアンドドロップ操作に基づいてユーザオブジェクトの情報を取得する。オブジェクト操作取得部116は、操作受付部111により取得されたユーザの操作開始位置に基づいて、ユーザの操作の始点位置を取得する。オブジェクト操作取得部116は、始点位置に対応するセルに配置されたユーザオブジェクトを特定する。オブジェクト操作取得部116は、操作受付部111により取得されたユーザの接触解除位置に基づいて、ユーザの操作の終点位置を取得する。オブジェクト操作取得部116は、終点位置に対応するセルを特定する。オブジェクト操作取得部116は、終点位置と各セルとの距離に基づいて終点位置に対応するセルを特定する。終点位置に対応するセルは、中心位置が終点位置から最も近い距離にあるセルである。終点位置に対応するセルは、終点セルともいう。オブジェクト操作取得部116は、特定されたユーザオブジェクトの位置を終点セルと対応付けて配列オブジェクト管理情報1223に保存する。特定されたユーザオブジェクトは、移動対象オブジェクトともいう。オブジェクト操作取得部116は、配列オブジェクト管理情報1223における移動対象オブジェクトの位置を更新する。オブジェクト操作取得部116は、配列オブジェクト管理情報1223を参照し、終点セルに他のオブジェクトが配置されていると判断した場合、移動対象オブジェクトの位置を始点位置と対応付けて配列オブジェクト管理情報1223に保存する。この場合、オブジェクト操作取得部116は、配列オブジェクト管理情報1223における移動対象オブジェクトの位置を更新しない。 For example, the object operation acquisition unit 116 acquires information on a user object based on a drag-and-drop operation by the user. The object operation acquisition unit 116 acquires the start position of the user's operation based on the operation start position of the user acquired by the operation reception unit 111. The object operation acquisition unit 116 identifies a user object arranged in a cell corresponding to the start position. The object operation acquisition unit 116 acquires the end position of the user's operation based on the user's contact release position acquired by the operation reception unit 111. The object operation acquisition unit 116 identifies a cell corresponding to the end position. The object operation acquisition unit 116 identifies a cell corresponding to the end position based on the distance between the end position and each cell. The cell corresponding to the end position is a cell whose center position is the closest to the end position. The cell corresponding to the end position is also called an end cell. The object operation acquisition unit 116 associates the position of the identified user object with the end cell and stores it in the array object management information 1223. The identified user object is also called a moving target object. The object operation acquisition unit 116 updates the position of the object to be moved in the array object management information 1223. When the object operation acquisition unit 116 references the array object management information 1223 and determines that another object is placed in the end cell, it associates the position of the object to be moved with the start position and stores it in the array object management information 1223. In this case, the object operation acquisition unit 116 does not update the position of the object to be moved in the array object management information 1223.

なお、オブジェクト操作取得部116は、ユーザによるタップ操作に基づいてユーザオブジェクトの情報を取得してもよい。この場合、オブジェクト操作取得部116は、1タッチ目の位置を始点位置として取得する。オブジェクト操作取得部116は、2タッチ目の位置を終点位置として取得する。 The object operation acquisition unit 116 may acquire information about the user object based on a tap operation by the user. In this case, the object operation acquisition unit 116 acquires the position of the first touch as the start position. The object operation acquisition unit 116 acquires the position of the second touch as the end position.

なお、オブジェクト処理部115は、オブジェクト操作取得部116により取得されたユーザオブジェクトに対するユーザの操作に応じて、ユーザオブジェクトの位置を時系列に変更して表示してもよい。 In addition, the object processing unit 115 may change and display the position of the user object in chronological order in response to the user's operation on the user object acquired by the object operation acquisition unit 116.

なお、オブジェクト処理部115は、ユーザの操作を対象として処理を行うこととして説明したが、オブジェクト処理部115は、ユーザと異なる他のユーザの操作を対象として処理を行ってもよい。例えば、複数のユーザが同一のゲームを同時にプレイする場合、ステップS2において、オブジェクト操作取得部116は、ユーザと異なる他のユーザの操作があったことを示す情報を取得する。他のユーザの操作は、少なくとも1つのユーザオブジェクトの位置を変更することを含む。オブジェクト操作取得部116は、ユーザオブジェクトに対する他のユーザの操作に基づいて、他のユーザにより操作されたユーザオブジェクトの情報を取得する。 Although the object processing unit 115 has been described as processing the user's operation, the object processing unit 115 may also process operations by other users different from the user. For example, when multiple users play the same game simultaneously, in step S2, the object operation acquisition unit 116 acquires information indicating that there has been an operation by another user different from the user. The operation by the other user includes changing the position of at least one user object. The object operation acquisition unit 116 acquires information on the user object operated by the other user based on the operation by the other user on the user object.

オブジェクト操作取得部116により、ユーザの操作があったと判定された場合(ステップS2:YES)、処理は、ステップS2からステップS3へ遷移する。オブジェクト操作取得部116により、ユーザの操作がないと判定された場合(ステップS2:NO)、処理は、ステップS2からステップS4に遷移する。 If the object operation acquisition unit 116 determines that a user operation has been performed (step S2: YES), the process transitions from step S2 to step S3. If the object operation acquisition unit 116 determines that a user operation has not been performed (step S2: NO), the process transitions from step S2 to step S4.

オブジェクト処理部115は、ユーザオブジェクトに対するユーザの操作に基づいて、配列オブジェクトにおいてユーザオブジェクトの位置を更新する(ステップS3)。ステップS3では、例えば、オブジェクト処理部115は、配列オブジェクト管理情報1223に基づいてユーザオブジェクトの位置を更新して表示部1072に表示させる。オブジェクト処理部115は、ステップS2からステップS3の処理を少なくとも1つのユーザオブジェクトに対するユーザの操作に基づいて実行する。オブジェクト処理部115は、配列オブジェクトにおける少なくとも1つのユーザオブジェクトに対するユーザの操作に基づいて少なくとも1つのユーザオブジェクトの位置を更新する。 The object processing unit 115 updates the position of the user object in the array object based on the user's operation on the user object (step S3). In step S3, for example, the object processing unit 115 updates the position of the user object based on the array object management information 1223 and displays it on the display unit 1072. The object processing unit 115 executes the processes from step S2 to step S3 based on the user's operation on at least one user object. The object processing unit 115 updates the position of at least one user object based on the user's operation on at least one user object in the array object.

なお、オブジェクト処理部115がユーザと異なる他のユーザの操作を対象として処理を行う場合、オブジェクト処理部115は、ユーザオブジェクトに対する他のユーザの操作に基づいてユーザオブジェクトの位置を更新する。オブジェクト処理部115は、上述の処理と同様に、更新された位置にユーザオブジェクトを表示部1072に表示させる。 When the object processing unit 115 processes an operation of a user other than the user, the object processing unit 115 updates the position of the user object based on the operation of the other user on the user object. The object processing unit 115 displays the user object on the display unit 1072 at the updated position, similar to the above-mentioned processing.

正解処理部117は、制限時間情報1225を参照し、ゲームに設定された制限時間が経過したか否かを判定する(ステップS4)。ステップS4では、例えば、正解処理部117は、残り時間がゼロになったことに基づいて制限時間が経過したことを判定する。 The correct answer processing unit 117 refers to the time limit information 1225 and determines whether the time limit set for the game has elapsed (step S4). In step S4, for example, the correct answer processing unit 117 determines that the time limit has elapsed based on the fact that the remaining time has reached zero.

正解処理部117により、制限時間が経過したと判定された場合(ステップS4:YES)、処理は、ステップS4からステップS5へ遷移する。正解処理部117により、制限時間が経過していないと判定された場合(ステップS4:NO)、オブジェクト操作取得部116は、ステップS2の処理を繰り返す。 If the correct answer processing unit 117 determines that the time limit has elapsed (step S4: YES), the process transitions from step S4 to step S5. If the correct answer processing unit 117 determines that the time limit has not elapsed (step S4: NO), the object operation acquisition unit 116 repeats the process of step S2.

正解処理部117は、配列オブジェクト管理情報1223を参照し、ユーザオブジェクトの位置に基づいてユーザオブジェクトの位置が正解であることを判定する(ステップS5)。ステップS5では、例えば、正解処理部117は、ユーザオブジェクトの位置が安全セルの位置と一致するか否かに応じて、ユーザオブジェクトの位置が正解であることを判定する。 The correct answer processing unit 117 refers to the array object management information 1223 and determines whether the position of the user object is correct based on the position of the user object (step S5). In step S5, for example, the correct answer processing unit 117 determines whether the position of the user object is correct depending on whether the position of the user object matches the position of the safety cell.

オブジェクト処理部115は、制限時間が経過したことに応答して、配列オブジェクトにおいてゲートオブジェクトから移動する移動オブジェクトを表示部1072に表示させる(ステップS6)。ステップS6では、例えば、オブジェクト処理部115は、移動オブジェクト管理情報1224に基づき、移動オブジェクトを生成し、生成された移動オブジェクトを表示部1072に表示する。なお、オブジェクト処理部115は、移動オブジェクトの先頭部分の表示態様を他の部分と異なる表示としてもよい。オブジェクト処理部115は、正解処理部117による正解の判定結果に応じてユーザオブジェクトの表示態様を変えて表示してもよい。例えば、オブジェクト処理部115は、安全セルに配置されたユーザオブジェクトを安全セル以外に配置されたユーザオブジェクトと異なる表示態様で表示してもよい。オブジェクト処理部115は、正解処理部117により正解を判定したことに応答して、安全セルを他のセルと識別可能に表示してもよい。オブジェクト処理部115は、安全セルに安全セルであることを示す安全セルオブジェクトを重ねて表示してもよい。安全セルオブジェクトは、色、明度又は輝度等が他のセルと異なるオブジェクトである。オブジェクト処理部115は、クリア条件を満たしたことに応答して、テキストオブジェクトを表示部1072に表示してもよい。テキストオブジェクトは、例えば、「FINISH」、「GOOD」、又は「クリア」等のメッセージを含むオブジェクトである。なお、オブジェクト処理部115は、クリア条件に応じて異なるテキストオブジェクトを表示部1072に表示してもよい。例えば、オブジェクト処理部115は、クリア条件が少なくとも一つのユーザオブジェクトの位置が安全セルの位置と一致することである場合は、テキストオブジェクト「GOOD」を表示してもよい。オブジェクト処理部115は、クリア条件がすべてのユーザオブジェクトの位置が安全セルの位置と一致することである場合は、テキストオブジェクト「GREAT」を表示してもよい。 In response to the time limit having elapsed, the object processing unit 115 causes the display unit 1072 to display the moving object moving from the gate object in the array object (step S6). In step S6, for example, the object processing unit 115 generates a moving object based on the moving object management information 1224, and displays the generated moving object on the display unit 1072. The object processing unit 115 may display the leading part of the moving object in a different display mode from the other parts. The object processing unit 115 may change the display mode of the user object according to the result of the correct answer determination by the correct answer processing unit 117. For example, the object processing unit 115 may display the user object placed in the safe cell in a different display mode from the user object placed in a non-safe cell. In response to the correct answer determination by the correct answer processing unit 117, the object processing unit 115 may display the safe cell in a manner distinguishable from other cells. The object processing unit 115 may display a safe cell object indicating that it is a safe cell by overlapping it on the safe cell. The safe cell object is an object whose color, brightness, luminance, or the like is different from other cells. In response to the clearing condition being satisfied, the object processing unit 115 may display a text object on the display unit 1072. The text object is, for example, an object including a message such as "FINISH", "GOOD", or "Clear". The object processing unit 115 may display a different text object on the display unit 1072 depending on the clearing condition. For example, the object processing unit 115 may display the text object "GOOD" when the clearing condition is that the position of at least one user object matches the position of a safe cell. The object processing unit 115 may display the text object "GREAT" when the clearing condition is that the positions of all user objects match the positions of a safe cell.

なお、ユーザによりリタイアボタンがタッチ操作された場合には、ゲームがステップS1からステップS6のどの状態にあったとしても、ゲーム進行部112はゲームを終了させる。ユーザは、任意にリタイアを選択することができる。 When the user touches the retire button, the game progression unit 112 ends the game regardless of the state the game is in from step S1 to step S6. The user can choose to retire at their own discretion.

なお、ユーザオブジェクトの位置は、ユーザの操作により複数回変更可能である。オブジェクト処理部115は、ユーザオブジェクトに対してユーザの操作がされる毎に、ステップS2からステップS6の処理を行う。 The position of the user object can be changed multiple times by the user's operation. The object processing unit 115 performs the processes from step S2 to step S6 each time the user operates the user object.

なお、ユーザオブジェクトの位置は、上述のユーザの操作だけでなく、他のユーザの操作により複数回変更可能である。この例では、オブジェクト処理部115は、ユーザオブジェクトに対して他のユーザの操作がされる毎に、ステップS2からステップS6の処理を行う。 The position of the user object can be changed multiple times by operations of other users, in addition to the above-mentioned user operations. In this example, the object processing unit 115 performs the processes of steps S2 to S6 every time another user operates the user object.

図7は、図6のステップS5に示した正解判定動作の一例を示すフローチャートである。
オブジェクト処理部115は、配列オブジェクト管理情報1223からゲートオブジェクトi(i=1~N(Nはゲートオブジェクトの総数))に関する情報を取得する(ステップS501)。ゲートオブジェクトiは、添え字「i」と関連付けられたゲートオブジェクトである。ステップS501では、例えば、オブジェクト処理部115は、i=1から昇順でゲートオブジェクトiを取得する。ゲートオブジェクトに関する情報は、ゲートオブジェクトの位置情報、及びゲートオブジェクトから移動オブジェクトが移動する方向を示す情報を含む。
FIG. 7 is a flow chart showing an example of the correct answer determination operation shown in step S5 of FIG.
The object processing unit 115 acquires information about a gate object i (i=1 to N (N is the total number of gate objects)) from the array object management information 1223 (step S501). Gate object i is a gate object associated with a subscript "i". In step S501, for example, the object processing unit 115 acquires gate objects i in ascending order starting from i=1. The information about the gate object includes position information of the gate object and information indicating the direction in which the moving object moves from the gate object.

オブジェクト処理部115は、スタートセルを対象セルとして特定する(ステップS502)。対象セルは、移動オブジェクトの制御態様を判定する対象となるセルである。移動オブジェクトは、ゲートオブジェクトから移動する方向に沿って対象セルに入ってくるものとする。対象セルは、オブジェクト処理部115による移動オブジェクトの制御態様の判定毎に、制御態様を判定されたセルから、そのセルに隣接するセルに一つずつ遷移する。ステップS502では、例えば、オブジェクト処理部115は、対象セルの位置情報を取得する。 The object processing unit 115 identifies the start cell as the target cell (step S502). The target cell is a cell that is the target for determining the control mode of the moving object. The moving object is assumed to enter the target cell along the direction of movement from the gate object. Each time the object processing unit 115 determines the control mode of the moving object, the target cell transitions one by one from the cell whose control mode has been determined to a cell adjacent to that cell. In step S502, for example, the object processing unit 115 acquires position information of the target cell.

オブジェクト処理部115は、配列オブジェクト管理情報1223を参照し、対象セルの位置情報に基づいて、対象セルに方向オブジェクトが配置されているか否かを判定する(ステップS503)。 The object processing unit 115 refers to the array object management information 1223 and determines whether a direction object is placed in the target cell based on the position information of the target cell (step S503).

オブジェクト処理部115により、対象セルに方向オブジェクトが配置されていると判定された場合(ステップS503:YES)、処理は、ステップS503からステップS504へ遷移する。オブジェクト処理部115により、対象セルに方向オブジェクトが配置されていないと判定された場合(ステップS503:NO)、処理は、ステップS503からステップS505へ遷移する。 If the object processing unit 115 determines that a direction object is placed in the target cell (step S503: YES), the process transitions from step S503 to step S504. If the object processing unit 115 determines that a direction object is not placed in the target cell (step S503: NO), the process transitions from step S503 to step S505.

オブジェクト処理部115は、対象セルに配置された方向オブジェクトに基づいて、移動オブジェクトの制御態様を移動オブジェクト管理情報1224に保存する(ステップS504)。ステップS504では、例えば、オブジェクト処理部115は、配列オブジェクト管理情報1223を参照し、対象セルに配置された方向オブジェクトに関する情報を取得する。方向オブジェクトに関する情報は、方向オブジェクトの種類を示すオブジェクトタイプを含む。オブジェクト処理部115は、オブジェクトタイプテーブル1222を参照し、オブジェクトタイプに基づいて移動オブジェクトの制御態様を取得する。オブジェクト処理部115は、取得した移動オブジェクトの制御態様と対象セルの位置情報とを対応付けて移動オブジェクト管理情報1224に保存する。 The object processing unit 115 saves the control mode of the moving object in the moving object management information 1224 based on the directional object placed in the target cell (step S504). In step S504, for example, the object processing unit 115 refers to the array object management information 1223 and acquires information about the directional object placed in the target cell. The information about the directional object includes an object type indicating the type of the directional object. The object processing unit 115 refers to the object type table 1222 and acquires the control mode of the moving object based on the object type. The object processing unit 115 associates the acquired control mode of the moving object with the position information of the target cell and saves it in the moving object management information 1224.

例えば、図4におけるオブジェクト番号1で示す方向オブジェクトが対象セルに配置されている場合について説明する。移動オブジェクトは対象セルの上辺から入るものとする。オブジェクト処理部115は、移動オブジェクトを対象セルの左辺から出る態様と対象セルの位置情報とを対応付けて移動オブジェクト管理情報1224に保存する。移動オブジェクト管理情報1224に移動オブジェクトの制御態様と位置情報が保存された対象セルは、処理済みセルという。 For example, let us consider a case where a directional object indicated by object number 1 in Figure 4 is placed in a target cell. The moving object enters the target cell from the top side. The object processing unit 115 associates the manner in which the moving object exits the left side of the target cell with the position information of the target cell and stores this in the moving object management information 1224. A target cell in which the control manner and position information of the moving object are stored in the moving object management information 1224 is called a processed cell.

その後、処理は、ステップS504からステップS502へ戻る。この場合、ステップS502において、オブジェクト処理部115は、「スタートセル」を「処理済みセルに隣接するセル」に読み替えて処理を行う。処理済みセルに隣接するセルは、移動オブジェクトが移動する方向に沿って処理済みセルに隣接するセルである。この場合、移動オブジェクトは、処理済みセルから移動する方向に沿って対象セルに入ってくるものとする。
なお、対象セルとなる方向オブジェクトが移動オブジェクトを停止する場合、処理は、ステップS504からステップS508に遷移する。オブジェクト処理部115は、移動オブジェクトの停止により、1つのゲートオブジェクトに対する処理を終了する。対象セルとなる方向オブジェクトが移動オブジェクトの移動方向を変更し、移動オブジェクトの変更された移動方向に沿った隣接するセルが存在しない場合、処理は、ステップS504からステップS508に遷移する。この場合、オブジェクト処理部115は、1つのゲートオブジェクトに対する処理を終了する。
Then, the process returns from step S504 to step S502. In this case, in step S502, the object processing unit 115 performs the process by replacing the "start cell" with the "cell adjacent to the processed cell." The cell adjacent to the processed cell is the cell adjacent to the processed cell along the moving direction of the moving object. In this case, the moving object is assumed to enter the target cell along the moving direction from the processed cell.
If the direction object that is the target cell stops the moving object, the process transitions from step S504 to step S508. The object processing unit 115 ends the process for one gate object due to the stopping of the moving object. If the direction object that is the target cell changes the moving direction of the moving object and there is no adjacent cell along the changed moving direction of the moving object, the process transitions from step S504 to step S508. In this case, the object processing unit 115 ends the process for one gate object.

オブジェクト処理部115は、配列オブジェクト管理情報1223を参照し、対象セルの位置情報に基づいて、対象セルが末端セルであるか否かを判定する(ステップS505)。 The object processing unit 115 refers to the array object management information 1223 and determines whether the target cell is an end cell based on the position information of the target cell (step S505).

オブジェクト処理部115により、対象セルが末端セルであると判定された場合(ステップS505:YES)、処理は、ステップS505からステップS506へ遷移する。オブジェクト処理部115により、対象セルが末端セルでないと判定された場合(ステップS505:NO)、処理は、ステップS505からステップS507へ遷移する。 If the object processing unit 115 determines that the target cell is an end cell (step S505: YES), the process transitions from step S505 to step S506. If the object processing unit 115 determines that the target cell is not an end cell (step S505: NO), the process transitions from step S505 to step S507.

オブジェクト処理部115は、末端セルにおける移動オブジェクトの制御態様を移動オブジェクト管理情報1224に保存する(ステップS506)。ステップS506では、例えば、オブジェクト処理部115は、オブジェクトタイプテーブル1222を参照し、末端セルにおける移動オブジェクトの制御態様を取得する。オブジェクト処理部115は、取得した移動オブジェクトの制御態様と対象セルの位置情報とを対応付けて移動オブジェクト管理情報1224に保存する。オブジェクト処理部115は、末端セルに対応する対象セルに対する処理により、1つのゲートオブジェクトに対する処理を終了する。 The object processing unit 115 saves the control mode of the moving object in the end cell in the moving object management information 1224 (step S506). In step S506, for example, the object processing unit 115 refers to the object type table 1222 and acquires the control mode of the moving object in the end cell. The object processing unit 115 associates the acquired control mode of the moving object with the position information of the target cell and stores it in the moving object management information 1224. The object processing unit 115 ends the processing for one gate object by processing the target cell corresponding to the end cell.

オブジェクト処理部115は、対象セルにおける移動オブジェクトの制御態様を「通過」にセットし、セットした制御態様を移動オブジェクト管理情報1224に保存する(ステップS507)。一例では、オブジェクト処理部115は、配列オブジェクト管理情報1223を参照し、対象セルの位置情報に基づいて、対象セルに通過オブジェクトが配置されているか否かを判定する。オブジェクト処理部115は、対象セルに通過オブジェクトが配置されていることに基づいて、オブジェクトタイプテーブル1222を参照し、移動オブジェクトの制御態様を「通過」にセットする。別の例では、オブジェクト処理部115は、配列オブジェクト管理情報1223を参照し、対象セルの位置情報に基づいて、対象セルが通常セルであるか否かを判定する。オブジェクト処理部115は、対象セルが通常セルであることに基づいて、オブジェクトタイプテーブル1222を参照し、移動オブジェクトの制御態様を「通過」にセットする。オブジェクト処理部115は、セットした移動オブジェクトの制御態様と対象セルの位置情報とを対応付けて移動オブジェクト管理情報1224に保存する。 The object processing unit 115 sets the control mode of the moving object in the target cell to "pass" and saves the set control mode in the moving object management information 1224 (step S507). In one example, the object processing unit 115 refers to the array object management information 1223 and determines whether or not a passing object is placed in the target cell based on the position information of the target cell. The object processing unit 115 refers to the object type table 1222 and sets the control mode of the moving object to "pass" based on the fact that a passing object is placed in the target cell. In another example, the object processing unit 115 refers to the array object management information 1223 and determines whether or not the target cell is a normal cell based on the position information of the target cell. The object processing unit 115 refers to the object type table 1222 and sets the control mode of the moving object to "pass" based on the fact that the target cell is a normal cell. The object processing unit 115 associates the set control mode of the moving object with the position information of the target cell and saves it in the moving object management information 1224.

その後、処理は、ステップS507からステップS502へ戻る。この場合、ステップS502において、「スタート地点」を「処理済みセルに隣接するセル」に読み替えて処理を行う。この場合、移動オブジェクトは、処理済みセルから移動する方向に沿って対象セルに入ってくるものとする。なお、対象セルとなる通過オブジェクトが移動オブジェクトの移動方向に沿った隣接するセルを有しない場合、処理は、ステップS507からステップS508に遷移する。この場合、オブジェクト処理部115は、1つのゲートオブジェクトに対する処理を終了する。 After that, the process returns from step S507 to step S502. In this case, in step S502, the "start point" is read as the "cell adjacent to the processed cell" and the process is performed. In this case, the moving object is assumed to enter the target cell in the direction of movement from the processed cell. Note that if the passing object that is the target cell does not have an adjacent cell along the moving direction of the moving object, the process transitions from step S507 to step S508. In this case, the object processing unit 115 ends the process for one gate object.

オブジェクト処理部115は、ゲートオブジェクトiが配列オブジェクト管理情報1223に保存された最終ゲートオブジェクト(i=N)であるか否かを判定する(ステップS508)。オブジェクト処理部115により、ゲートオブジェクトiが最終ゲートオブジェクトであると判定された場合(ステップS508:YES)、処理は、ステップS508からステップS509へ遷移する。オブジェクト処理部115により、ゲートオブジェクトiが最終ゲートオブジェクトでないと判定された場合(ステップS508:NO)、処理は、ステップS508からステップS501へ戻る。この場合、オブジェクト処理部115は、配列オブジェクト管理情報1223から次のゲートオブジェクトiに関する情報を取得する。オブジェクト処理部115は、ゲートオブジェクトiが最終ゲートオブジェクトに一致するまでステップS501~ステップS508の処理を繰り返す。ゲートオブジェクトiが最終ゲートオブジェクトに一致することは、オブジェクト処理部115による全てのゲートオブジェクトに対するステップS501~ステップS508の処理の終了に対応する。 The object processing unit 115 determines whether the gate object i is the final gate object (i=N) stored in the array object management information 1223 (step S508). If the object processing unit 115 determines that the gate object i is the final gate object (step S508: YES), the process transitions from step S508 to step S509. If the object processing unit 115 determines that the gate object i is not the final gate object (step S508: NO), the process returns from step S508 to step S501. In this case, the object processing unit 115 obtains information on the next gate object i from the array object management information 1223. The object processing unit 115 repeats the processes of steps S501 to S508 until the gate object i matches the final gate object. Matching of the gate object i with the final gate object corresponds to the end of the processes of steps S501 to S508 by the object processing unit 115 for all gate objects.

正解処理部117は、ゲートオブジェクトiが最終ゲートオブジェクトであると判定されたことに応答して、安全セルを取得する(ステップS509)。ステップS509では、例えば、正解処理部117は、配列オブジェクト管理情報1223及び移動オブジェクト管理情報1224に基づいて、安全セルを取得する。安全セルは、移動オブジェクトの位置に基づくセルである。安全セルは、ゲートオブジェクトから移動する移動オブジェクトが通過しないセルである。正解処理部117は、移動オブジェクトが通過しないセルを安全セルとして配列オブジェクト管理情報1223に保存してもよい。 In response to the determination that the gate object i is the final gate object, the correct answer processing unit 117 acquires a safe cell (step S509). In step S509, for example, the correct answer processing unit 117 acquires a safe cell based on the array object management information 1223 and the moving object management information 1224. A safe cell is a cell based on the position of a moving object. A safe cell is a cell that a moving object moving from a gate object does not pass through. The correct answer processing unit 117 may store a cell that a moving object does not pass through as a safe cell in the array object management information 1223.

正解処理部117は、配列オブジェクト管理情報1223に基づいて、ユーザオブジェクトの位置が安全セルの位置に含まれるか否かを判定する(ステップS510)。ステップS510では、例えば、正解処理部117は、ユーザオブジェクトの位置と安全セルの位置を比較し、ユーザオブジェクトの位置が安全セルの位置に一致するか否かを判定する。正解処理部117により、ユーザオブジェクトの位置が安全セルの位置に一致すると判定された場合(ステップS510:YES)、処理は、ステップS510からステップS511へ遷移する。正解処理部117により、ユーザオブジェクトの位置が安全セルの位置に一致しないと判定された場合(ステップS510:NO)、処理は、ステップS510からステップS512へ遷移する。 The correct answer processing unit 117 judges whether the position of the user object is included in the position of the safe cell based on the array object management information 1223 (step S510). In step S510, for example, the correct answer processing unit 117 compares the position of the user object with the position of the safe cell and judges whether the position of the user object matches the position of the safe cell. If the correct answer processing unit 117 judges that the position of the user object matches the position of the safe cell (step S510: YES), the process transitions from step S510 to step S511. If the correct answer processing unit 117 judges that the position of the user object does not match the position of the safe cell (step S510: NO), the process transitions from step S510 to step S512.

正解処理部117は、ユーザオブジェクトの位置が安全セルの位置に一致すると判定されたことに応答して、ユーザオブジェクトの位置が正解であると判定する(ステップS511)。 In response to determining that the position of the user object matches the position of the safety cell, the correct answer processing unit 117 determines that the position of the user object is correct (step S511).

正解処理部117は、ユーザオブジェクトの位置が安全セルの位置に一致しないと判定されたことに応答して、ユーザオブジェクトの位置が不正解であると判定する(ステップS512)。 In response to determining that the position of the user object does not match the position of the safety cell, the correct answer processing unit 117 determines that the position of the user object is incorrect (step S512).

図8は、実施形態に係るゲームプログラムによって実現されるユーザ端末100に表示される画像Im2の例を示す図である。 Figure 8 shows an example of an image Im2 displayed on a user terminal 100 implemented by a game program according to an embodiment.

表示部1072は、制限時間経過後の画像Im2を表示する。画像Im2は、配列オブジェクトOb1、ゲートオブジェクトOb21-1~Ob21-4、固定オブジェクトOb22-1~Ob22-3、Ob23、ユーザオブジェクトOb3、移動オブジェクトOb4-1~Ob4-4、安全セルオブジェクトOb5、及びゲーム進行オブジェクトOb6~Ob8を含む画像である。ユーザの操作によりユーザオブジェクトOb3の位置が画像Im1に示した位置から変更された場合を想定する。画像Im2は、制限時間が経過したことに応答して、移動オブジェクトOb4がゲートオブジェクトOb21から移動した場合の画像を示す。 The display unit 1072 displays image Im2 after the time limit has elapsed. Image Im2 is an image that includes array object Ob1, gate objects Ob21-1 to Ob21-4, fixed objects Ob22-1 to Ob22-3, Ob23, user object Ob3, moving objects Ob4-1 to Ob4-4, safety cell object Ob5, and game progress objects Ob6 to Ob8. Assume that the position of user object Ob3 has been changed from the position shown in image Im1 by a user operation. Image Im2 shows an image when moving object Ob4 has moved from gate object Ob21 in response to the time limit having elapsed.

オブジェクト処理部115は、ユーザの操作に基づいて移動されたセルにユーザオブジェクトOb3を表示する。オブジェクト処理部115は、ユーザオブジェクトOb3が安全セルに配置された場合、ユーザオブジェクトOb3の表示態様を変えてもよい。例えば、オブジェクト処理部115は、ユーザオブジェクトOb3を画像Im1の場合と異なる色、明度又は輝度で表示してもよい。オブジェクト処理部115は、ユーザオブジェクトOb3を点滅表示させてもよい。 The object processing unit 115 displays the user object Ob3 in the cell to which the user object Ob3 has been moved based on the user's operation. When the user object Ob3 is placed in a safe cell, the object processing unit 115 may change the display mode of the user object Ob3. For example, the object processing unit 115 may display the user object Ob3 in a color, brightness, or luminance different from that of the image Im1. The object processing unit 115 may display the user object Ob3 in a flashing manner.

オブジェクト処理部115は、配列オブジェクトOb1における固定オブジェクトOb22-1~Ob22-3、Ob23により制御された移動オブジェクトOb4-1~Ob4-4を表示する。 The object processing unit 115 displays the fixed objects Ob22-1 to Ob22-3 in the array object Ob1 and the moving objects Ob4-1 to Ob4-4 controlled by Ob23.

図8の例では、移動オブジェクトOb4-1~Ob4-4は、ゲートオブジェクトOb21-1~Ob21-4から出発し、固定オブジェクトOb22-1~Ob22-3、Ob23により順次移動方向が変更される。
ゲートオブジェクトOb21-1から移動する移動オブジェクトOb4-1を例に説明する。移動オブジェクトOb4-1は、ゲートオブジェクトOb21-1から出発し、固定オブジェクトOb22-2により移動方向が変更され、固定オブジェクトOb22-3により移動方向が変更され、固定オブジェクトOb23を通過する。
In the example of FIG. 8, moving objects Ob4-1 to Ob4-4 start from gate objects Ob21-1 to Ob21-4, and have their movement directions changed successively by fixed objects Ob22-1 to Ob22-3 and Ob23.
An example of a moving object Ob4-1 moving from a gate object Ob21-1 will be described below. The moving object Ob4-1 starts from the gate object Ob21-1, has its moving direction changed by a fixed object Ob22-2, has its moving direction changed by a fixed object Ob22-3, and passes through a fixed object Ob23.

オブジェクト処理部115は、安全セルに安全セルオブジェクトOb5を重ねて表示する。例えば、オブジェクト処理部115は、安全セルオブジェクトOb5を他のセルと異なる色、明度又は輝度で表示してもよい。オブジェクト処理部115は、安全セルオブジェクトOb5を点滅表示させてもよい。 The object processing unit 115 displays the safe cell object Ob5 by overlaying it on the safe cell. For example, the object processing unit 115 may display the safe cell object Ob5 in a color, brightness, or luminance different from other cells. The object processing unit 115 may display the safe cell object Ob5 in a blinking manner.

オブジェクト処理部115は、ゲートオブジェクトOb21-1~Ob21-4を画像Im1の場合と異なる色、明度又は輝度で表示してもよい。オブジェクト処理部115は、ゲートオブジェクトOb21-1~Ob21-4を点滅表示させてもよい。 The object processing unit 115 may display the gate objects Ob21-1 to Ob21-4 in a color, brightness, or luminance different from that of the image Im1. The object processing unit 115 may cause the gate objects Ob21-1 to Ob21-4 to blink.

ゲーム進行オブジェクトOb6において、リタイアボタンが表示される。
ゲーム進行オブジェクトOb7において、キャラクタオブジェクトが表示される。
ゲーム進行オブジェクトOb8において、ステータスオブジェクトが表示される。
ゲーム進行オブジェクトOb9において、テキストオブジェクトが表示される。テキストオブジェクトは、正解を示すメッセージを含む。図8の例では、ユーザオブジェクトOb3-1~Ob3-2が安全セルに配置されているため、正解処理部117によりクリア条件を満たしたと判定される。この例では、ゲーム進行オブジェクトOb9において、「GOOD」が表示される。
A retire button is displayed in the game progress object Ob6.
A character object is displayed in the game progress object Ob7.
A status object is displayed in the game progress object Ob8.
A text object is displayed on the game progression object Ob9. The text object includes a message indicating the correct answer. In the example of FIG. 8, since the user objects Ob3-1 to Ob3-2 are placed in the safe cells, the correct answer processing unit 117 determines that the clearing condition is satisfied. In this example, "GOOD" is displayed on the game progression object Ob9.

(4)効果
以上詳述したように、ゲームプログラムは、コンピュータに少なくとも1つのユーザオブジェクトに対するユーザの操作に基づいて、少なくとも1つのユーザオブジェクトの位置を更新させ、少なくとも1つのユーザオブジェクトの位置と移動オブジェクトの位置とに基づいてユーザオブジェクトの位置の正解を判定させることができる。これにより、ゲームプログラムは、ユーザによる簡単な操作に基づいて、コンピュータにユーザオブジェクトの位置を更新させ、更新されたユーザオブジェクトの位置に基づいて正解を判定させることができる。そのため、ユーザは、ユーザオブジェクトの移動操作のみで直感的にパズルゲームをプレイすることができる。また、ゲームプログラムは、コンピュータに配列オブジェクトにおいて少なくとも1つのゲートオブジェクトから移動する移動オブジェクトを表示させることができる。これにより、ゲームプログラムは、ゲートオブジェクトの数及び位置の設定により難易度を変えることができる。そのため、ユーザは、難易度の異なるゲームをプレイすることができる。このように、ゲームプログラムは、パズルゲームの興趣性を一層高めることができる。
(4) Effects As described above in detail, the game program can cause the computer to update the position of at least one user object based on the user's operation on at least one user object, and determine the correct answer for the position of the user object based on the position of at least one user object and the position of the moving object. As a result, the game program can cause the computer to update the position of the user object based on a simple operation by the user, and determine the correct answer based on the updated position of the user object. Therefore, the user can intuitively play the puzzle game by only moving the user object. In addition, the game program can cause the computer to display a moving object that moves from at least one gate object in the array object. As a result, the game program can change the difficulty level by setting the number and positions of the gate objects. Therefore, the user can play games with different difficulty levels. In this way, the game program can further increase the interest of the puzzle game.

ゲームプログラムは、コンピュータに第1の方向と第1の方向に直交する第2の方向により規定された複数のセルにより構成される配列オブジェクトを表示させることができる。これにより、ゲームプログラムは、不規則に配置された配列オブジェクトと比べ、コンピュータに複雑な処理を要せず移動オブジェクトの表示処理を行わせることができる。また、ユーザは、移動オブジェクトが表示されるセルを比較的短時間で把握して、ユーザオブジェクトの操作を行うことができる。そのため、ユーザは、短時間でゲームをプレイすることができる。このように、ゲームプログラムは、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to display an array object made up of a plurality of cells defined by a first direction and a second direction perpendicular to the first direction. This allows the game program to cause the computer to perform display processing of moving objects without requiring complex processing, as compared to array objects arranged irregularly. Furthermore, the user can grasp the cell in which the moving object is displayed in a relatively short time and operate the user object. This allows the user to play the game in a short time. In this way, the game program can further increase the interest of puzzle games.

ゲームプログラムは、コンピュータにセルの一辺から入り他の一辺から出る光線である移動オブジェクトを表示させることができる。これにより、ゲームプログラムは、移動オブジェクトの表示処理を容易に行うことができる。また、ユーザは、移動オブジェクトの移動を光の動きとして直感的に把握することができる。そのため、ユーザは、直感的にゲームをプレイすることができる。このように、ゲームプログラムは、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to display moving objects that are rays of light entering one side of a cell and exiting the other side. This allows the game program to easily perform the display process of the moving objects. Also, the user can intuitively grasp the movement of the moving object as the movement of light. This allows the user to play the game intuitively. In this way, the game program can further increase the interest of the puzzle game.

ゲームプログラムは、コンピュータに移動オブジェクトが移動する移動方向を変更する少なくとも1つの方向オブジェクトを表示させることができる。これにより、ゲームプログラムは、方向オブジェクトの数及び位置の設定により難易度を変えることができる。そのため、ユーザは、難易度の異なるゲームをプレイすることができる。このように、ゲームプログラムは、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to display at least one directional object that changes the direction in which the moving object moves. This allows the game program to change the difficulty level by setting the number and positions of the directional objects. This allows the user to play games with different levels of difficulty. In this way, the game program can further increase the interest of the puzzle game.

ゲームプログラムは、コンピュータに方向オブジェクトをゲームに設定されたセルに固定して表示させることができる。これにより、ゲームプログラムは、コンピュータに設定された位置に停止オブジェクトを表示させることのみで容易にゲームの難易度を変更することができる。また、ユーザは、停止オブジェクトの位置を変更することができないため、制約されたルールの範囲でゲームをプレイすることとなる。そのため、ゲームプログラムは、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to fix and display the directional object in a cell set in the game. This allows the game program to easily change the difficulty level of the game simply by displaying the stationary object in a position set in the computer. Furthermore, since the user cannot change the position of the stationary object, the user plays the game within the restricted rules. Therefore, the game program can further increase the interest of the puzzle game.

ゲームプログラムは、コンピュータにユーザと異なる他のユーザの操作に基づいて、少なくとも1つのユーザオブジェクトの位置を変更させることができる。これにより、ゲームプログラムは、コンピュータに他のユーザの操作に関する情報を取得させることで、容易にユーザオブジェクトの位置を更新させることができる。また、ユーザは、他のユーザの操作に応じた移動オブジェクトの移動を直感的に把握することができる。そのため、ユーザは、簡単な操作で複数のユーザと協力してゲームをプレイすることができる。さらに、ゲームプログラムは、コンピュータに他のユーザにより操作されるユーザオブジェクトの数を変更させることで、ゲームの難易度を変更することができる。このように、ゲームプログラムは、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to change the position of at least one user object based on the operation of another user different from the user. In this way, the game program can cause the computer to obtain information regarding the operation of another user, thereby easily updating the position of the user object. Furthermore, the user can intuitively grasp the movement of the moving object in response to the operation of another user. Therefore, the user can play the game in cooperation with multiple users with simple operations. Furthermore, the game program can change the difficulty level of the game by causing the computer to change the number of user objects operated by another user. In this way, the game program can further increase the interest of the puzzle game.

ゲームプログラムは、コンピュータにゲームに設定された制限時間が経過したことに応答して移動オブジェクトを表示させることができる。これにより、ゲームプログラムは、コンピュータに制限時間の経過に基づいて移動オブジェクトを表示させ、正解判定を行わせることができる。そのため、ゲームプログラムは、コンピュータに設定されたタイミングで表示処理及び正解判定処理を行わせることができるため、コンピュータによる処理を容易にすることができる。また、ユーザは、制限時間が経過するまでにユーザオブジェクトを操作するというスピード感を要求される。このように、ゲームプログラムは、ユーザが制限時間内にユーザオブジェクトを操作することへの動機付けを生み出し、パズルゲームの興趣性を一層高めることができる。また、ゲームプログラムは、制限時間の設定により、短時間で完結するゲームを提供することができる。そのため、ユーザは、隙間時間に気軽にゲームをプレイすることができる。このように、ゲームプログラムは、ユーザがゲームをプレイする機会を促し、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to display the moving object in response to the lapse of a time limit set in the game. This allows the game program to cause the computer to display the moving object based on the lapse of the time limit and to perform a correct answer determination. Therefore, the game program can cause the computer to perform the display process and the correct answer determination process at a timing set in the computer, making the computer's processing easier. In addition, the user is required to operate the user object quickly before the time limit elapses. In this way, the game program creates an incentive for the user to operate the user object within the time limit, and can further increase the interest of the puzzle game. In addition, the game program can provide a game that can be completed in a short time by setting a time limit. Therefore, the user can casually play the game in his or her spare time. In this way, the game program can encourage the user to play the game, and can further increase the interest of the puzzle game.

ゲームプログラムは、コンピュータに制限時間までの残り時間に応じて少なくとも1つのゲートオブジェクトの表示態様を変えて表示させることができる。これにより、ゲームプログラムは、コンピュータに残り時間を示すインジケータを独立して表示させる必要がない。また、ユーザは、ゲートオブジェクトの表示態様の変化に基づいて直感的に時間経過を把握することができる。このように、ゲームプログラムは、表示の変化により高揚感をもたらし、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to change and display at least one gate object in a different display mode depending on the time remaining until the time limit. This eliminates the need for the game program to cause the computer to display a separate indicator showing the remaining time. Furthermore, the user can intuitively grasp the passage of time based on the change in the display mode of the gate object. In this way, the game program can create a sense of excitement through the change in display, further increasing the interest of the puzzle game.

ゲームプログラムは、コンピュータに正解の判定結果に応じて少なくとも1つのユーザオブジェクトの表示態様を変えて表示させることができる。これにより、ゲームプログラムは、コンピュータにユーザオブジェクトの表示態様を変化させることのみで正誤判定結果を表示させることができる。また、ユーザは、ユーザオブジェクトの表示態様の変化に基づいて直感的に正誤判定結果を把握することができる。このように、ゲームプログラムは、表示の変化により高揚感をもたらし、パズルゲームの興趣性を一層高めることができる。 The game program can cause the computer to change and display at least one user object's display mode depending on the result of the correct answer determination. In this way, the game program can cause the computer to display the result of the correct answer determination simply by changing the display mode of the user object. Furthermore, the user can intuitively understand the result of the correct answer determination based on the change in the display mode of the user object. In this way, the game program can create a sense of excitement through the change in display, further increasing the interest of the puzzle game.

ゲームプログラムは、コンピュータに移動オブジェクトが表示されないセルを安全セルとして取得させ、少なくとも1つのユーザオブジェクトの位置が安全セルの位置に含まれるか否かに応じて正解を判定させることができる。これにより、ゲームプログラムは、コンピュータにユーザオブジェクトの位置と安全セルの位置との比較のみで正解判定処理を容易に行わせることができる。また、ユーザは、正解の判定基準を容易に理解することができる。このように、ゲームプログラムは、正解の判定基準を容易にし、パズルゲームの興趣性を一層高めることができる。 The game program allows the computer to obtain cells in which no moving object is displayed as safe cells, and to determine the correct answer depending on whether the position of at least one user object is included in the position of a safe cell. This allows the game program to easily allow the computer to perform the correct answer determination process simply by comparing the position of the user object with the position of the safe cell. Furthermore, the user can easily understand the criteria for determining the correct answer. In this way, the game program makes it easier to determine the correct answer, further increasing the interest of the puzzle game.

ゲームプログラムは、コンピュータに正解を判定したことに応答して、安全セルを示す安全セルオブジェクトを表示させる。これにより、ゲームプログラムは、コンピュータに安全セルの表示態様を変更させることのみで正誤判定結果を表示させることができる。また、ユーザは、安全セルの表示態様の変化に基づいて直感的に正誤判定結果を把握することができる。このように、ゲームプログラムは、表示の変化により高揚感をもたらし、パズルゲームの興趣性を一層高めることができる。 In response to the computer determining that the answer is correct, the game program causes the computer to display a safety cell object that indicates a safety cell. In this way, the game program can cause the computer to display the result of the correct answer determination simply by changing the display mode of the safe cell. Furthermore, the user can intuitively grasp the result of the correct answer determination based on the change in the display mode of the safe cell. In this way, the game program can create a sense of excitement through the change in display, further increasing the interest of the puzzle game.

なお、この発明は上述の実施形態に限定されるものではない。 However, this invention is not limited to the above-mentioned embodiments.

上述の実施形態では、オブジェクト処理部115は、配列オブジェクト、ゲートオブジェクト、固定オブジェクト、ユーザオブジェクト、移動オブジェクト、及び安全セルオブジェクト以外に、ゲーム進行オブジェクトを表示する例について説明したが、これに限定されない。オブジェクト処理部115は、配列オブジェクト、ゲートオブジェクト、固定オブジェクト、ユーザオブジェクト、移動オブジェクト、及び安全セルオブジェクト以外に、ゲーム進行オブジェクトの少なくとも何れか1つのオブジェクトを表示してもよい。 In the above embodiment, an example has been described in which the object processing unit 115 displays game progress objects in addition to array objects, gate objects, fixed objects, user objects, moving objects, and safe cell objects, but this is not limited to the example. The object processing unit 115 may display at least one of the game progress objects in addition to array objects, gate objects, fixed objects, user objects, moving objects, and safe cell objects.

上述の実施形態では、移動オブジェクトは光線であるとして説明したが、これに限定されない。移動オブジェクトは、水流等の液体、パイプ等の固体等であってもよい。また、移動オブジェクトは、複数のセルにまたがって移動する軌跡を表すものであってもよく、軌跡を有しないキャラクタ等の移動体であってもよい。 In the above embodiment, the moving object is described as a ray of light, but this is not limited to the above. The moving object may be a liquid such as a water flow, or a solid such as a pipe. The moving object may also represent a trajectory that moves across multiple cells, or may be a moving body such as a character that does not have a trajectory.

上述の実施形態では、方向オブジェクトは反射板であるとして説明したが、これに限定されない。方向オブジェクトは、移動オブジェクトの方向を制御可能なオブジェクトであればよい。 In the above embodiment, the directional object is described as a reflector, but is not limited to this. The directional object may be any object that can control the direction of a moving object.

タッチパネルを入力部1071の例にして説明したが、これに限定されない。入力部1071は、複数のボタンを備えるコントローラであってもよい。 Although a touch panel has been described as an example of the input unit 1071, the input unit 1071 is not limited to this. The input unit 1071 may be a controller equipped with multiple buttons.

例えば、サーバ200及びユーザ端末100の構成は、実施形態に係るゲームプログラムを実現可能な他の構成に置き換えられてもよい。サーバ200の構成及びユーザ端末100の構成は、省略され、複数の装置に分散配置され、類似の構成に置き換えられてもよい。サーバ200及びユーザ端末100の各機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。 For example, the configuration of the server 200 and the user terminal 100 may be replaced with another configuration capable of implementing the game program according to the embodiment. The configuration of the server 200 and the configuration of the user terminal 100 may be omitted, distributed among multiple devices, and replaced with a similar configuration. Each functional unit of the server 200 and the user terminal 100 may be implemented using a circuit. The circuit may be a dedicated circuit that implements a specific function, or may be a general-purpose circuit such as a processor.

さらに、フローチャートを用いて説明した処理の流れは、説明した手順に限定されるものではなく、いくつかのステップの順序が入れ替えられてもよいし、いくつかのステップが同時並行で実施されてもよい。また、以上で説明した一連の処理は、時間的に連続して実行される必要はなく、各ステップは任意のタイミングで実行されてもよい。 Furthermore, the process flow described using the flowchart is not limited to the procedure described, and the order of some steps may be changed, or some steps may be performed simultaneously in parallel. Also, the series of processes described above do not need to be performed consecutively in time, and each step may be performed at any timing.

上記各実施形態の処理の少なくとも一部は、例えば汎用のコンピュータに搭載されたプロセッサを基本ハードウェアとして用いることでも実現可能である。上記処理を実現するプログラムは、コンピュータで読み取り可能な記録媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイル又は実行可能な形式のファイルとして記録媒体に記憶される。記録媒体としては、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD等)、光磁気ディスク(MO等)、半導体メモリ等である。記録媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、上記処理を実現するプログラムを、インターネット等のネットワークに接続されたコンピュータ(サーバ)上に格納し、ネットワーク経由でコンピュータ(クライアント)にダウンロードさせてもよい。 At least a part of the processing of each of the above embodiments can be realized by using, for example, a processor installed in a general-purpose computer as basic hardware. The program that realizes the above processing may be provided by being stored in a computer-readable recording medium. The program is stored in the recording medium as a file in an installable format or an executable format. Examples of the recording medium include magnetic disks, optical disks (CD-ROM, CD-R, DVD, etc.), magneto-optical disks (MO, etc.), semiconductor memories, etc. The recording medium may be any type that can store a program and is computer-readable. In addition, the program that realizes the above processing may be stored on a computer (server) connected to a network such as the Internet, and downloaded to a computer (client) via the network.

なお、この発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。 Note that this invention is not limited to the above-described embodiment, and various modifications can be made in the implementation stage without departing from the gist of the invention. The embodiments may also be implemented in appropriate combination, in which case the combined effects can be obtained. Furthermore, the above-described embodiment includes various inventions, and various inventions can be extracted by combinations selected from the multiple constituent elements disclosed. For example, if the problem can be solved and an effect can be obtained even if some constituent elements are deleted from all the constituent elements shown in the embodiment, the configuration from which these constituent elements are deleted can be extracted as an invention.

1…ゲームシステム、100…ユーザ端末、110…制御部、111…操作受付部、112…ゲーム進行部、113…仮想カメラ制御部、114…表示制御部、115…オブジェクト処理部、116…オブジェクト操作取得部、117…正解処理部、120…記憶部、121…ゲームプログラム記憶部、122…ゲーム情報記憶部、200…サーバ、210…制御部、211…受信制御部、212…送信制御部、213…ゲーム進行部、220…記憶部、221…ゲームプログラム記憶部、222…ゲーム情報記憶部、223…ユーザ情報データベース、1001…プロセッサ、1002…メモリ、1003…ストレージ、1004…センサ、1005…通信インタフェース、1006…入出力インタフェース、1007…タッチスクリーン、1008…バス、1071…入力部、1072…表示部、1221…オブジェクトデータ、1222…オブジェクトタイプテーブル、1223…配列オブジェクト管理情報、1224…移動オブジェクト管理情報、1225…制限時間情報、1226…クリア条件情報、2001…プロセッサ、2002…メモリ、2003…ストレージ、2004…通信インタフェース、2005…入出力インタフェース、2006…バス、Im1…画像、Im2…画像、NW…ネットワーク、Ob1…配列オブジェクト、Ob3…ユーザオブジェクト、Ob4-1~Ob4-4…移動オブジェクト、Ob5…安全セルオブジェクト、Ob6…ゲーム進行オブジェクト、Ob7…ゲーム進行オブジェクト、Ob8…ゲーム進行オブジェクト、Ob9…ゲーム進行オブジェクト、Ob21-1~Ob21-4…ゲートオブジェクト、Ob22-1~Ob22-3…固定オブジェクト、Ob23…固定オブジェクト。 1...game system, 100...user terminal, 110...control unit, 111...operation reception unit, 112...game progression unit, 113...virtual camera control unit, 114...display control unit, 115...object processing unit, 116...object operation acquisition unit, 117...correct answer processing unit, 120...storage unit, 121...game program storage unit, 122...game information storage unit, 200...server, 210...control unit, 211...reception control unit, 212...transmission control unit , 213 ... game progression unit, 220 ... storage unit, 221 ... game program storage unit, 222 ... game information storage unit, 223 ... user information database, 1001 ... processor, 1002 ... memory, 1003 ... storage, 1004 ... sensor, 1005 ... communication interface, 1006 ... input/output interface, 1007 ... touch screen, 1008 ... bus, 1071 ... input unit, 1072 ... display unit, 1221 ... object object data, 1222...object type table, 1223...array object management information, 1224...moving object management information, 1225...time limit information, 1226...clearing condition information, 2001...processor, 2002...memory, 2003...storage, 2004...communication interface, 2005...input/output interface, 2006...bus, Im1...image, Im2...image, NW...network, Ob1...array object, Ob3...user object, Ob4-1 to Ob4-4...moving object, Ob5...safety cell object, Ob6...game progress object, Ob7...game progress object, Ob8...game progress object, Ob9...game progress object, Ob21-1 to Ob21-4...gate object, Ob22-1 to Ob22-3...fixed object, Ob23...fixed object.

Claims (10)

コンピュータによって実行されるゲームプログラムであって、
前記コンピュータ
ゲームに設定された少なくとも1つのゲートオブジェクトを表示する手段
方向オブジェクト及び少なくとも1つのユーザオブジェクトを含む複数のオブジェクトを配置する配列オブジェクトを表示する手段
前記少なくとも1つのユーザオブジェクトに対するユーザの操作に基づいて、前記少なくとも1つのユーザオブジェクトの位置を更新する手段
前記配列オブジェクトにおいて前記少なくとも1つのゲートオブジェクトから移動する移動オブジェクトを表示する手段
前記少なくとも1つのユーザオブジェクトの位置が、前記移動オブジェクトが表示されないセルの位置に含まれるか否かに基づいて前記少なくとも1つのユーザオブジェクトの位置の正解を判定する手段
として機能させ、
前記方向オブジェクトは、前記移動オブジェクトが移動する移動方向を変更する、ゲームプログラム。
A game program executed by a computer,
The computer ,
A means for displaying at least one gate object set in the game;
means for displaying an array object for arranging a plurality of objects including a direction object and at least one user object;
means for updating a position of the at least one user object based on a user's operation on the at least one user object;
means for displaying a moving object moving from said at least one gate object in said array object;
a means for determining a correct answer for the position of the at least one user object based on whether or not the position of the at least one user object is included in a position of a cell in which the moving object is not displayed ;
Function as a
The direction object changes a moving direction in which the moving object moves.
前記配列オブジェクトは、第1の方向と前記第1の方向に直交する第2の方向により規定された複数のセルにより構成される、
請求項1に記載のゲームプログラム。
the array object is composed of a plurality of cells defined by a first direction and a second direction perpendicular to the first direction;
The game program according to claim 1 .
前記移動オブジェクトは、セルの一辺から入り他の一辺から出る光線である、
請求項2に記載のゲームプログラム。
The moving object is a ray that enters from one side of a cell and exits from the other side.
The game program according to claim 2.
前記方向オブジェクトは、前記ゲームに設定されたセルに固定される、
請求項に記載のゲームプログラム。
The directional object is fixed to a cell set in the game.
The game program according to claim 1 .
前記コンピュータを
前記ユーザと異なる他のユーザの操作に基づいて、前記少なくとも1つのユーザオブジェクトの位置を更新する手段としてさらに機能させる、
請求項に記載のゲームプログラム。
and causing the computer to further function as a means for updating a position of the at least one user object based on an operation of a user different from the user.
The game program according to claim 1 .
前記移動オブジェクトを表示する手段は、前記ゲームに設定された制限時間が経過したことに応答して前記移動オブジェクトを表示する手段を含む、
請求項1からの何れか1項に記載のゲームプログラム。
the means for displaying the moving object includes means for displaying the moving object in response to a time limit set in the game having elapsed.
The game program according to any one of claims 1 to 5 .
前記コンピュータを
前記ゲームに設定された制限時間までの残り時間に応じて前記少なくとも1つのゲートオブジェクトの表示態様を変えて表示する手段としてさらに機能させる、
請求項1からの何れか1項に記載のゲームプログラム。
causing the computer to further function as a means for changing and displaying a display mode of the at least one gate object in accordance with the remaining time until a time limit set for the game;
The game program according to any one of claims 1 to 6 .
前記コンピュータを
前記正解の判定結果に応じて前記少なくとも1つのユーザオブジェクトの表示態様を変えて表示する手段としてさらに機能させる、
請求項1からの何れか1項に記載のゲームプログラム。
and causing the computer to further function as a means for changing and displaying the at least one user object in a display manner in accordance with the result of the determination of the correct answer.
The game program according to any one of claims 1 to 7 .
前記正解を判定する手段は、前記移動オブジェクトが表示されないセルを安全セルとして取得し、前記少なくとも1つのユーザオブジェクトの位置が前記安全セルの位置に含まれるか否かに応じて正解を判定する手段を含む、
請求項に記載のゲームプログラム。
the means for determining the correct answer includes means for acquiring a cell in which the moving object is not displayed as a safe cell, and determining the correct answer depending on whether a position of the at least one user object is included in a position of the safe cell .
The game program according to claim 1 .
前記コンピュータを
前記正解を判定したことに応答して、前記安全セルを示す安全セルオブジェクトを表示する手段としてさらに機能させる、
請求項に記載のゲームプログラム。
and causing the computer to further function as a means for displaying a safe cell object representing the safe cell in response to determining the correct answer.
The game program according to claim 9 .
JP2021122524A 2021-07-27 2021-07-27 Game Program Active JP7543223B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021122524A JP7543223B2 (en) 2021-07-27 2021-07-27 Game Program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021122524A JP7543223B2 (en) 2021-07-27 2021-07-27 Game Program

Publications (2)

Publication Number Publication Date
JP2023018411A JP2023018411A (en) 2023-02-08
JP7543223B2 true JP7543223B2 (en) 2024-09-02

Family

ID=85158116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021122524A Active JP7543223B2 (en) 2021-07-27 2021-07-27 Game Program

Country Status (1)

Country Link
JP (1) JP7543223B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004016443A (en) 2002-06-14 2004-01-22 Atlus Co Ltd Game device
JP2020168481A (en) 2020-07-09 2020-10-15 グリー株式会社 Game program, method for controlling computer and information processing device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004016443A (en) 2002-06-14 2004-01-22 Atlus Co Ltd Game device
JP2020168481A (en) 2020-07-09 2020-10-15 グリー株式会社 Game program, method for controlling computer and information processing device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
reflectの紹介とプレイ感想(公開終了),フリーゲームで遊ぼう![online],2018年06月24日,インターネット<URL:https://tkoolgamerev.com/tkool-mv/reflect>,[2024年3月29日検索]

Also Published As

Publication number Publication date
JP2023018411A (en) 2023-02-08

Similar Documents

Publication Publication Date Title
US10905960B2 (en) Game system, terminal device and program
JP6721297B2 (en) Game device
JP6612391B1 (en) GAME PROGRAM, METHOD, AND INFORMATION PROCESSING DEVICE
JP6770036B2 (en) Programs, methods, and information processing equipment
JP6547035B1 (en) Game program, method, and information processing apparatus
JP7526848B2 (en) Program and method
JP7450382B2 (en) Game programs, server devices and game systems
JP2020048813A (en) Game program, method, and information processing device
JP6964349B2 (en) Game system, computer program used for it, and control method
JP7543223B2 (en) Game Program
JP7400140B1 (en) game program
JP7566964B2 (en) program
JP2019126471A (en) Game program, method and information processor
JP2022172782A (en) game program
JP2024029668A (en) game program
JP7050029B2 (en) Game programs, how to run game programs, and information processing equipment
JP7335712B2 (en) game program
JP7272799B2 (en) Game program, method, and information processing device
JP6503118B1 (en) Game program, method, and information processing apparatus
JP7285082B2 (en) Game program, method, and information processing device
JP2023018417A (en) game program
JP2022131381A (en) program
WO2022259654A1 (en) Game program
JP2020096863A (en) Game program, method, and information processing device
JP7209428B2 (en) Program and information processing device

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240524

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240821

R150 Certificate of patent or registration of utility model

Ref document number: 7543223

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150