Facing the Green Dragon

I've been playing The Legend of Green Dragon for a while. Recently I made a strategy change. Instead of fighting opponents my own level, I have been beating up on the little guys. They call this "slumming" in the game. This means that I hardly ever die. Sure the gold and XP gain is lower. But I live to see another day.

Finally I maxed out my armor and weaponry. I continued to beat up on the lower level opponents. However the game got to a point where I was forced to face a green dragon. The thing had around double my health points. I came out firing with all my special abilities. It was no use. I was beaten pretty badly.

The real disappointment was that I lost all my gold. I have saved up a stack. Damn. Time to regroup and try beating up on the little guys again. In a strange twist, I ended up in a new town after the defeat at the hands of the dragon.

Another Legend

A friend of mine got me hooked on this game Legend of Green Dragon (LOGD). I have been struggling with the game. I would level up, only to get defeated in battle. I lose a lot of experience when that happens. Plus my gold gets depleted. How the heck to these players on the top of the leaderboard keep their scores? I know they are playing frequently.

Just this week I figured it out. In the past, I would always challenge monsters that were the same level as me. I tried to run when the battle turned against me. But I would die a lot when the monster prevented my escape. Turns out I was using the wrong strategy. I should be beating up on the little guys.

In LOGD, you can look for a fight. That will get you a challenging opponent. You can also "go slumming". That means look for weaker monsters to kill. I like that options. It is rare that a monster of a lower level can take me out. Now I have gained back all the lost experience from dieing, and then some.

Players on the top of the leaderboard better watch out. I am climbing the ranks. Oh yeah. I am also looking into writing a version of LOGD myself. But that's a story for a future post.

Game Developer Magazine

Found a place online that has all the back issues of Game Developer magazine for free. The archive dates back to 1994. I took a peek at the old issues. It was entertaining to read about the old time consoles such as the NES. There was also talk about a lot of companies that are not out of business. Speaking of which, it seems that Game Developer magazine ceased publication earlier this year.

It is really too bad. I thought game development has become big business. Perhaps the magazine industry is the one in a sharp decline. You should download some or all of these back issues at the GDC Vault. Nobbody is sure if these issues will be free or available forever. I know I spent an afternoon downloading a bunch of files. They also include the source code and utilities along with the magazine itself.

Taking a Crawle

I was reading about a post where an independent developer was getting ready to throw in the towel. Guess game development was taking its toll. I decided to take a look at the game. I downloaded the installer. Then I launched it. Program was installed and I started it up.

Immediatly I received a message stating my client was out of date. What? I just installed the program. Oh well. I let the program update itself. Then I started up the game again. I had to create a world. Then I tried to play, but ended up in the create world menu again. Eventually I got to start playing the first world I created.

At first I could not figure out how to move my character. Then I found that the AWDS keys control movement. I picked up a few items like branches. Kept heading North and got to the end of the island. Then I headed West. It was strange that this demo had a countdown in units of milliseconds. I kept trying to convert the milliseconds to seconds or minutes.

The countdown did not affect me. I walked over top what looked to be a dog (the graphics are tiny). Turns out it must have been a wolf or something. I died immediately. The music was good. Some of the graphics were decent. Just could not get into the game.

R-Type for Timex Sinclair

Just finished reading It's Behind You: The Making of a Computer Game. The book was written by Bob Pape. Download a copy for yourself from his web site. Bob tells the story of how he coded a version of the game R-Type for the Timer Sinclair home computer back in the 1980s. I guess R-Type was an arcade game from the 1980s. Although there was a complex employment and contracting arrangement, the game was published by Activision.

This book covers all kind of good stuff. Some of the best parts have to do with the technical details of stuffing an arcade sized game into a small home computer with limited hardware. Other interesting parts involve the employment arrangement Bob had. He worked for some company who had a deal with Activision to write the game. Of course money dried up in the middle of development. Bob did complete the game, and apparently got paid in development hardware instead of cash.

