PLO Planspill Build 1.0.2902

Dette er en intern build, ikke publisert. vi jobber frem mot lansering av første klient/server beta. Dette er første build som har en fungerende servermodul.

Følgende nøkkelpunkt er  implementert:

  • Proof of concept klient/server arkitektur
  • .Net Remoting med callback sink. Takk til The Code Project og marcel heeremans for eksempelkode. (http://www.codeproject.com/KB/IP/TwoWayRemoting.aspx)
  • Overføring av tekstbeskjeder begge veier er testet på lokalmaskin, nettverkstest er det neste.
  • Namespace er endret og satt opp hierarkisk (En helsikes jobb. Never refactor the namespace without taking a complete project backup first. EVER!)
  • Siden .Net remoting trengte et felles namespace for klient og server er TimeStamp og FUBARException klassene også flyttet ut dit.

Og med dette har vi nådd de to første milepelene i server Roadmap.

PLO Planspill build 1.0.2877

  • Lager oversiktsvindu
  • Små endringer i database, versjon 2.1
  • Laget Add Action vindu for å legge inn actions på et lag.
  • Action håndtering påbegynt, så langt slettes de bare fra lista når de håndteres
  • Endring/Sletting er muliggjort i lag og kologg. Endringer er mulig i Aksjonslogg, men ikke sletting.
  • Laget knapp for nullstilling av lag, dvs lagleder, status og oppdrag nullstilles. Logg beholdes.
  • Laget knapp for nullstilling av felter i lag-tab. Angrer endringer som er rosa og laster gjeldende data fra basen.

PLO Planspill build 1.0.2875

Endringer i dag:

  • Visuell cleanup, ordnet noen småbugs i gui. Mye klur…
  • Lagt til spilltid ticker i statuslinje, oppdaters hvert 10 sek.
  • Startet på ombygging av lag-vinduet
  • Lagt til mulighet for fritekstlogg på lag
  • Lagt til nye knapper på lag. Ikke kodet.

Build 1.0.2873.2303

Programmet kjører igjen! Det er langt fra ferdig omskrevet dog, men det starter iallefall.

Følgende er gjort i dagens build:

  • Nullstilling av database fungerer
  • Startet på omskriving av lag taben
  • Skrevet om timestamp klassen for sentral objektorientert håndtering av tidsforskjell/spilltid
  • Fullført omskriving for oledb slik at programmet starter og designmiljøet fungerer igjen. Dette måtte hackes i xsd filen til datasettene (provider). Det er visst meningen at man skal lage programmet på nytt fra bunn omtrent om man skal bytte datakildetype…

Det går fremover. Omskrivingen virker ikke så altomfattende som den gjorde før.

Første fase av overgangen til sql server express fullført.

Dagens build: 1.0.2871.42194

Ting som er endret:

  •  Datastruktur er låst for endringer, kun bugfix tillates inntil videre
  • DBTools er omskrevet til bruk av oledb
  • frmDBSettings er hentet inn fra spillarkivet. Dette er en del av den kommende serverfunksjonen.
  • program.cs er endret for å ta i bruk oledb

Gjeldende versjon kjører ikke, derfor ingen download. En god del koding gjenstår før en ny beta kan slippes.

Datamodell i endring

Fortsatte arbeidet på datamodellen i dag. Har begynt å skrive om en del kode til oledb. Denne datatilkoblingen benyttes pga kompatibilitet med CrystalReports, som jeg sålangt bare har fått til å virke med den type datakobling.

Det er klassen DBTools som har fått gjennomgå sålangt.

SQL script for database

drop table Actions;
drop table Logs;
drop table Teams;
Create table Teams(
	ID int not null,
	TName nvarchar(12) not null,
	TLeader nvarchar(40),
	TStatus nvarchar(100),
	TMission nvarchar(400),
	Constraint TeamPK Primary Key (ID)
);

create table Logs(
	ID int identity(1,1) not null,
	TeamID int,
	TimeLogged int,
	Msg nvarchar(1000),
	Constraint LogsPK Primary Key (ID),
	Constraint FKTeam Foreign Key (TeamID) references Teams (ID) On delete set null
);

create table Actions(
	ID int identity(1,1) not null,
	TeamID int,
	ActionTime int,
	ActionMsg nvarchar(100),
	Constraint ActionPK Primary Key (ID),
	Constraint FKAction Foreign Key (TeamID) references Teams (ID) On delete set null
);