Bocce (12th MakeCode Arcade "Sports" Game Jam submission)

A very basic implementation of Bocce played on a beach. (Whenever I go to the beach, I play this with my family, and navigating the tide pools is always very fun) This is my submission to the 12th MakeCode Arcade Game Jam (the “Sports” game jam).

It uses a custom physics engine to handle friction, semi-elastic collisions, and more, representing the entire game state as a 2D number array. An AI bot of varying difficulty uses the physics engine to simulate many possibilities in order to pick a good throw (most of the time, there are some problems to iron out). This project was finished over four days (the semester only very recently finished!) and has 2613 blocks, and although I wish I could have added more features or bug-tested it more, I’m happy with what I created in such a short time span. Enjoy!

Controls:

  • Menu controls:
    • U/D for navigation
    • A to select or toggle ([T] or [F] designates togglable options).
    • B for “back” or “cancel” when the option is available.
  • All other controls are shown in-game.

As of v0.1.0, these are the options available in the main menu:

  • Set red team
  • Set green team
    • Human on P1 controls → humans using the player 1 controls (ex. both red and green could be set to this, and two people in person can pass the keyboard back and forth)
    • AI level 1 through 3 → higher levels = more thinking = theoretically more accurate
    • So, to play against the bot going first, assign the red team to humans on P1 control and assign the green team to the AI. If you are playing locally against someone else and can pass the keyboard, assign both to humans on P1 control. If you are bored, you can assign both red and green teams to the AI and see which one wins.
  • Set end-of-game condition
    • Only option available is to end after one round (no options to play to 11 or 13 points, etc., are available, unfortunately)
  • Simulation settings
    • Enable/disable simulations during human throws → Allows you to see what would happen while you are aiming. This is enabled by default; you may want to disable it.
    • Enable/disable seeing simulations during AI thinking → Allows you to see the simulations the AI is performing. This is enabled by default.

Additional notes:

  • Red team goes first (not typical for regular Bocce rules).
  • There is no sound.
  • There is no multiplayer support (P2/P3/P4 controls don’t do anything) unfortunately.
  • Expect bugs and other peculiarities due to the development pace, please report if you find any!

Code is on GitHub:

4 Likes