Monday, October 24, 2011

Online Game: City of Wonder

I've always been a fan of building games like SimCity and Civilization, so when I saw an add for City of Wonder on FaceBook, I knew I'd be trying it out. The basic concept of CoW is really the same as SimCity, with a multiplayer aspect thrown into the mix. As the lord and ruler of your land you decide what buildings to put where and how to design your city. The game doesn't go quite as indepth as SimCity does, so you are not setting tax rates or anything similar. This keeps things simple. What CoW does have is a time aspect, each action takes time to complete and while that is happening you can't do much of anything else. This is typical of all FaceBook games, so to be expected.

There is a paid aspect to the game, where if you are willing to spend real world money you can complete tasks faster and gain access to items and buildings that are far superior to those a free player may use. This should have been my first clue that I wasn't going to last all that long in this game. Some of the times you can buy are many times more powerful than the free items, so much so that it is impossible for a free player to even stay without shouting distance of a paying player. This created in essence two separate games, one for the free players and another for the paying players. The problem is the paying players still see and interact with the free players, they just get to roll over them whenever they wish.

This wasn't a problem for a long while, seeing as I didn't pay much attention to the PvP (Player versus Player) aspect of the game. I was only interested in building my city and making it look nice. My goal was to have the city remain looking like a city, functional and interesting, while still utilizing the best buildings and units I could.


Turns out I was one of only a few that had this goal. Most players were going for the "borg" type city where roads were barely, if ever, used and the only buildings in play were the very best. This makes for a very cluttered and ugly city but allows the player to get the most benefit for each square used. So I wasn't even able to compete with free players in regards to anything either, since I wasn't willing to do this. As such I simply went along my way ignoring everyone else and building what I liked.

After a while the developers were done adding content to the main city and they branched out to colonies.

The first colony was a port type location where landmass was restricted to only a quarter of the available squares. The available content here was quickly completed and I remained away from any military buildings due to my aversion to a borg building setup. Here is where another thorn in my side occurred. The developers released research that required real world money to unlock. Once unlocked everything inside could be used with game credits, but you had to pay up front first. Since I had no inclination to pay for this game, I was locked out of large swaths of buildings and units and as such this colony was barely used once completed.

Which lead to the last colony the developers released before I stopped playing. This colony was a military camp where the PvP aspect was in the foreground.

The goal here was to train units and then attack other players. Simple and easy to do, except I had two problems with the concept. First was that the paid buildings and units were ten times more powerful than anything I could create. Not the biggest of issues since those that paid would get so far ahead of me in a day or two that I wouldn't be competing with them anymore.

The second problem was by far more aggravating. It took time to build each unit, and they get lost quite quickly when attacking. As such you need to replace the units all of the time and for someone like me that plays once per day, it would take me weeks to replace all of the units I lost in a single hour's worth of attacking. So I would have to build up my force for weeks, then attack for a couple of minutes and repeat the process all over again. I could see the game was quickly moving away from being a casual game and more geared towards those online all the time who could login often. That simply wasn't something I was able to do.

So that coupled with the fact that I wasn't happy about having larger and larger amounts of content locked due to my unwillingness to pay sealed my fate and forced my decision to give up the game. Don't get me wrong, it was an interesting game but it required more of a time commitment than I was willing to give. As such I redesigned my main colony to be a rural one, and then deleted the application from my profile.

Java: Hotline Update #14

It's been quite a while since I've updated this blog. During this time quite a few changes have occurred with the Hotline program, mostly cosmetic. Names of representatives have been added or removed, options have been added or removed and I've update the reporting tool a bit. This last part is the most important of all the changes that have occurred as of late.

Previously the reporting tool was a large If-Else statement with an array being populated with call/email option values depending on what date range was in the If part of the statement. This was messy, and each time new options were added a new If-Else piece had to be added and some corresponding changes to other parts of the code made to manage this update. No longer. I've updated and condensed the code into a single array that contains all of the values ever assigned for email/phone options.

issueNumber = 50;

issueNames = new String[issueNumber];
issueNames[0] = B1;
issueNames[1] = B2;
issueNames[2] = B24;
issueNames[3] = B31;
issueNames[4] = B3;
issueNames[5] = B4;

And so on and so forth. Now the order of issues saved is always the same and the same array is used regardless of the date range searched under. What I do instead is any value that is zero is simply excluded from the report, so only those values that contain real information are visible and I'm not reporting on values that aren't in use for the date range selected. This also helps to reduce the lines of code in each portion of the project and makes updating for the future a far easier concept.

Next project for this application is to include some additional reporting tools that will allow the CS managers greater flexibility.

Monday, June 7, 2010

Castle Age: MySpace Version

Yes Castle Age is now on MySpace. Actually it has been there for a while now but I've just neglected to say anything about it. While I didn't get in on the first day I did join MySpace purely for Castle Age and have been developing a character there for 55 days now.

I did not go the same route as I did on Facebook. Instead this character is going to be a min-power leveler. As the player base on MS is fairly small any PvP action is going to be difficulty to accomplish when coupled with the fact I'm going to try and gain an army of 501 as soon as possible. As such this build will be a monster hunter, primarily, with PvP purely to get the achievement awards. At least initially.

This build started out pumping points into Energy as much as possible. Quested through each Realm completing all quests to level 4 influence in order until the Land of Mist was reached. From then I simply ran through to unlock the Land of Mist and leveled using the Cefka's Champion subquest that gives 35 experience for 20 energy used. This quest allowed my character to level extremely quickly, several times a day. At this point, level 253, I am almost at the stop where I will stop placing points into Energy and Stamina and switch to Attack instead. No Defense for now, seeing as Attack helps more against a wider variety of monsters.


I plan on putting points into Attack until I have one thousand there. At that point I'll then have to decide whether to increase defense, go back to increasing Energy/Stamina or continue with Attack. That point is fairly far down the road so I'm not going to have to think about that all that much.

I do have to say that this type of build for Castle Age isn't as much fun. Power leveling requires a large army, and abundance of monsters to fight of all types and a lot of free time. The My Space version doesn't have an abundance of monsters and I don't have all that much free time. This is why this build is only partially a power leveler, but not a full blown one. I wouldn't be able to manage the account otherwise, searching for dozens of monsters to fight daily would become more of a chore than I'm willing to take on.

Tuesday, March 30, 2010

Java: Hotline SM Edition

Current the Hotline application is in use by the CS department. Now I've been asked to modify it so that the Sales group can use it to track their inbound calls and emails.


