# 太鼓さん次郎 Ver. 2.92くらい

よくある質問は別ページ。（不定期に更新）

## 概要

太鼓の達人をシミュレーションするソフト 「太鼓さん太郎」 を模して勝手に作ってみた太鼓の達人シミュレータです。

画像と太鼓音は太鼓さん太郎から拝借しています。 問題のある場合は差し替えますので、その際は連絡をお願いします。

## 仕様

- データ読み込み後スペースバーで演奏開始
- 太鼓さん太郎でのtjfフォーマットも一往対応
- 独自の仕様tjaフォーマットを使用（詳しくは下記）

- 音楽ファイルは.wavと.oggに対応
- sndフォルダにlame.exe（同梱していません）を入れれば.mp3も使用可能

- 本家と大体同じスコア計算が可能かも
- 譜面データを実行ファイルにドラッグ＆ドロップでも起動可能
- 譜面データをウィンドウにドラッグ＆ドロップで連続して演奏可能
- 設定を変えれば実際にプレイ可能

## 操作方法

### 演奏画面

Space
  曲の再生
Q
  再生を中断する（演奏終了後は最初の画面に戻る）（この際譜面データを再読み込みします）
Esc
  太鼓さん次郎を終了する / 曲選択画面にもどる

PageUp
  開始小節を進める
PageDown
  開始小節を戻す
Home
  最初の小節に戻る
End
  最後の小節へ移動

F1
  マニュアル/オートプレイ切り替え（ダブルプレイの時はオート→1Pオート→2Pオート→オート解除の順に切り替わります）
F2
  ウィンドウが非アクティブ状態でもキー操作に反応するかの切り替え（Activeがアクティブ状態のみ）
F3
  音符のスクロール方式の切り替え（OFF→ BMSCROLL ON → HBSCROLL ON の順に切り替わります）
  （ONにするとBPMの変更箇所で太鼓さん太郎と同じような動きになります。）
  （また#SCROLLの値は無視され、#DELAYの値がプラスの箇所は指定された秒数だけ譜面がストップします）
F4
  ゲージのNormal/Hardの切り替え（Hardにすると不可が出たときにゲージが減り、ゲージが無くなると強制的に曲が中断されます）（Hardゲージは補正なし）
F5
  シングルプレイ / ダブルプレイの切り替え
  （Windowmode=2でないとダブルプレイへの切り替えはできません）
F6
  得点計算方式の切り替え
  （StepWise（従来）、Stable（一定）を切り替え）
  （Stableにすると得点がコンボに依らず、可の得点が良の1/3になります）
F11 or F12
  （再生中）譜面のOFFSETの値を一時的に調節する
  （再生を終了すると元に戻ります。変更を保存する場合は直接譜面ファイルを更新してください）

#### オートプレイ時

← or →
  オートの精度（良に対する可の割合）を変える
↑ or ↓
  （分岐譜面を再生中）他の譜面に移る

#### 非オートプレイ時（デフォルト）

F or J
  1P側面
D or K
  1P側縁
V or M
  2P側面
C or <
  2P側縁

### 曲選択画面

↑↓ or DK
  曲/コースの選択（↑↓かDKの同時押しでフォルダを閉じる or 曲選択にもどる）
Space or FJ
  曲の決定 / フォルダの開閉
→→ or ←←（2回押す）
  譜面リストのソート方法を変更（ファイル名順→レベル順→タイトル順に変わります）

Esc
  太鼓さん次郎を終了する

## オプション

譜面読み込み後、スペースキーを押す前にKキーかDキーを5回押すと、 「ばいそく」「さんばい」「よんばい」「ドロン」「ステルス」「あべこべ」「REGUL-SPEED」に相当するオプションを付けることができます。

「REGUL-SPEED」を選択中の時、F及びJキーで固定するスクロール速度を変更できます。 ただし、REGUL-SPEEDを使用する場合は入る得点が少なくなります。

オートプレイ時、カーソルキーの左右を押すと可に対する良の割合を変更できます。 100（デフォルト）ですべて良、値を減らすほどランダムで可が出やすくなります。 ただし、判定が変わっても太鼓がなるタイミングは変わりません。

