libreadventure.git
4 years agoMerge pull request #142 from thecodingmachine/optimize_event_sent
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

4 years agoAdding PlayersPositionInterpolator to interpolate/extrapolate players positions
David Négrier [Tue, 2 Jun 2020 11:44:42 +0000 (13:44 +0200)]
Adding PlayersPositionInterpolator to interpolate/extrapolate players positions

4 years agoAdding PlayerMovement class to interpolate/extrapolate position along tests (installi...
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)

4 years agoSending position only every 200ms while moving
David Négrier [Mon, 1 Jun 2020 20:42:18 +0000 (22:42 +0200)]
Sending position only every 200ms while moving

4 years agoMerge pull request #140 from thecodingmachine/fix-animation
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

4 years agoFix animation player
Gregoire Parant [Mon, 1 Jun 2020 11:20:45 +0000 (13:20 +0200)]
Fix animation player

4 years agoMerge pull request #138 from thecodingmachine/caching-bundle-webpack
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

4 years agoUpdate 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

4 years agoMerge pull request #135 from thecodingmachine/track_server_load
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

4 years agoTracking 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.

4 years agoMerge pull request #134 from thecodingmachine/map-coders
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

4 years agoFix issue on start point
NIP [Thu, 28 May 2020 10:19:46 +0000 (12:19 +0200)]
Fix issue on start point

4 years agoAdd a coders exit to https://npeguin.github.io/coders-map/map.json
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

4 years agoMerge pull request #133 from thecodingmachine/cleanup_namespace
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

4 years agoTrying 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

4 years agoMerge pull request #132 from thecodingmachine/cleanup_namespace
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

4 years agoFixing Docker again
David Négrier [Wed, 27 May 2020 20:30:42 +0000 (22:30 +0200)]
Fixing Docker again

4 years agoMerge pull request #131 from thecodingmachine/cleanup_namespace
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

4 years agoFixing Docker
David Négrier [Wed, 27 May 2020 20:27:52 +0000 (22:27 +0200)]
Fixing Docker

4 years agoMerge pull request #130 from thecodingmachine/cleanup_namespace
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

4 years agoAdding cleanup action on delete
David Négrier [Wed, 27 May 2020 20:20:08 +0000 (22:20 +0200)]
Adding cleanup action on delete

4 years agoMerge pull request #129 from thecodingmachine/rework_login_scene
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

4 years agoAdding localStorage for selected user
David Négrier [Tue, 26 May 2020 20:26:50 +0000 (22:26 +0200)]
Adding localStorage for selected user

4 years agoStoring user name in local storage
David Négrier [Tue, 26 May 2020 20:17:00 +0000 (22:17 +0200)]
Storing user name in local storage

4 years agoFix lint
David Négrier [Tue, 26 May 2020 15:43:25 +0000 (17:43 +0200)]
Fix lint

4 years agoFixing import
David Négrier [Tue, 26 May 2020 15:37:26 +0000 (17:37 +0200)]
Fixing import

4 years agoAdding communication between LoginScene and SelectCharacterScene
David Négrier [Tue, 26 May 2020 15:25:29 +0000 (17:25 +0200)]
Adding communication between LoginScene and SelectCharacterScene

4 years agoFixing selection on keyboard after selection using mouse
David Négrier [Tue, 26 May 2020 15:02:04 +0000 (17:02 +0200)]
Fixing selection on keyboard after selection using mouse

4 years agoAdding a new SelectCharacterScene
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.

4 years agoMerge pull request #127 from thecodingmachine/remove_dead_code
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

4 years agoCommenting out the notion of status in the GameManager
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

4 years agoAlso removing dead class
David Négrier [Sun, 24 May 2020 21:29:51 +0000 (23:29 +0200)]
Also removing dead class

4 years agoRemoving dead code from previous messaging system
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)

4 years agoMerge pull request #126 from thecodingmachine/typos
David Négrier [Sun, 24 May 2020 21:29:05 +0000 (23:29 +0200)]
Merge pull request #126 from thecodingmachine/typos

