Featured Posts

<< >>

2003: A Look at the Golden Age of Diversity in MMOs

2003 seemed to be both the apex and the end of diversity in MMOs. It was a year when not only were many titles released but each was significantly and uniquely different from the next in many ways. Here’s a list of notable MMOs released that year:

What if… the idea of paid expansion packs only showed up after 2009?

If paid expansions never existed before and only showed up after 2009, would the NA/EU audience have accepted them or rejected them? The reason I ask is because the main arguments against most RMT are: A player should get all the content for their 15 dollars Existing programmers, artists and other resources are diverted to [...]

Formichetti + Zombie Boy + CCP Games = WIN

A virtual catwalk that has to be seen to be believed. What you are seeing in the video below is done in the same engine used to create EVE Online and World of Darkness. Each time you see a frame and think “That’s live video,” look again… it’s computer generated. Some amazing stuff there in [...]

A collection of RP Stories from our UO days

Found an old 2 Gig hard drive in my parts box with some backups of the guild forums on it. The drives was abound with read errors, so I copied what I could retrieve from the backup of the forum’s story board to a little ‘UO Tales’ mini-site. If you’re interested a handful of completely [...]

Introducing… GHOSTBALL

Time is up, and my entry is about as ready as it ever will be. Introducing… Ghostball!

Ghostball.exe is 8.66 Megs in size and can be downloaded here:

http://TheMess.com/fps/download

No installation is necessary, however some Vista and Windows 7 systems may need older DirectX files (9.0c)  to run it. These files can be downloaded using Microsoft’s DirectX End-User Runtime Web Installer.

Enjoy!

The Toolchest Used to Build this Monster

While the program bounces around a couple of playtesters, I decided to make a post about the programs used in this project. » Read more..

Playtest Week Begins

As far as the contest rules and my own chart are concerned, the goals have been met, but I want to get input on how to improve this above and beyond that. To that end, I’ve recruited a few people to playtest the game and give some feedback on bugs, fixes, etc.

More to come, soon. :)

Game Testing Results: My Cool Map Sucks

Conditions for winning and losing coded.
Map of inside of a computer completed.

With the above done, I went to playtest the game that I had created and found that by removing the walls and replacing them with objects to simulate the inside of a computer, I had effectively changed the game into a set of very large rooms. The player could easily tell they were inside a computer, with readily recognizable CPU, circuit boards and memory cards but the hunt aspect of gameplay was now removed as most of the enemies were now in plain view.

Improving the atmosphere broke gameplay

» Read more..

Collision success! … and an overview

It seems I was simply over-complicating collision detection. Since I am not checking for collision with anything but the object I have locked to the camera, there’s no need for me to create collision boxes for anything but the camera.

The first step was to save the current position of the camera

    OLDX# = CAMERA POSITION X()
    OLDY# = CAMERA POSITION Y()
    OLDZ# = CAMERA POSITION Z()

» Read more..

A-a-a-and I spoke too soon.

It’s been a week of interesting hurdles.

Collision - I’ve been hitting walls left and right on this one, literally and figuratively, so I’m going to take a break from it for a while and then revisit it. I *can* get it working, but frames per second drops to about 10-15. Since it is a very simple game and the shapes aren’t much more than cubes, the most reasonable conclusion is that I’m either trying to check too much or simply doing it wrong. » Read more..

Making Decent Progress

I was going to wait until later in the week to do this, but there’s enough done to make it worth writing now. Below is a breakdown of each item on my Chart o’ Post-Its and the status so far. » Read more..

Note to self: Add Gallery Section

Spent a good 5 or 6 hours together with my Wife, creating artwork for walls and floors. We went from a computer theme to Egyptian to contemporary office and back to the original computer idea. All together we created about 40 or 50 textures, with only about 5 of them actually going into the game… for now. ;)   Later this week, I’ll probably put the art up as free textures for whoever wants them, Until then, here are a few images from the weekend.

This is your enemy! The nefarious Ghostball virus has returned and is eating your files. Blast him before all your data is gone!

