TypeRacerについて



TypeRacerとは
システム(速度・正確性関連)
ステータスの意味
ランキングとデータベース(TypeRacer Data)
対戦
多言語
公式ワードセット(universe)
Premium
筆者の記録
筆者のTypeRacer参戦史
正確性の定義に関する検証
その他攻略
その他Tips


●TypeRacerとは

TypeRacerとは、
Alex氏が開発されたオンラインタイピングサイトである。最大10人の対戦が可能である(2021.9.24より200人の対戦も可能となったらしい)。ワードセットは世界の主要52言語の他、約150種類が用意されている。これらの特性から、ネット上の対戦会にしばしば採用される。大規模なオフ会(例: タイピングサミット)において大会が開催されたこともある。さらに、Interstenoに向けた強化を目的として、英語以外の言語を用いた対戦会が開催されることもある。

公式サイトはこちら

ネットランキングおよびデータベースはこちら

【概要】

・1〜数行(たまに10行以上)の文章を打鍵し、速度を競う。
・ミスした場合はその部分を修正するまで先に進めない。
・速度が一定値を下回ると、初心者と判定され、短い文章のみ出題される。速度が成長すれば元に戻る。
・野良対戦(相手がいなければbotが参戦)の他、部屋を作って対戦もできる。
・練習モードもある。


●システム(速度・正確性関連)

【速度の表示】

速度はwpm(words per minute / 1分間あたりのワード数)、cpm(characters per minute / 1分間あたりの文字数)のどちらかの表示を選択できる。画面右上、[Avg. Speed]の表示の上にある[WPM/CPM]のリンクをクリックすることで切り替えができる。1ワードは5文字固定で換算されるため、例えば100wpmは500cpmである。このサイトでは、原則としてcpmで表記を統一する。理由は、cpmの方が速度を細かく把握できる仕様となっているためである。

画面には1wpm/5cpm単位で表示される。但し、cpm表示の時に自分のHNもしくは車にマウスを当てると1cpm単位でポップアップ表示される(wpm表示の時に同じ操作を実行しても1wpm単位で変わらない)。また、レース終了後に画面下部に表示される[Scores for this quote]→[Your last 10]の表の中のSpeedの数値にマウスポインタを当てると0.01wpm/0.05cpm単位まで細かく見ることができる。たまに0.01cpm単位まで細かくなることもある(条件は不明)。これとは別に、[Latest High Scores]に載った場合、Speedの数値にマウスポインタを当てると確実に0.01cpm単位まで閲覧できる。但し、一旦ハイスコアに載ると、その記録を上回るか、1時間経過しない限り、ハイスコアが更新されることはない。その間に出た記録は、[Scores for this quote]で逐一見るしかない。

各レース終了後に0.05cpm単位で(可能なら0.01cpm単位で)速度をメモするのも面倒である。0.05cpm単位で妥協できるなら、TypeRacer Dataで0.01wpm単位で閲覧できるため、それを5倍する方法もある。

なお、速度を含む履歴は、HNを右クリック→[View Profile]で表示される[Racer Profile]画面の下の方にある[Latest Race Results](直近10戦の結果)や、[View full race history](すべての完走レースの結果)から閲覧できる。Premium IDにすればcsvファイルでダウンロードできる。但し、この履歴やcsvファイルにはwpmでのみ記載され、かつ小数点以下が記録されない。

【スキルレベルの意味】

画面右上、[Skill Level]の表示の上にあるリンクをクリックすると説明が表示される。ここで速度とは、直近10戦の平均速度を指す。また、例えばMegaracerになるには厳密に400cpm以上必要である。筆者の例では、各レース終了後に速度を1cpm単位でメモして求めた直近10戦平均が400.0cpmでもTypemasterと表示されたことがある。各レースで小数点以下まで速度が計測され、それに基づいて直近10戦平均がより細かく計算されていると推測できる。

Skill Levelは、出現する文章の長さにも影響する。TypeRacer BlogJanuary 29, 2018の記事によると、以下の通り。文字数の最小値は速度(cpm)×0.5、最大値は速度×1.5となっているようだ。

称号速度の整数部分(cpm)文章の長さ(文字数)
Beginner0〜1241〜187
Intermediate125〜15462〜232
Average155〜20978〜314
Pro210〜274105〜412
Typemaster275〜399138〜599
Megaracer400〜200〜

なお、2バイト文字を含む言語や漢字への変換を含む一部の言語ではスケールが異なる。具体的には以下の5言語である。画面右上の[Skill Level]の表示の上にあるリンクをクリックすると、Megaracerのボーダーが表示される。初テストのボーダーは、Megaracerのボーダーの1.25倍と推測される。このサイトでは、これらの言語については英語のスケールに換算する場合がある。

言語Megaracer初テスト英語スケールへの換算方法
日本語、中国語、台湾語80cpm100cpm5倍する
朝鮮語/韓国語200cpm250cpm2倍する
タイ語300cpm375cpm4/3倍する

【チート対策テスト】

ワードセットで500cpmを初めて超えると、チート対策のテストが実施される。テストの合格条件は、「直前のレースの速度の75%以上」かつ「正確性93%以上」である。例えば520cpmを出した直後のテストでは、速度390cpm以上かつ正確性93%以上で合格となる。また、合格した場合はテスト合格時の速度をもって認証される。例えばレースで520cpmを出し、直後のテストで390cpmを出して合格した場合、認証される速度は520cpmでなく390cpmである。

2回目以降のテストが実施されるのは、認証された速度の125%を超える速度を初めて出した時である。例えばテストに540cpmを出して合格した場合、次のテストはその後初めて675cpmを超えた時に実施される。

筆者のトルコ語の例では次の通り。テスト1の結果から、テスト2の出現条件の基準となる速度は507.80cpm(直前のレースの速度)ではなく、481cpm(テストで認証された速度)であることが分かる。なぜなら、507.80cpmが基準だとすると、25%向上つまり634.75cpmまで伸ばさないと次のテストは出現しないためだ。さらに、テスト2の結果から、基準速度は最新のテストで認証された速度であることが分かる。仮にテスト1の481cpmが基準だとすると、25%向上つまり約601cpmまで伸ばさないと次のテストは出現しないためだ。そしてテスト3の結果から、テスト4が出現するのは550cpmから25%向上、つまり約688cpmを出した時であると推測できる。

No.日付直前のレースの速度テストで認証された速度×125%次のテストの出現条件
12016.2.21507.80cpm481cpm601.25cpm553.55cpmで出ず、605.45cpmで出現
22016.2.21605.45cpm465cpm581.25cpm567.25cpmで出ず、591.05cpmで出現
32018.2.25591.05cpm550cpm687.50cpm611.75cpmで出ず

テストには、6回連続で失敗しない限り合格できる。また、ミスした場合も無視して先に進むことができる。このため、基本的に速度重視で攻めて良い。また、特殊文字(ダイアクリティカルマーク)を含む言語に関しては、一部または全部の特殊文字を無視するという攻略法も通用する。例えばオランダ語では[é][è][ë]の出現率が非常に低いことに着目し、すべて[e]と打って切り抜ければ、テストに合格する可能性は高い。また英語でも、大文字をすべて小文字で打ったり、記号をすべて無視したりすれば、多少は楽になる。もちろん、通常のレースではミスを修正するまで先に進めないため、このような攻略法は通用しない。

テストに失敗した場合、速度が認証されないだけでなく、直前のレースのデータも記録されない。より高いレベルのデータを記録するには、レースでテスト出現条件を満たす速度を再び出し、かつテストに高いレベルで合格するしかない。

【正確性の表示】

正確性は0.0%〜100.0%の範囲で、0.1%単位で表示される。但し、小数点以下第一位が0になる場合は整数で表示される。基本的に「正解打鍵数÷(正解打鍵数+失敗打鍵数)」で算出される。しかし、正解打鍵数にBSを含むなど特殊な仕様がある。詳細は正確性の定義に関する検証を参照。

