ihofmann / open-websoccer

A PHP based online football/soccer manager game.
GNU Lesser General Public License v3.0
107 stars 71 forks source link

Fehler Torwart an Torvorlage beteiligt mehrmals #22

Open teamchef opened 9 years ago

teamchef commented 9 years ago

Hallo in der Berechnung ist ein Fehler das Torhüter sehr oft Torvorlagen aus dem Spiel heraus geben. zb Tooor für Real Madrid! Keylor Navas legt auf Toni Kroos ab, der nur noch einschieben muss.

Tor mit Vorlage Tooor für {ma1}! {sp2} legt auf {sp1} ab, der nur noch einschieben muss.

Das sollte man ändern weil das ist doch eher nie der Fall das der Torwart mit nach vorne Stürmt wo es noch 0:0 steht und man gerade die 6 Spielminute im Spiel hat.

ghost commented 9 years ago

Überprüfe bitte noch mal genauer, ob wie du schreibst, dies wirklich sehr oft ist. Dies wurde schon in der Version 4.2.0 geändert. "- Der Torwart wird nun noch seltener Vorlagengeber."

Oder der Gegner setzt den Torwart zum Freistoß ein, denn dann wäre es richtig. Bei meiner Simulation macht der Torwart wirklich selten Torvorlagen.

Wie spielt der Gegner ? Defensiv mit Konter ? Und wie hoch ist die Offensivität und Anzahl der Torschüsse eingestellt ? Hat der Gegner nur 3 Abwehrspieler ?

Es kann also auch an der Spielweise liegen. Der Torwart stürmt ja nicht nach Vorn, wie du es vermutest, sondern spielt den Ball einfach nach vorn.

teamchef commented 9 years ago

Also bisher an jedem Spieltag einmal wo ein Torwart ein Tor vorbereitet in welcher Datei kann man das denn einstellen das das noch geringer ist als es aktuell ist

ghost commented 9 years ago

DefaultSimulationsStrategy.class.php:

// goalies can only pass the ball if ($player->position == PLAYER_POSITION_GOALY) { return 'passBall'; }

Der Torwart kann also nur Pässe spielen.

Weiter unten bei passball: // probability of failure increases if long passes are activated if ($player->team->longPasses) { $pFailed[FALSE] = round($pFailed[FALSE] * 0.7); } Hier wird die Wahrscheinlichkeit, das der lange Pass ankommt geregelt. Da würde ich Schritt für Schritt die 0,7 ändern.

Die andere Möglichkeit könnte dies minimieren, wenn man dem Torwart auch eine Schussstärke geben würde, was dann aber erst einer programmieren müsste.

teamchef commented 9 years ago

Mal eine dumme frage wenn ich die 0.7 auf 0.0 ändere dann dürfte der ja eigentlich nicht mehr passen dürfen oder ????

ghost commented 9 years ago

if ($player->position == PLAYER_POSITION_GOALY && $player->team->longPasses) { $pFailed[FALSE] = round($pFailed[FALSE] * 0.1); } if ($player->team->longPasses) { $pFailed[FALSE] = round($pFailed[FALSE] * 0.7); }

Ich weis nicht ob das so funktioniert, aber die Richtung müsste stimmen, denn sonst mach kein Spieler mehr lange Pässe. 0,0 macht bestimmt einen Div-Error.