Kriona is a browser-based multiplayer roleplaying game that I work on in my free time. You create and equip a characer, fight a variety enemies, explore the world's secrets, and complete epic quests. You can either travel with a group of friends, go at it by yourself, or control several characters on your own. It's up to you.
In addition to the Kriona game, I also work on other projects.
Update: Web Sockets
Wednesday, May 30th, 2012 at 4:02 pm by kriona
I've gotten back into the swing of coding by implementing web sockets. It'll be hard to overstate how big of an impact web sockets are going to have on Kriona. Here's a summary of the difference:
Poll every second to check for changes.
Get informed immediately of changes.
This impacts absolutely everything. You can walk 3-4 squares in 1 second. Previously, it looked like you teleported - now, you will see every step. This will work phenomenally well for combat animation - server sends a message to display "flying fireball explosion". Previously, it would have been necessary to store this command in a database, so when clients check in again, they execute it. That's silly. Now, any client that's listening will do the animation, and it's never gets stored anywhere.
Anyway, in short, web sockets is game-changing. I've added it to my Game Changers list, which is still pretty small.
* Eclipse (using an IDE instead of notepad)
* Canvas tag (OMG drawing the game interface is so much cleaner)
* Web sockets
On a funny note, it has always been an interest in some game-changing technology that has brought me back to work on Kriona after a hiatus.
Back to practical details: the chat program has been rewritten to use web sockets (this includes the core infrastructure needed to make this happen). The rest of the game interface is next. It'll take a bit of doing to wrangle everything, but in the end, it's going to be so much cleaner than it is now. Extensible, even!
One more hurdle: my webhost may or may not support running "executable programs" in the background. It's a PHP script, so it might work, but it stays alive, so it might not. It may require upgrading my hosting account, which is something I've been considering anyway. Once the work is done (a month?), I'll update the test site and see how it goes.
Thursday, January 12th, 2012 at 11:56 am by kriona
One of the things I really enjoyed about Terraria was the concept of social equipment - items that only affect the way your avatar looks. You suit up in the armor that gives you the best stats, then you add the items that make your character look the way you want.
I've added this to Kriona! I'm really excited about clothing, which will be much more decorative than armor.
Wednesday, November 30th, 2011 at 6:52 pm by kriona
The foundation of combat is well under-way!
Combat is supported by an action queue - group members request to perform actions, which get put on a queue that the leader's session processes. If the leader isn't connected, there's no progress in combat. But, on the up side, only one person is editing the combat object, meaning there's no chance of an update getting lost.
Groups, for example, are a willy-nilly update process, which still has me a little worried that two members will override each other's moves if they're attempting to walk around a city at the same time. I can test that out at a later date.
I've updated the character sheet to require equipping/unequipping items to go through the combat queue if you're in combat, since swapping out a weapon is a move action and donning new armor is a full-round action. Body armor can't be changed during combat. The character sheet was a good first step before moving on to actual combat options (like round progression), as it will probably be the most difficult thing the combat queue needs to handle.
So, no code update today, but progress is being made!