レース終了後、画面を下にスクロールすると正確性が表示される。また、HNを右クリック→[View Profile]で、下の方の[Your Last Race Results]に直近10戦の正確性(を含む各種データ)が表示される。[View All]をクリックし、さらに過去のレースの正確性を閲覧することもできる。次の画面で[Results/page=100], [Universe=lang_ru]と設定して[Search]すると、直近100戦分が表示される。表の右下の[load older results]から過去に辿ることが可能だ。この履歴には、0.1%単位で表示される。

一方、Premium IDで取得できるcsvファイルには、小数点以下の値が記録されない。また、TypeRacer Dataでは0.1%単位で閲覧可能なように見えて、実は1%単位である(.0と表示されているだけ)。


●ステータスの意味

自分のHNにマウスのポインタを当てると、選択している
ワードセット(universe)のステータスが例1のように表示される。自分のHNを右クリック→[Pin scorecard]で、ステータス表示画面を固定できる。

また、自分のHNを右クリック→[View Profile]とすると、ステータスが例2のように表示される(例1とはやや違う)。ここでは、恐らく完走レース数が最も多いワードセットのステータスが優先的に表示される。また、複数のワードセット(universe)で完走している場合、プルダウンメニューからワードセットを選択し、ステータスを表示させることができる。

【ステータスの表示例1】

項目説明
Avg. speed (last 10 races)483 cpm1cpm/1wpm単位。直近10レースの速度の平均値。
10レース未満の場合は全レースの平均値。0レースの場合は0
Avg. speed (all time)453.234 cpm0.001cpm/0.001wpm単位(※)。
全レースの速度の平均値。0レースの場合は0
Last race470 cpm1cpm/1wpm単位。直前のレースの速度。0レースの場合は0
Best race560 cpm5cpm/1wpm単位。全レースの速度の最高値。0レースの場合は0
Races completed1722完走したレースの総数
Races won797勝利したレースの総数
Points123041獲得した総ポイント数。詳細は後述
Skill levelMegaracer直近10レースの速度に基づくスキルレベル
Rank (cpm percentile)97.8%0.1%単位。直近10レースの速度の平均値に基づくランク。詳細は後述
Experience LevelRacer 6完走したレースの総数に基づくレベル。詳細は後述

※完走レース数に応じて表示桁が増える。19レース以下では整数部分のみ。20レース以上で小数点以下第一位、50レース以上で小数点以下第二位、200レース以上で小数点以下第三位が表示される。

【ステータスの表示例2】

項目説明
Full Average90.6 WPM0.1wpm単位。全レースの速度の平均値。0レースの場合は0。
Best Race112 WPM1wpm単位。全レースの速度の最高値。0レースの場合は0
Races Completed1,722完走したレースの総数
WPM Percentile97.8%0.1%単位。直近10レースの速度の平均値に基づくランク。詳細は後述
Skill LevelMegaracer直近10レースの速度に基づくスキルレベル
Experience LevelRacer 6完走したレースの総数に基づくレベル。詳細は後述
Racing SinceOct. 18, 2008初めてレースを完走した日付
KeyboardQwertyPremiumの場合のみ表示され、[Edit Your Profile]から変更可能。
使用キーボード。Qwerty/Dvorak/Colemak/Non-English/Otherから選択できる。
MembershipPremium通常はBasic。Premium登録した場合はPremium

【Pointsについて】

[number of words typed multiplied by typing speed in words-per-second]と説明されている。つまり「実際に打ったワード数×打鍵速度(打/秒)」である。筆者の場合、ロシア語では通算1425戦目で100060に到達し、六桁に乗った。当時のロシア語の速度は約450cpm、即ち秒速7.5打鍵。1ワード5打鍵として秒速1.5ワード。これにワード数を掛ける。1つの文章のワード数は1行あたり10として平均4行で40、するとPointsは1戦あたり40×1.5=60となる。

英語は703戦で51853Points、1戦あたり約74。500cpm到達に最も苦労したベトナム語は721戦で63164Points、1戦あたり約88。英語の例で分かる通り、速ければPointsがたくさん溜まるとは限らない。一方、ベトナム語の課題文章には短いワードが多く含まれる。このため、1文章あたりのワード数が増えると考えられる。なお、打鍵速度の計算に使われるwordsは1ワード5打鍵で固定だ。

なお、Pointsの計算が実施されるようになったのは、2017年7月以降である(TypeRacer BlogJuly 26, 2017の記事参照)。筆者の場合、2017年6月に打ったタガログ語のPointsが記録されていなかった。また、別IDで2013〜2014年に1898戦した英語のPointsも0である。

【Rankについて】

直近10戦の平均速度により決まる。直近10戦の平均速度が637cpmまで上がると、Rankが99.9%まで上がる。筆者は最高746cpmまで上げたことがある。しかしRankは99.9%のままだった。小数点以下第二位以下が切り捨てられているのか、99.9%が最高値と規定されているのかは不明。また、最低値は1%である(一度も打っていないワードセットで確認できる)。直近10戦の平均速度とRankの関係は以下の通り。グラフ化した結果はこちら。また、Rankは全言語共通だ。但し日本語など速度のスケールが異なる言語では、英語に換算された速度により決まると考えられる。実際、日本語では直近10戦の平均速度が165cpm(英語スケール換算後は825cpm)の時にRankは99.9%と表示された。

Rankは、直近10戦の平均速度が変わらなければ一定である。実際、数年前のデータを含めても、現在のデータとずれることは無かった。しかし、NORM.DIST関数でfittingを試みても今一つうまくいかず。平均or標準偏差を読み間違えているのか、小数点以下第二位以降を無視しているのが悪いのか、そもそも正規分布でないのかは不明。

Rank(%)直近10戦平均速度(cpm)
99.9637(※)
99.8605
99.7588
99.6572
99.5560
99.0526(※)
98.5504

Rank(%)直近10戦平均速度(cpm)
98.0488(※)
97.0464
96.0445
95.0433
94.0419
93.0414
92.0400
91.0390
90.0383

※直近10戦平均速度が636cpmでもRankが99.9%になることがある(99.8%になることもある)。恐らく、各Rankのボーダーは小数点以下でさらに細かく設定されている。
※直近10戦平均速度が525cpmでもRankが99.0%になることがある(98.9%になることもある)。以下同様。

【Experience levelについて】

完走したレースの総数に基づき昇格していく。Experience level 8以降は未確認。

Experience level完走レース数
00〜9
110〜49
250〜124
3125〜249
4250〜499
5500〜999
61000〜2499
72500〜4999?
85000?〜9999?
910000?〜


●ランキングとデータベース(TypeRacer Data)

ネットランキングは
TypeRacer Dataで閲覧可能である。初期状態では英語(universe=play)が対象である。他の言語、他のワードセットに関しては、例えばロシア語ならURLの末尾に[?universe=lang_ru]を追加すればこちらのように閲覧可能となる。

最新のデータを反映させるには、Importが必要である。自分のデータだけでなく、他の人のデータもImportできる。画面上のメニューの[Import]からImport画面に進み、HNを入れる。もしくは、Importしたい人の詳細データ画面に進み、HNの少し下、表のすぐ上にある[Update races]をクリックする。

