JP2023136345A - ゲームプログラム、情報処理システム、および情報処理方法 - Google Patents

ゲームプログラム、情報処理システム、および情報処理方法 Download PDF

Info

Publication number
JP2023136345A
JP2023136345A JP2022041917A JP2022041917A JP2023136345A JP 2023136345 A JP2023136345 A JP 2023136345A JP 2022041917 A JP2022041917 A JP 2022041917A JP 2022041917 A JP2022041917 A JP 2022041917A JP 2023136345 A JP2023136345 A JP 2023136345A
Authority
JP
Japan
Prior art keywords
moving
moving object
branch
game
course
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.)
Pending
Application number
JP2022041917A
Other languages
English (en)
Inventor
美由紀 木村
Miyuki Kimura
匠 齋藤
Takumi Saito
亮 小玉
Akira Kodama
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.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
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 Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2022041917A priority Critical patent/JP2023136345A/ja
Priority to US18/120,008 priority patent/US20230293991A1/en
Priority to CN202310247261.2A priority patent/CN116764201A/zh
Publication of JP2023136345A publication Critical patent/JP2023136345A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/49Saving the game status; Pausing or ending the game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/47Controlling the progress of the video game involving branching, e.g. choosing one of several possible scenarios at a given point in time
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/803Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/44Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/69Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】レースゲームにおいて、経路にバリエーションを持たせることが可能なゲームプログラムを提供する。【解決手段】ゲームシステムの一例は、仮想空間内のコースに設定された順路に沿って複数の移動オブジェクトを移動させるレースゲームを実行する。コースは複数の分岐先に分かれる分岐部分を有し、順路は、複数の移動オブジェクトが分岐部分を複数回通過するように設定される。分岐部分において、移動オブジェクトが進入可能な分岐先又は進入することが制限された分岐先が、当該移動オブジェクトのレースゲームにおける進行度合いに応じて切り替えられる。【選択図】図21

Description

