It’s been a week or so since I posted any of my level design articles but I just found this paper on level design that is absolutely amazing. It’s written by the lead level designer on the game Splinter Cell: Choas Theory and he gives a great overview of the theory behind developing single player levels to tell a story. He doesn’t give a high level overview but a mid level overview of level design as he calls it.
The difference is… level design today is no longer simply a technical process of implementing game design patterns. Level design today has become a narrative art, and we at least need to look at level design as narrative in order to improve our level design. In other words… it’s all about the story.
Of course, I’m not going to leave you hanging with a mindless platitude. Anybody can say ‘It’s all about the story’ and increasingly, just about anybody will. It’s one thing to say it, it’s another thing to tell you why level design is all about the story, and how to make your level designs stronger by using narrative tools.
I’m not here to say at all that story is the most important thing. In a game, interactivity is the most important thing. Anyone who says different is wrong. I’m kind of being a smart-ass when I say it’s all about the story. What I’m trying to suggest, in fact, is that if we accept that level design is a narrative art – maybe not about telling better stories, but more about facilitating the player’s ability to tell himself better stories, then we need to look at the tools and structure of narrative and ways that we can learn from them and bring applications from narrative into level design.
The latest Internet Explorer 7 beta 3 was released today with some new features and some minor changes to the UI and overall it’s still a pretty good browser. Actually, it’s way better than IE6 and I still can’t decide whether I like it more than Firefox. Being able to drag the tabs around inside of IE7 is an nice addition to this version of the beta that I really like.
Now, the problem I’m having is with RSS feeds. What I want is for my browser to have a built in RSS reader much like what the Google Reader does. So I want to dedicate a tab in my browser to the Google Reader like application that should be inside of IE7. When I want to add a feed, instead of it going into that tiny favorites bar on the left that makes checking feeds a pain, I want to be able to see that latest posts on the left and see previews on the right all quickly. Right now you can collect a bunch of feeds but it’s not a very well organized feature at this point. It’s not good enough to get me to stop using the Google Feed reader which isn’t the most impressive reader out there but it currently has all my feeds in it and I don’t feel like moving them all over to another reader.
If anyone knows of a good IE7 plugin that is good for reading RSS feeds, let me know because I’ve been looking for that for a while. It would be great if I could import the feeds into it from Google Reader. If you know of one for Firefox, that would be awesome as well.
I’d be curious to know what RSS feeds most of you are reading my site through and if it’s the RSS reader you like or it’s the one you now are pretty much stuck with using because it’s got all your feeds stuck in it and you haven’t bothered to export them all to another reader? Maybe it’s not that hard to move them out but I’ve never seemed to have much luck getting feeds out of Google Reader.
That’s a good question. I’m not really sure what’s been up lately. I’ve been so busy during the last couple weeks that I just haven’t had a chance to really get the stuff done that I’ve been hoping to accomplish level wise. Here is what’s been happening. I started creating the level pictured here and I think I made it too large and it just doesn’t seem to work. I have this huge middle section to the map that I’m having a lot of trouble figuring out what to do with it so I’m just about ready to scrap the whole map and start a new one and maybe salvage some pieces of the current map into the next one.
These are really just early screenshots. At this point I’m really trying to just find the direction gameplay wise for where these maps are going to go. Let me try and explain what happened.
First I started creating the map with the idea that it would be a bank and one of the teams would start outside the bank in a loading dock which I’ve built and that the teams would run into the bank. I then decided that maybe it would look better as a shopping mall but after starting to build that, I quickly realized that Valve doesn’t include very many thinks that would work well as a shopping mall. I wanted to add some glass to the level that would break because I thought that would look cool.
Then I ended up creating a really large room that I was going to fill with an escalator, a glass ceiling in part and lots of racks of clothing and other merchandise. The problem I ran into was a gameplay issue. It’s not fun to play. Running through a detail store is kind of cool but there are too many places to be killed from and it becomes less skill and more about getting lucky by finding someone among all the racks of clothing.
I cleared out the room then of everything and then added massive amounts of boxes as fillers. After testing some different positions for the boxes, I still wasn’t able to really make a gameplay that seemed to fit. The space just seemed too large. It took about 14 seconds for each team to reach the center of the map. Again, this goes back to my 10 second rule I talked about before. It shouldn’t take a team more than 10 seconds to reach the center point.
So at this point, I’m thinking that I need to get rid of the middle room which then changes the map quite a bit in terms of what I’d need to rebuild and rework. I’m thinking I’ll build a bomb map which is quite a bit different from the death match style maps I’ve been building. Bomb maps tend to need to be more of a circular map with death match often being somewhat longer.
Here are some screenshots of the maps. Let me know if you have any ideas.




