Guangcong Luo
c2d09f55b2
New protocol - significantly reduced network usage
2012-08-14 20:02:56 -07:00
Guangcong Luo
d3395c8727
Don't give Zarel admins automatically
...
(Zarel can still be given admins manually - see the code comments for details)
2012-08-12 18:33:06 -07:00
Guangcong Luo
6c57c77abb
Make sure rejoining users are redirected to the lobby
2012-08-12 16:30:33 -07:00
Guangcong Luo
59959ce24e
Chat commands for most user actions
...
- we're moving to a new protocol! wheee!
2012-08-12 13:44:59 -07:00
Guangcong Luo
076acf35fd
Make sure the Zarel exception doesn't crash exotic group configs
2012-08-10 20:23:46 -07:00
Guangcong Luo
231a9349d1
Offline promote/demote
2012-08-10 00:10:39 -07:00
Guangcong Luo
100ab0cfed
Increase throttle delay to 900ms
2012-08-09 20:45:06 -07:00
Guangcong Luo
b51dda2c8a
Increase throttle delay to 800ms
2012-08-08 23:50:56 -07:00
Guangcong Luo
47c7e02464
Batched ladder requests
2012-08-07 19:21:53 -07:00
Guangcong Luo
2ab4f287db
New request API
...
(preparation for batched requests)
2012-08-05 00:10:04 -07:00
Guangcong Luo
b43df9a084
Fix crash on disconnect
2012-08-04 01:06:51 -07:00
Guangcong Luo
b67840ba38
Increase spam throttle to 600ms
2012-08-01 22:53:46 -07:00
Bill Meltsner
b5ac054933
Also bojangles' avatar.
2012-08-01 20:45:10 -05:00
Bill Meltsner
fd802576ef
Add GreatSage's custom avatar.
2012-08-01 19:57:38 -05:00
Guangcong Luo
4831e68a8c
Multi-process battles!
...
Battles now occur in a separate process.
Hopefully, this results in a substantial increase in network stability.
WARNING: Battle crashes are now practically unrecoverable.
2012-08-01 13:48:58 -07:00
Guangcong Luo
febe9f7764
Fix one more crash in async verifier
2012-07-29 23:27:05 -07:00
Guangcong Luo
b162bf8f2a
Fix a crash when trying to log in
2012-07-29 16:06:06 -07:00
Guangcong Luo
a230425dcd
Fixes to verifier
2012-07-29 14:23:05 -07:00
Guangcong Luo
111e3b89c2
Experimental asynchronous user verifier
2012-07-29 14:13:58 -07:00
Guangcong Luo
37fe2f68de
Reject rename if given wrong token
2012-07-28 16:49:20 -07:00
Guangcong Luo
1dc63e446f
Even fewer console messages
2012-07-23 23:25:49 -07:00
Guangcong Luo
ba78f59052
Continue cutting down on what we print to console
2012-07-23 13:36:11 -07:00
Guangcong Luo
cf85b9cd76
Fix a few crashes when renaming
2012-07-21 20:13:08 -07:00
Guangcong Luo
a03d8906a3
Usernames starting with 'guest' can't chat/battle
2012-07-21 00:11:04 -07:00
Guangcong Luo
053bac374b
Basic implementation of new login
...
uses public key encryption instead of connecting to login server
2012-07-20 23:58:36 -07:00
Guangcong Luo
0db9ffc394
Severely cut down on the number of debug messages
2012-07-17 12:45:25 -07:00
Guangcong Luo
a47cb7f0d9
Stop asking login server for MMR
...
should relieve some login server stress
2012-07-16 22:16:43 -07:00
Bill Meltsner
567b1eb12d
Fix challenges forcing the players into random teams.
2012-07-16 00:42:39 -05:00
Guangcong Luo
e44a35e4af
Cache MMR - should decrease number of requests to server
2012-07-11 21:08:51 -04:00
Marty-D
9e25dcd1a9
Add some perma-avatars.
2012-07-10 18:32:08 -03:00
Bill Meltsner
c31ee2a428
Add SockJS as the default networking library.
...
You can still use Socket.IO by setting config.protocol in config.js.
2012-07-06 22:56:28 -05:00
Bill Meltsner
64d210940a
Add support for lists of words to be banned from being used in usernames (NOT chat).
...
& and higher can change the list with /banword and /unbanword (or /bw and /ubw respectively). The words/phrases are turned into IDs (only lowercase alphanumeric characters allowed) and checked against the ID form of a given username.
Keep in mind the list has no sense of context, and so overzealous banning, particularly of short or otherwise common words, should be avoided. Or else user "Cofagrigus" will want to have a word with you.
2012-07-01 21:46:55 -05:00
Cody Thompson
9b5d4da190
Steamroll wanted a dedicated avatar, so here!
2012-06-23 23:12:59 -04:00
Guangcong Luo
6afc717ef0
New ranking arrangement
2012-06-23 00:33:11 -07:00
Bill Meltsner
9f6e26b2db
Add Desolate to avatars list, this time without ruining line endings.
2012-06-11 14:17:21 -05:00
Bill Meltsner
8174271da8
Revert "added Desolate to permanent avatars list"
...
This reverts commit 567b0255b9 .
2012-06-11 14:15:42 -05:00
Angelo Licastro
567b0255b9
added Desolate to permanent avatars list
2012-06-11 12:34:22 -04:00
Bill Meltsner
c585cdacd9
Destroy a user's chat queue when they're disconnected.
2012-06-10 21:15:35 -05:00
Guangcong Luo
7a18f5a27b
Add Zarel to the permanent avatars list
...
(I swear I'll save it in the users database someday)
2012-06-08 16:06:38 -07:00
Guangcong Luo
7009b3a4bb
Revert bmelts's hasty porting of Id etc to Sugar.js extensions
...
- The reverted utility functions, toId/toUserid/sanitize/clampIntRange, were designed to handle unsanitized data gracefully
2012-06-08 15:44:49 -07:00
Guangcong Luo
37c8fca226
Even fewer globals:- getRoom -> Rooms.get, newRoom -> Rooms.create
...
- getUser -> Users.get
- getTime has been entirely removed; new Date().getTime() isn't that long
2012-06-08 14:51:40 -07:00
Guangcong Luo
f0e134a0ac
Revert bmelts's security fix (This should actually be fixed in the login server)
2012-06-03 14:07:56 -07:00
Bill Meltsner
a2be12e5b3
User renames now rely on the information provided by the login server, instead of blindly accepting the user's input.
2012-06-03 15:47:21 -05:00
Guangcong Luo
048d06239e
Chat throttling implemented
...
Happens mostly in users.js. Now, chatting is proxied through users.js, which handles throttling.
I tried to write my code to avoid race conditions, but I'm not entirely sure if I succeeded.
2012-05-31 02:42:52 -07:00
Guangcong Luo
af08b9a2fc
Refactor users.js again
...
This time, we're using an IIFE.
Ostensibly, it's so classes can have static private data in their own scope.
Really, it's so each class gets its own block, which also makes cold folding nice.
2012-05-31 02:42:51 -07:00
Bill Meltsner
ddca317952
Change the function declaration format to User.prototype.function.
2012-05-24 12:52:10 -05:00
Bill Meltsner
87fc45987d
A first shot at refactoring users.js to use the prototype.
...
Normally, this is used for OOP-style inheritance, but we're not really interested in that; mainly, we just want things to use less memory, and since Users are never garbage collected, sharing all those functions among the prototype should help cut down on memory usage considerably once you've got a few thousand people coming in and out.
2012-05-24 02:58:56 -05:00
Bill Meltsner
4f729aae7f
Refactor most utility functions (toId, clampIntRange, etc.) into Sugar extensions of the relevant objects.
2012-05-24 01:41:01 -05:00
Guangcong Luo
298c1e03f3
Fix yet another crash in nameLock...
...
we might want to consider getting rid of this nameLock implementation
2012-05-09 02:47:40 -04:00
Bill Meltsner
1c4a26da36
Fix a bug in User.nameLock which would prevent namelocking to specific names most of the time.
2012-05-08 03:36:05 -04:00