本発明は、レースゲームを実行することが可能なゲームプログラム、情報処理システム、および情報処理方法に関する。
従来より、走行体をコース上で走行させるレースゲームがある(例えば、特許文献1参照)。
特開平11-347247号公報
しかしながら、上記従来のゲームにおいては、例えば走行体がコース上の道を周回する順路である場合、同じ経路を複数回走行するため変化に乏しいという課題があった。
それ故、本発明の目的は、レースゲームにおいて、経路にバリエーションを持たせることが可能なゲームプログラム、情報処理システム、および情報処理方法を提供することである。
上記の課題を解決すべく、本発明は、以下の構成を採用した。
(第1の構成)
第1の構成のゲームプログラムは、コンピュータに仮想空間内のコースオブジェクトによって規定されるコースに設定された順路に沿って複数の移動オブジェクトを移動させることで進行するレースゲームを実行させるゲームプログラムである。前記コースは、複数の分岐先に分かれる分岐部分を有する。前記順路は、前記複数の移動オブジェクトが前記分岐部分を複数回通過するように設定される。前記ゲームプログラムは、前記コンピュータを、前記複数の移動オブジェクトのうち、プレイヤの操作対象である操作対象オブジェクトを、プレイヤの操作入力に基づいて前記コース上で移動させる移動制御手段と、前記分岐部分において、前記操作対象オブジェクトが前記複数の分岐先のうち少なくとも何れか1つの分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する分岐制御手段として機能させる。前記分岐制御手段は、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記操作対象オブジェクト以外の前記移動オブジェクトの前記レースゲームにおける進行度合いにかかわらず、前記操作対象オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える。
上記によれば、操作対象オブジェクトが進入可能な分岐先又は進入を制限される分岐先を、当該操作対象オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える。これにより、同一のコースにおいて移動体に異なる道を走行させることで、バリエーションのある経路を有するレースゲームを実現することができる。
(第2の構成)
第2の構成では、上記第1の構成において、前記分岐制御手段は、前記分岐部分において前記他の分岐先への進入を制限する、又は、前記少なくとも何れか1つの分岐先への進入を可能とする進入制御オブジェクトの有効化と無効化とを切り替えてもよい。
上記によれば、進入制御オブジェクトを有効化又は無効化することにより、操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を切り替えることができる。
(第3の構成)
第3の構成では、上記第2の構成において、前記コースは、前記進入制御オブジェクトを予め含んでもよい。前記分岐制御手段は、前記進入制御オブジェクトの表示、及び/又は、衝突判定の有効化と無効化とを切り替えてもよい。
上記によれば、予めコースに配置された進入制御オブジェクトの表示又は衝突判定の有効/無効を切り替えることにより、上記切り替えを行うことができる。これにより、移動オブジェクト毎に仮想空間を構築する必要が無く、処理負荷を低減させることができる。
(第4の構成)
第4の構成では、上記第3の構成において、前記進入制御オブジェクトは、前記他の分岐先への進入を制限する進入防止オブジェクトであり、前記進入防止オブジェクトは、当該進入防止オブジェクトの奥にある仮想空間を視認可能に表示されてもよい。
上記によれば、進入防止オブジェクトの奥方向を視認可能にすることで、例えば、進行度合いが異なる移動オブジェクトが進入防止オブジェクトをすり抜ける場合であっても、違和感を少なくすることができる。
(第5の構成)
第5の構成では、上記第2から第4の何れかの構成において、前記ゲームプログラムは、前記プレイヤの操作対象である操作対象オブジェクトを含む第1の画像と、前記複数の移動オブジェクトのうちの前記プレイヤの操作対象である前記操作対象オブジェクト以外の第2の移動オブジェクトを含む第2の画像とを生成し、表示画面の第1の領域に前記第1の画像を表示させるとともに、前記表示画面の第2の領域に前記第2の画像を表示させる表示制御手段として、前記コンピュータをさらに機能させてもよい。前記分岐制御手段は、前記操作対象オブジェクト以外の前記移動オブジェクトの前記進行度合いにかかわらず、前記操作対象オブジェクトの前記進行度合いに応じて、前記進入制御オブジェクトの有効化と無効化とを切り替えることにより、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を切り替え、前記第2の移動オブジェクト以外の前記移動オブジェクトの前記進行度合いにかかわらず、前記第2の移動オブジェクトの前記進行度合いに応じて、前記進入制御オブジェクトの有効化と無効化とを切り替えることにより、前記分岐部分において前記第2の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を切り替えてもよい。前記表示制御手段は、前記第1の画像において、前記操作対象オブジェクトの前記進行度合いに応じて前記進入制御オブジェクトの表示を有効化又は無効化し、前記第2の画像において、前記第2の移動オブジェクトの前記進行度合いに応じて前記進入制御オブジェクトの表示を有効化又は無効化してもよい。
上記によれば、画面を分割してそれぞれの画面において移動オブジェクトを表示し、それぞれでゲームを進行させることができる。
(第6の構成)
第6の構成では、上記第1から第5の何れかの構成において、前記レースゲームは、前記コースにおけるスタート地点を複数回通過するゲームであってもよい。前記分岐制御手段は、前記操作対象オブジェクトが前記スタート地点を第1回数通過したときと、第2回数通過したときとで、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先が異なるように、前記切り替えを行ってもよい。
上記によれば、コースを周回するレースゲームにおいて、周回数によって操作対象オブジェクトが移動する経路を異ならせることができる。
(第7の構成)
第7の構成では、上記第6の構成において、前記分岐制御手段は、前記操作対象オブジェクトが前記スタート地点を通過した後であって次の前記スタート地点に到達するまでの間に、前記切り替えを行ってもよい。
上記によれば、操作対象オブジェクトがコースを1周する間に経路の切り替えを行うことができる。
(第8の構成)
第8の構成では、上記第6又は第7の構成において、前記分岐制御手段は、今回の周回において前記操作対象オブジェクトが前記分岐部分を通過した後であって、前記操作対象オブジェクトが次の周回に入る前に、次の周回のための前記切り替えを行ってもよい。
上記によれば、操作対象オブジェクトが次の周回に入る前に経路の切り替えを行うことができ、例えば、操作対象オブジェクトが高速で移動する場合でも、経路の切り替えを行うことができる。
(第9の構成)
第9の構成では、上記第1から第8の何れかの構成において、前記コース上において、前記レースゲームにおいて前記移動オブジェクトに有利又は不利な影響を与えるオブジェクトを、当該移動オブジェクト以外の移動オブジェクトの前記進行度合いに関わらず、当該移動オブジェクトの前記進行度合いに応じて、有効化するオブジェクト制御手段として、前記コンピュータをさらに機能させてもよい。
上記によれば、ゲームにおいて有利又は不利な影響を与えるオブジェクトを、各移動オブジェクトの進行度合いに応じて有効化することができる。
(第10の構成)
第10の構成では、上記第9の構成において、有効化された前記オブジェクトは第1の状態と第2の状態とに変化可能であり、複数の前記移動オブジェクトに対して前記オブジェクトが有効化される場合、当該複数の移動オブジェクト間で前記オブジェクトの状態は共通であってもよい。
上記によれば、各移動オブジェクトの進行度合いに応じてオブジェクトを有効化する場合でも、オブジェクトの状態を共通にすることができる。
(第11の構成)
第11の構成では、上記第1から第10の何れかの構成において、前記コースは、前記複数の移動オブジェクトが前記レースゲーム中に複数回通過する共通路を含み、前記順路は、前記移動オブジェクトが前記共通路を通過する回数が第1回数目のときと、第2回数目のときとで、当該共通路における進行方向が逆になるように設定されてもよい。
上記によれば、移動オブジェクトの進行度合いによって進行方向を異ならせることができ、レースゲームにバリエーションを持たせることができる。
(第12の構成)
第12の構成では、上記第11の構成において、前記移動オブジェクトの所定の方向への移動態様を変化させる移動変化オブジェクトを有効化又は無効化する移動変化オブジェクト制御手段として、前記コンピュータをさらに機能させてもよい。前記移動変化オブジェクト制御手段は、前記移動オブジェクトが前記共通路を移動するときに、当該移動オブジェクトの進行方向と移動態様を変化させる方向とが対応するように、当該移動オブジェクトの前記進行度合いに応じて前記移動変化オブジェクトを有効化又は無効化してもよい。
上記によれば、例えば、移動オブジェクトが第1の進行度合いである場合に第1の方向が進行方向となり、移動オブジェクトが第2の進行度合いである場合に第2の方向が進行方向となる場合において、移動変化オブジェクトは、移動オブジェクトが第1の進行度合いである場合に第1の方向に移動態様を変化させ、移動オブジェクトが第2の進行度合いである場合に第2の方向に移動態様を変化させることができる。
(第13の構成)
第13の構成は、仮想空間内のコースオブジェクトによって規定されるコースに設定された順路に沿って、複数のプレイヤのそれぞれに対応する複数の移動オブジェクトを移動させることで進行するレースゲームを実行する情報処理システムである。前記コースは、複数の分岐先に分かれる分岐部分を有し、前記順路は、前記複数の移動オブジェクトが前記分岐部分を複数回通過するように設定される。情報処理システムは、プレイヤの操作入力に基づいて、当該プレイヤに対応する前記移動オブジェクトを前記コース上で移動させる移動制御手段と、前記分岐部分において、前記移動オブジェクトが前記複数の分岐先のうち少なくとも1の分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する分岐制御手段とを備える。前記分岐制御手段は、前記分岐部分において第1のプレイヤに対応する第1の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第1の移動オブジェクトの前記レースゲームにおける進行度合いに応じて切り替え、前記分岐部分において第2のプレイヤに対応する第2の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第2の移動オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える。
上記によれば、各移動オブジェクトが進入可能な分岐先又は進入を制限される分岐先を、各移動オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える。これにより、バリエーションのある経路を有するレースゲームを実現することができる。
(第14の構成)
第14の構成では、上記第13の構成において、前記情報処理システムは、第1の情報処理装置と第2の情報処理装置とを含んでもよい。前記第1の情報処理装置は、前記第1のプレイヤの操作入力に基づいて、前記第1の移動オブジェクトを前記コースにおいて移動させる第1移動制御手段と、前記分岐部分において、前記第1の移動オブジェクトが前記複数の分岐先のうち少なくとも1の分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する第1分岐制御手段とを有する。前記第1分岐制御手段は、前記分岐部分において前記第1の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第1の移動オブジェクトの前記進行度合いに応じて切り替えてもよい。前記第2の情報処理装置は、前記第2のプレイヤの操作入力に基づいて、前記第2の移動オブジェクトを前記コースにおいて移動させる第2移動制御手段と、前記分岐部分において、前記第2の移動オブジェクトが前記複数の分岐先のうち少なくとも1の分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する第2分岐制御手段とを有する。前記第2分岐制御手段は、前記分岐部分において前記第2の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第2の移動オブジェクトの前記進行度合いに応じて切り替えてもよい。
また、他の構成は、上記ゲームプログラムを実行する情報処理システムであってもよいし、情報処理装置であってもよいし、情報処理方法であってもよい。
本発明によれば、コースの分岐部分において操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、当該操作対象オブジェクトのレースゲームにおける進行度合いに応じて切り替えることができる。
ゲームシステムの一例を示す図 本体装置の内部構成の一例を示すブロック図 マルチプレイモードでレースゲームが行われる場合であって、1台の本体装置2を用いて二人のプレイヤによってレースゲームが行われる場合のゲーム画像の一例を示す図 シングルプレイモードでレースゲームが行われる場合にディスプレイ12の画面に表示されるゲーム画像の一例を示す図 1台の本体装置2を用いて二人のプレイヤによってレースゲームが行われる場合において、ゲームの開始時点で表示装置の画面に表示されるゲーム画像の一例を示す図 レースゲームが開始された後のコースの全体を模式的に表した図であり、プレイヤAにとってのコースを表す図 図6に示される状態において画面に表示されるゲーム画像の一例を示す図 移動オブジェクトTOaが分岐部分IC2の近傍に到達したときに画面に表示されるゲーム画像の一例を示す図 移動オブジェクトTOaが分岐部分IC3を通過した後のコースの全体を模式的に表した図であり、プレイヤAにとってのコースを表す図 図9に示される状態において画面に表示されるゲーム画像の一例を示す図 移動オブジェクトTOaが2周目の分岐部分IC1に到達し、かつ、移動オブジェクトTObが1周目の分岐部分IC1に到達したときのコースの全体を模式的に表した図 図11に示される状態において画面に表示されるゲーム画像の一例を示す図 図12の後、さらにレースゲームが進行したときのコースの全体を模式的に表した図であり、プレイヤAにとってのコースを表す図 図13Aの(4)と同じ時点におけるプレイヤBにとってのコースを表す図 図13Aの(4)及び図13Bに示される状態において画面に表示されるゲーム画像の一例を示す図 全オブジェクトの配置図の一例を示す図 移動オブジェクトの進行度合いとオブジェクトセットとを対応付けした表の一例を示す図 オブジェクトセット1-Aの一例を示す図 オブジェクトセット2-Dの一例を示す図 オブジェクトセット1-Bの一例を示す図 オブジェクトセット2-Eの一例を示す図 図16に示されるオブジェクトセットに基づいて有効化される各オブジェクトを表す図であり、移動オブジェクトTOaが1周目から2周目まで進むときに表示される各オブジェクトの一例を示す図 ゲームシステム1におけるゲーム処理に用いられる各種データの一例を示す図 ゲームシステム1によって実行されるゲーム処理の一例を示すフローチャート ステップS4の移動オブジェクト制御処理の一例を示すフローチャート ステップS5のオブジェクト設定処理の一例を示すフローチャート
(ゲームシステムの構成)
以下、本実施形態の一例に係るゲームシステムについて説明する。図1は、ゲームシステムの一例を示す図である。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部の一例として、複数のボタンと、アナログスティックとを含む。
本体装置2は、左コントローラ3および右コントローラ4をそれぞれ着脱可能に構成される。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できるし、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
図2は、本体装置2の内部構成の一例を示すブロック図である。図2に示されるように、本体装置2は、プロセッサ21を備える。プロセッサ21は、本体装置2において実行される各種の情報処理(例えばゲーム処理)を実行する情報処理部であって、例えば、CPU(Central Processing Unit)と、GPU(Graphics Processing Unit)とを含む。なお、プロセッサ21は、CPUのみから構成されてもよいし、CPU機能、GPU機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ21は、記憶部(具体的には、フラッシュメモリ26等の内部記憶媒体、あるいは、スロット29に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
また、本体装置2は、ディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。ディスプレイ12は、プロセッサ21に接続される。プロセッサ21は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子23と、本体装置2が右コントローラ4と有線通信を行うための右側端子22を備える。
また、本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ26およびDRAM(Dynamic Random Access Memory)27を備える。フラッシュメモリ26およびDRAM27は、プロセッサ21に接続される。フラッシュメモリ26は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM27は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
本体装置2は、スロット29を備える。スロット29は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、ゲームアプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、ゲームプログラム等)を記憶するために用いられる。
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)28を備える。スロットI/F28は、プロセッサ21に接続される。スロットI/F28は、スロット29に接続され、スロット29に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ21の指示に応じて行う。
プロセッサ21は、フラッシュメモリ26およびDRAM27、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
また、本体装置2は、ネットワーク通信部24を備える。ネットワーク通信部24は、プロセッサ21に接続される。ネットワーク通信部24は、ネットワークを介して外部の装置と無線又は有線により通信を行う。本実施形態においては、ネットワーク通信部24は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部24は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
本体装置2は、コントローラ通信部25を備える。コントローラ通信部25は、プロセッサ21に接続される。コントローラ通信部25は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部25は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
プロセッサ21は、上述の左側端子23および右側端子22に接続される。プロセッサ21は、左コントローラ3と有線通信を行う場合、左側端子23を介して左コントローラ3へデータを送信するとともに、左側端子23を介して左コントローラ3から操作データを受信する。また、プロセッサ21は、右コントローラ4と有線通信を行う場合、右側端子22を介して右コントローラ4へデータを送信するとともに、右側端子22を介して右コントローラ4から操作データを受信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。
なお、本体装置2は、図2に示す各要素の他にも、電源を供給するためのバッテリー、ディスプレイ12とは別の表示装置(例えばテレビ)に画像及び音声を出力するための出力端子を備える。
(ゲームの概要)
次に、ゲームシステム1において実行されるゲーム処理の概要について説明する。本実施形態のゲームは、複数の移動オブジェクトをコースに沿って移動させるレースゲームである。レースゲームにおいては、ゲーム空間に、コースを規定するコースオブジェクト(道路、道路の両端に設けられた壁や建物等のオブジェクト)が配置されるとともに、移動オブジェクトが配置される。移動オブジェクトがコースに設けられた順路に沿って移動することで、レースゲームが進行する。ここで、順路とは、レースゲームが行われるコースのスタート地点からゴール地点までの道である。
移動オブジェクトは、車、オートバイ、自転車、スキー、戦車等の地上を移動するオブジェクトであってもよいし、船やボート、潜水艦等の水上又は水中を移動するオブジェクトであってもよい。また、移動オブジェクトは、飛行機やヘリコプター、グライダー等の空中を移動するオブジェクトであってもよい。また、移動オブジェクトは、キャラクタ自体であってもよく、キャラクタ自体がコースに沿って走ったり、泳いだりするレースゲームが行われてもよい。
なお、移動オブジェクトが車等の地上を移動するオブジェクトである場合、移動オブジェクトは、ゲーム空間(仮想空間)に設けられたコースに沿って移動するが、移動オブジェクトは、必ずしもコースに常に接触している必要はなく、一時的にコースから離れて空を飛ぶことが可能であってもよい。また、コースは、上下に起伏があってもよい。また、移動オブジェクトが飛行機等の空中を移動するオブジェクトである場合、移動オブジェクトは、例えばゲーム空間に設けられた不可視のチューブ状の壁によって画定されたコース(特定の空間)に沿って移動する。この場合、不可視の壁は一部の空間では設けられず、空中を移動する移動オブジェクトは、一時的に仮想空間を自由に移動することがあってもよい。
以下では、移動オブジェクトは車オブジェクトであり、複数の車オブジェクトがコースに沿って移動するカーレースゲームが行われるものとして説明する。
本実施形態では、一人のプレイヤでゲームを行うシングルプレイモードと、複数人のプレイヤでゲームを行うマルチプレイモードとがある。シングルプレイモードでは、一人のプレイヤがコントローラ3及び/又は4を用いて、1つの移動オブジェクトを制御し、本体装置2のプロセッサ21が、他の1又は複数の移動オブジェクトを制御することにより、複数の移動オブジェクトを用いたレースゲームが行われる。
マルチプレイモードには、1台の本体装置2を用いて複数人のプレイヤでレースゲームを行うオフラインマルチプレイモードと、複数の本体装置2をローカル通信で接続することで複数人のプレイヤでレースゲームを行うローカル通信マルチプレイモードとがある。また、マルチプレイモードには、インターネットに接続された複数の本体装置2を用いて、複数人のプレイヤでレースゲームを行うオンラインマルチプレイモードがある。
オフラインマルチプレイモードでは、複数のコントローラを本体装置2に無線で接続し、複数のプレイヤのそれぞれが、コントローラ3又は4を用いて自身に対応する移動オブジェクトの制御を行う。
ローカル通信マルチプレイモードでは、複数の本体装置2がローカル通信により接続される。各プレイヤは、自身の本体装置2に接続されたコントローラ3及び/又は4を用いて、自身に対応する移動オブジェクトの制御を行う。本体装置2は、ローカル通信により、他のプレイヤに対応する移動オブジェクトの位置情報やアクション情報等を受信する。また、本体装置2は、ローカル通信により、自機のプレイヤに対応する移動オブジェクトの位置情報やアクション情報等を他の本体装置2に対して送信する。各本体装置2は、同一のコース上で、自機のプレイヤに対応する移動オブジェクトを制御するとともに、他の本体装置からローカル通信により受信したデータに基づいて他の本体装置のプレイヤに対応する移動オブジェクトを制御する。
オンラインマルチプレイモードでは、複数の本体装置2が、インターネットに接続される。各プレイヤは、コントローラ3及び/又は4を用いて、自身に対応する移動オブジェクトの制御を行う。例えば、本体装置2は、インターネット上のサーバを介して、他のプレイヤに対応する移動オブジェクトの位置情報やアクション情報等を受信する。また、本体装置2は、サーバを介して、自機のプレイヤに対応する移動オブジェクトの位置情報やアクション情報等を、他の本体装置2に対して送信する。各本体装置2は、同一のコース上で、自機のプレイヤに対応する移動オブジェクトを制御するとともに、サーバを介して他の本体装置から受信したデータに基づいて他の本体装置のプレイヤに対応する移動オブジェクトを制御する。
図3は、マルチプレイモードでレースゲームが行われる場合であって、1台の本体装置2を用いて二人のプレイヤによってレースゲームが行われる場合のゲーム画像の一例を示す図である。なお、図3に示されるゲーム画像は、ディスプレイ12の画面に表示されてもよいし、外部表示装置の画面に表示されてもよい。
図3に示されるように、例えば、プレイヤAとプレイヤBとでレースゲームが行われる場合、プレイヤAは、コントローラ3を用いて移動オブジェクトTOa(プレイヤAの操作対象オブジェクト)を制御する。また、プレイヤBは、コントローラ4を用いて移動オブジェクトTOb(プレイヤBの操作対象オブジェクト)を制御する。ゲーム空間のコース上には、移動オブジェクトTOa及びTObの他にも、プロセッサ21によって自動で制御される1又は複数の移動オブジェクトTOが存在し、移動オブジェクトTOa及びTObを含む複数の移動オブジェクトによってレースゲームが行われる。
図3に示されるように、二人のプレイヤでレースゲームが行われる場合、画面は左右に2分割される。左側のゲーム画像50aは、プレイヤA用のゲーム画像であり、プレイヤAに対応する移動オブジェクトTOaが、ゲーム画像50aのほぼ中央に表示される。右側のゲーム画像50bは、プレイヤB用のゲーム画像であり、プレイヤBに対応する移動オブジェクトTObが、ゲーム画像50bのほぼ中央に表示される。具体的には、ゲーム空間において、移動オブジェクトTOaに対応する仮想カメラVCaと、移動オブジェクトTObに対応する仮想カメラVCbとが設定される。各仮想カメラの撮像範囲には、対応する移動オブジェクトTOが含まれる。例えば、各仮想カメラは、各移動オブジェクトTOの背後に設定され、移動オブジェクトTOの移動に応じて移動する。
なお、1台の本体装置2を用いて3人以上のプレイヤによってレースゲームが行われてもよい。例えば、1台の本体装置2に4つのコントローラを接続して4人のプレイヤによってレースゲームが行われてもよく、この場合は、画面は4分割される。
図4は、シングルプレイモードでレースゲームが行われる場合にディスプレイ12の画面に表示されるゲーム画像の一例を示す図である。なお、図4に示されるゲーム画像は、外部表示装置の画面に表示されてもよい。
図4に示されるように、シングルプレイモードでは、1画面にてゲームが行われる。画面のほぼ中央には、本体装置2のプレイヤAによって操作される移動オブジェクトTOa(操作対象オブジェクト)が表示される。ゲーム空間において、移動オブジェクトTOaに対応する仮想カメラVCaが設定される。仮想カメラVCaは、移動オブジェクトTOaの背後に設定され、移動オブジェクトTOaの移動に応じて移動する。図4に示されるように、移動オブジェクトTOaの近くに(仮想カメラVCaの撮像範囲に)、操作対象オブジェクト以外のプロセッサ21によって制御される移動オブジェクトTObが存在する場合、移動オブジェクトTObも表示される。さらにプロセッサ21によって制御される別の移動オブジェクトが表示されてもよい。
なお、オンラインマルチプレイモードやローカル通信マルチプレイモードにおいても、図4と同様、1画面にてゲームが行われる。
なお、シングルプレイモードでレースゲームが行われる場合において、本体装置2の表示画面(ディスプレイ12又は本体装置2に接続された外部表示装置の画面)が、複数の画面(例えば図3のように2画面)に分割されてもよい。この場合、例えば、プレイヤが制御する移動オブジェクト(操作対象オブジェクト)は、第1の画面に表示され、プロセッサ21が制御する移動オブジェクトは、第2の画面に表示されてもよい。また、ローカル通信マルチプレイモードやオンラインマルチプレイモードにおいてレースゲームが行われる場合、1台の本体装置2を1人のプレイヤが使用し、複数のプレイヤがそれぞれの本体装置2を使用する。この場合においても、本体装置2の表示画面が、複数に分割されてもよい。例えば、表示画面の第1の領域において、当該本体装置2のプレイヤが制御する移動オブジェクトが表示され、表示画面の第2の領域において、他のプレイヤが制御する移動オブジェクトが表示されてもよい。また、ローカル通信マルチプレイモードやオンラインマルチプレイモードにおいてレースゲームが行われる場合、表示画面の第1の領域において、本体装置2のプレイヤが制御する移動オブジェクトが表示され、第2の領域において、他のプレイヤが制御する移動オブジェクトが表示され、第3の領域において、プロセッサ21が制御する移動オブジェクトが表示されてもよい。
本実施形態のレースゲームでは、複数の移動オブジェクトTOがコース上を移動し、各移動オブジェクトTOが予め定められた回数だけコースを周回する。本実施形態のレースゲームは、複数の移動オブジェクトが予め定められた回数を周回するまでの順位(時間)を競うゲームである。なお、レースゲームは、ゲーム中における各移動オブジェクトのアクション、各移動オブジェクトが取得したアイテム、各移動オブジェクトのゴール時点での体力値や残機数等を競うゲームであってもよい。また、レースゲームは、順位、アクション、取得したアイテム等に基づいて算出されるポイントを競うゲームであってもよい。
本実施形態のレースゲームでは、移動オブジェクトTOのレースゲームにおける進行度合いに応じて、当該移動オブジェクトTOが通過する経路が変化する。移動オブジェクトTOの周回数によって当該移動オブジェクトTOが通過する経路が変化するように制御される。例えば、1周目における経路と2周目における経路とが異なるように制御される。以下、2人のプレイヤによってレースゲームが行われる場合を例にして、移動オブジェクトTOが通過する経路の変化について説明する。
図5は、1台の本体装置2を用いて二人のプレイヤによってレースゲームが行われる場合において、ゲームの開始時点で表示装置の画面に表示されるゲーム画像の一例を示す図である。
図5に示されるように、画面の左側には、プレイヤA用のゲーム画像50aが表示され、画面の右側には、プレイヤB用のゲーム画像50bが表示される。図5においては、レースゲームの開始時点であるため、ゲーム画像50a及び50bにおいて、コースにおけるスタート地点の周囲の部分が表示されている。具体的には、ゲーム画像50a及び50bにおいては、プレイヤAによって制御される移動オブジェクトTOaと、プレイヤBによって制御される移動オブジェクトTObと、プロセッサ21によって制御される移動オブジェクトTOcとが、スタートラインSLの手前に表示されている。なお、これら3つの移動オブジェクトTOの他にも、プロセッサ21によって制御される1又は複数の移動オブジェクトTOが表示されてもよい。
レースゲーム中は、当該レースゲームが行われるコースの全体を表すマップ画像Mが、画面のほぼ中央にゲーム画像50a及び50bに重畳して表示される。マップ画像Mには、コース全体の画像と、各移動オブジェクトTOを表すアイコンとが表示される。マップ画像Mにおける各移動オブジェクトTOを表すアイコンは、各移動オブジェクトTOの現在の位置を表す。なお、図5以外では、分かりやすさのためマップ画像Mを省略するものとする。
ゲーム画像50aには、移動オブジェクトTOaの現在の周回数を表す周回数表示51aが表示される。周回数表示51aの分子は現在の周回数を表し、分母は本レースゲームの全周回数を表す。例えば、周回数表示51a「2/3」は、コースを3回周回したら(スタートラインSLを3回通過したら)ゴールであり、現在は、2周目であることを表す。同様に、ゲーム画像50bには、移動オブジェクトTObの現在の周回数を表す周回数表示51bが表示される。
レースゲームが開始されると、プレイヤは、コントローラ3に対する操作入力によって、移動オブジェクトTOaをコースにおいて予め定められた順方向に移動させる。ここで、順方向とは、順路に沿った方向であり、レースゲームにおいて正規の進行方向として予め定められた方向である。例えば、コントローラ3の所定のボタンが押下されている場合、移動オブジェクトTOaは、前方に移動する。また、コントローラ3のアナログスティックの入力方向に応じて、移動オブジェクトTOaの移動方向が変化される。同様に、コントローラ4に対する操作入力に応じて、移動オブジェクトTObが制御される。なお、プレイヤは、コントローラの所定のボタンを押下しながらアナログスティックを用いて移動方向を制御することにより、操作対象オブジェクトを順方向に移動させるが、操作対象オブジェクトが順方向に向かうように操作対象オブジェクトの移動方向が自動的に補正されてもよい。
図6は、レースゲームが開始された後のコースの全体を模式的に表した図であり、プレイヤAにとってのコースを表す図である。図7は、図6に示される状態において画面に表示されるゲーム画像の一例を示す図である。図8は、移動オブジェクトTOaが分岐部分IC2の近傍に到達したときに画面に表示されるゲーム画像の一例を示す図である。なお、各図においてコース上に描かれたルートを示す矢印や文字は、説明のための表示であり、これらは実際にはゲーム画像において表示されない。
図6に示されるように、レースゲームが開始された後、コントローラ3に対する操作入力に基づいて、移動オブジェクトTOaは、スタートラインSLを超えて、コースに沿って順方向(図の上方向)に移動し、分岐部分IC1の近傍に到達する。このとき、図7に示されるゲーム画像が表示される。なお、移動オブジェクトTObは、移動オブジェクトTOaよりも後ろのスタートラインSLを少し超えた位置に存在する。
ここで、コースは、複数の分岐先に分かれる分岐部分を複数有する。1の分岐部分は、3以上の分岐先に分かれてもよい。
具体的には、分岐部分IC1は、移動オブジェクトTOの移動経路を左ルートと右ルートとに分ける。直進方向には障害物があるため、移動オブジェクトTOは分岐部分IC1によって分岐された左ルート又は右ルートしか通過することができない。言い換えると、プレイヤAは、移動オブジェクトTOaが分岐部分IC1に到達した場合に、移動オブジェクトTOaが進む経路として、左ルートと右ルートとのどちらも選択可能である。
移動オブジェクトTOaが分岐部分IC1の右ルートを通過した場合、移動オブジェクトTOaは、分岐部分IC2に到達する。このとき、図8に示されるゲーム画像が表示される。
図6及び図8に示されるように、分岐部分IC2は、左右にルートを分ける。しかしながら、分岐部分IC2における右ルートには、進入防止オブジェクト60(進入制御オブジェクトの一例)がある。進入防止オブジェクト60は、分岐部分において、複数の分岐先のうちの少なくとも何れか1つの分岐先への進入を制限する。移動オブジェクトTOaは、この進入防止オブジェクト60によって分岐部分IC2における右ルート(図8の破線の矢印で示されるルート)を進むことができず、分岐部分IC2における左ルート(図8の実線の矢印で示されるルート)のみ進むことができる。例えば、移動オブジェクトTOaが図8の破線の矢印で示されるルートに沿って移動した場合、移動オブジェクトTOaは、進入防止オブジェクト60に衝突し、停止又は減速される。このため、移動オブジェクトTOaは、進入防止オブジェクト60より奥に進むことができない。
進入防止オブジェクト60は、その先のコースの一部(分岐部分IC2における右ルートの奥方向のゲーム空間の一部)が視認可能なように表示される。例えば、進入防止オブジェクト60は、半透明で表示されてもよい。また、進入防止オブジェクト60は、複数の不透明又は半透明なオブジェクトが所定の間隔で並んで構成されてもよく、当該オブジェクトの間隙から、進入防止オブジェクト60の先(奥方向)のゲーム空間の一部を視認可能に構成されてもよい。また、進入防止オブジェクト60は、その先のコースの一部が視認可能なように、複数の半透明又は不透明なオブジェクトが一定方向に流れるように表示されるオブジェクトであってもよい。
また、進入防止オブジェクト60は、移動オブジェクトTOが進むべき方向を示唆する。例えば、進入防止オブジェクト60は、方向を示唆する画像を含んでもよい。図8では、進入防止オブジェクト60は、左方向を示唆している。
レースゲームにおける1周目では、分岐部分IC2において右ルートへの進入を制限する進入防止オブジェクト60があるため、プレイヤAは、移動オブジェクトTOaを分岐部分IC2における左ルートを通るように制御する。移動オブジェクトTOaは、さらにその直後、左右にルートを分ける分岐部分IC3(図6参照)に到達する。分岐部分IC3に到達した移動オブジェクトTOaは、レースの順方向である右ルートを進む。
図9は、移動オブジェクトTOaが分岐部分IC3を通過した後のコースの全体を模式的に表した図であり、プレイヤAにとってのコースを表す図である。図10は、図9に示される状態において画面に表示されるゲーム画像の一例を示す図である。
図9に示されるように、移動オブジェクトTOaは、コースにおける直線部分まで到達し、当該直線部分を順方向(図9の下方向)に移動中である。一方、移動オブジェクトTObは、例えばプレイヤBによってコントローラ4に対する操作入力が行われていないため、スタート地点の近傍に留まったままである。このとき、図10に示されるゲーム画像が表示される。
図9及び図10に示されるように、コースにおける直線部分には、加速オブジェクト61と、アイテムボックス63とが配置される。
加速オブジェクト61は、コース上に配置されたオブジェクトであり、移動オブジェクトTOにレースゲームにおいて有利な影響を与えるオブジェクトであり、移動オブジェクトの所定の方向への移動態様を変化させるオブジェクトである。加速オブジェクト61は、移動オブジェクトTOを加速させて所定時間だけ速度を上昇させる。図10に示されるように、加速オブジェクト61は、コースの一部を覆うように配置されており、移動オブジェクトTOが加速オブジェクト61上を通過した場合、移動オブジェクトTOは加速される。このため、加速オブジェクト61上を通過した移動オブジェクトTOは、レースゲームにおいて有利な状態となる。
アイテムボックス63は、コース上(路面上又は路面よりも高い位置)に配置されたオブジェクトであり、レースゲームに用いられるアイテムが格納されたオブジェクトである。本実施形態のゲームでは、レースゲームにおいて移動オブジェクトTOに有利又は不利な影響を与える複数のアイテムが用意されている。移動オブジェクトTOがアイテムボックス63に衝突した場合は、移動オブジェクトTOは、複数のアイテムのうちの何れかを取得する。複数のアイテムのうちの何れが取得されるかは、乱数を用いてランダムに決定されてもよいし、予め定められてもよい。
複数のアイテムは、取得した移動オブジェクトTOがゲームにおいて有利になるアイテムであってもよい。例えば、複数のアイテムは、取得した移動オブジェクトTOの速度を上昇させるアイテム、他の移動オブジェクトからの攻撃を無効又は軽減させるアイテム、取得した移動オブジェクトTOの防御力を上昇させるアイテム、他の移動オブジェクトに対して攻撃を与えるアイテム、他の移動オブジェクトの走行を妨害するアイテム、他の移動オブジェクトを停止又は減速させるアイテムを含んでもよい。これらのアイテムはプレイヤが任意のタイミングで使用できてもよいし、自動的に(例えば取得と同時に)使用されてもよい。
図10に示されるように、アイテムボックス63は複数配置される。複数のアイテムボックス63のうちの何れかが移動オブジェクトTOaによって取得された場合、当該アイテムボックス63は消える。このため、他の移動オブジェクトTOは、移動オブジェクトTOaによって取得されたアイテムボックス63を取得することができない。なお、ゲーム空間に配置されたアイテムボックス63は、移動オブジェクトTOによって取得された後、所定条件が成立した場合(例えば、取得されてから所定時間が経過した場合、取得した移動オブジェクトTOが現在の周回を終了した場合等)に再び取得可能になってもよい。
移動オブジェクトTOaは、図9及び図10に示される位置からさらにコースの経路に沿って移動し、スタートラインSLを超えて2周目に入る。一方、移動オブジェクトTObは、プレイヤBによってコントローラ4に対する操作入力が行われ、スタートラインSLを超えて分岐部分IC1(1周目)の近辺まで移動する。
図11は、移動オブジェクトTOaが2周目の分岐部分IC1に到達し、かつ、移動オブジェクトTObが1周目の分岐部分IC1に到達したときのコースの全体を模式的に表した図である。図12は、図11に示される状態において画面に表示されるゲーム画像の一例を示す図である。
図11の左側の図は、プレイヤAにとってのコースを表す図であり、図11の右側の図は、プレイヤBにとってのコースを表す図であり、これらは同じ時点を表している。
図11の左側の図、及び、図12の左側のゲーム画像50aに示されるように、移動オブジェクトTOaが2周目において分岐部分IC1の近傍に到達した場合、分岐部分IC1における左ルートを塞ぐように進入防止オブジェクト60がある。また、分岐部分IC2においても、左ルートを塞ぐように進入防止オブジェクト60がある。このため、2周目において、移動オブジェクトTOaは、分岐部分IC1及び分岐部分IC2における右ルートを通過する。
一方、図11の右側の図、及び、図12の右側のゲーム画像50bに示されるように、移動オブジェクトTObは1周目であり、移動オブジェクトTOaの1周目と同じ位置に進入防止オブジェクト60がある。具体的には、1周目においては、分岐部分IC1には進入防止オブジェクト60は配置されず、移動オブジェクトTObは、分岐部分IC1における左ルートと右ルートとを通過可能である。また、1周目において、分岐部分IC2には、右ルートを塞ぐように進入防止オブジェクト60がある。このため、移動オブジェクトTObは、分岐部分IC2に到達した場合、分岐部分IC2における左ルートを通過する。
図12に示されるように、移動オブジェクトTOaに対応する仮想カメラVCaの撮像範囲に移動オブジェクトTOaと移動オブジェクトTObとが含まれる場合、ゲーム画像50aには、移動オブジェクトTOaと移動オブジェクトTObとが表示される。ゲーム画像50aにおいては、分岐部分IC2における左ルートを塞ぐように進入防止オブジェクト60が配置されるため、移動オブジェクトTOaが分岐部分IC2における左ルートを進む場合は、移動オブジェクトTOaは進入防止オブジェクト60に衝突し、その先に進むことができない。一方、移動オブジェクトTObは、分岐部分IC2における左ルートを通過可能である。移動オブジェクトTObが分岐部分IC2における左ルートを通過する場合、ゲーム画像50aにおいては、移動オブジェクトTObが進入防止オブジェクト60に衝突することなく、進入防止オブジェクト60をすり抜けるように進む。進入防止オブジェクト60は、その先のゲーム空間(コースの一部)を視認可能に構成されるため、プレイヤAは、ゲーム画像50aを見て、移動オブジェクトTObが分岐部分IC2における左ルートを進むことを認識することができる。
同様に、移動オブジェクトTObに対応する仮想カメラVCbの撮像範囲に、移動オブジェクトTOaと移動オブジェクトTObとが含まれる場合、ゲーム画像50bには、移動オブジェクトTOaと移動オブジェクトTObとが表示される。ゲーム画像50bにおいては、分岐部分IC2における右ルートを塞ぐように進入防止オブジェクト60があるため、移動オブジェクトTObが分岐部分IC2における右ルートを進む場合は、移動オブジェクトTObは進入防止オブジェクト60に衝突し、その先に進むことができない。一方、移動オブジェクトTOaは、分岐部分IC2における右ルートを通過可能である。移動オブジェクトTOaが分岐部分IC2における右ルートを通過する場合、ゲーム画像50bにおいては、移動オブジェクトTOaが、進入防止オブジェクト60をすり抜けるように進む。進入防止オブジェクト60は、その先のゲーム空間(コースの一部)を視認可能に構成されるため、プレイヤBは、ゲーム画像50bを見て、移動オブジェクトTOaが分岐部分IC2における右ルートを進むことを認識することができる。
図13Aは、図12の後、さらにレースゲームが進行したときのコースの全体を模式的に表した図であり、プレイヤAにとってのコースを表す図である。なお、図13Aでは、説明に必要なオブジェクトのみ表示し、一部のオブジェクトの表示を省略している。
移動オブジェクトTOaが分岐部分IC2の右ルートを通過した後、移動オブジェクトTOaは経路に沿って進む(図13Aの(1)~(3))。移動オブジェクトTOaは、2周目において、複数の分岐部分において進入防止オブジェクト60によって経路が制限されることで、図13Aの(2)~(3)に示されるように、1周目とは逆の方向を進む。2周目においては、1周目とは逆の方向がレースゲームにおける順方向となる。すなわち、1周目においてはコースを真上から見た場合に反時計回りがレースゲームにおける順方向とされるが、2周目においては、コースを真上から見た場合に時計回りがレースゲームにおける順方向とされる。なお、プレイヤは、所定のボタンを押下しながらアナログスティックの左又は右方向を入力することにより、移動オブジェクトTOを180度旋回させて順方向に対して逆走させることはできるが、移動オブジェクトTOが逆走した場合は、順方向に戻すような警告が行われる。また、移動オブジェクトTOが、所定距離逆走した場合は、移動オブジェクトTOの移動方向が順方向になるように強制的に修正されてもよい。
図13Aでは、移動オブジェクトTObの位置及び移動経路も参考のため記載されている。移動オブジェクトTObは、1周目を走行中である。このため、図13Aの(1)~(3)に示されるように、移動オブジェクトTObは、コースを真上から見たときの反時計回りを順方向として移動する。
図13Aの(3)及び(4)に示されるように、移動オブジェクトTOaの2周目において、直線部分に加速オブジェクト62とアイテムボックス63とが表示される。図13Aの(4)に示されるように、移動オブジェクトTOa及び移動オブジェクトTObが直線部分に到達した場合、移動オブジェクトTOaと移動オブジェクトTObとは、逆方向(互いに近づく方向)に移動する。
図13Bは、図13Aの(4)と同じ時点におけるプレイヤBにとってのコースを表す図である。図13Bに示されるように、移動オブジェクトTObの1周目においては、直線部分に加速オブジェクト61とアイテムボックス63とが表示される。
図14は、図13Aの(4)及び図13Bに示される状態において画面に表示されるゲーム画像の一例を示す図である。
図14の左側のゲーム画像50aには、加速オブジェクト62が表示される。加速オブジェクト62は、上述した加速オブジェクト61と同様に移動オブジェクトTOを順方向に加速させるオブジェクトである。加速オブジェクト62は、加速オブジェクト61とは逆方向を示す画像を含む。具体的には、加速オブジェクト62は、図13A(4)の下から上に向かう方向(第2方向)を示す画像を含む。ここでは、加速オブジェクト62を「第2方向の加速オブジェクト」という場合がある。図14の左側のゲーム画像50aにおいて、加速オブジェクト62は、ゲーム画像50aの奥行き方向(移動オブジェクトTOaにとっての順方向)を指示している。移動オブジェクトTOaが加速オブジェクト62上を通過した場合、移動オブジェクトTOaは順方向に加速される。
一方、図14の右側のゲーム画像50bには、加速オブジェクト61が表示される。加速オブジェクト61は、図13Bの上から下に向かう方向(第1方向)を示す画像を含む。ここでは、加速オブジェクト61を「第1方向の加速オブジェクト」という場合がある。ゲーム画像50bに示されるように、加速オブジェクト61は、ゲーム画像50bの奥行き方向(移動オブジェクトTObにとっての順方向)を指示している。移動オブジェクトTObが加速オブジェクト61上を通過した場合、移動オブジェクトTObは順方向に加速される。
加速オブジェクト61と加速オブジェクト62とは、移動オブジェクトTOの順方向を基準とした場合には、同じ方向(画面の奥行き方向)を指し示し、何れも順方向に移動オブジェクトTOを加速させる。一方、コース全体を基準とした場合には、加速オブジェクト61と加速オブジェクト62とは、互いに逆方向を指し示し、逆方向に移動オブジェクトTOを加速させる。
また、加速オブジェクト61と加速オブジェクト62とは、コース上の同じ位置に配置される。すなわち、加速オブジェクト61と加速オブジェクト62とは互いに重なる位置に配置される。
このように、1周目においては、コースにおける第1方向に移動オブジェクトTOを加速させる加速オブジェクト61が配置される。2周目においては、1周目とは逆方向を順方向として移動オブジェクトTOが移動することを前提として、コースにおける第2方向に移動オブジェクトTOを加速させる加速オブジェクト62が配置される。
以上のように、本実施形態のレースゲームでは、移動オブジェクトTOがコースを複数回周回することを前提として、移動オブジェクトTOの周回数によって移動オブジェクトTOが通過する経路が異なるように、分岐部分において進入防止オブジェクト60が表示される。
次に、進入防止オブジェクトや他のオブジェクト(加速オブジェクト、アイテムボックス等)をコースにおいて出現させる方法の一例について説明する。
図15は、全オブジェクトの配置図の一例を示す図である。図15に示されるように、コース上には予め全てのオブジェクトが配置される。例えば、コースにおける位置P1~P5には、進入防止オブジェクト60が予め配置される。例えば、位置P1は、分岐部分IC1における左ルートに対応する位置であり、位置P2は、分岐部分IC1における右ルートに対応する位置である。
また、位置P6には、加速オブジェクト61と加速オブジェクト62とが配置される。なお、図15では、加速オブジェクト61と加速オブジェクト62とが異なる位置に配置されているように見えるが、実際にはこれらは同じ位置に重なるように配置される。
また、位置P7には、アイテムボックス63が配置され、位置P8及びP10には、進入防止オブジェクト60が配置される。また、位置P9には、アイテム64が配置される。アイテム64は、レースゲームにおいて移動オブジェクトTOに有利又は不利な影響を与えるオブジェクトである。移動オブジェクトTOがアイテム64に衝突すると、移動オブジェクトTOはアイテム64を取得する。
また、位置P11~P13には、進入防止オブジェクト60が配置される。その他にも、コース上には予め複数のオブジェクトが配置されてもよい。
図15に示されるコース上に予め配置された各オブジェクトは、移動オブジェクトTOのレースゲームにおける進行度合いに応じて、有効化又は無効化される。具体的には、予め配置された各オブジェクトを有効化するためのオブジェクトセットが複数用意され、当該オブジェクトセットを用いて、各オブジェクトが有効化される。
図16は、移動オブジェクトの進行度合いとオブジェクトセットとを対応付けした表の一例を示す図である。
移動オブジェクトTOのレースゲームの進行度合いは、移動オブジェクトTOのコースの順路に沿った位置によって定められる。図16のスタート地点(A地点)からゴール地点までが順路であり、移動オブジェクトTOの進行度合いは、移動オブジェクトTOが順路のどの地点にあるかを示す。なお、進行度合いは、例えば、スタートラインからの順路に沿った距離によって表されてもよいし、ゲーム空間の座標位置によって表されてもよい。図16に示されるように、移動オブジェクトTOの進行度合いに応じて、当該移動オブジェクトTOに対してオブジェクトセットが適用される。
例えば、スタート地点(A地点)からB地点までの区間では、移動オブジェクトTOに対してオブジェクトセット1-Aが適用され、当該オブジェクトセットを用いて、各オブジェクトが有効化される。また、B地点からC地点までの区間では、オブジェクトセット1-Bが適用される。C地点からD地点までの区間では、オブジェクトセット1-Cが適用される。なお、これら地点は道を横断する線であってもよい。
また、D地点からE地点までの区間では、オブジェクトセット2-Dが適用される。D地点からE地点の区間にスタート地点があり、この区間において、1周目から2周目に入る。また、E地点からF地点までの区間では、オブジェクトセット2-Eが適用される。
以下同様に、移動オブジェクトTOが図16に示されるどの区間に位置しているかに応じて、オブジェクトセットが適用される。例えば、H地点からI地点までの区間では、オブジェクトセット3-Hが適用される。H地点からI地点の区間にスタート地点があり、この区間において、2周目から3周目に入る。なお、図16に示される各区間は単なる一例であり、スタート地点からゴール地点まで任意に区間が分けられてもよい。例えば、ある区間と次の区間との間にスタート地点が位置してもよい。また、例えば、周回毎に区間が分けられてもよく、周囲毎に異なるオブジェクトセットが適用されてもよい。
ここで、A地点からB地点までの区間と、D地点からE地点までの区間とは、コースにおける同じ位置を含む。以下、A地点からB地点までの区間で用いられるオブジェクトセット1-A、及び、D地点からE地点までの区間で用いられるオブジェクトセット2-Dの一例について、図17及び図18を参照して説明する。
図17は、オブジェクトセット1-Aの一例を示す図である。図18は、オブジェクトセット2-Dの一例を示す図である。
オブジェクトセットは、移動オブジェクトTOに対して有効に設定するオブジェクトのセットである。オブジェクトセットが適用されていない場合、各オブジェクトは、全ての移動オブジェクトに対して無効化されている。移動オブジェクトTOに対してオブジェクトセットが適用された場合、当該オブジェクトセットに含まれるオブジェクトが、当該移動オブジェクトTOに対して有効化される。各オブジェクトセットには、有効化されるオブジェクトを識別するオブジェクト識別子の一覧が含まれる。各オブジェクト識別子に対して、対応するオブジェクトの種類、位置、配置方向(ゲーム空間における姿勢)、縮尺、すり抜け可否等の情報が後述のオブジェクト配置データとして、メモリ(例えばDRAM27や外部記憶媒体)に記憶されている。なお、図17~図20において、各オブジェクト識別子は、オブジェクトの種類と位置とを示唆する表記となっている。例えば、オブジェクト識別子「進入防止オブジェクト_P3」は、位置P3に配置された進入防止オブジェクトを識別する識別子を表す。また、例えば、「加速オブジェクト_P6_第1方向」は、位置P6に配置された第1方向の加速オブジェクトを識別する識別子を表す。また、例えば、「加速オブジェクト_P6_第2方向」は、位置P6に配置された第2方向の加速オブジェクトを識別する識別子を表す。移動オブジェクトTOに対してオブジェクトが有効化された場合、当該移動オブジェクトTOに対応するゲーム画像において当該オブジェクトの表示が有効化されるとともに、当該移動オブジェクトTOと当該オブジェクトとの衝突判定が有効化される。一方、移動オブジェクトTOに対してオブジェクトが無効化されている場合、当該移動オブジェクトTOに対応するゲーム画像において当該オブジェクトは表示されず、当該移動オブジェクトTOと当該オブジェクトとの衝突判定も行われない。
図17に示されるように、オブジェクトセット1-Aでは、位置P3に配置された進入防止オブジェクト60が有効化される。これにより、移動オブジェクトTOの背後に設定された仮想カメラに基づくゲーム画像(当該移動オブジェクトに対応するゲーム画像)において、位置P3に配置された進入防止オブジェクト60のみが表示(出現)される。また、移動オブジェクトTOと、位置P3に配置された進入防止オブジェクト60との衝突判定が有効化される。移動オブジェクトは衝突した進入防止オブジェクト60をすり抜けることができないため、その結果、図6及び図8に示されるように、分岐部分IC2の右ルートへの進入を妨げる進入防止オブジェクト60のみが表示され、1周目においては、移動オブジェクトTOが当該分岐部分IC2の右ルートを進むと、移動オブジェクトTOは位置P3に配置された進入防止オブジェクト60に衝突することになる。
一方、図18に示されるように、オブジェクトセット2-Dでは、位置P1及びP4に配置された進入防止オブジェクト60が有効化される。また、位置P12の進入防止オブジェクト60も有効化される。これにより、移動オブジェクトTOに対応するゲーム画像において、位置P1、P4、及びP12に配置された進入防止オブジェクト60が表示(出現)される。また、移動オブジェクトTOと、位置P1、P4、及びP12に配置された進入防止オブジェクト60との衝突判定が有効化される。その結果、図12の左側のゲーム画像50aが表示され、2周目においては、移動オブジェクトTOは、分岐部分IC2の左ルートを進むことができず、右ルートを進むことになる。なお、図12の左側のゲーム画像50aでは、仮想カメラの撮像範囲に入っていないため位置P12の進入防止オブジェクト60は表示されていないが、位置P12の進入防止オブジェクト60も内部的に有効化されている。
また、B地点からC地点までの区間とE地点からF地点までの区間とは、コースにおける同じ位置を含む。以下、B地点からC地点までの区間で用いられるオブジェクトセット1-B、及び、E地点からF地点までの区間で用いられるオブジェクトセット2-Eの一例について、図19及び図20を参照して説明する。
図19は、オブジェクトセット1-Bの一例を示す図である。図20は、オブジェクトセット2-Eの一例を示す図である。
図19に示されるように、オブジェクトセット1-Bでは、位置P3に配置された進入防止オブジェクト60が、引き続き有効化される。また、位置P6の第1方向の加速オブジェクト61が有効化され、位置P7のアイテムボックス63が有効化される。これにより、1周目においては、図10の左側のゲーム画像50aが表示される。このように、移動オブジェクトTOが現在いる区間とは異なる区間に存在するオブジェクトも、有効化される場合がある。これにより、例えば、移動オブジェクトTOが現在いる位置の先を仮想カメラが捉えたり、移動オブジェクトTOが順方向と逆方向を向いたときに現在いる位置よりも逆方向の位置を仮想カメラが捉えたりする場合でも、オブジェクトを表示することができる。
一方、図20に示されるように、オブジェクトセット2-Eでは、位置P6の第2方向の加速オブジェクト62が有効化される。また、位置P7のアイテムボックス63が有効化される。これにより、2周目においては、図14の左側のゲーム画像50aが表示される。また、位置P8の進入防止オブジェクト60、位置P9のアイテム64、位置P10の進入防止オブジェクト60、及び、位置P12の進入防止オブジェクト60が、有効化される。
このように、移動オブジェクトTOの進行度合いに応じて異なるオブジェクトセットが適用されて、各オブジェクトが有効化されることで、移動オブジェクトTOの周回数によって異なる位置に進入防止オブジェクト60が表示される。これにより、レースゲームにおけるN周目とM周目(N及びMは異なる整数)とで移動オブジェクトTOの経路が異なるようにすることができる。また、コース上に表示(出現)される、レースゲームに有利又は不利な影響を与えるオブジェクトが、N周目とM周目とで異なるようにすることができる。
図21は、図16に示されるオブジェクトセットに基づいて有効化される各オブジェクトを表す図であり、移動オブジェクトTOaが1周目から2周目まで進むときに表示される各オブジェクトの一例を示す図である。
なお、図21において、丸印のアイコンは各地点を表し、丸印の中には地点を表す文字が表示されている。また、移動オブジェクトTOaがいる区間の両端のアイコンは、黒色で塗りつぶされている。
移動オブジェクトTOaがスタート地点(A地点)からB地点までの区間にいるときは、オブジェクトセット1-Aが適用される。これにより、位置P3の進入防止オブジェクト60が有効化され、分岐部分IC2の右ルートが通過不可能になる(図21の(1)及び(2))。移動オブジェクトTOaが移動して、B地点からC地点までの区間に入った場合、オブジェクトセット1-Bが適用され、オブジェクトセット1-Bを用いて、位置P3の進入防止オブジェクト60と、位置P6の第1方向の加速オブジェクト61と、位置P7のアイテムボックス63とが有効化される(図21の(3))。
さらに移動オブジェクトTOaが移動してC地点からD地点までの区間に入った場合、オブジェクトセット1-Cが適用され、位置P13の進入防止オブジェクト60、位置P1の進入防止オブジェクト60、及び、位置P4の進入防止オブジェクト60が有効化される(図21の(4))。この場合、移動オブジェクトTOaは、スタート地点に向かう方向に進み、D地点を通過して2周目に入る。
D地点からE地点までの区間では、オブジェクトセット2-Dが適用され、引き続き位置P1及びP4の進入防止オブジェクト60が有効化されるとともに、位置P12の進入防止オブジェクト60が有効化される(図21の(5))。これにより、移動オブジェクトTOaは、コース上を1周目とは逆方向(時計回り)に進むことになり、これが2周目の移動オブジェクトTOaにとって順方向となる。
さらに移動オブジェクトTOaが移動してE地点からF地点までの区間に入った場合、オブジェクトセット2-Eが適用される。この区間では、引き続き位置P12の進入防止オブジェクト60が有効化されるとともに、位置P8及びP10の進入防止オブジェクト60が有効化される。また、位置P9のアイテム64、位置P7のアイテムボックス63、及び、位置P6の第2方向の加速オブジェクト62が有効化される(図21の(6))。
以降、同様に移動オブジェクトTOaの進行度合いに応じてオブジェクトセットが適用される。移動オブジェクトTOaがコースを3周するとゴールに到達する。全ての移動オブジェクトTOがゴールに到達した場合、レースゲームは終了する。
このように、コースが区間に区切られ、区間毎にオブジェクトが有効化される。ここで、各オブジェクトの有効化は、移動オブジェクトTOがスタート地点を通過した後であって、次のスタート地点に到達するまでの間(両方のスタート地点を含む)に行われてもよい。なお、ここでいうスタート地点は、1周目においては、レース開始前のスタートラインの手前で停止している位置を表し、2周目以降においては、スタートラインを表す。例えば、2周目のスタート地点を通過した後であって、3周目のスタート地点に到達するまでの間に、オブジェクトの有効化が行われ、当該2周目において、有効化されたオブジェクトが出現する。また、例えば、図21では、1周目がスタートしてから2周目が開始されるまでの間に、位置P3の進入防止オブジェクト60が有効化され(図21の(1))、位置P13の進入防止オブジェクト60が有効化される(図21の(4))。すなわち、移動オブジェクトTOがコースを1周する間に、オブジェクトの有効化が行われる。
また、今回の周回において移動オブジェクトが分岐部分を通過した後であって、移動オブジェクトが次の周回に入る前に、次の周回のための少なくとも一部の進入防止オブジェクト60の有効化(経路の切り替え)が行われる。例えば、図21の(5)において、移動オブジェクトTOaが分岐部分IC1及びIC2を通過した後であって、移動オブジェクトTOaが2周目に入る前に、2周目における分岐部分IC1及びIC2の経路を定めるために、位置P1及びP4の進入防止オブジェクト60が有効化される(図21の(4))。
具体的には、分岐部分が仮想カメラの撮像範囲に入る前に、当該分岐部分における進入防止オブジェクト60の有効化が行われる。すなわち、分岐部分が視認可能となる前に、当該分岐部分において進入防止オブジェクト60の有効化が行われる。このため、進入防止オブジェクト60が無効化された状態から有効化された状態になる瞬間は、表示されない。また、進入防止オブジェクト60が有効化された状態から無効化された状態になる瞬間も、カメラの撮像範囲に入らないように、無効化されるタイミングが設定されてもよい。例えば、図21の(1)では移動オブジェクトTOaがスタート地点にあり、移動オブジェクトTOaに対応する仮想カメラVCaの撮像範囲には、位置P3が含まれない。このため、この時点では、位置P3はゲーム画像50aに表示されないが、位置P3の進入防止オブジェクト60は有効化されている。進入防止オブジェクト60以外の他のオブジェクトについても、視認可能となる前に有効化される。例えば、図21の(3)に示されるように、移動オブジェクトTOaが直線部分に差し掛かる前に(すなわち、位置P6及び位置P7が視認可能となる前に)、位置P6の加速オブジェクト61及び位置P7のアイテムボックス63が有効化される。
このように、事前に分岐部分において進入防止オブジェクト60を有効化することにより、移動オブジェクトTOが高速で移動する場合でも、経路の切り替えを行うことができる。また、オブジェクトが配置される位置を仮想カメラが捉える前に、当該オブジェクトが有効化又は無効化される。例えば、分岐部分が視認可能となる前に、当該分岐部分において進入防止オブジェクト60が有効化される。これにより、ゲーム画像において、突然、進入防止オブジェクト60が出現することを防止することができ、プレイヤに違和感を与えることなく、経路の切り替えを行うことができる。
以上のように、本実施形態のレースゲームでは、コースにおける分岐部分において、移動オブジェクトTOの進行度合いに応じて、分岐先を進入不可能又は進入可能にすることで、移動オブジェクトTOの経路を切り替える。これにより、移動オブジェクトTOは、例えば周回毎に異なる経路を進むことになり、レースゲームの興趣性を向上させることができる。
(ゲーム処理の詳細)
次に、図22~図25を参照して、ゲームシステム1におけるゲーム処理の詳細について説明する。
図22は、ゲームシステム1におけるゲーム処理に用いられる各種データの一例を示す図である。図22に示されるように、ゲームシステム1は、ゲームプログラムと、移動オブジェクトデータと、コースデータと、オブジェクト配置データと、オブジェクトセットデータとを記憶する。
ゲームプログラムは、本実施形態におけるゲーム処理(図23に示すゲーム処理)を実行するためのプログラムである。ゲームプログラムは、スロット29に装着された記憶媒体又はフラッシュメモリ26に予め記憶されており、レースゲームの実行時にDRAM27に読み込まれる。
移動オブジェクトデータは、各移動オブジェクトに関するデータを含む。移動オブジェクトデータは、例えば、プレイヤAによって制御される移動オブジェクトTOaに関するデータと、プレイヤBによって制御される移動オブジェクトTObに関するデータと、プロセッサ21によって制御される移動オブジェクトTOcに関するデータとを含む。各移動オブジェクトに関するデータには、各移動オブジェクトの形状を表すデータと、各移動オブジェクトが取得したアイテムに関するデータと、各移動オブジェクトの周回数及び位置を表すデータと、各移動オブジェクトの移動方向および移動速度を示すデータと、各移動オブジェクトの状態(例えば有利又は不利な状態)に関するデータとが含まれる。また、各移動オブジェクトに関するデータは、当該移動オブジェクトに対して適用されているオブジェクトセットを示す情報を含む。例えば、移動オブジェクトTOaがE地点からF地点までの区間に位置している場合、移動オブジェクトTOaに関するデータには、現在適用されているオブジェクトセット2-Eを示す情報が含まれる。また、移動オブジェクトTObがB地点からC地点までの区間に位置している場合、移動オブジェクトTObに関するデータには、現在適用されているオブジェクトセット1-Bを示す情報が含まれる。
コースデータは、レースゲームが行われるコースを規定するデータである。コースデータは、コースを規定するコースオブジェクト(道路、壁等)を含む。本実施形態では、予め複数のコースが用意されており、各コースに対応するコースデータがゲームシステム1に記憶されている。なお、コースデータは、スロット29に装着された記憶媒体又はフラッシュメモリ26に予め記憶されてもよいし、インターネットを介してサーバから取得されてもよいし、他の本体装置2から取得されてもよい。
オブジェクト配置データは、各オブジェクトの配置に関するデータである。オブジェクト配置データは、コース上の位置を表すデータと、当該位置に配置されたオブジェクトに関するデータとを含む。オブジェクトに関するデータは、オブジェクトの形状や外観を表すデータ、オブジェクトの種類を示すデータ、オブジェクトの状態(例えば取得されたか否か等)を示すデータ等を含む。
オブジェクトセットデータは、コース上に配置された各オブジェクトを有効化するためのデータであり、例えば、図17~図20で示したデータである。
なお、ゲームシステム1には、図22に示すデータの他に、様々なデータが記憶される。例えば、ゲームシステム1には、図16で示した対応表を表すデータ、アイテムに関するデータ等が記憶される。
図23は、ゲームシステム1によって実行されるゲーム処理の一例を示すフローチャートである。図23に示すゲーム処理は、例えば、ゲームを開始する指示がプレイヤによって行われたことに応じて開始される。
なお、本実施形態では、本体装置2のプロセッサ21が、上記ゲームプログラムをメモリ(例えば、DRAM27)を用いて実行することによって、図23に示す各ステップの処理を実行するものとして説明する。ただし、他の実施形態においては、上記各ステップの処理のうちの一部の処理を、プロセッサ21とは別のプロセッサ(例えば、専用回路等)が実行するようにしてもよい。また、ゲームシステム1が他の情報処理装置(例えば、サーバ)と通信可能である場合、図23に示す各ステップの処理の一部は、他の情報処理装置において実行されてもよい。また、図23に示す各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。
図23に示されるように、ステップS1において、プロセッサ21は、初期処理を実行する。具体的には、プロセッサ21は、スロット29に装着された外部記憶媒体又はフラッシュメモリ26からコースデータを読み込み、レースゲームが行われるコースを含む3次元のゲーム空間を設定する。また、プロセッサ21は、プレイヤによって制御される1又は複数の移動オブジェクトTOと、プロセッサ21によって制御される1又は複数の移動オブジェクトTOとをコース上のスタートラインに配置する。また、プロセッサ21は、各オブジェクトをコース上の予め定められた位置に配置する。
ステップS2において、プロセッサ21は、レースゲームを開始する。ステップS2においてレースゲームが開始された後、レースゲーム中にステップS3~S8の処理が所定のフレーム時間間隔(例えば、1/60秒間隔)で繰り返し実行される。
ステップS3において、プロセッサ21は、コントローラから操作データを取得する。ここでは、本体装置2は、プレイヤAによって操作されるコントローラ3からの操作データと、プレイヤBによって操作されるコントローラ4からの操作データとを取得するものとする。
ステップS4において、プロセッサ21は、移動オブジェクト制御処理を行う。移動オブジェクト制御処理は、各移動オブジェクトTOを移動させたり、各移動オブジェクトTOの衝突判定を行ったり、各移動オブジェクトTOにアクションを行わせたりする処理である。以下、ステップS4の移動オブジェクト制御処理の詳細について、図24を参照して説明する。図24は、ステップS4の移動オブジェクト制御処理の一例を示すフローチャートである。
ステップS21において、プロセッサ21は、各移動オブジェクトTOの位置を更新する。具体的には、プロセッサ21は、ステップS3で取得したコントローラ3からの操作データに基づいて、プレイヤAに対応する移動オブジェクトTOaをコースに沿って移動させる。また、プロセッサ21は、ステップS3で取得したコントローラ4からの操作データに基づいて、プレイヤBに対応する移動オブジェクトTObをコースに沿って移動させる。また、プロセッサ21は、プロセッサ21が制御する移動オブジェクトTOcをコースに沿って移動させる。移動オブジェクトTOが移動されることによって、当該移動オブジェクトTOがスタートラインSLを超えた場合、当該移動オブジェクトTOの周回数に「1」が加算され、周回数表示が更新される。プロセッサ21は、次にステップS22の処理を実行する。
ステップS22において、プロセッサ21は、各移動オブジェクトTOと、有効化されたオブジェクトとの衝突判定処理を行う。ここでは、各移動オブジェクトTOの位置および形状に基づいて、各移動オブジェクトTOが後述するステップS5で有効化されたオブジェクトと衝突したか否かが判定される。移動オブジェクトTOが、有効化されたオブジェクトに衝突したと判定した場合、プロセッサ21は、当該衝突に応じた処理を実行する。無効化されているオブジェクトと移動オブジェクトTOとの衝突判定は行われない。例えば、プロセッサ21は、移動オブジェクトTOaが、有効化されたオブジェクトに衝突したか否かを判定し、衝突したと判定した場合は、衝突したオブジェクトに応じた処理を行う。移動オブジェクトTOaに対して有効化されているオブジェクトのみが、移動オブジェクトTOaに影響を与え、移動オブジェクトTOaに対して無効化されているオブジェクトは、移動オブジェクトTOaに影響を与えない。例えば、移動オブジェクトTObに対して有効化されたオブジェクトであっても、そのオブジェクトが移動オブジェクトTOaに対して無効化されている場合は、当該オブジェクトは移動オブジェクトTOaに影響を与えない。
例えば、移動オブジェクトTOaの進行度合いに応じて設定されたオブジェクトセットに基づいて、位置P1の進入防止オブジェクト60が有効化されている場合、プロセッサ21は、移動オブジェクトTOaと位置P1の進入防止オブジェクト60との衝突判定を行う。移動オブジェクトTOaが位置P1の進入防止オブジェクト60と衝突した場合、プロセッサ21は、移動オブジェクトTOaを停止させたり、減速させたり、移動オブジェクトTOaの移動方向を変化させたりする。位置P1の進入防止オブジェクト60が無効化されている場合、移動オブジェクトTOaが位置P1に到達しても、移動オブジェクトTOaと位置P1の進入防止オブジェクト60との衝突判定は行われない。すなわち、位置P1の進入防止オブジェクト60が無効化されている場合、移動オブジェクトTOaにとっては位置P1には進入防止オブジェクト60は存在せず、移動オブジェクトTOaは、位置P1を通過することになる。
また、プロセッサ21は、位置P6の第1方向の加速オブジェクト61が有効化されている場合、移動オブジェクトTOaと加速オブジェクト61との衝突判定を行い、衝突判定の結果に応じた処理を行う。例えば、移動オブジェクトTOaがゲーム空間における第1方向(順方向)に移動中であるときに、移動オブジェクトTOaが加速オブジェクト61と衝突した場合、移動オブジェクトTOaはゲーム空間における第1方向に加速される。
また、プロセッサ21は、位置P7のアイテムボックス63が有効化されている場合、移動オブジェクトTOaとアイテムボックス63との衝突判定を行い、衝突判定の結果に応じた処理を行う。例えば、移動オブジェクトTOaがアイテムボックス63と衝突した場合、移動オブジェクトTOaはアイテムボックス63を取得し、所定のアイテムを取得する。例えば、移動オブジェクトTOaがアイテムボックス63と衝突した場合に、複数のアイテムの中から何れかのアイテムがランダムに選択され、選択されたアイテムが移動オブジェクトTOaによって取得されてもよい。なお、移動オブジェクトTOaによってアイテムボックス63が取得されると、そのアイテムボックス63は他の移動オブジェクトから視認することができず、取得できない状態となる。例えば、位置P7に5つのアイテムボックス63がある場合において、そのうちの1つのアイテムボックス63が移動オブジェクトTOaによって取得された場合、当該1つのアイテムボックス63は見かけ上消去され、位置P7には4つのアイテムボックス63が残る。つまり、取得されたアイテムボックス63は、視認できず取得もできないという状態になる。このため、後続の他の移動オブジェクトTO(例えばTObやTOc)が位置P7に到達しても、位置P7には4つのアイテムボックス63が表示され、4つのアイテムボックス63のうちの何れかしか取得できない。すなわち、位置P7のアイテムボックス63が複数の移動オブジェクトTOに対して有効化されている場合、アイテムボックス63の状態は、複数の移動オブジェクトTOに共通である。このため、何れかの移動オブジェクトTOによってアイテムボックス63の状態が変化された場合、他の移動オブジェクトTOにとってもアイテムボックス63は同じ状態である。
位置P9のアイテム64も、アイテムボックス63同様に制御される。ただし、アイテムボックス63は複数のアイテムボックスを有するのに対して、1つのアイテムである。このとき、移動オブジェクトTOaによってアイテム64が取得されると、そのアイテム64は視認できず取得もできない状態になる。このため、後続の他の移動オブジェクトTO(例えばTObやTOc)が位置P9に到達しても、位置P9にはアイテム64は存在しないように見える。すなわち、位置P9のアイテム64は後続の複数の移動オブジェクトTOに対して有効化されているにもかかわらず、あたかも無効化されているようにふるまう。
プロセッサ21は、ステップS22において、全ての移動オブジェクトTOに対して上記衝突判定処理を行う。すなわち、プロセッサ21は、移動オブジェクトTObと、当該移動オブジェクトTObに対して有効化されたアイテムとの衝突判定処理を行う。また、移動オブジェクトTOcと、当該移動オブジェクトTOcに対して有効化されたアイテムとの衝突判定処理を行う。プロセッサ21は、次にステップS23の処理を実行する。
ステップS23において、プロセッサ21は、移動オブジェクト間の衝突判定処理を行う。ここでは、各移動オブジェクトTOの位置および形状に基づいて、移動オブジェクトTO同士の衝突判定が行われる。また、ここでは、移動オブジェクトTOが他の移動オブジェクトTOに対して攻撃(例えばアイテムを投げる攻撃)を行った場合、当該攻撃と移動オブジェクトTOとの衝突判定も行われる。プロセッサ21は、衝突判定の結果に応じて、移動オブジェクトTOを減速させたり、停止させたり、移動オブジェクトTOの移動方向を変化させたりする。プロセッサ21は、次にステップS24の処理を実行する。
ステップS24において、プロセッサ21は、ゲーム空間に固定されたオブジェクト(例えば、コースに沿った壁オブジェクト等)と移動オブジェクトTOとの衝突判定を行う。プロセッサ21は、衝突判定の結果に応じて、移動オブジェクトTOを減速させたり、停止させたり、移動オブジェクトTOの移動方向を変化させたりする。なお、ステップS22からステップS24のように衝突判定処理を分けずに、各移動オブジェクトに対するそれ以外のオブジェクトとの衝突判定処理をまとめて実行してもよい。プロセッサ21は、次にステップS25の処理を実行する。
ステップS25において、プロセッサ21は、各移動オブジェクトTOのアクションを制御する。移動オブジェクトTOは、移動の他にも様々なアクション(ジャンプ、他の移動オブジェクトTOへの攻撃、アイテムの使用等)を行うことが可能である。プロセッサ21は、コントローラ3からの操作データに応じたアクションを、移動オブジェクトTOaに行わせる。また、プロセッサ21は、コントローラ4からの操作データに応じたアクションを、移動オブジェクトTObに行わせる。また、プロセッサ21は、移動オブジェクトTOcのアクションを制御する。プロセッサ21は、ステップS25の処理の後、図23のステップS5の処理を実行する。
図23に戻り、ステップS5において、プロセッサ21は、オブジェクト設定処理を実行する。オブジェクト設定処理は、図16の対応表、及び、図17~図20に例示されるオブジェクトセットを用いて、コースに配置された各オブジェクトを有効化する処理である。以下、ステップS5のオブジェクト設定処理の詳細について、図25を参照して説明する。図25は、ステップS5のオブジェクト設定処理の一例を示すフローチャートである。
ステップS31において、プロセッサ21は、各移動オブジェクトTOの進行度合いに応じて、移動オブジェクトTO毎にオブジェクトセットを適用する。ここでは、図16に示す対応表を用いて各移動オブジェクトTOに対してオブジェクトセットが適用される。例えば、移動オブジェクトTOaがD地点からE地点の区間に位置する場合、移動オブジェクトTOaに対してオブジェクトセット2-Dが適用される。また、例えば、移動オブジェクトTObがB地点からC地点の区間に位置する場合、移動オブジェクトTObに対してオブジェクトセット1-Bが適用される。また、例えば、移動オブジェクトTOcがF地点からG地点の区間に位置する場合、移動オブジェクトTOcに対してオブジェクトセット2-Fが適用される。プロセッサ21は、次にステップS32の処理を実行する。
ステップS32において、プロセッサ21は、各移動オブジェクトTOに適用したオブジェクトセットに基づいて、コースに予め配置された各オブジェクトを有効化する。これにより、コースに予め配置された進入防止オブジェクト60が有効化されたり、加速オブジェクト61、62、アイテムボックス63、アイテム64等が、有効化されたりする。各移動オブジェクトTOに対してオブジェクトセットが適用されることで、移動オブジェクトTO毎に、コースに配置された各オブジェクトの有効化が行われる。プロセッサ21は、ステップS32の処理の後、図23のステップS6の処理を実行する。
図23に戻り、ステップS6において、プロセッサ21は、描画処理を実行する。描画処理では、仮想カメラに基づいてゲーム画像が生成される。例えば、移動オブジェクトTOaに対応する仮想カメラVCaに基づいて、ゲーム画像50aが生成される。ゲーム画像50aの生成の際に、ステップS5において移動オブジェクトTOaに対して有効化されたオブジェクトは描画される一方、移動オブジェクトTOaに対して無効化されたオブジェクトは描画されない。すなわち、ゲーム画像50aにおいては、移動オブジェクトTOaに対して有効化されたオブジェクトの表示は有効化されるが、移動オブジェクトTOaに対して無効化されたオブジェクトの表示は無効化される。また、移動オブジェクトTObに対応する仮想カメラVCbに基づいて、ゲーム画像50bが生成される。ゲーム画像50bの生成の際に、ステップS5において移動オブジェクトTObに対して有効化されたオブジェクトは描画される一方、移動オブジェクトTObに対して無効化されたオブジェクトは描画されない。そして、プロセッサ21は、2つのゲーム画像50a及び50bを含むゲーム画像を生成する。
なお、ある移動オブジェクトTOに対して表示が無効化されたオブジェクトであっても、上記ステップS22において別の移動オブジェクトTOとの衝突判定が行われる場合がある。逆に、ある移動オブジェクトTOに対して表示が有効化されたオブジェクトであっても、上記ステップS22において別の移動オブジェクトTOとの衝突判定が行われない場合がある。例えば、図12に示されるような状況では、ゲーム画像50aにおいては、分岐部分IC1及びIC2における左ルートには、進入防止オブジェクト60が表示されているが、ゲーム画像50bにおいては、これらは表示されず、移動オブジェクトTObは、分岐部分IC1における左ルートを通過可能である。このため、移動オブジェクトTObが、分岐部分IC1における左ルートを通過した場合、ゲーム画像50aにおいては、移動オブジェクトTObが進入防止オブジェクト60をすり抜けて移動するように見える。また、図12に示されるような状況で、移動オブジェクトTOaが分岐部分IC1における左ルートに向かって移動する場合、移動オブジェクトTOaは、進入防止オブジェクト60に衝突して停止又は減速する。このとき、ゲーム画像50bにおいては、分岐部分IC1における左ルートには進入防止オブジェクト60が表示されていないものの、移動オブジェクトTOaは停止又は減速する。プロセッサ21は、次にステップS7の処理を実行する。
ステップS7において、プロセッサ21は、ステップS6で生成したゲーム画像を表示装置に出力する。プロセッサ21は、次にステップS8の処理を実行する。
ステップS8において、プロセッサ21は、レースゲームを終了するか否かを判定する。例えば、全ての移動オブジェクトTOがゴールに到達した場合、又は、レースゲームの開始から所定時間が経過した場合、プロセッサ21は、レースゲームを終了すると判定する。ステップS8の判定結果が否定である場合、ステップS3の処理が再度実行される。以降、ステップS8においてゲームを終了すると判定されるまで、ステップS3~S8の一連の処理が繰り返し実行される。一方、ステップS8の判定結果が肯定である場合、プロセッサ21は、図23に示すゲーム処理を終了する。
なお、上記フローチャートで示した処理は単なる例示に過ぎず、処理の順番や内容等は適宜変更されてもよい。
以上のように、本実施形態では、第1の移動オブジェクトの進入を制限する進入防止オブジェクト60を、第1の移動オブジェクト以外の移動オブジェクトの進行度合いに関わらず、第1の移動オブジェクトの進行度合いに応じて有効化する。また、第2の移動オブジェクトの進入を制限する進入防止オブジェクト60を、第2の移動オブジェクト以外の移動オブジェクトの進行度合いに関わらず、第2の移動オブジェクトの進行度合いに応じて有効化する。これにより、各移動オブジェクトを、当該移動オブジェクトの進行度合いに応じて異なる経路を移動させることができ、1つのコースにおいて、バリエーションのある経路を有するレースゲームを実現することができる。また、プレイヤの移動オブジェクトが通過する経路は、自身の進行度合いに応じて定まり、他のプレイヤの進行度合いには影響されない。このため、例えば、プレイヤが他のプレイヤに対して周回遅れになっても、当該他のプレイヤの進行によって自身が通過可能な経路は変わらないため、プレイヤは自身のペースでバリエーションのある経路を進みながらレースゲームを行うことができる。
また、本実施形態では、複数の移動オブジェクト間で1のゲーム空間を共通とし、ゲーム空間内のコースには、予めオブジェクト(進入防止オブジェクト60、加速オブジェクト等)が配置される。各移動オブジェクトのゲームの進行度合いに応じて、予め配置されたオブジェクトの表示及び衝突判定が有効化される。これにより、移動オブジェクト毎にゲーム空間を構築して、各ゲーム空間においてオブジェクトを配置する必要が無く、リソースの削減及び処理負荷の軽減を図ることができる。例えば、第1の移動オブジェクト用の第1ゲーム空間と第2の移動オブジェクト用の第2ゲーム空間とを構築し、第1ゲーム空間においては進入防止オブジェクト60を配置し、第2ゲーム空間においては進入防止オブジェクト60を配置しないことにより、同じコースにおける同じ分岐部分において、第1の移動オブジェクトに対して進入防止オブジェクト60を有効化する一方、第2の移動オブジェクトに対しては進入防止オブジェクト60を無効化することも可能である。しかしながら、この場合は、移動オブジェクト毎にゲーム空間を構築する必要があり、処理負荷が増大する可能性がある。しかしながら、本実施形態では、1つのゲーム空間において予め進入防止オブジェクト60を配置し、同じゲーム空間において複数の移動オブジェクトを移動させる一方で、移動オブジェクト毎に進入防止オブジェクト60の表示及び衝突判定の有効/無効を切り替える。これにより、処理負荷を軽減しつつ、各移動オブジェクトの進行度合いに応じて、進入防止オブジェクト60を出現させたり、出現させなかったりすることができる。
また、本実施形態では、進入防止オブジェクト60は、奥方向のゲーム空間を視認可能に表示される。これにより、ゲームの進行度合いが異なる他の移動オブジェクトが進入防止オブジェクト60をすり抜ける場合であっても、違和感を少なくすることができる。また、移動オブジェクトが進入防止オブジェクト60によってその先のゲーム空間に進入できなくても、プレイヤは、その先のゲーム空間を視認することができ、例えば次に分岐部分を通過するときの経路を認識することができる。
また、本実施形態では、分岐部分が視認可能となる前に、当該分岐部分において進入防止オブジェクト60が有効化される。これにより、突然分岐部分において進入防止オブジェクト60が出現することを抑制することができ、分岐部分の表示中に、当該分岐部分における経路が切り替わることを抑制することができる。
また、本実施形態では、コースを複数回周回するレースゲームであり、移動オブジェクトの周回数によって、順方向(正規の進行方向)が異なる。例えば、1周目ではコースを真上から見たときに反時計回りが正規の進行方向であるのに対して、2周目では、時計回りが正規の進行方向となる。このため、例えば、第1の移動オブジェクトが第2の移動オブジェクトに対して周回遅れとなっている場合、第1の移動オブジェクトは、第2の移動オブジェクトと逆方向を進行することになる。第1の移動オブジェクトが逆方向を進行する場合でも、正規の進行方向であるため、第1の移動オブジェクトは、継続して逆方向を進行することができる。これにより、従来にはないバリエーションのあるレースゲームを実現することができる。
なお、上記においては、1台の本体装置2を用いて二人のプレイヤでレースゲームが行われることを前提としてゲーム処理の説明を行ったが、シングルプレイモードでレースゲームが行われる場合も同様のゲーム処理が行われる。この場合、プレイヤによって制御される移動オブジェクト(操作対象オブジェクト)と、プロセッサ21によって制御される1又は複数の移動オブジェクトとでレースゲームが行われる。上記オブジェクト設定処理においては、操作対象オブジェクトの進行度合いに応じて、図16に示すオブジェクトセットが適用され、各オブジェクトが有効化又は無効化される。プロセッサ21によって制御される1又は複数の移動オブジェクトについても、各移動オブジェクトの進行度合いに応じて、図16に示すオブジェクトセットが適用され、各オブジェクトが有効化又は無効化される。なお、シングルプレイモードでレースゲームが行われる場合において、第1の画面に操作対象オブジェクトが表示され、第2の画面にプロセッサ21によって制御される移動オブジェクトが表示されてもよい。
また、ローカル通信マルチプレイモードやオンラインマルチプレイモードにおいてレースゲームが行われる場合も、上記と同様のゲーム処理が行われる。例えば、オンラインマルチプレイモードでは、複数の本体装置2がインターネットに接続され、例えばサーバを介して通信する。例えば、第1のプレイヤの第1本体装置2と、第2のプレイヤの第2本体装置2とがインターネットで接続され、第1のプレイヤに対応する第1移動オブジェクトと、第2のプレイヤに対応する第2移動オブジェクトとを含む複数の移動オブジェクトを用いて、同じゲーム空間内でレースゲームが行われる。第1本体装置2は、コントローラからの操作データに基づいて、第1移動オブジェクトを制御する。また、第1本体装置2は、第1移動オブジェクトの位置情報(周回数及び位置)をサーバを介して第2本体装置2に送信するとともに、第2本体装置2から、第2のプレイヤが操作する第2移動オブジェクトの位置情報をサーバを介して受信する。また、第1本体装置2においては、上記オブジェクト設定処理において、第1移動オブジェクトの進行度合いに応じて、図16に示すオブジェクトセットを適用し、第1移動オブジェクトが進入可能な分岐先及び進入不可能な分岐先を、第1移動オブジェクトの進行度合いに応じて切り替える。また、第2本体装置2においては、上記オブジェクト設定処理において、第2移動オブジェクトの進行度合いに応じて、図16に示すオブジェクトセットを適用し、第2移動オブジェクトが進入可能な分岐先及び進入不可能な分岐先を、第2移動オブジェクトの進行度合いに応じて切り替える。また、第1本体装置2は、上記移動オブジェクト制御処理において、各移動オブジェクト(第1移動オブジェクト、及び、第2移動オブジェクト)と、有効化されたオブジェクトとの衝突判定処理を行う。第2本体装置2も、上記移動オブジェクト制御処理において、各移動オブジェクト(第1移動オブジェクト、及び、第2移動オブジェクト)と、有効化されたオブジェクトとの衝突判定処理を行う。このように、オンラインマルチプレイモードにおいてレースゲームが行われる場合も、各本体装置2において上記と同様の処理が行われる。
(変形例)
以上、本実施形態について説明したが、上記実施形態は単なる一例であり、例えば以下のような変形が加えられてもよい。
例えば、上記実施形態では、分岐部分において複数の分岐先のうちの少なくとも何れか1つの分岐先への進入を制限する進入防止オブジェクトが有効化されることにより、移動オブジェクトTOが当該分岐先に進入不可能とした。他の実施形態では、分岐部分において複数の分岐先のうちの少なくとも何れか1つの分岐先への進入を可能する進入可能オブジェクトが有効化されることにより、移動オブジェクトTOが当該分岐先に進入可能としてもよい。例えば、進入可能オブジェクトは、橋であってもよい。
すなわち、分岐部分において複数の分岐先のうちの少なくとも何れか1つの分岐先への進入を制限する、又は、少なくとも何れか1つの分岐先への進入を可能とする進入制御オブジェクトが有効化されることにより、移動オブジェクトTOが当該分岐先に進入不可又は進入可能としてもよい。
進入制御オブジェクトは、上記進入防止オブジェクトであってもよいし、進入可能オブジェクトであってもよい。また、進入制御オブジェクトは、移動オブジェクトの経路を、その進行度合いに加えて他のパラメータも考慮して切り替えてもよい。例えば、経路切替オブジェクトは、進行度合いに応じて、3つの分岐先のうち第1または第2の分岐先へ切り替え可能であって、移動体が第1の姿勢では第1の分岐先に、第2の姿勢では第2の分岐先に切り替えるものであってもよい。また、進入制御オブジェクトは、移動オブジェクトの移動方向を強制的に変化させる移動方向変更オブジェクトであってもよい。例えば、移動オブジェクトが、移動方向変更オブジェクトに近づいた又は衝突した場合は、移動オブジェクトの移動方向が、当該移動方向変更オブジェクトに応じて変化されてもよい。
また、進入制御オブジェクトは、複数の分岐先のうちの少なくとも何れか1つの分岐先への進入を促し、他の分岐先への進入を促さない促進オブジェクトであってもよい。移動オブジェクトのレースゲームの進行度合いに応じて、分岐部分において、促進オブジェクトが有効化されてもよい。例えば、移動オブジェクトは、促進オブジェクトによって促される分岐先に進入することを推奨されるが、促進オブジェクトによって促されない分岐先であっても、進入することが可能であってもよい。この場合、進入はできても、順路からは外れるため進行度合いが進まないこととしてもよい。このようなオブジェクトが有効化される場合であっても、レースゲームの進行度合いに応じて、経路を切り替えることができ、バリエーションのあるレースゲームを提供することができる。
また、上記実施形態では、予めゲーム空間にオブジェクト(進入防止オブジェクト、加速オブジェクト、アイテムボックス等)を配置し、移動オブジェクトのレースゲームの進行度合いに応じて、当該オブジェクトの表示を有効化するとともに、当該オブジェクトの衝突判定を有効化した。他の実施形態では、オブジェクトの表示のみ有効化してもよいし、オブジェクトの衝突判定のみ有効化してもよい。
また、上記実施形態では、デフォルトでは各オブジェクトが無効化されており、進行度合いに応じてオブジェクトセットが適用され、オブジェクトセットに含まれるオブジェクトが有効化された。他の実施形態では、デフォルトでは各オブジェクトが有効化されており、進行度合いに応じて各オブジェクトが無効化されてもよい。例えば、移動オブジェクトの進行度合いに応じて、進入制御オブジェクトの有効化と無効化とを切り替えることにより、移動オブジェクトの経路を切り替えてもよい。
また、上記実施形態では、予めゲーム空間にオブジェクト(進入防止オブジェクト、加速オブジェクト、アイテムボックス等)を配置し、当該配置されたオブジェクトを移動オブジェクトのレースゲームの進行度合いに応じて有効化した。これにより、例えば進入防止オブジェクトによって移動オブジェクトの進入を制限したり、アイテムボックスを移動オブジェクトが取得可能とした。他の実施形態では、予めゲーム空間にはオブジェクトは配置されず、移動オブジェクトのレースゲームの進行度合いに応じてゲーム空間にオブジェクトを配置することで、当該オブジェクトを有効化してもよい。すなわち、オブジェクトを有効化することは、予め配置されたオブジェクトの表示及び/又は衝突判定を有効にすることと、ゲーム空間に新たにオブジェクトを配置することとを含む。
また、上記進入制御オブジェクトを有効化する方法に限らず、他の方法によって、移動オブジェクトの進行度合いに応じて、分岐部分において当該移動オブジェクトが進入不可能な分岐先又は進入可能な分岐先を切り替えてもよい。例えば、進入制御オブジェクトによらず、分岐部分において移動オブジェクトが進行度合いによって異なる分岐先に進入するように自動的に制御されてもよい。
また、上記実施形態では、加速オブジェクトは、順方向と同じ方向に速度を加速させるオブジェクトであるとした。他の実施形態では、加速オブジェクトに加えて又は代えて、所定の方向への移動態様を変化させる移動変化オブジェクトが配置されてもよい。例えば、移動変化オブジェクトは、順方向と同じ方向にジャンプさせるオブジェクトであってもよい。また別の例では、加速オブジェクトは、移動オブジェクトが衝突する際の移動オブジェクトの移動方向に関わらず現在進行する方向に向けて移動オブジェクトを加速させるオブジェクトであってもよい。この場合、進行度合いに応じて、加速させる機能は変わらないが表示される矢印が向く方向が異なる複数の加速オブジェクトのうち、順方向に対して矢印の向きが沿う加速オブジェクトが有効化されてもよい。加速オブジェクトは、向きを示す表示を有するものの、当該表示に関係なく、進行度合いに応じて順方向に移動オブジェクトを加速させるものであってもよい。また、加速オブジェクトは、向きを示す表示を有さず、進行度合いに応じて順方向に移動オブジェクトを加速させるものであってもよい。
また、移動オブジェクトのレースゲームにおける進行度合いは、移動オブジェクトの周回数及び位置に基づいて定められてもよいし、移動オブジェクトの周回数のみに基づいて定められてもよいし、移動オブジェクトのコースに沿った移動距離に応じて定められてもよい。
また、上記実施形態では、複数の移動オブジェクトがコース全体を複数回周回するレースゲームが行われるものとした。他の実施形態では、レースゲームは、複数の移動オブジェクトがコースを1周だけするものであってもよく、当該コースには、複数の移動オブジェクトが複数回通過する分岐部分が設けられてもよい。また、レースゲームは、複数の移動オブジェクトがスタート地点から、当該スタート地点とは異なるゴール地点まで進むゲームであってもよく、スタート地点からゴール地点までの間に、複数の移動オブジェクトが複数回通過する分岐部分が設けられてもよい。そのような場合において、分岐部分において上記進入制御オブジェクトが有効化されることで、分岐部分を通過する回数によって異なる分岐先に移動オブジェクトが進入するように制御されてもよい。
また、上記実施形態では、レースゲームは、コース全体を複数回周回するゲームであり、進入防止オブジェクトを有効化することにより経路を切り替え、周回数によって、移動オブジェクトの進行方向(順方向)が異なるようにした。他の実施形態では、上記進入防止オブジェクトを用いた経路の切り替えによらず、レースゲーム中に移動オブジェクトが複数回通過する共通路を有することを前提として、共通路の通過回数によって当該共通路における移動オブジェクトの進行方向(順方向)が異なるようにしてもよい。例えば、N回目に移動オブジェクトが共通路を通過するときには、ゲーム空間における第1方向が進行方向となり、M回目に移動オブジェクトが共通路を通過するときには、ゲーム空間における第2方向が進行方向となるように構成されてもよい。この場合において、例えば上記加速オブジェクトは、進行方向に対応する方向(第1方向が進行方向である場合は第1方向、第2方向が進行方向である場合は第2方向)に、移動オブジェクトを加速させる。
また、上述した処理は、ゲームシステム1に限らず、他の任意の情報処理装置、情報処理システムにおいて実行されてもよい。情報処理システムは、複数の装置によって構成されてもよく、複数の装置はネットワーク(例えば、LANやインターネット等)を介して接続されてもよい。
また上記実施形態及びその変形例に係る構成は、互いに矛盾しない限り、任意に組み合わせることが可能である。また、上記は本発明の例示に過ぎず、上記以外にも種々の改良や変形が加えられてもよい。
1 ゲームシステム
21 プロセッサ
60 進入防止オブジェクト
61、62 加速オブジェクト
63 アイテムオブジェクト
64 アイテム
TO 移動オブジェクト

