David Négrier [Tue, 2 Jun 2020 12:26:56 +0000 (14:26 +0200)]
Merge pull request #142 from thecodingmachine/optimize_event_sent
Limiting the number of messages sent while moving
David Négrier [Tue, 2 Jun 2020 11:44:42 +0000 (13:44 +0200)]
Adding PlayersPositionInterpolator to interpolate/extrapolate players positions
David Négrier [Tue, 2 Jun 2020 08:48:04 +0000 (10:48 +0200)]
Adding PlayerMovement class to interpolate/extrapolate position along tests (installing Jasmine)
David Négrier [Mon, 1 Jun 2020 20:42:18 +0000 (22:42 +0200)]
Sending position only every 200ms while moving
grégoire parant [Mon, 1 Jun 2020 11:49:04 +0000 (13:49 +0200)]
Merge pull request #140 from thecodingmachine/fix-animation
Fix animation player
Gregoire Parant [Mon, 1 Jun 2020 11:20:45 +0000 (13:20 +0200)]
Fix animation player
grégoire parant [Mon, 1 Jun 2020 10:10:19 +0000 (12:10 +0200)]
Merge pull request #138 from thecodingmachine/caching-bundle-webpack
Update strategy caching bundle front js files with webpack
Gregoire Parant [Mon, 1 Jun 2020 09:53:12 +0000 (11:53 +0200)]
Update strategy caching bundle front js files with webpack
- Add HtmlWebpackPlugin to use template index html
David Négrier [Thu, 28 May 2020 20:09:52 +0000 (22:09 +0200)]
Merge pull request #135 from thecodingmachine/track_server_load
Tracking nb users connected and server load
David Négrier [Thu, 28 May 2020 20:00:56 +0000 (22:00 +0200)]
Tracking nb users connected and server load
When a user connects or disconnects on the server, we log this (along the current server load).
This is only temporary, in order to assess the number of users a server can safely handle before crashing.
David Négrier [Thu, 28 May 2020 10:32:44 +0000 (12:32 +0200)]
Merge pull request #134 from thecodingmachine/map-coders
Add a coders exit to https://npeguin.github.io/coders-map/map.json
NIP [Thu, 28 May 2020 10:19:46 +0000 (12:19 +0200)]
Fix issue on start point
NIP [Thu, 28 May 2020 09:56:47 +0000 (11:56 +0200)]
Add a coders exit to https://npeguin.github.io/coders-map/map.json
David Négrier [Wed, 27 May 2020 21:20:30 +0000 (23:20 +0200)]
Merge pull request #133 from thecodingmachine/cleanup_namespace
Trying to trigger delete on correct branch
David Négrier [Wed, 27 May 2020 21:20:12 +0000 (23:20 +0200)]
Trying to trigger delete on correct branch
David Négrier [Wed, 27 May 2020 20:32:22 +0000 (22:32 +0200)]
Merge pull request #132 from thecodingmachine/cleanup_namespace
Fixing Docker again
David Négrier [Wed, 27 May 2020 20:30:42 +0000 (22:30 +0200)]
Fixing Docker again
David Négrier [Wed, 27 May 2020 20:28:35 +0000 (22:28 +0200)]
Merge pull request #131 from thecodingmachine/cleanup_namespace
Fixing Docker reference to image
David Négrier [Wed, 27 May 2020 20:27:52 +0000 (22:27 +0200)]
Fixing Docker
David Négrier [Wed, 27 May 2020 20:25:58 +0000 (22:25 +0200)]
Merge pull request #130 from thecodingmachine/cleanup_namespace
Adding cleanup action on delete
David Négrier [Wed, 27 May 2020 20:20:08 +0000 (22:20 +0200)]
Adding cleanup action on delete
David Négrier [Wed, 27 May 2020 07:39:47 +0000 (09:39 +0200)]
Merge pull request #129 from thecodingmachine/rework_login_scene
Adding a new SelectCharacterScene
David Négrier [Tue, 26 May 2020 20:26:50 +0000 (22:26 +0200)]
Adding localStorage for selected user
David Négrier [Tue, 26 May 2020 20:17:00 +0000 (22:17 +0200)]
Storing user name in local storage
David Négrier [Tue, 26 May 2020 15:43:25 +0000 (17:43 +0200)]
Fix lint
David Négrier [Tue, 26 May 2020 15:37:26 +0000 (17:37 +0200)]
Fixing import
David Négrier [Tue, 26 May 2020 15:25:29 +0000 (17:25 +0200)]
Adding communication between LoginScene and SelectCharacterScene
David Négrier [Tue, 26 May 2020 15:02:04 +0000 (17:02 +0200)]
Fixing selection on keyboard after selection using mouse
David Négrier [Mon, 25 May 2020 21:26:27 +0000 (23:26 +0200)]
Adding a new SelectCharacterScene
Taking what was done in the LoginScene regarding character selection and putting it in its own scene.
Also, making character selection possible via the keyboard.
David Négrier [Mon, 25 May 2020 20:44:33 +0000 (22:44 +0200)]
Merge pull request #127 from thecodingmachine/remove_dead_code
Removing dead code from previous messaging system
David Négrier [Sun, 24 May 2020 21:33:56 +0000 (23:33 +0200)]
Commenting out the notion of status in the GameManager
It seems to be useless
David Négrier [Sun, 24 May 2020 21:29:51 +0000 (23:29 +0200)]
Also removing dead class
David Négrier [Sun, 24 May 2020 21:27:32 +0000 (23:27 +0200)]
Removing dead code from previous messaging system
Remvoing messages that were no more used in the new messaging system (the code used to handle the message that sent the position of all users on the front side)
David Négrier [Sun, 24 May 2020 21:29:05 +0000 (23:29 +0200)]
Merge pull request #126 from thecodingmachine/typos
Fixing typos.
David Négrier [Sun, 24 May 2020 21:14:12 +0000 (23:14 +0200)]
Fixing typos.
Replaced connexion with connection and LogincScene with LoginScene
David Négrier [Sun, 24 May 2020 20:58:06 +0000 (22:58 +0200)]
Merge pull request #124 from moufmouf/rename_maps_endpoint
Renaming /maps to /start-map
David Négrier [Sun, 24 May 2020 20:53:10 +0000 (22:53 +0200)]
Renaming /maps to /start-map
Closes #90
David Négrier [Sun, 24 May 2020 13:39:49 +0000 (15:39 +0200)]
Improving doc
David Négrier [Sat, 23 May 2020 19:48:10 +0000 (21:48 +0200)]
Merge pull request #123 from thecodingmachine/map_instances
Adding a notion of instances per map
David Négrier [Sat, 23 May 2020 15:27:49 +0000 (17:27 +0200)]
Adding a notion of instances per mapAdding a notion of instances to room
The URL signature becomes:
https://workadventu.re/_/[instance]/[path_to_map.json]
This allows us to create many instances of the same map (and therefore to create several different worlds for different people)
An exit on a map can target another "instance" by passing the "exitInstance" property.
David Négrier [Sat, 23 May 2020 15:25:18 +0000 (17:25 +0200)]
Merge pull request #120 from thecodingmachine/refactor_messages
Refactored and optimized messages
David Négrier [Sat, 23 May 2020 15:12:36 +0000 (17:12 +0200)]
Merge pull request #122 from thecodingmachine/reconnecting_scene
Adding a special scene to wait for server reconnection
David Négrier [Sat, 23 May 2020 15:12:10 +0000 (17:12 +0200)]
Merge pull request #121 from thecodingmachine/fix_mediatream_manage
Fix mediatream manage and connection server down
Gregoire Parant [Sat, 23 May 2020 14:50:17 +0000 (16:50 +0200)]
Fix CI
Gregoire Parant [Sat, 23 May 2020 14:32:14 +0000 (16:32 +0200)]
Fix test socket
David Négrier [Sat, 23 May 2020 14:13:37 +0000 (16:13 +0200)]
Prettifying lost connection screen
David Négrier [Sat, 23 May 2020 13:43:26 +0000 (15:43 +0200)]
Adding a special scene to wait for server reconnection
Gregoire Parant [Sat, 23 May 2020 13:04:25 +0000 (15:04 +0200)]
Use `userId` generated by back end in all message
Gregoire Parant [Sat, 23 May 2020 12:00:36 +0000 (14:00 +0200)]
Fix mediam stream manage and server back down
David Négrier [Fri, 22 May 2020 20:59:43 +0000 (22:59 +0200)]
Changing the "Point" notion to add a notion of "moving" in addition to the notion of direction.
Also, refactoring JOIN_ROOM event to add complete position.
David Négrier [Wed, 20 May 2020 10:30:17 +0000 (12:30 +0200)]
Removing logs
David Négrier [Tue, 19 May 2020 17:53:26 +0000 (19:53 +0200)]
Removing dead code
David Négrier [Tue, 19 May 2020 17:11:12 +0000 (19:11 +0200)]
Refactored and optimized messages
Now, when a user moves, only his/her position is sent back to the other users. The position of all users is not sent each time.
The messages sent to the browser are now:
- the list of all users as a return to the join_room event (you can send responses to events in socket.io)
- a "join_room" event sent when a new user joins the room
- a "user_moved" event when a user moved
- a "user_left" event when a user left the room
The GameScene tracks all these events and reacts accordingly.
Also, I made a number of refactoring in the classes and removed the GameSceneInterface that was useless (it was implemented by the LogincScene for no reason at all)
David Négrier [Mon, 18 May 2020 16:40:10 +0000 (18:40 +0200)]
Merge branch 'master' of github.com:thecodingmachine/workadventure into remove_userid
David Négrier [Mon, 18 May 2020 16:33:04 +0000 (18:33 +0200)]
Refactoring searchClientById
searchClientById was scanning through all open sockets to find the right one (which is inefficient if we have many).
Instead, I created a new Map that directly maps ids to sockets.
Furthermore, this solves a long-standing issue (when a socket is disconnected, we cannot find it anymore in the sockets list but it is still available in the disconnect callback from the map)
As a result, we should not have any remaining circles any more.
David Négrier [Sun, 17 May 2020 10:11:03 +0000 (12:11 +0200)]
Merge pull request #118 from thecodingmachine/remove_userid
Refactoring messages
David Négrier [Sat, 16 May 2020 14:11:58 +0000 (16:11 +0200)]
Stricter compiler
David Négrier [Sat, 16 May 2020 14:07:38 +0000 (16:07 +0200)]
Code cleaning
David Négrier [Sat, 16 May 2020 13:58:20 +0000 (15:58 +0200)]
Cleaning up tests
David Négrier [Sat, 16 May 2020 13:51:00 +0000 (15:51 +0200)]
Removing broken import
David Négrier [Sat, 16 May 2020 13:44:40 +0000 (15:44 +0200)]
Removing the Message class and merging it with MessageUserPosition (since it is only ever used it in MessageUserPosition)
Taking advantage of the TypeScript Constructor Assignment too to reduce the amount of code!
David Négrier [Fri, 15 May 2020 22:19:27 +0000 (00:19 +0200)]
Getting rid of roomId in Message class (this is not needed since all messages sent are for the room we are currently in)
David Négrier [Fri, 15 May 2020 21:40:05 +0000 (23:40 +0200)]
When sharing user position, only position is sent now!
David Négrier [Fri, 15 May 2020 21:24:04 +0000 (23:24 +0200)]
JoinRoom now ONLY sends the roomId.
David Négrier [Fri, 15 May 2020 21:17:58 +0000 (23:17 +0200)]
Fixing test
David Négrier [Fri, 15 May 2020 20:40:06 +0000 (22:40 +0200)]
Sending player details (name + character selected) on connection
David Négrier [Fri, 15 May 2020 20:09:21 +0000 (22:09 +0200)]
More code removal
David Négrier [Fri, 15 May 2020 20:08:53 +0000 (22:08 +0200)]
More code removal
David Négrier [Fri, 15 May 2020 20:04:49 +0000 (22:04 +0200)]
Refactoring messages
Socket.io can stringify JSON messages itself, so there is no need to pass a string to "emit". You can pass a serializable object!
This commit removes all the useless toJson() methods, JSON.serialize and JSON.parse!
Woot!
David Négrier [Fri, 15 May 2020 19:34:12 +0000 (21:34 +0200)]
Merge pull request #116 from thecodingmachine/remove_userid
Completely getting rid of "userid"
David Négrier [Thu, 14 May 2020 21:19:48 +0000 (23:19 +0200)]
Completely getting rid of "userid"
Previously, userid was generated by the "/login" route and passed along.
This commit completely removes the uuid "userid" (and disables the LoginController too and any Jwt check).
"userid" is replaced by the "socket id" of the connection.
So a user is now identified using a socket id, which is unique for a given connection.
David Négrier [Thu, 14 May 2020 20:02:41 +0000 (22:02 +0200)]
Merge pull request #113 from thecodingmachine/display_circle_on_startup
Displaying circle on join
David Négrier [Thu, 14 May 2020 20:00:45 +0000 (22:00 +0200)]
Merge pull request #115 from thecodingmachine/update-webrtc
Update media webrtc
David Négrier [Thu, 14 May 2020 20:00:31 +0000 (22:00 +0200)]
Removing log trace
gparant [Thu, 14 May 2020 19:00:52 +0000 (21:00 +0200)]
Minor update floor0 and floor1
gparant [Thu, 14 May 2020 18:54:34 +0000 (20:54 +0200)]
Fix border view
gparant [Thu, 14 May 2020 18:39:30 +0000 (20:39 +0200)]
Media webrtcA
- Update peerConnexion manage
- Add muted microphone logo
- Add icon user
- Sound when user enter in room webrtc
David Négrier [Wed, 13 May 2020 21:11:10 +0000 (23:11 +0200)]
Displaying circle on join
So far, someone joining a map would not see the circles of groups already formed until someone moves in the group (because the "circle_moved_or_updated" event was not fired when someone arrives)
This commit fixes this behaviour. Someone entering a room will receive an event for each and every group currently formed.
gparant [Wed, 13 May 2020 20:36:34 +0000 (22:36 +0200)]
Minor changes map floor 0
David Négrier [Wed, 13 May 2020 20:28:17 +0000 (22:28 +0200)]
Merge pull request #111 from thecodingmachine/new-floor0
New map floor0
David Négrier [Wed, 13 May 2020 20:24:53 +0000 (22:24 +0200)]
Merge pull request #112 from thecodingmachine/debug/improve_message
More detailed error log to debug disconnect issue
David Négrier [Wed, 13 May 2020 20:20:34 +0000 (22:20 +0200)]
Fixing CD
David Négrier [Wed, 13 May 2020 20:11:05 +0000 (22:11 +0200)]
More detailed error log to debug disconnect issue
gparant [Wed, 13 May 2020 20:09:02 +0000 (22:09 +0200)]
New map floor0
David Négrier [Wed, 13 May 2020 20:03:56 +0000 (22:03 +0200)]
Merge pull request #109 from thecodingmachine/Auto-reconnect
Auto-reconnect
David Négrier [Wed, 13 May 2020 19:48:09 +0000 (21:48 +0200)]
Merge pull request #108 from thecodingmachine/bugFixes
fixed a game crash on firefox on http
gparant [Wed, 13 May 2020 18:22:42 +0000 (20:22 +0200)]
Auto-reconnect
kharhamel [Wed, 13 May 2020 14:56:22 +0000 (16:56 +0200)]
fixed a game crash on firefox on http
David Négrier [Wed, 13 May 2020 14:17:58 +0000 (16:17 +0200)]
Fixing domain name
David Négrier [Wed, 13 May 2020 14:07:06 +0000 (16:07 +0200)]
Merge pull request #107 from thecodingmachine/domain_name
Deploying master on new workadventu.re domain
David Négrier [Wed, 13 May 2020 13:58:17 +0000 (15:58 +0200)]
Not adding comment on push (only pull_request)
David Négrier [Wed, 13 May 2020 13:31:01 +0000 (15:31 +0200)]
Deploying master on new workadventu.re domain
... but still deploying in the test cluster.
David Négrier [Wed, 13 May 2020 09:03:49 +0000 (11:03 +0200)]
Merge pull request #99 from thecodingmachine/map_history
Adding support for history API
David Négrier [Wed, 13 May 2020 07:52:25 +0000 (09:52 +0200)]
Merge pull request #106 from thecodingmachine/up_to_4
Removing limitation to allow up to 4 players in a group
David Négrier [Wed, 13 May 2020 07:39:48 +0000 (09:39 +0200)]
Removing limitation to allow up to 4 players in a group
David Négrier [Wed, 13 May 2020 07:29:18 +0000 (09:29 +0200)]
Fixing htaccess redirect
David Négrier [Tue, 12 May 2020 22:02:39 +0000 (00:02 +0200)]
Redirecting to the correct map after login screen based on URL provided
David Négrier [Mon, 11 May 2020 22:07:50 +0000 (00:07 +0200)]
Adding history support
Arriving on a new map now changes the URL.
All URLs starting with _ are automatically redirected to index.html by the web server
David Négrier [Mon, 11 May 2020 21:26:40 +0000 (23:26 +0200)]
Refactoring/centralizing map loading in GameManager
David Négrier [Tue, 12 May 2020 09:58:56 +0000 (11:58 +0200)]
Merge pull request #103 from thecodingmachine/catching_errors
Catching errors in socket callbacks