ブラウザ ゲーム サイトでユーザー スクリプトの使用を防止する方法があるかどうかを知りたいですか?
多くの人がGreasemonkeyを使用して他のプレイヤーよりも優位に立っているため、これらのスクリプトを無効にする方法が欲しい.
この古い記事「Web サイトで Greasemonkey を無効にする方法」を見つけましたが、2005 年の記事であり、機能していないようです。
ブラウザ ゲーム サイトでユーザー スクリプトの使用を防止する方法があるかどうかを知りたいですか?
多くの人がGreasemonkeyを使用して他のプレイヤーよりも優位に立っているため、これらのスクリプトを無効にする方法が欲しい.
この古い記事「Web サイトで Greasemonkey を無効にする方法」を見つけましたが、2005 年の記事であり、機能していないようです。
賢いスクリプターと戦うのは大変です。彼らのスクリプトはサーバーよりも先にページにアクセスでき、ほぼすべてのものをブロックまたは置換できるため、彼らは優位に立っています. 非常によく似た質問に対するこの回答を参照してください。
最も賢明で最も費用対効果の高い対策は、ゲームを「ゲーム」しているユーザーを制裁することです。ロックピックではなく、泥棒を攻撃します。
ユーザーとの技術戦争を主張する場合、何をしてもすべての人をブロックすることはできませんが、ユーザーをそのために働かせることはできます。
スクリプターの負担を軽減するためにできることを次に示します。
ページの構造、特に要素 ID と CSS クラス名を頻繁に変更します。可能であれば、要素を定期的に挿入または削除して、たとえば、キー<div>
が常に 2 番目の 3 番目のキーになるとは限りません。<table>
変更を加えるたびに、パフォーマンスや使用量が急激に低下したユーザーのログを監視します。ユーザーがスクリプトを調整するのに何時間または何日かかってもかまいません。
同様に、JavaScript のファイル名を頻繁に変更し、スクリプト作成者が使用する変数や関数の名前を変更してください。
クリックとキーボードのイベント ハンドラーを、それをサポートするブラウザーの信頼できるイベントに対してのみ機能するように記述します。
予測できない名前の画像に、カウントダウン タイマーなどの重要なテキストを配置できます。スクリプトが重要なイベントを検出するのが難しくなります。OCR を実行する必要があると、Greasemonkey のスクリプト ライターに必要なスキル レベルが大幅に上がります。(少なくとも今のところ。)
主要なゲーム アクションをFlashに移動すると、スクリプトを作成するのが桁違いに難しくなります。フラッシュをリバース エンジニアリングして、スクリプト可能なフックを備えたフラッシュに置き換える必要さえあるかもしれません。ただし、 Flashに切り替えることはユーザー (私のような) を苛立たせ、追い払うことになります。
詳細についてはその回答を参照してください。繰り返しますが、最善かつ最も費用対効果の高いアプローチは、問題のあるユーザーを制裁することです。ただし、利用規約で彼らの行為が明確に禁止されていることを確認してください。