Kurs från 2020-03-03 till 2020-04-15
I detta projekt ska ni implementera ett fia spel (Ludo på engelska), gärna med knuff. Spelet ska vara en .net core konsol applikation.
Det ska gå att spela spelet via en konsol applikation, två till fyra spelare vid samma dator.
Koden ska vara uppdelat i en konsol applikation och en class librarary som innehåller all logik, låt oss kalla det vår spelmotor / game engine.
Spelet ska spara i en databas (med code first och Entity Framework), så att det går att ta fram historik på alla tidigare spel. Om applikationen skulle stängas ner, ska det gå att komma tillbaka in i spelet.
Kod ska ligga i mappen Source, varje team får enbart ha en kodbas!!
Se till att skåpa unit tests för spelet.
Spelmotorn styra alla regler i spelet och kollar t.ex. om en spelpjäs får flyttas, om en spelar har vunnit, den initiala uppställning av alla spelpjäser på brädet, vilken spelar som är den nästa, hur en tärning ska bete sig, etc.
Implementera spelmotorn i ett separat klass bibliotek.
En instans av spelmotorn innehåller staten av ett helt spel, det skall vara möjligt att initialisera spelet med en given state, t.ek. om ska kunna spara och inläsa ett spel.
Skriv user stories (i docs mappen), och starta inte koda något innan in har skrivet minst 3 user stories, men helst så det täcker hela fia spelet, men se hela tiden till att lägga till fler user stories.
Om ni använder någon externa källor (båda kod och annat) ange dom i dokumentationen.
Dokumentation ska skrivas med markdown (.md), ni väljer själv om ni vill skriva på svenska eller engelska, markdown filerna placeras i docs mappen.
Detta projekt är avslutande och bär störste delen av ert betyg för denna kurs.
Tillsammans med projektet ska skåpas en video som beskriver projektet.
Ni kan göra så många branches baserat på master som ni önskar. När projektet är slut är det innehållet av master på ert GitHub-repo som räknas.
Dom fyra element som är markerat med viktigt är så klart dom som är viktigast i samband med bedömningen. Och det är det som ni ska fokusera på i eran video presentation.
Tänka inte visuellt/grafisk när ni gör eran datamodell!
Där er ingen krav på verken Async eller fluent api, det viktigaste är att data sparas i en databas, att koden är testat med automatiserade test och att koden är lätt läst.
Gör en dagbok (journal / log) varje dag, också om ni gör något själv på en kväll, så att ni har koll på processen, och kan dokumentera den. Förslag gör det som markdown-dokument i Dokumentation-mappen.