Premium Accounts
Get extra features and no ads!

Serpentine Blog

Connection Issues Thread - By: Adam Plumb - 16.2 years ago
Hi everyone, I know a lot of people have problems with the game either freezing up or actually getting into a game. To be completely honest, I don't yet know why these problems are happening, as I haven't been able to find a consistent way to reproduce the problem myself (and hence figure out why things aren't working). So I've started a thread in the forum asking some questions of people with connection problems. I also provide a few suggestions that may or may not make any difference.

Connection Problems Survey/Suggestions Thread

Game Sounds - By: Adam Plumb - 16.2 years ago
Game Sounds! Click the "Sound" checkbox above the words list to enable sounds. Un-check it to mute the sounds.
Sunday afternoon crash - By: Adam Plumb - 16.2 years ago
Looks like the server crashed this afternoon. It's back up though, and the problem should be fixed.
Sunday morning update - By: Adam Plumb - 16.2 years ago
hi all, a few changes this morning that I warned you about yesterday.
  • I finally fixed the blue words issue
  • I tweaked the rating group colors several times over the week and didn't really mention it
  • Added a new "times up" note to words when entering words too late
  • Forum threads now show all messages, instead of just one at a time (this is changeable in the options)
I'm working on fixing the words/chart not showing up, and to hopefully improve performance when there are a lot of people playing(30+) at the same time. Hopefully we'll see some fixes for that soon.
Update set for sunday morning - By: Adam Plumb - 16.2 years ago
hi guys, seems like a lot of people are playing this afternoon, so I'm going to wait until tomorrow morning to do a server update. A couple things you can expect to see is the blue words working correctly, hopefully more consistent wordlist/chart showing up (working on this), and an updated forum.

I'm looking into adding sounds to the game as well, and I wrote a post about this in the Serpentine forum. I'd like peoples' opinions on what they'd like for game sounds, and if possible, the actual sound clips themselves.

Forum!!! - By: Adam Plumb - 16.2 years ago
Hi Everyone!

I'm excited to announce that Cobra Dragon Games now has a working forum! You can all thank my brother, Alex, for his tireless efforts and putting up with my constant nagging. He's done a really nice job, and I can't wait for you all to use it.

Since the forum is still new, there are bound to be some bugs and areas that can be improved. Don't be shy! There's an entire forum devoted to discussing suggestions, and one devoted to reporting bugs.

Enjoy!

P.S. There is a link to the forum on the home page at the top, right above the games list. Then there is another one in the lobby.
Some perspective on ratings - By: Adam Plumb - 16.2 years ago
I understand a lot of you are getting frustrated with the new ratings system. However, the thing you need to realize is that the old system was convoluted and flawed. I could have kept it the way it was, but I want the ratings system to be a fair and accurate representation of people's abilities, and not just a ranking system. Indeed, as a ranking system it worked pretty well. Most of the old tanglers were on top and doing well, but the system wasn't accurately representing players' skill levels. For example, Paco, probably our best player, had a rating of about 1900, whereas I had a rating of around 1400. In any given round, he would probably double or even triple my score, yet his rating was only 1.36 times my rating. I wanted a person's ratings to show you how you would do relative to another person. So if your rating is 1200 and someone else has a rating of 2400, then they should generally get double your score in a game. If they get less than double, their rating goes down, if they get more than double, their rating goes up.

Paco and some of the other tanglers will probably plateau around 3000 to 4000 and never get any higher, which is alright. Once they get up there, normal folk like you and me will have a much easier time of it. I hope your frustrations aren't causing you guys to leave the site. But if you are considering, send me an email and I'll talk you down ;)

Saturday Afternoon Update - By: Adam Plumb - 16.2 years ago
hi all, the server is down for an update. Will be back up shortly.

Update much later: You may have noticed the server is back up, well that's because I forgot to update this entry.

Major updatage of the ratings system.

Some small changes, and a word about ratings. - By: Adam Plumb - 16.2 years ago
I've been a busy little bee making little tweaks and changes the past day or two, getting things nice and working. Nothing NEW mind you, just bugfixes...
  • Made fixes to the serpentine chat window and words list windows, they now should scroll better, and more naturally
  • Changed the Journeyman color to a shade of orange
  • Now keeping track of the last time you logged in (part of a larger set of changes that will come later)
  • Added an email confirmation field when registering, will prevent email typos
  • When a newly registered person tries to log in without validating their account, they now have a more informative error message.
  • Some administrative tools have been improved.