I’ve been blogging about Word 2007 a lot. Yeah, I know but came across another error. Apparently a blog post that I wrote last night that didn’t ever seem to post was just posted tonight to my blog when I posted my blog entry tonight so either it somehow was queued up in Word 2007 until tonight or it somehow was waiting on the Blogger server. Not sure about either really since both really don’t make much sense.
Last night I was using Word 2007 and I realized that it doesn’t support tagging. It’s still in beta so I’m pretty sure that when Word 2007 finally releases that it will support tagging but for now, I’m going to just create a macro to do it.
An hour later…
After looking online for some help on getting started with building Word additions for 2007, apparently I can’t really build them with my express edition of C# and my copy of Visual Studio 2003 isn’t compatible with their new dev tools for Office 2007 development. That’s really frustrating but not all too surprising. I’m sure if I really spent a few hours more looking at it, I could come up with a way to use the express editions but I’d rather not use that much time.
Also, were you aware that the Developer toolbar in Word only is displayed on a standard document but it doesn’t show up on a blog type post which is frustrating? Yeah, I thought that was kind of lame as well.
Anyone notice yet that Word 2007 lacks a tagging feature. I would think there would be an easy button to add a tag to your page in Word 2007 but there doesn’t seem to be one. There is a button for hyperlink but I don’t see one for adding a tag which would be another nice feature in the Insert bar. I really think I’m going to start looking more at Office development to see what features I can add for blogging.
Tagging and the photo addition are my first two priorities for things to start working on for this.
Recently Riya, the photo storage and search site, launched their Riya API for people to use. Now, at first I was really excited about using it and I had some ideas of what I’d like to do with it. Something that I’ve thought the site has needed for a while was an easy way to blog the photos.
The easiest way was if the “Blog Photo” button that they have on their site actually worked instead of saying “Coming Soon” all the time on it. The next best way would be to have an application on the desktop that would display the photos in a user’s account and the user could just click a photo and select a “blog this” button that would post the photo to their blog. Now, my final idea came tonight. If you haven’t downloaded Word 2007 already, it’s awesome and it has a blogging feature inside of it. Actually, I’m writing this post right now inside of Word 2007. But what I was thinking was that wouldn’t it be cool if there was a button in Word that you could click and all your Riya photos would come up and you would just click the photo you liked and it would be added to the blog post you were creating? I think that would be pretty neat to have since I hate having to upload a photo and then select and image upload location and go into the document and write out the html for the image tag.
If this were a feature that I built, would you use it? Is this something that other people would like to see as well? I was thinking I’d probably start off with the Riya API and then expand to the Flickr API if on exists. Maybe something for Flickr already exists which would be very cool. If one does, let me know.
I’m also thinking maybe it might be interesting to create a Riya Widget for blog pages. So the idea is that someone goes to your page, see’s a photo on your profile they like and there is a little icon on or next to the photo that says blog or indicates blog. Click the icon and it’ll send it to your blog or wherever.
I’d be interested to hear what you think about this.
Recently I’ve been playing with three API sets for the mapping solutions that Google, Yahoo and Microsoft and while the three all have pretty easy to use API’s, they all have some fairly large problems. Here are my personal thoughts on them.
Google Maps
Pros - What an amazing looking API. Probably took about 5 minutes to get a map on a screen. Another 10 minutes to add a couple of navigation features and tweak them around. It doesn’t require any difficult scripting and their examples gave me pretty much everything I needed to know how to do. There is also a lot of support since it’s a pretty popular and people just seem to love stuff Google does although I think the company of Google is losing it’s moto of “do no evil.” That’s a subject for a whole other post though.
Cons –There is a rate limit on the number of geocoding that each user key can do. The geocoding rate limit is 50,000 per day which is a lot so probably isn’t a big deal for 99% of people. If you’re not familiar with the term geocoding, it’s taking a text address and converting it into a latitude and longitude that’s quick to find on a map when loading the map at a later time. The next biggest problem is that in order to register and use the API, the site has to be posted on an open page on the internet. What if you’re doing test development on a local server using localhost as the address? Then you’ve got problems and Google just isn’t going to work for you. This means that Google maps was basically a non-starter since I don’t develop on the public internet and I can’t imagine many other developers building their applications on actual domains like Google is requiring. This seemed pretty absurd to limit developers like this. Anyone know of a way to get around this? I’d appreciate the help.
Microsoft Virtual Earth v3
Pros – Again, their API is fairly easy to use like Google’s and Yahoo! Much of their API is exactly the same as Google’s except for a few small things and the names of their functions. But my favorite part of it was that there aren’t any limits like on the Google API. I couldn’t find anywhere on the site that they mention any geocoding limits or limits on the number of visitors that can look at the maps. The API also doesn’t require a key.
Cons – Geocoding is broken. Well, you can give the map API a street address and it’ll find it but trying to find the LatLong is pretty much broken. How can this be broken? I mean, it’s such a basic feature that you almost have to have. It’s obviously a bug and not something that they intended since their own documentation even states that it should work and how but obviously it doesn’t. The part that’s broken is the Find function. Here is an example.
Lets say you’re looking up the street address of a location and you need to get the latitude and longitude so that you can store it in your database and quickly look it up later. So you’d use something like what they have on in their documentation which is pretty much the javascript I’ve copied and pasted here and made a couple changes to.
function Find()
{
map.Find(null,'Las Vegas, NV','1',onFindResults);
}
function onFindResults(findResults)
{
Var lat = findResults[i].LatLong.Latitude;
Var long = findResults[i].LatLong.Longitude;
}
Obviously this example code does nothing useful but what should happen is that you would call the Find() function, it would initiate an asynchronous call to the server and the callback is set to the onFindResults() function which then executes and performs whatever operations it needs on the findResults function which contains the LatLong object. Based on their documentation, using a null value in the map.Find() function as the first parameter should still do a search on the second parameter, the street address, and return a LatLong object inside of the findResults object. It doesn’t happen though.
If you have a map on the screen, when the callback happens, the map will reposition to the correct place but the actual function it’s supposed to point to callback to never gets executed which means that doing a search on just an address in order to get the Latitude and Longitude coordinates is very difficult. One solution might be to add an event listener for the change of the map coordinates when the value is returned. It’s not an optimal solution though.
The nice thing is that you can register an event handler so you can register an onmapchange event and when the map relocates, the event will fire and then you can grab the map object’s LatLong object.
Does anyone know when Microsoft is planning to fix this bug so that we don’t have to use the hack for their geocoding?
Yahoo! Maps
Pros – Yahoo! Maps is just as easy to setup as the last two. It probably ranks between Google and Microsoft. It required that I setup a key with them but this key is just a word instead of the massive string that Google required. Adding markers and content was very simple and I can really see this tool being nice to use. The Flash version I think is better looking than the Microsoft and Google versions actually. Some people disagree with me but I think the Flash looks better. I played with their AJAX version which had about the same functionality as the Google version.
Cons – There is a 50,000 usage limit for the map per day and a 5,000 geocode limit per day. That’s really low. It would be pretty easy for me to geocode far more than 5000 things a day if I’ve got 100 things on a map. That’s only 50 page views for the map and I’ve run out for the day. But they also make it easier to geocode than Google and Microsoft do. The problem is that their really easy method also doesn’t seem to have an easy way to get at the Lat and Long coordinates. They make it really easy to pass in an address and the map will center on that point. Maybe I just haven’t looked into this enough but I thought that was a major issue.
Another problem that I’ve been noticing is that their maps seem to load slower than Google and Microsft’s do. I’m not sure why this is but it’s quite noticeable at times although Microsoft’s at times is a bit sluggish, it’s nothing like how bad Yahoo! is at other times. Does anyone know of a way to optimize this?
Overall thoughts
Overall I’ve been pretty impressed with how easy the three solutions are to use for the basics tasks that would be required from the API maps. The best one I think is probably Yahoo! for it’s general features and usability. Then the Virtual Earth API and last would be the Google Maps just because of the horrible limitation of requiring a public dev environment. I’m even thinking of adding a map to this page. Maybe I’ll do that tonight but I’m not sure what it would point to. I’m not sure I really want everyone to be viewing aerial photos of my house as their first introduction to me.
I was just reading about this awesome piece of software called Torque Game Builder. From what I read on the GameDevSchool blog, it’s a 2D game creation tool. I’m going to get it and play with it this weekend. It looks so easy to use. I keep thinking I need a scanner so I can draw stuff and throw it into Illustrator. I really only build 3D levels but I think a 2D game might be a fun distraction for a bit. I’m still no where close to finishing my latest level either. I actually think I might just scrap my latest. It’s far too large and the gameplay just isn’t there I don’t think. I’ve got this one large room that I just can’t figure out what to do with.
I really think that I just don’t get World of Warcraft at times. I’ve tried playing it and found it to be a fun game until I reached about level 15 or so at which point used a bot hired a small child to play the game for me, used that for about a week, leveled my character about 3 levels and lost interest in the game. Not to mention that kid was eating all my food and was complaining that his eyes were sore after 38 hours. Kids these days. Can't even play for more than a couple days without complaining... I think the game is probably more enjoyable without the bot child but a total waste of time since grinding is really only fun during the first MMO I played and then I figured out that the other MMO games really did grinding for levels the same say.
Needless to say, there are those that are addicted to the game and I’ve once been addicted to other MMOs. ChrisM writes a very interesting post about the connections between the worlds of reality and that of the virtual and something that was done in the virtual world for a real life event and actions that happened in the virtual world and caused the real players to be hated.
In the situation, a woman died and the WOW players held a memorial service for her in the game in a PvP area. During the memorial service a clan attacked the group and killed all the attending players which disrupted the virtual memorial. Probably a juvenile and rude thing to do but the leaders of the memorial service were idiots for holding the event in a PvP area. They had to figure someone was going to kill someone else in the area. I’d actually be more surprised if the service was held and no one was attacked.
I think the reason why these events in games don’t work is because people play games a lot of times for escape and enjoyment. MMOs cross the line because some people play because they are addicted to them. Their lives are the games and an in game memorial service really means something to them. To someone that just plays after work a couple days a week, they’ll never understand the game the way a hard core player does or feel as invested in the world events.