英語のランキングの初期値では、完走レース数1500以上、完走文章数1000以上を満たす人のみが検索対象となる。探そうとする人が出てこない場合、これらの数値を少なく設定する。一方、他の言語のランキングの初期値では、初期条件が異なる。インドネシア語、スペイン語、ポルトガル語、ベトナム語では「完走レース数10以上、完走文章数10以上」を満たす人が検索対象となる。その他の大多数の言語では、「完走レース数1以上、完走文章数1以上」を満たす人が(つまり一度でも完走した人はすべて)検索対象となる。信頼性の高いランキングを表示させたければ、これらの数値を多く設定する。また、初期値では1ページに50人しか表示されないため、例えば1001位以下の人を探すのは大変だ。1ページあたりの表示人数を1000や5000など大きな値に設定して、テキスト検索で探すしかない。なお、初期値ではText Bestsの降順でソートされている。各項目の見出しをクリックすると、その項目でソートできる。

以下、ランキングに掲載されている項目の意味を説明する。

項目説明
Rank1526.順位
Racerdq maniac (dqmaniac)名前(HN)
Text Bests120.23完走済みの各文章の最高記録の平均。詳細は後述
Races727完走レース数
Texts629完走文章数
Career119.78すべての完走レースの速度の平均値
Best 10142.34完走済みレース中、Top10の速度の平均値
Best Race144.32完走済みレース中、速度の最高値
Points54,465.15累計獲得ポイント
Wins403勝利数(1位獲得回数)
Win %55.43勝率
Marathon39任意の24時間で完走したレース数の最高値
Last Race2021-10-10最後に完走した日
Variation9.26速度の変動係数(標準偏差÷平均)。詳細は後述

【Text Bestsについて】

Text Bestsは、完走済みの各文章の最高記録の平均である。この指標を上げるだけなら、苦手な文章を徹底的に棄権(leave race)し、得意な文章に絞って過去の自己ベストを更新し続けるのが良い。だが、英語の文章は2021年11月現在7411個あるため、特定の文章を待つのは困難である。そこで考えられるのは、まずカウントダウン時間内に文章をざっと見て、記号や大文字、得意単語、苦手単語の頻度を見極めることだ。さらに、打ち始めてから速度が伸びない場合、詰まりまくった場合、その他自己ベストの更新を見込めない場合に棄権することで、多少は効率的にText Bestsを上げることができる。

また、実力が明確に伸びた後にText Bestsの更新を目指す場合、新規にIDを取得した方が良い。理由は、短い文章はSkill Levelが上がれば出現しなくなるためだ。成長過程で低い記録を残していた場合、Text Bestsに悪影響を及ぼす。直近10戦平均を故意に落とせば、短文が再び出現する可能性もある。しかし、そのような不毛な作業を繰り返すくらいなら新規にIDを取得した方が早い。また、過去に何度か文章の入れ替えが実施されている。削除された文章の記録は二度と更新できない。

筆者はInterstenoをはじめとする初見文章への対応能力を向上させることを重視している。このため、苦手な文章で棄権することは原則として無い。棄権するのは、打鍵できない(あるいは打鍵方法が分からない)文字があったり、ネット接続が切断されたり、打鍵から表示までの間にラグが発生したり、絶不調時に詰まりまくって普段の記録の半分以下まで落ち込むと懸念されたり、といった例外的な場合のみだ。苦手な文章でも練習を重ねて自己ベストを更新していけば、Text Bestsも(歩みは遅いかもしれないが)結果的に上がっていく。

【Variationについて】

データのばらつきを表現する値として、よく用いられるのは標準偏差である。しかし、同じ標準偏差100cpmであっても、平均1000cpmの人と平均100cpmの人では意味合いが異なる。平均1000cpmの人が±100cpmの範囲(つまり900〜1100cpm)でばらつくのはよくあることだ。しかし、平均100cpmの人が±100cpmの範囲(つまり0〜200cpm)でばらつくのはまずあり得ない。そこで、標準偏差を平均値で割った値(変動係数)を用いる。平均1000cpm、標準偏差100cpmなら、変動係数は0.1。平均100cpm、標準偏差100cpmなら、変動係数は1.0となる。後者の方がばらつきが大きいことは明らかである。平均100cpm、標準偏差10cpmなら変動係数は0.1となり、前者に並ぶ。

【TypeRacer Dataの他の機能】

ランキング中の名前をクリックすると、その人の詳細なデータを閲覧できる。もちろん自分のデータの閲覧も可能である。英語のみならず、各
ワードセット(universe)のデータも閲覧できる。例えば筆者のデータは以下の通り。

dqmaniac(メインID)
dq_maniac(2013-14年に英語を集中的に打った時のID)

項目説明
Races727完走レース数
Best last 10 races129.88 wpm「直近10レースの平均速度」の最高値
Best single race144.32 wpm最高速度
Average of
fastest 10 races
142.34 wpmTop10の速度の平均。
数字は1〜完走レース数の間で変更可能
Fastest race from
each text, average
120.23 wpm
(629 total texts raced)
Text Bests
()内は完走済みの文章の数(※1)
Wins403 (55.43%)勝利数。()内は勝率
Points54,465.15累計獲得ポイント。小数点以下第二位まで
Average career speed119.78 wpm全完走レースの速度の平均
Accuracy98.13%全完走レースの正確性の平均
100% accuracy races130.97 wpm
(18.73% of all races)
正確性100%(※2)の完走レースの速度の平均。
()内は正確性100%で完走した確率
Career standard deviation11.09 wpm全完走レースの速度の標準偏差
Coefficient of variation9.26%全完走レースの速度の変動係数
Top marathon39 races in 24 hours, starting
2015 September 20, 11:36am
任意の24時間内の完走レース数の最高値。
開始した日時も記される

※1: 同じ文章を何度も完走することがあるため、完走済み文章数はRaces以下の数字になる。
※2: 小数点以下は四捨五入されるため、正確性99.5%でも100%とみなされる。

速度は0.01wpm単位で、正確性は1%単位で閲覧できる。速度をクリックすると各レースのデータ(文章、文字数、タイム、速度、正確性)も閲覧できる。そのデータでは正確性が0.1%単位で記載されているように見える。だが、実際には1%単位である(.0がついているだけ)。

・View Pit Stop page for [username]
→TypeRacerのProfile画面へ

・View text analysis of races by [username]
→完走済み文章の一覧へ。ここのBest WPMを平均すればText Bestsを計算できる。各[Text]をクリックすると、そのTextのランキングが出る。[Best WPM]の数字をクリックすると、最高記録の詳細が出る。[Races]の数字をクリックすると、自分がその文章を打ってきた履歴(レース番号、日時、速度、正確性)が出る。さらに、[View texts not yet raced by (ID)]をクリックすると、まだ打っていない文章の一覧が出る。まだ打っていない文章には、Skill Levelが上がったために出なくなった短い文章も含まれる

・Career
→月ごとの平均速度、最高速度、レース数、勝利数、勝率

・Last 20 Races
→最近20レースの詳細。数字は1〜レース数の間で変更可能。[List fastest]に数字を入れれば速い順にソートされる

・Universes
ワードセットごとの分析。レース数、最高速度、Text Bests、完走文章数、最終レース日時。ここから例えば[lang_ru]をクリックすれば、ロシア語の分析結果を閲覧できる。英語以外はところどころ文字化けしているが。正確性は1%単位。各文章をクリックすると、Pointsは小数点以下第二位まで、速度は0.01wpm単位で表示される。正確性は0.1%単位に見えて実は1%単位(.0がついているだけ)。なお、Dictionary等、一部のワードセットはこの表に反映されない。URLの末尾に[&universe=dictionary]を追加すれば、こちらのように閲覧可能となる。


●対戦

画面上部、[Enter a Typing Race]をクリックすると野良対戦ができる。近い速度の人がいればマッチング(自分とbotを含め2〜10人)。いなければbotとの争い(自分含め3人固定)となる。

まよまよ主催の英語対戦会など、参加人数が多い場合、この10人に入るための競争が発生することもあった。タイミングが遅れると着席できなかった。現在では最大200人同時に部屋に入ることができ、コマンドにより最大300人(?)同時に対戦可能となっているようだ(TypeRacer BlogSeptember 24, 2021の記事参照)。

