A Pinball Prototype

April 24, 2009 at 6:57 pm (IceCream, XNA) (, , )

Last night I set myself and a friend a challenge. Make a game in 1 night. We’ve done it before with Rock Paper Scissors Live. This time we failed, miserably. It’s not a functional game by any stretch of the imagination, however it is a cool little prototype.

2D Pinball was the genre we chose, so I created a new IceCream project and off I went. Using the Farseer integration it meant I had something up and running in no time, but it was proving difficult and time consuming to get the physics settings to feel like a pinball game. IceCream support for Farseer isnt quite complete yet, so there was quite a bit of code to write surrounding Springs and Joints. After some quick tweakage after arriving home I’ve got it to feel much better and much more like a pinball game. Here’s what it looks like now. I wonder if I’ll come back to this project and turn it into a game 🙂 could be fun.



Permalink Leave a Comment

IceCream Release (Update)

April 20, 2009 at 5:26 pm (IceCream, XNA) (, , , )

After finally releasing a release of IceCream early this morning which was probably not my wisest move as I was rushing and it showed in the release. Firstly I just messed up but secondly there were a couple of bugs I’ve been coping with that I should not have inflicted on anyone who tried it out. These were when you tried to open a project file and it couldnt find the scene file or no scene file was to be opened, the loading progress screen would stay alive and look like the app had hung. It didn’t, you just close the progress window and it’s ok to use. The second bug was deeper, when you open a project while already having a different project open, it would die a horrible death. I’ve been working hard on SBARG so it’s been a single project for me for some time. Both these bugs are now fixed in this release, along with an appropriate version number along with being compiled in Release mode so that should eliminate any debug performance issues.

You can grab the latest download of IceCream release here.

Again, please feel free to leave feedback, suggestions, comments or if you want some help email me at conkerjo at hotmail dot co dot uk.

Permalink 1 Comment

IceCream quick and dirty crash course.

April 20, 2009 at 1:18 am (IceCream, XNA) (, , )

So now that IceCream has been let out of the bag, how do you use it? well this post should give you a better idea of how a IceCream game is built and what are the basics of making your own game.

In the release there is a IceCreamPong demo sample, so let’s use this as our example.

This consists of a Visual Studio XNA Game 3.0 project, just like any other game project you would create. The installer adds a template for you which adds the reference and creates the default files. There is also a Game.icproj file. This file is the IceCream project file and is used by Milkshake to open your project.

Next is the global.ice file. This is a global data holder for template scene items and global assets such as materials.
Then you will have 1 or more scene files for your game, this sample contains TestScene.icescene. This is the main data store for any scene in your game. Both the scene files are xml and can be edited by hand, I highly recomend studying the data before attempting this though.

The game project contains a reference to the IceCream.dll. You will notice a lot of similarities with a standard XNA game project, we also gave a Game1.cs file which is our main game entry point. The difference is we inherit from IceCream.Game instead of the normal Game class from XNA.

public class Game1 : IceCream.Game
IceScene scene;
public Game1()

protected override void LoadContent()
scene = SceneManager.LoadScene("Content/TestScene.icescene");

All it takes is 2 lines of code to get a scene up and running.
This is important the base.LoadContent(); method call must come before you LoadScene call as this is what loads the global content potentially required by your scene data.

When the LoadScene method is called it loads the specified file into the SceneManager.ActiveScene property if it’s the first scene loaded.

Next we wil take a look at the components. In IceCream there are 2 types of Components. A IceSceneComponent which is added to the Scene.Components collection and a IceComponent which is added to a SceneItem’s Components collections.

These components are updated on every game update much like the component system built into XNA except with more flexibility.
The IceComponent contains a property called Owner which is a reference to its Owning SceneItem, but a IceSceneComponent has a property called Owner too which is a reference to its owning Scene.

In the sample game we have an IceSceneComponent called PongEngine. This has been added to the scene in the TestScene.icescene file.

When the LoadScene method is called this Component is added to the scene and the OnRegister method is called.

public override void OnRegister()
Instance = this;
Enabled = true;
BottomWall = (Sprite)Owner.GetSceneItem("WallBottom");
TopWall= (Sprite)Owner.GetSceneItem("WallTop");

