Alternate Reality X – Release 0.75 – Changes

With the public release of Alternate Reality X 0.75 looming for the end of September 2016 I thought I would talk a little bit about what you can expect to see, what I didn’t manage to add and my general approach to have the completed 1.0 release in your hands before the end of the year.

I had planned for this release to complete ALL the elements of the City and the Dungeon that I see as combat and encounter related. I didn’t achieve that for a number of good reasons but I did make some very significant steps that put the project in a much stronger position than it was in before. One of the big changes was to add all the remaining Dungeon monsters as to date only the Well Lit Area and Fixed Encounters had been added and to animate them all.

One major change which I had not committed myself to making was using the original 8bit Dungeon monster data directly from the binary files. I was previously using simple text files which whilst easy to update had numerous errors, lacked a lot of information from the real data and were prone to spoiling of the game / opportunity for cheating from players. In addition to this I had built up similar text files for weapons in the game – an amalgamation of weapons the player could buy, monster weapons and unique items you could stumble across (e.g. the Sword of the Adept).

One of the great features of Alternate Reality (the Dungeon at least) was that it had a very flexible system for customising monsters and items in the game. Many games at the time would have had fixed object sizes with no opportunity to modify those objects in game. The Dungeon in contrast allowed very rich items and monsters which contained a mixture of attribute data (name, bonus to hit, sharp damage) with effects (curses, give off light) and directly included 6502 (the processor used by the Atari 800, Commodore 64 and others) code. In game objects could also be dynamically created in game (clothing in the City) or modified through player actions (weapons having enchantments added at the Weapon Enchantress).

So after a lot of thought I made the decision to use the original binary data. Using some great information provided by Brian Herlihy a few years back, I replaced the original monster loader and also added in support for loading in all their weapons and attacks. These are stored as part of the monster data. This was a lot of work for me but once I had these changes working I felt it made an immediate improvement to the feel of the game as well as adding all those additional Dungeon monsters – about 50 in total. Thanks to Brian for this information without which these changes wouldn’t have been possible.

Another major change in this release was the introduction of properly timed / processor speed independent encounter animation. I had information on encounter animation from old emails from Jim Norris – thanks Jim! – so I used these to hopefully produce a fairly accurate recreation of the Dungeon encounter animations. As part of this work I totally rewrote the main encounter loop and the way that monster and player “turns” are taken during combat and how multiple opponents are dealt with. Monster attacks now use the proper attack descriptions (whomps, slashes, chokes etc), can hit multiple player body parts and can also knock the player to the ground.

Behind the scenes I re-organised some of the game code, introducing more source files to try and better segment and compartmentalise different code areas (e.g the actor source files refer to encounters, load in the binary data, create their weapons and attacks etc). All these changes meant a lot of knock on changes – some foreseen, others not. These took time to sort out. I’ve probably not caught all of these issues yet.

With the introduction of all the new Dungeon monsters and only limited new encounter art I took the decision to temporarily disable the new media options – these will be back in a future version. I also disabled the W command to force an encounter as it seemed to be a source of problems and encounter frequency checking has been re-written in this release to check regularly for new encounters. I had to tone this down a bit as encounters seemed to be happening back to back!

The other feature missing from this release is the ability to pick up monster weapons after combat. There was a very practical reason for this, namely that all monster weapons are now stored in a new format and location whilst the player inventory / object buffer in the game uses a totally different system. In order to allow for the custom weapons of the Dwarven Smithy and enchanted weapons from the Enchantress this system will need to be updated and this in turn will impact on all the existing shops where weapons, armour and clothing can be bought. This work will be the focus of the next release with addition of adding in the original item binary data from the Dungeon to introduce all those special objects into Alternate Reality X such as Trump Cards, Eyes, Wands and Horns. Trying to add these into release 0.75 would have added a lot longer to the development time and I was keen to have a release out before then.

