Blogger

Posted in Uncategorized on February 5th, 2012 by Pyroka

In my documents folder I have a folder full of blog posts past, present and future, generally when I get a few minuets I like to try to add to at-least one of them, in the hope that I can keep up with my weekly schedule (not doing well so far…). As much as I like a large folder full of .txts, I decided I need a program to manage them, a simple program that would do the following:

  • On boot, parse the folder and give me a list of all the blog posts, showing their title and date of creation
  • When I select a post, load the text and let me edit it, (with spell-checking, but nothing else)
  • Let me know I need to save a post
  • Let me save and create new posts
  • Make starting a new post as fast as I can

So over the past weekend I knocked-up a little WPF app to do just that, I chose WPF because I wanted to become more familiar with it, and also because it looks nice, and since this is a minimalist app it could do with some custom controls.

Blogger showing the 'Improve Assert' post

 

 

 

 

 

 

 

 

 

 

The app is called Blogger and it has no buttons, no menu bar and no rich-text controls, just a just at the side and a text-box to dump my brain into. Starting a new blog post is simple, hit Ctrl-N and a new post is created, focus is given to the title text-box, type your title and hit enter, which moves the focus to the main post text-box. No fuss.

To save you just hit Ctrl-S, a new text-file is created named after the post title and the date of creation, to keep the folder organised and to make it easy to make manual changes if need-be.

If you like, you can download Blogger here, but I made it for me so it might not be suitable for anyone else.

Tags: ,

Global Game Jam

Posted in Uncategorized on February 4th, 2012 by Pyroka

So slightly late, but as promised, the blog post about the Global Game Jam I took part in last weekend.

It was an awesome event, the Nottingham Hackspace is a really good venue, with loads of room for the 20-odd people that turned up (most with desktops), it was quite a sight. The event kicked off at about 5pm, with the watching of the keynote video and revealing of the theme. The theme this year was ouroboros, but not the word, merely the symbol of the snake eating it’s tail, the organisers were told to not give the name or even a link to where the image was sourced from. This is a much more vague theme that I’m used to, and I usually prefer themes that invoke more constraints on the participants, as it can lead to some very interesting games. That said, however, the ideas the teams came up with were very good, and the added challenge of the diversifiers, optional and slightly crazy tasks, made for some very unique games.

Most of the teams participating at the Nottingham venue were formed from local indie companies, with both Indie Skies and Nerf Games forming teams.

I was mainly helping to look after the event, with me, David and ‘other’ Andrew taking shifts sleeping etc. so that there was always a Hackspace member at-least half-awake to answer any questions, put out any fires, and generally enforce the rules. I did, however decided to start making a game at about 1am Saturday morning, enlisting the help of an aussie artist, Lantana. Having an artist on a pretty much opposite sleep cycle on a game jam is awesome I must say, having someone awake to chat to and make art at 3am when you’re falling over is very useful. The game I made featured a player controlled dragon flying around, you had to form the ouroboros symbol by biting your tail to send the cute bunnies and doves to hell. It’s a silly concept yes but this will happen when you game design after 30-odd hours of being awake. The game itself isn’t very fun, but I do like the mechanic of flying the dragon around, and the artist enjoyed the experience of working on a game so we are hoping to make something a bit more proper out of it in the near future, more details possibly soon.

Other highlights of the weekend include, having to get a large tank of propane for the heater, which rolled around the boot of my car making worrying clanking noises and generally making me feel like I was on a real life version of that one GTA mission where your car is rigged to explode (thankfully me and David both survived) Playing a very evil game Johann Sebastian Joust, with David and Andrew, which rather quickly descended into throwing increasingly dangerous things at each other.

It was my first game jam in a very long time and it was very, very good, I look forward to the next one (maybe a Ludlum Dare?)

Silence broken

Posted in Uncategorized on January 26th, 2012 by Pyroka

Yup, it’s been a while, not had much to talk about really, ended up taking a bit longer of a break than I planned. I used the time well though, I completed Arkham City (very good game) and I’m a couple of working weeks into Skyrim, which is a beautiful buggy masterpiece that makes me want to hug all the people who helped make it possible.

Also I took up rock climbing, it is an awesome hobby but it does show how incredibly un-fit I am, still I’m getting better and I’ve not even severely injured myself yet!

There will be some more posts incoming, I’ve been working on some things, one of which I don’t want to talk about yet and one thing that is actually just more of the Tyr engine which I’ll attempt to blog when I can, I really need to work out some form of better, more mobile solution for blogging…

Also, tomorrow begins the Global Game Jam, a 48 hour game making contest. It’s been a while since I’ve jammed, far too long. I’m actually helping out running the event at the Nottingham Hackspace, but I hope to throw together a game while I’m there if time permits (I may have to actually sleep because whilst I can code after 40-odd hours of being awake I loose the ability to interact with other people at around 20).

I will attempt to post some blogs throughout the contest, and I’ll try to get that Tyr post up sometime in the week.

Asset Manager: Update

Posted in Uncategorized on September 25th, 2011 by Pyroka

