For those of you that do not follow my personal blog, I thought I’d update you on a few issues that have been plaguing me… for those of you who have, you can skim down to nearer the bottom…
About six months ago I received an email from Marmalade detailing their intention to withdraw from the SDK market. Marmalade is the system I used to develop The Lords of Midnight and Doomdark’s Revenge in order to facilitate the cross platform nature of it. Using Marmalade gave me the ability to target iOS, OSX, Android, Windows, Windows Phone, Kindle, and Blackberry.
A month or so later, Marmalade confirmed that the SDK had been sold to another company, and that further support may become available from them.
That process has now taken place. I have less than a month of my Marmalade licence left, and they have not turned off the Licence server to I can still build and continue to work. However no future support will come from them. The new company are offering a 12 month bridging licence at $100 more than my previous licence fees, but this also comes with no support. I’m also not convinced that they intend to be around for the long term. The main reason they appeared to by the Marmalade system was for internal development.
A few weeks ago I received an email from Google. Doomdark’s Revenge was now in breach of one of their policies and needed to be resubmitted or removed from the store. A quick recompile and the problem was solved.
A couple of weeks ago I received an email from Apple. The Lords of Midnight was due to be removed from the store in 30 days. This is due to them culling old apps that were not being updated and/or were not 64 bit. If the App is removed people who currently have it will still be able to play it and re-download it, it just won’t be able to go on any new devices or be updated.
In theory, a recompile would solved the problem, and as I had slowly added some new functionality, this should gain me a stay of execution for possibly another 5 years.
Over the last few weeks I’ve ben wrestling with a Marmalade SDK that is not supported and an inability to build a new version. Eventually, after a lot of heartache and pain, and getting close to just giving up, I have managed to get a working build, however, there is a catch, it doesn’t work on iPad1, iPad2, and iPad Mini 1. iPad1 is no surprise, I can’t target anything lower than iOS 6 anymore and iPad1 only goes to 5.1 The iPad2 and iPad Mini is more of a problem. The issue appears to be the Marmalade system incorrectly reporting those devices as Retina devices even though there are not. I’m still trying to fix this, but it’s proving difficult without current access to any of the devices. So, I might have to make a decision. The deadline is under two weeks now and in order to stave of the executioner, I might have to upload a version that doesn’t support those devices. And this is where the real catch is; I can’t exclude those devices without going iOS10 or purely 64 bit, or both.
Using iOS10 would allow me to target iPhone5 up, and iPod Touch6G, iPad4 up, iPad Mini2 up. Going 64bit would be much more restrictive.
It hurts to think I might lose iPad2, iPad3, iPad Mini1, and iPhone 4, it seems harsh, especially as I have an iPad3 which it does work on! I have no idea how many of these devices are currently playing the game, Apple don’t break down the numbers to devices with that amount of granularity.
To be fair, I don’t have a current enhancement plan for the games, so it’s not like people who currently have the game will be losing out much, but it just feels wrong.
I’ll have to make a decision early next week in order to upload LoM and DDR and at least stop the rot. However, once those versions are up, I don’t know how much longer I might be able to build them again for.
Long term, I need to look at porting the games to another platform, and this is something I have spoken about before…
I have just pushed a new version of Doomdark’s Revenge out for ALL platforms. This brings all platforms in line with each other. The previous update was only released for Android and iOS. I apologiss for the delay in getting the last two versions out, but my heart and mind has just not been in it for the last couple of months.
Hopefully this will fix the remaining issues with the gameplay, and will also be the last of the 1.3 changes. The intention is that any update to follow will include some new features.
The Windows and Mac version should be showing up on your main menu now. Android/Amazon version should be ready now, or very soon. Mac App Store and iOS version will take a week in Apple Clearance, and Blackberry version usually takes a couple of days.
The changes are..
1. Fix recruitment check. Loyalty of character being approached now correctly gives +1 and when the lord is treacherous the chance of recruitment is halved – This fix should mean that treacherous lords are no harder to recruit for AI lords, which should stop lords swapping allegiance so much. They should therefore be able to focus on the task at hand.
1. Morkin’s AI attribute is reset once recruited. Stops him moving and allows him to move in tunnels. Previously Morkin’s AI attribute remained set after Tarithel recruited him. This mean that he didn’t work in tunnels very well, and had a habit of wandering off at night.
2. Tarithel can no longer be recruited away. Tarithel was incorrectly being recruited by AI lords.
3. Spell of Carudrium now works correctly. Previously this was bringing ALL characters to the location of the caster, and not just the the lords loyal to the Moonprince.
If the AI characters are still not behaving like the original, I am going to have to spend a lot more time analysing why. I can’t see any reason why the logic should not play out the same as the original ( other than the difference in random numbers ). This will involved a lot of debugging. But hopefully this version should just nudge everything in the right direction.
I’ve had a torrid few days with the updates. Only myself to blame really. I managed to release, not one, but two updates with debug code left in. Rookie mistakes! I must be more strict with the regression testing and debug development. But it’s difficult when you are working alone and trying to react as quick as possible to issues raised. This has not been made any easier by working in a Hotel where the internet access doesn’t really get going until after Midnight. Pushing out an update involves building ten different versions, and uploading ~300mb – tethering on my phone has taken a battering and my Data Plan has been boosted once already.
For the record, and just in case you have updated during that time, the two issues are; Approach will always succeed, no matter who you are or who you approach, and after attacking a stronghold, the next morning your lords will seem to have scattered. If you see this happen, you need the latest update.
iOS and OSX App Store will not have these issues as the releases had not made their way through the original update process. If you have updated Windows or Mac through the game menu, you might want to check again.
Anyway I am hoping that the latest update 1.3.4 will settle and I can take a break.
Version 1.3 has now been pushed out on all formats. You will start to see it coming live over the next 7 days. As usual, Android will be first ( probably already is live ), with iOS and OSX being last. If you have a Windows or OSX version directly from this site, or through GoG, you should see an UPDATE menu option appear on the main menu. GoG.com will also go live with the update in their time.
There are a embarrassingly large number of bug fixes in this version. Thanks to a number of very eagle eyed players, in particular Mark Wright, I have been able to fix up many specific differences between the initial release version and the original 1985 release. I also spent a large amount of time pouring over the original code, looking for anything that might alter the way the game played in a way that I might not have foreseen.
On the whole, I think we have most of them, but there is always a chance that there are a few differences still. In particular, the remake is based on the original ZX Spectrum version, and there are definite differences between the Spectrum and the C64 version. So, if you were a C64 player, then the game will not being playing quite as you remember it.
The last few weeks has really made me understand the intricacies of the original game to a level that I never fully appreciated before. It’s quite amazing the small amount of time that the original game was developed and tested in, that said, it’s because of that that you understand why the original had more problems than Lords of Midnight ever did.
There are a number of bugs or oddities that I have chosen not to fix, these are because they are in the original. To players coming to the game anew, or even returning to the game without the same outlook of 30 years ago, some of the AI logic might not make a great deal of sense. I intend to address these issues in a later version by adding different playing modes.
The intention is to have the following playing modes, Original Spectrum, Intended Spectrum, Original C64, Updated.
Intended Spectrum will fix a couple of obvious bugs inherent in the original release, the main one being movement. There are some movement values that would change the way certain races move across particular terrain, for example giants and mountains, but these were never applied in the original due to a bug that referenced the wrong table.
The Original C64 will apply a couple of AI differences to the Spectrum version, namely the aforementioned movement issue. In C64 the functionality was added, but the terrains are different than the Spectrum Intended version. The other change would be that recruited lords start at dawn in the C64 version I believe. Please feel free to call out any other known differences ( apart from the sun 🙂 )
Updated will allow me to make a number of slight AI changes.
Firstly I will change the behaviour of fighting critters. I think it’s wrong that a lord with an army can be killed by a critter, especially on not much more than a flip of a coin. Currently a Lord’s army takes damage from the critter, which should remain, but a lord should not engage the critter until the army is wiped out.
Secondly, I will add some changes to make it less likely that a lord that you attack just continues on with their objectives and completely avoids a battle. I think that if they start the night in a location with an enemy army, there should be a large chance that they remain there and engage in battle. If they are near a location with an enemy army, there should also be a smaller chance that they will attack.
This week has seen The Lords of Midnight finally get the 1.12 update across all the stores. That means that OSX and Blackberry players can now enjoy the features that other users have had for nearly 4 months. Sorry about that, the OSX issue came about because I could no longer submit to the App Store, and it has taken this long for Marmalade to fix the issue, and Blackberry was just an oversight – never noticed that I had not updated it.
Doomdark’s Revenge has now hit version 1.2 across all stores. This resolves a number of early issues and brings the remake more inline with the original. There is still some work to do on that, and version 1.3 should be pushed out later this week which will hopefully close off the remaining problematic areas. You can see a full list of upcoming changes here.
I’ll be honest, it has taken me by surprise at the number of issues that crept through the testing process. Looking at it with hindsight, not enough testing occurred that compared it to the original. I have spent a large amount of the last two weeks pouring over the original code looking for subtle things that I had previously missed, in order to try and explain the variances. For example, Shareth’s stronghold is Imiriel, but for the routing AI it get overridden as Glireon. Morkin is actually and AI lord which means he moves. And, Characters will not attempt to recruit another character while at a stronghold.
The OSX version of Midnight and Revenge both have a problem with Mac Book Pro Retina screens. I shall be looking into that. As a work around, place you laptop in one of the smaller virtual resolutions, start the app and then change it to Large Window mode in the options. The change you desktop resolution back.
Update for iOS Lords of Midnight available in the App Store… get it while it’s hot…