ようこそOpenTaikoドキュメンテーションページへ!ここに表示されるすべては進行中の作業です、我々はまだこのゲームに関連する情報の膨大な量を文書化しているためです。
-
-
OpenTaikoはTJAフォーマットを使って曲を作る。任意のテキストエディター、またはPeepoDrumKitなどのビジュアルエディターで開くことができます。以下は、使用される音符の種類のリストです。
OpenTaikoは多くの音符を支援します。一部は一般的に全ての譜面に使われます、他はあまり頻繁に現れません。いくつかはまた、他のモードに排他的であってもよいし、異なる動作を有することができます。
太鼓モードに使われた一般の音符の種類はここに記載します。
ID | 名前 | 説明 |
---|---|---|
0 | 空白 |
空白な空間です。 音符の間隔で必要です。複雑なパターンを作るにも役立ちます。 |
1 | ドン | 赤い音符です。 |
2 | カッ | 青い音符です。 |
3 | ドン(大) | 大きな赤い音符です。 |
4 | カッ(大) | 大きな青い音符です。 |
5 | 連打開始 |
連打です。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 |
6 | 連打(大)開始 |
大きな連打です。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 |
7 | ふうせん開始 |
ふうせんです。 ふうせんの開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 連打に似ているが、制限する時間で一定の数をたたいてクリアしなければなりません。ふうせんの値はBALLOONタッグで指定します。 |
8 | 長音符終了 | 何かの長音符の終了を表記します。 |
9 | くすだま開始 |
大きなふうせんです。 くすだまの開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 連打に似ているが、制限する時間で一定の数をたたいてクリアしなければなりません。くすだまの値もBALLOONタッグで指定します。 |
A | ドン(大・両手) |
大きな赤い音符です。 譜面をマルチプレイと音符が揃えたときつないだ手を表示します。 |
B | カッ(大・両手) |
大きな青い音符です。 譜面をマルチプレイと音符が揃えたときつないだ手を表示します。 |
コンガモードに使われた一般の音符の種類はここに記載します。
それらの多く太鼓モードに既に使われましたが、いくつかはこのゲームモードに排他的に使われます。
ID | 名前 | 説明 |
---|---|---|
0 | 空白 |
空白な空間です。 音符の間隔で必要です。複雑なパターンを作るにも役立ちます。 |
1 | 右 | 右音符です。 |
2 | 左 | 左音符です。 |
3 | ダブル | ダブル音符です。 |
4 | 拍手 | 拍手音符です。 |
5 | 右連打開始 |
右連打です。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 |
6 | ダブル連打開始 |
ダブル連打です。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 |
7 | ふうせん開始 |
ふうせんです。 ふうせんの開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 連打に似ているが、制限する時間で一定の数をたたいてクリアしなければなりません。ふうせんの値もBALLOONタッグで指定します。 |
8 | 長音符終了 | 何かの長音符の終了を表記します。 |
9 | くすだま開始 |
大きなふうせんです。 くすだまの開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 連打に似ているが、制限する時間で一定の数をたたいてクリアしなければなりません。くすだまの値もBALLOONタッグで指定します。 |
コンガのみ音符 | ||
I | 左連打開始 |
左連打です。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 太鼓モードに小さな連打になります。 |
H | 拍手連打開始 |
拍手連打です。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 太鼓モードに大きな連打になります。 |
全てのモードに使われたその他の音符はここに記載します。
これらの音符の種類は普通な譜面に一般的に使われません。典型的にギミック譜面にしか探せません。
ID | 名前 | 説明 |
---|---|---|
C | 爆弾 |
爆弾音符です。 プレイヤーの積極的にたたきを避ける音符です。たたけばコンボを壊れます、そして大幅にゲージをドロップします。 |
F | アドリブ |
見えない音符です。 デフォルトでは非表示になれ、たたく必要はありません。たたけば、特別な音色を出します。 |
G | カドン |
紫色の音符です。 ドンとカッを同時にたたくが必要です。コンガモードにダブル音符になります。 |
D | フューズ連打開始 |
爆弾ふうせんです。 連打の開始を標記します。0で連打の長さを増加します、そして8で連打を終了します。 ふうせんと同様にふるまいますが時間内に割らなければなりません。失敗なら、爆弾音符と同様にふるまいます、コンボを壊れ、ゲージをダメージします。 |
OpenTaikoのデフォルトスキンに加えて、ユーザーは自分のスキンを創ることができます。
OpenTaikoのLua APIは、テクスチャやサウンドを置き換えるだけでなく、スキンをさらにカスタマイズでき、ゲームのソースコードを変更することなく、よりダイナミックなビジュアルが可能になります。ほとんどのメニューにはLuaスクリプトを含めることができますが、ほとんどのスクリプトは現時点では背景のアニメーションにのみ適しています。Lua APIの機能はまだ進行中の作業であり、将来的には拡張される予定です。
読み取り専用の変数もOpenTaikoによって提供されているため、作成者はその時点で何が起こっているかに基づいてスクリプトの動作を変更できます。
Luaでできることのいくつかの例は次のとおりです:
呼び出し関数は、OpenTaikoに呼び出されるコマンドです。
あなたのスクリプトでゲーム本体を変更せずこれらの多くの関数は描画や操作に関係します。
関数 | 入力種類 | 説明 |
---|---|---|
コンソール表示 | ||
func:DrawText(横の始点, 縦の始点, 文字列); | 数字, 数字, 文字列 | スキンのコンソールフォントで文字を表示します。(/Graphics/Console_Font.png) |
func:DrawNum(横の始点, 縦の始点, 数値); | 数字, 数字, 数字 | スキンのコンソールフォントで数字を表示します。(/Graphics/Console_Font.png) |
画像描画 | ||
func:AddGraph(ファイルパス); | 文字列 | スクリプトで使用する画像ファイルを読み込みます。これは画像を表示するために必要です。 |
func:DrawGraph(横の始点, 縦の始点, ファイルパス); | 数字, 数字, 文字列 | 指定された位置に指定された画像を描画します。 |
func:DrawGraphCenter(横の始点, 縦の始点, ファイルパス); | 数字, 数字, 文字列 | 指定された位置に指定された画像を中心を基準にして描画します。 |
func:DrawRectGraph(横の始点, 縦の始点, 長方形横の始点, 長方形縦の始点, 長方形の幅, 長方形の高さ, ファイルパス); | 数字, 数字, 数字, 数字, 数字, 数字, 文字列 |
指定された位置に指定された画像を描画します 長方形は画像の表示する範囲です。 長方形が画像から超えた場合は、ループして描画されます。この特性を利用して画像を繰り返して描画することができます。 |
func:DrawGraphRectCenter(横の始点, 縦の始点, 長方形横の始点, 長方形縦の始点, 長方形の幅, 長方形の高さ, ファイルパス); | 数字, 数字, 数字, 数字, 数字, 数字, 文字列 |
指定された位置に指定された画像を中心を基準にして描画します 長方形は画像の表示する範囲です。 長方形が画像から超えた場合は、ループして描画されます。この特性を利用して画像を繰り返して描画することができます。 |
画像処理 | ||
func:SetScale(Xスケール, Yスケール, ファイルパス) | 数字, 数字, 文字列 | 画像の拡大率を指定します。1.0がデフォルトです。 |
func:SetRotation(回転角度, ファイルパス) | 数字, 文字列 | 画像の回転を指定します。値は典型的に0から360までです。 |
func:SetOpacity(不透明度, ファイルパス) | 数字, 文字列 | 画像の不透明度を指定します。値は0から255までです。 |
func:SetColor(赤, 緑, 青, ファイルパス) | 数字, 数字, 数字, 文字列 | 乗算フィルターで画像の色味を変更します。すべての値は0.0から1.0までです。 |
func:SetBlendMode(モード, ファイルパス) | 文字列, 文字列 |
画像が背景にどのように表示されるかを指定します。 利用可能な値は以下の通りです: "Normal"(通常)、"Add"(加算)、"Multi"(乗算)、"Sub"(減算)、"Screen"(スクリーン)。 |
画像情報 | ||
func:GetTextureWidth(ファイルパス) | 文字列 | 読み込んだテクスチャーの幅を取得します。テクスチャーが無ければ-1を返却します。 |
func:GetTextureHeight(ファイルパス) | 文字列 | 読み込んだテクスチャーの高さを取得します。テクスチャーが無ければ-1を返却します。 |
受信関数はOpenTaikoがスクリプトに送信する関数です。
これらの一部のコマンドにはフレームごとに呼び出されるものと、必要によって一度だけ送信されるものがあります。もう一部は何度も呼び出されることもできます、主にプレイヤー数によって。
関数 | 入力種類 | 説明 |
---|---|---|
通用 | ||
function init() | - | スクリプトの読み込み後に一回だけ呼び出されます。画像などの読み込みなどの初期化に使用されます |
function update() | - |
フレームごとに呼び出されます。値を計算して更新します。ゲームが一時停止されると呼び出されなくなります。 いつもdraw()の前に呼び出します。. |
function draw() | - | フレームごとに呼び出されます。画像の処理と描画に使用されます。 |
ゲーム中のみ | ||
function clearIn(プレイヤー) | 整数 |
プレイヤーがクリア範囲に入ったときに一回だけ呼び出されます。プレイヤー値はクリアになったプレイヤーIDです。 プレイヤーIDは0から始まり、4まで終わります。 0は1P、1は2P、2は3P、といった具合に。。。 |
function clearOut(プレイヤー) | 整数 | プレイヤーがクリアから落ちた時に一度だけ呼び出されます。プレイヤー値はクリアから落ちたプレイヤーIDです。 |
ゲーム中のみ(くすだま) | ||
function kusuIn() | - | くすだまの開始時に一回だけ呼び出されます。 |
function kusuBroke() | - | くすだまが割れた時に一回だけ呼び出されます。 |
function kusuMiss() | - | くすだまが割れすに失敗したときに一回だけ呼び出されます。 |
ゲーム中のみ(エンディング) | ||
function update(プレイヤー) | 整数 |
フレームごとに呼び出されます。値を計算して更新します。ほかの同名関数と異なり、プレイヤー値はクリアになったプレイヤーIDです。 ひとつのフレイムに複数回も実行できます。 |
function draw(プレイヤー) | 整数 |
フレームごとに呼び出されます。画像を処理して描画します。ほかの同名関数と異なり、プレイヤー値はクリアになったプレイヤーIDです。 ひとつのフレイムに複数回も実行できます。 |
function playEndAnime(プレイヤー) | 整数 |
終了アニメーションが再生されるときに一回だけ呼び出されます。プレイヤー値はクリアになったプレイヤーIDです。 ひとつのフレイムに複数回も実行できます。 |
結果発表のみ | ||
function skipAnime() | - | アニメーションがスキップされたときに一回だけ呼び出されます。 |
選曲のみ | ||
function playAnime() | - |
難易度選択画面で表と裏が切り替えられたときに呼び出されます。 アニメーションの継続時間は設定ファイルで指定されます。 |
OpenTaikoは、その時点で何が起こっているのかについての詳細を取得するために、読み取り専用の値を持つ変数を提供します。
一部の詳細には、プレイヤーの状態に関する情報が含まれていますが、他の詳細には、ゲームモードの状態または特定のアプリケーションパラメーターに関します。
これらの変数は既に予約されているため、以下に示す変数と同じ名前で独自の変数を作成することはできません。
変数の名前 | 種類 | 説明 |
---|---|---|
アプリ情報 | ||
fps | 整数 |
アプリケーションのフレームレートを取得します。 |
deltaTime | 10進数 |
前のフレームからの経過時間を取得します。 非整数、値は秒です。(つまり、0.0166666...) |
lang | 文字列 |
現在の言語を短い文字列形式として取得します。 (つまり、"en"、"ja"、"fr"など) |
プレイヤー情報 | ||
playerCount | 整数 | プレイヤーの数を表します。 |
p1IsBlue | ブール値 |
1P目が青かどうかを表します。(タイトルメニューで右を選択することで) 1Pのみ;青ではなければ、または2P以上があれば、falseを返却します。 |
characterRarities | 文字列[] |
キャラクターのレア度を取得します。 可能なレア度:"Poor"(駄作)/"Common"(コモン)/"Uncommon"(アンコモン)/"Rare"(レア)/"Epic"(エピック)/"Legendary"(レジェンド)/"Mythical"(究極) |
puchicharaRarities | 文字列[] |
プチキャラのレア度を取得します。 可能なレア度:"Poor"(駄作)/"Common"(コモン)/"Uncommon"(アンコモン)/"Rare"(レア)/"Epic"(エピック)/"Legendary"(レジェンド)/"Mythical"(究極) |
プレイヤー情報(ゲーム内) | ||
bpm | 10進数[] |
各プレイヤーの譜面の現在BPMを示す各プレイヤーの数字のリストを取得します。 プレイヤーごとに異なる場合があります。 |
gauge | 10進数[] | プレイヤーが魂ゲージ上のどこにいるかを示す各プレイヤーの0~100の間の数字のリストを取得します。 |
isClear | ブール値[] | 各プレイヤーのコースが現在クリアかどうかを示す各プレーヤーのブール値のリストを取得します。 |
gogo | ブール値[] | ゴーゴータイムが現在アクティブかどうかを示す各プレーヤーのブール値のリストを取得します。 |
Gameplay Information | ||
timeStamp | 10進数 |
譜面開始から経過した時間の秒数を取得します。1小節目に開始します。 譜面がまだ開始されていない場合は、負の値になる可能性があります。 |
タワー情報 | ||
towerNightNum | 10進数 |
0から始まり1まで終了(ただし常にそうとは限りません)の次の値までの数値を取得します、プレイヤーの上った高さによって変化します。 towerNightNumの値を決定するソースコードは次の通りです:Math.Min(CurrentMeasure / Math.Max(140, MaxFloorCount / 2), 1); |
AIバトル情報 | ||
battleState | 整数 |
AIバトルの状態を数値で表します、値は-9から9までです。デフォルトでは0です。 0以上の数値はプレイヤーが勝っていることを意味します。それ以下の場合はAIが勝っていることを意味します。 |
battleWin | ブール値 |
プレイヤーがAIバトルでAIに対して勝っている(または勝った)かどうかを示すブール値を取得します。 結果発表界面メニューにも使えます。 |
Q:なぜ?
A:わからない