It’s (about) a week since my last post introducing my plans for the Asset Manager I’m constructing as part of the Tyr game engine, so what has happened?

Short answer: Not much, long answer: Re-factoring!

When  I first started working on the Asset Manager, I was learning the ropes of SQLite (which is rather good) and re-learning SQL syntax (it’s been a while since I’ve had to touch databases) and I ended up writing SQL code in the Asset Manager to create the databases, get the list of assets etc. But the more I used this approach the more I disliked it, and I ended up creating a wrapper class around all the SQL code, so that if I ever need to change it I only need to modify one file.

Apart from that I’ve been wrestling with wxWigets and SQLite, both of which require me to have documentation open constantly to use, so it’s slow going, but I’m happy with the way it’s progressing so far. I have made a custom control to view a list of assets, which can change between viewing as a tree structure and viewing as a list, this week I need to make it so you can retrieve the asset that is currently selected and make another control to preview texture assets.

The plan for the texture preview is to have two windows split vertically, on the left will be the image and properties of the original source texture, and on the right an image and properties of the compiled textures. The user will be able to zoom and move around both images at the same time, allowing easier comparison between the two images. The properties for the source image will be read-only, only there for reference but the properties on the compiled texture will be editable, with changes effecting the texture in real-time, so that the user can more easily determine the ideal settings for the texture.

This will require a bit of work, using as it does both images and property grids, however I am hopeful that I may get it completed within a couple of weeks, where I’ll hopefully have a video to show.

Tags: ,

Asset Manager

Posted in Uncategorized on September 17th, 2011 by Pyroka

So I have decided that the engine I’m making (currently called Tyr) should have a program to condition assets before they are loaded by the engine, this is a pretty common approach for larger engines and has a number of benefits:

  • You only have to load one type of file, rather than handling the range of different types that artists may produce
  • You can ‘massage’ the data to make it more friendly, for example forcing the texture dimensions to be a power of two
  • You can check for errors at compile time, which can be quicker than waiting for the engine to fail to load them
For the Tyr Asset Manager, I decided for it to mainly be a graphical front-end for an SQLite database, I chose to use a database because it directly supports the type of searching and filtering that will be common operations (e.g. show me all textures that are bigger than 1024×1240) and I chose SQLite because it is written in cross-platform C, comes in one file (no complex build process, just drop it in your project and go) and because it uses a one-file on-disk database, making it less cumbersome that other database solutions that require much more set-up.
There will be different databases for different asset types, textures, sounds, animations etc. And one for ‘folders’, each asset must belong to a folder, folders can belong to other folders, these folders represent the file-system folder hierarchy that the assets will be compiled to. In the program itself, this will be represented by a tree-view.
To actually make the front-end I’m using the excellent wxWidgets, because then the tools will be cross platform (very useful), wxWidgets is a wrapper around a native GUI, so it will look and perform like a native app on all platforms (which is nice for users) and finally, because wxWidgets is a lot easier and faster than writing Win32 API code, seriously, it’s one of the times when making something non-cross-platform would take more time, especially when you combine wxWidgets with wxFormBuilder, a rather awesome drag-and-drop GUI designing tool.
Hopefully I’ll have some screen-shots to show in the next few weeks, progress is slow due to me not working on it most nights due to work and other commitments.
Tags: , ,

Cystic Fibrosis Project

Posted in Uncategorized on August 21st, 2011 by Pyroka

So prior to my current job at Eurocom, I was gainfully employed as a Research Assistant at The University of Derby working on what was then a secretish project. However, I arrived at my parents this weekend to be told that the project I had worked on had been on the news, so I decided to look it up.

The news report can be found here, complete with some footage of the games in action as it were. Also featured are David Day, who is responsible for the project (he set-up the project) and Andreas, my line-manager throughout the project (made him technically my boss, but since he doesn’t know much about making games most of the work was done by me).

So, the project is out in the open now, I really hope it does well and shall be following it’s progress.

The State Of The Side-Projects

Posted in Uncategorized on August 13th, 2011 by Pyroka

Ok, as promised, it’s time to work out just what’s happening with the various side-projects I have going on. I have a bowl of tea and good music playing, let’s do this.

 

Tyr

Tyr is Ragnarok mark 2, the next step in my eternal quest to build a 2D OpenGL game engine. It’s already better than Ragnarok in some places, but not as complete. I’m not sure if it ever will be complete, history says it is unlikely to be, but the engine does get more and more complete with each iteration, so there is hope that one day I’ll complete this rather epic task.

OpenML

OpenML, the planned 3D model loader/converter written in pure ANSI C with no dependencies is being put to rest, whilst it was fun hacking around in C for a while, it wasn’t really different enough from my C++ projects to be teaching me things, and as such I lost interest. If I ever go into making a 3D engine/game it may be revived, but for now no further development is planned.

LibCT

LibCT has been on unofficial hiatus for a long time now, with very little if any development being done on it. It’s a lot of code, and difficult to get back in to, add to this the feeling that it is ‘finished’ (There’s always more features that could be added) and it becomes obvious that I have to make it official, development on LibCT will be postponed indefinitely. I do want to finish off the current task-list to take it to version 2.1 at some point, but at the moment that desire isn’t too great. We’ll see how I feel in a few months.

