チャット欄で先頭がスペースの場合について
- 雀
- Topic Author
6 years 9 months ago #2109
by 雀
雀 created the topic: チャット欄で先頭がスペースの場合について
ダイスボットを使用する際、先頭がスペースの場合にはコマンドが発動しませんが、これを発動できるようにプログラムを書き換えることは可能でしょうか。
あるいは、チャット欄で改行以下の文を切り捨てることは可能でしょうか。
というのも、チャット欄で
CCB<=10
Cthulhu : (1D100<=10) → 5 → 決定的成功
という風に打ち込みクリティカルに見せかける悪質なユーザがいます。
パッと見では分かりづらく、KPに半角スペースがあるかどうか疑って下さいというのも悲しい話ですしKPの負担も無駄に増えてしまうので、プログラム側でなんとかしたいと思っているのです。
Ruby・flashのコンパイル環境はありますが、知識はダイスボットを追加・変更する、どどんとふ画面の初期設定を変更する程度です。
ご回答お願い致します。
あるいは、チャット欄で改行以下の文を切り捨てることは可能でしょうか。
というのも、チャット欄で
CCB<=10
Cthulhu : (1D100<=10) → 5 → 決定的成功
という風に打ち込みクリティカルに見せかける悪質なユーザがいます。
パッと見では分かりづらく、KPに半角スペースがあるかどうか疑って下さいというのも悲しい話ですしKPの負担も無駄に増えてしまうので、プログラム側でなんとかしたいと思っているのです。
Ruby・flashのコンパイル環境はありますが、知識はダイスボットを追加・変更する、どどんとふ画面の初期設定を変更する程度です。
ご回答お願い致します。
Reply to 雀
- 雀
- Topic Author
6 years 9 months ago #2110
by 雀
雀 replied the topic: チャット欄で先頭がスペースの場合について
補足です。
トピック投稿後に消えてしまいましたが、CCBの後ろに半角スペースがあります。
トピック投稿後に消えてしまいましたが、CCBの後ろに半角スペースがあります。
Reply to 雀
- 雀
- Topic Author
6 years 9 months ago #2111
by 雀
雀 replied the topic: チャット欄で先頭がスペースの場合について
src_actionScript内のChatMessageTrader.asにある、
private var diceCheckRegExp:RegExp = /^\s*ダイス合計[::]\s*\d+\s*[\(\(]/;
この一文を変更することで自己解決致しました。
コメントアウトで処理内容が書いてあるにも関わらず見ていませんでした。
今後はちゃんと調べてからトピックの投稿を致します。申し訳ありませんでした。
private var diceCheckRegExp:RegExp = /^\s*ダイス合計[::]\s*\d+\s*[\(\(]/;
この一文を変更することで自己解決致しました。
コメントアウトで処理内容が書いてあるにも関わらず見ていませんでした。
今後はちゃんと調べてからトピックの投稿を致します。申し訳ありませんでした。
Reply to 雀
- Anonymous
- Topic Author
6 years 9 months ago #2112
by Anonymous
Anonymous replied the topic: チャット欄で先頭がスペースの場合について
> CCB<=10
> Cthulhu : (1D100<=10) → 5 → 決定的成功
>
> という風に打ち込みクリティカルに見せかける悪質なユーザがいます。
ビジュアルダイスを有効にすることが有効な対策ではないかと思います。
ダイスボットが使用されている場合はビジュアルダイスが表示されます。
ビジュアルダイスが表示されなかった場合、それはダイスロールが行われていない直接入力されたメッセージです。
> Cthulhu : (1D100<=10) → 5 → 決定的成功
>
> という風に打ち込みクリティカルに見せかける悪質なユーザがいます。
ビジュアルダイスを有効にすることが有効な対策ではないかと思います。
ダイスボットが使用されている場合はビジュアルダイスが表示されます。
ビジュアルダイスが表示されなかった場合、それはダイスロールが行われていない直接入力されたメッセージです。
Reply to Anonymous
- 雀
- Topic Author
6 years 9 months ago #2114
by 雀
雀 replied the topic: チャット欄で先頭がスペースの場合について
回答ありがとうございます。
ビジュアルダイスの場合、表示されるのは4面ダイス、6面ダイス、8面ダイス、10面ダイス、12面ダイス、20面ダイス、100面ダイスのみになってしまいます。1d3などを全く振らないわけでもなく、根本的な解決には至らないと思っています。
そして何より、少なくとも自分のサーバーでプレイしている人のほとんどはビジュアルダイスを無効にしているようで、不正者のせいで「いつも無効にしていると思いますが有効にしておいて下さい」と真面目にプレイしてる人にしわ寄せが来るのは避けたいです。
後から気が付いたのですが、クトゥルフのダイスボットをクトゥルフ以外のダイスボットで打ち込むことでスペースも入れずに不正なロールができるようです。
ですので現状は「先頭がスペースの場合」ではなく、「ダイスボットの表示名」を入力した場合にエラー文が出るようにしました。クトゥルフの場合は「Cthulhu」ですね。そしてアルファベットによく似た記号を使用した場合にもエラー文を表示しています。「Ϲthulhu」など(Ϲはアルファベットではなく記号、U+03F9)がエラーを回避できてしまう為です。U+00C0からU+0587、U+1D00からU+1DC3、U+1E00からU+1FFDを禁止しています。gameType名を打ち込むことも、これらの記号は使用することもないので、この形ならプレイヤーにしわ寄せがないと思います。
ビジュアルダイスの場合、表示されるのは4面ダイス、6面ダイス、8面ダイス、10面ダイス、12面ダイス、20面ダイス、100面ダイスのみになってしまいます。1d3などを全く振らないわけでもなく、根本的な解決には至らないと思っています。
そして何より、少なくとも自分のサーバーでプレイしている人のほとんどはビジュアルダイスを無効にしているようで、不正者のせいで「いつも無効にしていると思いますが有効にしておいて下さい」と真面目にプレイしてる人にしわ寄せが来るのは避けたいです。
後から気が付いたのですが、クトゥルフのダイスボットをクトゥルフ以外のダイスボットで打ち込むことでスペースも入れずに不正なロールができるようです。
ですので現状は「先頭がスペースの場合」ではなく、「ダイスボットの表示名」を入力した場合にエラー文が出るようにしました。クトゥルフの場合は「Cthulhu」ですね。そしてアルファベットによく似た記号を使用した場合にもエラー文を表示しています。「Ϲthulhu」など(Ϲはアルファベットではなく記号、U+03F9)がエラーを回避できてしまう為です。U+00C0からU+0587、U+1D00からU+1DC3、U+1E00からU+1FFDを禁止しています。gameType名を打ち込むことも、これらの記号は使用することもないので、この形ならプレイヤーにしわ寄せがないと思います。
Reply to 雀
Time to create page: 0.125 seconds