The book also mentioned development of R-Type for other systems such as the Commodore 64. These other development efforts went on during the same time Rob was working on the Sinclair version. The funny thing about the whole situation was that, even though Rob went on to code other games, he exited the game development industry and went on to work in a different industry. You got to read the book to find out more.

I went onto Amazon to buy a print copy of this book. Seems like Bob never published his book in print form. Too bad because the version of the book I read was reading for printing. Might have to pay someone to print a copy out for me. I would love to pass a few copies on to my friends who want to get into commercial game development.

The Bug Algorithm

I found this super blog post by Matthew Klingensmith on how to implement motion planning. Be warned that his is a long and detailed post on the subject. I found the first few ideas very nice. Then things got a bit complicated. The best part was when he was explaining the theory behind "the bug algorithm". This is a technique for a computer controlled player to get from point A to B if there is an obstacle in the way.

I was happy when reading about the bug algorithm because I realized that I had implemented such a technique when coding up some Angband monster AI. Well let's just say that I implemented a poor man's version of the bug algorithm. I had found that when multiple monsters are trying to move toward the player, they get in each other's way. If I did not code in some smarts to their logic, they would crowd up in a long line. Fail.

But if the monsters could "walk around" obstacles in their way, they could get to the player better. It would look a lot better than the dumb monsters lining up. However I only got around to implementing the monsters going a few positions out of their way to try to avoid the obstacles. The bug algorithm theory let's an AI track the perimeter of an obstacle to get back on the optimal path towards the player. Great stuff I tell ya.

Dodger Becomes Chomper

Previously my Dodger game had the goal of avoiding the obstacles. Then I made the symbols mimic Pacman. Now it is time to change the rules of the game. Instead of avoiding obstacles, you are supposed to try to run into the obstacles. In other words, you need to chomp them like Pacman would.

I got rid of the ghosts from Pacman. You normally don't eat them unless you munch a power pellet. I am experimenting with what I should replace the ghosts with. Right now I have some balls that have their colors move around. The effect is nice, except it is monotonous because all the balls change their colors at the same rate.

Dodger Becomes Pacman

Today I made some changes to the symbol in my Dodger game. I made everything look like Pacman. Yeah. It might be a bit confusing because this is still a game where you dodge obstacles that fall down the screen. However this puts me ahead of the game when I get around to implementing Pacman.

Things are starting to get out of place in the code. I got one big class that draws everything and controls the movement. Really want to break things up into a few objects. I mean I should have a ghost object, a Pacman object, etc. It will make the cose a lot cleaner I think.

The goal here was just to get practice implementing the game of obstacle dodge. However I would like to come out with some objects I can reuse in future games. I don't think it will take much time to refactor into a couple classes. This is just a repackaging of the method names and where they reside.

Next I am supposed to work on a memory puzzle. You know, the one where you uncover two pieces and try to get them to match. But instead I might jump ahead and make a slider puzzle. That's the one where there are 15 tiles in a big square, with one empty tile. You can slide adjacent tiles into the empty spot. You try to get the 15 tiles in numerical order. Should be fun.

Herer Comes the Scores

All right now. I added rudimentary scoring to my Dodger game. You get one point for every time the obstacles move and you do not get hit. Yep. That means I implemented some collision detection. At first I thought I would have to check each of the corners of the obstacles to figure out if they bumped into the player. Later that seemed like a waste. I ended up figuring out the region where the upper left hand corner of the obstacle would need to be for there to be a hit.

Where do we go from here? Well if the player hits an obstacles, I just reset the score to zero. I would rather decrement the number of lives the player has. Game will be over when you get to zero lives. Then I will have to use some sexier graphics than just circles and squares. Maybe I could turn the symbology to Pacman and ghosts? Ha ha.

We Have a Player

I have been working on a very simple game called Dodger. Previously I just had obstacles moving. Now I added a player symbol. Put up a black background. Added colors for obstacles and the player. The big coup is I got keyboard input working. You can use the arrow keys to move the player left and right.

Next big challenge is to add collision detection. I want there to be a penalty if you crash into an obstacles. This is a dodging game after all. After that I might give the player a couple lives, implement scoring, and we might just have a minimal game on our hands. Go team.