In order to have the 1.0 release ready for the end of the year I have had to focus tightly on what needs to be finished and priority on the gaps that need the most work and will add the most to the game. This may mean that some of the extras will go on the back burner for the time being but I think it will be well worth it to have a complete, integrated City and Dungeon Alternate Reality world to explore! Hopefully these decisions make sense but as always I’d love to hear your thoughts. Watch out for release 0.75 coming very soon. Thanks.

Alternate Reality X – Release 1.0 – Target Release Date!

Time to draw a line in the sand. I first started the current form of my Alternate Reality: The City & Alternate Reality:The Dungeon remake project back in 2009 – A long, long time ago. I think I even still had a full head of hair back then! Alternate Reality X (ARX) as it’s now known has come a long way since that 0.1 release back in 2009 and I’ve found myself diverted or distracted on occasion but the project is now well and truly back on track and developing on a daily basis.


Based on the solid progress I’ve made with development of ARX during 2016 I now feel that I can confidently announce a target release date for release 1.0 of the game. I have always envisaged 1.0 as completing my original vision for my Alternate Reality remake project – a full recreation of both The City and The Dungeon in a single, easy to use, seamless game for modern systems.

At the beginning of 2016 the game was still a confused mangle of code which I’d built up steadily between 2009 and 2015. It was full of workarounds, hacks and was very difficult to expand and add new features to. I’ve spent a lot of time reacquainting myself with some of my earliest code during the last few months which was a big challenge. I kept asking myself “Why did I do that????” Back then the main problem was that I was learning a lot about game programming for the first time and at the same time trying to develop the game. This often led to me making short sighted decisions without realising their longer term consequences. Later I would then struggle to bolt on a new feature to an increasingly precarious code base.
I’m pleased to say I’m now a lot more confident in my programming and game development skills and I’ve managed to gradually start to restructure my ARX code into a more sensible project. I’ve learned and read a lot about programming, C++, SFML and game development so I’m a lot better equipped to complete the project. I still have more work to do (and plenty to learn) but I expect to have a complete, well organised and (easily) expandable game by the end of 2016.

There is still a lot of work to do and features to complete before then but I feel really confident and excited that this is achievable and realistic. I can’t think of any area or feature that I’m particularly daunted by. I know that completing the game will be hard work, challenging but also extremely satisfying. If the 1.0 release is well received then I can look to really expand on the Alternate Reality universe during 2017 with additional scenarios and other enhancements to the City and the Dungeon.

As you can see from some of the screenshots here I’ve finally set up Alternate Reality X so that you can finally encounter some of the more exotic Dungeon encounters that haunted the corridors and halls of the original game. I’m also continuing to add in the special behaviours and actions for each encounter type.

So, without further delay I’m pleased to announce that my target release date for Release 1.0 of Alternate Reality X is:

 Monday 5th December 2016 

It’s a date I’ll be putting in my calendar! Hopefully something of an early Christmas present for some people. This is likely to be Microsoft Windows only initially and will focus on completing 100% of the original features from The City and The Dungeon. You will also be able to complete all the Dungeon quests and complete that scenario.

I just want to take this opportunity to say a big thank you to those people who have supported me through Paypal, Patreon, the AR forums, Facebook or by sending me personal emails of support and encouragement through the life of the project. It has made a big difference to me personally that you’ve had faith in what I’ve been working on and continued to support the project. If you have questions about this release or how I plan to achieve it then please post them here, on Facebook, the forums or send me a private message / email.

I’m not announcing this release date lightly – I take it very seriously. It’s not only a commitment to those who’ve supported the development of the game – some from the early years – It’s also a big commitment that I’m making on a personal level to myself. I think for me setting this release date will only strengthen my resolve to complete the game and help me focus on reaching my development targets. Regular releases of the game will continue to appear leading up to the final 1.0 release. Release 0.75 will focus on numerous improvements around City and Dungeon encounters. Thanks for your patience and support.

Alternate Reality X – Encounter Update, May 2016

As mentioned previously the encounter code in ARX had a lot of issues and really needed some serious work if I was ever to make it complete and feel authentic to the original Alternate Reality combat. I’ve basically taken apart most of the encounter code before refactoring it and putting it back together again. This has taken me a lot time and a lot of hours but I feel I’ve made a lot of progress.