Fixing typos.

4 years agoFixing 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

4 years agoMerge pull request #124 from moufmouf/rename_maps_endpoint
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

4 years agoRenaming /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

4 years agoImproving doc
David Négrier [Sun, 24 May 2020 13:39:49 +0000 (15:39 +0200)]
Improving doc

4 years agoMerge pull request #123 from thecodingmachine/map_instances
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

4 years agoAdding a notion of instances per mapAdding a notion of instances to room
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.

4 years agoMerge pull request #120 from thecodingmachine/refactor_messages
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

4 years agoMerge pull request #122 from thecodingmachine/reconnecting_scene
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

4 years agoMerge pull request #121 from thecodingmachine/fix_mediatream_manage
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

4 years agoFix CI
Gregoire Parant [Sat, 23 May 2020 14:50:17 +0000 (16:50 +0200)]
Fix CI

4 years agoFix test socket
Gregoire Parant [Sat, 23 May 2020 14:32:14 +0000 (16:32 +0200)]
Fix test socket

4 years agoPrettifying lost connection screen
David Négrier [Sat, 23 May 2020 14:13:37 +0000 (16:13 +0200)]
Prettifying lost connection screen

4 years agoAdding a special scene to wait for server reconnection
David Négrier [Sat, 23 May 2020 13:43:26 +0000 (15:43 +0200)]
Adding a special scene to wait for server reconnection

4 years agoUse `userId` generated by back end in all message
Gregoire Parant [Sat, 23 May 2020 13:04:25 +0000 (15:04 +0200)]
Use `userId` generated by back end in all message

4 years agoFix mediam stream manage and server back down
Gregoire Parant [Sat, 23 May 2020 12:00:36 +0000 (14:00 +0200)]
Fix mediam stream manage and server back down

4 years agoChanging the "Point" notion to add a notion of "moving" in addition to the notion...
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.

4 years agoRemoving logs
David Négrier [Wed, 20 May 2020 10:30:17 +0000 (12:30 +0200)]
Removing logs

4 years agoRemoving dead code
David Négrier [Tue, 19 May 2020 17:53:26 +0000 (19:53 +0200)]
Removing dead code

4 years agoRefactored and optimized messages
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)

4 years agoMerge branch 'master' of github.com:thecodingmachine/workadventure into remove_userid
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

4 years agoRefactoring searchClientById
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.

4 years agoMerge pull request #118 from thecodingmachine/remove_userid
David Négrier [Sun, 17 May 2020 10:11:03 +0000 (12:11 +0200)]
Merge pull request #118 from thecodingmachine/remove_userid

Refactoring messages

4 years agoStricter compiler
David Négrier [Sat, 16 May 2020 14:11:58 +0000 (16:11 +0200)]
Stricter compiler

4 years agoCode cleaning
David Négrier [Sat, 16 May 2020 14:07:38 +0000 (16:07 +0200)]
Code cleaning

4 years agoCleaning up tests
David Négrier [Sat, 16 May 2020 13:58:20 +0000 (15:58 +0200)]
Cleaning up tests

4 years agoRemoving broken import
David Négrier [Sat, 16 May 2020 13:51:00 +0000 (15:51 +0200)]
Removing broken import