» Read more..

Stepping Foot Inside

So, “shortly” turned into “the next day” as I lost track of time with my discovery of DB’s debugger. The time was well spent because it will result in a lot less adding/removing of print statements throughout development just to track values and the state of object.  I’ve accomplished a decent amount the past day or so, programming-wise. Code is in place and working (YAY!) to create the objects and build the game world. Camera/player controls are in to use the arrow keys to move around inside the game world. I’ve started working on the mobs that will be in game. So far I’ve been quiet about the theme/goal of the game and, to be completely honest, it’s because I haven’t even tackled that yet. It’s a Should Do, though. ;) » Read more..

Constructing the Stage

Another Fork in the Road

To build the little world that players will be plinking at things in, my two main choices are either importing a BSP  that I can create with one of the many utilities currently available for existing FPS’s or creating the game world manually. The makers of DarkBASIC also sell a 3D World Studio program that would probably be the best route to go, but that option comes with a price tag of about $50. Using a Quake level builder would probably speed things up, and the 3D World Studio’s price tag isn’t bad at all, however I think I’m going to go with manually building the game world. I’d benefit more from focusing my efforts on learning DarkBASIC rather than spreading the learning love in multiple directions.

The Great Little Tutorial that Kinda Sorta Could

The Huge Dungeons tutorial on the official site gave me all the information I needed to build my game world. It demonstrated how to convert a 2D ASCII map into a 3D world. If I keep the design completely simple, I can avoid needing any third party tools of any kind to create the world environment. I think what helped most about the tutorial code is that it doesn’t work right and only barely does what it’s supposed to. Figuring out where and why it’s broken helped me better understand how it worked.

So now the game within a game begins. I made my notes and shelved the tutorial in order to begin coding. Once the FPS is finished, I plan to go back and compare the tutorial code with how I coded mine to see where the similarities and differences are.

The building blocks of my dungeon…

I’ve decided on a small map, 30×30, in order to both keep resources down and keep the project from getting unwieldy. Creating the map was a fun little exercise in Notepad, and to read it I defined an array to store the type and number for each cell of the map.

THE MAP THE CODE TO READ IT
..................#####.......
..................#   #.......
............########D####.....
....#########           #.....
....# D     #           #.....
....# #     D           #.....
....###     #           ######
......#     #           #    #
......####D##           D    #
........#   #           #    #
........#   #######D##D##    #
........##D##.....# #   ######
.........# #......# #        #
.........# #......# #        #
.........# #.....## ##       #
.#########D#######   #       #
.#  #           ###D######## #
.#  D           #          # #
.#  #           #          #D#
.####           #     #    #  #
....#                 #    D #
....#           #     #    # #
....#           ##### # #### #
....#           #     #    ###
.####           #     #    # #
.#   ############     #    D #
.# S                       # #
.#   ############          ###
.####...........############..
..............................
`Variables and User-Defined Type
`================================

CELLX = 30
CELLZ = 30
STARTMAP$ = "MEDIA/MAP01.TXT"
OBJECTID = 1000

TYPE CELLINFO
   OBJTYPE AS STRING
   OBJNUM AS WORD
ENDTYPE

DIM CELLS(CELLX,CELLZ) as CELLINFO

`Load Map into Array
`================================

OPEN TO READ 1, STARTMAP$
FOR Z = 1 TO CELLZ
    FOR X = 1 TO CELLX
        READ BYTE 1,TMP
        IF TMP > 30
            CELLS(X,Z).OBJTYPE  = CHR$(TMP)
            CELLS(X,Z).OBJNUM = OBJECTID
            OBJECTID = OBJECTID + 1
        ELSE
            X = X - 1
        ENDIF
    NEXT X
NEXT Z
CLOSE FILE 1


The next step is going to be creation of the objects from the data we have. I’ll post an update with that shortly as I am in the process of writing that now. These blogs actually serve as a nice diversion when I want to take a break from the project itself. The other alternative is Civ 5, but I know if I dare fire that up I’ll get nothing done for the rest of the night. :)