Archive for January, 2008

Diablo clones, Ahoy!

January 31, 2008

If you were keeping up with my GameDev.net Journal, you may recall that I was interested in playing as many “Diablo clones” as I could. I’m going to be very loose in my classification of what makes a game a Diablo clone, suffice it to say that if there’s some amount of Action and a peppering of RPG, then I’m there. I’m going to consider Fallout a turn-based Diablo1 clone, until such time as I deem myself horribly wrong.

I decided it was time to see if I could pick up some of the games from my Diablo clone list at E. B. Games. I found only three:

Dungeon Siege II Deluxe Edition ($19.99cdn)
Fate ($19.99cdn)
Restricted Area ($39.99cdn)

I’d say that of the three, you would be most familiar with Dungeon Seige. I’ve installed that first, and it will be the first of the three I will try out. I’ve never played any of these games, and I have no idea what I’m getting into.

Some of you may recognize Fate, and if you’re not familiar I recommend giving the demo a shot. I was addicted but the time ran out and I didn’t get around to picking it up until now. I’ll probably be trying this one last, since I’ve already been here.

I’ve never heard of Restricted Area, and I’m sure you probably haven’t either. It’s set in a futuristic sorta Shadowrun-looking world. I have no idea what to expect from this, but I’m excited to play it. I expect cool things from it. I’ll certainly be posting about it no matter how I feel about it, so be sure to check in once in a while if you’re curious.

If you know of any Diablo clones that aren’t in my list, please drop me a comment and let me know? I’d really appreciate it.

Sampling of new ActionRPG Items

January 30, 2008

I took a quick run through just to make sure the new Magical Items were working out right. The following is a couple of my interesting finds.

actionrpg-200801300043.png

Wow. That’ll be selling for 1 gold when I get the shops in. I’d even say you should have to pay just to be allowed to show Griswold this peice of trash. Yay for cursed items!

On the flip side..

actionrpg-200801300049.png

The most damage the monsters can do to me is 80, by the Darknuts. With the simple calculation I use, the poor Darknuts don’t even have a chance to hurt me. All those extra HP are only going to make them cry more.

actionrpg-200801300055.png

The Darknuts weigh in with a MaxHP of 99. You would kill them three times over with one hit. Look out, Darknuts. Your day is nigh.

So yeah, that’s a sample of the better magical items you can find right now. You can do better than even these if you keep your eyes peeled 😀

ActionRPG update

January 30, 2008

I’d like to have something interesting to post every day, but that I don’t think that’s possible. Still, I try.

I’ve made a few minor additions to ActionRPG, and I’m richer for the experience. Such additions include:
– Allowing magical items the possibility for both a prefix AND suffix.
– Adding all of the property ranges for those I’ve already defined, as per the tables found on Planet Diablo.
– Refactoring related to the above.
– Constant Random Seed, for reliable replication of environment (for testing purposes).

I haven’t yet taken a look at Quality Level, which determines what magical properties can be used on an item. Also, item “quality” is still completely random – so it’s possible to wind up with The Best Item In The Game on the very first drop.

I really want to get some magic into the game. Really Badly. Perhaps I need to be poked with a stick to get it underway.

CryptFloors: random generation, go!

January 28, 2008

I decided to see how hard it would be to hook my Random Level Generator to ActionRPG. I had it going in under an hour. I’m shocked at my own efficiency:

 actionrpg-200801282053.png

So yeah, there you have it. For the first four levels under the church, I’m randomly generating rooms and filling them with a crapload of entities. I found the levels to be too small at 32×32 so I jacked them up to 64×64. I’m not sure if thats too big or what, I’ll have to playtest a bit more before I can really tell. I’ll probably drop back to 48×48 if I find it’s too big the way it is now.

A few additional changes that may not be readily apparent:
– The stats panel in the upper left is now shortened until you open the inventory.
– The player can now move on diagonals. You couldn’t get him through doors unless you had a wall to line him up, before.
– Doors are available as a tile used in the random generation, though they act as floor tiles right now.
– Randomizer uses constant seed system now. Great for saving games with.

There’s still a ton to do, I’d really like to try out the Cellular Automata Method for the Caves. I think it will yield very good results. I’ll be doing it in the Level Generator project before I move it in here. That testbed was a super-great idea. I’m so smart.

Cocoron

January 28, 2008

Once again, Viridian came through with another great clicky for me yesterday. There’s this guy over on youtube that goes by the handle DeceasedCrab who makes these “Let’s Play _____” movies. Basically he just plays the game and entertains us with his commentary as he goes along.

