Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-09-20 | Batch game state related database updates into transactions. | Tor Andersson | |
Only update game 'mtime' when the active player changes. | |||
2023-09-18 | Tweak title globals. | Tor Andersson | |
2023-09-18 | Optimize game options parsing and formatting. | Tor Andersson | |
Sort player names in game boxes by role order. | |||
2023-09-18 | Don't show "ready to start" games on public game list. | Tor Andersson | |
2023-09-18 | Enforce limits on how many games you can create and join. | Tor Andersson | |
Also limit joining more games if you have too many games waiting. Generous default limits: 7 open, 29 active, and 3 waiting. | |||
2023-09-15 | Fix crash when updating unread chats if anonymous observers are present. | Tor Andersson | |
2023-09-15 | Improve sync error handling. | Tor Andersson | |
1) Show warning during one second then resume game. 2) Don't update cookie during simultaneous turns. When playing SoT live, discarding cards at the same time leads to many harmless in-flight action collision errors, which don't really matter. If we stop updating the cookie during simultaneous turns, we can avoid this. | |||
2023-09-13 | Calculate Elo ratings. | Tor Andersson | |
Primarily for use with future matchmaking system to provide better games for everyone. Show top 5 players of each game on the game pages. | |||
2023-09-13 | Set player_count in database for faster and easier logic. | Tor Andersson | |
Track ready to start and unjoined games in "active" header. | |||
2023-09-13 | Don't show private open games on user page. | Tor Andersson | |
2023-09-13 | Add mail verification. | Tor Andersson | |
2023-09-13 | Don't return unused replay_id from put_replay. | Tor Andersson | |
2023-09-12 | Notification system improvements. | Tor Andersson | |
Enable webhook notification support with .env WEBHOOKS=1 Send notifications when invited to a game. Use notification "too soon" logic for webhooks as well. Try sending webhooks 3 times before giving up. Check if player is on the join page instead of the funky "offline" check when sending "your game is ready" notification. Only show mail/webhook notification settings if they are enabled. | |||
2023-08-12 | Use synchronization cookie to prevent action de-sync errors. | Tor Andersson | |
2023-08-11 | Remove backup dance. | Tor Andersson | |
Use VACUUM INTO 'backup.db' instead. | |||
2023-08-10 | Fix rematch button. | Tor Andersson | |
2023-07-13 | Handle websocket errors. | Tor Andersson | |
2023-07-13 | Add "xtime" column for games to record finish date when state is missing. | Tor Andersson | |
2023-07-13 | Use sequential per-game chat ids. | Tor Andersson | |
2023-07-13 | Use status constants. | Tor Andersson | |
2023-07-01 | Add "snapshot" replay view during play. | Tor Andersson | |
Snapshots store game state without undo and only log length. Combined with the final game state's log we can recreate the view from any snapshot quickly. Move replay code into separate script file, loaded only when used. Prefix system "setup", "resign", and "restore" actions with a period. | |||
2023-06-25 | Parse strings as GMT for "human_date" formatting. | Tor Andersson | |
2023-06-16 | Update user last seen when connecting to websocket. | Tor Andersson | |
2023-06-05 | Remove stale stuff. | Tor Andersson | |
2023-05-23 | Improve replay id handling. | Tor Andersson | |
Use a without rowid table and create the replay_id dynamically. This saves a lot of database space and performance as it removes the need for a separate index. | |||
2023-05-08 | Format 1-player option. | Tor Andersson | |
2023-05-05 | Trigger backup from main database process. | Tor Andersson | |
Sqlite backups from the same database connection are much more efficient! Externally triggered backups restart every time the database changes during a backup, or need to lock the database exclusively for a long time. We periodically look for a "backup.request" file, and if it exists will write a backup. We write to "backup.tmp" first, and when finished rename the file to "backup.db". A crontab job can touch the "backup.request" file and then wait for the "backup.db" file to appear. | |||
2023-04-28 | Parse game options before passing to "roles" callback. | Tor Andersson | |
2023-04-28 | Rename game "description" to "notice". | Tor Andersson | |
2023-04-28 | Don't crash if event streams are still listening when deleting a game. | Tor Andersson | |
2023-04-18 | Rename "game_over" to "game_finished" in server. | Tor Andersson | |
2023-04-18 | Fix ESLint issues. | Tor Andersson | |
2023-04-18 | Some cleanups. | Tor Andersson | |
Clean up stats page. Remove user list page. Remove duplicate remove contact page. Fix silly bug. oops! | |||
2023-04-18 | Make date and time handling usable with both julianday and datetime. | Tor Andersson | |
Use datetime instead of julianday when not performance sensitive. Keep julianday for logins. | |||
2023-04-18 | Remove chat log pages. | Tor Andersson | |
The unread chat badge in the game lists should be enough. | |||
2023-04-18 | Generate JSON for replay view in SQL. | Tor Andersson | |
Also optimize the format by not JSON encoding some data twice. | |||
2023-04-18 | Only send required information in "players" message. | Tor Andersson | |
2023-04-18 | Forum search using FTS5. | Tor Andersson | |
2023-03-27 | Don't spam "Ready to start!" webhook notifications. | Tor Andersson | |
2023-03-17 | Avoid action name collision with debugging command "restore". | Tor Andersson | |
2023-03-17 | Update Webhooks to allow custom JSON property for message content. | Tor Andersson | |
Support Slack and others. | |||
2023-03-01 | Send presence as an array instead of an object! | Tor Andersson | |
2023-03-01 | Separate ready and full status for display in game lists. | Tor Andersson | |
2023-02-26 | Delete cached game info in join_clients when game is deleted. | Tor Andersson | |
2023-02-26 | Put full game links in mail. | Tor Andersson | |
2023-02-26 | Only show public games where the owner has joined. | Tor Andersson | |
2023-02-26 | Invite player system. | Tor Andersson | |
2023-02-24 | Use URL search params instead of funky colon separated arguments. | Tor Andersson | |
2023-02-24 | Optimize replay. | Tor Andersson | |
Send raw array rather than objects over the wire. | |||
2023-02-23 | Limit number of games shown on public games page. | Tor Andersson | |