Roguelike Progress

Now that I had a player moving around my maze, I figured it was time to add some monsters. Well I decided to start with just one monster. If I could get that to work, I could then expand to an array of monsters processed with a loop.

I got down to business with general Roguelike mechanics. The monster cannot walk through walls. The monster tries to move towards the player. If there is a wall in the optimal direction, the monster will try another move in the general direction of the player.

After that, I thought it was a good time to start the battle mechanics. I got the player to start hitting the monster. With enough hits the monster dies and respawns somewhere else in the maze. Now I just need the monster to hit back. Oh yeah. I also need to add some messaging to alert the player what is going on.

7DRL Progress Day 1

All right. This afternoon I got down to business. I studied up my notes from my Visual Basic college class. Then I reviewed about ten small programs I wrote. I thought I was ready to go. Then I tried to display my maze and found that I did not know how to display ASCII graphics on the screen. Doh!

Well Google is my friend. I found the bare bones idea on how to manually paint the screen of a Visual Basic form. So I was off to the races. Got some text to show up. Then I created an array to hold the contents of my dungeon. Success.

Next I draw the character player. Finally I tried to implement moving the player. The screen was flickering bad when I refreshed the screen to show the new position of the player. Oh no. Luckily a Google search helped me figure out that I needed to turn on double buffering.

Good start for day one. The only trouble I see is that I got to go to work every day this week. So I had better make a lot more progress tomorrow. Maybe I will get up early? And do a little each day after work. One last day to clean up, and I should have a basic roguelike going on.

7DRL Begins

All right. It is time once again to write a roguelike game in seven days. This year I plan to have a Pacman based theme. I will call my game RoguePac. Initially I thought I might be able to write my game in the Python programming language. However I am still learning it. And I don't think I can pump out something that draws a dungeon within a week.

I do like to use the 7DRL challenge to push myself to learn something new. Therefore I think I shall write the game in Visual Basic. I took a community college class in VB around a year ago. Did a lot of small programs to learn during the class. Never did create that big project outside of the class. Now is the time.

Good luck to all in the 7DRL challenge. Today is the first day. But I already say around 120 project registered on Rogue Temple. Impressive. Let's hope we see some good stuff this year.

Unity

I am following this magazine article on starting out in Unity Development. Current installment starts out describing the parts of a 3D scene:
  1. Lights
  2. Meshes
  3. Shaders
There are four types of lighting in Unity. One example is a directional light.

To understand meshes, we should start at the bottom. Vertexes define a polygon. The polygons make up your object. A mesh is a collection of the vertexes. Another name for mesh is model. You create your model outside of Unity with a product like Blender.

Shaders are code that describe how light interacts with your object. For example, your shader might project an image onto your object and show how shadows are formed.

Unity handles some of the movement details that I recall implementing in my last game by hand. Objects just don't jump around from one position to the next. The move slowly through each frame. This move is called tweening.

There are four coodinate systems to describe an object or point posisition in Unity:
  1. Screen space
  2. Viewport space
  3. World space
  4. Local space
Finally I will mention in passing that there are two particle systems available in Unity. There is an old one. But a new one called Shuriken is also available. The name sounds cool at least.

Yoda Stories LOL

Yoda Stories is some game from the 1990s. Just read an article on how Zack Barth reversed engineered the game's file format. The techniques used were very informative. He had played the game into oblivion. He uses deduction to figure out what is in the files, and how to read the data from them.

One real treat is how he finds the uncompressed image data. The he goes on to compare images that he extracts to what he sees in the game. The breakthrough is when he stumbles upon a color palette that makes all the extracted images looking good.

I will give one spoiler. Zack talks about, having full knowledge of the data files, being able to rewrite the game with some changes. Sounds like a nice project.