対戦で1位になれば、Races wonに加算される。2位以下では加算されない。

対戦会の開催方法
→[Race Your Friends]をクリックし、表示されたURLを対戦したい人に伝えるなりツイートするなり


●多言語

画面右上の[Language]をクリックすることで、Top Languages 24言語、More Languages 28言語、計52言語から選択できる。Interstenoの17言語のうち14言語がTop Languagesに、3言語(フィンランド語、スロバキア語、チェコ語)がMore Languagesに含まれている。

この52言語のうち、ラテン文字(A, B, C, ...)を用いるのは35言語、キリル文字(А, Б, В, ...)を用いるのは6言語、その他の文字を用いるのは11言語である。なお、セルビア語(ラテン)のレースではラテン文字が使用される一方で、テストはキリル文字で実施される。

筆者はラテン文字とキリル文字を用いる計41言語にギリシャ語(ギリシャ文字を用いる)を加えた計42言語で500cpmを達成し、テストに合格済みである。英語スケール換算で5倍されている日本語も含めると、500cpm達成済みなのは43言語となる。

達成値(cpm)Top LanguagesMore Languages合計備考
700〜202英語、日本語(換算)
650〜699202フランス語、スペイン語
600〜649717 
550〜599337 
500〜54942125ここまで43言語
〜499639 
242852 

【多言語の攻略法1: Interstenoと共通の16言語(日本語を除く)】

配列を検討した上で、各言語を対策する。ここまでで詰まるようなら、まずは特殊文字がほぼ無い英語のベース速度を最低600cpm、できれば700cpm以上まで上げることをお勧めする。また、以下の記述はInterstenoと共通の16言語(日本語を除く)で500cpmを達成する実力があることを前提とする。

【多言語の攻略法2: Interstenoで使用した配列の使用(ラテン文字使用言語)】

以下の10言語は、Interstenoで用いた配列を使用することで容易に500cpmを達成可能である。

言語特殊文字難易度配列備考
タガログ語
アフリカーンス語
マレー語
インドネシア語
スワヒリ語
-C英語配列 
スロベニア語[č][š][ž]Cスロバキア語配列qwxyは出現しない
ガリシア語スペイン語と同じCスペイン語配列 
アイルランド語[á][é][í][ó][ú]Cスペイン語配列jkqwxyzは出現しない
スウェーデン語[å][ä][ö]Cフィンランド語・ドイツ語配列 
セルビア語(ラテン)クロアチア語と同じCクロアチア語配列テストはキリル文字

※難易度の説明
 C: 既存の配列で対応可能
 B: 既存の配列を少し変更するだけで対応可能
 B+: Bに加えて相当の練習が必要
 A: 大掛かりな配列作成が必要
 A+: Aに加えて相当の練習が必要
 S: Aに加えて個別の攻略が必要
 S+: Sに加えて相当の期間が必要

【多言語の攻略法3: 個別の配列作成(ラテン文字使用言語)】

以下の9言語は、Interstenoで用いた配列だけでは対応できない。このため、個別に配列を作成して練習する必要がある。とはいえ、Intersteno対策に準じた方法で対応できるため、まだ楽な方だ。

言語特殊文字難易度配列
アルバニア語[ç][ë]Bオランダ語配列にçを追加
ウェールズ語[â][ê][î][ô][û][ŵ][ŷ]B新規作成(※)
デンマーク語
ノルウェー語
[å][ø][æ]B新規作成
マルタ語[ċ][ġ][ż][ħ]B+新規作成
エストニア語[š][ž][ä][ö][ü][õ]A新規作成
ラトビア語[č][š][ž][ā][ē][ī][ū][ģ][ķ][ļ][ņ][ŗ]A新規作成
リトアニア語[ą][ę][į][ų][č][š][ž][ė][ū]A新規作成
カタルーニャ語[é][í][ó][ú][à][è][ò][ï][ü][ç][ŀ]A新規作成

※ウェールズ語配列は、もともと伊仏配列に[ŵ][ŷ]を追加して作成した。しかし、頻出する[w](伊仏配列ではデッドキー[:]を使用)への対応が困難であるため、新規作成した。

【多言語の攻略法4: キリル文字使用言語】

ブルガリア語は、ロシア語配列で対応可能である(しかしロシア語とは別の難しさがある)。また、ロシア語・ブルガリア語以外の4言語に関しては、ロシア語配列に特殊文字を加えた配列を別途作成し、練習する必要がある。なお、キリル文字のラスボスはベラルーシ語である。筆者は通算381レース目にしてようやく500cpmを達成した

言語特殊文字特殊文字(稀)難易度配列備考
ブルガリア語-[ь]C+ロシア語配列[э][ы]は出現しない
セルビア語(キリル)[ј][њ][љ][џ][ћ][ђ]A新規作成[ы]は稀
マケドニア語[џ][ћ][ђ][ѓ][ќ][ѕ][è]A新規作成同上
ウクライナ語[є][і][ї][Ї][ґ][s][A]A+新規作成[ё][ы][э]は出現しない
ベラルーシ語[э][s][ё][і][ў][A][U]A++新規作成[ы]が頻出。[и]は稀。[щ][ъ]は出現しない

※セルビア語(キリル)、マケドニア語の[ј]は、ラテン文字の[j]と別
※ウクライナ語、ベラルーシ語の[і]は、ラテン文字の[i]と別
※ウクライナ語の[ї][Ї]は、ラテン文字の[ï][Ï]と別
※マケドニア語の[ѕ]は、ラテン文字の[s]と別。ウクライナ語とベラルーシ語の[s]は、ラテン文字の[s]。
※ウクライナ語とベラルーシ語の[A]は、ラテン文字の[A]。
※ベラルーシ語の[U]は、ラテン文字の[U]。

【多言語の攻略法5: ベトナム語】

ベトナム語は、ラテン文字のラスボスである。難易度はS+と言って良いだろう。ラテン文字をベースとしつつも、特殊文字の種類が非常に多いため、配列の考え方に工夫が必要である。また、質・量ともに充実した練習が不可欠である。筆者は通算656レース目にしてようやく500cpmを達成した。また、テストで認証された速度が気に入らなかった(400cpmにすら満たなかった)ため、その後も攻略を続けて結局721レース打った。以下の例ではデッドキーを多用するため、英語等と比較して打鍵数が約4割増える。従って、ベトナム語で500cpmを達成するには、英語で700cpm相当の打鍵速度が必要となる。さらに、デッドキーがキーボードの右端や最上段など打ち辛い場所にあるため、チェコ語やスロバキア語のような運指範囲の広い言語を並行して鍛錬する必要がある。

以下にベトナム語の特殊文字と配列の考え方の一例を示す。ベトナム語の一般的な入力方法(VNI方式)を参考としつつも、筆者にとって打ちやすいようにアレンジしている。

まず、[ă][â][ê][ô][ơ][ư][đ][à][ạ][ộ][ữ][ợ]はそこそこ出現するため、それぞれ1キーに割り当てる。筆者は日本語配列でいう[1][2][3][4][[][]][j][w][z][7][8][9]に割り当てている。

次に、[5][6][^][:][@]をデッドキーとして、順に「グレイヴ」「フック」「チルダ」「アキュートアクセント」「アンダードット」を割り振る。具体的には以下の通り。[縦のキー→横のキー]の順に打鍵することで、各文字を入力できる。例えば[ẳ]は[6→1]で入力できる。

aeiouy1234[]
5àèìòù
6
^ãĩõũ
:áéíóúýế
@

数字および[j][w][z]は出現頻度が低いため、[半角/全角→数字][:→j]等に割り当てれば対応できる。例えば[61]は[半角/全角→6→半角/全角→1]で入力できる。

