October 14th, 2008
No comments »
I am taking a different approach to the menus in the next version of Galactic Wars (formally known as Galactic Wars 3). The previous version (1.3) used a new sliding menu that shifted to seemingly random points on an image and displayed some text for the point. It made sense since Galactic Wars does take place in space (each menu choice was a star in a galaxy). However the graphics required to do this were a big drawback, even on the Zune. This is because you can’t really have a low resolution image and have to make it much larger than the screen to get the sliding effect to look good. Because the game is going to the PC and Xbox 360 platforms, to carry over this idea would require even bigger images. In the end, it just doesn’t make sense.
So the new idea is to keep it sleak and simple. On the PC/360 version the menus will drill down a little differently but the idea is the same.
October 13th, 2008
No comments »
A very early version of Gato Muy Splato is now available for download one the Zune Games page.
October 13th, 2008
No comments »
While building Galactic Wars 3 version 2.0, I quickly ran into a serious problem with Xml serialization and more specifically deserialization. A few months ago I rolled my own solution for serializing data to and from Xml because the built in classes were bloated and yet not feature rich. A week or two ago I managed to get my class (XmlProvider) to compile for the Zune and Xbox 360. But there was still a problem…
- References
The first problem (the reason for the creation of XmlProvider) was that the built-in classes could not handle references. Every object had to be serialized straight through from top to bottom. Thus if you had an object with two properties that referenced the same object (in memory), the object would be serialized twice.
- Inheritance
The new problem is that with XmlProvider, deserialization was based on the information given by property attributes in your code. This is limiting because you may not know at compile time what exact type of object your property will be holding a reference to. In Galactic Wars 3 this is a problem when I am saving the profile of the user and want to save his specific ship.
So what is the solution? Start from scratch of course and solve these two problems at once! The first one is easy: provide a mechanism with which to uniquely identify any objects in memory and in Xml. We can then build a cache which we can reference from as we find objects with references. The solution to the second problem is also simple: rely on the type name in the Xml rather than the type on the property’s attributes. » Read more: Building an Xml Serialization Provider
October 4th, 2008
1 comment »
Get it on the FGF page! This should fix the problems from the previous version.
October 4th, 2008
No comments »
Before people start reporting problems with Thrust v1.1, let me say that version 1.2 is already on its way. I have caught a few bugs in the InputManager that are demanding a quick release. I will also be including some new GUI functionality.
In the meantime, catch up on the tutorials and samples about using the Focused Games Framework.
October 1st, 2008
No comments »
During the last part of this little article series I mentioned how I used a queue in each state object to allow for continuous transitioning to occur. The reason for this is to allow for complex transitioning to occur. One example for this is a logo screen where it needs to fade in, stay on screen and then fade out again. Rather than relying on managing the states manually, we can add states on to a queue so they occur automatically.
» Read more: Advanced State System: Queues and Removal
October 1st, 2008
1 comment »
There comes a time when simple state management just will not cut it anymore. I found this out while building up the code base for Thrust’s GUI library. As the objects on the screen became more complex, so did their states. This article covers a new way of thinking about an object’s state, a design that has been proven in Thrust (v1.x). The goals of this state system include the following:
» Read more: Advanced State System: Concept and Base
September 30th, 2008
No comments »
I have put up a new version of the Focused Games Framework for download. This release includes Thrust v1.1 and Vodka Alpha files. I have also released X86 and X64 installers for Folder Kill. Below is a more complete list of the changes made.
Thrust
- Created Content Pipeline Project
- Terrain Content
- Cleaned some StateObject & Menu code
- Added repeat states for GamePad
- Added Xbox 360 projects
- Added Camera components
- Added Console component
- Diagnostics
- Added Stats component
- Added Thumbstick Throttle Component
Vodka
- Created core Vodka project
- Added core interfaces
- Implemented a few providers
- Added Services project.
Finally, I urge you to keep an eye on FGDN as I continue to add to it over the next couple of months.
September 27th, 2008
No comments »
Ziggy of Ziggyware, as many of you know, has been hit really badly by the latest hurricanes and storms. Please consider taking the time to donate a few bucks to help keep his site and contests alive. If you do not care for donating, perhaps now would be a good time to buy an XNA book from Amazon through his site’s many book links. You can read more on his website.
September 25th, 2008
No comments »
I have upgraded GW3 for Xna 3.0 Beta and Thrust v1.1. I have included a fifth level that should be very hard and attempted to fix a few bugs. If you run into any issues, please do not hesitate to let me know. You can download the GW3 source code from the following link:
Galactic Wars 3 (8551) - 7.46 MB