Yesterday I spent what seems to have been a good 3 hours watching “Let’s Play Cocoron“. Don’t worry, it’s safe for the whole family. (Uhfgood, I’m looking in your direction 😉 ) I had a bit of difficulty finding any decent information on the game.

Cocoron is a side-scrolling platformer that was only released for the Famicom (the japanese equivalent of our NES system). With the magic of emulation, you can download an english-patched version and enjoy this game yourself. The game feels very much like the Megaman series, and I’m positive some of the sounds were taken right out of Capcom’s hit game.

You will create a series of heroes from lists of heads, bodies, and weapons; each of these differing by weight (which determines how high you can jump), HP (how much health you can get), power (damage done), as well as effects such as increased speed, the ability to stick to slopes, and even hovering capability. As you work through the game, monsters drop hearts to replenish health, or powerups to increase the level of your weapon to its maximum. Each weapon acts differently, and as you power it through its levels it will get bigger or multiply.

There are five levels you can move between, and each of the three stage sections are chosen randomly from a set of premade sections. There is a transition section where the two unique level types meet. Some of the sections are short, which gets you to your destination fairly quickly; some of the sections are long, and seem to take forever to complete. Enemy placement seems just as random as the selection of sections: You can wind up with very easy enemies littering the level, or very hard enemies. It seems as if everything in this whole game is subject to the roll of a die.

If you were a fan of the old-skool Megaman platformers, I recommend that you at least watch some of DeceasedCrab’s videos. When I downloaded and played it, I honestly felt like I was still watching him play all over again – it’s hard to play any differently than what you see him do. I’m of the opinion that everyone should be exposed to different kinds of games – especially ones we probably haven’t ever heard of – to experience what could have been. On top of that, I think a person might afterwards have a few more things in their idea trunk when they need to rummage for some.

Still working on Blogging Ultima III NES

January 28, 2008

The thought of mapping out 6 or 7 more dungeons on paper isn’t exactly an exciting deal to me, so I wound up putting a hold on moving forward in the game. I have enough material to write up days 2 and 3, I’ve just been focused on ActionRPG and my random level generator for the last couple of days. I still have to finish up my Mana Sanctuary youtubes in Final Fantasy Adventure, too. I’ll make up a page for those when I get around to it. I like these games, I just don’t like the massively repetitive parts. Not my idea of a smashing time.

Random Level Generator

January 28, 2008

I felt it was time to at least set up a testbed for working on some random level generators. As I was looking around, I realized that emulating the look of a Roguelike would be a quick and dirty way to show off a dungeon map. I got right into it and built a WinForms app and gave it the first two test buttons you will see below:

Level Generator - Random Rectangles

I started taking a look at some Roguelike map-related information at roguebasin, that Viridian was kind enough to pass along to me. There wasn’t a whole lot I could really sink my teeth into, but an article originally written by Mike Anderson really caught my attention. I googled and found a page where he provided an example where he was stepping through and showing the algorithm at work. Once I saw that, I was hooked. I wrote up a rooms-only version and wound up with maps that looked like this:

Level Generator - Rooms-Only Anderson Algo 

As you can see, I’ve got something to work with now. Even if it doesn’t make perfect Diablo 1 maps, who cares! I just want some rooms to move around in for now. And this shows that I can have exactly that without a whole lot of trouble.

Make no mistake, I’m not done with this by a long shot. I’m looking at the walls of interconnected rooms and considering rolling for different types of openings: standard wall-door, completely open, pillars, portcullis-walls with door, and so on. I think that will make it look much more Diablo-esque. On top of that, if you consider that there are required rooms for certain floors (the Butcher’s room, for example), I may have nailed their creation method. Only time and effort can tell for sure!

Blogging Ultima III NES, day 1

January 21, 2008

Shortly after reading Blogging Ultima III, I decided to look it up on wikipedia. I remembered this game by its NES port, and I also remember not beating it. I had tried picking up Ultima IV: Quest of the Avatar NES a couple of months back, to finally beat it, but my fervor didn’t last very long. I decided that it was high time I laid ExodusNES to rest, this evil from my past.

As I read the blogs on U3, some of it sounded familiar while other parts not so much. Was the NES game a port, or a kind of twisted sister of it? I had to find out — and I needed to figure out why this game defeated me. I started up a new file in my favorite NES emulator, FCEU, and a new .txt file in Notepad. It is time.

(Please note! Before I even get started, I’m going to apologize about the flow of thought. I only wrote things down in my .txt file when something interesting happened, so there isn’t alot of coherence there. I’ll do my best to keep it entertaining.)

Day 1