I used the same layout and basic structure from the original Hotline program. However as this will be a fresh program I was able to remove all of the legacy code so that it was much cleaner and simpler than before. For example the code used to generate the report depending on what month the data is from was removed and replaced with a single statement on how this should be done. As such a lot of the confusion in the code in terms of how the report should be displayed or how the individual records should be generated is gone, leaving the program much simpler and smaller in size.

I'm rather hoping that this program doesn't require as much alteration from month to month as the original Hotline program, as then the code will simply get complex quick, as happened with the previous version. I still plan on altering the programs to allow the managers to update the representative list or call options themselves. Just in case I'm not around and we're still using the program.

Monday, March 29, 2010

Diablo II: Matriarch Jaheira

Jaheira is an Assassin who specializes in the use of traps to deal with her enemies. She's considered a spellcaster and not designed for melee or close combat in any sense of the concept. As such she's quite content to stay behind her desert warrior mercenary and lay traps while he pokes monsters to death.

Jaheira's journey starts off quite slow, as she's forced to engage in melee combat with all of the monsters encountered due to traps at a low level costing too much mana to use consistantly. Still, she doesn't encounter any real danger from the monster encountered, and once she picks up a Rogue mercenary as backup things start to pick up. Jaheira does have access to Shock Web rather quickly and uses it against dangerous monsters, such as uniques, to speed up the process. Other than that all of Act I is done in melee range of monsters. It isn't until Act II that Jaheira obtains access to the more potent traps and has access to a long supply of mana potions to be able to use traps on a normal basis. Even then she finds that half her inventory is full of mana potions and trips back to town to restock are rather frequent.

Most of Normal, once traps such as Lightning Sentry, are available is fairly simple. Cloak of Shadows is used liberally to freeze monsters in place, then traps are spread around to help the mercenary wipe them out. Jaheira finds that she isn't in too much danger personally due to this tactic, however that does change a bit in Act IV and V. Since there are a fair amount of stationary, but destroyable, objects Jaheira can't use CoS without fear of crashing the game. So the mercenary gets a bit hammered in these areas and a constant supply of health potions is required to keep him viable.

Still these areas aren't too difficult and it ends up being the act bosses that are the most difficult to handle. Jaheira ended up allowing the mercenary to be knocked off early and didn't bother resurrecting him. Her tactic to deal with the bosses was to lay traps in the general area and just try to run around in a random pattern to keep the boss from hitting her but also to keep the boss within range of her traps. Then the traps are recast when they expire. CoS is not used in these instances as it truly doesn't give any sort of advantage for the traps.

To be honest Nightmare and Hell difficulties went in about the same manner, with the same tactics used with basically the same results. Cos, BoS and the lightning traps were used liberally throughout and no monster packs or uniques posed much of a problem to Jaheira. She even ran Hell at level 3 difficulty and could probably have gotten it up as far as 5 or 6 without putting her in danger, but as there wasn't much challenge in it I just wanted to finish the character up.

Stats:
Level 83
Strength - 79(122)
Dexterity - 79(121)
Vitality - 227(227)
Energy - 125(125)

Life - 895(938)
Mana - 323(339)

Lightning Resistance - 74
Fire Resistance - 74
Cold Resistance - 34
Poison Resistance - 63

Skills:
Fire Blast - 20(34)
Charged Bolt Sentry - 20(34)
Lightning Sentry - 20(34)
Death Sentry - 20(34)
Shock Web - 8(22)
Burst of Speed - 1(9)
Weapon Block - 1(9)
Cloak of Shadows - 1(9)

Equipment:
Weapon: Bartuc's Cut-Throat
Weapon: Bartuc's Cut-Throat
Armor: Skin of the Vipermagi (Ral)
Belt: Arachnid Mesh
Helm: Coronet - FR 18%, LR 47%, CR 18%, PR 18%, 8% LL, +2 Assassin skills
Boots: Heavy Boots - LR 22%, CR 40%, PR 33%, +2 Dex, 14% MF
Gloves: Laying of Hands
Amulet: 9 life, +3 Traps
Ring 1: All resist 15%
Ring 2: 99 AR, LR 29%, PR 30%, PLR 25%

Mercenary (Holy Freeze Desert Mercenary)
Helm: Tal Rasha's Horadric Crest
Armor: Shaftstop
Weapon: Hone Sundan (AmnShaelShael)

Hellforge:
NM: Pul
Hell: Hel

Wednesday, February 17, 2010

Java: En Guard Retired

The En Guard program has outrun it's usefulness in the tech support department. It has been replaced with a more robust Access database application that better tracks and retains information about customer contacts. It was fun creating the program and updating it with new features as the need arose. It it possible it will make a comeback in the future in a different form or for a different department, but for now it is simply collecting dust in my coding folder.

Wednesday, January 20, 2010

Diablo II: Trapsin Skill Layout

A Trapsin is an Assassin that uses the Traps abilities as her main skills. This particular variant uses Lightning Sentry (LS), Death Sentry (DS) as stationary weapons and Fireblast as her backup skill. This build can deal with most monsters encountered, and those she can't the mercenary should be able to handle with Cloak of Shadows (CoS) support to keep packs of monsters at bay. The skill setup is as follows:

Claw Mastery - 1
Fireblast - 1
Psychic Hammer - 1
Shock Web - 1
Burst of Speed - 1

At level 6 quite a few skills become available to the Trapsin. At this point the character isn't really using the skills all that much and just using her claws to melee monsters to death. For very dangerous foes she can however use either Shock Web or Fireblast to deal with them from a distance. Burst of Speed is used from here onward, active all of the time. Not only does it increase the movement speed of the character, but the trap laying speed is also increased.

Cloak of Shadows - 1
Charged Bolt Sentry - 1

At level twelve one of the characters most utilized skills becomes available, Cloak of Shadows. CoS will be used constantly for the rest of the game. When cast normal monsters will not realize the character is nearby and stand idly by while they are eliminated by the traps. The only exception to this is if the monsters have "seen" the character already and are trying to engage. They will continue to follow the character around until they either reach her or are distracted by something else. Still, a quick CoS cast followed by lots of long range attacks keeps the character very safe, as well as the mercenary. One thing to note is that CoS can crash the game if used in the vicinity of stationary objects like the towers in the beginning of Act V, the chained mummies in Act IV or the Arreat Summit.

Charged Bolt Sentry - 13
Lightning Sentry - 1

Up until level twenty-four the synergy for Lightning Sentry, CB Sentry, is increased. CB Sentry is somewhat useful for massed monsters, but against single targets is very lacking. As such once Lightning Sentry becomes available, CB Sentry will no longer be used. That and LS is far more powerful per stat points assigned to it. From here onward the character shouldn't have many problems for the rest of Normal difficulty with the combination of LS and CoS.