Now, about the ratings...

Sometime soon I will be changing the ratings algorithm in a major way. It will be simpler, more volatile, and there will be a more direct connection between your rating, your score, and the ratings and scores of the others you play with. I won't get into the exact algorithm currently used, it is too convoluted, but I will talk about the new one, and how you can calculate it...

Let us say there are three people playing in a room. After a game, but before recalculating their ratings, they have the following ratings and scores:

NameScoreRating
Adam401100
Alex901600
Jenny701300

Based on their score and rating, and the respective scores and of the others in the room, each player gets an "expected" score. This is the score that they need to get in order to have their ratings stay the same. If their actual score is greater than their expected score, their ratings will go up, otherwise their ratings will go down. Expected Scores are calculated by dividing the sum of scores (40+90+70=200) by the sum of ratings (1100+1600+1300=4000). The resulting quotient, .05, is multiplied by each person's current rating (i.e. 1100 x .05) to get their expected score. Here's a table...

NameExpected ScoreScore
Adam5540
Alex8090
Jenny6570

You can see here that both Alex and Jenny did better than expected, but poor Adam did worse. Therefore, we know that both Alex's and Jenny's ratings will go up, but Adam's will go down. But, how much?

Here is where things get a bit tricky. There is no one perfect way of determining how much their ratings change, because it is mostly arbitrary. It is simply a matter of making up some rules for what the maximum amount of change per game will be, and how much over or under the expected score the player has to be in order to get that maximum. In our case, I've decided that the maximum change in points one can get per game is 16 (the current number), and in order to get +/- 16 points per game you either have to get a score that is 75% greater than expected or 75% worse than expected. For example, Jenny's expected score is 65 points. But if she get's 75% greater than that (or 1.75 x 65), which is 114, then her rating will improve by 16 points. However, if she get's 75% worse than expected (or .25 x 65), which is 16, then her rating will decrease by 16 points. Anywhere from 25% of the expected score to 175% the expected score will bring a range of -16 to +16 points. If you fall outside of that range, your rating will be limited to the maximum change (+/- 16). Also, there is a mimimum allowable rating of 100 and a maximum of 9999, so players will never exceed those amounts.

Let's look at how the players' ratings changed:

NameExpected ScoreScoreOld RatingNew Rating
Adam554011001096
Alex809016001602
Jenny657013001301

I hope this will help you all understand how things are going to change. If you have any questions, shoot me an email and I'll do my best to answer. This new algorithm won't come into effect until probably tomorrow morning.

Thursday morning update - By: Adam Plumb - 16.2 years ago
The server is down for an update. Will be back up soon.

Update: Back up! (9:41 EST)

Here are the changes you can expect to see:

  • No longer keeping track of score stats (still keeping word lengths and rating changes), as well as numbers of words in a game. Keeping the stats like I have been takes a lot of resources, and I'm figuring out what I can keep and what I still need to throw out.
  • Fixed a bug in the word chart where it sometimes displayed the wrong numbers
  • Now, the word list on the left shows the "Top Words" of that board, showing the top 150 words findable on the board (not just what people got). It also shows how many people got each word
Client-side Bug-fix update - By: Adam Plumb - 16.2 years ago
Today was mostly a fix for some issues that cropped up from the major update on sunday morning. Here is a list:
  • Word chart now gets reset to zero every round
  • Removed some wasted white space above the game board
  • Changed "Words others got" wording to "Words everyone got"
  • Sometimes, if you ejected yourself from the game and came back, it would show an old game board, and wouldn't update until the next round. This is fixed.
I'm debating with myself whether or not to to rework the site's rating system. Currently, I'm using a somewhat hacked apart version of the standard chess rating system. Each person in a round has their rating measured against everyone else in the room to see how they are expected to do (win/lose on a sliding scale of 0 to 1), then their respective scores are compared in order to see how to did. If their score is higher than expected, their rating goes up. However, if their score is lower than expected, their rating goes down.

This system seems to be working reasonably well. However, because so many current players are old pros from the tangleword days, there are players that should have 3000+ ratings (according to their scores), but are still stuck down in the 1600s. In my opinion, the ratings system is about accurately measuring the abilities of a person relative to the other players in the room. And it could be doing a better job.