Game Clone Overload

Previously I decided I wanted to write a clone of Pac Man. Sounded legit. But now I think that may have been too ambitious a project. I start school in a week and a half. Wanna get something completed before school demands become too high. Therefore I have reverted back to coding a game called Dodger.

I got the idea from reading a post by Al Sweigart. He is the author of some books about writing games with Python. Al recommends you write a lot (50+) of simple games to learn game development. The first he recommends is this Dodger style game. Bad guys zoom down the screen and you need to avoid them.

I decided to write my game in Java. This is a good excuse to brush up on my Java GUI programming. So far I have randomly placed the bad guys on the screen. And they move downward. Now I need to put up some symbology for the player. Maybe a space ship? I am looking forward to another idea from Al - writing a snake style game. First things first though.

Pac Man Fever

Earlier this summer, I learned how to write Windows 8 apps. It was a tough education. Actually learned most of the lessons by reading a book on writing Windows 8 Apps with C#. Translated the ideas to my C++ apps. Created about 10 apps in all. Six of them are now featured in the Windows store. As soon as I get some cash, I am going to put up a nice web site to market my apps. Right now I have some placeholders on a free web site.

Learned how to write Windows 8 Apps took a toll on me. I was staying up late every night. Stopped exercising. Stopped working on projects out in the yard. Pretty much got into a funk. Ever since I completed the apps, I have not been doing much programming. I think I created maybe 1 mickey mouse sized utility in Java. Whew. I need to get back to coding.

Today I decided I would write a Pacman clone. That is a sizeable task. I think I am up to it. Only have a month before the fall semester starts at school. This semester I am taking a tough class (intro to PHP). So I need to knock out Pacman in the next month or so. Baby steps though. First chore is to write the Pacman Level Editor (PLE). This will allow me to draw and save the maze. That will be a cool little tool. I think I shall write it in Java for kicks.

Intuitive Controls

I have been downloading free iOS games to my iPad. Some have been fun. Others were disappointments. I think the deciding factor was how easily I could figure out how to play the game. Take Superbrothers: Sword and Sorcery EP. It has a bunch of blocky style stick figures as characters. There were some instructions on how to interact with the game to begin. However I never really figured out what double tap or hold down your finger meant. Thus I was confused the whole time I played the game.

I had the exact opposite experience with Where's My Water. The initial premise was easy. Swipe to dig through the ground. The levels were set up to gradually teach me more complex techniques. Mostly the hand movements were the same. It was a game of strategy. A new control or two poppoed up every now and then. However the design had me pretty confident at most times that I was in control.

That's what it boils down to. Master designs make it seem easy. I am sure a lot goes on behind the scenes to make sure I learn quick and feel in control. Now I just need to implement that feel in my own games. Then I shall rule.

Zynga Layoffs

Zynga has announced that it is laying off 18% of its workforce. It shall close a bunch of offices. This was being done to prepare for hard times. Luckily it was not just people getting a pink slip. Those laid off would be getting severance packages, and maybe their stock options accelerated.

AllThingsD initially alerted me to this news. Mark Pincus, CEO of Zynga, confirmed the news on their blog. Zynga is a public company. They previously announced guidance for their second quarter. Now it looks like they will just about meet the bottom range of their guidance. Stock might get the beat down.

Who knew things would be this bad? I wonder whether Zynga will make it in the long term.

Gamer Blog

My friend finally got around to starting her Gamer blog. She had been talking about it for a while. But you know how it is. With school and family activities, who has time for blogging? Well I went over and checked out the blog. Yep. Just as I thought. She is playing a lot of games. Now that summer is here, there may be even more gameplay.

A while ago I saw Final Fantasy on sale for twenty bucks at Best Buy. Of course I picked it up. I remember Final Fantasy for the original NES platform. This time around I bought an XBox 360 version. However the latest Final Fantasy has gotten a lot more complicated than before. Battle control is not simply wait for you turn, pick an enemy, and then attack.

