Account disabled

Wednesday, July 1, 2015

Linden Labs has disabled my account for some reason. I am working with them to try to resolve the issue. In the meantime this probably means my games aren't working. It also means I can't read any messages. If you need to communicate with me I can be reached at my email (for my email address, click to the main Procyon Games web site, then click the Contact Me link in the lower right)

New En Garde Name Display System

Wednesday, March 26, 2014

Recently a lot of players have had problems getting their names to display when playing En Garde, or on the leader boards. This was due to the system I had breaking down. The names are displayed with custom textures, which are auto-generated and uploaded to Second Life. The robot I used for this would frequently stop working.

Also, the process I used to make the name textures wasn't compatible with some third-party Second Life clients. The names would look all speckly and weird. There wasn't anything I could do about that, since it worked with the standard client and I can't control the code in the third-party clients.

But now I have a new system which should fix both of those problems. Now, everyone can make their own custom textures to display their names.

I'm sending out Name Display prims to all En Garde owners. To set your display name, you can make your own texture and drop it on any prim. Your custom name will be set in the system and will display on any En Garde piste you play. If you change your display name in Second Life, you can re-upload a new texture for En Garde. You can do this as many times as you want.

When you touch the Name Display prim it will give you a notecard detailing the process, and also some suggestions for the best way to format your texture. If you have problems, the owner of the piste should be able to help you. If you need to know how to upload a texture to Second Life, there's plenty of tutorials on that.

I hope I don't have to stress that everyone should keep their custom name display within the bounds of good taste.

This problem with the name display has been one of the most frequently requested fixes/improvements for En Garde, and I'm glad I finally got something up and running. Thanks to the owners who helped me debug the new system, and all the players for their patience.

New En Garde display names are coming

Monday, March 17, 2014

For all the players whose names don't show up on the display .... I have a new system that I'm testing right now. Hopefully soon everyone can see their names when they play!

En Garde Team rankings are back

Tuesday, December 10, 2013

I fixed the glitch that prevented the team rankings page from showing. You can see your team rankings now

New Danger Zone v1.08

Sunday, December 8, 2013

Danger Zone is the very first game I ever made in Second Life. Linden Lab used to have an annual games contest, and I entered Danger Zone in the last such contest they had, way back in 2008 I believe. It was one of the winning games, and it launched my career as a games designer in Second Life.

The code is old and creaky, and if I were to do it again there's a lot of things I'd do differently. One of the biggest problems is that I went overboard with the prims. It rezzes prims during the game, and with a full eight players you could see 4 or 500 prims in use. Yikes.

But people do still play it, and one thing I was able to fix was some spammy messages it sends to the game owner, even when it's not in use. So there's a new version you can grab, if you currently have a copy.

And if you don't have a copy, I've listed it on the Marketplace.

Randomness and Games

Monday, October 14, 2013

I like having a little bit of randomness in my games. I view luck as the lubricant of game play. You need just enough to keep a game from getting stale, but not so much that it falls apart.

En Garde is, at its heart, a card game. Before each round, the cards are shuffled and dealt to each player. Whenever a new card is drawn, it comes from the top of the "deck."

That shuffling is as random as I could make it. I'm at the mercy of the LSL scripting language. In particular, I make a call to llListRandomize() to do the shuffle. I hope that that particular API call is truly random. It's not hard to make a good shuffle routine, but then again, it's not hard to screw it up, either. One of my favorite stories is about an online Poker site which screwed up their random shuffle routine, and when some players figured it out, they were able to predict who had what cards and make a bunch of money off the exploit.

I can tell you, though, that there is no intentional bias in any of the card shuffling. There is nothing in the code that gives an advantage to Player 1 or Player 2 (other than the fact that Player 1 has a very slight advantage because he plays first in the first round). So if you think that one side or the other is getting good cards all the time, it's just your mind finding patterns in the random numbers that aren't really there.

Sometimes you get a good hand, and sometimes you don't. The skill in the game comes from making the best of when you have a bad hand.

Back to Normal

Sunday, January 13, 2013

I think I have all the bugs fixed.

For anyone who's wondering, this was all caused by a forced upgrade. I don't upgrade the site often, so it's usually running on older versions of the software. But there was a big scary exploit that had been published, so I was forced to upgrade to Rails 2.3.15.

