diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..45dc544 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,31 @@ +# Release Notes + +## Version 2.0 +- The project is now available under its own domain: [clocktower.online](https://clocktower.online) +- Added a feature that allows a live session Storyteller to automatically (and safely) distribute assigned + characters to all players that have claimed a seat, eliminating the need to manually tell every player their role +- Visible "night phase" that can be toggled by the Storyteller +- Voting history added with nomination and vote results +- Optional, audible voting countdown added (featuring an actual clock tower bell!) +- Fabled show up on the Night Order sheet and affect Grimoire night order counters +- Current game state can now be easily exported and imported in the form of a JSON text code +- Voting can be paused and sped up / slowed down in 0.5 second increments by the Storyteller +- Voting terminology changed to "Hand UP" / "Hand DOWN" and iconography updated +- Added meta-data support for custom scripts, that currently supports `name`, `author` and a custom `logo` through a + `_meta` role (note that a customized logo will not be synced to players in a live session) +- Players can no longer claim seats that are already occupied and only the Storyteller can vacate seats of other players + (players can still vacate their own seat) +- Characters selected in the bluff window now also show up in the list of reminder tokens +- Homebrew scripts / custom characters no longer automatically load in live sessions, for 2 resons: + - the players in a live session have no control over the script that the storyteller loads, + so a malicious storyteller could load a custom script that contains harmful / inappropriate images + - some homebrew scripts are quite big JSON files and synching these through the live session + server can cause traffic / performance issue easily + - this change may be reverted in the future when I figure out a way to sync custom characters safely and without + such a big impact on performance constraints +- Buggy (spamming) live session connections will now be terminated on the server side and display an error message +- Balloonist reminder tokens adjusted +- Live session URLs shortened +- Deus Ex Fiasco and Stormcatcher Fabled added / updated +- Custom Reminder text looks better when there is a lot of text +- added a README for the backend server diff --git a/server/index.js b/server/index.js index d326942..ae9136f 100644 --- a/server/index.js +++ b/server/index.js @@ -11,6 +11,7 @@ const server = https.createServer({ const wss = new WebSocket.Server({ ...(process.env.NODE_ENV === "development" ? { port: 8081 } : { server }), verifyClient: info => + info.origin && !!info.origin.match( /^https?:\/\/([^.]+\.github\.io|localhost|live\.clocktower\.online|eddbra1nprivatetownsquare\.xyz)/i ) diff --git a/src/store/socket.js b/src/store/socket.js index 5946416..dac0310 100644 --- a/src/store/socket.js +++ b/src/store/socket.js @@ -1,7 +1,6 @@ class LiveSession { constructor(store) { this._wss = "wss://live.clocktower.online:8080/"; - this._wss = "wss://baumgart.biz:8080/"; //todo: delete this //this._wss = "ws://localhost:8081/"; this._socket = null; this._isSpectator = true;