【多言語の攻略法6: ギリシャ語】

ギリシャ文字(ラテン文字ともキリル文字とも違う)を用いるため、個別に対策が必要である。筆者は通算763レース目にしてようやく500cpmを達成した。難易度はS+と言って良いだろう。

過去の発表資料

多言語タイピングにおけるギリシャ語の強化

【多言語の攻略法7: 朝鮮語/韓国語】

ハングルという固有の文字を用いるため、個別に対策が必要である。筆者は換算500cpmを未達成である(2024.3.18現在、458cpmが最高)。難易度はS+と言って良いだろう。

多言語タイピングにおける朝鮮語/韓国語の強化

【多言語の攻略法8: その他】

日本語は筆者にとって母国語であるため、漢字かな交じり文であっても200cpm(英語スケール換算で1000cpm)を出すのは問題無い。しかし換算前の数値で500cpmを出すのは相当難しい。テキスト中に英語が混ざった場合は半角入力に切り替えてから打てば5倍速で入るので一気に稼げる。これをうまく使うのがカギか。

ヘブライ語、イディッシュ語、アラビア語、ペルシャ語、ヒンディー語、タイ語、中国語、台湾語では、500cpm(あるいは換算500cpm)を未達成である。いずれも独自の文字を用いるため、個別の配列作成および攻略が必須である。加えて、ヘブライ語、イディッシュ語、アラビア語、ペルシャ語は「右から左に読む」こと、中国語、台湾語は「文字の数が多い」ことが難関となり得る。難易度はS+以上と言って良いだろう。


●Premium

年間$12を支払えば、Premium IDに変更可能である。詳細は、Profile画面の上のメニューの一番右、[Upgrade]のリンク先を参照。

筆者にとって最大のメリットは、全レースのデータをcsvファイルでダウンロードできることである。なお、1000レースを超えるワードセットに関しては1000レース以内の場合と違って、ダウンロードページが一旦表示される。恐らく、データサイズが大きいために処理を分けているのだろう。レースデータには、以下が記載されている。但しすべてのデータはTypeRacer Dataからも取得できる。

項目説明
Race #レースの番号
WPM速度(wpm表示。小数点以下は表示されない)
Accuracy正確性(0〜100%で表示。小数点以下は表示されない)
Rank順位
# Racers参加者数
Text ID打ち切った文章の番号
Date/Time(UTC)打ち切った日付と時間

他のメリットは、アバター(車)を変更できたり、広告がなくなったりすることだ。広告がなくなることでサイトの動作が軽快になり、打鍵から表示までのラグによる被害が軽減される可能性がある。また、Profileに使用キーボード、生年月日、自己紹介文を入力し、公開できる。Profileの右側の絵や、Experience levelの表示も変更される。

項目通常IDPremium ID
Profileの右側の絵黄色の矢(最大8個)+丸印金札(最大5枚)→銀星(最大4個)
Experience levelの表示TypistRacer


●公式ワードセット(universe)

TypeRacerのワードセットは、universeと呼ばれる。
多言語は、universeの一部として実現されている。他にも多数のワードセットがある。

有名どころではDictionaryがある。タイプウェル英単語のように、単語がランダムに出題されているように見える。実際には単語の羅列から成るワードが数百個あり、そのワードがランダムに出題される。英語ポルトガル語イタリア語に対応している。

Instant Death Mode(1ミスした時点で即失格となるモード)もuniverseの一種である。英語ポルトガル語に対応している。

他にはAnime, Repeating Words, Jokes, Video Games, Rhymes, Hip Hop Hits, Movies, Copypasta, Bible, Haiku, Comic Books, Inspirational Quotes, Harry Potter, TypeRacer for Kids, Lord of the Rings, Star Wars, Calvin and Hobbes, Stenography, All TypeRacer Texts, TypeRacer Classic, Portal 2等、多種多様なワードセットがある。詳細はこちら


●筆者の記録

複数の
ワードセットで完走すると、Profile画面に[Per-Universe Stats](ワードセット毎の統計)が表示される。これをベースに、各種指標の一覧を記載する。

【Per-Universe Stats】

完走レース数が一番多いのはロシア語だ。以下、英語、ギリシャ語、ベトナム語、スペイン語、朝鮮語/韓国語、Dictionary(英語)と続き、ここまでが500レース以上。下の方には1回しか打っていない言語も複数ある。目標としていた500cpmを1回目で超え、即終了したためだ。Best Speedは朝鮮語/韓国語を除きすべて500cpm以上。将来はAvg. Speedも500cpm以上を目指すか。ロシア語、ギリシャ語、ベトナム語、朝鮮語/韓国語、ベラルーシ語が難関になりそうだが。

Universe言語RacesAvg. SpeedBest SpeedText BestsPoints
lang_ruロシア語4880486.419602.02481.60386782
play英語804599.515721.60601.8559046
lang_elギリシャ語763367.843531.70379.9049645
lang_esスペイン語758538.200687.10560.9058744
lang_viベトナム語721359.060535.80360.8063164
lang_ko朝鮮語/韓国語645379.858(※)460.26(※)398.75(※)40007
dictionary英語500670.668835.81705.2526402
lang_beベラルーシ語381409.389503.85407.3525220
lang_huハンガリー語290468.544574.00469.9515764
lang_plポーランド語254446.988579.35450.3516865
lang_skスロバキア語247453.298546.00470.5517889
lang_csチェコ語245436.745539.85449.6510609
lang_fiフィンランド語241489.389591.45510.4011876
lang_roルーマニア語233513.118616.75553.6515764
lang_trトルコ語191493.65611.75536.158317
lang_deドイツ語179502.00577.25517.8010617
lang_hrクロアチア語175486.92617.35497.507534
lang_ptポルトガル語169522.36641.40528.2512214
lang_frフランス語167543.85685.50559.9513328
lang_nlオランダ語161524.61619.45540.907997
lang_ukウクライナ語113420.99505.65420.207726
lang_itイタリア語111515.85625.40533.052378
lang_bgブルガリア語89436.03507.20450.657015
lang_mtマルタ語29404.50517.65408.951743
lang_mkマケドニア語20446.40522.80450.201679
lang_tlタガログ語20539.20598.20544.850
lang_ltリトアニア語14431.95517.65426.85943
lang_srセルビア語(キリル)13383.85543.35383.85766
lang_ja日本語10827.25(※)1306.35(※)827.25(※)5076(※)
lang_lvラトビア語9374.35505.05374.35488
lang_cyウェールズ語8453.25516.40454.15569
lang_gaアイルランド語7425.15507.25425.15526
lang_sqアルバニア語6461.85511.65461.85588
lang_caカタルーニャ語5489.15513.75489.15479
lang_sr-latnセルビア語(ラテン)4491.15620.05491.15429
lang_etエストニア語3483.35512.30483.35217
lang_svスウェーデン語3507.95545.50-507.95176
lang_msマレー語2504.30529.90504.30263
lang_slスロベニア語2446.00528.15446.05115
lang_afアフリカーンス語1518.80518.80518.8078
lang_daデンマーク語1516.05516.05516.0560
lang_glガリシア語1505.65505.65505.6544
lang_idインドネシア語1503.45503.45503.4576
lang_noノルウェー語1534.15534.15534.1571
lang_swスワヒリ語1583.65583.65583.6574

※別IDの英語は、1898 races, Avg. Speed 576.746cpm, Best Speed 780.90cpm, Text Bests 600.15cpm。2013〜2014年の記録なので、Pointsは無い。
※朝鮮語/韓国語のAvg. Speed, Best Speed, Text Bestsは、英語スケールに換算するため2倍している。
※日本語のAvg. Speed, Best Speed, Text Bestsは、英語スケールに換算するため5倍している。また、Pointsは明らかに過大である(5倍していないのに他の言語より明らかに大きい)。
※スウェーデン語のBest Speedは、Last raceでは545cpm、TypeRacer Dataでは109.10wpmと表示された。実際には545.475〜545.499cpmの範囲と考えられる。だが、正確な値を判定する方法が現時点では不明なので545.50-と記す。

