30 October 2011

Trick or Tsrrin

I spent a little time this evening hiding some costumes in the land.  Not a lot; just a few.



Have fun looking!

29 October 2011

Facepalm Programming

I spent over six hours of my life on Thursday trying to modify one of the older utility scripts.  I was initially pleased when I activated the script and saw the expected result, but I then grew perplexed when (upon further testing) saw variations in the results.  Some results were just plain wrong, and other conditions had no results at all.

I laced the script with multiple lines of diagnostic code, and ran it again.  And again.  I was not annoyed so much in that the script was not working as I was with the seemingly randomness of the results: I could not predict the result nor could I see the pattern within what was happening.  What the heck was going on with my beautiful script!  At no time did I dread "I broke the script," as my additional code was working perfectly: it was the original code that appeared to be misbehaving.  There was something larger happening that I was not seeing.

I turned to researching other scripts that had similar functionality.  What were their scripts doing that mine was not doing?  I could not see any differences, and my eyes began to tire from all of the reading.  I was about to end my debugging session when I had a sudden realization; within the World Editor Tool there are some "script check boxes" (for want of a better description) which basically set behavior preferences for a script's interaction with the world.  Did I have my check boxes checked?

Nope.  I had left one check box unchecked.  And after checking it, my script worked perfectly and predictably.

Oh brother.

28 October 2011

Cooperative Quests

I had an idea for a cooperative quest where players would trade quest components amongst each other, but there is a major flaw with this concept: suppose that the participants are unwilling/unable to cooperate?

Suppose, for example, that the quest is to collect playing cards, and the goal is to redeem a poker hand of five cards.  The catch is that every time that a player draws a card, they will always draw the same card.  When Gremlins draws a card, then he will always draw the Jack of Clubs.  When Moon Kitty draws a card, she will always draw the Queen of Hearts.  When Super Chicken draws a card, he will always draw a Joker.

The easiest way to complete the quest is to collect five cards of the same value, and then cash them in for five-of-a-kind.  Suppose that the quest reward payoff for five-of-a-kind was the experience equivalent to a dispatch, but something like a full house or a flush was worth the experience equivalent to a kill?  Suppose that a straight flush was worth the experience equivalent of a vanquish?

The structure of the quest is one that encourages trading cards with the community, and the reward for the quest increases by having a variety of cards.  Would you want to trade cards with others players to maximize the quest reward payoff?  What happens if a quest participant refuses to trade?

While this is a rather broad (and exaggeratedly extreme) example of the quest, it has me thinking: even though there are greater benefits to cooperation, I should never assume that everyone is willing to cooperate within a cooperative quest.

27 October 2011

Coding with Crowbars

As the development of my silly quest draws near its conclusion, I now turn my attention to modifying some of the existing world scripts to support this upcoming quest.

Even though I have plenty of experience in modifying scripts, I still grow a little nervous when shoe-horning new functionality into existing code.  Many of the basic world scripts are over a decade in age (the script which I am currently modifying was created in December of 1998), and I am constantly concerned of outright breaking a script, or changing a script to a point where it inadvertently affects all of its dependent scripts.  And I know that I am more cautious about breaking scripts than I need to be: our ServerGM has built a rock-solid system over the years which includes many failsafe systems, and the likelihood of tragedy happening is almost negligible.


Almost.

I have my crowbar in hand, and I return to prying away some old lines of code to make room for new code.  Making room is the easy part – it's the "make sure that nothing there gets bent out of place" which is harder.

26 October 2011

The Sorcerer's Apprentice

I have taken a new helper, and I think that he may be smarter than I.

While we are waiting for the set-up dust to settle, I have given him a small task to perform: write some jokes that will make me laugh.  We shall see if he is also funnier than I!

I am excited and hopeful that this new helper can bring some fresh perspectives to my growing list of projects.  Moreover, I am hopeful that we now have a chance to actually finish these projects!

24 October 2011

The Front Burner

Yesterday I spent some time running around in Puddleby, and bumped into a couple of GMs who happened to be online at the same time.  After exchanging our greetings (which were largely just a bunch of juvenile insults: "Hey, I see that you're still ugly!"), one of the GMs and I fell into discussion about one of the larger projects which had been placed on the back burner.

While the details of project are unimportant, the point of my mentioning this is that I have been thinking about the project since my chat with the GM.  In fact, I spent the better portion of this morning outlining the logic of the super quests.  I have not compared my new notes to my old notes on this project, but I already know that the new ideas are better than whatever I had previously put to paper.  This creativity excites me and drives my desire to redevelop this project.

I am in the process of competing my silly quest, and once that has been removed from the front burner, then I will have room to move this massive project forward from the back burner.

23 October 2011

Laser Tag

I went to a birthday party on Saturday.  The party was basically "dine out at a local Mexican restaurant, drink some sangria and margaritas, and then play a round of indoor laser tag at a nearby gaming facility."

I had never played laser tag, but I have played nearly 2k hours of Team Fortress 2 – and that's almost like playing laser tag, right?  I figured that I would be an instant expert at this game and that I would dominate the playing field.

PRO TIP: One's mediocre computer gaming skills does not translate well into real world settings.  I had enough team-versus-team online gaming experience to check around corners and to watch my back when moving around the map, but boy-howdy I had zero gaming experience on dealing with swarming, screeching children.  The kids' tactic was a basic wolf-pack "surround and pound the adults!" and as one of our base's few adult defenders, I got seriously pwn3d.

I had a blast (pardon the pun), and look forward to playing again soon.  Although their RED team crushed my BLU team, I can boast that I had the high score for my team.  That's right: I was able to out-gun the children on my team.  Maybe my mediocre computer gaming skills accounted for something!