Alistair McIntyre
7db716f51c
Boat should move towards optimal angle upwind and downwind when pressing spacebar (VMG)
...
#story[988]
2017-07-26 20:12:57 +12:00
Alistair McIntyre
72a45f5984
Fixed a bug where if boatMaxSpeed was 0 and sails were up, boat would not decelerate.
...
#story[986]
2017-07-26 17:11:34 +12:00
William Muir
5e6b402bf5
Minor structural changes. GameState now has a thread which updates itself so its update
...
rate can be independent of sending packets to the client in the MainServerThread
#story[986] #pair[wmu16, ptg19]
2017-07-26 14:48:32 +12:00
Alistair McIntyre
2bfa6cb038
Adjusted the velocity calculations to allow for Acceleration/Deceleration of the boats, rather than just coming to a complete halt when the sails are pulled in.
...
#story[986]
2017-07-26 14:01:51 +12:00
William Muir
a56dac1e87
Polar velocities should now work as intended.
...
Snapping to VMG still needs to be implemented.
Still an issue of not being able to pass the total upwind or downwind point
tags: #story[986]
2017-07-25 22:19:03 +12:00
Michael Rausch
c8a96dcce9
Fixed XML Loading error, used VMG to calculate boat velocity
...
- XML read from stream instead of file
- Started implementing VMG to calculate boat velocity dynamically
Tags: #pair[wmu16, mra106] #story[986]
2017-07-25 20:14:50 +12:00
Kusal Ekanayake
4f2dca7ecf
Added proper the starting locations for marks and boats.
2017-07-25 18:48:33 +12:00
William Muir
a30a1aa7c7
Tweaking to server loop making it send packets at 5Hz
...
Commented out some smoothing code in BoatGroup that was dependend on FPS screwing with movement
2017-07-24 21:14:17 +12:00
William Muir
07cebb6c5b
Updated velocity in yacht constructor so the boat can be seen properly working for test purposes
2017-07-24 16:47:17 +12:00
Michael Rausch
8b8b6e4afa
Fixed map glitch when race starts, and race XML bug
...
- Race XML wasn't being sent to clients, this was causing a null ptr exception
- Boat location was being set to an invalid lat/lng
Tags: #story[1047]
2017-07-23 18:20:13 +12:00
Kusal Ekanayake
ed2a22b573
Tried to merge game loop with the broadcast. Minor error in canvas. need to fix.
...
#story[1047]
2017-07-23 17:37:45 +12:00
Kusal Ekanayake
41851ee925
Merge branch 'Story62_Creating_Game_Loop' into Merging_GameLoop_with_Broadcast
...
# Conflicts:
# src/main/java/seng302/controllers/StartScreenController.java
# src/main/java/seng302/gameServer/ServerListenThread.java
# src/main/java/seng302/gameServer/ServerToClientThread.java
# src/main/java/seng302/models/Yacht.java
2017-07-23 17:34:24 +12:00
Kusal Ekanayake
ffc61942a9
Fixed broken pipe error.
...
Was caused by boat ids being over 1000 and when turned into xml having a comma placed between the hundreds and the thousands? So to fix, I just mad the max id number 999 so there should not be any issues regarding that if another broken pipe error occurs. Also switched to use the correct yacht constructor.
#story[1047]
2017-07-23 17:10:18 +12:00
Kusal Ekanayake
2e4382bff6
Trying to fix the boat information that is being sent over.
...
Current issue is that a broken pipe error keeps occurring potentially due to how the messages are being sent so quickly that the previous message may have not finished sending. Also only caused the xm packets to be sent on trigger when a new client connects.
#story[1047]
2017-07-23 16:22:59 +12:00
William Muir
a0005064ac
Fixed the Yacht clas so it now works.
...
Lists and Maps are instantiated as they should be in GameState which were creating NullPointers
Introduced ServerLog to server to client threads for bug reporting
Introduced some print statements to test the game state updating upon receiving key presses
tags: #story[989] #refactor #fix
2017-07-22 16:32:05 +12:00
Michael Rausch
33fae9d69a
Added race boats to XML Generator
...
Tags: #story[1047]
2017-07-21 16:56:46 +12:00
Peter Galloway
913e5fee7b
Hooked up key press actions to the GameState, applying the relevant maths to update headings etc.
...
tags: #story[989] #pair[ptg19, wmu16]
2017-07-21 16:50:09 +12:00
Kusal Ekanayake
5df7efda03
Started implementing the gameState broadcasts.
...
Initial xml files are almost broad casted, just need to create them (or import the for the regatta). Started the setup for sending boat location packets, should work once we get at least the boat xml working when being sent.
#story[1047]
2017-07-21 13:16:43 +12:00
Kusal Ekanayake
2fff73c075
Merge remote-tracking branch 'origin/984_Xml_Generation' into Broadcasting_GameState
...
# Conflicts:
# src/main/java/seng302/controllers/FinishScreenViewController.java
# src/main/java/seng302/controllers/RaceViewController.java
# src/main/java/seng302/gameServer/GameServerThread.java
# src/main/java/seng302/gameServer/GameState.java
# src/main/java/seng302/models/Yacht.java
2017-07-21 12:31:35 +12:00
Peter Galloway
12c2f31af9
Merge remote-tracking branch 'origin/Story62_Creating_Game_Loop' into Story62_Creating_Game_Loop
...
# Conflicts:
# src/main/java/seng302/gameServer/GameState.java
2017-07-20 19:38:07 +12:00
Peter Galloway
49c0c029c3
adjusted the way the server is receiving key presses to enable them be passed through to the game state #pair[ptg19, wmu16] #story[989]
2017-07-20 19:35:59 +12:00
Alistair McIntyre
da7a34fc55
Started adding functionality to calculate yacht velocity from the wind speed and direction using polar tables. Also began writing tests to cover this functionality, as it can't currently be tested within the game itself.
...
#story[986]
2017-07-20 14:30:13 +12:00
Michael Rausch
322ff740e2
Added race start time to race XML
...
- Added race start time to race XML
- Added documentation
- Removed test code in MainServerThread
Tags: #story[984]
2017-07-20 14:28:59 +12:00
Michael Rausch
82b219cdba
Boat and race XML now generated dynamically
...
- Removed course from XML Generator as it was not needed
- Boat and race XML added
- Method names in Yacht class updated to follow JavaBean standard so they can be read by the template engine
Tags: #story[984]
2017-07-20 13:30:55 +12:00
Peter Galloway
e317de7562
Added mock yachts to the game state for each client #story[1047]
2017-07-20 13:11:37 +12:00
Peter Galloway
176d65e0b2
Merge branch 'Story62_Reading_Keystrokes' into Story62_Creating_Game_Loop
2017-07-20 12:01:53 +12:00
William Muir
8f00f3a80c
Refactoring for server package, Changed GameServerThread to MainServerThread.
...
All Server classes now in single gameServer package
tags: #story[1055]
2017-07-20 11:22:30 +12:00
Peter Galloway
63d24c001f
Added position update in yacht #story[1047]
2017-07-19 19:41:07 +12:00
Michael Rausch
45053ba507
Added XML Generation
...
- Implemented a wrapper for Apache Freemake
- Implemented the regatta XML generator
Tags: #story[984]
2017-07-19 14:47:16 +12:00
William Muir
e83eaa38e1
Upon hosting, and then creating a new instance and connecting to that IP, button transmissions work and print out on server!! :D
...
Took the send method out of the Message class as it didnt make sense to have it there. This meant taking it out of all subclasses too
tags: #story[1055] pair[wmu16, zyt10]
2017-07-18 12:22:58 +12:00
Haoming Yin
63958a6717
WIP: Implemented a temporary workaround to send an instance test to client server upon connection.
...
Still needs reengineering to change socket channels for sending to ouput stream in the message class.
Only client to server "working".
#story[1047] #pair[hyi25, wmu16] #pair[cir27, zyt10]
2017-07-17 17:00:04 +12:00
Haoming Yin
00b29a1890
Merge remote-tracking branch 'origin/develop' into Story62_Reading_Keystrokes
2017-07-17 10:55:08 +12:00
Zhi You Tan
e03e8825b2
Merge remote-tracking branch 'origin/1047_Hosting_Game' into Story62_Reading_Keystrokes
2017-07-14 18:23:28 +12:00
Zhi You Tan
355f8543f5
Implemented a more reliable way for keystroke input and added boat action packet type so stream parser is able to read and decode the message appropriately.
...
#story[988] #pair[hyi25, zyt10]
2017-07-14 18:23:07 +12:00
William Muir
77e7db79cc
WIP: Worked on new server thread class that would create and store multiple THREADS of connections. Researched Authorative server structures.
...
Fixed the current structure of the server to work with the old StreamReciever style and hook up to the Stream Parser
tags: #story[1047] pair[wmu16, mra106]
2017-07-14 17:09:33 +12:00
Michael Rausch
c19f66a6a4
Added garbage collection for disconnected players
...
- Heartbeat messages are sent out from their own thread to each player
- If a heartbeat message can't be sent to a player, they are removed from the list of players
- Added equals method for players
Tags: #story[1047]
2017-07-13 22:07:03 +12:00
Michael Rausch
55db2c9961
Fixed buffer overflow in message header
...
- Fixed buffer overflow by adding a reset method that clears the buffer and sets the position to zero before re-writing the header
Tags: #story[1047]
2017-07-13 19:15:45 +12:00
William Muir
8090cd7985
WIP: Adapted the old server thread class to the GameServerThread class to allow multiple clients to connect
...
tags: #story[1047] #pair[wmu16]
2017-07-13 14:40:11 +12:00
William Muir
035841f221
WIP: Adapted the old server thread class to the GameServerThread class to allow multiple clients to connect
...
tags: #story[1047] #pair[wmu16, mra106]
2017-07-11 17:03:32 +12:00
Haoming Yin
fcb1e5e593
Removed unnecessary Position and GeoPoint classes to clear the code base.
...
- put utility classes in a package
#story[1047]
2017-07-10 23:51:01 +12:00
William Muir
752863a0d3
WIP: Created some basic controllers for the UI and started implementing backend for server stuff
...
Created GameState Class. Static, contains all info about current state of game: list of players and their respective details (coords etc) also Host info
Clients will observe this GameState class
Upon pressing host, new GameState is created and new GameConnectionListener created which listens for connections
Player class created which will be used to take each connection and store it as a player with other info about them regarding the game in the GameState class
tags: #story[1047] #pair[wmu16, zyt10]
2017-07-10 16:03:13 +12:00
William Muir
5f9da6b40a
Fixed the bug where the polar file could not be read after being packaged
...
tags: #story[955] #pair[wmu16, zyt10]
2017-07-10 12:36:32 +12:00
Calum
65223ceaaf
shifted annotation layers. Merged with dev.
2017-05-25 16:29:27 +12:00
Calum
b73e4c89db
Merge remote-tracking branch 'origin/develop' into remove_observers
...
# Conflicts:
# src/main/java/seng302/controllers/CanvasController.java
# src/main/java/seng302/controllers/RaceViewController.java
# src/main/java/seng302/fxObjects/BoatGroup.java
# src/main/java/seng302/fxObjects/MarkGroup.java
# src/main/java/seng302/models/Yacht.java
2017-05-25 14:52:54 +12:00
Kusal Ekanayake
6e903bfbed
Merge branch 'develop' into 38b_LayLines
...
# Conflicts:
# src/main/java/seng302/App.java
# src/main/java/seng302/models/Yacht.java
# src/main/java/seng302/models/stream/StreamParser.java
2017-05-25 14:16:55 +12:00
Michael Rausch
23d62f552e
Merged develop onto this branch
...
Tidied code, removed print statements
#story[956] #pair[wmu16, mra106]
2017-05-25 14:06:33 +12:00
Kusal Ekanayake
53f6a6b8c5
Implimented a new way to determine positions
...
#story[952]
2017-05-25 14:06:33 +12:00
Michael Rausch
af81bf5891
Merge remote-tracking branch 'origin/develop' into 38b_LayLines
...
# Conflicts:
# src/main/java/seng302/models/BoatGroup.java
# src/main/java/seng302/models/Event.java
# src/main/java/seng302/models/mark/Mark.java
# src/main/java/seng302/models/stream/StreamParser.java
2017-05-25 13:56:08 +12:00
Michael Rausch
e72ac1def8
Laylines are now togglable. Still not completely fool proof
...
Laylines appear only for the selected boat. The dissapear if the boat is not seleccted. Laylines are the colour of the boat
Laylines do not yet automatically update for a selected boat when it passes a mark
There is still a polling interval of a second in which if you select a boat after it has just passed a mark it still thinks the next mark is that mark and laylines are displayed incorrectly
#story[956] #pair[wmu16, mra106]
2017-05-25 13:48:48 +12:00
Calum
4d29354797
Merge branch 'develop' into remove_observers
...
# Conflicts:
# src/main/java/seng302/controllers/CanvasController.java
# src/main/java/seng302/fxObjects/BoatGroup.java
# src/main/java/seng302/models/stream/StreamParser.java
2017-05-25 10:25:54 +12:00