A couple of things to point out here, the Owner property is a SceneItem so it needs to be casted to a Sprite in this instance. But if you look more closely we have Owner.GetSceneItem method, this will retrieve the SceneItem if it’s registered in the scene with the specified name.

If we look at the decleration of the Component we see how IceCream & Milkshake utilize your custom components.

public class PongEngine : IceSceneComponent

Some of the other types of SceneItem available are

  • Sprite
  • AnimatedSprite
  • TileGrid
  • ParticleEffect
  • TextItem
  • PostProcessAnimation
  • One of the cool things about IceCream is you can add Components to the scene and SceneItems from within Milkshake by right clicking an item in the main tree.

    I know this is only a brief overview of a tiny portion of what IceCream is. I will be writing more specific articles very soon.
    If you have a specific task you want to achieve, please post a comment and I’ll gladly help.

    Permalink 1 Comment

    Early IceCream Engine Release

    April 20, 2009 at 12:30 am (XNA)

    I have decided to make a release of IceCream & Milkshake.
    IceCream is a 2D game engine built for XNA and Milkshake is the 2D visual editor for IceCream.
    Included in the download is a very simple sample of IceCreamPong.
    It’s a little hacked together but take a look at how things work.

    IceCream & Milkshake are still very young and this is a very early look at what it can do, it has some known issues, and I’m sure it will have some yet unknown issues so please use this with caution as I cannot take any responsibility for it yet.

    I use IceCream & Milkshake with SBARG and it has made the development much easier. So once learning the quirks this is a very functional engine and editor.

    Please feel free to try it out by downloading the self extracting exe here

    Once installed open the IceCreamPong sample in the Samples directory and make sure it builds ok. (The reference maybe wrong if you installed to a different location). Then run to make sure it runs and plays a very simple version of pong.

    Now run Milkshake.exe and open the Game.icproj file from withint the IceCreamPong directory, (edit) You will need to open the icescene file from the Content directory.
    Try something crazy like…. adding bloom… mmmm. MORE BLOOM!!!

    I’ll work on some “Getting started guides” but please feel free to try it out and let me know what you think in the comments or if it’s something more detailed or you want a bit of help I’ll try my best to respond to conkerjoe at hotmail dot co dot uk

    Permalink Leave a Comment

    SBARG trailer and progress

    April 17, 2009 at 8:20 pm (SBARG, XNA) (, , )

    Finally got the new SBARG Trailer fixed up and released here http://www.sbarg.com . Special thanks to Steve P for cutting this together for me 🙂

    I’m currently working on polishing the game some more. Little touches here and there are adding a lot of value to the feel of the game. It’s very tedious work so I’m drinking lots of coffee and yawning a LOT!!!. But it won’t be long before I finally give in and package it up for review. It’s been a long time coming and I’m looking forward to hearing what people think 🙂

    Permalink Leave a Comment

    Xbox Live Community Games Coverage

    April 14, 2009 at 10:00 pm (XNA)

    Wow… people bitch about coverage, and coverage is what they get.. keep bitching guys… it’s working.

    Here’s a rundown of what’s been going on in the world of XNA and Community Games recently and some other random links XBLCG related.

    ‘Media Coverage Matters’: Weapon of Choice Dev

    Analysis: XNACG Regional Sales And Conversion Rates

    Best Of GamerBytes: GDC Round-Up, XNA Analysis

    In-Depth: Xbox 360 Community Games Devs Talk Successes, Failures, What They Want

    Exclusive: XNA Community Games Sales Figures Revealed

    Joystiq interview: Halfbrick Studios

    The brighter side of XNA sales

    GamerBytes study shows disappointing sales for XNA Community Games

    Some creators disappointed with XNA Community Games sales

    GamerBytes picks top XNA Community Games

    XNA Roundup episode no.13 bite sized reviews #1


    Nick G’s awsome new XNA Game listings

    XNA Game Reviews

    Ziggywares Community Games Listings

    XNA Game Reviews And Ratings

    More XNA Game Reviews

    Permalink 1 Comment

    SBARG Website

    April 10, 2009 at 6:28 pm (Uncategorized)

    I’ve finally knocked up a small website for SBARG. When I say knocked up, I mean installed wordpress + a theme, thanks for theme recomendation Krisc. See the new website here SBARG Website

    Not much there at the moment, but check out the highscores table, I’ll be filling out the highscores from more playtests later. There are also some screenshots and videos.

    Hit the RSS button to get updates on any new news.. like release dates etc. I’m almost there, I can feel it 🙂

    Permalink Leave a Comment

    XBOX Community Games Sales – On Reflection

    March 31, 2009 at 7:06 pm (Other Stuff, XNA)

    Earlier I posted about the initial reaction the XBOX Community Games sales data, I immediately changed my perception of the results we know and had I not had an amazing new feature to add to Level 7 I would have responded earlier.
    Some of the reaction in the forums is a little naive like with the I have my sales numbers and I want to cry thread, I must say though there are plenty of developers on there with their head screwed on and got almost exactly what they anticipated.

    There has been awesome coverage of this new found information about the Community Games. If anything it’s good publicity for the service.. “There is NOT a free money pit, look elsewhere” or something, but on the other hand with analysis such as gamerbytes did here we see that some of the better quality games, and games which have done their own hard work to promote their own game, have come out on top. Wordsoup has performed incredibly well, congratulations to those guys.

    I think this has worked out perfectly. The service is going to gain more coverage, even if its more developers downloading trials, it’s something more than now and it will continue to grow. But it will also inspire the hard working people with passion to make even more great games. I particularlyyyy like ZP2K9 and Solar, a handful of others too but these 2 I play often, except.. ZP2K9 needs more customers OK!! so go buy it immediately and make James Silva even more richerererer.

    P.S Did you also know? you can go onto the market place wherever you have a browser and view info about all of these games available. Good stuff? Find something you like? Hit the Game Demo button, or the Full game button if you’re feeling flush, or if the game is called SBARG, then down below is a button saying “Download to Xbox 360” then when you get home and turn on your Xbox 360, which you do as your priority of course, it will automatically download them for you. Make a brew, and you’re ready to go demo some Community Games.

    Permalink Leave a Comment

    XBOX Community Games Sales Numbers Available

    March 28, 2009 at 2:18 am (Uncategorized) (, , , )

    The highly anticipated sales figures have been made available to those who have published a game on the XBOX Community Games Service. http://creators.xna.com/
    From initial reactions in the forums it doesn’t sound overly positive. But i’m sure the big winners will be keeping their cards covered. I wasn’t expecting overnight millionaires, the service is still young.

    Oh well, back to the grind of game development. Playtesting is going well and I’ll be pushing an update this weekend to playtest for further feedback.

    Permalink Leave a Comment

    SBARG – An Audio Update

    March 17, 2009 at 9:10 pm (Uncategorized)

    So lately I’ve been focusing a lot more on the audio section of SBARG. As my game is written on top of the XNA framework, playing audio is really simple. In the current stable build of SBARG I simply have a selection of sound effects in an XACT project and I just call SBARGAudio.Play(“ShooterPodFire”); at the relevant time and it plays the related sound effect.

    But it’s what the contents of the audio that was beginning to bother me. After much searching I didn’t really find what I was looking for with the power of google, so I set out to brainwash one of my musical friends. I’m glad to announce that it worked. Having somebody create a sample audio track based on a little bit of information about the game had an immediate impact. A couple of samples were sent to me which I instantly liked.

    Sample 1

    Sample 2

    I felt both these tracks would work in the main menu portion of the game. It’s not a major turning point in the dev cycle but it’s the little touches that this game is currently lacking in.

    Another positive outcome of this newly found enthusiasm is I finally decided to make an effort to experiment with giving Dr Strobo a voice. So I set out in brainwashing another friend, and unsurprisingly, it worked again. I handed over part of my script for Dr Strobo and what I got in return was a very pleasant surprise. While it was very different to the voice that I had in my head in my head, I felt it had potential. Here are a few short samples of the raw unedited clips.

    Sample Voice 1

    Sample Voice 2

    After some very quick hacky code, and some very unskilled processing I managed to capture this video

    I was like …. Wow!! It’s Dr Strobo, he’s alive 🙂

    Now back to the beginning of this post where I said this was easy. That was a lie, due to some limitations in xna I can’t have this audio as1 long WAV file, this introduces a lot of extra manual labor and lots of thinking and coding to make work. The new soundtracks and effects are a must, but the voice over, is it worth it? The dury is still out ….

    Permalink 2 Comments

    « Previous page · Next page »