What a great start to a game: there are five name fades before we even hit the title screen. FIVE. Restarting this thing winds up being a miserably long wait. I started up a new game, and was presented with a party/character creation menu. I have to choose four characters’ classes based on little previous knowledge of the Ultima world, that’s fair. There are premade characters, that helps speed the process of getting into the game – but I’m basing my decision on some stats instead of capabilities. I guessed at a balanced group: Fighter/Dwarf/M, Paladin/Bobit/F, Cleric/Dwarf/F, and Wizard/Fuzzy/M. What’s a Bobit and Fuzzy? I have no idea. I would rather have just had all Humes, but wound up with none at all. You can tell that the characters are male and female because the girls are all pink. Good times.

So when you’re all done creating and naming your first four characters, you’re welcomed to the world by Lord British. God it was awful. Look at this:

Exodus - Welcome

 This is probably as good as the graphics are going to get. Look at British, he gets the royal treatment. There’s 25 unique tiles that won’t be used anywhere else. Apparently Exodus is going to wake up and I’ve got to do something about it, like beat him (it?) up. Sounds good, British, where do I start? And what does he do – he just throws you into the world without any warning.

There was a castle and a town nearby, so I headed into the town to assess what I got to start the game with. I started by working my way through the menu – Magic was first. I started with 0MP so when I went through the list, all that was showing was the no-cost Undead and Repel spells. I know better now.

Next was the status screen. They decided to hide the weapon and armor equipping menu in here, I don’t know why. It turned out that everyone started with Cloth for armor and Dagger for their weapon. On top of that, each of my characters was holding 100 gold. That’s an important fact I’ve kept in mind.

Next, if you press the select button at the menu, you get another couple of options. There’s a horse command? What does that mean? The only other thing worth noting right now was the Food command. I HATE games that make you keep track of food. There’s just no reason to make me watch another counter and waste my hard-earned gold just to have the luxury of staying alive. Next they’ll have me seeing the doctor regularly and making sure I get my sleep at night.

For my next trick, I decided to try and save my game. There’s no save option from the menu, so maybe I had to talk to the King, like in Dragon Warrior. No, he told me I need to get more experience, but didn’t mention anything about saving. So maybe I had to find an inn like in Final Fantasy. I headed to town and looked around – food shop, weapon shop, armor shop, pub… No inns here. Maybe it was back in the castle? And there it was, nestled in a corner I never would have noticed in passing – the inn.

Exodus - inn

Great job at making this stuff obvious, game designers! Perhaps they thought that challenging me would make it more rewarding. Well it did, but at what cost? I hate the designers a little more for it.

Just to punish them, and maybe to make the game a little easier, I decided it was time to take advantage of the character creation and party forming. Make four new characters, band them together, have three of them give the leader their 100 gold, save, band that guy with at least one of my main characters, have him/her give a main character that 400 gold, save, delete the four new characters, and repeat for as long as you have the patience for it. I wanted to do the same with food, but you can’t give any one character a certain amount of food like with gold. You just “share” it – add the four food counters together and divide by four to give everyone an equal amount. They didn’t want to make it too easy.

I spent some time in town checking out the wares in the weapon and armor shops. After I built up enough money, I bought one of everything and had everyone try it on to see who could wear what. When you equip something, you get no indication of whether the equipment you just put on is better or worse; I had to base my decision on how expensive it was. More expensive must mean better quality, right? The final decision I had to make was whether the Blowgun would be a better purchase than a Spear for my fighter and paladin. They won’t let you equip a melee and ranged weapon at the same time, so I had to make a decision. I went with the ranged weapon. I even checked to see if you could re-equip mid-battle. You can’t. I should have probably had one of each type of weapon just in case I found the melee doing more damage, just for the sake of diversity.

The dragon armor costs 8250gp. I had to go through the creation/give/reband/give/kill process 21 times before I could afford one peice of this armor. Thankfully only one character could wear it. As I was bilking the game for money, I played a little with different ways to speed up the process. At first I was creating only theives so I could tell what I was doing based on the character sprites. I found that didn’t really matter much since I was concentrating mostly on the menus. I was naming the new characters A, B, C, and D, again so I could tell them apart from the characters I wanted to keep. If you just don’t name them, the game substitutes “- – – – -” for the name, and that’s still easy to pick out – and makes it quicker. All of these things, and playing with the emulator speed rate, helped me get through about two hours of gold farming. I find myself playing the game at 200% speed normally.. and 1600% (max) when I’m slogging through those 5 opening credits.

I saved up a little more and bought a bunch of food – everyone had 1236 food when I got tired of gold farming. After a couple of steps you lose one food, but your HP is restored by one. I don’t mind the tradeoff, but they could have left the HP restore in and taken out the food. I guess it’s just not Ultima without the hassle of food.