Claims (16)

  1. コンピュータに、仮想空間内のコースオブジェクトによって規定されるコースに設定された順路に沿って複数の移動オブジェクトを移動させることで進行するレースゲームを実行させるゲームプログラムであって、
    前記コースは、複数の分岐先に分かれる分岐部分を有し、
    前記順路は、前記複数の移動オブジェクトが前記分岐部分を複数回通過するように設定され、
    前記コンピュータを、
    前記複数の移動オブジェクトのうち、プレイヤの操作対象である操作対象オブジェクトを、プレイヤの操作入力に基づいて前記コース上で移動させる移動制御手段と、
    前記分岐部分において、前記操作対象オブジェクトが前記複数の分岐先のうち少なくとも何れか1つの分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する分岐制御手段として機能させ、
    前記分岐制御手段は、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記操作対象オブジェクト以外の前記移動オブジェクトの前記レースゲームにおける進行度合いにかかわらず、前記操作対象オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える、ゲームプログラム。
  2. 前記分岐制御手段は、前記分岐部分において前記他の分岐先への進入を制限する、又は、前記少なくとも何れか1つの分岐先への進入を可能とする進入制御オブジェクトの、有効化と無効化とを切り替える、請求項1に記載のゲームプログラム。
  3. 前記コースは、前記進入制御オブジェクトを予め含み、
    前記分岐制御手段は、前記進入制御オブジェクトの表示、及び/又は、衝突判定の有効化と無効化とを切り替える、請求項2に記載のゲームプログラム。
  4. 前記進入制御オブジェクトは、前記他の分岐先への進入を制限する進入防止オブジェクトであり、
    前記進入防止オブジェクトは、当該進入防止オブジェクトの奥にある仮想空間を視認可能に表示される、請求項3に記載のゲームプログラム。
  5. 前記プレイヤの操作対象である操作対象オブジェクトを含む第1の画像と、前記複数の移動オブジェクトのうちの前記プレイヤの操作対象である前記操作対象オブジェクト以外の第2の移動オブジェクトを含む第2の画像とを生成し、表示画面の第1の領域に前記第1の画像を表示させるとともに、前記表示画面の第2の領域に前記第2の画像を表示させる表示制御手段として、前記コンピュータをさらに機能させ、
    前記分岐制御手段は、
    前記操作対象オブジェクト以外の前記移動オブジェクトの前記進行度合いにかかわらず、前記操作対象オブジェクトの前記進行度合いに応じて、前記進入制御オブジェクトの有効化と無効化とを切り替えることにより、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を切り替え、
    前記第2の移動オブジェクト以外の前記移動オブジェクトの前記進行度合いにかかわらず、前記第2の移動オブジェクトの前記進行度合いに応じて、前記進入制御オブジェクトの有効化と無効化とを切り替えることにより、前記分岐部分において前記第2の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を切り替え、
    前記表示制御手段は、
    前記第1の画像において、前記操作対象オブジェクトの前記進行度合いに応じて前記進入制御オブジェクトの表示を有効化又は無効化し、
    前記第2の画像において、前記第2の移動オブジェクトの前記進行度合いに応じて前記進入制御オブジェクトの表示を有効化又は無効化する、請求項2から4の何れかに記載のゲームプログラム。
  6. 前記レースゲームは、前記コースにおけるスタート地点を複数回通過するゲームであり、
    前記分岐制御手段は、前記操作対象オブジェクトが前記スタート地点を第1回数通過したときと、第2回数通過したときとで、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先が異なるように、前記切り替えを行う、請求項1から5の何れかに記載のゲームプログラム。
  7. 前記分岐制御手段は、前記操作対象オブジェクトが前記スタート地点を通過した後であって次の前記スタート地点に到達するまでの間に、前記切り替えを行う、請求項6に記載のゲームプログラム。
  8. 前記分岐制御手段は、今回の周回において前記操作対象オブジェクトが前記分岐部分を通過した後であって、前記操作対象オブジェクトが次の周回に入る前に、次の周回のための前記切り替えを行う、請求項6又は7に記載のゲームプログラム。
  9. 前記コース上において、前記レースゲームにおいて前記移動オブジェクトに有利又は不利な影響を与えるオブジェクトを、当該移動オブジェクト以外の移動オブジェクトの前記進行度合いに関わらず、当該移動オブジェクトの前記進行度合いに応じて、有効化するオブジェクト制御手段として、前記コンピュータをさらに機能させる、請求項1から8の何れかに記載のゲームプログラム。
  10. 有効化された前記オブジェクトは第1の状態と第2の状態とに変化可能であり、
    複数の前記移動オブジェクトに対して前記オブジェクトが有効化される場合、当該複数の移動オブジェクト間で前記オブジェクトの状態は共通である、請求項9に記載のゲームプログラム。
  11. 前記コースは、前記複数の移動オブジェクトが前記レースゲーム中に複数回通過する共通路を含み、
    前記順路は、前記移動オブジェクトが前記共通路を通過する回数が第1回数目のときと、第2回数目のときとで、当該共通路における進行方向が逆になるように設定される、請求項1から10の何れかに記載のゲームプログラム。
  12. 前記移動オブジェクトの所定の方向への移動態様を変化させる移動変化オブジェクトを有効化又は無効化する移動変化オブジェクト制御手段として、前記コンピュータをさらに機能させ、
    前記移動変化オブジェクト制御手段は、前記移動オブジェクトが前記共通路を移動するときに、当該移動オブジェクトの進行方向と移動態様を変化させる方向とが対応するように、当該移動オブジェクトの前記進行度合いに応じて前記移動変化オブジェクトを有効化又は無効化する、請求項11に記載のゲームプログラム。
  13. 仮想空間内のコースオブジェクトによって規定されるコースに設定された順路に沿って、複数のプレイヤのそれぞれに対応する複数の移動オブジェクトを移動させることで進行するレースゲームを実行する情報処理システムであって、
    前記コースは、複数の分岐先に分かれる分岐部分を有し、
    前記順路は、前記複数の移動オブジェクトが前記分岐部分を複数回通過するように設定され、
    プレイヤの操作入力に基づいて、当該プレイヤに対応する前記移動オブジェクトを前記コース上で移動させる移動制御手段と、
    前記分岐部分において、前記移動オブジェクトが前記複数の分岐先のうち少なくとも1の分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する分岐制御手段とを備え、
    前記分岐制御手段は、
    前記分岐部分において第1のプレイヤに対応する第1の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第1の移動オブジェクトの前記レースゲームにおける進行度合いに応じて切り替え、
    前記分岐部分において第2のプレイヤに対応する第2の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第2の移動オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える、情報処理システム。
  14. 前記情報処理システムは、第1の情報処理装置と第2の情報処理装置とを含み、
    前記第1の情報処理装置は、
    前記第1のプレイヤの操作入力に基づいて、前記第1の移動オブジェクトを前記コースにおいて移動させる第1移動制御手段と、
    前記分岐部分において、前記第1の移動オブジェクトが前記複数の分岐先のうち少なくとも1の分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する第1分岐制御手段とを有し、
    前記第1分岐制御手段は、
    前記分岐部分において前記第1の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第1の移動オブジェクトの前記進行度合いに応じて切り替え、
    前記第2の情報処理装置は、
    前記第2のプレイヤの操作入力に基づいて、前記第2の移動オブジェクトを前記コースにおいて移動させる第2移動制御手段と、
    前記分岐部分において、前記第2の移動オブジェクトが前記複数の分岐先のうち少なくとも1の分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する第2分岐制御手段とを有し、
    前記第2分岐制御手段は、
    前記分岐部分において前記第2の移動オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記第2の移動オブジェクトの前記進行度合いに応じて切り替える、請求項13に記載の情報処理システム。
  15. 仮想空間内のコースオブジェクトによって規定されるコースに設定された順路に沿って複数の移動オブジェクトを移動させることで進行するレースゲームを実行する情報処理システムであって、
    前記コースは、複数の分岐先に分かれる分岐部分を有し、
    前記順路は、前記複数の移動オブジェクトが前記分岐部分を複数回通過するように設定され、
    前記複数の移動オブジェクトのうち、プレイヤの操作対象である操作対象オブジェクトを、プレイヤの操作入力に基づいて前記コース上で移動させる移動制御手段と、
    前記分岐部分において、前記操作対象オブジェクトが前記複数の分岐先のうち少なくとも何れか1つの分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する分岐制御手段とを備え、
    前記分岐制御手段は、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記操作対象オブジェクト以外の前記移動オブジェクトの前記レースゲームにおける進行度合いにかかわらず、前記操作対象オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える、情報処理システム。
  16. 仮想空間内のコースオブジェクトによって規定されるコースに設定された順路に沿って複数の移動オブジェクトを移動させることで進行するレースゲームを、情報処理システムにおいて実行する情報処理方法であって、
    前記コースは、複数の分岐先に分かれる分岐部分を有し、
    前記順路は、前記複数の移動オブジェクトが前記分岐部分を複数回通過するように設定され、
    前記複数の移動オブジェクトのうち、プレイヤの操作対象である操作対象オブジェクトを、プレイヤの操作入力に基づいて前記コース上で移動させる移動制御ステップと、
    前記分岐部分において、前記操作対象オブジェクトが前記複数の分岐先のうち少なくとも何れか1つの分岐先へ進入することを可能とし、他の分岐先へ進入することを制限する分岐制御ステップとを含み、
    前記分岐制御ステップでは、前記分岐部分において前記操作対象オブジェクトが進入可能な分岐先又は進入することを制限される分岐先を、前記操作対象オブジェクト以外の前記移動オブジェクトの前記レースゲームにおける進行度合いにかかわらず、前記操作対象オブジェクトの前記レースゲームにおける進行度合いに応じて切り替える、情報処理方法。