With that upgrade came a bunch of other changes, and it introduced some incompatibilities in pre-existing code. The last one involved the player game history. Probably none of the Second Life players care about this (except that it's been fixed), but I'll document it here for the benefit of any Rails coders confused as to why their named scopes are no longer working.

To generate the player history, I have a named scope which looks something like this:


named_scope :played_by, lambda { |*avs| { 
      :select => "games.*", 
      :joins => [:plays => [:avatar] ], 
      :conditions => {:plays => { :avatars => {:id => avs} } }
}

So I could pull up games played by two player like Games.played_by(mark, john). And that worked fine under Rails 2.3.5. But when I updated to Rails 2.3.15, the same code was giving me ActiveRecord::StatementInvalid.

I didn't get an error message more explicit than that, though. So I had to browse through the Rails code to find out more. It looks like sometime between 2.3.5 and 2.3.15 they changed sanitize_sql_hash so that it no longer accepts nested hases. I don't know why they changed that; it was working fine before. But I had to change my named scope to flatten out the nested hash, like this:


named_scope :played_by, lambda { |*avs| { 
      :select => "games.*", 
      :joins => [:plays => [:avatar] ], 
      :conditions => ["avatars.id in (?)", avs] }
}

And now it works again.






Customer page

Saturday, January 12, 2013

It looks like something on the customer page didn't survive the upgrade. I'm looking into it -- please be patient, it's just me and I don't have a lot of time to fix things like this.

EDIT: 7:23PM SLT The Customer page is mostly back up. If you get an error when trying to connect, clear your cookies (or just your procyon games cookie). The versus listing is still not working -- you can't get a list of all games you've played against someone recently. Hope to have that working tomorrow.

Server issues

Thursday, January 10, 2013

I attempted to upgrade the server this morning, but something went wrong and I can't roll it back. I'm working on getting it back up, until then all server-related functionality is down. No ETA yet on when it will be working again, sorry.

EDIT: I think it's back up now. If you notice problems let me know.

Emergency downtime

Thursday, August 23, 2012

Our website was down for an hour due to emergency maintenance. Everything is back up and running now. If you tried to purchase something during that hour and it failed to deliver, please contact me in-world.

New Follow Me v2.2

Tuesday, July 31, 2012

I've released a new version of my Follow Me HUD. It's free to all current owners.

For those who haven't seen it, Follow Me lets you teleport around the grid with your friends. Simply have everyone wear the HUD, and when one person teleports, the others will teleport with them. You don't have to send everyone a TP, it's all automatic.

It used to work by sending everyone a TP link which they could click in their chat history. It still does that, but now you can enable Auto Teleport mode, which uses the just-released TeleportAgent capability to teleport you automatically! No clicks or map popups needed.

There are a couple of caveats. It doesn't yet work with all third-party viewers. And some regions are are different "channels" (eg, Magnum) which don't yet have a working copy of the llTeleportAgent command. But I'm sure all the third-party viewers will soon release updates to take advantage of this capability, and the sims will soon have current software.

So give it a try, and let me know if you can think of any improvements.

New En Garde v1.16

Saturday, July 21, 2012

I've released version 1.16 of En Garde. This is mainly a bug-fix release. All owners are invited to upgrade free of charge.

You can upgrade by deleting your current game, and delivering a new updated copy to yourself, which you can then rez. To get a new copy, you can either

  • Use your En Garde Remote. Wear the Remote and say "/8 deliver game"
  • Visit my in-world store, and touch the En Garde vendor
  • Visit the Customer section of the Procyon Games website, find your En Garde license, and click the Redeliver link


This game comes with a new version of the game HUD. Your players must use the new HUD when playing on the new game (it won't let you play with an old HUD). Everyone can get a copy of the new HUD by clicking on the game and then the Get HUD button.

Release Notes:

  • Fixed a bug that allowed the HUD and main game to get out of sync, resulting in "Invalid card played" errors.
  • Fixed a bug that would not allow payment to be enabled for some Commercial licenses
  • The game no longer says "times's up" when the deck runs out at the end of a point.
  • The HUD no longer offers a player the option to Parry an Advance-Lunge, if the player doesn't have any of the appropriate cards
  • When doing a Last Second Attack, the appropriate cards are hilited in orange.
  • The game gives players a link to click in chat, to see their ranking on the Procyon website


Looking for Play Testers

Saturday, June 30, 2012

I'm looking for people to help me test the next version of En Garde.

Testing mostly involves you standing around for long periods of time while I curse at Second Life. But you have to be ready at any time to jump back in and play, until the game crashes again.

If this sounds like fun to you, and you have a free group slot, then IM me and I'll send you a group invite.

Website transfer fixed

Thursday, May 19, 2011

There was a bug in the transfer code; it wasn't working if the person you were transferring to wasn't already a customer. It now works even if the avatar you're transferring to has never bought anything at Procyon; however, they still have to be in the Procyon database (which means they have to have played at least one complete game of anything).

Website Transfer

Sunday, May 15, 2011

You can now transfer your Procyon game licenses yourself, on the web.


I've always claimed that my licensing system gives you "the best of copy-ok and transfer-ok." It's not possible with the current permission system to sell an item that is actually copy- and transfer-ok, because people would just make their own copies and sell them. But it's nice to have a copy-ok object, just in case it ever breaks or doesn't rez properly. And it's also nice to have a transfer-ok object, so you can give it to someone else. Second Life merchants generally have to choose which way to go.

But with licensing, you can have both. You can redeliver your game to yourself at any time, and keep multiple copies in your inventory, so you don't have to worry about rez errors, like a copy-ok object. And you can transfer your license to an alt, or give it as a gift, like a transfer-ok object. So you get the best of both worlds.

Except, in order to transfer your license, you had to send me a message and ask me to do it. I have to register the change in the Procyon Games database. People don't transfer their licenses very often, so it wasn't a huge deal.

But I've now implemented self-service transfers. Any Procyon game owner can visit the Customer section of the web site, click the Transfer link, and send their license to anyone else. You don't have to wait for me; it happens instantly. It will even deliver a new copy of the game to the recipient.

Be careful! Transferring your license is permanent. The other person becomes the new owner of the game. Your own games will stop working, and if you regret your transfer the only way to get it back is if the new owner decides to transfer it back to you.

If you own multiple licenses, you can transfer some or all of them to the new owner.

Give it a try, let me know what you think.

Names are back online

Friday, May 13, 2011

Some people may have noticed blank spaces where the names usually go on the scoreboards.


If you don't know, I have a texture-based system for name display. Everyone who plays gets their own texture. It's automatically generated on my website and uploaded to Second Life. The benefits of this are, it uses fewer prims (just one prim for a name!) and it looks a lot nicer, too.

The downside is, I have to pay for every new texture I upload. So I took the system down a couple days ago and reconfigured it. It is now a little more selective in who it generates names for. If you just play one game and never return, it won't make a name for you.

For anyone else who wants to see their name, just keep playing. It may take a day or two for your name to get through the system.

If you've been playing for a couple days and you still don't see your name on the scoreboard, send me a message and I'll look into it.

Website Redelivery

Sunday, October 31, 2010

I've added a redelivery option to the Procyon Games website. If you are a Procyon game owner, you can get a new copy of the game redelivered to you any time from the website. You don't even have to be logged in to Second Life.


All the previous methods of redelivery are still there. You can get a new copy of the game by touching any vendor in-world, or by using the remote control that came with your game ("/8 deliver game"). The website function is just another convenience.

To access it, go to the main Customer page. In your License section you should see Redeliver links for each game license you own. If you don't see the links, hover your mouse over the game you want to redeliver.

Display Names and You

Wednesday, October 27, 2010

Linden Lab is rolling out its Display Names feature, which, if you haven't heard by now, allows anyone to change the name that appears in their tag and chat.


The scoreboards I use for my games display players' names as textures, and it's too expensive to change them to match people's Display Names. Plus, it would make tracking high scores difficult. So here is how it's going to work.

The scoreboards will track your Full Name, not your Display Name. For existing players ("oldbies"), your Full Name is the same Avatar name you're used to. For new accounts, their Full Name is their account name, plus "Resident." However, the scoreboards won't show the "Resident" surname, so they will effectively show the Account Name.

So, if you are an existing player, nothing will change. Your name as it is displayed on scoreboards will not change.

If you are a new resident, then the scoreboards will show your Account name.

For all avatars, if you change your Display Name, it will have no effect on the name that is displayed on the scoreboards. That might be a little confusing, if your name shows as one thing in chat and another on the score display. So a little heads-up for everyone.

See who's playing your games

Friday, October 22, 2010

Game owners can now view a list of recent (past 2 weeks) games played on the games they have rezzed in-world. Click on the "Local Games" link in the Customer section of the web site.


Take it Easy Head-to-Head v2.14

Monday, October 18, 2010

I've posted an update to the Take it Easy Head-to-Head edition.

  • Tile textures are pre-loaded, so you won't have to wait for textures to rez in the middle of a game.
  • The selection ring which marked the current tile is gone. Instead, the current tile will blink and pulse.
  • The game is mod-ok
To upgrade, visit my store and touch the Take it Easy vendor. It will give you a new copy of the game.