おことわり
外部との通信について
このスクリプトは、外部のサーバーと通信を行っています。通信は以下の用途のみで使用しております。
- コンテストのパフォーマンス予測に必要なデータの取得(エンドポイント:/api/aperfs/[contestScreenName])
このデータについての詳細や、外部から取得する必要性についてはここをお読みください。
データの取得のみを行っているため、これによってアカウント情報や提出等のデータが送信されることはありません。
動作環境について
このスクリプトはユーザースクリプトマネージャとしてTampermonkey
を使用することを推奨しています。特に、Greasemonkey
では動作しないことが確認されています。ご注意ください。
ソースコードについて
このスクリプトは1000行程度のコードで構成されています。これはツールを用いて複数ファイルをまとめたもので、元々は別のファイルに分かれています。
スクリプトの内容を確認したい場合はこちらのバンドル前ソースを読むことをお勧めします。バージョンアップのコミットの時点でwebpackを実行することによって、同一のスクリプトが発行できることが確認できるはずです。
外部ライブラリについて
このスクリプトは以下の2つの自作ライブラリを使用しています。
詳しくは各ライブラリの説明をお読みください。
機能縮小版について
サイドメニューの存在によってソースコードが長大になっているという声より、順位表に列を追加することに機能を限定したスクリプトを発行しました。詳細は当該スクリプトの説明をお読みください。
機能説明
Predictor
コンテスト中/終わった後に、順位ごとのパフォーマンス、コンテスト後のレートを表示します。
順位はRated内の順位で、同順位の人数が複数人の場合はそれを加味します(3位が4人だと4.5位、5位が3人だと6位等)。レートの値は現在の自分がこのレートを取った場合の値です。
各フォーム(順位/パフォ/レート)の値を変更すると、その値だったときの他2つの値がフォームに表示されます。
自分の順位を表示したい場合は「現在の順位」ボタンを押してください。
順位表ページを見ている場合、各参加者のパフォーマンスとレートを表示する行を追加します。
Estimator
現在の自分が特定のレートになるための値、特定のパフォを取ったときのレートを表示します。機能は「入替」ボタンによってトグル可能です。
Issueは気軽にTwitter(@kymn_)等で報告して頂くか、GitHubに投げていただけると嬉しいです。