JP2022041917A 2022-03-16 2022-03-16 ゲームプログラム、情報処理システム、および情報処理方法 Pending JP2023136345A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022041917A JP2023136345A (ja) 2022-03-16 2022-03-16 ゲームプログラム、情報処理システム、および情報処理方法
US18/120,008 US20230293991A1 (en) 2022-03-16 2023-03-10 Non-transitory computer-readable storage medium having stored therein game program, information processing system, and information processing method
CN202310247261.2A CN116764201A (zh) 2022-03-16 2023-03-15 存储有游戏程序的存储介质、信息处理系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022041917A JP2023136345A (ja) 2022-03-16 2022-03-16 ゲームプログラム、情報処理システム、および情報処理方法

Publications (1)

Publication Number Publication Date
JP2023136345A true JP2023136345A (ja) 2023-09-29

Family

ID=88010509

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022041917A Pending JP2023136345A (ja) 2022-03-16 2022-03-16 ゲームプログラム、情報処理システム、および情報処理方法

Country Status (3)

Country Link
US (1) US20230293991A1 (ja)
JP (1) JP2023136345A (ja)
CN (1) CN116764201A (ja)

Also Published As

Publication number Publication date
CN116764201A (zh) 2023-09-19
US20230293991A1 (en) 2023-09-21

