We have just released a new version of the Angry Birds Game Playing software that includes some improvements and some bug fixes.
Please read the list of changes below very carefully as this might affect your existing code!
I hope all is going well with the preparations for the competition. Please remember that the early registration deadline is June 30.
Here is a list of the major changes, for details, please see ABDoc.pdf or ServerClientProtocol.pdf under the ./doc folder.
================= Server client protocol changes since the IJCAI version ================
The signal byte of the termination is changed from “2” to “-1” (see section Termination in /doc/ServerClientProtocol.pdf)
A few commands are added to the server software (see section Run the Server in /doc/ServerClientProtocol.pdf)
================ Software Changes Since abV1.31 ====================================
1. The RealShape segmentation can now distinguish between hollow and solid objects (see ABDoc.pdf section Object Representation)
2. Better triangle recognition: Triangles are treated as Polygon.java while the previous version often mis-detects the triangles as circle.
3. Add findHills() in Vision.java (in the previous version, the hill is returned by the method findBlocksRealShape()).
4. Add findTNTs() in Vision.java (in the previous version, you need to call VisionMBR.findTNTs() to get all the TNTs)
5. In Rect.java, the attributes PreciseWidth and PreciseHeight are changed to plength and pwidth, respectively. The corresponding methods are also changed accordingly.
6. The method estimateLaunchPoint (see /src/ab/planner/TrajectoryPlanner.java) now returns empty list of release points when no plausible trajectories found for that target, and in this case, the sample agent will make a 45 degree shot.
7. The isReachable method (see /src/ab/utils/ABUtil) now returns true (reachable) when a trajectory can reach the target without obstruction. Previously, the method only checks the obstruction by assuming the input trajectory always passes the target.
8. Bug Fixes:
8.1 Fix the bug that the method findBirdsRealShape() always returns unknown birds.
8.2 Fix the bug in build.xml where the main-class was set to "ClientNaiveAgent.java" (should be "MainEntry.java")
8.3 Fix the bug that the method findBlocksRealShape() returns Pigs. (Now the method returns Wood, Stone, and Ice)