Just got the latest issue of PC Gamer and Crysis sounds really good and what makes it even better is that is says in the magazine that the game is due out in the winter of 2006. I thought for sure it would be sometime in the middle of 07 but this is a nice treat. By then the next set of graphics cards will be out from ATI and NVidia I’m sure since the current series of graphics cards are getting stale.
I’m really loving my Nvidia Geforce 7900 GT though.
I just found this out about MS Word 2007. You can adjust the contrast and brightness of the pictures in the documents or posts without using a separate editor. I’m really having issues with the typing being slow though when a picture is on screen.
I just downloaded the MS Office 2007 and I am so amazed at how good it is. How do I express how good it is? Well, I just made this blog post in MS Word 2007 and then after a few clicks inside of the program, it now will posts the document and it’s included pictures straight to my blog. It was so easy to setup that I’m amazed. It even posts pictures to my blog which I couldn’t get Blogger to even do correctly so my posts are going to contain many more pictures.
Right now I’m waiting for some friends to come over and we’re going to watch a TV show but the below picture is a drawing that Carolann made of me, her and Chris from left to right. She’s an amazing artist and totally kicks ass.
I’ve been lacking on posts over the last few days. I’m trying to determine which direction this blog should go. I probably could write more on my programming and I have a lot of ideas for things to build for web applications but I’m not sure that I really want to write on the topic of programming as well. I can only take so much of one thing before I get burnt out on it and then I really won’t want to write about programming after working all day on programming which is why I write about game level design. I actually don’t intend on going into the game development industry but I just enjoy creating the levels and having people play them. 





Subscribe to
Posts [Atom]