Thursday, August 30, 2007

Daily Progress

Lately, I've been so immersed in KevEngine 2 that I forgot to keep this updated with my daily progress!

Anyway, here's what's going on:

- Wrote map loading code. It loads text files into a 2D array which can then be parsed as a tilemap.
- Removed the mouse code.
- Wrote a render_player function that draws the player sprite at a given x and y coordinate.
- Wrote a copyright_info function that writes copyright information in the lower left-hand corner.
- Created a colors.h file that stores information about the engine's different colors. So far, it contains black, white, and gray.

Writing the map code was really tricky, since it's fairly low-level and it must work correctly so that nothing gets messed up. It works fine, but if I would tell the program to load the wrong file, it would crash the entire engine and unpredictable things could happen to the loaded file. That being said, I tend to check my code very carefully before compiling and running.

Tuesday, August 21, 2007

I'm Back... Again!

Not really a whole lot to say.

Well, I went parasailing, so that's really cool, but that's pretty much the only exciting news.

I tried not to think about programming this time, since the waves were pretty good and I wanted to body surf.

Wednesday, August 15, 2007

Quake's Legacy

Earlier, I was looking at the Wikipedia article on the Quake Engine. I took a long, hard look at the "Quake Family Tree". You know what I realized? A huge chunk of 3D games on the market have some of the original Quake's source code in it! That also made me wonder if John Carmack and the id Software team knew that this was going to happen. They were always visionaries, but did they ever predict this? Does Carmack even know that he's still working with code he wrote 11 years ago? Even Doom 3, Quake 4, and their new titles are somewhat powered by Quake code. It's just kind of funny how you can write some code and a decade later, you might still be using the same code. Oh well, some more random thoughts from the mind of a hardcore code junkie!

Daily Progress

Work done on my new engine:

- Wrote a somewhat detailed design document.
- Continued work on some simple bitmap code.
- Created two temporary source files that handle mouse control. I'll be removing these when the engine is finished.

You know, if I want this thing to go anywhere, I really need to deathmatch less often. I guess the first step is to realize that DMA (Deathmatch Addiction) is a problem!

Anyway, here's what I want to get done tomorrow (before I go back to VA Beach!):

- Begin work on scrolling code.
- Begin work on map loading code.
- Create some simple graphics for a tech demo.

Hopefully, I'll have a tech demo ready soon. I feel that if I release some of those, I can get people's feedback. That'll make it easier to create a game that everyone, myself included, is happy with!

Monday, August 13, 2007

Status Report

It's that time again! Time for a Kevlar Games status report! This one won't be as long, since I'm working on my new engine.

Engines:

KevEngine 1 - This is the side-scrolling engine that is powering Project: Undead. After I got frustrated with it, I stopped working on it to make way for my next scrolling engine.

KevEngine 2 - This is the multi-direction-scrolling engine that I plan on switching Project: Undead to. I'm not going to talk about it, since I'll be making frequent updates about it anyway.

KevEngine 3D - This is the 3D engine that is powering Macabre. Things are going good for this engine, since I'm keeping it simple and light.

Games:

Project: Undead - Everything is going pretty good for this game. Again, I'm keeping the gameplay simple so that it's a more fun, action packed, blastfest! My next step on this project is to switch it over to my new scrolling engine. That shouldn't be to hard, since the new engine code is very flexible.

Macabre - Still in the early stages of development. Not a whole lot of work has been done lately, since I'm working on making the engine better.

Other Projects:

Action Cyborg - As you already know, this is John Karlgren's game, so I'm not trying to mess with his great formula, I'm just adding new visual features such as particles, blur effects, etc.

John Carmack = Brilliant

This is John Carmack's QuakeCon'07 Keynote:

http://www.quakeunity.com/file=2513

'Nuff said!

Sunday, August 12, 2007

I'm Back!

Man, the past 10 days were great! They went fast, though. I had a great vacation, but before you get out your tiny violins and play me a sad song, I have awesome news! I'm going back to Virginia Beach on Friday! This time for a long weekend instead of a whole week. Then, the next weekend, I'm going camping. Finally, over Labor Day weekend, I'm going to visit some friends in North Carolina!

