App: Castle Clash for Android

I've been playing a new free game on my cell phone recently called Castle Clash. I've also got my roommate addicted to it It took my quite a while to find the hero upgrade costs so here they are.

When you first get a Hero they are level 1 and can reach level 20. A Hero can have 9 stars, and presumably reach level 180. You get your heroes experience by running dungeons and battling other players (the way that costs gold).

When a Hero maxes out it's level it can be upgraded. When upgraded it will gain a star, raises the Hero's max level by 20, and increases the Hero's stats a little.

Star Gold price Hero Badge price "Flames" requirement

Max. Level

1 N/A N/A N/A 20
2 10,000 1,000 10 40
3 30,000 3,000 50 60
4 100,000 10,000 75 80
5 200,000 20,000 105 100
6 300,000 30,000 135 120
7       140
8       160
9       180

^ Conquering Dungeon rooms gives you "flames."

osTicket released!

Today marks the release of osTicket version Below you will find the changelog for the last few releases (since I’ve been a slacker and didn’t post them when they came out)


  • Finally squelch all test fixture failures (yay!) (#732)
  • Fix matching of ticket owner’s email address on incoming mail (#731)
  • Fix coding mistake matching system email addresses (#730)
  • Fix a bug upgrading from osTicket 1.6 (#736) release notes


  • Cookie domain cannot have a port number (#719)
  • ROOT_PATH is detected on Windows® (#726, #649)
  • Do not double encode XML entities in ticket thread titles (#567)
  • Display correct template description on edit (#724, #727) release notes


  • The ticket number is no longer required in the subject line and staff can reply to emails and create an internal note (29b3714)


  • session_start() is not used in random data collection, which broke some Windows installs (#712)
  • Prevent email loops if a staff happens to use a system email address (#714)
  • Turn off error_reporting (#717)
  • Fix ROOT_PATH detection (again) (#716)
  • Fix cookies for localhost and local servers (infamous “Invalid CSRF Token” error) (#707) release notes


  • Fix detection of ROOT_PATH on chrooted environments (#703, #705)
  • Fix download of attachments with commas (‘,’) in the filename (#702)
  • Fix incorrect content-type header for CAPTCHA (#699)
  • Avoid emails for password reset tokens on upgrade (#696)
  • Use ROOT_DIR for filesystem paths (#698)
  • Include tips.html in the download zip-file for installation popup help (#701)
  • Fix repeated CSRF token issues on localhost domain (#709)

For a complete list of core features visit and be sure to check the release notes.

osTicket 1.7.1RC1 released!

As promised last week, yesterday afternoon osTicket 1.7.1-RC1 was released. This is a release candidate for developer and enthusiasts to try out before 1.7.1ST is released. This release is not recommended for production enviornments! I’ve been informed that since this is a incremental update that the release cycle will be short as they continue to push towards the 1.8 release.

There are a slew of bug fixes as well as new features and expanding of current features:


  • Custom logos and site pages (#604, #632, #616)
  • Password reset link (#638)
  • Export and import feature. Useful for migrations and backups. (#626)
  • Use your email address as your username for logins (#631)
  • SLA’s can be marked transient. Tickets with a transient SLA will change to the SLA of the new department or help-topic when transferred or edited.
  • Support installation on MySQL and MariaDB clusters. Use default storage engine and don’t assume predictable auto-increment values (#568, #621)

Geeky Stuff

  • mysqli support for PHP5+
  • SSL support for database connections
  • Namespaced configuration. This greatly simplifies the process of adding new configurable item (#564)
  • Add signals API. A simple event hooking mechanism to allow for extensibility (#577)
  • Add deployment command-line script (#586)
  • Allow XHTML editing in the nicEditor (#615)
  • Allow parallel database migration streams (#563) — paves the way for extensions
  • Use row-based email templates (#604) — simplifies the process of adding new email message templates (think extensions)
  • Support fetching from email boxes with aliased email addresses (#663)
  • Introduce new crypto library that provides failsafe encryption for email passwords (#651)


  • Several typos in code and messages (#617, #618, #644, #660)
  • Fix several upgrader bugs (#548, #619)
  • Fix install fail on some Windows platforms (#570)
  • Fix several issues in the command-line management (#580)
  • Make room for command-line installation of osTicket (#581)
  • regression Fix corrupted attachment downloads (#579, #583)
  • Fix truncated attachment downloads when zlib.output_compression is enabled (#596)
  • Disable cron activities when upgrade is pending (#594)
  • Provide failsafe encoding for improperly-formatted emails (#601)
  • Fix corrupted email attachments processed via pipe.php (#607)
  • Fix discarding of poorly encoded base64 emails (#624)
  • Support MariaDB 10.0+ (#630)
  • Properly trim ticket email and name fields (#600)
  • Fix truncated text from text/plain emails and web interface posts (#652)
  • Add Assigned To and other fields to ticket view export (#646)
  • regression Fix attachment migration (#648)
  • Display correct staff notes (#588)
  • Display correct auto-response email for departments (#575)
  • Fix login form (“Authentication Required”) loop (#653)
  • Ensure email message-id is fetched correctly (#664)
  • Ensure X-Forwarded-For header does not have leading or trailing whitespace (#665)


  • Only fetch configuration for multifile upload if necessary (#637)
  • Don’t use sessions on the API (#623)
  • regression Avoid an extra query per request to fetch schema signature (#658)

As usual if you find any bugs please report them at Github, and if yuo have questions, feedback, comments, mods, etc please post them in the 1.7 section of the forums. Thank you.

FOR SALE: 2007 Suzuki s83 Boulevard w/ 4444 miles — $4500

Last year I purchased this motorcycle from a close friend. She and her husband sold both their bikes around the time. Here is is a little over a year later, and I’ve purchased myself a new [to me] bike so I no longer need this one. I’m not aware of this bike having any issues at all. It was registered and inspected this year, and currently being stored at my mothers house in her garage. If you are interested in buying her you know how to contact me!

The pictures below are from when I bought it, after the pictures is the bike product information.

Here are the specs:

Type: Cruiser

Displacement (cc): 1360
Engine Type: V Twin
Cylinders: 2
Engine Stroke: 4-Stroke
Valve Configuration: SOHC
Carburetion Type: Carburetor

Transmission Type: Manual
Number of Speeds: 5
Primary Drive System: Shaft

Front Brakes: Hydraulic Disc
Rear Brakes: Hydraulic Disc

Front Tire(s): 110/90 R19 62H
Rear Tire(s): 170/80 R15 77H

Wheelbase (in / mm): 63.5 / 1620
Dry Weight (lbs / kg): 535 / 243
Fuel Capacity (gal / L): 3.4 / 13
Seat Height (in / mm): 29.1 / 740
Number of Seats: 2

APP: Locket

Hey, check out Locket. It’s an Android app that pays you for unlocking your phone. The way it’s done is simple. By downloading the app, you basically rent out your lock screen to brands. At one swipe, you can either open the ad, or unlock your phone the way you always do.

Every time you unlock your phone (up to three times per hours) you get $0.01. Every friend that you have who signed up using your link gets you $1.00 right now.

Please help support this site by and check it out here:

Google the SiriusXM Killer?

Today in my inbox is an email from Google about the new Play music Service apparently called “Google Play Music All Access”. While this is a pretty horrible name for a service.. if you sign up before June 30th your monthly fee will only be $7.99. The price will be going up to $9.99/month after 6/30.

Google Play Music All Access screen capture

At first glance this isn’t a very impressive price point. Honestly to me its not a very attractive price point at all. I just turned down an offer from SiriusXM for $97.xx/year [for the next year] which works out to be about $8.16/month… But this got me to thinking. This appears to be a mashup of iTunes (recommendations), Google Drive (20,000 song storage), and (listen to and make your own radio stations), and the best part is No Ads!. It mobile (anywhere that you have wifi or 3G/4G/etc.) You do not have to buy another device or have another “service” enabled device. If they actually have the app buffer dynamically based on data speeds, why would anyone want Satellite radio anymore?

I‘m more than sure that my boss would argue something like “to listen to Howard Stern”, and that is a valid point. There will indeed be some content that is still only available on SiriusXM channelss. So what do you listen to your “radio” for? What content can you not live with out? What price point would make this attractive to you? With already less then half the price of a standard SirisXM account [more if you pay the extra $3.50/mo for the streaming feature] why not save the $10/month?

Adsense woes Continues [and some Adsense Alternatives]

The other day I posted about how Google Adsense suspended my account for “invalid click activity”. Today brings you some updates to that drama. Google has rejected my appeal.


Thank you for your appeal. We appreciate the additional information you’ve provided, as well as your continued interest in the AdSense program. However, after thoroughly re-reviewing your account data and taking your feedback into consideration, our specialists have confirmed that we’re unable to reinstate your AdSense account.

Please know that, once we’ve reached a decision on your appeal, further appeals may not be considered, and you might not receive any further communication from us. Note that AdSense publishers whose accounts are disabled for violations of our Terms and Conditions are not eligible for further participation in AdSense. For this reason, you may not open new accounts.

Also, accounts disabled for invalid click activity will receive no further payment nor any reissue of previous payment. Your outstanding balance and Google’s share of the revenue will both be fully refunded back to the affected advertisers. Thank you for your understanding in this matter.

We understand that you may want more information about your account activity. However, because we have a need to protect our proprietary detection systems, we’re unable to provide our publishers with any details about their account activity.


The Google AdSense Team

This is of course what I expected to hear after reading around the net about this same thing happening to other people. I poured over my Google Analytics account, installed a Apache log parser [something that I have been meaning to do for years] and started pouring over my logs. I of course cannot see exactly where the clicks occurred… but after looking at Analytics I have figured out about where but only because Google Anayltics has a nice little Content -> Adsense -> Overview section.

So armed with this additional information I emailed them again. Here is a snippet of my very long email to them:

The following days have a higher click activity then I would have expected:
Apr 23, 24, 25
Apr 29, 30
May 1, 2, 3

Narrowing the report down to Apr 21st through May 5th some 92.76% of Adsense revenue generated by my account was for the page “/” (which I take to mean the base URL). There were 39 clicks during this time, and that is VERY high for what I would have expected. In comparison I only received 10 clicks from Jan 1st through Apr 21st. Which appears to me to mean that I have been averaging about 2.5 clicks per month this year. Which isn’t a good comparison since my traffic has been steadily increasing.

Jan 2013 – 1994 pageviews
Feb 2013 – 3460 pageviews
Mar 2013 – 4772 pageviews
Apr 2013 – 7477 pageviews
May 2013 – HALF MONTH 4051 pageviews

So while I have figured out which page generates the most clicks, I cannot seem to narrow it down to determine where the click traffic came from. Clicking on Adsense Referrers shows me a nice break down but only tells me that there were 6 ads clicked between Apr 21, 2013 – May 5, 2013 and their referral source was [This makes sense to me since I routinely cross post snippets of my sites posts to my Google+ account to attempt to drum up more traffic.] This only appears to make up for about a third of the adsense ads viewed.

So where at the other 2000ish adsense ad views?
Or for that matter how do I account for the other 33 clicks?

I went on to say that I would like my account to be re-instated, and asked if they would work with me to attempt to determine where the traffic came from. I also offered them a copy of Apache2 logs. Much to my surprise I received a reply the very next day reading:

While waiting I decided to look into Adsense alternatives. There are a number [LOTS] of blog posts across the interwebs about alternatives. After about two hours of skimming and reading I selected the following two alternatives:


Infolinks is really simple system. You add a very small javascript into the bottom of your page and their system selects a configurable number of words to underline. These underlined keywords now serve mouseovers, and click links. If visitors click on these links you get paid a small amount. As you can see I was accepted into their program and this is now live on the site.

and serves contextual ads like adsense. You can easily create and customize ad units that display text ads consisting of sponsored linkes and ad topics from the Yahoo! Bing Network. My sites were not accepted into this program, I haven’t had a chance to try to figure out why. I’m guessing its because they do not generate enough traffic however.

I will of course be looking for more alternatives in the near future as time permits. But with Tournaments of Creathorne 20 (A LARP event) this up coming weekend it will not be until at least next week some time. I’ll keep you all posted on the Adsense Alternatives that I find and decide to try.

BOOK: Inferno and Magician’s End

Today I placed yet another Amazon order. My wife tells me that she is addicted… but really I feel like I order from Amazon monthly like clock work.

Here’s what I ordered today:

Inferno by Dan Brown (Author of Da Vinci Code and Angels & Demons). Summary: In the heart of Italy, Harvard professor of symbology, Robert Langdon, is drawn into a harrowing world centered on one of history’s most enduring and mysterious literary masterpieces . . . Dante’s Inferno.

Anyway, for those who know me I’ve been an avid reader of Feist since first reading Magician: Apprentice in the late 80s (maybe it was the early 90s… I vaguely think that maybe Tthew introduced me to it circa 92).

Magician’s End (Book 3 of the Chaoswar Saga) by Raymond E. Feist. Summary: Thirty years ago, Raymond E. Feist wrote his first novel, Magician, a story about an orphan boy named Pug who is thrust by a war into captivity in an alien world, only to rise from slavery to become a Master Magician. Magician introduced readers to Midkemia and the Riftwars, an epic series of battles between Good and Evil that have scarred this remarkable realm for generations. Now, after twenty-nine books (authored and coauthored), Feist delivers the crowning achievement of his renowned bestselling career: Magician’s End, the final chapter of the Chaoswar Saga and the climax of his extraordinary Riftwar Cycle.

Continue reading “BOOK: Inferno and Magician’s End”