September 27, 2006

[XNA] Question Answered...Poorly

I had a concern about the content framework that I posted here on my blog, as well as over at connect.microsoft.com. It was a bit of a multifaceted concern specifically related to the incremental rebuild functionality in XNA Game Studio Express Edition, but more specifically related to XNA Game Studio Professional, which will come out afterwards.

It's always nice when the "answer" is vague enough that it doesn't actually address any of the real concerns.

(Never mind that I'm still a bit sore that the Express Edition SKU's don't support integrated source control...of all the features to cut...)

September 26, 2006

[XNA] XNA and VB

One downside about having a ton of different topics in your blog is that it is very difficult to extract out meaningful data from search queries. For example, none of the queries currently hitting my site account for more than 1.2% of the total queries.

That said, some items are bubbling to the top. People want XNA. XNA-related queries currently account for more than 30% of the search engine queries that hit my site.

The number one XNA-related query is "xna vb." I think that speaks for itself, but I think it's more telling that "xna vb" has four times as many people looking for it than they do for "xna basiceffect" (essentially the fixed-function replacement inside the XNA Framework), has almost as many queries as all of the piracy-related search queries that hit my site (quite a lot, really), and has twice as many queries as people looking for Vista compatibility information.

Something tells me that the XNA team may want to rethink their message. Right now, the message being communicated is "We're aware of the VB problem, and are looking at ways to solve it." The message isn't that there's a VB problem...the true message is that VB is the market.

[GameDev] Region Coding Debate

Well, it's been awhile coming, but here's the article that I promised Ozymandias regarding region coding for console games.

Personally, I'm against region coding. I feel that the benefits to publishers are far outweighed by the negatives for publishers, retailers and customers, but I always try to understand both sides of the debate.

Region coding does have some benefits. First, it helps limit the damage that can be caused by professional pirates. When the French version of "Halo 2" was leaked, it was only playable on modded Xboxes, and if it was pressed to a disc by an unscrupulous distributor, it could only be played in European Xboxes.

Second, it can help you comply with the laws in certain countries. If you want your game stamped as playable in a region, you have to provide a copy of the rating certificates from that region to the console publisher. In some countries, distribution of a title that has not been submitted for certification or rating can be an offense punishable by fines or jail time.

Third, licensing restrictions. There may be times when you just can't get the rights to distribute certain assets outside of your region. A good example would be a licensed song for a soundtrack. U.S.-only licensing of that song may only run $30,000 for the SKU, but worldwide licensing would run over $100,000. The potential extra sales may not offset the extra cost.

Fourth, it allows staggered releases. This is a big thing with movie tie-ins, especially. Since movies are not always released day-and-date worldwide for a variety of reasons (the local markets may be saturated during the U.S. release window, or there may be a more opportune window overseas), being able to lock the title down to a released region often increases sales in a region.

Fifth, it can allow a customized experience for a region. There may be times when a title would sell better in other regions with a few minor changes, like swapping out realistically proportioned faces from the U.S. release to more anime-styled faces for the Japanese release. (This was done for at least one title because focus testing in Japan showed hatred towards the characters because the smaller eyes indicated hostility.)

Finally, it can allow interest in other regions to be properly gauged based on the release in other regions, and allow me to make the proper number of units. More on this in a second, because it leads to my reasons to dislike region coding for console games.

The first thing I have against region coding is the cost for the developer and publisher. Each region-coded SKU is a seperate SKU for a console game, and each console SKU has a minimum disc order. For each disc pressed, some money goes to the console manufacturer as a licensing fee for allowing the game on the console. Let's say that the minimum order per SKU for console X is 100,000 units. The COGS for the manual and disc are about $4 a unit, and the console manufacturer's non-refundable royalty would be about $10 a unit. In other words, that's a $1.4 million outlay before I've made dollar one on the title. If I'm shipping in three regions, that's 100,000 units minimum per region, or $4.2 million minimum outlay. (To be fair, some console manufacturers are allowing discs to be authorized for multiple regions, so you can have a disc that will play in regions 1 and 2 but not 3. For those manufacturers, the minimum order applies to the disc, not the region.)

The second thing I have against region coding is that it short-circuits customer choice. While it may be illegal for us to distribute our titles in certain regions or the licensing costs may be prohibitive towards release in a region, the weird thing is that it usually isn't illegal for people in those regions to import the titles. People in Germany can still buy titles that are denied classification. We may not actively distribute the title there, but they can purchase it themselves. As a gamer, there are tons of quirky Japanese titles I'd love to import, but can't because none of my consoles are modified, and I don't feel right using some of the "hack discs" that are available.

The third thing I have against region coding is the support costs. Each SKU generally gets a seperate media ID from the console manufacturer. These media ID's are used for matchmaking and updating purposes. If I split my SKU's, it becomes harder for me to allow cross-region matchmaking, and the work necessary to master the game and create any updates increases geometrically by the number of regions we are going to release in.

So while I'm personally against region coding in most cases, I can see certain circumstances where region coding your media would increase sales. However, those circumstances are generally so few and far between that I really can't see them outweighing the benefits from a lack of region coding.

[DRM] Straight Outta Lynwood



Good news, the new "Weird Al" Yankovic DualDisc "Straight Outta Lynwood" is completely DRM-free.

Bad news, it is a DualDisc, so the disc won't play in several slotloaders, and even some newer drives...like the Samsung TS-H552B 16x DVD burner I use at work.

September 22, 2006

[Personal] Home Sick

For the first time this year, I left work early because I felt sick.

Hopefully, my stomach calms down...

By the way, asking for laptop video chipset configuration testing is evidently the equivalent of asking for an anal rape sans lube (i.e. ten laptops config tested evidently costs more than forty desktops).

[XNA] Entity-based Engine Design (Part 1)

I've been working on my XNA game off and on now since the XNA Framework beta was released.

One thing I've been really working towards is a clean, entity-based design. Over the last decade, I've found that entity-based systems tend to be easier to develop, and are more likely to exhibit emergent gameplay through the interaction of the individual entities.

Class diagram of my XNA game engine

Just a quick rundown before I head out to lunch.

The EntityFactory class actually creates the entities based on information passed from the level data. Generally, this is a set of key-value pairs. Based on the value of one of the key-value pairs, it creates and returns the appropriate entity.

Each Entity has a reference to its parent, with the exception of the World entity. The reason for this is so we can have related locations and orientations.

The EntityList class acts as an accelerator for the entity system. When an entity is added, it is checked to see if it implements IUpdate or IDraw. If it does, it's added to the appropriate quicklist for the helpers. It also routes messages.

The PriorityMessageQueue acts as the mailbox for the system. Each Message object has a time until it is delivered. Handy for objects sending themselves messages for later, or for staged items. MessagesWaiting only returns true if there are messages whose time has come.

One of the XNA component demonstrations was a Camera object, and I thought it was a really poor choice, because cameras rarely exist on their own. They're always tied to something, either a fixed point in space or a moving entity. The Camera object I'm using is always attached to an entity. When the camera is updated, it updates the view matrix based on the entity that it is tied to. If, for whatever reason, the camera is pointed to a null entity, I return an identity matrix.

Entities do not have to all be drawn. Entities do not have to be updated, either. Some entities could be helpers, like targets or pathnodes. Other entities could be curve markers (using the nice Curve functionality built into the XNA Framework, for example). For a cinematic, you could tie your camera to an object that gets moved along the curve. You could implement a logic system ala "SiN Episodes: Emergence" or "Half-Life 2" using entities as well.

Game engines work best when they stay simple. Let the complexity arise out of your content, not your code.

September 21, 2006

[VB] VB2005 Power Pack Released

Microsoft released the Visual Basic 2005 Power Pack today.

It has two components. One component makes it easier for people who are still using Visual Basic 6.0 to use Windows Forms in their Visual Basic 6.0 applications. I like it...it'll encourage more people who are using VB6 to experiment with VB2005, and experimenters will migrate.

The other component lets you print a form like you could in VB6.

Both are fully supported by Microsoft, and are welcome additions to the VB arsenal. That said, "Power Pack" is a bit strong for two components. Maybe "Power Pair"...nah.

September 20, 2006

[Visual Studio] SP1 MIA?

From the page:
This service pack is currently targeted for final release in Q3 of 2006. A more detailed schedule of external interim milestones (e.g. customer beta period) will be posted when it has been finalized.
Well, there's 11 days left in Q3 2006...where is it?

September 19, 2006

[Personal] Agenda For The (Rest Of The) Week

Tomorrow, I hope to finish my PopcapFont XNA Framework class. (Note: For C++ casual games, I really like Popcap's Game Framework, but did they really have to name their framework the "Sexy Application Framework?" Not exactly PC, guys.) If you haven't looked at Popcap's framework, you should. It's essentially a C++ version of what the XNA guys are trying to do, plus a metric shit-ton of helper functions and support for software rendering. Anyway, the PopcapFont class I've written is 99% there...it's just got a couple of niggling parser bugs for the font definition text file that have to be ironed out before I can feel comfortable releasing the code.

Thursday or Friday, I hope to finally have the depots for the "SiN 1" patch I did the coding for so my guys can test them.

Also this week, I hope to have a config testing bid back from the guys at Lionbridge for ???. (Note: Lionbridge/Veritest is actually a pretty decent place to outsource testing to, as long as you have clearly defined tests and double-check the results you have at the end of the first day. We ran "SiN 1" and "SiN Episodes" through their lab as well as the lab at EA.)

Finally, I hope to finish my casual framework XNA game this weekend. (The game involves Socrates and paint thinner. Care to guess the theme?) The FPS framework is taking significantly longer because I want to do it right the first time.

September 18, 2006

[XNA] One More Content Pipeline Concern

I've got one last concern regarding the XNA Game Studio content pipeline that I forgot to bring up, and it relates to the F5 experience for the team.

The use case, as I understand it, is that a content creator does a get from source control, adds their content to the project solution, selects the correct importer/converter, and hits F5 to cause the content to be imported and converted, and then run the game.

I'm fine with that. My question is this: what happens when the content is checked in? Is only the source file going to be checked in, or will the resulting output be checked in as well? Will the pipeline be smart enough to check-out the converted file on a rebuild all?

I'll explain a bit further. Content pipelines are slow. Extremely slow. While exporting a character for "SiN Episodes: Emergence" may have only taken a minute or two, building levels took between one and three hours each level, and that's with the distributed level building network we have in place. It takes time to generate the BSP file, visibility data, lightmaps, navigation paths, etc.

If I do a "get" and hit F5, will I be able to take advantage of the fact that a lot of this content has already been built at least once by the asset creator?

September 15, 2006

[XNA] My Content Pipeline

Because we still don't have the content pipeline for the XNA Framework, I've been working on creating my own content pipeline to get information into my engine.

Content pipelines are extremely difficult to create because not only do you have to get your content into the game, but you have to make your the content function appropriately once it is in the engine.

There are an infinite number of ways to implement a content pipeline. I'm trying to stick with a traditional world/entity pipeline for my level for simplicity's sake. A world/entity pipeline simply means that if it isn't part of the world, it is an entity that belongs to the world. Let's work on an pseudocode example.

The base type for everything is an entity.
public class Entity // C# pseudo-code for the rest of you
{
Entity Parent;
Vector3 Location;
[Depends on implementation] Orientation;
Mesh Geometry;
List<Entity> Entities;
bool Visible;
}
Entity.Location is just the position of the entity in the world in relation to the parent entity. The root entity will always be located at {0,0,0}.

Entity.Orientation contains the yaw/pitch/roll of the entity, or the rotation, or any number of items necessary to properly position the entity in the world. The root entity will always have null orientation.

Entity.Geometry contains a reference to any geometry (if any) associated with the entity. The root entity contains the geometry for the world, enemy entities contain references to their meshes, etc. If you are using a Quake-style map format, you may have brush geometry attached to items like a "func_mover," so this is where you'd drop that.

Entity.Entities is just a list of references pointing into the entity list, and is used for moving related items (like attached weapons and/or light sources).

Entity.Visible right now is a boolean saying whether or not I should try to render the entity and children, but will eventually be a property so I can include visibility/frustrum checks at the entity level.

It's scaling nicely, allowing me to use raw .MAP files for input, and I'm writing it in VB.NET. Why? Because the world doesn't work on curly braces alone.

September 14, 2006

[XNA] My Beta 1 Feedback

Well, after spending awhile with the XNA Framework, I can sum up my experiences pretty simply. The XNA Framework in its current state is a good start, but only a start. The people behind the XNA Framework made some hard decisions, and have made great strides towards filling in the gaps made by those decisions.

The decision to drop fixed-function support is a hard decision, but the addition of the SpriteBatch functionality for 2D games, and the BasicEffect class are great steps towards encouraging a move to a shader-driven architecture. I really like the BasicEffect class as a great example of how the low-level coders can wrap their shaders in such a way that the other coders don't have to worry about parameter names, etc. It just works.

The decision to drop DirectSound support is a hard decision, but the XACT audio engine and bindings (once the memory leaks are taken care of) are a great step in the right direction as far as making audio easy to use.

The application architecture is nifty as well. Nice, clearly defined "Update" and "Draw" phases, a decent component architecture...what could be wrong?

Well, I hate to nit-pick, because chances are that a lot of these things are going to be addressed before the v1 release, but for a framework that has a stated goal of "bringing game development to the masses," the XNA Framework is awfully hardcore.

How hardcore? No font class, no helper classes for resource management or reacquisition on device reset, no abilities to play loose sound files, no plans on shipping any of the "drag-and-drop" components that have been played up (at least, not according to the GameFest slide decks), a sample that is hacked to death because the content framework wasn't ready yet, no controller disconnection events, being expected to query the Game object's GameServices to get the GraphicsService just to get the GraphicsDevice to actually draw anything...stuff like that.

Of course, even the hardcore are getting screwed a little bit. No access to the headset on the 360 controller, no cache support in the Storage namespace, no support for effect fragments in the effects framework, limited intersection support in the framework primitives, etc. For example, if I have a triangle and I want to see if it intersects with a Plane, well, I'm shit out of luck.

Nowadays, programmers expect frameworks to not only include the basics necessary to actually do the work, but they also expect a framework to include functions to handle common tasks efficiently (like draw text on the screen) and also handle commonly coded tasks that are prone to error (like handling device resets, splitting a polygon using a plane, or checking to see if a ray intersects with a polygon).

Anyway, I look forward to getting my hands on the Content Framework. I just hope that when we get it, it isn't half-there like the current XNA Framework appears to be.

Now, I know that sounds harsh...very harsh. However, I feel I have to be blunt here because I am passionate about managed code. I've experienced the benefits of managed code. I know the strengths of managed code and how they outweigh the weaknesses. I love Managed DirectX. MDX and the .NET Framework go together like Thin Mints and a once-a-year drain on my pocketbook. I WANT XNA TO SUCCEED! And if that means I have to bitch-slap some people in order to ensure that the XNA Framework gets the love and attention that it deserves before they ship v1, so be it.

September 13, 2006

[Vista] RC1 and Ritual Titles

(Update: 9/14, 1pm: Added nVidia test results.)

This is my compatibility report for Ritual Entertainment's released titles on Vista RC1. ATI testing was done an a Pentium 4 2.0Ghz machine with 1Gb of RAM and a Radeon 9800 Pro card. nVidia testing was done on the same machine using an GeForce 6800 Ultra. I will be repeating this test later using an nVidia card and update this report accordingly.

Structure:

Title


Installer:

Did the installer behave correctly on Vista? (Not present for Steam games.)

Game Explorer:

Did the game show up in Vista's Game Explorer? If so, were there any issues?

Default Drivers:

Did the game run using the drivers built into Vista? If so, were there any issues?

Released Drivers:

Did the game run using the beta drivers released for Vista RC1 by the various video card manufacturers? If so, were there any issues?

Run as admin?:

Did the game run okay as a Vista administrator (not Right-click->Run as Administrator)? (Not present for Steam games.)

Run as standard?:

Did the game run okay as a Vista standard user? (Not present for Steam games.)

Run as guest?:

If someone activates the Guest account on Vista, would a user be able to play the game as Guest? (Not present for Steam games.)

Multiple users:

Can multiple users run multiple instances of the game on multiple desktops at the same time? If so, what are the issues? (Not present for Steam games.)


Quake Mission Pack 1: Scourge of Armagon


Installer:

The installer does not Autorun. When run, it warns that Quake does not work under Windows NT and is not supported. It also warns that newer systems do not meet the minimum system requirements. The installer only creates links to the DOS version of the game, which does not work under Vista. If you create your own shortcut to WinQuake.exe, you can add "-game hipnotic" to the shortcut to start "Scourge of Armagon."

Game Explorer:

"Scourge of Armagon" does not show up in Vista's Game Explorer. That said, neither does "Quake."

Default Drivers:

The game does run software rendering using the built-in drivers. However, there is no hardware acceleration available for GLQuake using the built-in drivers.

Released Drivers:

On the ATI card I used for this test, I was not able to get acceptable GLQuake performance and GLQuake did not behave properly. Source ports like TomazQuake experienced similar behavior. However, WinQuake still ran fine. On the nVidia card I used for this test, GLQuake ran perfectly.

Run as admin?:

Yes. It stores the save games inside your Quake installation folder if you installed Quake to the default location.

Run as standard?:

Yes. It stores the save games inside your Quake installation folder if you installed Quake to the default location.

Run as guest?:

Yes, but the guest will not be able to save their game or save their changed settings.

Multiple users:

No. Because of where the config files and save games are located, multiple users on the same machine using "Scourge of Armagon" (and "Quake", for that matter) is highly discouraged.


SiN (1998 release)


Installer:

The installer does not work on Vista. To install the game in such a way that save games for standard users will go into the VirtualStore folder, open the CD and drag the Setup\Data folder to your desktop. Rename that folder to Sin, and then drag the renamed folder into your Program Files folder.

Game Explorer:

"SiN" does not show up in Vista's Game Explorer.

Default Drivers:

If you upgrade to Sin 1.11 using the latest patch, the game will run under the default drivers using software rendering. Hardware rendering will not work using the built-in drivers.

Released Drivers:

On the ATI card I used, I was unable to switch to a hardware rendered mode, and I was getting severe DirectDraw corruption. On the nVidia card I used, I still received DirectDraw corruption using the software renderer, but the OpenGL renderer worked fine.

Run as admin?:

"SiN" will run as an administrator, but the save games will be stored under your Program Files folder.

Run as standard?:

"SiN" will run as a standard user and will properly drop save games in the VirtualStore folder, but if you have someone on the same machine playing as an administrator and both people choose the same profile name, it will cause the standard user's game to behave unpredictably.

Run as guest?:

"SiN" will run under the Guest account and will properly drop save games in the VirtualStore folder, but if you have someone on the same machine playing as an administrator and both people choose the same profile name, it will cause the Guest account's game to behave unpredictably.

Multiple users:

If all users are standard users, or you can guarantee that the admin's profile names will differ from those of the standard users, multiple users can play without problem.


Wages of SiN


Installer:

Because of the installation hack necessary to get "SiN" working on Vista, the "Wages of SiN" installer will not detect the "SiN" installation. To install the expansion pack, drag the Setup\datab\2015 folder to your Program Files\Sin folder, create a new shortcut to the Sin executable, and add "+set game 2015" to the shortcut to run the expansion.

Game Explorer:

"Wages of SiN" does not show up in Vista's Game Explorer.

Default Drivers:

If you upgrade to Sin 1.11 using the latest patch, the game will run under the default drivers using software rendering. Hardware rendering will not work using the built-in drivers. When using an ATI card, the 2015 logo video did not render correctly.

Released Drivers:

On the ATI card I was using, I was unable to switch to a hardware rendered mode, and I was getting severe DirectDraw corruption. The 2015 logo video still rendered incorrectly. On the nVidia card, software rendering was corrupted, but the OpenGL renderer worked fine.

Run as admin?:

"Wages of SiN" will run as an administrator, but the save games will be stored under your Program Files folder.

Run as standard?:

"Wages of SiN" will run as a standard user and will properly drop save games in the VirtualStore folder, but if you have someone on the same machine playing as an administrator and both people choose the same profile name, it will cause the standard user's game to behave unpredictably.

Run as guest?:

"Wages of SiN" will run under the Guest account and will properly drop save games in the VirtualStore folder, but if you have someone on the same machine playing as an administrator and both people choose the same profile name, it will cause the Guest account's game to behave unpredictably.

Multiple users:

If all users are standard users, or you can guarantee that the admin's profile names will differ from those of the standard users, multiple users can play without problem.


Blair Witch III: The Elly Kedward Tale


Installer:

Works perfectly on Vista. When using the nVidia card, the Autorun splash-screen rendered incorrectly after install.

Game Explorer:

Yes.

Default Drivers:

The game defaults to software rendering, but can be switched to hardware rendering without any issues.

Released Drivers:

The game runs significantly better when using the beta drivers from ATI. On the nVidia card, the game did not properly default to the proper adapter. It required experimentation to switch to the correct adapter for the game to render on.

Run as admin?:

Yes. Save games are stored in the VirtualDrive folder.

Run as standard?:

Yes. Save games are stored in the VirtualDrive folder.

Run as guest?:

Yes. Save games are stored in the VirtualDrive folder.

Multiple users:

Yes.


Heavy Metal F.A.K.K.2


Installer:

Works perfectly on Vista. We recommend that you immediately upgrade to v1.02.

Game Explorer:

While the game does show up in Vista's Game Explorer, only the icon appears, not the box. The ESRB rating comes across perfectly, but the descriptors do not. In addition, the publisher, release date and genre are all incorrect.

Default Drivers:

The game does run using the default Vista drivers, but there is display corruption evident during camera moves on all brush geometry with both the ATI and nVidia cards.

Released Drivers:

The game experiences the same display corruption using the ATI beta drivers. There was no display corruption when using the beta nVidia drivers.

Run as admin?:

Yes. Save games are stored in the VirtualDrive folder.

Run as standard?:

Yes. Save games are stored in the VirtualDrive folder.

Run as guest?:

Yes. Save games are stored in the VirtualDrive folder.

Multiple users:

Yes.


Star Trek: Elite Force II


Installer:

Works perfectly on Vista.

Game Explorer:

Yes.

Default Drivers:

No, the game will not run using the default Vista drivers.

Released Drivers:

I could not get the game to run using the ATI beta drivers either. The game did run perfectly when using the nVidia beta drivers.

Run as admin?:

Yes. Save games are stored in the VirtualDrive folder.

Run as standard?:

Yes. Save games are stored in the VirtualDrive folder.

Run as guest?:

Yes. Save games are stored in the VirtualDrive folder.

Multiple users:

Yes.


Condition Zero Deleted Scenes


Game Explorer:

"Condition Zero Deleted Scenes" does not show up in Vista's Game Explorer.

Default Drivers:

The game will run in software rendering mode in Vista using the built-in drivers, but will not run 3D accelerated.

Released Drivers:

Using the ATI beta drivers, I was able to run in software rendering mode and D3D mode, but not OpenGL. Using the nVidia beta drivers, software and D3D modes worked fine, but switching to OpenGL mode caused the video drivers to stop responding.


Black Hawk Down: Team Sabre


Installer:

Works perfectly on Vista.

Game Explorer:

"Team Sabre" does not appear in Vista's Game Explorer. Neither does the parent title, "Delta Force: Black Hawk Down."

Default Drivers:

The game runs perfectly using the drivers built into Vista.

Released Drivers:

The game runs perfectly using the ATI beta drivers. When using the nVidia beta drivers, exiting the game causes the video drivers to stop responding. Also, the ATI card was able to switch to 1280x1024, but the nVidia card was unable to go higher than 1024x768 in the game.

Run as admin?:

Yes. Save games are stored in the VirtualDrive folder.

Run as standard?:

Yes. Save games are stored in the VirtualDrive folder.

Run as guest?:

Yes. Save games are stored in the VirtualDrive folder.

Multiple users:

Yes.


SiN (Steam release)


Installer:

Not applicable. (Steam)

Game Explorer:

"SiN" does not show up in Vista's Game Explorer.

Default Drivers:

No, "SiN" will not run using the drivers built into Vista. The game fails with an error message about monitor bit-depth.

Released Drivers:

"SiN" does not run with the current Vista beta drivers released by ATI.


SiN Episodes: Emergence


Game Explorer:

"SiN Episodes: Emergence" does not show up in Vista's Game Explorer.

Default Drivers:

The game runs perfectly using the driver's built into Vista.

Released Drivers:

The game runs fine using the ATI beta drivers.

September 12, 2006

[Music] Acoustic "Hey Ya"



What can I say...I enjoy hearing reinterpretations of popular music.

September 10, 2006

[Personal] Agenda For The Week

Monday: E-mail off raw XNA Framework evaluation to proper people at Microsoft.

Tuesday: Post final compatibility report for Ritual's released title library on Vista RC1.

Wednesday: Get "SiN" update release date window.

Thursday: Post scrubbed XNA Framework evaluation to blog. (The XNA Framework eval that I'm sending to Microsoft includes some NDA information from the Xbox 360 SDK, so I can't really post any of that...)

Friday: Send off payments on about a dozen bills.

Saturday: Relax.

September 7, 2006

[Anime] The Inner Geek Bursts Through The Eyeball

Please give me one moment to relish in my inner geek...

FOUR NEW EVA MOVIES!

Thank you.

[Sin] Ritualistic, Update

First off, don't worry about Ritualistic. It's going through a DNS update right now.

Second, the upcoming Sin 1 update. Code is essentially done, but has to be tested. Won't let it be released without a few more test passes.

Third, won't make my Friday deadline for my XNA evaluation. Should have it for Monday, though.

September 6, 2006

[Tease] Something Is Coming...

See if you can guess what?1280x1024|1600x1200|800x480|1440x900|1680x1050

(I've never been big on subtlety.)

September 4, 2006

[Personal] Going Forward

Well, I'm glad I took these last few days to collect my thoughts. Any time that death touches you, even remotely, it can affect you deeply, and if you don't take the time to adjust your bearings, you can lose yourself. So, my plans for the rest of the year...

By the end of this week, I intend to have finalized my evaluation of the XNA Framework and get my evaluation off to the XNA team.

By the end of September, I intend to release a better version of "Quake III: Arena" for the Xbox 360 Common Controller for Windows. Right now, the right thumbstick is translated into keystrokes when it would be better treated as an analog input. Lord knows it has the resolution...

By the end of September, I intend to have cataloged the game collection that I have here in Dallas and decide which games to archive on a CD spool or sell. Just glancing at my collection and I see a lot of classics, from Bullfrog's "Hi-Octane" to EA's "U.S. Navy Fighters" to Sierra's "Earthsiege 2" to Origin's "Bioforge" to "Terminal Velocity" to "Shivers" to "Powerslave" to "SkyNet" to "Robert E. Lee: Civil War General." Of course, those are just the more recognizable titles in this particular CD sleeve. Some, like "CybeRace" and "SkyBorg"...well, forgettable is a start. I've got over 2,000 games just here in Dallas. I need to compact the collection and reduce it as well. Given how DOS game compatibility in Vista seems to have taken a backseat based on my experiences with Pre-RC1, perhaps I'll start by eliminating any DOS-only games.

By the end of October, I intend to launch a new version of my site, including a seperation of personal and tech topics in this blog.

I'm going to have to start looking for either some contract work on the side, or a part-time job on weekends. Ritual pays me well and treats me well, but one of the side effects of this particlar death is a $400 a month drop in income through the end of the year at least. With the increase in rent this year, higher utility costs, higher minimum payments on my remaining credit cards, and the year-on-year increase in just the normal cost of living, that's a hit that is going to be very hard to offset. This also means that I'm going to have to put my plans to have three more credit cards paid off by the end of the year on hold.

September 3, 2006

[SiN] Vista and SiN

(Note: All of the information here is accurate as of Vista build 5536 [Pre-RC1]. This information may change in later builds.)

(Update: For updated information, go to VistaGameDoctor.com. You'll need three seperate articles: Steam, SiN (Steam release) and SiN Episodes: Emergence.)

Here is the compatibility information that you are going to need to get "SiN" and "SiN Episodes: Emergence" working in Vista.

Steam: In a default configuration, Steam does not work on Windows Vista. In order to get Steam to work in Vista, you must right-click on your desktop shortcut for Steam and select "Run as administrator," even if you are running in an administrator-level account. If you do not, Steam will either error out after the next Steam update, or will fail to update your GCF's when a patch is released.

If you do elevate it to administrator privledges, you will not be able to close Steam by right-clicking on the tray icon and picking "Exit." After doing that, you will have to open Task Manager, list all tasks for all processes, and end-task Steam.exe manually.

Clarification: Steam will work fine until either the Steam client is updated, or you restart Steam to get an update to a game. At that point, you'll encounter issues due to the way that Vista handles file system security for the Program Files folder.

SiN Episodes: Once Steam is working in Vista, "SiN Episodes: Emergence" works fine using the built-in drivers for nVidia and ATI. In other words, as long as you have a DX9.0c-level card, you should be fine.

SiN: At the moment, "SiN" will not work in Vista without a driver update. Vista only ships with installed support for OpenGL v1.1 (driver: Microsoft Corporation GDI Generic version 1.1.0). You will have to update to the latest Vista drivers for your video card in order to play "SiN" either from the original disc or from Steam.

September 1, 2006

[Personal] Death

A family member died yesterday morning. I need some time to take care of some related items.

I may not be replying to instant messages, E-mails or blog replies for the next three to five days.