Cerberus

Cerberus, I’m happy to report, is complete. It does all the things I wanted it to do and more, I may add a few things here-and-there as I need them, but for now all active development will cease and no further development is planned. I am really happy with how it turned out and it was a great learning experience that has, among other things, given me a working knowledge of Python that I am sure to put to use in the future.

Nevermore

This top-down Advance Wars style RTS is most likely finished. It’s a lot of work for one person, and the co-developer on the project has dropped out due to getting a proper job (the cheek). However this project was born out from a desire to make that sort of game that I have had for a long long time, and still have somewhere, so I expect I’ll have another project along those lines at some point in the future.

You Are Likely To Be Eaten By A Grue

2D light-based platforming game where you have to stay in the light to avoid that most unfortunate of fates. I like the idea of this game, I like the title, and I think it shows promise, but it needs more time, more time to come up with more light-based puzzles to actually make a game out of this, rather than a (rather shiny) 2D light simulator. This project will be completely on the back-burner but with a mind to occasionally put some time in to thinking of ideas. Hopefully enough ideas will form and I’ll be able to continue this project.

Subterfuge

2D submarine game with ‘Hunt For Red October’ style tactical game-play based around using sonar to sniff-out your opponent whist attempting to avoid them ‘seeing’ you. Pretty sure the main drive for even starting this project was to see how difficult it would be to draw sonar that bounces off arbitrary lines. The answer: Quite hard. I’ve mostly solved this problem, just a few edge-cases left, however I’ve kinda ran out of steam on this one and don’t think I’ll complete it. Status: Dead

Physics Engine

This project is so new it doesn’t even have a name. It also hasn’t started yet and I’m not sure when it will. Basically I recently bought a book (Game Physics Engine Development) which promises to take the reader step-by-step through building a decent physics engine. It is my hope that this will once-and-for-all cure my physics-ineptitude. Stay posted for updates.

 

Well that’s it, 8 projects listed, only 2 left in active development (and one of those not started yet). Sometimes, you just have to be brutal, especially in light of how much less free-time I have these days.

 

Random Update

Posted in Uncategorized on August 11th, 2011 by Pyroka

Wow it has actually been a months since I last posted. Oh well, such is life, now that I have a proper job that doesn’t allow me to finish at 15:30 and all. So what has been happening? Well obviously work has been keeping me busy, also I went on holiday for the first time in about 3 years on the first week of August, it was really rather nice to be by the sea again.

But I did manage to do some coding, I started a new 2D game engine that may or may-not ever get beyond the point it is currently at, we shall see. I started off hosting a book review site for technical books, the idea is that me and some of my mates that know their stuff will be writing short reviews on tekkie books rating both their usefulness and attempting to state what level of skill they’re aimed at, before you spend that £40 on a book that is way too basic, or way too advanced. Theres not too much there at the moment but I’m hoping activity will pick up once I’ve finished writing ones for all the books I own (about 10).

Also, on holiday, I ordered some more books from Amazon: ‘Artificial Intelligence For Games’ and ‘Game Physics Engine Development’. The first because I like AI and I’d like to have a few more experiments to try and the latter because I truly, absolutely suck at writing physics code. I always make the mistake of trying to over-simplify the problem and end up with messy code is more edge-case than anything else and will freak out if more than 3 things collide at once. This was a situation I was (obviously) not happy with and this book promises to take one through the process of creating a rather decent physics engine, so we shall see how that goes. I’m hoping for some good things and will obviously post progress.

I’m also working on a list of back-projects and shall do a bit of a cull of the ones that are never likely to see the light of day and officially end them, and hopefully task-out some of the remaining projects so I can actually get a move on and maybe finish some of them some-day.

Anyway, that will be happening tomorrow/Saturday so there will be an update then.

Recent Absence

Posted in Uncategorized on July 11th, 2011 by Pyroka

So this is the post where I apologise for not posting, however, unlike most posts along this vein I have an excuse!

As you may or may not know, I have been working at The University of Derby on a game-related research project, well, unfortunately the project (temporarily) ran out of money. (They will be applying for more soon, and are hopeful of getting it) to add to this, is my rather pressing need to have a permanent job by the end of the year. These things combined meant that it was time for me to leave that job and venture forth to find new challenges, and, I am happy to announce, I have indeed found permanent gainful employment! At Eurocom in Derby working on a very exciting project that I can say nothing about!

Anyway, the job search kept me rather busy so projects and blog-posts took a back seat for a little while, normal service should resume soon.

Cerberus Update: Build Steps Video

Posted in Uncategorized on June 8th, 2011 by Pyroka

So those of you following the Cerberus project will know that I’ve recently been spending my time working on implementing the build steps so I thought I’d do another video to show the changes so far. Again best viewed as big as you can make it, also, this one has sound!

Featured in this video:

  • Creating a new repository
  • New report page