# SmartFoxServer 3 v3.0.3_beta cumulative patch

PLEASE NOTE: this cumulative patch requires SmartFoxServer3 3.0.0_beta. If you're running a version that is lower than 3.0.0_beta, install 3.0.0_beta first and then apply this patch. SmartFoxServer 3 Download page

## How to use

- Unzip the patch and copy the decompressed folder inside your SmartFoxServer3/ installation folder.
- Open the patch folder.
- Run one of the three launch scripts based on your operating system:
  - Windows: double click the install-windows.bat file
  - Linux: from a terminal run the install-linux.sh script
  - macOS: from a terminal run the install-macos.sh script

NOTE:
Under Windows 10/11 the default Zip utility will create an additional folder with the same name as the .zip file, if you extract the file from the contextual menu. We recommend double clicking the patch file instead and dragging the main folder to the SmartFoxServer3/ directory in your drive.

### Version 3.0.3_beta

- Server Side
  - NEW: min required client API version is now 3.1.0
  - NEW: updated client API in AdminTool
  - NEW: added client side error event when joining a non-existent Room. Triggers a client side SFSEvent.ROOM_JOIN_ERROR with a custom message
  - NEW: improved error reporting for RDP failures so that a UDP disconnection provides more details on what went wrong
  - NEW: changed policy to disconnect kicked user faster
  - FIX: fixed issue that may add some latency for fragmented RDP packets
  - FIX: fixed security issue during reconnection for encrypted sessions. The reconnection handshake can only be sent in clear by the client. Upon successful reconnection the session token is re-generated and sent encrypted, to keep it secure
  - FIX: internal consistency fix in usage of String vs ShortString formats for different system requests

### Version 3.0.2_beta

- Server Side
  - NEW: installer for ARM64 Linux distros (AArch64) is now available
  - NEW: support for audio streaming via Websockets, including HTML/JS and Unity WebGL
  - NEW: updated HTML/JS client API, now supporting fully-featured, live audio streaming in your games and applications
  - FIX: issue that would prevent an TLS/SSL UDP connection to stream audio data

### Version 3.0.1_beta

- AdminTool
  - NEW: in Zone Monitor, added UDP stats charts for monitored User
  - NEW: in Zone Monitor, added controls to ban and unban users from a specific Room, see the doc here and here for more info
  - FIX: fixed issue with "Kill connection" button not working correctly for websocket connections
- Server Side
  - NEW: new API for banning Users from a specific Room. This is a short-lived, non-persistent ban for temporarily getting rid of pesky Users, typically lasting several minutes or hours. The player won't be able to join the Room until the ban expires or it is manually removed
    NOTE: The Users allowed to ban someone from a Room are the Room's owner and Mods or Admins
    For more details see SFSApi.banUsersFromRoom()/unbanUsersFromRoom() and the corresponding client-side requests
  - FIX: bug with SFSApi.checkSecurePassword() when using an SSL connection, which reported a password-check failure even when the correct password was provided