【データの取得方法】

Profile画面に表示される[Avg. Speed], [Best Speed]はwpm値であり、しかも小数点以下が記載されていない。このため、TypeRacer Dataの個人データから[Average career speed], [Best single race]の値を取得する。両方ともwpm値で、小数点以下第二位まで記載されている。それを5倍してcpm値に換算する。また、前者のうち50レースに到達した言語はProfile画面のcpm値を転記する(前記の通り、50レース以上で小数点以下第二位まで、200レース以上で小数点以下第三位まで閲覧可能となる)。後者のうち、2021年10月以降にプレイしたロシア語やDictionaryに関しては、[Latest High Scores]から0.01cpm単位で取得できているためそれを記す。

また、Text Bestsは個人データ内の[Fastest race from text, average]の値を5倍してcpm値に換算する。


●筆者のTypeRacer参戦史

時期500cpm
到達言語数
内容
2008.10.181初プレイ。英語を1回だけ打って放置。598.85cpm、正確性は記録無し
2013.9.26
〜2014.9.28
1英語のみ1898戦(主に2013/10-11)。最高記録は2013.11.17の780.90cpm。
IDを忘れたため別IDを作成。Text Bestsを意識していた。
2015.5.17
〜11.29
10Intersteno対策として多言語対戦会に参戦。2008年のIDを思い出して使用。
対戦会の言語に合わせて当初は順調に毎週500cpm達成
2016.1.2410Premiumにする。かり〜さんが毎週の対戦会終了後に「正確性の平均」を
ツイートしており、どうやって詳細な値を把握するのか気になって教えて頂いた。
2016.2〜312トルコ語、ハンガリー語で500cpm達成(対戦会1巡目では届かず)
2017.3〜415ポーランド語、チェコ語、ロシア語で500cpm達成(対戦会2巡目でも届かず)。
Interstenoの17言語で残ったのは日本語とスロバキア語。
2017.6.1816フィリピン出張を機にタガログ語に初挑戦。Intersteno以外の言語では初
2018.1.2822スロバキア語と間違えてスロベニア語を打ち、500cpm達成。
これを機に、スロバキア語および比較的攻略が容易な他の4言語で500cpm達成。
2018.539幾つかの配列を新規作成しつつ、順調に500cpm達成
2018.6〜742難関のベラルーシ語、ギリシャ語、ベトナム語で500cpm達成
2020〜202142Intersteno対策として、Takiの課題文章の少ない言語を打ち込む。
(スペイン語、ハンガリー語、ポーランド語、スロバキア語、フィンランド語)
2021.6〜42大文字のデッドキー化の練習。スペイン語を652cpm→687cpmと更新。
さらにIntersteno2022を見据えてロシア語を502cpm→575cpmと大幅更新
2021.11.343日本語で209cpm打ち、Testにも合格。その後261cpmまで伸ばす

【今後の野望】

・まずヘブライ語、イディッシュ語で500cpm達成
・残った難関7言語で順次500cpmもしくは換算500cpm達成
・言語数を増やすよう働きかけて、100言語500cpmを目指す。当面の候補は、10 fast fingersに含まれてTypeRacerに含まれない10言語。
・500cpmの次は550cpm、600cpm
・英語で過去の自己ベスト(別IDで記録した780.90cpm)を更新
Experience level 8,9を順次達成。現時点ではロシア語が最も近い。


●正確性の定義に関する検証

【結論】

・正確性=正解打鍵数÷(正解打鍵数+不正解打鍵数)
・小数点以下第二位が四捨五入され、小数点以下第一位まで表示される。
 但し、その結果小数点以下第一位が0となる場合、整数部分のみ表示される。
・総打鍵数(正解打鍵数+不正解打鍵数)が10以内ならば常に整数部分のみ表示されることもある。
・ミス連鎖には上限がある。単語により違う?
・画面に5ミス分の文字が表示されても、正確性計算時には3打鍵分しかカウントされないことがある
 この現象は、終盤の単語で故意にミス連鎖した時にのみ発生する
・BSはすべて正解打鍵数とする
・ミス⇔BSを繰り返している間は誤打鍵もBSも含めすべて正解打鍵数とする
・ミスした部分を[Shift+Home]等で全選択して消した場合、不正解文字の数だけ正解打鍵数が追加される
・大文字は1打鍵と数える

【検証1】

文章を短くして検証を楽にするため、Guest IDで検証する。以下の文章(120文字)を打ち、最後の[win.]を故意に[wi1234567890]と打鍵し、[wi]を含め全部BSで消して[win.]と打ち直す。これにより、正解打鍵数120、失敗打鍵数を10とし、正確性は120/(120+10)=92.3%と表示されると予測した。しかし実際には、画面に[wi12345]と表示され、それ以上入力しても画面に反映されなかった。また、正確性は97.7%と表示された。仮に[12345]の5文字が失敗打鍵数と判定されたのなら、正確性は120/(120+5)=96.0%となるはずだ。

I know nobody knows, where it comes and where it goes. I know it's everybody's sin, you got to lose to know how to win.

そこで、リプレイ画面をスロー再生させたり、小刻みに止めたりして途中経過を観察した。すると、まず[wi12345]と入った時点で97.5%となっていた。[wi]までで118文字あり、その後失敗打鍵がx回続いたとすると、正確性は118/(118+x)となると予測できる。これが97.5%となるのは、x=3の時だ。つまり、5ミスしたつもりが3ミス扱いとなっている。

次に、BSを連打して[wi]まで消した時点で正確性は97.7%と表示された。正解打鍵数も失敗打鍵数も増えていないはずなのに、なぜか正確性が微妙に増えている。結論から言うと、ここではBS7回が正解打鍵数とカウントされている。即ち、正確性は125/(125+3)=97.65625%、小数点以下第二位を四捨五入して97.7%となっている。BSが1回の場合は正確性が97.5%、2〜6回の場合は97.6%となり、BS以外のキーには触れていない。このため、BS7回がすべて正解打鍵数として算入されたと判断できる。

最終的に、[win.]を打ち直して正解打鍵数を4打鍵追加し、正確性は129/132≒97.7%となったと推測される。

【検証2】

BSの仕様をもう少し詳しく調べる。以下の文章(199文字)を打つ。序盤で[Some feeling har]といきなりミスしたため、BSで修正し、後は適当に流す。この序盤部分をスロー再生して検証する。

Some feeling had started in my stomach and was traveling up to my face, and I kn ew that when it got there I would turn bright red and hear the ocean, which is w hat happens when I get put on the spot.

結果は以下の通り。BSが正解打鍵数にカウントされていることが裏付けられた。

時点正確性計算式(推定)
[har]とミス93.8%15/(15+1)
BS94.1%16/(16+1)
[d]を打ち直す94.4%17/(17+1)
[ ]を打つ94.7%18/(18+1)

【検証3】

BSの仕様をさらに詳しく調べる。以下の文章(176文字)を打つ。冒頭[S]を故意に[s]とミスし、BSで修正する。この操作を5回繰り返す。その後は正確に打って終了する。

Spend all your time waiting for that second chance, for a break that would make it okay. There's always some reason to feel not good enough and it's hard at the end of the day.

結果は以下の通り。即ち、最初に[s]と打った1打鍵のみが失敗打鍵数、その後はBS5回だけでなく[s]4回もすべて正解打鍵数にカウントされていることが判明した。ついでに、[S]は[Shift+s]の2打鍵でなく、1打鍵とカウントされることも裏付けられた。