One last thing before we actually start the game – line of sight. This is one of the few games (or is it the only one?) that I’ve seen implement a line-of-sight system. You can’t see behind walls, it’s as simple as that. Check it out:

 Exodus - line of sight

The game doesn’t lag at all when they do it, either, which is nice. So why is this the only game that bothered with it? I think it might have to do with the fact that it’s extremely annoying to get lost in a forest. Not being able to see makes it a pain and a half to map the game out, too. One last gripe is that they only do the line-of-sight testing with the leader, so if you have your last guy around a corner, you might not even be able to see him. Pretty dumb there, game designers. You lose another couple of points.

I decided that it was time to start exploring. I started in Lord British’s castle and wandered around, talking to the walking signposts – err, I mean townsfolk. They put in a couple of doors I couldn’t get through, and there was some lightning floor tiles that I stayed away from. Actually, I saved and tried walking on them. As I expected, they killed me. One of the more interesting quotes was “Are you decendants of Link?” You mean the Link from the Legend of Zelda series? I’m not sure if they were advertising or what.

There was a doctor in the castle, he offered a couple of services. Apparently he can cure colds, that would be nice to have in the real world. The last option you can choose is Give Blood. I had to know what that meant, so I gave it a shot. It turns out that you wind up losing 100hp and gaining 30 gold. Not a very good exchange, doc. The only other thing I found interesting in the castle was the ship that was sitting in the castle moat around the left side.

Exodus - ship in moat 

I can’t reach it, but there it is. Thats either one tiny ship, or one huge-ass moat. (I didn’t take pictures for most of the time I played, so you’ll find my captures have nameless characters with the starting equipment. Maybe I’ll work on them a bit as I go along?)

Considering my time in Lord British’s castle done for now, I headed to the town nearby. The people here had alot of information for me. This is the first town, right? I’m getting hints about Exodus, Ambrosia, Dawn, the Mystic Sword, the Mark of Kings, Dungeon Fountains.. Why do the people of this town know about all of this stuff? Are other parties of warriors passing through and leaving townsfolk with interesting bits of information? Well, whatever the case is, I’m writing all of this down!

Once I’d gotten all of the information I could, the only thing left to do was leave and look for other locations. This was a good time to start mapping my surroundings, and thats what I did. The first town I came across was Yew. It’s nestled in the center of a circular range of mountains, filled in with forest – and the forest tiles make their way into the town. It’s almost completely wooded, and there are a few interesting sites hiding away inside the woods. One of these sites is a circular spot with some lava tiles and some priests that say that it’s the Circle of Light. Whatever that’s all about.

Heading out of Yew and in a northeasterly direction, I find my first dungeon. Wow, it’s dark in there. When I used the light and glow spells I found myself suddenly without MP. While I could walk around and get it back, I wasn’t ready for this, so I headed back out. Where was the ladder again? I got lost pretty quick. I found another cave south of Britannia with some lava around it, and I stayed out.

As I explored further south, I came across a mountain barrier.. and a moongate!

 Exodus - moongate

I remembered this thing, it lets you warp to other places in the world! Without further ado, I hopped in. I was sped to the inside of a large ring of mountains, where there was a lake and a town. This town was called Devil Guard.

I learned some things about a snake, found myself a stable (but I couldn’t afford the horses yet), and came across my first Guild Shop. Magic keys were for sale here! Now I could get behind a bunch of doors that stood in my way. But first, I needed to finish the world map off. Back to cartography.

After hopping around in the moongates I saw the backend of a giant snake near what I think is Exodus’ castle. I found a mountain pass inaccessable except for two different moongates, and a cave also in a mountain pass. I headed all the way back up to the north west and discovered that the map wraps near the mountain barrier.

I decided to pack it in for the day, and leave it here until the next time. Until then!

How’d I miss Blogging Ultima?

January 19, 2008

I think I remember Viridian talking about it with someone else, but for some reason I didn’t see any reason to go check it out at the time. Well I googled last night and started reading Blogging Ultima. Cool stuff!

I don’t remember Ultima being like this at all! I’ve got entirely the wrong idea of it – the only Ultima experiences I’ve got are of the NES ports of Exodus (FCI didn’t tell me it was U3) and Avatar (I don’t even know which number this one is). Actually, if you decide to follow that link to gamespot for Avatar check out the name – “ultima seishahenomichi” – what’s that all about? I tried taking different combinations of the syllables and looked them up in my Japanese dictionary, but I didn’t make any sense out of it. Then I looked up its Moby Games entry, and it says that the famicom (japanese) version had the title “Ultima: Kyōfu no Exodus”, so I have no idea what was going on at gamespot. Maybe I’ll stick to Moby Games for links from now on.