Lightning Sentry - 7
Death Sentry - 1

At level thirty Death Sentry becomes available. It's main use is for exploding corpses, both to keep summoning monsters from resurrecting them and for dealing physical/fire damage to other monsters. However at lower levels it really isn't necessary to use as LS clears out the packs quite nicely. One thing to note is that it is not possible to choose when DS explodes corpses and when it shoots lightning, which can be quite annoying when faced with Lightning Immune monsters.

Lightning Sentry - 20
Charged Bolt Sentry - 20
Weapon Block - 1

At level forty-six both Lightning Sentry and it's main synergy are maxed and monsters drop like flies. In fact progress should be so quick at this point that casting CoS is only necessary against really nasty boss packs. Otherwise monsters don't last long enough to threaten the mercenary with harm. Weapon Block is also added to the characters arsenal as by this point duel wielding claws is preferable to gain the most +skill mods possible for her traps. Weapon Block allows the character to still avoid damage as much as possible, with the added bonus of perhaps blocking magical attacks as well.

Death Sentry - 10
Fireblast - 20

At level seventy Lightning Sentry is further synergizes with extra points to Death Sentry, allowing it to continue wreaking havoc even against the higher Hit Point monsters in Acts IV and V of Nightmare. However the main focus is on developing a backup attack for LI monsters, Fireblast. As long as the monster remains stationary, which is the mercenary's job along with CoS, Fireblast is very effective against LIs. However due to the lobbing motion of the attack if the monster is moving then it is tough to target until the monster is almost right next to the character. This can be negated somewhat by targeting the ground where the monster should be when the Fireblast arrives, but this isn't the easiest thing to time properly.

Death Sentry - 20

At level seventy-eight Death Sentry, the second major synergy for Lightning Sentry is complete and LS packs quite the punch. Along with this DS can now be used in conjunction with LS in perhaps a 2:3 or 1:4 DS:LS ratio for added carnage and an increase in progress speed. From here on out all extra points can either go into Shadow Warrior for an added tank or Shock Web for added synergy damage for LS and Fireblast. Personally I recommend Shock Web as the combination of CoS and a melee mercenary doesn't require additional assistance in keeping the character from being mobbed.

Final Skill Distribution:

Charged Bolt Sentry - 20
Lightning Sentry - 20
Death Sentry - 20
Fireblast - 20
Burst of Speed - 1

Monday, January 18, 2010

Castle Age: Update

Where do I begin? It's been a while since I posted about the Facebook application Castle Age. Originally I didn't think I would be posting more than once, but the game has evolved so much it is much more like a standalone application than a FB app. So a few highlights:

Addition of monsters (dragons, bosses) to fight using Stamina
Addition of battle ranks for PvP fighting
Addition of subquests as well as additional realms for more questing

Monsters made the game completely different than what it was before. Previously PvP and questing was all one could do, now there are many more options. One unfortunately byproduct of monsters is that players can level up much faster than normal and putting all points into Attack/Defense is no longer the only option. As such those players that have been here since the beginning are being passed by (level-wise at least) by the "power levelers". For example at this moment I am level 176, which is respectable. However the top player, who has been playing a lot less time than I am is level 800+. I have absolutely no chance of protecting myself from such players on the PvP field. This is why I keep hoping the developers will implement a tiered battle system so that people that high in rank can only fight others that high in rank.

Due to all of the changes I've gone ahead and done what I thought I'd never do, add points into Stamina. This does weaken by build a bit for a period of time, but will allow me to level up faster and partake in the monster hunting aspect of the game, to a degree. Having a variety of ways to play the game will will keep it fresh and enjoyable, so I don't see myself quiting anytime soon. Granted this additional Stamina does mean I spend a little bit more in the game than before, but not too much more. Reason being I have no plans to increase my Stamina to several hundred points like the true monster hunters. My build is a Paladin variant first, PvP second and monster hunter third. I may fall behind the monster hunters, but I will be very competitive with anyone within 100 levels of me.

One additional thing that has changed is that the forums for CA have moved off of the FB site. There is now an independent forum dedicated to Castle Age, of which I am one of the moderators. Moderating is a bit of a time sink, but so far not too terrible of one. The vast majority of my time is spend deleting posts from the monster help section where someone put the wrong link in one of the help threads. That and giving out infractions for repeated such behavior.

The strategy I have chosen means I have tons of content to discover and enjoy, and it will take me a long time to explore it all.

Wednesday, January 6, 2010

Diablo II: Certain Death Tournament

The Certain Death Tournament by Wakiki is an mutation of a previous tournament I had played, the No Vitality tournament. The basic concept is that no stat points may be placed into Vitality at all. The way this tournament is different from the No Vitality one is that an extra restriction is placed on equipment where no more than 30 health allowed per item and only a single health charm per charm type (small, large, grand) is allowed. This means no shopping for those +100 health armors and such, so all of the characters really are walking paper targets. As one can imagine there were quite a few deaths in this tournament, and my character was no exception.

Jaheira, of Baldur's Gate fame, was planned as a Trapsin (an assassin using traps). I had never created one before so thought this tournament would be a good place to start, considering her skills allows her to remain far away from monsters 90% of the time. She started off using melee combat to deal with monsters, due to how simple the first act of the game is. While progress was slow Jaheira didn't encounter any real problems until her untimely death. Once traps and Cloak of Shadows became available to her progress became both quick and safe. When a pack of monsters was encountered she would first cast Cloak of Shadows to blind them all to the presence of both the mercenary and herself. Then several traps were laid out and Jaheira would watch the carnage that resulted.

Outside things were very simple, with lots of room to roam and no choke points Jaheira could move freely. It was the indoors or underground areas that gave her the most problems, specifically those with doorways such as the Countess Tower in Act I NM. Since Jaheira couldn't see what was awaiting her, she took to casting a trap on the other side of the doorway to see if any monsters were nearby. If they were, then more traps joined the first one until they stopped firing. Otherwise the way was safe and Jaheira could walk through the doorway. As such progress was slow inside, as either this tactic or just casting a single trap at all intersections and turns in the underground caves was used at all times from Nightmare difficulty onward.

Unfortunately Jaheira still was unable to protect herself fully, as evident by the fact she was taken down in a drive-by from a crow type monster in the Spider Forest of Act III in Hell. A unique boss with unknown stats flew into the screen and eliminated Jaheira before any reaction could be taken, then flew away just as fast. Quite odd to have a deeds screen with no monsters present, but that's what I got.

My conclusions about this are that trapsins are way to overpowered, but I still wanted to build one for my collection. So next step is to recreate Jaheira in Softcore mode, and twinkled.

Friday, December 11, 2009

