A complete ASP.NET Core team assignment behind a modest interface
SeaBattle
A web version of Battleship built by a team of four, with accounts, game data, bomb results, persistent logs, roles and management features.
Full-stack development within the team
- C#
- ASP.NET Core MVC
- Entity Framework Core
- ASP.NET Identity
- SQL
- Context
- UCLL team assignment
- Team
- Team of four
- My role
- Full-stack development within the team
- Stack
- C#, ASP.NET Core MVC, Entity Framework Core, Identity and SQL
- Experience
- Accounts, game state, logs, roles and administration
Project and context
SeaBattle was a school assignment completed by a team of four in which technical completeness mattered more than visual refinement. As a team, we translated the game into controllers, models, views and persistent data.
Game actions become persistent data
A bomb action connects a player, coordinate, game and result. The application stores every action so a game can be inspected later and the remaining-ship count stays accurate.
Traceable game history
Persistent logs show who played, which coordinates were used, the result and when the action happened. This made the game rules and data flow traceable during development.
My role
My role was full-stack development within the four-person team. Because the exact feature allocation of this older project can no longer be fully reconstructed, I do not claim individual ownership of specific parts. This case therefore presents the shared technical result and my contribution within the ASP.NET Core stack.
Main challenge
The difficulty was maintaining correct relationships between users, games, ships, locations and actions. Administrative pages and roles also had to remain protected without losing sight of the game data.
Result
The interface is simple, but the application is functional and complete within the assignment. SeaBattle mainly shows that I can contribute within a team to a server-side application with authentication, persistence and domain logic.