時点正確性計算式(推定)
[s]とミス0%0/(0+1)
BS50%1/(1+1)
[s]とミス67%2/(2+1)
BS75%3/(3+1)
[s]とミス80%4/(4+1)
BS83%5/(5+1)
[s]とミス86%6/(6+1)
BS88%7/(7+1)
[s]とミス89%8/(8+1)
BS90%9/(9+1)
[S]を打ち直す90.9%10/(10+1)
最後まで打つ99.5%185/(185+1)

※正確性が小数点以下第一位まで表示されるのは、正解打鍵数+失敗打鍵数が10を超えてからであると考えた。だが、以後再現しない。67%でなく66.7%と表示されるようになったためだ。

次に、[Prior ...]で始まる文章に対して[p],[1],[2],[3],[4]を順次入力してすべてBSし、その後正確に打ってみた。結果は上記と同様、BS5回に加えて1,2,3,4も正解打鍵数と判定された。

【検証4】

検証1で、[wi1234567890]とミスしても画面に表示されるのは[wi12345]までで、失敗打鍵数としてカウントされるのも5打鍵までという不可解な仕様が観測された。これは常に成立するのか検証する。

[Now you ...]に対して[N1234567890]と故意に10ミスする。すると、画面には[N123456789]と表示され、正確性は10%となった。計算式は1/(1+9)と推測される。即ち、失敗打鍵数は9回である。検証1とは異なる結果だ。

なお、[123456789]をBSで消して[N]だけ残すと、正確性は52.6%となった。計算式は10/(10+9)と推測される。BS9回が正解打鍵数にカウントされていることが分かる。その後[Now you ]まで打ち進むと、正確性は65.4%となった。計算式は17/(17+9)と推測される。画面表示の通り、正解打鍵数が7増えたことが分かる。

【検証4までで判明した内容】

・ミス連鎖には上限がある。単語により違う? 5打鍵、9打鍵の2パターンを確認
・画面に5ミス分の文字が表示されても、正確性計算時には3打鍵分しかカウントされないことがある
・BSでははすべて正解打鍵数とする
・ミス⇔BSを繰り返している間は誤打鍵もBSも含めすべて正解打鍵数とする
・大文字は1打鍵と数える

【検証4までの疑問点】

・5打鍵、9打鍵以外にパターンはあるか?
・5ミスしたつもりが3ミスになったのはなぜか?
・[Shift+Home]等で全選択して消した場合にどうなるか?

【検証5】

ここ以降、Guestアカウント、Dictionaryで調査する。文章がさらに短いためだ。

BS連打でなく、[Shift+Ctrl+←]でミスした単語を全選択して消した場合にどうなるか検証する。[great ...]に対して[12345678901234567890]と故意に20ミスする。すると、画面には[1234567890123]と表示され、正確性は0%となった。計算式は0/(0+13)と推測される。そこで[Shift+Ctrl+←]で全選択し、BSで一気に消す。すると、正確性は50%となった。何と、BSを13連打した場合と変わらない。Shift, Ctrl, ←, BSで計4打鍵だからといって、正確性が3/(3+13)≒18.8%となるわけではない。

時点正確性計算式(推定)
[1234567890123]とミス0%0/(0+13)
[Shift+Ctrl+←]→BS50%13/(13+13)
[g]まで打つ51.9%14/(14+13)
[gr]まで打つ53.6%15/(15+13)
[great ]まで打つ59.4%19/(19+13)

念のため、さらに数パターン検証する。[only]に対して同様の検証を実施した結果はこうなった。[Shift+↑]の後にBSを打たない場合、BSを打った場合と比較して正解打鍵数が1だけ減る。

時点正確性計算式(推定)
[123456789012345]とミス0%0/(0+15)
[Shift+↑](BSはしない)0%0/(0+15)
[o]まで打つ50%15/(15+15)
[onl]まで打つ53.1%17/(17+15)
[only]まで打つ54.5%18/(18+15)

続いて、[during]に対して同様の検証を実施する。なお、全選択のショートカットキーは少しずつ変えている。また、BSの代わりにDeleteを用いている。

時点正確性計算式(推定)
[123456789012345]とミス0%0/(0+15)
[Shift+Home]の後、Delete50%15/(15+15)
[d]まで打つ51.6%16/(16+15)
[du]まで打つ53.1%17/(17+15)
[dur]まで打つ54.5%18/(18+15)
[duri]まで打つ55.9%19/(19+15)
[durin]まで打つ57.1%20/(20+15)
[during]まで打つ58.3%21/(21+15)

続いて、[become]に対して途中まで正確に打った後、故意にミスする。なお、より実戦に即した形にするため、ワードを全部消すのではなく、間違えた部分のみ削除した。この場合、画面に表示された不正解文字の数だけ正解打鍵数が追加される。Shift, Home, Shift, →×3, Delete、計7打鍵が追加されるわけではない。

時点正確性計算式(推定)
[bec1234567890]とミス23.1%3/(3+10)
[Shift+Home]23.1%同上
[Shift+→→→]の後、Delete56.5%13/(13+10)
[o]まで打つ58.3%14/(14+10)
[om]まで打つ60%15/(15+10)
[ome]まで打つ61.5%16/(16+10)

※正解打鍵数+失敗打鍵数が10を超えた後も、正確性が小数点以下第一位まで表示されないケースがある。

【検証6】

検証5では常に[12345678901234567890]と故意に20ミスしていた。しかし、画面に表示される不正解文字の数はほぼ毎回異なっていた。これは毎回ランダムなのか、あるいは何らかの法則があるのか。

まず、一つの単語に対してどうなるか検証する。[turn]に対して[tur]まで打った後に[1234...]と打つと、画面には[tur12345678]と表示された。次に、画面に[tu]だけ残した状態で同じことをやると、画面には[tu123456789]と表示された。画面に[t]だけ残した状態では、[t1234567890]となった。最後に画面に何も残さずにミス打鍵だけしたところ、[12345678901]と表示された。つまり、[turn]に対しては正解・不正解合わせて11文字の表示が上限であることが判明した。

【検証7】

では他の単語に対してはどうなるか。同一ワード内の複数の単語に対して同様の検証を実施した結果を示す。Dictionaryは短文が多いとはいえ、制限時間内にすべてのワードを調査するのは難しい。このため、残り時間が少なくなったところで途中の単語を一気に打ち、最後の単語を調査する、という方法も採用した。

同じ単語がなかなか出現しないため、同じ単語なら常に表示文字数の上限が同じなのかは不明。また、以下の傾向があるようにも見受けられる。しかし反例もあるため、はっきりとしたことはまだ言えない。

・同じワードの中で長い単語は上限も長く、短い単語は上限も短い
・ワードの末尾に行くにつれて、上限は短くなる

単語表示文字数の上限
too12
never12
how11
both7
high12
...(時間切れ)

単語表示文字数の上限
small13
lead15
against17
govern14
feel11
set11
he10
...(時間切れ)
under8

単語表示文字数の上限
call11
she11
mean12
both13
other11
up9
...(時間切れ)
when7

【検証8】

検証1で、5ミスしたつもりが3ミス扱いとなった事象の再現性を検証する。以下のワードを打つ。

move thing that much school any the must into school get that those back old new very early without hold open here eye too system many

後ろから2ワード目、[system]の[sys]まで126打鍵を正確に打つ。その後[12345678901234567890]と故意に20ミスする。打鍵速度も充分に落とし、リプレイ時に検証しやすいようにする。画面には[sys12345678901]と11ミス目まで表示された。詳細は以下の通り。