譜面分岐のある譜面をオートプレイ時、カーソルキーの上下を押すと譜面を変更することができます。

## 設定ファイル

config.iniを開いて中の数値を変えると、ある程度設定を変えることができます。 スコアを表示させたい場合は「Showscore=」の次にある数字を1に書き換えてください。

また「Notedist=」の数字を1に変えるとややACに近い画面構成（16分音符がちょっと重なる）になります。 その他の項目は設定ファイル内のコメントを参照。

判定の厳しさを変更した場合はスコアの下一桁が変わります。

Oggの再生が重い場合は「WavBufferSize=」の値を変えると軽くできるかもしれません。 値を0以下にすると再生前にまとめてデコードするので、再生中の負荷が軽くなるかと思われます。

「SongSelect=」の値を1にすると起動時に曲の選択画面が表示されます。 表示されるファイルは太鼓さん次郎のあるフォルダ以下のもののみなので注意してください。

## tjaフォーマット

tjfを元にbmsっぽい感じも取り入れてみたフォーマットです。

拡張子は「.tja」。

適宜サンプルのデータを参考にしてください。

### ヘッダ

TITLE
  曲のタイトル。
TLEVEL
  レベル。★で表記。自然数なら多分上限なし。
BPM
  曲のBPM。小数指定可。
WAVE
  再生するwavファイル名。一往oggでもおｋ。
OFFSET
  譜面の開始位置とwavファイルを再生する時刻のずれ。秒単位で指定。
  マイナスを指定すると譜面の開始よりも早く曲が始まります。
BALLOON
  ゲキ連打およびイモ連打の打数。風船の数だけ ,（カンマ）で区切って指定。
  数字と数字の間に改行は含めないでください。
  省略した場合は一律5打。

（Ver.1.66以降）

SONGVOL
  音楽データの音量。100を基準とした百分率を入力。
SEVOL
  太鼓音の音量。100を基準とした百分率を入力。

（Ver.1.67以降）

SCOREINIT
  10コンボ未満の時に小音符を良判定で叩いた時の得点を指定できます。
  省略した場合は自動で計算されます。
  （Ver.2.70以降）得点方式がstableの時の配点は、550, 800 のようにカンマを入れた後に入力。