I did not get into this latest version of Final Fantasy. Maybe I should pull out the old NES versions and get busy. Those were good time. Anyone remember the Chocobos? I also think I was in love with Tifa Lockheart. Used to have a poster of her up in my house. Heheh.

Curiosity is Complete

I downloaded this app called Curiosity some time ago. It is a massive cube whose surface you need to click to expose what is underneath. The only redeeming quality about it was that the same cube was worked on by all people who downloaded the app. After clicking for a little while, I deleted the app from my phone.

Turns out the people still playing just finished clicking the last square. One person "won" the challenge. They got a personalized message from Peter Molyneux, the creator of Curiosity. What did this person win? Big time money? A vacation trip? No. They get to be a character in an upcoming game.

LOL. Is this an epic fail or what? All right. There is a little more than that. The person who one gets to make some decisions on how the new Godus game will work. They will also get some slice of profits from that game. I am glad I did not fall for this publicity stunt. Last time I listen to anything Molyneux says.

Humble Bundle Strikes Again

There is a Humble Bundle on sale once again. This is a charity event of sorts. A bunch of games are bundled together. You decide what you want to pay for the package. The games are downloadable. You also have the option to play the games on Steam. As usual, some games are only available if you donate a certain amount of money.

Often times the best games are locked behind a minimum donation. However this time around there are some good games available at any price. Sure one of the locked games has famous voice actors like Jack Black. But the base level games are tweaking my interest. I have not purchsed any humble bundles before. Got too many games as it is. But maybe I can make an exception this time around.

You Are Doing it Wrong

I play this online game Legend of Green Dragon about twice a day. When I do well, I want to see how I compare to other players. So I click a link that shows all warriors. It feels like most of the time I get the following message:
Too many accesses: Your subnet has accessed this page too many times in the last 24 hours. Sorry, but this page requires a huge amount of resources to generate, and we can't afford the resources to have people just crawling all over this page. Try again tomorrow. 
Ummm. This should not be too hard. You just need to show me a list of players ranked by level and experience. How hard could that be? If you are running some sort of mikey mouse database that cannot support this in real time, then cache the results and show me those results that are a little stale.

Heck. The base code for the game is open source. Might be time to take matters into my own hands. How hard can it be? I think the stuff is written in PHP.

Becoming a Game Programmer

I just read this article on determining whether you have what it takes to be a game programmer. Check out John Ratcliff's post and see what you think. It sounded very harsh. {retty much John sees that there are two feasible paths: software engineer and artist. They are both hard jobs to crack in the game industry. And you got to be one in a million to make it.

Furthermore, there is more bad news. You might hate it if you do get a job in the game industry. The hours are long. The pay is low. You might get canned as soon as you deliver the game. The only goo news about being a software engineer is that it translates to other better jobs.

Ack. What is a game developer to do? Code a game ont the side as a hobby. It is the only way to stay sane in the crazy world of commercial game devlepment.

Trying to Conceive

Next game I am trying from the 7DRL completed entries is The Conception. At first I did not get the controls for the game. I got a lot of messages stating that I could not move onto myself. What? Then I finally figured it out. Looks like you are a sperm with a tail that extends a couple cells away. You cannot move onto your tail. This is kind of like a snake game, with a very short snake.

Now that I understand the game and the conception bit, I see why the walls of the maze were drawn in some sort of pink color. There are annoying obstacles that move and inhibit your progress. I fought a few enemies along the way. I did like the way the walls of the "dungeon" were drawn in hex shapes with color. That is something a little different.

I laughed at having to fight with the clap. Later in the game, I saw that my tail got smaller when I lost health. That was good because I was not running into it any more. But it was bad because death was near. The mission provided a bit of a chickle as well. You got to "fertilize that egg bro".

This game does not seem that easy. If it was not turn based, I would say it would feel like a low resolution video game.

Playing Rodney