時点正確性計算式(推定)
[sys123]とミス97.7%126/(126+3)
[sys1234]とミス96.9%126/(126+4)
[sys12345]とミス96.2%126/(126+5)
[sys123456]とミス95.5%126/(126+6)
[sys1234567]とミス94.7%126/(126+7)
[sys12345678]とミス94%126/(126+8)
[sys123456789]とミス93.3%126/(126+9)
[sys1234567890]とミス93.4%127/(127+9)
[sys12345678901]とミス93.4%128/(128+9)画面表示はここまで
[sys12345678901234567890]とミス93.4%128/(128+9)
BSを11回打ち、ミス部分を消す93.9%139/(139+9)

何と、不正解打鍵数としてカウントされるのは9ミス目までだ。その後の2打鍵は正解打鍵数にカウントされている。さらにその後の9打鍵(実際にはさらに乱打)は正解打鍵数にも不正解打鍵数にもカウントされない。そして、BSは11回分が正解打鍵数にカウントされる。ここが9回分しかカウントされない場合、正確性は137/(137+9)≒93.8%となり、矛盾する。

これが、検証1で「5ミスしたつもりが3ミス扱い」となった事象の正体だろうか。改めて検証1の推移を記述すると以下の通り。[wi12345]とミスした時点で正確性は97.5%だった。仮に[45]の2打鍵が正解打鍵数にカウントされたとしたら、正確性は120/(120+3)≒97.6%となるはずだ。また、[win.]と打ち直した時点の正確性は131/(131+3)≒97.8%となるはずだ。しかしそうはならない。

時点正確性計算式(推定)備考
[wi]まで打鍵100%118/(118+0)
[wi123]とミス97.5%118/(118+3)
[wi12345]とミス97.5%118/(118+3)画面表示はここまで
[wi1234567890]とミス97.5%118/(118+3)
BSを7回打ち、wiを含め消す97.7%125/(125+3)
[win.]と打ち直す97.7%129/(129+3)

【検証8-2】

もう一度。103文字

follow little under develop thing can part and it up what than need child how year so out possible such

possまで94打鍵を正確にうち、その後12345678901234567890とみす。がめんにはposs123456789012と表示。

1	98.9	94/(94+1)
2	97.9
3	96.9
4	95.9
5	94.9
6	94
7	93.1
8	92.2
9	91.3
0	90.4	94/(94+10)
1	90.5	95/(95+10)
2	90.6	96/(96+10)
BS12	91.5	108/(108+10)
BS16	91.8	112/(112+10)
打ち切り	92.6	125/(125+10)

短くなった。
year feel so take show how but people end school	48叔父
y12345678901

y	100
1	50
2	33.3	あれ。10打鍵以内だが小数点以下第一位まで。
3	25
4	20
5	16.7
6	14.3
7	12.5
8	11.1
9	10
0	9.1
1	8.3	1/(1+11)
BS2	21.4	3/(3+11)
BS11	52.2	12/(12+11)
BS12	54.2	13/(13+11)
全部打つ	84.7	61/(61+11)

11ミスはすべて不正解文字数


では中盤の単語でミスると

in he general think own feel home of turn as	44打鍵

own途中でミスる
サイトが極めて鈍重になり、ownを打ったつもりが10秒ほど停止し、nが現れた。なんだこれは。ちょうどよいのでここからn123456789012とミス

think まで20打鍵	100	20/(20+0)
nとミス	95.2		20/(20+1)
n1234567	71.4	20/(20+8)
89	66.7	20/(20+10)
0	64.5	20/(20+11)
BS2	66.7	22/(22+11)
BS11	73.8	31/(31+11)
最後まで	83.3	55/(55+11)

11ミスはすべて不正解打鍵数

最後のワードでは

seem help life think group both the just part play between then just for people may want than one do not say around begin both good	131打鍵

gまで128打鍵
g12	98.5	128/(128+2)
3	97.7	128/(128+3)
4	97	128/(128+4)
56	97	130/(130+4)	この2打鍵が正解でないと、BS2回で97.1%にならない
BS1	97	131/(131+4)
BS2	97.1	132/(132+4)
BS3	97.1
BS4	97.1
BS5	97.1
BS6	97.1	136/(136+4)
go	97.2	137/(137+4)
good	97.2	140/(140+4)


●その他攻略

【頻出記号の1打鍵化】

英語、フランス語、イタリア語等では[']の頻度が比較的高いため、1打鍵化した方が良い。例えばUSインターナショナル配列では日本語配列の[:]を打鍵することで[']を入力できる。日本語配列の[Shift+7]よりも遥かに速く打つことができ、無駄な疲労も軽減できる。代わりに、[I'll]のようなShift押しっ放しで突破できた一部の単語が打ち辛くなる(しかしそのような単語は限定的である)。また、[:]が[Shift+;]になって2打鍵必要となる。[:]の頻度が高い言語では、1打鍵化を検討した方が良い(しかしそのような言語に出会ったことがない)。

【ワードごと消して打ち直し】

ミスした時にBSを打鍵しても、画面への反映が遅れることがある。これにより、どこまで打ったか分からなくなる。よって、ワードごと消して打ち直した方が速いケースがある。この場合、BSを連打するよりも、ショートカットキーを使う方が速い。筆者は[Shift+↑(+→数回)]による全選択/部分選択からの削除を使用している。[Shift+Ctrl+←], [Shift+Home], [Ctrl+A]による全選択でも代用できる。

【大文字のデッドキー化と先行入力】

英語をはじめとする多数の言語では、開幕に大文字が来ることが多い。従って、Shiftを予め押しておくとロスを0.1秒ほどカットできる。但し大抵の場合は2打鍵目にShiftから指を離す動作が必要となり、ミスのリスクが残る。例えば[There]の2打鍵目にShiftを離す動作が遅れて[THere]になるといった具合である。

さらに踏み込んで、大文字をデッドキー化する手もある。例えば[A]を[;→a]で入力できるようにする。この場合、デッドキー[;]をカウントダウン中に先行入力し、開始直後に[a]を入力することで、[A]を入力できる。この場合は2打鍵目にShiftから指を離す動作が不要となり、正確性も向上する。例えば英語の開幕に出やすく、かつ左手の負担の大きい[We]は、[;]を先行入力した上で[we]と打てば良いため、速度・正確性ともに大幅に向上する。

余談だが、この「デッドキー先行入力」は、e-typing英語にも極めて有効である。初速が約0.1秒も改善されるためだ。一方、Interstenoでは失敗するケースがある。[;]が入らず小文字になることもあるし、逆に[;;]と入って失敗することもある。そもそも、TypeRacerと違って事前に課題文章が見えないため、開幕に大文字でなく記号が来たらタイムロスになる。


●その他Tips

【Guestでできること】

練習も対戦もできる。500cpmを超えればテストも表示される。部屋のURLを知っていれば、対戦会に参加することもできる。対戦会の開催もできる。

完走したレースの記録は一時的に残る。400cpmを超えればMegaracerになれる(本来、直近10戦平均が条件。だが、例えば1戦目で超えれば良い)。500cpmを超えればテストも表示される。レースを重ねれば、RankPoints、Races wonが加算され、Experience levelも上昇していく。しかしブラウザ再起動、PC再起動等ですべてのデータが消える。これを防ぐには、ユーザー登録が不可欠である。

【ID作成方法】

画面右上の[Create Account]をクリックし、必要事項を記入して[Sign Up!]

【参考サイト】

TypeRacer wiki
→先人たちの残した紹介資料。

Typeracer WPM percentiles
→wpmとRankの関係について調べたサイト(英語)。グラフおよびその説明はこちら

『TypeRacer』を見やすく表示する方法
→ごんたさん作成。フォントを変えることも可能らしい。例えばInterstenoで採用されているCourier Newフォントを使うことにより、Interstenoと似た環境を実現できるかもしれない(しかし筆者はうまくいかなかったので断念)。


トップページに戻る
タイピングページに戻る
タイピング日記最新版へ