Java: Hotline Update #13

An update was needed for the Hotline program, specifically emails are now going to be tracked following the same guidelines and options as phone calls. The hard part was already done thanks not having a different set of options to select from. So the OptionPanel file was copied and renamed to EmailPanel to create the new program tab. Along with this the pop-up messages that appear were renamed to mention an email was tracked as opposed to a call.

However some changes were made as left to the current setup the user would have to log into both tabs individually, which allows the possibility of doing so incorrectly for one of them and causing significant tracking issues. So I borrowed some code from the Enguard program and required the users to log into the application upon startup, before the program window appears. Then once logged in the bottom panel displays what type of tracking that page performs as well as the individual logged in instead of the JComboBox that was there before for logging in.


In order to make it painfully obvious which tab was for calls and which for emails the email tab was recolored, I used Dark Salmon (light red) which made a nice contrast to the opaque blue of the call panel. Along with this borders were placed on all of the buttons to better distinguish them from one another.

Now that there are two reporting tools being used in the program, they each need a separate way to have reports run on them. As such a JMenu was added with two JMenuRadioButtons, one for emails and one for phones. Depending on which one was selected the report would pull the corresponding data for the Report tab.

Right now there isn't a way to combine the two reports together, but that's in the works. Along with that I will be hiding the Report JMenu from anyone who doesn't have the privileges to view the Report tab, just to avoid confusion.

Monday, October 26, 2009

Java: Hotline Update #12

It has been a little while since I was last asked to make any changes to the Hotline application. These changes weren't anything significant, same as the previous couple of updates. Basically one of the options was removed and replaced by a new options. As such this entailed a new JButton to be created with associated listener, and a new piece to the If-Else statement in the ReportPanel class to handle this new variation to the call options. One quick test to ensure that a representative can save calls and then a report can be run on that day's usage, which both passed, and the requested change is complete.

Wednesday, October 21, 2009

Online Game: Dungeons & Dragons: Tiny Adventures

A while back my brother convinced me to join Facebook. Being a gamer I knew I'd end up playing some of the applications there, and I was right. Thankfully one of the ones I found was simple and requires as little time as possible to still have fun. This game is Dungeons and Dragons: Tiny Adventures. In this game you take a character, equip them and send them off on a short adventure. While they are gone you need to do nothing. After a certain period of time your character completes their journey and you can read about their experience. Once they've healed up you can then send them off again on a different adventure.



It works very much the way D&D works, except just about as simplistic as possible. Each encounter during an adventure has a difficulty in one of the characteristics (strength, dexterity, wisdom...etc). A 20 sides die is virtually rolled and compared to the difficulty. Equal or higher and the character is successful, lower and the character is not. Rewards are given for being successful which can be used or equipped on the character for the next adventure.

This is a set and forget application, that was the intent. One could sit and watch each encounter and switch equipment between them for maximum effect, but personally I see that as a waste of time. This is perfect for me as I have enough other things I do and games I play that getting involved in something that took lots of time would be a major problem. Best part about this is, if you go on vacation there is no penalty. Your character simply sits idle until you return, just like a single player game (which it is). One side effect of playing this game is now I've gotten back into playing Balder's Gate II on my PC. I've only played through that twice before and definitely not seen all of the different aspects of the game, so I don't mind. I needed a bit of a break from Diablo II as I've pretty much worn that game out and played all of the builds I intended to play. There are a few more I could play if I wanted, but I think I'll wait for the 1.13 patch before that happens.

Tuesday, October 13, 2009

Diablo II: Classic Tournament

In the Classic Tournament by EmperorMoo the rules were extremely simply, play a hardcore character in Classic mode untwinkled. Rerunning was allowed, as were any skill and stat distributions. I haven't played Classic in years, so seemed like fun.

I should have read up on the changes between Classic and Expansion before starting, so I wasn't surprised. I was aware of several changes (no charms/runes, no equipment on the mercenary) but many I wasn't. Such as:

No potions can be given to the mercenary
Static Field has no limitations in NM/Hell
Mercenaries can't move from one act to another
No orb weapons
No weapon switch

Turns out some of these ended up being my downfall, but I'm getting ahead of myself. I played this tournament with Mirax, a Blizzballer. Never made one before but they are pretty simple and should be able to solo the game. This was especially important as the mercenary won't be doing much damage of their own.

Things started off somewhat slow, as expected with a sorceress. Hitting everything with a staff until a few points in Firebolt were available, then mowed everything down when Fireball was introduced. The rogue mercenary was a very poor tank and only vaguely distracted the monsters away from Mirax. So moving through tight areas was slow going as Mirax wouldn't move forward very fast. This changed a bit in Act II as the desert mercenary does tank fairly well, or at least well enough to hold monsters in place for a few Fireballs to finish them off. Of course any poison damage kills off the merc right away, so lots of trips back to town to be healed/resurrected were needed.

Act III proved interesting with an Iron wolf mercenary. He doesn't tank, so Mirax leads and had to go slowly to be able to deal with the fast Flayer packs in the jungle. Thankfully they have low health and fall to Fireball quickly. At least now Teleport is available and can be used to reposition the merc when needed, or save his life of course. At the end of the act Glacial Spike is also available and used to freeze any monster packs before they are eliminated, which is the exact tactic used in Act IV.

Both Mephisto and Diablo in Normal difficulty proved to be fantastic and entertaining fights, one dealt with Fireball chains and the other a constant stream of Blizzards.

Started to run into cold immunes in Nightmare and a one point Blizzard is tough to eliminate them, mostly because I have trouble aiming at single targets. Can take up to 6 casts to get rid of a single skeleton, since the merc isn't powerful enough to finish it off on her own. Most of Nightmare was a combination of Blizzard and Fireball chains, I basically forgot all about Static Field as the monsters didn't get close enough. In the end Blizzard was used almost exclusively in Act IV and against Diablo, chilled monsters is just safer.

Hell ended up being a huge jump up from NM. The mercenary died constantly and money became a real problem. However while that mean progress was slowed a bit it wasn't stopped, and Mirax continued onward through the different areas without too much difficulty. This is why her sudden end was so unexpected. Walking across the Kurast Causeway she ran into a double pack of Faithful and Sextons. The Sextons dropped Blizzards on her and with 20% cold resistance she didn't have a chance to react before the Faithful finished her off.

It was a fun tournament and a very interesting departure from my normal DII playing. Now I'll return to the land of softcore and try to finish off the last two to three builds I have in planned before I finish the list I made oh so long ago.

Wednesday, July 29, 2009

Diablo II: Blizzballer Skill Layout

