Build a Catan Game Board
Catan is a role playing strategy game I had not heard of before. A forum user asked how to recreate the game using AppInventor. The Power Users all got quite excited about creating groups of hexagons (?) on a canvas, but for me the solution was about a fairly long slog at creating all the assets, adding over 40 image sprites, and then randomising the positioning of the assets on the sprites. I did this for fun, and to experiment with the canvas and image sprites. The images should not really be used in production in case of copyright concerns.
What was needed:
- I used the classic theme, a fixed screen and a canvas height of 300 pixels, with width of 494 pixels
- The demo I have created may work better on a tablet, or newer high resolution phone
- I used Inkscape to "cut out" the board surrounding pieces (the sea and ports), and the resource hexagons
- I also used Inkscape to make the counter buttons (I could have made them at a higher resolution!)
- The canvas needed to be much wider than the screen, in order to allow for the image sprites to be "rotated" into position
- Each Image Sprite has a different Z order, e.g 1,2,3... This allows the rectangular shapes of the image assets to overlay each other for alignment. The Z orders are set in the Designer
- It was then simply a matter for each set of elements (Outer Board / Hexagons / Counters) in generating component and image lists, randomising the selection of images to assign to the sprites, and getting the positioning correct for each sprite.
- I needed to keep track of which sprite had the "Desert" image assigned to it, because this did not get a counter (having followed the game setup instructions on the Catan website)
- The mathematics were not completely precise for the positioning, hence I used the long hand version of setting the X and Y for each sprite.
What still needs doing:
- In essence, programming the rest of the game !
Anyway, here is the app in action: