Robert Paciorek
bfea453118
LIMBO related fixes
2024-08-14 17:33:30 +00:00
eb4fc7df40
Implement `JL
` - Join Limbo ( #2 )
2024-08-14 17:12:38 +00:00
Robert Paciorek
7321b95821
room alerts configuration via appsettings.json
...
thanks to HaiFire for alert config for SS
2024-08-12 15:39:40 +00:00
Hipposgrumm
883214cb57
Disabled Joining Ongoing Alerts ( #4 )
...
Ongoing alerts will no longer be sent when a player joins that room.
Code for the functionality remains in case there is want to re-enable it (assuming it gets fixed).
2024-08-12 10:19:46 +00:00
Hipposgrumm
65eeb7dd53
Added support for Red Alert and Disco Alert ( #3 )
...
Revamped entire room Alerts system.
Merged RoomWithAlert into Room (as part of the revamp).
This added support for Red Alert and Disco Alert.
This meant that I had to revamp the room alerts system to allow for multiple alerts per room.
Events hopefully shouldn't overlap each other in the same room.
An extra feature is that an alert will start for a player that has just entered the room (with a duration reduced based on when the alert initially started). I shoved this functionality's working into SetUserVariablesHandler on line 30. This feature doesn't seem to work when leaving a non-MMO rooms such as minigames (may be related to missed JL command).
2024-08-12 10:19:46 +00:00
Robert Paciorek
518c01c43f
add support for dance alert
2024-08-12 10:19:41 +00:00
Robert Paciorek
0f161d899c
fixes for SuperSecret
...
- added logout handler
- support for api 0.x (MID as string)
- support for using SUV insted of SPV
- use zoneName from login request when no roomName in join room request
2024-04-22 02:48:37 +00:00
Robert Paciorek
7288957a78
add EventName settings variable
2024-04-10 20:47:37 +00:00
Robert Paciorek
dcb0644af4
add Optional Authentication mode
...
this allow run managment command (after authentication) on open mmo servers (with player from external api servers)
2024-04-09 16:53:17 +00:00
Spirtix
87a199fc19
ManagementCommands: list and disable all chats
2024-04-08 21:40:38 +02:00
Robert Paciorek
80b8874d50
fix SPV CUP sending condition
2024-04-07 17:05:13 +00:00
Spirtix
ac2b8d72ff
fix management command condition
2024-04-07 17:12:09 +02:00
Spirtix
b3724d9882
correct SPV CUP type
2024-04-07 16:50:37 +02:00
Spirtix
4cf58fd1db
fix room send concurrency
2024-04-07 16:41:55 +02:00
Spirtix
c60fe8a2fa
Revert "use ReaderWriterLockSlim for lock Room.clients"
...
This reverts commit a4039451f30ef2c1bb90b7ca47b42ba4a3076de6.
2024-04-07 16:40:34 +02:00
Spirtix
90457b6c78
chat commands
2024-04-07 15:42:36 +02:00
Spirtix
854d1c0b0a
management commands
2024-04-07 15:42:28 +02:00
Robert Paciorek
146b366e44
fix Public Message, add option to disable Events
...
- Position info and Boxes on races works (thanks to Public Message fix)
2024-04-07 15:42:25 +02:00
Robert Paciorek
8ca7b51161
rework PlayerData, SUV and SPV handlers
2024-04-07 15:42:25 +02:00
Robert Paciorek
a4039451f3
use ReaderWriterLockSlim for lock Room.clients
2024-04-07 15:42:25 +02:00
Robert Paciorek
d0c1839b11
use async handlers, add delay in PingHandler
...
client do NOT like ping < 16ms (considers it to be zero and this disables updates to other players' positions) ... so add some delay in PNG handler
2024-04-07 15:42:25 +02:00
Robert Paciorek
04b906b21c
add "JO" handler, fix "NT" value, support for WoJS
...
- add "JO" handler (private room join, like farm)
- "NT" param should be Unix timestamp in milliseconds
- "MBF" is not used by some games (e.g. WoJS)
2024-04-07 15:42:25 +02:00
Spirtix
a03f6b8dc0
user authentication
2024-04-07 15:42:21 +02:00
Robert Paciorek
08b74957a8
use MMOServer in appsettings.json for config
...
and improved run.sh
2024-03-28 10:40:54 +00:00
Robert Paciorek
82e83722da
fix client stay in room and add Room.Send
...
- fix client stay in room:
- replace Client.JoinRoom and Client.LeaveRoom by Client.SetRoom
- do not call Client.LeaveRoom / Client.SetRoom(null) for SheduleDisconnect cases
(only quietly remove client from room and the rest do in disconnect realisation)
- add Room.Send for send message to all clients in room
- replace Room.Client sending loops by calls Room.Send
2024-03-24 21:29:57 +00:00
Robert Paciorek
fa0870784a
add run.sh/bat, simplify/update docker config, ...
...
- add run.sh and run.bat
- change docker config
- by default include source in docker image for simple debug (can be disabled via uncoment section in Dockerfile)
- add docker-compose.yml
- change default time to start first battle event after server start (login first player) to 3 minutes
2024-03-19 20:45:56 +00:00
Robert Paciorek
445d032a74
bugfix in JoinRoom
2024-03-16 20:11:33 +00:00
Robert Paciorek
83e56f745d
fix possible race condition in JoinRoom
2024-03-09 19:05:03 +00:00
Robert Paciorek
6a34677ab2
keep some PlayerData while changing room
...
this is needed when several players are joined in a short time to fix race condition
(to fix missing players in race lobby room)
2024-03-09 17:05:56 +00:00
Robert Paciorek
13248e70c3
add main lobby countdown
2024-03-07 01:29:56 +00:00
Robert Paciorek
cf41c0175a
fix race condition issues - WorldEvent and others
2024-03-06 12:18:44 +00:00
Robert Paciorek
c909d07462
code quality fixes
2024-03-02 11:29:40 +00:00
Robert Paciorek
f1865bd4a3
bugfix
2024-03-02 00:04:22 +00:00
Robert Paciorek
c35226cc4e
fix lobby players list and racing room management
2024-03-01 23:27:17 +00:00
Robert Paciorek
aa373cd2a9
support for Thunder Run Racing
2024-03-01 02:42:13 +00:00
Robert Paciorek
bfbd9adb82
RespondJoinRoom in AddClient as atomic operation
...
to avoid missed player in rooms due to joining race condition
2024-03-01 02:34:43 +00:00
Robert Paciorek
fb2596d3be
add config options: ListenIP, AllowChaos, ...
...
and FirstEventTimer
2024-03-01 02:10:28 +00:00
Robert Paciorek
69a6761423
use PlayerData.GetNetworkData in SUV handler
2024-02-29 22:22:35 +00:00
Robert Paciorek
9b896f6326
add Client.JoinRoom()
2024-02-28 12:09:53 +00:00
Robert Paciorek
e7e2c21be6
Room improvements
...
- add comments for roomInfo array fiels
- allow external control for RoomVariables array
2024-02-28 02:22:18 +00:00
Robert Paciorek
5c6f39c800
add AddWithType, Param, VlElement to NetworkArray
...
also:
* replace StringParam, IntParam and DoubleParam by generic Param<T>() method
* use VlElement<T>() to build vl packets for World Event
2024-02-28 00:58:47 +00:00
Robert Paciorek
18ff27f8e7
calculate next event time based on the start time
...
... of current event (not the end time of current event)
2024-02-27 06:27:09 +00:00
Robert Paciorek
5a8d666a7b
support for Gauntlet (Fireball Frenzy)
...
also move SubscribeRoom and RespondJoinRoom from JoinRoomHandler to Room class
2024-02-27 06:25:00 +00:00
Robert Paciorek
7a8565c3b2
add sample config file (with default values)
2024-02-18 00:26:59 +00:00
Spirtix
7c504bb80a
support for server configuration
2024-02-17 21:45:01 +01:00
Robert Paciorek
31420034ff
fix chat announcement before event
2024-01-31 17:48:56 +01:00
Robert Paciorek
245fd2237a
bugfix userdata == "1" also mean "mounted"
2024-01-26 20:04:14 +01:00
Robert Paciorek
3f49b895b9
change baby dragon exploit approach
...
- fix invalid FP insted of disconnect
2024-01-26 20:04:14 +01:00
Robert Paciorek
89191a53ff
add check for mount state in FP data
2024-01-26 20:04:14 +01:00
Robert Paciorek
da480497af
adjust event start time
2024-01-26 19:56:36 +01:00