Download presentation
Presentation is loading. Please wait.
1
Mike Burnham CS 470 Final Presentation
Java Carcassonne Mike Burnham CS 470 Final Presentation
2
Carcassonne Tile based table top game.
Players take turns placing landscape tiles and claiming features with tokens.
3
Scoring Points are scored for completing claimed landscape features
Cities Roads Cloisters Farms scored at end of game based on bordering cities.
4
Interface
5
Initial Design Landscape as graph, with tiles as nodes.
Store hash of tiles keyed on coordinates. Stack of tile objects will be randomized at game start. List of tokens for each player, referencing the tiles they occupy.
6
Final Design TileFeatures as nodes in graph.
Tiles only used in coordinate hash. Tile stores array of TileFeatures representing its borders, and hash of TileFeatures keyed on color codes.
7
Data Files Each tile has two parts Two Image files Tile description
Artistic representation of the tile. Feature map with unique color for each feature. Tile description A single txt file for entire tile set. Encodes features of each tile for initializing tile objects.
8
Tile data tileL count 3 farm 24 23 1000000000010 0x000000
road x111111 farm x x333333 city x333333 road x444444 farm x555555 road x666666
9
Landscape example
10
Landscape example
11
One Turn Each turn is a three stage process. Tile placement
Check for legal placement. Token placement Check for legal token placement (if attempted). Score any features completed.
12
Algorithms Checking token placement Scoring
Both fairly simple with final design. Most feature graphs are small. Recursively turn graph into list, iterate list.
13
Domain Model
14
Schedule Had planned for three iterations
Game model Interface Network play and/or AI Currently about halfway through interface work.
15
Conclusion Created a Java version of Carcassonne.
Largest program I’ve written so far. More design time might have saved many revisions.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.