Similar Documents

Publication Publication Date Title
CA3054963C (en) Gameplay ride vehicle systems and methods
JP5448021B2 (ja) レーシングゲーム装置のプログラム、そのプログラムを格納した記録媒体、及びレーシングゲーム装置
US8167718B2 (en) Storage medium storing game program, game apparatus, and game control method
JP5007670B2 (ja) ゲーム装置のプログラム、ゲーム装置及びゲーム装置のプログラムを格納した記録媒体
JPH0969169A (ja) 画像処理方法、画像処理装置および疑似体験装置
JP3543449B2 (ja) 仮想コース表示方法及びそれを利用した遊戯装置
JP4189315B2 (ja) ゲーム装置およびゲームプログラム
JP4169682B2 (ja) レースゲームプログラムおよびゲーム装置
US10981065B2 (en) Storage medium having stored therein information processing program, information processing apparatus, information processing system, and information processing method
JP2009011371A (ja) レーシングゲーム装置のプログラム、そのプログラムを格納した記録媒体、及びレーシングゲーム装置
JP2009082188A (ja) ゲームプログラム、ゲーム装置、およびゲーム制御方法
JP2023136345A (ja) ゲームプログラム、情報処理システム、および情報処理方法
JP2010029711A (ja) タッチパネルを用いたゲーム装置およびゲームプログラム
JP2006116328A (ja) ゲームシステムおよび情報記憶媒体
JP6057738B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
JP5201838B2 (ja) ゲームプログラム、そのゲームプログラムを記録した記憶媒体及びゲーム装置
JP3601793B1 (ja) 移動時間算出プログラム及び情報記録媒体
JP4287764B2 (ja) 競争ゲーム装置および競争ゲームプログラム
JP4136644B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP4656547B2 (ja) 画像処理装置、画像処理方法及び画像処理行程を実行させるプログラム、並びにそのプログラムを記憶する記憶媒体
JP4782167B2 (ja) 競争ゲーム装置および競争ゲームプログラム
WO2018079764A1 (ja) 携帯端末装置、ネットワークゲームシステム、競走ゲーム処理方法
US20240149166A1 (en) Storage medium, game apparatus, game system, and game processing method
US20230372831A1 (en) Computer-readable non-transitory storage medium, information processing system, and information processing method
US20240149168A1 (en) Storage medium, information processing system, and information processing method