The alternative rating system I'm thinking about is (I believe) based on the tangleword approach. Add each score in a room, then add each rating in the room, then divide the sum of the scores by the sum of the ratings. Then to get each person's "expected" score, multiply that quotient by each person's rating. If a person's score is higher than this expected score, it goes up, and it goes down if it is lower. Indeed, this seems like a good plan and ratings are directly tied to relative scores, which is a good thing. I'm still mulling over whether I want to make the change, but it could happen. If it does, then ratings will become MUCH more volatile than they currently are. Some people will go way up and some will go way down. But it will be fair.

SUNDAY AFTERNOON UPDATE - By: Adam Plumb - 16.2 years ago
Currently down for an update, should be up soon. (2:23 EST)

Edit:

The game server is back up.

Here are the changes since last time:

  • There is now a word chart that shows how many words of differing letters there are
  • The "Words Others Got" list is now sorted in order of largest to smallest
  • Mousing is changed and hopefully improved. The new action is to click on the first letter of a word, mouse over the word, then click on the last letter to send the word. It also now keeps the word that you're working on highlighted.
  • Improved the efficiency of the chat window, hopefully removed some bugs
  • Ratings are now a bit more volatile for players with a lot of games.
  • Tweaked some rules for some of the rooms
I just want to mention that Paco is our first 1700+ player! My hope with increasing the rating volatility is less for a guy like Paco who is going to do great anyway, but more for the medium-level people that don't get enough sensitivity in their rating changes.

In forum news, Alex is working hard and he's shown me some previews: they look great! I can't wait to get that up and live for you guys because you're going to love it!

FRIDAY MORNING UPDATE (Done) - By: Adam Plumb - 16.2 years ago
The game is currently down for an update. Stay tuned!

Update:

The game is back up. Here are the changes for today:

  • Now keeping some statistics about players and words. You can see the current reports by clicking on the stats links on the homepage or the lobby pages
  • Now, when you rotate the board, the word entry box is immediately focused.
  • Now, at the end of each round the chat entry is focused. At the beginning, the word entry is focused
  • Added two new Serpentine Rooms! One is a 5x5, 5 letter-min board, the other is a 4x4, 3 letter-min quick round (30s each)
  • Various small tweaks on the server
Big Email Mishap - By: Adam Plumb - 16.2 years ago
hey everyone, So this morning I realized that I had never forwarded the new adam@cobradragon.com and beastmaster@cobradragon.com emails to my normal email address. The result is that I've gotten about 75+ emails over the past couple weeks that have gone unanswered. I've tried answering most of them, but if you still haven't received a reply then please send me another email and I promise I will get back to you.
Very possibly over the hump. - By: Adam Plumb - 16.2 years ago
After several days of working on different solutions, I think the constant crashes are finally over with. The problem mostly lies with me not completely understanding the subtleties of python exception handling.

I made a few changes to the site this morning as well:

  • Moved the Leave Game button to underneath the words box
  • In the lobby, the rating that appears at the top of the page for each player is no longer cached (it will now always be correct)
  • Added a new Ratings page that will let you look at all the players' ratings and # of games played. You can get there by clicking on the More link underneath the top ten in the lobby.
One bit of fun news is that my brother (alexplumb) is going to creating a messageboard for us to all use. I understand that a lot of you probably want a place to connect and talk about things, so this will be just the ticket. So if you see alex playing, tell him to stop and work on the messageboard instead ;)
Finally, I hope to start working soon on some more interesting game improvements and hopefully even the next game. Time is a bit scarce at the moment, but we're moving along.
Server crashes - By: Adam Plumb - 16.2 years ago
In the spirit of keeping people up on current events, I've been battling with the server to not crash every day or so like it has been. Up until this morning, I had no idea what it could have been, but the last time I restarted the game server I ran it in a debugger called gdb. With the debugger running, now when the server crashes I can see in the code roughly where the crash originated.

Since the server crashed last night, I was able to find the culprit: python's _mysql module. Not that the module itself was to blame, no, it was more my ignorance. Apparently, a mysql connection cannot be used between threads, which is something I'm pretty sure I was doing. The result is that I've made some changes that should make the mysql calls thread safe (I hope). I'm pretty new to threaded python programming, so there will probably be a few more bumps along the way, but things will eventually get better.