A Blizzballer is a Sorceress that utilizes Blizzard and Fire Ball as her main skills. This is a variation of the Meteorb build with cold being the timer spell and fire the spamming spell, just a different type of cold spell being used. Generally this build should be able to deal with just about any monster encountered, and any CI/FI ones can be handled by the mercenary companion. The skill setup is as follows:

Firebolt - 1
Frozen Armor - 1
Icebolt - 1
Iceblast - 1
Static Field - 1

At level 6 some utility skills become available. Static Field is the most important, as this will be used from here onward to weaken any uniques or act bosses initially before they are finished off with other spells. Along with SF, Frozen Armor also becomes available. The Sorceress will have this spell running at all times as it is helpful when melee monsters get close enough that they are temporarily frozen after striking, giving the character time to react by either teleporting away, attacking or running in a different direction.

Telekinesis - 1
Frost Nova - 1
Fireball - 1

At level twelve one of the main offensive skills becomes available, Fireball. From here onward this skill is the main offensive weapon, especially due to it's splash damage. It is fairly mana intensive, so many mana pots will be used so the character should be stocking up their inventory with them for each venture into the wilds.

Fireball - 7
Teleport - 1
Glacial Spike - 1

At level eighteen both Teleport and Glacial Spike become available. Teleport is another utility spell that won't see much action early on. It will mainly be used to escape danger and reposition the mercenary to better tank the monster hordes. This is especially true in the Chaos Sanctuary as way to avoid death for the melee mercenaries. Glacial Spike is uses as a good way to dispose of corpses, of avoid resurrection, as well as freeze packs of monsters in their tracks.

Fireball - 13
Blizzard - 1

At level twenty-four the other main attacking skill becomes available, Blizzard. Even at one point it is a viable way to deal with packs of monsters, and those that are fire resistant. Blizzard is a quirky spell in that the areas it hits are very random and make it very possible for monsters to walk through a Blizzard wall without being touched. As such it is best to cast multiple times in slightly different spots to ensure that all areas are covered and no monsters gets by untouched. By this point Fireball is doing significant damage and monster packs don't last long, as long as the character has mana pots available.

Fireball - 19
Fire Mastery - 1
Cold Mastery - 1

At level thirty a single point is added to both fire and cold mastery, to give both main spells a boost to their damage. A single point is how they will both stay for the rest of the game, plus skill mods will have to make up any difference needed. By level thirty-one Fireball is now maxed and dealing very good damage, wiping out packs of monsters with only a few casts.

Fireball - 20
Blizzard - 20

At level forty-seven Blizzard is also maxed out and the character has two completely different ways to wipe out all of the monsters in Nightmare. Both deal enough damage to deal with any pack in short order. If the character is pressed a few SF casts and a Glacial Spike or two should slow any packs down enough to either retreat or reposition the character to better deal with them.

Firebolt - 20

Now it is time to max out the synergies for our main skills. At level sixty-three Fireball's synergy Firebolt is maxed out giving that skill an extra boost. As Meteor gives the same amount of bonus but requires a few extra skill points to reach, it is bypassed for Firebolt as skill points are at a premium with this build.

Glacial Spike - 20

At level eighty Blizzard's main synergy of Glacial Spike is maxed out. All of they synergies for Blizzard provide the same bonus, but Glacial Spike has the added bonus of being able to affect multiple monsters with it's splash damage when used. As such it can be used against monsters to freeze them in place to be dealt with by other skills. Glacial Spike by itself won't have enough power to take out many monsters in Nightmare/Hell.

From here on skill points can be used in a few different ways. Cold Mastery could receive the rest of the points to make Blizzard more dangerous. If CIs are causing issues then Fire Mastery or Meteor could receive the points to balance the character's damage out. It depends on where problems are being encountered for where to put the last few points.

Final Skill Distribution:

Blizzard - 20
Glacial Spike - 20
Fireball - 20
Firebolt - 20
Cold Mastery - 1
Fire Mastery - 1
Static Field - 1
Frozen Armor - 1
Teleport - 1

Wednesday, July 1, 2009

Java: CharSi Update #24

While using the program I, and others, ran into a few equipment pieces that didn't add the bonuses they should. This was due to either typos on my part or miswording of the mod itself, such as the "+2 to Combat skills" mod was spelled "+2 to Combat" instead. These were all very minor changes to about a half dozen different text files. There might be more out there, but I haven't found them yet.

A code clean-up was also performed to remove some unused variables and code pieces as well as remove all of the "public" identifiers from the variables and methods, as it wasn't necessary. This shortened the number of code lines a bit, not extremely noticable but more a personal preference than anything else.

Next on my To-Do list was to add some additional checks to the system to ensure that when creating items in the generator or selecting a value for a variable mod the value input was valid. Up to this point a Breast Plate could technically have a defense value of 100k. That is no longer possible. Now there is a check that will only allow values that fall between the given minimum and maximum mod values. This required a couple code lines addition to the DetermineRangeValue method in all of the class files.

if(CharSi.userInput){
while(rangeWrong){
userInput = Integer.parseInt(JOptionPane.showInputDialog(helmBackPanel, "Choose a value between " + start + " and " + end, modName, JOptionPane.PLAIN_MESSAGE));
if(userInput > Integer.parseInt(end) || userInput <>
JOptionPane.showMessageDialog(helmBackPanel, "Value given outside the allowed range. Retry.", "Input Error", JOptionPane.ERROR_MESSAGE);
rangeWrong = true;
}else
rangeWrong = false;
}
}

This piece is only active if the user is manually inputting values for variable mods. The rangeWrong boolean variable is initially set to True until the check is made. The user input is then compared to the given minimum and maximum values and if it passes is accepted, otherwise the error appears and the user has to try again until a valid input is given.

Lastly I wanted to ensure that runewords could not be created in the generator in illegal base items, such as a Spirit shield in a buckler that allows less than 4 sockets. This required several changes to the GenerateRunewords class file. First I had to decide how to store the information for how many sockets each piece of equipment allows. This I did with several array of arrays. Each sub-array was two values long, the first for the name of the item and the second for the maximum number of sockets. The array of arrays were grouped by item type available in the item generator, so one for armor, another for hammers and so forth. This method was called when the GUI is created.

Next I needed to be able to obtain the number of sockets the runeword required. To do this I altered the text file of each runeword item so that it displayed the number of runes used in the description in parentheses.

Runes(3):
Thul + Io + Nef

When the runeword is selected in the GUI this number is saved in a variable in integer form for later comparison.

Lastly I needed a way to compare this rune number with the number of sockets that each item could have, then eliminate from the available list those items that don't qualify. This was done with another method, ComapreSocketNumbers. Basically this method would see which JRadioButton was selected in the GUI and compare the rune number with each available item. Those that had less sockets than runes needed were removed from the DefaultListModel.