Ultima: Exodus 

One year my mom decided to buy me an NES game for my birthday – she never bought me games; only at christmas if I was begging really hard for it (Mario 3 was always too expensive, that woman was a rock about it!) How she arrived at the decision to get me Ultima: Exodus, I’ll never know. I threw it in the NES and played it for 5 minutes and decided it wasn’t worth my time, but I paid her proper lipservice for the attempt. (You never know, she might try again!) Well that summer I decided that I was going to sit down with some pencils and graph paper and beat the crap out of the game. I couldn’t stand that it was the only game I owned that I hadn’t yet beaten – even if it seemed like a crappy game. Well I put in a couple of weeks and finally got to Exodus, and destroyed it. The walls started falling and I was crushed. Every time I killed him, I was crushed by falling walls. I threw my hands in the air and decided it was close enough. Talk about an anti-climax.

Well, now I’m reading Blogging Ultima and it doesn’t seem quite like I remember. Did I play the same game? I can see myself doing a Blogging Ultima Exodus NES sometime – just to answer that very question. We’ll see what the future brings.

Ultima:  Quest of the Avatar

I saw Ultima: Avatar in Nintendo Power and decided that it might be worth a rent sometime. I rented it and played it, but I felt pretty much the same way about it as I had felt about Ultima: Exodus. The goals weren’t defined very clearly and I didn’t understand alot about the game. Who was the Big Badguy this time? And what’s all this about virtue? Am I playing a bible game? Anyways I liked the graphics, and I really enjoyed stealing boats (you can do that in Exodus, I know), but the game just didn’t pan out for me.

I wound up emulating it a couple of months ago, just to see if I could get through the game – without cheating – and I didn’t get through much of it before I put it down. I took some notes and took a screenshot of the map (that’s not cheating!) and printed off an edited version so I could write on it. I think I’ll play through this game as well, if I decide to pick up Exodus.

That’s it for now, I’ve got more Blogging Ultima to read!

[edit]
I completely forgot that there was a third NES port in the Ultima series, Ultima V: Warriors of Destiny. The thing was a 3/4 view game I’ve never had interest in playing. I haven’t touched it to this day. I’ll see what Blogging Ultima says and maybe I’ll consider looking at it.

How does Diablo build its maps?

January 18, 2008

I took a bit of time to try and look up how Diablo 1 loads or creates its maps – and I came up with nothing but tile graphics. I have to assume that when you use a stair to go to a level you haven’t been in yet, the progress bar is indicating that the game is generating the map from scratch. I used several tools to look into the Diablo MPQ datafile to try and find more information out, but I was unsuccessful. Without information or raw data, I had to look to other means of working towards building my own maps.

I have the thought now and again that I should really be trying to create my own content. Right now I can’t really support content I’m not ready to build, so it seems reasonable to borrow other content. That’s why you see me building a Diablo clone – it’s a good stepping stone to start off with. I’ve built mazes before, but never anything more complicated than a 1-tile-wide corridor maze. As I think on things, I could probably look up Rogue‘s level creation method, but since I’ve already done this much I figure I might as well see it through.

Getting back to the problem – I wasn’t able to find any information about how Diablo builds its levels, and there was no indication from the datafile how to go about it either. So I decided to take another approach – take screenshots of the automap and put them together in an image-processing program (I like Paint.NET). I wind up with images that look like:

diablomaplv1-200801180807.png

With enough of these, I can start to guess at the patterns and come up with my own builder. It’s a good idea, but the mashup above is awfully hard on the eyes. I wanted to filter out the non-map information, but I didn’t want to hand-edit the compiled image.. but how would I do that? I know GDI+ a bit, but I just wanted a quick-and-dirty solution that I know only one way of creating: Allegro. So I broke down and downloaded Dev-C++ and grabbed Allegro for it. After a bit of wrangling with C++ and a couple of recompiles, I handed my new tool the image and wound up with:

diablomaplv1-200801180807_filtered.png

Perfect! Now I can really get an idea of what the folks at Blizzard were doing.

It would really have been helpful for the guys at Diablo Evolution to have put something about the map generation somewhere on their site. These guys probably know more than anyone else about Diablo. They mention that some of the screenshots in the early days of pre-final Diablo were “impossible” and they could only know that if they knew how the maps were being built. I still have to dig some more before I decide to give up on that route, but for now I’ve got a good lead.