It is about time that all the Roguelike entries should be finished. Now it is time to enjoy the games. I only saw about 10 delcared failures. I guess there are going to be a boatload of games that were finished. First up I tried Rodney. Initially I was a little puzzled on how to proceed. I entered my name. Now what? All I saw was a button to see the leaderboard (high scores).

I ended up playing the "offline version", whatever that means. I got past the name entry screen. There I had to choose one of many special abilities. I went through the first three levels. The ligthing was nice. There was a simplified user input system which had me pressing space for the most common choices.

Funny it seemed that some weapons I wielded must have broke in battle. I encountered a lot of items in the first few levels. Had to already make decisions on whst to drop. Picking up a torch seemed to improve my view. The levels themselves did not appear too huge.

I am not sure what the eventual goal in the game is going to be. Maybe I have to find Rodney who disappeared down there a few years ago. Or maybe my goal will be to find out what my goal is. Either way, I bet I will have fun.

Room Rogue Tactics

I have wrapped everything up for my 7DRL entry Room Rogue this year. Updated the submission site, entering my download link. I put the thing on my DropBox folder just like I did last year. This should be easy since my file is HTML. Anyone should be able to click the link with a browser, and be immediately playing the thing.

Things start out easy in my game. You just have to bump off a bat on dungeon level 1. However monsters get harder and grow in number as you descend. The key is to level up early, and keep your hit points near maximum. I have super regeneration always turned on. So you gain 1HP per turn.

You know what that means? Run when you are low on hit points. You also get a big time increase in maximum hit points for every character level you achieve. Get yourself up to cLevel 8, 9, or 10, and you will be a wrecking machine. The challenge is that most room are open. So the monsters can gang up on you. You just have to play smart.

We Have a Winner

I have finished the minimal set of features to declares this year's roguelike entry a success. I made sure instructions come up in the initial messages at the start of the game. Also added some simple help that repeats these initial messages. Put in a number of different monsters. I cheated a bit at the end. There are around 5 different types of dragons.

Towards the end I was really hacking the code. This was not because I did not have enough time. I am finishing about a day and a half early. I just was not in the mood to design the code the correct way at the end. It has been a long week of coding. Now I should probably get back to studying for my XML college class.

Normally you are supposed to write up a new roguelike for the 7DRL and stop. I think I might continue on with this game after the contest. I could clean up some code. There is a lot of refactoring to do. Might even get into some object oriented JavaScript here. However the first order of business is to put this thing up somewhere on the web and officially declare success.

See you at the finish line.

Introducing Colors

Now that the basic game mechanics are complete for my 7DRL, it was time to implement some colors. The game was just too boring displayed in black and white. Previously I had heard some complaints about complex roguelikes I have made which lacked colors. Well now I deliver.

I actually hacked together the color generator. When transferring the symbols from memory to the screen, I do a quick translation to wrap everything in something that aligns it to a color based on the symbol. I left all the English text in white. The background is always black. Everything else has its own unique color.

Now I should probably provide some help so the user knows which keys control the movement. Then I might start adding some more monster types. However I am getting close to the icing on the cake. Most of the game is complete. I just need to be careful now not to break anything. In fact, I think I might just make a backup of the working code right now.

Monster AI

My 7DRL entry Room Rogue is coming along nicely. Previously I had monsters which were very dumb. They would line up and try to attack the player. However only the first monster in the line would do the attacking. The others would wait behind that monster. I needed these monsters to be a little smarter and move around the other monster. That way they could tag team attack the player. Without this, multiple monsters did not pose much of a challenge.

The trick behind this was to sometimes choose a non-optimal direction for the monsters to move. The optimal direction is the one that takes them closest to the player. However if that spot is inaccessible, the monster should choose another direction. The best direction of the available directions should be taken. I implemented that today.

Now with more monsters acting smartly, I needed to give the player some means of staying alive. Therefore I added leveling up for players. If a player levels up, they get more health. And to implement the level up, I had to implement levels for players, as well as experience for players.

Now tomorrow I must add some color to this game to give it pizazz. Then I might add some more monster types if time allows (right now you only fight orcs).

Battle Mechanics

