CS108 Bootcamp Eyeballs
Click here to load reader
-
Upload
fginformatik-universitaet-basel -
Category
Self Improvement
-
view
214 -
download
0
Transcript of CS108 Bootcamp Eyeballs
cs108 Programmieren II
BOOTCAMPEyeballs
Programmieren II (cs108) - Bootcamp 2
EinführungSpielidee: Jump'n'Run mit „Capture the Flag“-Elementen, 2 TeamsSpielidee: Jump'n'Run mit „Capture the Flag“-Elementen, 2 Teams
c
Programmieren II (cs108) - Bootcamp 3
Programmieren II (cs108) - Bootcamp 4
Programmieren II (cs108) - Bootcamp 5
Einführung
Aufteilung in:Aufteilung in:
zeitkritische (redundante) Datenzeitkritische (redundante) Daten
➢ EingabedatenEingabedaten➢ SpieldatenSpieldaten
➢ Spielerposition/StatusSpielerposition/Status➢ PunktestandPunktestand
zeitunkritische (und singuläre) Datenzeitunkritische (und singuläre) Daten
➢ LogindatenLogindaten➢ MenüinformationenMenüinformationen➢ Manche spielflussrelevante DatenManche spielflussrelevante Daten
➢ z.B. Flaggeninformationen,z.B. Flaggeninformationen,➢ Power-UpsPower-Ups
Programmieren II (cs108) - Bootcamp 6
Netzwerkkommunikation TCP
ClientClient
ServerServer
➢Sendet im Menü gemachte Sendet im Menü gemachte EingabenEingaben➢Ändert den Menüzustand nach Ändert den Menüzustand nach ServerantwortServerantwort➢Sendet NachrichtenSendet Nachrichten ➢Verarbeitet die empfangenenVerarbeitet die empfangenen
Informationen, veranlasstInformationen, veranlasst Zustandswechsel auf ClientZustandswechsel auf Client➢Verwaltet die Spiele/SpielerVerwaltet die Spiele/Spieler➢Leitet Nachrichten weiterLeitet Nachrichten weiter
AsynchroneAsynchroneKommunikationKommunikation
MENÜMENÜ
Programmieren II (cs108) - Bootcamp 7
Netzwerkkommunikation UDP
ClientClient
ServerServer
➢Sendet sämtliche EingabenSendet sämtliche Eingaben➢Zeigt die empfangenen Spiel-Zeigt die empfangenen Spiel-
daten andaten an
➢Verarbeitet die EingabedatenVerarbeitet die Eingabedaten➢Aktualisiert den SpielstatusAktualisiert den Spielstatus➢Kontrolliert die RegelnKontrolliert die Regeln➢Sendet die SpieldatenSendet die Spieldaten
AsynchroneAsynchroneKommunikationKommunikation
Programmieren II (cs108) - Bootcamp 8
Umsetzung der Netzwerkkommunikation TCP
DatenDaten
NetPackageNetPackageTyp - Parserinformation
xxxxNetObjectNetObject
NetzwerkNetzwerk(LAN/WAN)(LAN/WAN)
NetzwerkNetzwerk(LAN/WAN)(LAN/WAN)
SocketSocket SocketSocket
SerialisierungSerialisierung DeserialisierungDeserialisierung
DatenDaten
Handler/Handler/ParserParser
Programmieren II (cs108) - Bootcamp 9
Umsetzung der Netzwerkkommunikation UDP
DatenDatenbyte[] toByte()byte[] toByte()
DatagramPacketDatagramPacketAdresse - IP-Information
byte[]byte[]Typ - - Parserinformation
NetzwerkNetzwerk(LAN/WAN)(LAN/WAN)
NetzwerkNetzwerk(LAN/WAN)(LAN/WAN)
DatagramSocketDatagramSocket DatagramSocketDatagramSocket
DatenDaten
Handler/Handler/ParserParser
Programmieren II (cs108) - Bootcamp 10
Zum Thema textbasiertes Protokoll*************************************************************************************************printing variables of an instance of lib.gameObjects.PlayerObject at (PlayerObject.java:445)************************************************************************************************** map = lib.gameLogic.Map@814013* typeIDCounter = 2* typeID = 1* idCounter = 1* id = 3* playerName = test* deathCounter = 0* team = 1* vX = 1.2* vY = 10.0* flag = 0* lastFlag = 0* timeToWait = 0* maxHealth = 100* health = 100* powerUp = 0* speed = 300.0* jumpingPower = 15.0* inAir = true* status = STANDING* lastStatus = null* KEY_RIGHT = true* KEY_LEFT = false* KEY_UP = true* KEY_ACTION = true* weaponRange = 600* weaponSpeed = 600T
Variable Typ ist in Variable Typ ist in lesbarem Format,lesbarem Format,übermittelte Daten übermittelte Daten können detailliert können detailliert ausgegeben werdenausgegeben werden