4 years agoRemoving the Message class and merging it with MessageUserPosition (since it is only...
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!

4 years agoGetting rid of roomId in Message class (this is not needed since all messages sent...
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)

4 years agoWhen sharing user position, only position is sent now!
David Négrier [Fri, 15 May 2020 21:40:05 +0000 (23:40 +0200)]
When sharing user position, only position is sent now!

4 years agoJoinRoom now ONLY sends the roomId.
David Négrier [Fri, 15 May 2020 21:24:04 +0000 (23:24 +0200)]
JoinRoom now ONLY sends the roomId.

4 years agoFixing test
David Négrier [Fri, 15 May 2020 21:17:58 +0000 (23:17 +0200)]
Fixing test

4 years agoSending player details (name + character selected) on connection
David Négrier [Fri, 15 May 2020 20:40:06 +0000 (22:40 +0200)]
Sending player details (name + character selected) on connection

4 years agoMore code removal
David Négrier [Fri, 15 May 2020 20:09:21 +0000 (22:09 +0200)]
More code removal

4 years agoMore code removal
David Négrier [Fri, 15 May 2020 20:08:53 +0000 (22:08 +0200)]
More code removal

4 years agoRefactoring messages
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!

4 years agoMerge pull request #116 from thecodingmachine/remove_userid
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"

4 years agoCompletely 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.

4 years agoMerge pull request #113 from thecodingmachine/display_circle_on_startup
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

4 years agoMerge pull request #115 from thecodingmachine/update-webrtc
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

4 years agoRemoving log trace
David Négrier [Thu, 14 May 2020 20:00:31 +0000 (22:00 +0200)]
Removing log trace

4 years agoMinor update floor0 and floor1
gparant [Thu, 14 May 2020 19:00:52 +0000 (21:00 +0200)]
Minor update floor0 and floor1

4 years agoFix border view
gparant [Thu, 14 May 2020 18:54:34 +0000 (20:54 +0200)]
Fix border view

4 years agoMedia webrtcA
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

4 years agoDisplaying circle on join
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.

4 years agoMinor changes map floor 0
gparant [Wed, 13 May 2020 20:36:34 +0000 (22:36 +0200)]
Minor changes map floor 0

4 years agoMerge pull request #111 from thecodingmachine/new-floor0
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

4 years agoMerge pull request #112 from thecodingmachine/debug/improve_message
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

4 years agoFixing CD
David Négrier [Wed, 13 May 2020 20:20:34 +0000 (22:20 +0200)]
Fixing CD

4 years agoMore detailed error log to debug disconnect issue
David Négrier [Wed, 13 May 2020 20:11:05 +0000 (22:11 +0200)]
More detailed error log to debug disconnect issue

4 years agoNew map floor0
gparant [Wed, 13 May 2020 20:09:02 +0000 (22:09 +0200)]
New map floor0

4 years agoMerge pull request #109 from thecodingmachine/Auto-reconnect
David Négrier [Wed, 13 May 2020 20:03:56 +0000 (22:03 +0200)]
Merge pull request #109 from thecodingmachine/Auto-reconnect

Auto-reconnect

4 years agoMerge pull request #108 from thecodingmachine/bugFixes
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

4 years agoAuto-reconnect
gparant [Wed, 13 May 2020 18:22:42 +0000 (20:22 +0200)]
Auto-reconnect

4 years agofixed a game crash on firefox on http
kharhamel [Wed, 13 May 2020 14:56:22 +0000 (16:56 +0200)]
fixed a game crash on firefox on http

4 years agoFixing domain name
David Négrier [Wed, 13 May 2020 14:17:58 +0000 (16:17 +0200)]
Fixing domain name

4 years agoMerge pull request #107 from thecodingmachine/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

4 years agoNot adding comment on push (only pull_request)
David Négrier [Wed, 13 May 2020 13:58:17 +0000 (15:58 +0200)]
Not adding comment on push (only pull_request)

4 years agoDeploying master on new workadventu.re domain
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.

4 years agoMerge pull request #99 from thecodingmachine/map_history
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

4 years agoMerge pull request #106 from thecodingmachine/up_to_4
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

4 years agoRemoving 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

4 years agoFixing htaccess redirect
David Négrier [Wed, 13 May 2020 07:29:18 +0000 (09:29 +0200)]
Fixing htaccess redirect

4 years agoRedirecting to the correct map after login screen based on URL provided
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

4 years agoAdding history support
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

4 years agoRefactoring/centralizing map loading in GameManager
David Négrier [Mon, 11 May 2020 21:26:40 +0000 (23:26 +0200)]
Refactoring/centralizing map loading in GameManager

4 years agoMerge pull request #103 from thecodingmachine/catching_errors
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