This commit is contained in:
Kristian Knarvik 2020-02-27 18:36:27 +01:00
commit 2ec9da5396

View File

@ -6,22 +6,22 @@
### Tobias ### Tobias
#### Kommunikasjonsleder #### Kommunikasjonsleder
##### Har ansvar for å organisere gruppe møte og par programering møter ##### Har ansvar for å organisere gruppemøter og parprogrameringsmøter
* Rollen innebærer å finn ut hvilken dager folk kan møte og om vi burde møte i person eller ha møte digitalt på discord. * Rollen innebærer å finne ut hvilke dager folk kan møte og om vi burde møte i person eller utføre møtee digitalt på discord
* Jeg får også beskjed om noen er syk slik at gruppen kan ta det i betraktning under møte. * Jeg får også beskjed om noen er syke slik at gruppen kan ta det i betraktning under et møte.
### Kristian ### Kristian
#### Teamleder #### Teamleder
##### Ansvarlig for å vite hva alle gjør og burde gjøre til enhver tid ##### Ansvarlig for å vite hva alle gjør og burde gjøre til enhver tid
* Har holdet stry på projektboardet. * Har holdt styr på prosjekt-tavlen.
* Har hatt kontroll over hvem som skal gjøre hvilken av oppgavene på prosjekttavlen. * Har hatt kontroll over hvem som skal gjøre hvilken av oppgavene på prosjekttavlen.
* Har kontrolert kvaliteten på andres arbeid. * Har kontrollert kvaliteten på andres arbeid.
### Steinar ### Steinar
#### Møteorganisator #### Møteorganisator
##### Ansvarlig for å organisere hva som skal gjennomgås på de avtalte møtene ##### Ansvarlig for å organisere hva som skal gjennomgås på de avtalte møtene
* Kommer med en liten plan for hva vi skal snakke om på møtene. * Kommer med en liten plan for hva vi skal snakke om på møtene.
* Kontrolerer at møte holdes innenfor agendaen. * Kontrollerer at møter holdes innenfor agendaen.
### Gabriel ### Gabriel
#### Kundekontakt #### Kundekontakt
@ -31,10 +31,10 @@
### Torbjørn ### Torbjørn
#### Dokumentasjonsansvarlig #### Dokumentasjonsansvarlig
##### Dokumenterer møtene og sørger for at innleveringene er riktig ##### Dokumenterer møtene og sørger for at innleveringene er riktige
* Sørger for at referater blir skrevet i forbindelse med møter. * Sørger for at et referat blir skrevet for hvert møte.
* Har ansvar for at dokumentasjon i og utenfor kode er god nok. * Har ansvar for at dokumentasjon i og utenfor kode er god nok.
* Ser over rettskrivning og fikser markdown issues. * Ser over rettskrivning og fikser markdown feil.
### Videre med deloppgave 1 ### Videre med deloppgave 1
* Teamet fungerer fint og oppsettet vi har valgt fungerer fint for oss for tiden. * Teamet fungerer fint og oppsettet vi har valgt fungerer fint for oss for tiden.
@ -45,22 +45,21 @@
* Kan bli bedre til å ta initiativet med å begynne på oppgaver. * Kan bli bedre til å ta initiativet med å begynne på oppgaver.
* Vi synes det var en god idea å planlegge klasse strukturne felles i et gruppe rom. Det gav alle en god oversikt over * Vi synes det var en god idea å planlegge klassestrukturene felles i et grupperom. Det gav alle en god oversikt over hva de forskjellige klassen måtte inneholde.
hva de forskjellige klassen måtte inneholde.
* Vi har brukt parprogramering som har gjordt at commitsene har blitt veldig forskjøvet. * Vi har brukt parprogramering som har gjort at commits har blitt en del forskjøvet.
* En del har blitt diskuter i gruppe der bare en har gjort alle notatene. * En del har blitt diskutert i gruppen der en har gjort alle notater.
### forbedringpunkter ### Forbedringpunkter
* Jevnere commits fra alle på laget * Jevnere commits fra alle på laget
* Bli bedre på brukerhistorier * Bli bedre på brukerhistorier
## Deloppgave 2 ## Deloppgave 2
### Krav ### Krav
1. En spiller som kan bevege seg på brettet. 1. En robot som kan bevege seg på brettet.
2. Forskjellige funksjonelle objekter/ruter på kartet (eks. vegg, laser). 2. Forskjellige funksjonelle objekter/ruter på kartet (eks. hull, vegg).
3. Roboter dør hvis de går utenfor spillbrettet eller faller i et hull. 3. Roboter dør hvis de går utenfor spillbrettet eller faller i et hull.
4. Roboter må kunne dytte hverandre. 4. Roboter må kunne dytte hverandre.
5. Roboten trenger å kunne ta skade. 5. Roboten trenger å kunne ta skade.
@ -70,32 +69,32 @@
#### Brukerhistorier for krav 1 #### Brukerhistorier for krav 1
*Brukerhistorie* *Brukerhistorie*
* Som robot trenger jeg posisjon for å ha kontroll på hvor jeg er og hvor jeg skal. * Som robot trenger jeg posisjon en for å ha kontroll på hvor jeg er og hvor jeg skal.
*Akseptansekrav* *Akseptansekrav*
* Vi har en klasse som lagrer en posisjon for alle roboter på brettet. * Vi har en klasse som lagrer en posisjon for en robot på brettet..
* Posisjoner består av x og y koordinater. * Posisjoner består av x og y koordinater.
* Roboten lagrer en instanse av positions klassen. * Roboten lagrer en instans av positions klassen.
*Brukerhistorie* *Brukerhistorie*
* Som spiller trenger jeg en robot for å kunne spille spillet. * Som spiller trenger jeg en robot for å kunne spille spillet.
*Akseptansekrav* *Akseptansekrav*
* Vi har en reprensentasjon av en robot. som kan bli plaseret på brettet og flyttet på. * Vi har en representasjon av en robot, som kan bli plassert på brettet og flyttet på.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Lag en klasse som representer en position. * Lage en klasse som representer en posisjon.
* Roboten må inneholde en position. * Roboten må inneholde en posisjon.
* Lag en klasse som representerer en robot. * Lage en klasse som representerer en robot.
#### Brukerhistorier for krav 2 #### Brukerhistorier for krav 2
*Brukerhistorie* *Brukerhistorie*
* Som brett må jeg kunne ha forskjellige tiles for å kunne vise alle aspektene av spillet. * Som brett må jeg kunne ha forskjellige tiles for å kunne vise alle aspektene ved spillet.
*Akseptansekrav* *Akseptansekrav*
* Å kunne plassere en type tile på brettet. * Å kunne plassere en type tile på brettet.
* Brette må kunne vite hvilken tile som er på en bestemt position. * Brettet må kunne vite hvilken tile som er på en bestemt position.
*Brukerhistorie* *Brukerhistorie*
* Som vegg må jeg kunne stoppe en robot fra å gå gjennom meg for å hindre den i å gjøre et ugyldig trekk. * Som vegg må jeg kunne stoppe en robot fra å gå gjennom meg for å hindre den i å gjøre et ugyldig trekk.
@ -105,83 +104,81 @@
*Akseptansekrav* *Akseptansekrav*
* En robot som prøver å gå gjennom en vegg blir stoppet. * En robot som prøver å gå gjennom en vegg blir stoppet.
* Kunne plassere vegger i forskjelige retninger. * Kunne plassere vegger i ulike retninger.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Lag en representasjon av en vegg. * Lage en representasjon av en vegg.
* Endre bevegelsesmetoden til roboten slik at den følger funksjonaliteten til vegger. * Endre bevegelsesmetoden til roboten slik at den følger funksjonaliteten til vegger.
* Kunne plassere veggen i forskjellige retninger. * Kunne plassere veggen i forskjellige retninger.
* Legg til en representasjon av et hull. * Legge til en representasjon av et hull.
* Lag en representasjon av en tile. * Lage en representasjon av en tile.
* Legg til en metode i brettet som forteller oss hvilken tile som er i en bestemt posisjon. * Legge til en metode i brettet som forteller oss hvilken tile som er i en bestemt posisjon.
* Legg til en måte for å kunne lage et brett med forskjellige tiles i spesifikke posisjoner. * Legge til en måte for å kunne lage et brett med forskjellige tiles i spesifikke posisjoner.
#### Brukerhistorier for krav 3 #### Brukerhistorier for krav 3
*Brukerhistorie* *Brukerhistorie*
* Som spiller må roboten min kunne dø, for å håntere om roboten tar for mye skade eller går i et hull/av kartet. * Som spiller må roboten min kunne dø, for å håndtere om roboten tar for mye skade eller går i et hull/ut av kartet.
*Akseptansekrav* *Akseptansekrav*
* Roboten mister et liv hvis den går i et hull eller av brettet. * Roboten mister et liv hvis den går i et hull eller av brettet.
* Roboten blir fjernet fra brettet. * Roboten blir fjernet fra brettet.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Legg til en metdoe som fjerner liv fra roboten. * Legge til en metode som fjerner liv fra roboten.
* Legg til en metode som fjerner en robot fra brettet. * Legge til en metode som fjerner en robot fra brettet.
* Legg til en metode som sjekker positionen til roboten for å se om den er gått i et hull eller om den har gått * Legge til en metode som sjekker posisjonen til roboten for å se om den er gått i et hull eller om den har gått utenfor brettet.
utenfor brettet.
#### Brukerhistorier for krav 4 #### Brukerhistorier for krav 4
*Brukerhistorie* *Brukerhistorie*
* Som robot må jeg kunne dytte en annen robot hvis det er lovlig å dytte roboten, for å kunne gjøre et gyldig trekk. * Som robot må jeg kunne dytte en annen robot hvis det er lovlig å dytte roboten, for å kunne gjøre et gyldig trekk.
*Akseptansekrav* *Akseptansekrav*
* Hvis en robot beveger seg til en position hvor det er en annen robot vil den andre roboten bli dyttet så lenge den * Hvis en robot beveger seg til en posisjon hvor det er en annen robot, vil den andre roboten bli dyttet så lenge den kan bli dyttet.
kan bli dyttet.
* Hvis den andre roboten blir blokkert av en vegg så kan den ikke bli dyttet og ingen av robotene flytter på seg. * Hvis den andre roboten blir blokkert av en vegg så kan den ikke bli dyttet og ingen av robotene flytter på seg.
* Hvis det er flere roboter på rekke så gitt at det ikke er noen vegg som stopper de blir alle robotene flyttet. * Hvis det er flere roboter på rekke, gitt at det ikke er noen vegg som stopper de, blir alle robotene flyttet.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Legg til funksjonalitet for å sjekke om det er en annen robot i veien. * Legge til funksjonalitet for å sjekke om det er en annen robot i veien.
* Legg til funksjonalitet for å sjekke om den andre roboten kan bli dyttet i retningen den første roboten peker. * Legge til funksjonalitet for å sjekke om den andre roboten kan bli dyttet i retningen den første roboten peker.
* Legg til funksjonalitet for å dytte roboter. * Legge til funksjonalitet for å dytte roboter.
#### Brukerhistorier for krav 5 #### Brukerhistorier for krav 5
*Brukerhistorie* *Brukerhistorie*
* Som spiller må roboten min kunne ta skade, for å håntere påvirkning fra objekter som avgir skade til roboter. * Som spiller må roboten min kunne ta skade, for å håndtere påvirkning fra objekter som avgir skade til roboter.
*Akseptansekrav* *Akseptansekrav*
* Roboten sin skadeverdi blir økt hvis den tar skade. * Roboten sin skadeverdi blir økt hvis den tar skade.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Legg til en skadeverdi i roboten som holder styr på mengden skade roboten har. * Legge til en skadeverdi i roboten som holder styr på mengden skade roboten har.
* Legg til en metode for å sette skaden til roboten. * Legge til en metode for å sette skaden til roboten.
* Legg til en metode for å hente ut skaden til roboten. * Legge til en metode for å hente ut skaden til roboten.
#### Brukerhistorier for krav 6 #### Brukerhistorier for krav 6
*Brukerhistorie* *Brukerhistorie*
* Som spiller trenger roboten min liv for å kunne tape. * Som spiller trenger roboten min liv for å kunne tape.
*Akseptansekrav* *Akseptansekrav*
* Roboten har en verdi som reprensenterer mengden liv den har. * Roboten har en verdi som representerer mengden liv den har.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Legg til en livverdi i robot klassen. * Legge til en liv-verdi i robot klassen.
#### Brukerhistorier for krav 7 #### Brukerhistorier for krav 7
*Brukerhistorie* *Brukerhistorie*
* Som spiller må roboten min kunne gjennopstå om den har flere liv, for å kunne spille videre. * Som spiller må roboten min kunne gjennoppstå om den har flere liv, for å kunne spille videre.
*Akseptansekrav* *Akseptansekrav*
* En dø robot gjennoppstår i en backup posisjon om den har flere liv. * En død robot gjennoppstår i en backup-posisjon om den har flere liv.
* Roboten har 2 i skade etter den gjennoppstår. * Roboten har 2 i skade etter den gjennoppstår.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Lag en metode som respawner en robot i en backup posisjon og som setter skaden til roboten til 2. * Lage en metode som gjenoppliver en robot i en backup-posisjon og som setter skaden til roboten til 2.
#### Brukerhistorier for krav 8 #### Brukerhistorier for krav 8
*Brukerhistorie* *Brukerhistorie*
@ -191,30 +188,30 @@
* Det er en forsinkelse mellom hver handlig som skjer i spillet slik at vi kan følge med på hva som skjer. * Det er en forsinkelse mellom hver handlig som skjer i spillet slik at vi kan følge med på hva som skjer.
*Arbeidsoppgaver* *Arbeidsoppgaver*
* Legg til en forsinkelse mellom hver handling * Legge til en forsinkelse mellom hver handling
* Sørg for at forsinkelsen ikke kræsjer spillet. * Sørge for at forsinkelsen ikke kræsjer spillet.
### Vidre med del 2 ### Vidre med del 2
* Vi har prioritert å lage spillet fra bunnen av og opp siden noen deler av spillet er avhenger andre. * Vi har prioritert å lage spillet fra bunnen av og opp siden noen deler av spillet avhenger andre.
*Hovedkrav til MVP* *Hovedkrav til MVP*
* Alle de syv første kravene føler vi er en del av MVP, mens krav 8: Vise hendelser som skjer på skjermen med en * Vi føler at alle de syv første kravene er en del av MVP, mens krav 8: Vise hendelser som skjer på skjermen med en
forsinkelse slik at spilleren ser bevegelsene i spillet, ikke er nødvendig for at spillet skal fungere. forsinkelse slik at spilleren ser bevegelsene i spillet, ikke er nødvendig for at spillet skal fungere.
* Vi har fulgt prioritering av kravene i MVP, men også implementert noen "nice to have" som vi synes er viktig for * Vi har fulgt prioritering av kravene i MVP, men også implementert noen "nice to have" som vi synes er viktig for
spilleropplevelsen. spilleropplevelsen.
* Siden sist har vi jobbet mer på brett og spilleren og jobbet med krav 1-7. * Siden sist har vi jobbet mer på brett og spilleren, og jobbet med krav 1-7.
* For å se spesifike oppgaver som er gjort, sjekk prosjekttavlen på github. * For å se spesifikke oppgaver som er gjort, sjekk prosjekttavlen på github.
* Vi vet ikke om noen bugs i koden. Alle kjente bugs har blitt fikset underveis. * Vi vet ikke om noen bugs i koden. Alle kjente bugs har blitt fikset underveis.
*Kjøredetaljer* *Kjøredetaljer*
* Siden vi ikke er ferdig med spillet, blir det nå i stedet kjørt en automatisk demo når main kjøres. * Siden vi ikke er ferdig med spillet, blir det nå i stedet kjørt en automatisk demo når main kjøres.
* Demoen demonstrerer funskjonalitet ved flytting av roboter. * Demoen demonstrerer at roboter kan skyve hverandre, bli stoppet av vegger, falle i hull og dø av å gå utenfor brettet.
## UML ## UML
![UML](../Deliverables/Umls/UmlOblig2.png "UML Oblig 2") ![UML](../Deliverables/Umls/UmlOblig2.png "UML Oblig 2")