Today I shored up the battle code for my 7DRL entry Room Rogue. Previously the player and monster always hit each other when they were close enough. They also previously always were awarded maximum damage. Well no more. I implemented a simplistic battle system. You got to roll a die to ensure a hit. And the amount of damage done is random, based on the maximum amount you can do.

At first I thought I could just scale the damage amounts up uniformly. But this new battle system skewed the difficulty of the game. I found myself getting killed on level 1 too often. So I made the monsters (all orcs at the moment) have a little less maximum damage.

Now I need to allow the multiple monsters on the lower levels to pose a challenge for the player. This means I need to get them to move more intelligently to surround the player. Right now they line up and block access to the player. Then I guess I should also allow the player to level up with experience to get a higher maximum health.

Did I mention that I have not added any color to the game yet? Guess that will have to come through on the last day. That might be a bit difficult. But hey. This is a 7DRL. At least I already added the scrolling messages function.

Introducing Melee

I got the player fighting monsters now in my 7DRL entry Room Rogue. Players hit monsters. The monster hit back. It is a battle to the death. Right now the battle system is very simplified. If you are in range of a monster, you can always hit it. And you always do max damage. Same thing goes for the monsters. If they can reach you, they do hit you with maximum damage every time.

I stacked the odds in favor of the player. They always auto heal. And they do more damage than monsters. The monster also have a very dumbed down navigation. They get jammed up and cannot approach the player in all kinds of scenarios. I was able to move through this unbalanced game and get halfway down the dungeon before getting bumped off.

I need to employ the RNG and check a random number every time somebody tries to attack. And if the number shows there was a hit, I need to compute a random amount of damage. Otherwise things will be too predictable. Now sure if I am going to allow the monsters to regenerate health like the player or not. Maybe they can do it at a much slower rate.

I See Monsters

Today I implemented some gameplay into my 7DRL entry. First I put up a minimal statistics line on the top of the display. For now it only updates the dungeon level the character is on. I also added hit point regeneration for the player. The only problem is that there is nothing that takes away the player's hitpoints. So the hit points stay constant at the maximum amount. All that is going to change shorty. I am slowly coding up the monster portion of the game.

The monsters are really not all that fun. The implementation seems mechanic, like I have done this before many times. I should just come up with a generic library to handle this. Then I can use that library in the future. For now I have monsters being created. The further you are in the dungeon, the more monsters you will see on a level. The monster now blindly follow the player around the room.

There are some limitations I need to overcome. Right now monsters cannot cross over top of items in the way. They also do not attack the player yet. Likewise the player cannot hit any monsters yet. All this will change soon, maybe even tonight if I get the time and energy. I just want a minimal set of monster logic to provide some obstacle from making the game too easy. The real emphasis of the game is the shape of each dungeon room.

Intoducing the Ellipse

Today I banged out the rest of the screens for my 7DRL entry. The major new geometry that I added was the ellipse. This is an elongated circle. Since the shape is drawn in character blocks, the sides are not smooth. But it is good enough for a roguelike. Having gained the power to draw an ellipse, I drew two ellipses on one screen and called it my Mobius strip.

This kind of looks like a figure eight turned on its side. Or it looks like the infinity sign. I actually read up on some newsgroup posts to see how people draw a circle. Turns out you use the x squared plus y squared is less than the radius squared equation. And here I thought I was going to have to dig into the sin() and cos() functions. That would have worked to. But why add trignometric complexity when a simpler technique exists?

7DRL Day 2 Progress

In the afternoon I completed the second room shape for my seven day roguelike entry. This was a diamond, which was easy because I already figured out how to draw a triangle. A diamond is just two triangles joined at a side. Then I went to the next screen which wsa a cross. And when I write cross, I mean the vertical/horizontal cross like the universal symbol of medic.

Finally I came back this evening and implemented what I think will be the final screen for the day - a criss cross. This is just a big letter X. It was tough to line it up to fit proportionally in the maze boundaries. But I think I got it right. Tomorrow I venture into the shapes that involve the circular geometry.

