Finally, after beginning soon after the game’s Windows release on Steam, and well over a month after I initially wrote my first post about this topic, I’m finally done with porting Gemstone Keeper to Linux (for the most part) and ready to write about what I’ve learned from porting it over. Since both the Framework and Level Generator have been ported, getting the whole game to compile and run wasn’t as confusing as the last two, but that didn’t stop it being tedious.
It has now been one full week of 2017, and a lot of people (including myself) have slowly gotten back to work. Since Gemstone Keeper has been getting close to release, I’ve started work as soon as we can to get stuff done.
Before I get into Gemstone Keeper, I worked on a little game for Ludum Dare 37 where the player is stuck in a porta-loo balancing in the air. That game was Danger: Mondays, and after two weeks of voting the results are in. The results for this Ludum Dare were definitely beyond my expectations. While the amount of submissions for the compo were smaller compared to past years (901 compared to 1117 at LD35), that doesn’t devalue the fact that Danger: Mondays achieved a rank just a few places shy of Top 25 in the Humour category of all categories.
Reading all the comments, I was glad people found the concept amusing, but I’m completely grateful at the how well I did this time around. Thank you to everyone who voted during the day. Apologies for not posting about Ludum Dare any sooner, but I was working on a bigger game.
To be a bit more descriptive, Boss Rush will have the player beating all five bosses as fast as possible, they are able to set the stats and weapons of their explorer before hand and they regain some of their health after defeating each boss.
Score mode allows the player to go through the caverns, and like the daily run mode, will try and get the highest score possible by collecting as many gemstones and materials as they can on a single run. This time however, the player is free to set the seed they want, which will effect all aspects of the game from the levels, player stats, which weapon they have and which items they’ll have at the start.
One of the benefits of working on these game modes (from a developer’s perspective) is that we go through all the main game modes again to not only ensure they work through both the main game mode and these smaller game modes, but to find any bugs or issues that was missed out the first few times.
Another update we’ve done is on the gemstones themselves, namely how they are rendered. Originally, the Gemstone Geometry was generated using a Gemstone Mesh Generator that was developed at PROCJAM, and then rendered using a custom software approach using SFML (you can read a comprehensive write up of this on my websites in part 1 and part 2). However, over the last week of December, it was decided that it was time to update this for performance and to improve quality by changing the rendering process to an OpenGL Hardware render approach.
Below you can see the difference, on the left is the software approach, and the right is the new hardware approach:
This weekend I’ve been playing around with post-process effects, as it would be nice to have some visual effects that would appear through the entire game, although it would be possible for the player to disable certain effects if that want to. To pull this off, the framework now has a multipass post processing system where it’s possible to disable certain effects.
This allows us to apply multiple post process effects at once, and allows us to add the options we need to allow players to enable/disable certain ones.
This is only a small sample of what is being planned, leading up to Gemstone Keeper’s release on March 31st 2017. I’ll also be attending London Gaming & Anime Con in early February and GDC in San Francisco later in the month, however the latter will just be as an attendee.
Here’s to 2017 being a successful year for many people!
To celebrate my birthday, I’ve decided that from this day forth, my stealth game Secret of Escape will now be available to download FREE of charge. You can now get the game from either IndieGameStand or Itch.io if you want to download it and enjoy it as much as you want. I haven’t been able to change the price on Desura because it won’t let me set a price below $1.99, but since Desura’s bankruptcy I doubt anyone will use it.
So to sum up last weekend, when I went to Nottingham for the International Roguelike Developer Conference 2015’s UK event, I’m not kidding when I said I had little expectations, considering that the Roguelike genre is still fairly new to me, despite spending a year researching procedural level generation for my University dissertation. Despite this, I had a great time and was able to gain a lot from the games, the genre and the role of procedural generation from these two days.
Although I have met the event organiser Mark Johnson and Roguelike developer Darren Grey from the PROCJAM conference organised last year, I wasn’t sure if I was able to meet anyone at the pre-meetup, especially since Mark unfortunately went down with food poisoning before the pre-meet began. However I decided to head off to the Bell Inn and see if I could find anyone.
By chance, I went to the bar and a man sitting at the table asked me “You here for IRDC?”, that man was Johannes Kristmann, and with him was Paul Jeffries. We talked about games, had drinks, and they joked about IRDC events of the past and eventually more people showed up, including Alan Charlesworth, Tom Betts and Ido Yehieli. We all decided to have more talks and drinks at Darren’s apartment block until we all decided to head to our respective hotels to prepare for tomorrow.
These were all the talks that were given that day (taken from Mark Johnson’s blog):
1025 – “”And [my bot] vowed to return victorious!”: Spelunky as an AI Benchmark” (Tommy Thompson)
1050 – “Dungeon Crawl Stone Soup Development” (Pete Hurst)
1115 – “Alternative Death Systems” (Darren Grey)
1140 – “Generative Design” (Paul Jeffries)
1205 – “Modability and You” (DarkGod)
1330 – “Making a Roguelike that uses Twitter Data” (Sean Oxspring)
1355 – “KeeperRL Development” (Michal Brzozowski)
1420 – “The Curious Expedition Development” (Johannes Kristmann)
1445 – “Murder Puzzle – No Longer a Roguelike” (Ido Yehieli)
1510 – “Scaling Brogue“ (Flend)
1535 – “Creating a Procedural Level Editor” (Me)
1600 – “Sir, you are Being Hunted Development” (Tom Betts)
1625 – “Algorithmic Generation of Global Racial, Cultural, Religious, and Architectural Variation” (Mark Johnson)
There were so many great talks, some were really funny and others were really informative, I even managed my talk, despite all my nerves. I spoke about a part of my University dissertation, the Procedural Level Editor.
If you didn’t catch them on Twitch, all of the talks will be online on Youtube in the coming weeks. These talks were followed by curry, and then drinks at Ye Olde Trip to Jerusulem, possibly the oldest pub in England.
This was an experimental part of the day, where members of the public got to try out some classic and modern roguelikes such as DoomRL, Angband and Incursion among others, as well as a selection of board games that possibly inspired Roguelikes.
So I had a really fun time, and got to speak to a lot of talented game developers about procedural generation and gaming in general. I got to talk about my University dissertation, and I also got to speak on roguelike radio about the conference, which should also be online soon as well.
So I think it’s time to announce my new main project, during my dissertation I wrote a short prototype game to demonstrate the procedural level editor. I’ve decided to extend this game to be Gemstone Keeper, the roguelike twin-stick shooter. It will use the Procedural Level Editor, which I will also release for public use when it comes to a stable enough point.
Between the 11-12th of June, I went up with a friend and fellow Windows Games Ambassador Aaron Smith, along with a games design student Nathan Holding to the University of Hull for ThreeThingGame, the University’s 24 hour games jam. The premise is that each team was provided three words, and were tasked with making a game that incorporated them. The games would be judged on how well they fit the three things, and the quality of the game overall and the winning teams would get prizes.
This was going to be an interesting event for all three of us, as despite being used to travelling around several campuses for events, Hull was way far out for us. We were also aware that the majority of students there had been at ThreeThingGame before and new how it all worked. However Aaron and I were a bit more confident in what we could pull off together since we went through a games jam one week prior, where we learned to have a proper functioning version control system that the tools can work with, as well as having an actual artist working with us this time. Our three words were Room, Moon and Lune, and from that we made a Lunar Lander style space game where you avoided asteroids and landed on moon bases.
We also had an additional tool to work with, my Ricoh2DFramework. I don’t think I’ve mentioned it before on this site, but the Ricoh2DFramework is a framework for MonoGame. The purpose of the framework is to provide classes to assist with graphics, collision, input and audio among other functions. I was actually quite eager to use Ricoh2D in a game development project to see how well it works practically.
Game Development went rather well, and while there were some small issues found in the Ricoh2DFramework, they were easily fixed and all of those changes have been uploaded to the Ricoh2DFramework’s repository. There were also some performance issues that required some work arounds in order to avoid (slow downs, glitches and crashes galore), but in the end we finished the game.
What went right:
- Proper source control: Using C# and MonoGame with Github is much better than the last games jam at Stafford, where we tried to use Unity with Git. Overall it was a nightmare back then to merge all the changes and ensure the project work. Using a system that is completely text based and readable made the process much more easier.
- More prepared: Using the Ricoh2DFramework definitely saved some time in developing the game, and even though the framework had issues they were much quicker to deal with instead of having to build everything up from scratch.
- Having an artist: Definitely enables the team to work on the game while assets are being created, instead of having to be made during or after development where issues can arise.
What went wrong:
- Didn’t sleep enough: All three of us, me especially, thought we could spend the entire night working on the game. We didn’t. I could barely stay awake after literally staying awake for 24 hours, even with an abundance of food, drink and snacks to help us keep our energy.
- Technical issues: While some performance issues were most likely due to some of the original code that was developed for the game, we also had numerous unexplained crashes from Microsoft and SharpDX libraries. This was especially bad when the game crashed unexpectedly with an unhandled exception while judges were looking at our game. This could’ve been one of the reasons why we didn’t get a place in the rankings, but since we were still using the Technical preview, hopefully issues would be ironed out afterwards.
Overall, I rather enjoyed ThreeThingGame. It’s a neat idea for a games jam and everyone at the University of Hull was very enthusiastic and eager to make games, which makes it even more impressive as the University doesn’t have a specialist games course unlike Staffordshire University.
Now it’s back to the Procedural Level Editor and my newest game project Gem Finder, where I’ve already started on new features…
Over the last week, I’ve technically had to prepare for two releases, and guess what? Both games are out, and I’ve updated the game menu to include links to them! It’s pretty cool how both games were originally made at 48 hour game jams, and both are being updated as we speak. Feel free to read on about my experiences with Global Games Jam this year, and try out these two releases as soon as possible, all feedback is awesome!
I’m proud to announce that Secret of Escape has been shortlisted for Best Student Game and Game of the Year at this years TIGA Games Industry Awards. The ceremony will celebrate a year of game releases from the UK Games Industry from all developers of all sizes, from indies to the AAA.
This is definitely a huge honour to see a well known organisation in the Games Industry as TIGA to recognise the hard work of those, including individuals and students. I’ve worked very hard during my placement year to bring Secret of Escape to the masses, seeing people praise the game and now for it to be shortlisted for a major award definitely makes the extra effort worthwhile.
Readers and members of the public can vote for Secret of Escape for Game of the Year here, voting opens until 20th October.