TableTop Tracker application screenshot

TableTop Tracker

TableTop Tracker is a Unity application designed for Warhammer 40k to help tabletop gamers organize and track their gaming sessions.

Technologies Used

TableTop Tracker interface
TableTop Tracker screenshot 1
TableTop Tracker screenshot 2
Demonstration showing core features
Logo for the application
Name input page
Main page showing score tracking

Having trouble loading the game? Play directly on Itch.io

Challenges Faced

During development, I encountered several technical and design challenges that tested my problem-solving skills and pushed me to learn new concepts.

💾

Player prefs issues

I struggled to get the names to save correctly using PlayerPrefs. Hence they would not display correctly on the main page. I had to debug the PlayerPrefs to ensure it was saving and loading the names correctly.

⚖️

Game Rules Implementation

I had to implement a system to enforce the game rules, such as turn counter and score maximums and implement ways to prevent players going above or below these limits.

Reflections

🛠️

Appropriate language use

Using unity is what i was most comfortable with, but I could have used other languages or frameworks to achieve the same result. I should have considered using Flutter(Dart) or a C# Framework for a more robust solution.

📋

A Proper Plan

I should have created a more detailed plan and requirements before starting the project. This would have helped me to stay on track and avoid scope creep and would allow me to add more game rules and features as it proggressed.

🖌️

User Experience Design

The interface could have been more intuitive with better visual feedback. Adding clear indicators for turn progression, score limits, and input validation would greatly improve the user experience.

🏗️

Code Architecture

Implementing a more modular architecture with separate classes for game rules, player management, and UI would have made the code more maintainable and easier to extend with new features. As my current script is a bit of a monolith and could be broken down into smaller, more manageable components.

💽

Data Persistence Strategy

Using PlayerPrefs was a quick solution, but implementing a more robust data persistence system (JSON files) would have provided better data management and backup capabilities.

🔬

Testing and Validation

I should have implemented more comprehensive testing, especially for edge cases like maximum scores, turn limits, and invalid inputs to ensure the application behaves correctly in all scenarios.

Future Improvements

If I was to revisit this project, I would rebuild it from the ground up using a more robust framework like Flutter or a C# desktop framework to allow for better cross-platform deployment. Key improvements would include: implementing persistent data storage; designing a more intuitive UI; adding support for multiple game types beyond Warhammer 40k with customizable rule sets; integrating syncing so each user can have their own instance;