if(shieldFlag){ //if shield radiobutton marked
for(int i = 0; i <>
if(Integer.parseInt(shieldSocketArray[i][1]) <>
if(baseListModel.contains(shieldSocketArray[i][0])){
int index = baseListModel.indexOf(shieldSocketArray[i][0]);
baseListModel.remove(index);
}
}
}
}

This method is called when either the Display Base JButton is pressed or a runeword is selected from the available list. However to ensure that items removed from the baseListModel can be returned a doClick() call is made on the Display Base JButton to repopulate the listModel fully before it is checked for illegal items. Otherwise once an item is removed, it is gone until the program is closed and reopened, which isn't too convenient.

My next projected changes to the program is to take into account aura bonuses from equipment and also the +O skill mods.

Tuesday, June 30, 2009

Java: Hotline Update #11

This time around the Hotline program did not lose any current options. Instead only two options were added, which made things extremely simple to update. In the OptionPanel class the new JButton variables were created and added to the very end of the GUI. Then the file output was updated to add the number of calls taken for these new categories to the very end of the file, so as not to displace any current call values.

This took care of the OptionPanel, the ReportPanel required just as few changes. Basically a new qualifier had to be created that covered the time from the last update (April 2009) to the new one (June 2009). Then the default qualifier, everything from June 2009 onward, covered the two new call categories. Those were the only changes required to include the new call categories. Now the page actually is full, before there were empty spots for JButtons in the display as I didn't have the correct number of options for full rows. Now I do so the GUI looks more complete.

Wednesday, June 24, 2009

Diablo II: Frost Zealot Skill Layout

A Frost Zealot is a Paladin that utilizes the Holy Freeze aura to deal cold damage to his enemies. A side effect of this aura is that it slows down 90% of the monsters movement rate as well. This type of character has a few different avenues for skill placement available, for my purposes I am dealing with only the pure cold damage variation that has minimal backup skills. As a result the mercenary is relied upon to help out against any Cold Immune monsters encountered. The skill setup is as follows:

Might - 1
Sacrifice - 1
Smite - 1
Holy Fire - 1
Holy Bolt - 1

At level six the character has a single point Holy Fire aura active that adds additional fire damage to all attacks. Might is also available and depending on the equipment found Might may be more damaging than Holy Fire. Either one will allow the character to deal decent damage to the monsters encountered and progress should be fairly smooth.

Zeal - 1
Charge - 1

At level twelve one of the character's main skills becomes available, Zeal. With Zeal the character is now attacking multiple targets at a time and dealing out damage faster than before. It does require mana, so if any mana steal equipment can be found this would be very helpful. However Zeal requires so little mana that such equipment isn't absolutely necessary and the character could simply drink a mana potion from time to time instead.

Holy Freeze - 1
Zeal - 4
Resist Cold - 1

At level eighteen the main damaging skill is now available, Holy Freeze. This will add increasing amounts of cold damage to all attacks as well as slow down any monster's movement within a certain radius. Along with this Zeal has been increased to the point where the maximum number of attacks per cycle is achieved at five. This allows the character to attack many targets at once, or a single target multiple times faster than using the normal attack. Thus increasing his killing ability and speeding up progress through the acts.

Holy Freeze - 20

The first thing that is done is the main skill, Holy Freeze, is maxed out. This is achieved at level thirty-four. At this time the character is dealing significant damage to enemies and they are all slowed by by at least 54%. This significantly increases the character's survivability as monsters don't hit him as often while he is hitting back rather hard.

Blessed Hammer - 1
Holy Shield - 5
Resist Cold - 20

The next thing to do is to max the main synergy for Holy Freeze, Resist Cold, and this is accomplished by level fifty-two. Maxing this synergy boosts the damage done by the character even more and allows his progress through the acts to remain steady as the hit points of the monsters encountered increases accordingly. Up to this point blocking has not been an issue, but moving forward through the end of Normal and into Nightmare it becomes a necessity. As such Holy Shield is given enough points so that a single cast lasts a respectable amount of time and it won't fade in the middle of a heated battle.

Holy Shield - 10
Salvation - 20

By level seventy-six Holy Shield is given enough points so that the duration is significant, as is the bonus to blocking percentage. It isn't require to max this skill as the character still won't be able to boost defense into the ten thousand range and this build is rather tight when it comes to skill points. But level 10, along with any plus skills from equipment, is sufficient to protect the character. As this build is going for pure cold damage, Salvation is the next Holy Freeze synergy to be maxed. While it doesn't provide as much of a bonus as Resist Cold, it's contribution is significant enough that maxing it is desired.

At this point all of the main skills have the hard points they need to make the build viable before entering Hell difficulty. Everything from here onward is simply gravy. To that end I suggest putting points into Zeal. The character is relying purely on cold damage to deal with monsters, and there are plenty of CIs in Hell. Against them the character is depending on the mercenary to handle those types of monsters, however some help against them would be welcome. To that end Zeal is given all additional skill points to increase the character's physical damage, as well as increase the attack rating of the character to ensure a decent hit percentage. The damage done by the character physically won't be massive, but every bit will help when encountering CIs. Simply understand that fights against those types of monsters will take a little longer than against non-CIs.

Thursday, June 18, 2009

Online Game: Castle Age

Recently I've gotten involved in a Facebook application named Castle Age. It's a realtime text-based game centered around the medieval age. In this game the player is king and hires soldiers and buys land as well as equipment for the soldiers. The main point of the game is to complete a series of quests to reap the rewards given as well as engage other players in combat. Players can choose which aspect they wish to concentrate on however, as neither combat nor questing is absolutely required.

A player has a certain amount of health and energy available to them, and these regenerate over time. The energy is used to complete quests, a certain amount is necessary to attempt a quest and a quest needs to be completed a certain amount of times before the player may move on to the next quest. This is called gaining influence in that quest, and the player needs to reach 100% before they can move onto the next quest.

Health on the other hand is used only when battling another player. This can be done in one of two ways, either invading or dueling. Invading involves bringing your entire army to combat the other player, winner takes all. Conversely dueling is a one on one fight between your general and the other players active general. After each fight both sides lose a random amount of health and if either reaches zero that player is "eliminated". Being eliminated doesn't affect the player more than making them lose six experience points. A player can be eliminated multiple times with no derogatory affects onto their account.


Personally I'm not so interested in battling strangers for the off chance I can steal some of their gold. Instead I only concentrate on completing the quests and building my defenses to repulse invading armies from my kingdom. As a result this means I level my character slower than others as I'm not gaining experience from fights and only from quests. As this game isn't really a race, this is fine by me.