The encounter code is now much more sensibly organised and structured and it is much easier to add in additional encounter features. The code is hopefully a lot more readable now, not only saving me a lot of time when I add to it but also meaning that others will be able to understand it a lot more easily should they want to.

I’d crammed a lot of only vaguely related code into the encounter module including the character and monster encounters themselves as well as their weapons so it was desirable to split these into their own source files. My plan is to gradually make these much more object oriented with player and opponent objects sharing a lot of code and functions for much better consistency.

I’ve been adding in new encounter features that were previously missing in ARX such as the player surprising encounters (or in turn being surprised) or being stunned and missing a turn. I’m still doing a bit of testing of the original game to understand exactly ow waylay and snatch should work but it’s good to have them in the game finally. You can see these illustrated here. The next change will be to add the Dungeon style combat messages and implement different body parts for the player which aren’t fully active at the moment.

It shouldn’t be too long before the next release is out. This will be focused on completing the remaining encounter features. I feel this will make ARX feel a lot more playable and authentic and will herald a big step forward for the project. Thanks for your support and patience as always.

Alternate Reality X- May 2016 Update

Work on improving the encounters in Alternate Reality X is going well. I’ve been stripping down the old encounter code, seeing what works and what needs re-working or simplifying as well as adding in the new features such as blocking, knock downs and special encounter actions. Lots of late nights but hopefully you’ll think the improvements make a big difference and all the long hours have been worth it.
I’ve been reading up a lot on game programming (mainly C/C++ and SFML) and how to better organise my code for CRPG and Roguelike style games. I’m resisting the temptation to just build on some of my earlier shaky code as I really want to make ARX maintainable and expandable – it’s the only way it will possible to expand the game to include other scenarios and new features.
I’m thinking of splitting the encounter updates and item updates into 2 separate releases to keep up with my plan of more frequent updates during 2016. Thanks for the continued support.

Alternate Reality X – More encounters…

After wasting a few hours modifying the monster data file format I eventually reverted to almost the same format I started with – I really need to learn to leave things where they are if they are not presenting any major problems. The main reason for the changes was to save me hand editing the Dungeon monster data I had. I eventually just learned how to use the Visual Studio 2008 editor better to put the monster data into my monster data file structure.

All 74 dungeon monsters are now in the game although I will need to do some work to stop the player bumping into the Basilisk and other one off creatures whilst exploring the Well Lit Area!

One thing that confused me is that the monster data I have doesn’t seem to quite tally with that in the C64 version. I would like to use the correct data. I also need to create all the weapons which Dungeon encounters can carry and bring the City monster data up to the level and data file format. City monsters work in a different way in the do not have fixed stats but have their stats vary to some degree when you encounter them.I would really like to put some encounter tables in place before the 0.4 release if possible.

Rogue’s Gallery

Spent some time at the weekend collecting more Encounter images and preparing them for use in the current release. My method for capturing these is pretty tedious but doesn’t take too long as there aren’t too many different encounter graphics and some are reused for different types of encounter. I basically save screenshots from within the Atari800Win emulator, cut out the encounter image, double it’s size to fit a 64×128 pixel OpenGL texture and then remove any unwanted background. In future I’ll need to capture the additional animation frames that many encounters have but for now encounters aren’t animated.


I also had a play with some of the Eye of the Beholder graphics I’ve used previously but I think I’ve decided not to use these as they are limited in number leaving many AR encounters without updated graphics. Here are a couple of examples anyway.

Currently I’m creating black and white masks for each encounter image but I’m hoping that I might be able to do away with this possibly by using OpenGL’s display lists. The AR font is drawn using this method and seems to work fine and doesn’t require any manually created masks. Browsing round the web I found a program called GraphicsGale Free Edition which is a sprite editor that might be useful for hand editing of the original AR encounter graphics.

I’ll need to set aside a lot of time if I end up hand editing all these original images…