• [rcssserver] FreeKickFault と CatchFault の整理. (akiyama) 01:40:47

これで,審判の機能は概ね移動完了. Stadium::referee_step() も TimeRef とでも名付けて再実装しよう.

良く見てみると,CatchFault と BackPass のルールがおかしい. キーパがペナルティエリアの外にあるボールをキャッチした場合,本来のサッカーのルールではハンドが取られるはずなのに,rcssserverではバックパスまたはキャッチフォルトしか取られない. しかも,キャッチフォルトが発生すると,強制的にペナルティエリアのエッジ上にボールが移動させられてしまう. 例えば,敵陣内にキーパが攻め込んでいて,うっかりキャッチしてしまった場合,ボールは一気に自陣ペナルティエリアまでワープしてしまう. これは,バグだよなぁ. 多分,ペナルティエリアの外でキャッチが行われた場合は,キャッチが行われたときのボール位置からのフリーキックにするのが正しいだろう.atchFaultを優先にして,プレイ再開位置を直せばいいかな.

バックパスについても,本来なら間接フリーキックになるはずなんだがが,ペナルティエリア角からの直接フリーキックになっている. でもまあ,これは仕方ないか. わざとでないバックパスの判定を正確に行える審判なんて作れないし.

後,Ralfがペナルティキックのパッチを作ってくれたので,明日あたり取り込むとしよう.

  • [rcssserver] ペナルティキックの修正. (akiyama) 21:39:05

Ralfのパッチを当てつつ,PenaltyKickRef を一通り整理. するとまあ,出るわ出るわ.バグが湯水のように湧いて出てくる. まさか,キーパがペナルティエリアの外でもキャッチ出来るようになってたとは. 他にも,書ききれないほど出てきた細かいバグを片っ端から修正, 結局,ほとんど書き直したじゃないか,このやろー.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-03-14 (月) 14:51:37 (1318d)
SourceForge.JP
Creative Commons License
RoboCup tools by Hidehisa Akiyama is licensed under a Creative Commons 表示-非営利 2.1 日本 License.