Changes made this morning - By: Adam Plumb - 16.2 years ago
As promised, I've made some Serpentine changes that people may like. Here they are in no particular order:
  • Drag-style mousing works. Still isn't quite perfect but it's workable
  • Board rotation
  • New ENABLE2K dictionary
  • Fixed bugs where Words others got and word-at-last-second doesn't show up at the end of rounds
  • Improvements to the game server
  • Fixed scrolling in the chat window so you can go back to look at previous char remarks
Big update tomorrow morning - By: Adam Plumb - 16.2 years ago
hey guys, the two major features everybody is asking for will be arriving tomorrow morning! That's right, you'll be able to rotate the board AND drag-style mousing will now be enabled (through a checkbox). In addition, I believe I've fixed several large bugs, including "Words Others Got" not showing up, and not getting a word in at the last second. These will both be fixed. Expect the server to be down at 8AM EST tomorrow for the updates. If all goes well it will only be down for less than 10 minutes.
Downtime - By: Adam Plumb - 16.2 years ago
Looks like there was some unplanned downtime (i.e. the game server I wrote crashed), but the server is back up. I don't know yet what caused it, but it looks like it happens after the game has been running for 20-30 hours or so. Hopefully I'll get it fixed soon.
Paypal donation Button - By: Adam Plumb - 16.2 years ago
I hope everyone is having a good time playing Serpentine, because I have, and I've had a great time making it as well. Indeed, I built this site because I missed Tangleword and wanted to play it again. In addition, I thought it would be quite fun to be able to make other games that I would want to play. So I went ahead and put the site together and so far it has been very successful.

I don't currently have any plans to make money off of Cobra Dragon Games, but I've put up a paypal "Donate" button on the homepage so that people could donate money in support of the site if they wish. Running this site is not free for me, but don't feel obligated to make a donation unless you want to. I just wanted to put the option out there for the people that do. FYI, there is no set amount, so you can donate ten cents or ten dollars, it is entirely up to you.

In other news, we've had a pretty good influx of players in the past day or so. Welcome everyone! I understand that everyone misses mousing and board rotating in Serpentine, and I will make an effort to at least put in board rotating. I can't promise mousing, but I'll take a look at how hard it would be to do.

Improvements in Serpentine Solver lead to more/better rooms - By: Adam Plumb - 16.2 years ago
I found a way to drastically improve the performance of my Serpentine board solver (the program that finds all valid words in a board), and the result is that we can now have 6x6 rooms with 5-letter minimums. The improvement went from about 60 seconds to solve a 6x6 board to about .15 seconds (yes that is a big change), which means that the number of rooms is much less important.

I've taken some recommendations to heart and have switched up the room system a bit to incorporate the suggestions. Let me know how you feel about the changes!

NOTE: As of today my nickname is "adamplumb" instead of "Atticus" so people can know who I am more easily.

Added a winner message, and remote control - By: Adam Plumb - 16.2 years ago
The more I play Serpentine with folks, the more features I remember from my Tangleword days. Indeed, one such feature is the winner message that shows up after each round. This is a message that says "Player XYZ has won the round!" Well, I kind of missed it so I added it in to the game.

In addition, I've added a "Your Stats" table to your account information so that you can see your game information in one place. When more games are added, this will be more useful. I'm also thinking about adding more types of stats.

Finally, I've been needing to write a remote client that I can use to control the server, and today I made my first steps to do so.

Small bug fix for the lobby chat - By: Adam Plumb - 16.2 years ago
After I introduced the lobby chat feature yesterday, I realized that I had not finished the implementation. Unfortunately, when players quit their browser it kept thinking they were still there. The fix was simply to have the server check which players were still sending messages, and if they weren't remove them from the list of players still there.
Lobby Improvements and Game Tweaks - By: Adam Plumb - 16.2 years ago
I'm really happy to see that people are starting to come in and play Serpentine. It seems like there are a lot of disgruntled Tangleword players that have been looking for a good replacement, and Serpentine might be it.

There were some changes that I'd like to mention:

  • You can now chat in the lobby, before you enter the actual game.
  • The words box should hopefully scroll now when the "Other Players Words" listing shows up
  • I've added server chat messages like, "Adam has entered the game" or "Jenny has left the game"
