Thibault Duplessis
8d9a0d9ceb
Titivate DB more often
2012-04-21 12:03:36 +02:00
Thibault Duplessis
7bf9df3b5b
Compress nbp sound
2012-04-20 23:47:38 +02:00
Thibault Duplessis
da70aad326
Remove unused function
2012-04-20 14:53:02 +02:00
Thibault Duplessis
a9255bd35b
Improve AI driver choice performance
2012-04-20 12:33:31 +02:00
Thibault Duplessis
c894566b57
Add remote AI health to the status report
2012-04-20 12:33:03 +02:00
Thibault Duplessis
245a23a2a1
Remove unused watcher memo
2012-04-20 10:59:19 +02:00
Thibault Duplessis
0722fa44f5
Make better use of applicative builders
2012-04-20 10:12:27 +02:00
Thibault Duplessis
5990227ec3
Cleanup Game.next when games are removed
2012-04-20 09:27:35 +02:00
Thibault Duplessis
b10da80b5a
Report box load average
2012-04-19 23:38:18 +02:00
Thibault Duplessis
4319a885d3
Remove debug messages
2012-04-19 23:21:46 +02:00
Thibault Duplessis
a94feadfc9
Add UserRepo.byUsername IO function
2012-04-19 23:02:47 +02:00
Thibault Duplessis
d2a254c75a
Remove iocolor methods
2012-04-19 22:58:02 +02:00
Thibault Duplessis
db3af3dbbd
Regroup elo manipulation, add elo adjustement logic
2012-04-19 22:56:20 +02:00
Thibault Duplessis
e7e7efb3cd
Persist game last move time
2012-04-19 22:17:36 +02:00
Thibault Duplessis
808282204a
Fix game move socket data
2012-04-19 21:26:54 +02:00
Thibault Duplessis
2bbad28406
Fix game chat bug
2012-04-19 20:16:35 +02:00
Thibault Duplessis
d31c4866e5
Attempt to store player move times
2012-04-19 15:31:35 +02:00
Thibault Duplessis
b08ceaa84f
Implement player blurs
2012-04-19 15:08:18 +02:00
Thibault Duplessis
edb564f650
Tweaks
2012-04-19 14:04:07 +02:00
Thibault Duplessis
9122c7f103
The Env needs the play application for akka context, deal with it
2012-04-18 18:08:36 +02:00
Thibault Duplessis
db0484dbdf
Make db user fetching safer
2012-04-18 12:53:28 +02:00
Thibault Duplessis
848e3322b2
Move DbGame diffing in a distinct class
2012-04-18 12:44:56 +02:00
Thibault Duplessis
e2379dbc22
Remove unsafe DB accesses to add monad crazyness
2012-04-16 19:51:49 +02:00
Thibault Duplessis
1dd772b5b3
Add reporting actor
2012-04-16 13:27:32 +02:00
Thibault Duplessis
adc443d0fc
Remove extra code and make communications safer
2012-04-16 01:04:57 +02:00
Thibault Duplessis
19ee864461
Refactoring and code golf
2012-04-16 00:50:41 +02:00
Thibault Duplessis
1c19479e3a
Simplify hubs and jobs, remove game hub master
2012-04-16 00:30:27 +02:00
Thibault Duplessis
9c111eab28
Complete multisocketing
2012-04-16 00:01:03 +02:00
Thibault Duplessis
8f1677e198
Checkpoint before multisocketing
2012-04-15 23:18:46 +02:00
Thibault Duplessis
b98154109c
Remove all references to AliveMemo
2012-04-15 12:35:11 +02:00
Thibault Duplessis
e40f83ac83
Websocket refactoring wip
2012-04-15 12:29:56 +02:00
Thibault Duplessis
c00ed2699b
Checkpoint: game hub scheduled cleanup
2012-04-14 23:25:01 +02:00
Thibault Duplessis
cc54f45dea
More websocket stuff
2012-04-14 16:42:59 +02:00
Thibault Duplessis
b3ea12c381
Stuff. Lot of.
2012-04-11 01:12:07 +02:00
Thibault Duplessis
da9d5e79f0
move pieces using the socket - removing circular reference
2012-04-10 00:37:55 +02:00
Thibault Duplessis
76a71c0198
Stop invalidated channels actors
2012-04-09 23:56:12 +02:00
Thibault Duplessis
b7e57d03ce
Render the message event
2012-04-09 23:29:57 +02:00
Thibault Duplessis
3eb3c4a8f6
Send both to repo and game socket
2012-04-09 23:15:23 +02:00
Thibault Duplessis
e6fc096da3
Remove Evented monad, replaced by Progress monad
2012-04-09 22:26:56 +02:00
Thibault Duplessis
32cfdc35a5
Huge refactoring to get events out of player models
2012-04-09 21:59:19 +02:00
Thibault Duplessis
c2b03aa64d
More tweaks to the lobby hub
2012-04-08 14:20:19 +02:00
Thibault Duplessis
07a40215af
Better remote AI health management
2012-04-08 14:09:36 +02:00
Thibault Duplessis
2de6f27f6a
Simplify player count
2012-04-08 12:48:47 +02:00
Thibault Duplessis
45c1dfe93a
Merge branch 'master' into websocket
...
* master:
Fix bug when updating elo history
2012-04-08 12:35:54 +02:00
Thibault Duplessis
c63e56f57b
Deal with online usernames more efficiently
2012-04-07 18:16:20 +02:00
Thibault Duplessis
5da9b2f8bd
Better hook synchronization
2012-04-07 17:30:35 +02:00
Thibault Duplessis
72cc4c0a1e
Simplify cron runner
2012-04-07 16:51:27 +02:00
Thibault Duplessis
abcfb2e7bc
A better way to report number of players with less code
2012-04-07 15:10:12 +02:00
Thibault Duplessis
31c2d1d39f
Add socket pool to register uids
2012-04-07 14:22:33 +02:00
Thibault Duplessis
23bb368bf5
Fix lobby game redirection
2012-04-07 10:36:06 +02:00
Thibault Duplessis
49fb48e582
Improve lobby preloader to handle more edge cases
2012-04-07 10:21:20 +02:00
Thibault Duplessis
67aaee913c
Fix hook auto-cancelation
2012-04-06 21:54:33 +02:00
Thibault Duplessis
22f7a5f816
Redirect when hook is biten
2012-04-06 21:36:38 +02:00
Thibault Duplessis
2e9e718b0f
Version lobby websocket messages to ensure everybody is uptodate
2012-04-06 20:13:45 +02:00
Thibault Duplessis
6894490189
Implement custom Enumerator, a PushEnumerator but with initial messages
2012-04-06 19:54:08 +02:00
Thibault Duplessis
9c93cc18bc
Reduce websocket data overhead
2012-04-06 15:07:32 +02:00
Thibault Duplessis
345d0762fb
Websocket'd lobby hooks
2012-04-06 14:35:51 +02:00
Thibault Duplessis
4a5c791989
Merge branch 'master' into websocket
...
* master:
Don't create remote AI http class
Use a byte array input stream in crafty server
Delay AI service creation to continuously check remote AI health
Fix user elo history game saving
Conflicts:
app/Starter.scala
todo
2012-04-06 10:09:06 +02:00
Thibault Duplessis
b89d49523f
Merge branch 'master' into websocket
...
* master:
Add global ai.server mode (no cron)
Configure remote AI url
Move remote AI logic to a distinct controller
Improve remote AI health reporting
Defer Crafty AI processing to a remote server, and check its health
Don't break on empty db.lobby_entry
Conflicts:
app/ai/CraftyAi.scala
project/Build.scala
system/src/main/scala/memo/EntryMemo.scala
2012-04-05 22:32:46 +02:00
Thibault Duplessis
b5cf48541c
Add global ai.server mode (no cron)
2012-04-05 22:18:50 +02:00
Thibault Duplessis
b586d016f1
Move remote AI logic to a distinct controller
2012-04-05 22:10:09 +02:00
Thibault Duplessis
5c48b1c05b
Improve remote AI health reporting
2012-04-05 22:09:49 +02:00
Thibault Duplessis
1746584c58
Defer Crafty AI processing to a remote server, and check its health
2012-04-05 21:19:05 +02:00
Thibault Duplessis
858864c9ba
Reorganize the whole lobby thing
2012-04-05 18:53:04 +02:00
Thibault Duplessis
42ddd61387
Move all tests to /test
2012-04-05 11:01:45 +02:00
Thibault Duplessis
8a56b21b7b
Move all system code to app/
2012-04-05 10:54:45 +02:00
Thibault Duplessis
b1fe7ccb05
Implement whole lobby chat room
2012-04-04 21:38:10 +02:00
Thibault Duplessis
9100c00154
Replace lobby syncer with lobby preloader
2012-04-04 00:12:41 +02:00
Thibault Duplessis
eddcfae0f6
First try with socket-based lobby
2012-04-03 19:16:01 +02:00
Thibault Duplessis
f1cc2995c0
Deal with not found in syncs
2012-04-02 18:42:22 +02:00
Thibault Duplessis
15cf94c95b
Format ping json manually
2012-04-02 17:34:14 +02:00
Thibault Duplessis
697c5287ba
Add game finish command as a service
2012-04-02 12:24:39 +02:00
Thibault Duplessis
b6762a85e3
Improve crons
2012-04-02 10:49:16 +02:00
Thibault Duplessis
cbe832bcf8
Improve ai reverse engineering error reporting
2012-04-01 20:22:00 +02:00
Thibault Duplessis
bd606b27c5
Implement draw-decline and draw-cancel, remove internal draw api
2012-04-01 19:23:33 +02:00
Thibault Duplessis
b9004cbf94
Add draw offer logic
2012-04-01 19:03:44 +02:00
Thibault Duplessis
8deb06dd93
Add nbGames action
2012-04-01 14:41:28 +02:00
Thibault Duplessis
b247dab4e3
Implement database cleanup commands
2012-04-01 11:45:06 +02:00
Thibault Duplessis
2b8a3e8559
Make move calls asynchronous
2012-04-01 10:37:48 +02:00
Thibault Duplessis
a81fd1e45a
Add numbers writeables and content types
2012-04-01 10:37:36 +02:00
Thibault Duplessis
112e951deb
Fix outoftime xhr call
2012-03-31 23:48:03 +02:00
Thibault Duplessis
689b70de6a
Add player version api call
2012-03-31 21:25:09 +02:00
Thibault Duplessis
38891e64df
Add player show api call
2012-03-31 21:14:20 +02:00
Thibault Duplessis
628e7fa133
Fix removal of dead hooks
2012-03-31 13:41:56 +02:00
Thibault Duplessis
7f59985c2b
Move hook removal from api to xhr
2012-03-31 13:22:03 +02:00
Thibault Duplessis
1c4d32a553
Make game sync and lobby sync asynchronous
2012-03-31 11:20:33 +02:00
Thibault Duplessis
ec6a233b09
Add cli project
2012-03-29 19:28:08 +02:00
Thibault Duplessis
b441faf115
Refactor and import more code from lichess
2012-03-29 19:12:23 +02:00
Thibault Duplessis
61588766a0
Implement game room
2012-03-29 15:25:14 +02:00
Thibault Duplessis
bd5d611b95
Handle chat-less lobby sync
2012-03-29 10:39:37 +02:00
Thibault Duplessis
838afda9e6
More endgames and Pov refactoring
2012-03-29 00:23:10 +02:00
Thibault Duplessis
0da37614fb
Start implementing end game logic
2012-03-28 23:01:04 +02:00
Thibault Duplessis
1920e8918d
Half working chess clock, time conversion issues
2012-03-26 18:42:12 +02:00
Thibault Duplessis
4908ab9d1f
Handle ai first move
2012-03-26 12:28:15 +02:00
Thibault Duplessis
875516529b
Lobby timeline and messages, ping hook id
2012-03-25 22:43:18 +02:00
Thibault Duplessis
9dac236e3d
Lot of work just got done
2012-03-24 01:42:50 +01:00
Thibault Duplessis
75f416f6aa
More hook stuff
2012-03-23 11:20:58 +01:00
Thibault Duplessis
74e1c9a0e1
Don't do hook persistence
2012-03-22 21:24:48 +01:00
Thibault Duplessis
6f060ebab2
Implement lobby hook creation
2012-03-22 21:03:03 +01:00
Thibault Duplessis
6d14a39884
Implement lobby preload
2012-03-22 00:47:08 +01:00
Thibault Duplessis
e1fb905119
Start lobby implementation, fix tests, and more
2012-03-21 01:08:32 +01:00
Thibault Duplessis
59c8081005
Reorganize controllers and apis
2012-03-20 20:50:51 +01:00
Thibault Duplessis
472efe44a1
Implement draw messages and events
2012-03-19 23:25:14 +01:00
Thibault Duplessis
758841bb7a
Add more entry points
2012-03-19 22:39:51 +01:00
Thibault Duplessis
b120695c14
Configure crons
2012-03-19 21:33:18 +01:00
Thibault Duplessis
e6dc7ce4d4
Add cron class with online username updater job
2012-03-19 21:15:37 +01:00
Thibault Duplessis
860b275c50
Move HttpEnv to Global object and prepare for actors
2012-03-18 23:39:30 +01:00
Thibault Duplessis
cb85603714
Add public sync for watchers
2012-03-18 21:22:00 +01:00
Thibault Duplessis
a3e557ab50
Activity, watchers, ping, and more
2012-03-18 21:10:51 +01:00
Thibault Duplessis
99f437de02
Handle alive expiry cache
2012-03-18 16:32:18 +01:00
Thibault Duplessis
5f9411fbf2
Handle rematch
2012-03-18 14:20:38 +01:00
Thibault Duplessis
c3813f3359
Improve controllers
2012-03-18 11:49:19 +01:00
Thibault Duplessis
bf80c8228f
Implement join internal api
2012-03-18 10:54:27 +01:00
Thibault Duplessis
408cf76679
Ensure static environment
2012-03-17 23:04:02 +01:00
Thibault Duplessis
076211e0b4
Split up application and internal api
2012-03-17 22:28:07 +01:00
Thibault Duplessis
13101a42c1
Communication with lichess
2012-03-17 21:18:52 +01:00
Thibault Duplessis
8a3922cb50
Event export and basic sync: can play with the AI
2012-03-17 10:14:12 +01:00
Thibault Duplessis
ef73f21eed
Start sync implementation
2012-03-16 23:18:06 +01:00
Thibault Duplessis
bee62af887
Better move request implementation
2012-03-16 15:31:26 +01:00
Thibault Duplessis
23d61a5d1a
Implement move request
2012-03-16 00:05:21 +01:00
Thibault Duplessis
ce7ca7ea11
Make the HttpEnv extend the SystemEnv trait
2012-03-15 23:03:54 +01:00
Thibault Duplessis
3b63327632
Convert to play2 project
2012-03-15 23:00:06 +01:00
Thibault Duplessis
1b03b1e6fc
Use play-mini instead of play2
2012-02-23 12:47:05 +01:00
Thibault Duplessis
d6f27cafa4
First commit with minimalized play2 installation
2012-02-19 12:55:30 +01:00