7DRL Day 1 Progress

I have spent an hour or two starting the coding for my Seven Day Rouguelike entry. Before writing the first line of code, I sketched out what each level of the dungeon would look like on a pad of paper. Some ideas are still under consideration. The first room was initially going to just be a normal rectangular room. But where is the fun in that?

So I instead started out with a triangular room. At first it was not that hard. However the screen is wider than it is tall. So the triangle did not take up the entire width of the screen. I tried making the triangle grow in width at twice the original width. However that causes it to botom out too soon. I am satisfied with having some crooked edges, but making the triangle fit the screen better.

I also added display of the player symbol. The user can move around the screen using some keyboard controls. I am also making sure the player cannot walk through walls. I am going to call it a day. Got a lot of other tasks to work on tomorrow. However I want to get at least two more screens put in there. And maybe start adding some stats to the top of the screen. By Monday I hope to spend a lot of time on the game, and maybe even complete all the room shapes.

2013 Seven Day Rogue Begins

I have just declared my intention to participate in the 7DRL for 2013. My info has been entered over on the Rogue Temple site, when entries are submitted. This year my game will be called Room Rogue. I plan to focus on drawing dungeon rooms that are something other than plain rectangles. I have sketched out a dozen interesting shapes. Some will be familiar from other roguelikes. Others might be unique.

Since I have been looking for an excuse to use some programming skills I have studied over the past year, I will be writing the game in JavaScript. That means it should run in a browser. Yes. No install program required. I did a 7DRL in JavaScript once before. However I really did not know much about the language back then. So I struggled. Now I hope I can learn a thing or two. And produce a roguelike.

I am a litle behind in school right now. That means I canot spend the whole week coding this game. Got to ensure studies do not suffer. However I do not plan to go into work this week. That would leave no time for the game. As long as I don't spend too much time hanging out with the friends and playing games this week, I should be able to throw down a playable game. Good luck to all entrants. I saw well over 200 entrants already over on Rogue Temple.

Legend of the Green Dragon

A friend of mine alerted me to the Legend of the Green Dragon (LoGD) web site. This is an online type of adventure game. It is turn based. However you must click through menus to figure out where to go. At first I was taken a little aback. The initial screen told me I coud not use chatspeak (you knowm using abbreviations). You also have a limited number of turns per day. Finally you need to log in frequently. Otherwise they will delete your account.

There were some other disappoints when I started playing the game. I started out with 50 gold pieces. That only allowed me to buy a rake to use as a weapon. The lowest weapon I wanted cost 2000 gold pieces. Luckily I was able to gather a bunch of gold in battle. I also fought many more battles than my original 10 limit. You get to earn extra battles if you do well in fights.

I did find it weird that I gained a lot of experience, but my character did not level up. Then when all my turns were over, I got the chance to challenge my "master". Not sure who my master was. Not sure if I still have the same master. All I do know is that I proved myself worthy, and beat my master. That is when I advanced in character level.

There were some gems during the heat of battle. I got in a few power moves. I even got a double power move, doing a lot of damage against one opponent. Many of the monsters were named humorously. I got this message when I took out one opponent: "You have sent this student to permanent detention."

I will see how this game progresses as I return day after day to continue LoGD.

Gearing up for a 7DRL

Plans are under way to choose a day for this year's 7DRL competition. Since I have been trying to get deeper into the JavaScript programming language recently, I figured I would be coding my game in JavaScript. The only problem is that it might be a fresh start. I only made one game in JavaScript a long time ago. And that game was weak. Thus I am on a trek to improve my JS skills. What is a developer to do?

I had a library of Java code that was minimal, but helpful to do roguelikes. I think I might just have to port that code over to JavaScript. Today I took a look at that library. It consisted of about 12 Java classes. They do some minimal work. At least the code was clean. Now the work is to figure out how to make that code work in JavaScript.

Item and monster data is hard coded. But that is okay. Lots of other features are controlled by constants in the ode. Time to get to work porting this code over to JS. I got a good month or two before the 7DRL contest begins.