People have been asking for the ability to rotate their letter boards, and since I agree that this is a useful feature it is coming. You can probably expect it within a week or so.
Fun Serpentine Improvements - By: Adam Plumb - 16.3 years ago
Just this morning I was thinking I had exhausted all of my ideas on Serpentine, and then I realized later on how much more was still left to do! Here is a short list of changes since this morning.
  • Added additional intermediate and advanced rooms, with 5 letters per side, and rounds lasting three minutes each.
  • Added a "Words others got" listing after each round, where is shows you all the words the other players got but you didn't
  • A color-coded ratings system. There are now a whole range of ratings groups, from "Needs Improvement" to "Senior Master".
  • The Serpentine letters are now clickable like buttons
  • Some minor bugfixes in the game and server
  • More ratings tweaking
Boring administration type changes - By: Adam Plumb - 16.3 years ago
This morning's work was mostly focused on boring administrative changes, like setting up a basic blogging tool (what I'm writing this in now), adding some basic logging/reporting functionality, and adding a page that lets me view/administer the people that have registered accounts. All pretty basic website stuff, but nothing really new for the users, except for some small tweaks that aren't worth mentioning.

The big thing right now that I want people to watch out for is the ratings system. Yeah it works, but it's pretty experimental, and I'm going to be tweaking it for a while to try to get it just right. The purpose of the ratings system is really to show you how you stack up against others, and to make it so really experienced players can't go into the beginner room(s) and tear the place up. I have a plan to separate ratings up into groups, like beginner, intermediate, and advanced, but I'm thinking of giving the group names a more snakey/dragony theme. Suggestions are always appreciated!

A few testing updates. - By: Adam Plumb - 16.3 years ago
Thanks go to daemonic, shuggycouk, and alex for being brave and helping me with some very early testing yesterday. They found a bunch of issues that I had either ignored or not seen or not been able to test by myself. While I haven't fixed everything just yet, I've fixed a few issues:
  • Was constantly getting an "Invalid Response from Server" popup during the game.
  • An extra comma (hopefully) will not show up in the players listing
  • Chat/Player/Word listing windows now (should) scroll automatically
  • I've reworked the player/chat windows to be bigger and format better with different inputs
  • Added a "Leave" button, so that you get immediately logged out of the game (not the site though)
  • Tweaked the rating system
  • Now displaying game rules in the lobby of the game
  • Displaying a top 10 list of players in the lobby (based on rating)
I'll be setting up some bug/issue tracking software sometime soon.

Finally, I started some initial planning/work on the next game hopefully coming to the site, called Hiss. It's a play on the real name (that I heard of through jenny), Boo. The idea of the game is you have a few players in a match. The first player starts with a single letter, then the next player has to add a letter to that, and so on. Then it goes around and around until they've either created an invalid word or completed a valid word (and there are no more valid words). It should be quite fun, and will let me set up some new server logic for creating/joining matches that I didn't have to do for Serpentine.

Welcome to games.cobradragon.com! - By: Adam Plumb - 16.3 years ago
Once upon a time there was a wonderous website called playsite.com that brought me great joy. It provided free, well-structured, multiplayer word, puzzle, board, and card games. In addition, it kept track of ratings and allowed players to interact with eachother outside of the games. I was personally addicted to the Tangleword and Gomoku games, the former of which inspired this site. Indeed, I was so inspired that I pretty much copied the rules and structure of the Tangleword game to create my game, which I call Serpentine.

You may be wondering about the bizarre snakey-type names on this site. What started out as an inside joke between my girlfriend, Jenny, and I, has blossomed into a full-on obsession with the Cobra Dragon theme. Hence the name of the site, and the name of my first game: Serpentine.

The rules of Serpentine are exactly as you may or may not remember them from Tangleword. There is a 4x4 (or 5x5) sized board of random letters. You, as the player, must find as many valid words from consecutive letters (side-to-side or diagonal touching) as possible. Each word must be at least three letters, for which you get one point. Each additional letter beyond three will net you an extra point (i.e. a five letter word gets you 3 points). In addition, if you are the first person to get a certain word, you get a one point bonus! The game runs in roughly two minute rounds, with a short intermission between rounds. Furthermore, I've also carried over the ratings system from playsite.com, such that each player starts with a rating of 1200, and that rating will increase or decrease based on your score and rating relative to the other players in the room.

One final thing I wanted to mention is that Serpentine is the first of what I hope are many games to come. I have a real fondness for multiplayer puzzle/word/card games, and you can expect these to show up as I make them.


Previous Entries Next Entries