To this end I've invested some of my stat points into Energy to ensure I can perform multiple quests at a time. I wanted to make sure that I could leave the game for extended periods of time and not have to worry that I lost energy, so I plan on having 120 Energy total that means I can be gone for ten hours with no ill effects. All of the rest of my stat points go into Defense, in the attempt to win more battles than I lose when defending. I am willing to retaliate against those that attack me, but if I can't when I notice the attack, if the other player is too low in health, then I ignore them and continue on my merry way with questing.

Overall the game is pretty entertaining, and not too much of a time sink. In the beginning one is forced to login often to use up the small store of Energy that accumulates, but as stat points are put into Energy logging in becomes a less frequent occurrence. It is a fairly quick game however, as after a month of playing I have completed four of the five currently available quest areas. The last one should take two months to complete but with no reward at the end isn't something I have to worry about much. So as long as I don't concern myself too much with my battle stats or win/loss ratio it is a decent distraction from time to time but not something I have to feel is taking over my life, as I am rather limited in terms of what I can do in the game.

Sunday, May 10, 2009

Diablo II: Matriarch Esmay

Esmay will be a Fishyzon, which is an Amazon that utilizes the Freezing Arrow and Lightning Fury skills to damage her enemies. She will not have a valkyrie available to tank monsters, so will have to rely on her mercenary and a low level decoy to keep herself safe.

None of Esmay's main skills are available for much later in the game so she started off life poking everything to death with her javelins. Luckily for her a set of rare javelins fell early, but still she had great trouble getting through the beginning of Normal. Even when she received a mercenary for support both were not using any special skills and instead only a normal attack to damage the monsters. As a result progress was extremely slow, and remained that way all the way until the middle of Act III.

Finally around the end of the Flayer Jungle Esmay started to use her skills. Up to this point her mercenary was doing several times the damage per hit as she was and she was tired of being a second-class character. She had finally gotten Charged Strike up to a respectable level so that it would deal a great deal of damage. This was key as it is mana intensive and the reward had to equal the payment necessary. It turns out this was the case, even though Esmay had to start running around with half her inventory taken up by mana potions. She picked up every single one that dropped and still had to return to town often to replenish her stock.

However as a result Esmay began to simply roll over all monsters packs encountered. Between one to three pokes with a javelin and a monster was dead, and sometimes the ones behind as well if some of the bolts missed the initial target. She did have an issue with getting stun locked, since she didn't have any faster run/walk she had to try and keep her mercenary between her and the monsters so that she would not be interrupted. As long as that was done Esmay and co ripped through to the end of Normal.

At this point she was able to equip a few pieces of equipment that are intended for endgame use, such as Titan's Revenge, Moser's Blessed Circle and M'avina's belt and gloves. With these added Esmay's blocking increased dramatically and as such she was in much less danger of getting stunlocked. Act I was pretty much a continuation of the end of Normal in that nothing could stand in her way. She did run into one or two situations where the monsters were lightning resistant, such as Misshappen, and there she had to switch to utilizing Freezing Arrow. This worked because by this point that skill was pretty much maxed and the monsters dropped like flies.

As Esmay progressed through Nightmare she progressively began to use Freezing Arrow more and more, until it was her main skill near the end of Act II, which is when it was finally maxed. This came in handy when dealing with packs of skeletons, since the corpses shattered upon death they couldn't be resurrected. Esmay did have issues however with dealing with packs now that she didn't have a reliable tank in the valkyrie. The mercenary simply couldn't cut it by himself against the worst of packs and as a result Esmay have some issues. Most notable was in the Viper Temple where the first level had a stair trap of about two dozen snakes. Esmay tried to escape them by running farther into the temple to gain some breathing room, but every turn simply loosed more monsters upon her until she was cornered and eliminated.

That was more overconfidence than anything else, she should have taken things slower and would have survived her first attempt into the temple. Regardless she was successful the second time around. Freezing Arrow is much more mana intensive than Charged Strike however, so Esmay is running out of mana potions frequently, requiring more trips back to town. However once I got the hand of it she progressed nicely through to Act V, where she ran into more problems.

Her issues in the Barbarian homeland didn't start until the Crystalline Passage. There she kept encountering back spawns of snakes, frenzytaurs or some combination thereof. Her mercenary simply wasn't capable of tanking two champion frenzytaurs at a time and as a result Esmay found herself running dangerously low on gold for resurrections. She had to start picking up all the items that gave good money returns to keep things going, but it was quite close for a little while. Eventually she did finally make her way to Baal and dispatched him with relative ease.

Hell, it turns out, didn't start off so bad. Esmay started off at P1 assuming all the immunities would make it too difficult otherwise. That turned out to be a mistake, so she ramped things up to P3 from the Cold Plains onward. Now she could no longer stay with a single skill for the majority of the time. Esmay found herself switching from Charged Strike, to Freezing Arrow, back to Charged Strike and then a few Lightning Furies to finish things off on a constant basis. She is questing with FA as the primary skill, but that's as much for the cool aura that Mavinas set gives than anything else. Besides, she'd be a lightning Amazon otherwise and that's not her point. She's a Frost Maiden first, with a CS backup skill and I intend to play her that way as much as possible. Besides, the frozen monsters makes the mercenary job of tanking so much easier.

Things went smoothly for the most part, although single cold immune monsters take a while to eliminate with CS if they aren't very large (think vampires). Still Esmay wasn't noticing the fact she was questing without a valkyrie, something none of my Amazons have done up to this point. Esmay was having a grand old time until she was ambushed out in the desert of Act II. Apparently there was a vulture extra strong, might enhanced boss hiding behind a palm tree where it couldn't be seen. Esmay, thinking she had nothing to fear stood nearby and plucked away at the minions. Suddenly Esmay's life was practically zero and then it was gone, two hit knockout. After that Esmay was a bit more careful to stand out in the middle of nowhere so monsters didn't have anywhere to hide.

Everything through Act III was done at P3, but it was dropped down to P1 from Act IV onwards as it was time to end Esmay's quest. She ripped through Act IV like it wasn't even there. Hordes of maggots dropped in a single FA and LFs took out any CI stragglers. Diablo didn't even require a single health potion, although the mercenary didn't need about a dozen resurrections due to IM just to get to Big D. Nothing of interest was dropped of course, why would Hell be any different than the rest of the areas up to this point.