Down at the beach, I was inspired to program a water rendering function that using nothing but vector graphics and basic shapes! It seems like it might work out pretty well, actually. If you think about it, it should actually render even better than a bitmap. At the same time, it will save you guys more memory and hard drive space :)

I know, I shouldn't have been thinking about that sort of thing on my vacation, but I'm a techie!

Friday, August 3, 2007

Vacation

Starting tomorrow, I won't be updating the blog for about a week because I'm going to...



Virginia Beach! So, have fun not reading my blog and go get some sun!

Thursday, August 2, 2007

The New Game Engine, Part 2

Until the new engine is done, I'm going to record my daily progress here. This should keep me more productive than before...

Okay, today's work:

-Begin work on new engine
-Announce new engine

Not much has been done today, since I'm still doing a lot of research.

Also, I've casually tossed around a few new game ideas with some people. I'm not announcing anything, but one of them that sounds pretty neat is a top-down deathmatch game. Again, don't take this as an official announcement, just a cool concept.

The New Game Engine

This is going to be a quick but important update. Today marks the beginning of my new game engine. Even though work on Project: Undead and Macabre is going well, I'm getting less productive each day. So rather than scrap those games completely and start something new, I'm going to put those projects on hold and write a new scrolling engine that I hope will support any type of scrolling game. If it turns out to be better than my current engine, I'll most likely switch over to the new engine for Project: Undead. I've never been massively productive on Macabre, simply because writing a 3D renderer is hard work and I'm still learning a lot of things about it. I haven't lost interest in those projects, but I need more of an incentive to work on them. It's a shame, mainly because those are my two most ambitious games, but maybe the new engine will give me more of a reason to work on Project: Undead. Another motivator would be to limit the amount of time I deathmatch in a day!

Wednesday, August 1, 2007

Network Code

Currently, I'm learning how to write networking code. It's an interesting subject, actually. I'm learning a whole lot about how sockets and packets work, which may sound boring, but when you hook two computers up over a serial connection and get a program working that can transfer numbers and letters, similar to a chat program, it's breathtaking! When I saw the two computers transfering information, it blew my mind. On my laptop, I monitored the flow of packets while my other PC sent and received them. Everything is working properly, the right amount of packets are being transfered and none are lost. This must have been what it felt like for the guy who invented the Internet! Or maybe I'm just a technogeek. :P

Deathmatch, Part 3

After trying for months, I finally got my friend, Jake, to download ZDaemon, the multiplayer program for Doom.

It's fun having 1-on-1 deathmatches with him. It reminds me of the old-school days of Doom when you had to dial a friends phone number and wait for a little while before you could deathmatch. Then, DWANGO came in and changed all of that! Even then, I prefered the old method, it was easy and free. DWANGO was a monthly service that you had to pay $10 a month for. They finally shut DWANGO down in 1998 when the Internet came along and people found free ways to deathmatch. Actually, if you look into the source code for any Doom multiplayer program, you'll see that it still works mainly through telephone lines.

Anyway, he downloaded it and got completely destroyed in deathmatch. I showed him the ropes, how to do stuff, certain techniques, etc. He's getting better, but I think he needs more training before playing in the big leagues. When he's good enough, we might even start a Doom clan and play as teammates.

John Karlgren's Video

On this blog, he's someone that shouldn't need an introduction. So let's just get to the good stuff.

As you may know, John has been developing a top-down action/RPG. Okay, he prefers to call it a "graphical MUD", that's a better name for it anyway, in my opinion. Well, a few days ago, he released a video of some gameplay. It's looking pretty cool.

Here's the video: http://www.terrorpunksyndicate.org/cyberpunk-rpg/Cyberpunk_Online_RPG_Project_Demonstration_Video.rar

The only thing I'm not crazy about is the character art. It's too bad he doesn't have the artist that worked on Action Cyborg. The textures he made for the buildings and environment are good, but character art is a whole different ball game.

Because his game is still in the early stages, there's always a chance someone will volunteer to do some character art. Other than that, it looks pretty badass!