SCOREDIFF
  10コンボごとに加算される一打あたりの点数を指定します。
  省略した場合は自動で計算されます。

  (Ver.2.49以降）値の最後にアルファベットのdを入れると、1打あたりの点数の加算は200コンボを越えたときの1回のみになります。

  SCOREINIT:1000、SCOREDIFF:1000d と入力するとドンだフルコースの配点（大音符は得点2倍）になります。 またゴーゴータイムは1.2倍の得点として扱われます。

（Ver.1.76以降）

COURSE
  「Easy」「Normal」「Hard」「Oni」「Edit」もしくは0〜4の値を入力。

  最初の4つはそれぞれ「かんたん」「ふつう」「むずかしい」「おに」に対応し、 ノルマゲージの増え方と配点が変わります（AC基準ですが違うかも）。

  Editにすると、配点はSCOREINITとSCOREDIFFに準拠します。ノルマはおにと同じ。 「かんたん」「ふつう」の場合、ノルマゲージの表示が若干崩れます。 省略した場合は「Oni」扱い。

  （Ver.1.79以降）「Tower」または5を入れると、連打音符が常にドンとカツの上に表示され目隠しとなります。 ノルマゲージ及び配点はEditと同じ扱いです。 この仕様は後に変更されるかもしれません。

（Ver.1.99以降）

STYLE
  「Single」「Double」「Couple」もしくは1〜2の数字を入力。

  Singleは一人プレイ、DoubleとCoupleは二人プレイの譜面であることを示します。DoubleとCoupleの違いはありません。

  Double（Couple）のあとに#START P1、#START P2を入れることで1P側と2P側で違う譜面を入力することができます。 譜面選択の際に1Pと2Pで違うコースを選択した場合、二人プレイ用の譜面が存在していても一人プレイ用の譜面が流れます。

（Ver.2.13以降）

GAME
  「Taiko」「Jube」どちらかを入力。省略すると「Taiko」扱いになります。
  入力する譜面の種類。「Jube」の場合はオートプレイのみになります。

（Ver.2.19以降）

LIFE
  ライフ。この値が設定されているとき、不可を出すたびにライフが減り0になると強制的に演奏が中断されます。
  短い間隔で連続で不可を出した場合も連続でライフが減ります。
  省略するか0を入力すると通常のノルマゲージとなります。

（Ver.2.37以降）

DEMOSTART:
  選曲画面で流すデモの再生開始位置。秒で指定。
  省略すると音楽ファイルの先頭から再生されます。

（Ver.2.49以降）

SIDE:
  「Normal」「Ex」「Both」もしくは1〜3の数字を入力。省略すると「3」。
  「Normal」か「1」を入力した場合は曲選択画面で表状態の時のみ曲が表示され、 「Ex」か「2」を入力した場合は裏状態の時のみ表示されます。
  表状態と裏状態は曲選択画面で左右の縁（D、Kキー）を交互に10回ずつ入力すると切り替えることができます。
  ひとつの譜面ファイルにSIDE:を二つ以上指定することはできません。

（Ver.2.64以降）

SUBTITLE:
  曲のサブタイトル。リザルト画面ではタイトルの下に小さめ（0.8倍）で表示。
  プレイ中の曲名表示では「タイトル サブタイトル」の順に表示されますが、 サブタイトルの最初に「--」と入れるとプレイ中の曲名にサブタイトルを表示しなくなります。
  また「++」を入れて明示的にサブタイトルを表示させることもできます。

（Ver.2.85以降）

SCOREMODE:
  配点方式。0〜2の数字を入力。省略すると1。
  0から順にドンだフルモード、AC14以前の配点、新配点となります。

（Ver.2.92以降）

TOTAL:
  ノルマゲージの上昇量。省略した場合は自動で設定されます。
  ゲージが満タンになる量を100として、全ての音符をミスなく叩いたときに合計でどれほどゲージが増えるのかを指定します。
  ここに入力する数字が大きいほどゲージが増えやすくなり、100以下の数字を入力した場合は完璧に叩いた場合でも満タンにはならなくなります。

※譜面データと音楽ファイルは必ず同じフォルダに置いてください。

## 譜面

### 「Taiko」モード

#STARTと#ENDで囲まれた区間を譜面データとします。

（Ver.1.95以降） 直前にCOURSE:でコースを指定しておくことで、ひとつの譜面ファイルに違うコースの譜面をまとめて記述できます。

（Ver.1.99以降） STYLE:でDoubleまたはCoupleを指定した後、 #STARTの代わりに#START P1もしくは#START P2と入れることで1P側と2P側の譜面を別々に記入できます。

一小節ごとに,（カンマ）で区切ってください。

一小節あたりの文字数が小節の最小単位となります（4文字なら4分単位、16文字なら16分単位）。 また、一小節あたりの文字数の最大は500ちょっとくらいなので、極端に細かく音符を割ろうとするとエラーが出るか強制終了します。

各文字と音符の対応は以下。

- 0休符
- 1ドン
- 2カツ
- 3ドン（大）
- 4カツ（大）
- 5連打開始
- 6連打（大）開始
- 7ゲキ連打開始
- 8連打終了

（Ver.2.75以降）

- 9イモ連打開始

連打開始から8までの間を連打とします。「500008」見たいな。

「555558」のように同じ数字を敷き詰めても多分大丈夫です。

鈴やでんでん等の音符には未対応。

//（半角スラッシュ2つ）より後はコメントとして扱われ無視されます。 メモ代わりに使えるかも。

（Ver.2.36以降）

ゲキ連打の終了を省略した場合、風船を割れなかった次の音符は強制的に不可扱いとなります。

（Ver.2.75以降）

イモ連打の開始から終了の間に「9」を入れると、その位置が5000点獲得のボーダーになります。

「909900008」のように間に二つ以上9がある場合は、一番後ろの9の位置が使用されます。

「900000008」のように間に9を挟まない場合は連打の長さの0.6倍の位置がボーダーとなります。

ボーダーよりも早い時間で連打を叩ききると5000点、それ以降は1000点の得点が入ります。

#### 例）

- 「1111,」だと4分間隔でドンを4回。
- 「10101212,」だと8分間隔で「ドンドンドカドカ」
- 「1010
  1212,」の場合も同じものと看做されます。

### 「Jube」モード（試運転中）

#STARTと#ENDで囲まれた区間を譜面データとします。

ひとつの行（横に並んだ4ボタン）の配置を16進数の形で1文字で表し、 4文字を使って一つの同時押しを表します。

#### 例）

■の部分を押すものとして

■■□■　→　1101　→　D（16進数）
□■■□　→　0110　→　6
□□□■　→　0001　→　1
□□□□　→　0000　→　0

上の同時押しは「D610」と表します。

4文字をひとまとまりとする以外はTaikoモードと大体同じです。

「1000 0200 0040 0008,」と書くと、 4分間隔で右上から左下までを順番に叩く形になります。

なお、このモードで以下の命令が正しく動作するかのテストは殆ど行っていませんのでご了承ください。

sndフォルダにclap.wavという名前のファイルを置いておくとクラップ音を鳴らすことができます。

## 命令

命令は「#」で始まります。必ず行の先頭から記入してください。

一部の命令は小節の途中でも反映させることができます。

#BPMCHANGE ??
  BPMを??で指定したBPMに変更する。小数も可。
#GOGOSTART
  ゴーゴータイム開始。
#GOGOEND
  ゴーゴータイム終了。開始したら必ず終わらせてください。
#MEASURE ?/?
  拍子を?/?拍子に変更する。「4/4」で4分の4拍子、「6/8」で8分の6拍子。
  省略されている場合は4/4になります。
#SCROLL ??
  譜面のスクロール速度を??倍にする。デフォルトは1.00。
  実際に叩く間隔は変わらず、見た目だけ変わります。

（Ver.1.60以降）

#DELAY ??
  以後の音符が流れてくるタイミングを??秒だけ遅らせます。0.001秒より細かい指定は無視されます。
  BPMが変わらないけれども曲の継ぎ目の関係で微妙にズレが生じる場合に使用してください。

（Ver.1.63以降）

#SECTION
  譜面分岐の判定に使う連打数、精度をリセットします。
  分岐したい個所の一小節以上前に置いてください。
#BRANCHSTART ?, X, Y
  譜面分岐を開始します。

  ?に r を入れると連打数で分岐（roll）、 p を入れると精度で分岐（precision, perfect）、s を入れるとスコアで分岐します（score）。

  - 分岐判定時の連打数がY打以上または精度がY％以上のとき達人譜面
  - 連打数がX打以上またはX％以上の時に玄人譜面

  に分岐します。 X＞Yとなるように設定すると玄人譜面に分岐しません。

  分岐判定はこの命令の一小節前に行われます（一小節前から連打が始まる場合、その連打もカウントします）。

#BRANCHEND
  譜面分岐を終了します。以降はすべての分岐で共通の譜面が流れます。
  分岐終了の必要がない場合は省略可。
#N
  この後に譜面分岐からの普通譜面を入力します（Normal）。
#E
  この後に譜面分岐からの玄人譜面を入力します（Expert）。
#M
  この後に譜面分岐からの達人譜面を入力します（Master）。

  #N, #E, #Mの小節数は一番最初に現れた譜面の小節数に揃えられます。

  長さが足りない分は空白で埋められますが、長い場合は妙な事になるので小節数は揃えて入力した方が安全です。

#LEVELHOLD
  この命令がある小節に到達した場合、 以後に譜面分岐がある場合も分岐が行われず、現在の譜面が維持されます。

（Ver.1.91以降）

#BMSCROLL
  #STARTより前に記述してください。
  この命令がある場合、強制的に譜面のスクロールが太鼓さん太郎と同じような方式になります（#SCROLLの値は無視されます）。
  また、このとき#DELAYのある箇所で譜面のスクロールが停止します。

（Ver.2.31以降）

#HBSCROLL
  #STARTより前に記述してください。
  この命令がある場合、強制的にBMSCROLLに#SCROLLの効果を含めたスクロール方式になります。

（Ver.2.69以降）

#BARLINEOFF
  この命令以降の小節の小節線を表示しないようにします。
  分岐時の黄色い線にも適用されます。
#BARLINEON
  この命令以降の小節の小節線を表示するようにします。

## フォルダ分けについて

フォルダを作成した中にgenre.iniを置いておくと（sampleからコピーが手軽）、 そのフォルダの中にあるファイルは一つのジャンルとして扱われます。

GenreNameの項目に名前を入れておくと譜面選択画面で入力した名前が表示されます。 GenreNameを省略した場合はフォルダ名が表示されます。

## 判定が厳しいんだけど

趣味です。明らかに曲と音がずれているのに「良」が出るのは何ともアレじゃないですか。 Ver. 1.20から判定を甘くできるようになりました。ただし得点の下一桁が変わります。

## 画像について

Ver. 1.40からノート画像以外にも画像を使用するようにしてみました。

今までの表示がいい方はnotes.png以外の画像をすべて削除してください。 画像はpng, bmpどちらの形式でも使用できる筈です（両方ある場合はpngが優先されます）

Ver. 1.50から透過pngに対応しました。 半透明も使用できますが、処理が重くなる場合があるのでご注意ください。 画像ファイルについての説明はimgフォルダ内にあります。

bmp形式の画像は黒（#000000）の部分が透過されます。 透過色情報を持たないpng画像はそのまま表示されます。

## 免責みたいな

このソフトを用いて他者の著作物を使用する場合、 個人での利用の範囲を超えて著作者の許可なくデータの配布・転載をする際は自己責任でお願いします。 その点に関して何らかのトラブルが起こった場合、こちらで責任は負いかねますのでご諒承ください。

## 最後に

- mp3データを使用する場合はsndフォルダにlame.exeを置いておいてください。
- ダブルプレイの時、太鼓音のデータがステレオである場合はパンが左右に振られます。

「次郎」を名乗っていますが「太郎」の方とは全くの別人なので、 音や画像の使用も含めクレームがある場合は連絡をお願いします。

不明な点はとりあえずfaq.txtを見てみてください。もしかしたら解決するかもしれません。

連絡は toach@hotmail.co.jp までお願いします（返信はだいたい遅いです）。 返信がない場合はもう一度送っていただけると返信が来るかも知れません。 バグ等の報告もどうぞ。

ライブラリを使用しています。

Vorbis.com http://www.vorbis.com

## 更新履歴

2013/09/12 Ver. 2.92
  TOTAL:でノルマゲージの増加量を変更できるようにしてみる
  譜面を途中からオート再生したときのゲージの量を修正
  新配点で得点計算方式がStableの時に100コンボ毎の10000点を入らないようにし、加えて天井点を100万点前後で固定となるように修正
12/20 Ver. 2.91
  イモ連打の後にゲキ連打が来た場合、風船を割った後のキャラクターが表示されない現象を修正
12/07 Ver. 2.90
  PNGの読み込み処理をやや変更
  SCOREMODE=2の時の大音符の得点計算を変更（今までより10点少なくなる場合があります）
  一部メモリリークしていた箇所を修正
  他細々と修正
07/13 Ver. 2.88
  再生中にF11/F12キーでOFFSETの値を一時的に変更できるようにしてみる（値は保存されず、再生が終わるとリセットされます）
  その関連でfont画像にマイナスの文字が無かったので追加（以前のままでも大した影響はありません）
  他細々と修正
02/18 Ver. 2.87
  ハードゲージ時に不可を出すとノルマクリア時の背景が表示されることがあるバグを修正
  選曲画面でソート時に曲の並びが大きく崩れる場合がある現象をたぶん修正

それ以前の更新についてはテキスト版のreadmeを参照してください。