EDIT: I see this is already being discussed here: Seeker Missile Order
Currently using game engine 1.1.1.
When using the seeker missile, I was under the impression that seeking would only seek un-hit cells, but after seeing a replay where the seeker went and targeted an already hit cell I checked the game engine code.
In 2017-Battleships\GameEngine\Battleships\GameEngine\Commands\PlayerCommands\FireSeekerMissleCommand.cs inside PerformCommand the code reads :
var occupiedCells = opponentsMap.Cells.Where(cell => cell.Occupied).ToList();
I think the code should exclude already hit cells with the following addition in bold:
var occupiedCells = opponentsMap.Cells.Where(cell => cell.Occupied && !cell.Hit).ToList();
This would allow one to target a cell between two ships, hitting one ship, and when targeting the same cell a second time, hitting the other ship and not the same cell that is already hit.
What do you guys think?
As discussed before this will not be changed for the current tournament, however it might be changed for the final tournament, along with extra features of course
Cool, Will keep this in mind.
I also found that the seeker missile hit a already sunken ship instead of the undiscovered ship that is in range.
I still think this is intended, and also a good thing. Makes you consider your seeker shot a little more carefully before firing.
If it is intended, shouldnt it be documented somewhere officially?
Fire Seeker Missile - Finds the nearst ship with an eclidian distance of 2 units or less away, given a center location
It doesn’t say that sunken ships are ignored. Although I can understand the logic IRL for this seeker to not shoot at a sunken ship. The engine needs to specifically exclude a ship when it is sunk. Should it also ignore a damaged square if it is closer than an undamaged one of the same ship? I’m sure these are things they will consider for the next battle, but as it is now I found it’s best to test shot yourself and roll with how the engine works, then make adjustments if/when they happen.
For the next release I have decided that the seeker missile will now ignore hit cells, which means that sunken ships will also be ignored in the search. However the seeker missile will now cost an extra 2 rounds before it can be used. Stay tuned for updates.
Seems like a sensible (real-world-like) way of doing it would be that the missile would hit squares that have been hit but not sunk, but not hit sunk ships. After all, if part of a ship is hit, it is still floating (for now at least), whereas if a ship is sunk, it is at the bottom of the sea!
Awesome! Cant wait for the new rules. Waiting for the tournament to conclude is torture!