Act V was a bit tougher than the previous act, but not enough to give Esmay any real problems. She did find herself using the decoy to keep ranged monster packs busy while she dealt with someone else, something she rarely had to do up to this point. While that became common practice, for the most part everything else stayed the same, with one exception. From the Crystaline Passage onward Esmay no longer quested with her bow as the main weapon, instead her javelins were the main weapon as cold immune monsters outnumber non-CIs in all areas except the WSK. So while there was less freezing of monster packs to keep the mercenary alive, this was replaced by LF strikes that wiped out the packs faster than they could hurt the mercenary, so it evened out in the end.

No champion packs of Frenzytaurs were encountered so Esmay had no trouble all the way through Baal and his minions. The WSK threw at her the obligatory monster spawns of Unravellers, Dolls, Oblivion knights and Souls but in Esmay successfully engaged them all. The minions when down with a whimper and Baal, while he did remain cloned the entire fight, was defeated without too much hassle.

A few parting thoughts about the Fishyzon. She's a very overpowered build. Even untwinkled she'd be able to handle all of Hell at P3. The equipment that Esmay wore wasn't the most optimal for her skills, as she was more a themed build for the Mavinas set than anything else. She could have been even more deadly with a few choice gear changes and could perhaps had dealt with Hell at P5. With this being my first Amazon without a valkyrie sidekick I found the experience odd but didn't notice her absence too much. The fact that FA worked even better for tanking monster packs had a lot to do with it, as did the chance to decrepify that the mercenary's Reapers Toll provided. Overall a very safe and powerful build, exactly as advertised.

Stats:
Level 84
Strength - 92(122)
Dexterity - 130(199)
Vitality - 273(273)
Energy - 15(15)

Life - 1035(1035)
Mana - 139(294)

Lightning Resistance - 75
Fire Resistance - 75
Cold Resistance - 75
Poison Resistance - 75

Skills:
Freezing Arrow - 20(26)
Cold Arrow - 20(26)
Decoy - 1(7)
Pierce - 1(7)
Lightning Fury - 20(25)
Charged Strike - 20(25)
Lightning Bolt - 4(9)

Equipment:
Weapon: Mavinas Caster (shael)
Switch Weapon: Titan's Revenge
Switch Shield: Mosers Blessed Circle (2 Pdiamonds)
Armor: Mavinas Embrace (cold facet)
Belt: Mavinas Tenet
Helm: Mavinas True Sight
Boots: light plated boots - LR 28%, PR 27%, 23% MF, 20% FRW
Gloves: Mavinas Icy Clutch
Amulet: All resist 30%
Ring 1: Raven Frost
Ring 2: FR 18%, CR 17%, 4 Dex, 24 AR

Mercenary ( Desert Warrior)
Helm: Tal Rashas Horadric Crest
Armor: Shaftstop
Weapon: Reaper's Toll

Hellforge:
NM: Sol
Hell: Ko

Wednesday, May 6, 2009

Diablo II: Fishyzon Skill Layout

A Fishyzon is an Amazon character that utilizes Freezing Arrow and Lightning Fury/Charged Strike attacks to deal damage to her enemies. Along with this a backup skill of a single point Jab or even relying on the mercenary provide this character the ability to deal with any monsters encountered. Unlike many other Amazon builds, the valkyrie minion is not utilized, which does make this build a little bit more fragile than most, but not enough to cause any real concern. The skill setup is as follows:

Jab - 1
Inner Sight - 1
Power Strike - 1
Cold Arrow - 1
Poison Javelin - 1

At level six several interesting skills are available to the character. None of them however will be a final skill so for the time being none of them will receive more than a single point. As such the character will be utilizing normal attacks for the beginning of the game with a single Poison Javelin or Cold Arrow thrown in for tough bosses or large packs that can't be dealt with one at a time.

Critical Strike - 1
Lightning Bolt - 1
Slow Missile - 1

At level twelve only prerequisites are being filled so battles are still fought in the same manner. Mostly normal attacks with the odd Poison Javelin thrown in against packs or Cold Arrow against bosses.

Ice Arrow - 1
Charged Strike - 1
Plague Javelin - 1
Penetrate - 1

At level eighteen one of the main skills does finally become available, Charged Strike. However at such a low level the mana requirements for the damage dealt are not very character friendly and as such the skill is used only in dire emergencies. Otherwise tactics remain the same.

Decoy - 1
Charge Strike - 7

At level twenty-four a very good monster distraction becomes available in Decoy. With only a single point it won't last very long but the few seconds of peace should be enough at this point in questing to allow the character to regroup her wits. Charged Strike has become a bit more viable, still mana hunger enough that it isn't in use all of the time, but working it's way towards that goal.

Lightning Fury - 1
Freezing Arrow - 1
Charged Strike - 13
Pierce - 1

At level thirty all skills are now available, including two of the main ones in FA/LF. Also, Charged Strike has become powerful enough that it may be used on a constant basis. Half of the inventory will need to be filled with mana potions before venturing out, in order to ensure a decent amount of territory can be crossed before a trip back to town is required.

Charged Strike - 20
Freezing Arrow - 6

At level thirty-seven Charged Strike is now maxed and dealing significant damage. While CS is the main attack Freezing Arrow has been added to the skillset and comes into play whenever a pack approaches. One or two quick FA shots freezes the group for a short period of time, but normally enough for the character to eliminate a few with CS. Then the process is repeated until the pack is gone.

Freezing Arrow - 20

At level fifty Freezing Arrow is maxed. Finally the character has a choice as to which skill will be the main one, FA or CS. Either will work quite well and purely depends on the characters personal preference. Either way scouting ahead with the random Decoy from time to time is advisable, especially in areas such as the Durance and WSK were very nasty monsters can pop out of nowhere.

Cold Arrow - 10
Lightning Fury - 10

At level sixty-five the synergy for Freezing arrow is increased, as is one of the mains skills in Lightning Fury. As the character is still in Nightmare difficulty having LF maxed is not an absolute priority, Charged Strike and Freezing Arrow do quite fine at this point.

Cold Arrow - 20
Lightning Fury - 20

By level eighty-one all of the skills are complete and the character should be able to deal with any monster pack encountered. Liberal use of Decoy in Hell difficulty is suggested to avoid any nasty traps, although granted stair traps will still be unavoidable. But without a valkyrie to soak up the damage the character needs to be a tad cautious when moving through areas. From here on the extra skill points can be placed in a few different areas. Decoy could be increased to give a more powerful, and instantly summonable, tank. Or one of the CS/LF synergies could be increased to provide more power to those attacks. Or Pierce can be increased to add to the current percentage. Which route is taken purely depends on the character's play style and what situations have caused the character difficulties up to this point.

Final Skill Distribution:

Cold Arrow - 20
Freezing Arrow - 20
Lightning Fury - 20
Charged Strike - 20
Decoy - 1
Pierce - 1