Posted by Justin on Thursday, 26 August 2010 11:43pm
Announcing version 1.3 of Mobile Assault. This version adds new missions and models, and a few minor fixes. The full changelist is available, and the PSP download is available straight away. The iPhone update will come through the App Store once approved by Apple, hopefully in the next couple of days. Remember, if you're updating the PSP version, make sure you back up your mobileassault.db file and put it in the new folder to keep your player settings. As always, any feedback is welcome.
Hi everyone. I thought it was timely to make a meaningful post as to what Justin and I have been up to in the last couple of months. As much as we'd like to, we can't seem to achieve our goal of regular releases so, just to assure people that work is being done to improve this project of ours, here is what we've been doing.
Mission Editor: A huge amount of effort is going into a browser based mission editor. The tool will give us (Justin and I) and users (you) the means to create a map (including roads, trees, buildings etc) and the ability to do basic scripting actions such as deploying units, and specifying when objectives are completed etc.
It's a massive effort and, although currently requiring a bit of a UI tidy up, has certainly made making missions a heck of a lot easier. I'll admit it and say that this beast has been totally Justin's doing. I just made all the in-game mechanic. Using json seems to be a stroke of awesome.
More open ended mission endings: Where Justin has done the mission editor, my pet goal for this release was to make the missions not stop suddenly when the mission is completed. I'd dug up Star Wars Tie Fighter and admired the concept of Primary, Secondary and bonus objectives. It makes sense then, that such objectives needn't be done in any particular order, so forcing the game to finish when the main objectives were complete, had to change. This allows us in the future to implement cool things like:
Dynamically adding mission objective during a mission
Have secret objectives that the player is unaware of until the're done (such as eliminating enemies within a certain time, taking no damage etc)
Secondary objectives that might complement some kind of additional story line
Some kind of hidden objective that the user has to find on every mission, such as enemy weapons caches. Kind of like relics in Tomb Raider.
Accelerometer: I had a play at using the accelerometer on iPhone, but, although it works, I've got all the calibration/direction/sensitivity incorrect. Obviously I've taken some naive approach which is totally wrong, thus this requires a lot more work.
Wish List: I've been watching 'Generation Kill' recently, so figured we should make a Cobra Helicopter and some Humvees. Yes, enemy helicopters and alternate playable helicopters are on the todo list, but the mission editor and new mission ending system is the big deal for this release.
I've updated the leaderboard to have a "Recent Activity" listing. Its a good way to keep track of who is doing what. It automatically refreshes every minute. Check it out!
Announcing version 1.2 of Mobile Assault. This version adds a new in game message system and achievements, and a few minor fixes. The full changelist is available, and the PSP download is available straight away. The iPhone update will come through the App Store once approved by Apple, hopefully in the next couple of days. Remember, if you're updating the PSP version, make sure you back up your mobileassault.db file and put it in the new folder to keep your player settings. As always, any feedback is welcome.
Announcing version 1.1 of Mobile Assault. This version is a content update release, and includes 4 new missions. The full changelist is available, and the PSP download is available straight away. The iPhone update will come through the App Store once approved by Apple, hopefully in the next couple of days. Remember, if you're updating the PSP version, make sure you back up your mobileassault.db file and put it in the new folder to keep your player settings. As always, any feedback is welcome.
Posted by Glenn on Wednesday, 14 April 2010 7:19pm
We found out today that www.pocketgamer.co.uk made a review of our game. It was short and brutally honest, and although it gets us down a bit, it also makes us a even more motivated to implement more of the features we want. We don't feel down so much because we were expecting a good review, it's just that all the things that people want, we want too, and then some. There is just so much code to write and it's not like we're using some pre-existing 3D game engine, we're making the whole thing from scratch.
Kudos to them for taking the time to write a review though. The full review can be read here
I've just updated the leaderboard again - this time, thanks to your feedback in the comments of the last news item, I've updated the Best Times view for a mission to only show each user's best time. More people are shown on the lists now, so it should open it up to competition! Play, Upload, and watch your name in lights!
I've made an update to the leaderboard - the are now 2 new views: Best Times and By Platform. Best times shows who's got the best times on each mission. If you click on the mission number, you can see the top ten best times for each mission. By Platform shows you a top 10 listing for each platform. If you can't get to the very top, you can now aim to get higher on your platform's list! The next version of the game (1.1) will have these views built right in. I've also added an app store link to the top left of the website. If you haven't, please purchase our iPhone version to support the development of the game.
Posted by Glenn on Wednesday, 24 March 2010 5:20pm
As a little backstory, I started this project at the beginning of 2008 with the goal of using OpenGL on PSP so that I could render a helicopter using a whole bunch of hard coded arrays (yes, believe it). It was grey, flat shaded, and could be rotated using the joystick. I coded it on Linux, because that is what the toolchain was installed on, and I'm pretty sure at that stage I was using the Kate text editor. The code was based upon some Uni projects which which were also little modest OpenGL projects that only ever scratched the surface of difficulty.
Soon I started adding things to the project. I finally figured out how PSPGL rendered colour and shading (it has a few quirks). I added a giant y = 0 plane which was/is the terrain. Soon the helicopter could fly around, take off and land, and fire some projectiles. Eventually enemies were needs, so that required some basic AI. The enemies need to blow something up, so I made some buildings, then I needed a means to get in and out of the game, and that required me writing some GUI code.
Somewhere along the way I dragged Justin in and after his only semi successful attempt at porting x-moto to PSP, I think he liked the idea of particlpating in a project that was kind of working. Justin (unlike me) was keen to get into the hardware accelerated PSP math code that sped up the game amazingly. He had the thing running in mac and was able to use its performance tools to get the thing running much faster.
We evetually released our game to the PSP community at the beginning of 2009 and if you look at the archived screenshots, it looks really crap. Subsquent releases were obviusly still crap because we totally got owned in the two PSP coding comps we entered...
...Then the iPhone came out. What a total game changer. We figured we had to jump in on the action and that tangent took us more than 6 months to come out of. Yes, we totally missed the boat and now the market is saturated. The cool thing was that we now had working builds on mac, win, linux, psp, mac and iPhone, which is pretty decent going I suppose. We don't strive to release for all platforms for all releases though.
Amongst all that, so much of the code matured. My incredibly naive approach to C++, OpenGL and software projects in general is on the improve, especially with the help of Justin, who just seems to know stuff. Justin actually does all the backend stuff though (leaderboards, databases etc). The rest of the mess is mine.
One of the biggest messes of all in the GUI code and it is currently getting a massive clean up. It's so bad, that I fear I'm giong to break a lot of functionality that will take an age to fix. It's coming along pretty good though, with only the odd hack here and there.
At the same time we've been making some more structures and units. Guard towers, communication dishes, a Chinook, truck and hopefully a 2S19 Msta (google it). There are others, but the end goal is to use them in new missions. For another example of a mess that needs to be cleaned up, it's mission actions and events. That will be next on the list of things to look at.
We're announcing version 1.02 for PSP and iPhone. This new version includes a few improvements and bug fixes. The PSP build is available now, and the iPhone update will come down through the app store once approved by Apple. Check out the changelist and download. Remember, if you're updating the PSP version, make sure you back up your mobileassault.db file and put it in the new folder to keep your player settings.
Posted by Justin on Sunday, 28 February 2010 12:34am
We've released version 1.01 for PSP. This is the first build for the PSP in quite a while. It includes heaps of new features since version 0.04, check out the changelist and download.
Posted by Justin on Wednesday, 17 February 2010 3:58am
After a whirlwind approval by Apple (just 4 days!) we've released the initial version of Mobile Assault for the iPhone. Click below to purchase.
The plan from now is to do a PSP release that tidies up the outstanding issues from the iPhone port, and release that as 1.01. That shouldn't be too far away. Below is a video and a screenshow of the 1.0 release.
Posted by Justin on Sunday, 31 January 2010 4:26pm
You may have noticed a new look for the website. We're gearing up for the next release. Most of the features going into this release are complete, just tidying up to go. Later today we'll be doing some screenshots, so check back. I'm preparing the server to take the leaderboard live as well. Time to get excited!
Posted by Justin on Friday, 29 January 2010 2:49am
I know its already the end of January, but this is the year that the game will gain some traction. This year, the game will be available in the app store for your iPhone. But PSP owners, don't fear. The iPhone launch will be (hopefully) simultaneous with a PSP release. It's been a long time since we last did a release for PSP, hopefully we haven't been totally forgotten. I loaded up the last release version (0.04a) and played it the other day, wow, we've come a long way.
I'm working on a new look for the website, which will probably launched around the time we take the online leaderboard live - probably in around a week or so. Hopefully around then we'll get time to put some teaser screenshots (maybe even a video *gasp*) of the latest build. Watch this space.
Posted by Justin on Tuesday, 22 December 2009 8:21pm
We've made some good progress on the iPhone port of the game. Last night I completed the port of our sound engine to OpenAL for the OSX and iPhone builds. Our list of outstanding items is getting shorter.
One of the things I've set up to help us get a build out sooner is a continuous integration system. It hooks up to our SVN server hosted by Assembla and every time someone commits a change, it builds the iPhone, PSP, Mac OS X and Windows builds. I'm using TeamCity, which I can't recommend enough. It'd be cool to have a traffic light on the website that shows the status of each of the builds, but I don't know if I'll ever get that setup.
Posted by Glenn on Thursday, 3 December 2009 2:58pm
I never thought I'd get on the twitter train, it just seems too gimmicky, yet today, Justin made an account and I posted to it (http://twitter.com/codetactics). That instantly raised the question about the use of personal pronouns, so we'll have to work on that one.
Basically the whole twitter idea seemed like another way of keeping people interested in the game, despite (or because of) the fact that it's been 6 months since our last release. There's a good chance that someone interested in putting homebrew on a PSP will also have a twitter account; maybe I'm mistaken. Twitter seems like a decent way of measuring how many people care about what we're making.
On the development front. Upgrades, Airstrikes (now called Tactical Support), online leaderboard.
Another month, more code, yet the feeling of being no closer to the end goal. Time just melts away it seems, which proves that we're too busy with life's other demands, such as our real programming jobs, those other jobs that pay that aren't programming jobs, and then just those other jobs that have to get done to keep life in order.
It's a month on and we still have no new name for a game, although a thread we started at QJ at least allowed us to bounce a few ideas around.
Progress wise, Justin's been making an online leaderboard and I've been extending the airstrike system so that we can have more than just an A10 wreaking havoc.
Random observations for the last month include observations from Indie iPhone devs that the piracy rate for their games are as high as 90% which is quite impressive. When/if we finally get this thing on the app store, I'd love to know how many players are too tight for 99c. Anyway, it's not like we'll ever charge for the other platforms though, unless someone stupidly offers us a large wad of cash for our code or something.
Posted by Glenn on Thursday, 8 October 2009 7:54am
...quite a bit I reckon. Not as all important as an actual playable game, but you want something that is memorable and somewhat flexible. By flexible I mean you don't want to inadvertently tie yourself to particular game concepts. i.e. maybe the game will evolve so that you don't necessarily fly an AH-64. What happens if the game suddenly becomes some great big sandbox where you get to land your helicopter, then be able to cruise around in a tank?
Why do I bring this up? Well, a short look at this shows that 'Apollonia iPhone' has pretty much been taken. The original reason I came up with this name as it seemed exotic and bad-ass. My enthusiasm for it wained when I realised there were many other interpretations and stories around the name Apollonia, so it started to seem less bad-ass.
So now we're trying to find a new name, and it isn't easy. If anyone of you guys out there want to spin some ideas past us, then please let us now with a 'comment'.
Posted by Glenn on Friday, 18 September 2009 9:24pm
It's been over a month, so about time I made another status update. In between work and more work, Justin and I have been working at getting Apollonia going on the iPhone. Unfortunately this means we've totally ignored the PSP for quite some time. In fact, I've basically broken the PSP build because I was playing around with model rendering code. PSPGL requires some workarounds which I need to investigate.
But it's not all bad for the PSP. I've noticed that Apollonia on the 3GS runs comparably, if not a little slower than on the PSP. This means we have to optimise the heck out of game in order to ever get it accepted on the app store. Those optimisations can then be caried forward to the PSP. So hopefully no more overwhelming particle effects. I was working on that now until I got distracted by this.
Here's a screen shot of the game running in the iPhone simulator. The HUD is just a mockup so that we had something to push.
It's been almost a month so I thought I owe it to everyone who looks at this site every now and again as to what is going on.
The answer is lots, but unfortunately nothing worth showing off at the moment. Basically we've been working on ways to keep the game play going at a cracking pace without crippling the framerate. I've noticed from some of the iPhone helicopter shooters out there that the missions are pretty finite. By that I mean everything in the world is as it is and once everthing has blown up, that's it.
There's things wrong with this approach. The first is that you can't surprise the player because essentially the numbers (and sometime the positions of units) remain the same. Another is that if you want lots of units in the world, you have to create them all at once. This kills the frame rate.
Basically we've made it so that the world slowly gets cleaned up 'dead' units, which are then returned to the buffer so that they can be spawned again. This cleans up the amount of things in the game world and allows us to keep the action going and the FPS decent.
The next step of course, is to put all of this to some use.
The other thing we've been working on, which I'm sure will please a lot of people, are upgrades. I admit it is in its infancy, but basically we've totally restructured the way weapons are made and added to units. Creating the ability for the user to do this on screen is another challenge though.
I'm not sure if we mentioned it before, but we're trying to make this game work on the iPhone. It's an absolute kick to the crotch everytime I (I don't know about Justin) see another helicopter shooter on the App store. They are generally very well done, although lucky for us I still think we can bring something new to the scene.
A few news posts ago I mentioned how with our 7th place (ha ha) in the 2009 Neo comp, we won a PSP Motion Kit. Well, I just had a play with it and found out two things
1. It totally kills the sound. I assumed it would just render the headphones useless, but obviously there's more going on than just the use of headphone remote connections
2. It only works on 1.5 firmware apparently.
If there is something I've learnt in industry in the last 12 months, is that you have to prioritise, and when you have a seemingly cool device that is only going to work for people with a PSP phat who also have 1.5 FW functionality, then that excludes a huge amount of players. Then, those players also have to own one of these devices, and not mind having absolutely no sound!
I did get their little bouncing ball app to work fine in 1.5 FW mode, but if anyone can enlighten me in how to compile it for non 1.5, then let me know.
So after putting off trying this thing for so long and then finally giving it a go today, I was a bit disappointed. I suppose I can now get on to more important things, like gameplay.
Now that we are on another development cycle, we have to decide what to do next. Justin and I have been discussing the merits of scripting over the last few months and decided that the best way to increase the amount of game content, including missions and units, is to allow scripting. This means that users can also have a go at making their own contributions to the game.
The consequence of this is yet more code refactor. We seem to spend a lot of time ripping old code out and putting new code in. The fact that this is relatively simple means we must have done something right, but the mere fact that we have to chop and change at all is a good indication that a lot has been learnt on this project.
In case you're wondering, the scripting language we are looking at is Lua. If it's good enough For Star Wars: Empire at War, then it's good enough for us.
Just letting everyone know that all the final entries are in for the Homebrew Idol 2 comp. There looks like a great selection to help burn some of your free time.
...and if you think Apollonia should win, then vote for it!
Regardless of the result, Apollonia and its underliying libs aren't going away anytime soon. There is way too much stuff to do on it yet.
Courtesy of a 5 day bug fix period for all entrants to the Dashhacks Homebrew Idol 2 comp, we have made some code optimisations and re-released.
We're pleased to say though, that this is the fastest/smoothest the game has ever run. Sure, when the action gets insance, the FPS suffers a little, but it is definitely an improvement over prior releases.
Changelist for Apollonia 0.04a
Code Optimisations
Explosions from tank shells hitting buildings are visible more often
Thinner air strike targeting circle
New known issue is when everything except the hud turns white. I've had this happen once on "Instant Action" but nowhere else.
Chase camera - The default camera view is from behind the helicopter, rather than from isometrically above. The original (retro) camera view can be selected from the controls screen.
Player profiles - Player names and data can now be saved to a database.
Enhanced particle effects - These are used for missile impacts and bullet to ground impacts.
Airstrike! - An A-10 Thunderbolt II can be called using L+R trigger. Includes audio.
New Apache model.
Ingame messages can be printed to the HUD.
Briefing screens - To add meaing to the madness, there are short mission descriptions for each mission (excludes Instant Action).
Three new missions.
Friendly tanks.
Player Statistics - Mission data is saved to a player's profile. This includes flight time, accuracy, deaths etc.
Post mission score board - The score board summarises statistical data of a just completed/failed mission.
New Ammo and Health display on the HUD.
The player helicopter can start some missions airborne.
New factory building.
Existing buildings have been scaled more accurately.
Tweaked existing missions so that the player is less likely to be overwhelmed.
Under the Hood (for your interest)
Particle Engine, Terrain and rendering optimisations.
Splash Screen fixes.
You can now shoot through destroyed buildings so that units inside them can be hit.
Using the sqlite database for player data.
Known Issues
Sometimes there is incorrect textures loaded (very elusive).
Three Player Profile limit.
High memory usage. Beware of too many PSP background processes.
Suspend mode not supported.
There is a delay between the mission being won/lost and the scoreboard being visible. This is because of the time taken to write data to the database.
Slow load times; about 8 seconds (minus Sony logo).
Some instances of near plane clipping of the terrain resulting in small amounts of unrenedered terrain.
I forgot to mention it, but recently our *cough* 7th place prize from the NEO competition arrived. From the prizelist on offer we selected the PSP-Motion kit.
This chain of events was all kind of amusing because we of course were after the $300US prize and because extra points were awarded to those who supported the motion, we endeavoured to support it. There was no way we were going to get it to work of course, because we didn't have the device, nor knew anyone who had one. However, by doing so crap in the comp, helped by no PSP-Motion support, we ended being offered lesser prizes which included the PSP-Motion.
In short, I hope to get the PSP-Motion running with our game some time. Goodness knows who has forked out $x for one, because I don't even know any games that support it. It's a hilarious thought that our game could encourage people to go out and buy one. We're fortunate to have gotten one for free.
Sorry guys, bit of bad news. We were hoping to have 0.04 released today (being the end of May). It'll be next weekend (which also lines up with something else we'll announce with the release). It will also be PSP only (the other platforms might follow later as 0.04, or all together in 0.05, not sure yet). We've done some cool stuff on PSP and the other platforms will take a bit to catch up.
I was amused to read in some forums people saying something along the lines of "this game is not 3D." I suppose the fact that the camera is quite far above the helicopter for the sake of visibility of the battlefield had something to do with it. It was either that or they questioned why we bothered making a 3D game if using such a camera angle.
Well, if anyone has played GTA 3 or onwards, they will know that camera is king and adds a bit of theatre; not that a camera at the door of the car is a very practical viewing angle, but it certainly looks cool.
Anyhow, we implemented a basic chase camera which is in need of some smoothing. Regardless, it offers a different perspective of the the game and is a more appropriate angle when using accelerometer input.
Here we go, a vid of something new. We got one one of Glenn's ideas here: an airstrike! Watch it smoosh those tanks! Like it? Leave us a comment. Wanna have it? Check back often to get the latest updates, and hang tight until the end of the month.
Amongst all sorts of little misadventures, such as my PSP breaking (well, it has this power issue where it either turns itself off or doesn't turn on at all. No, it's not the battery), we're well on our way to making another release at the end of the month.
As you might have noticed, we got ourselves a youtube account to start posting vids to show off some interesting stuff. You could say we are just trying to do what we'd like other homebrew projects to do, and that's to show off what they're up to and make it look like their project isn't dead.
On a totally different note, I was a bit gutted to see a game called Hellfire released for the iPhone. It looks like a great game (you can see it at http://www.astraware.com/iphone/hellfire) and has lots of things we'd love to be able to do. We're getting there in small steps but it's a amazing how long it takes to develop a game beyond a certain point. However, we have a few different ideas as to what type of game features to add, (are lots of explosions features?) so hopefully, when we one day make an iPhone port, we will be able to differentiate ourselves from the other helicopter games out there.
We've signed up for a youtube account, so we can put up some teaser videos of what's in development. For a bit of a test, I've put a gameplay video of 0.03! So its all stuff you can download right now, but the next video will contain some surprises, I promise!
Alright, lets get down to business. 0.04 is due out pretty soon, so we're gonna try and get a bit of hype going. Glenn wants to make some more news items and blog a bit, so I've tidied up the admin interface to make it easier for him.
While I was at it, I added an RSS feed for our news. You can follow it at http://www.codetactics.com/news/feed. If you run a PSP news website, you should now be able to subscribe to our feed, and get our news right after we publish it! Let me know in the comments if it's working, or not working. Also let us know if you want to hear more about what we're doing for the next release, or if you want to hear more details about our development process. I always enjoyed reading strmnnrmns dev blog, if you'd like to read something like that here, let us know.
Posted by Justin on Tuesday, 21 April 2009 11:00am
We've been pretty quiet lately - but don't worry, we've been working super hard on the next release. We came 7th in the NeoFlash spring coding competition, which we were a bit disappointed with. It was not so much the result, but the general lack of feedback or enthusiasm. But instead of depressed about it, we're going to do a huge release which we're aiming to release on the 31st of May. I'm pretty sure that this release will get people enthusiastic. We'll be posting some more news (with screenshots/vids) of this release before then, so check back often!
This version is a bit of a maintenance release. We've provided some backward compatibility with OpenGL, so it even works in VMWare! We've also increased performance on the PSP. Check out the rest of what's changed in the changelist, see the new screenshots, and, of course, download! Leave us any feedback in the comments of this news post! Here is the latest screenshot!
I assure you that we are working on an 0.03 release for about the 15th March (That's our 15th March, which will likely be your yesterday in relation to our today). Unfortunately though, we are not able to cram in the 101 things that we wanted to do, thus we've settled for a few. The first one is a better particle system. Let's just say that if that code was a kitchen, then I just cut the whole thing out of the house and replaced it with a new one. There won't be any noticeable difference this time around, but it will make it a heck of a lot easier to do cool stuff later.
Another tweak are PSP optimisations. Justin has this thing for low level code that I dare not touch. (Did I mention he bought an iPod touch). Anyway, hopefully the PSP version will be faster in the future so that it will run as smooth as on the computer. Well, that's the goal.
There are some other subtle changes, but no need for me to bore you with details.
Posted by Justin on Saturday, 14 February 2009 3:15pm
It appears our 0.02 release on the windows platform had a few hiccups... (It didn't run if you don't have Visual Studio 2008 C++ installed...) I've fixed up the problem, and it should be all good now. (Anyone who downloaded before now will have to download it again). Let me know in the comments if there are any more problems.
Posted by Justin on Monday, 9 February 2009 12:44am
After a bit of a push at the end, its finally here! Check out whats changed in the changelist, see the new screenshots, and, of course, download! Leave us any feedback in the comments of this news post! Here is a screenshot to get you salivating!
Posted by Justin on Sunday, 8 February 2009 6:27pm
I've updated the website again, so now you can add comments to news items! If you have any feedback for us about the next release of the game, just comment on the news item when it drops!
Posted by Justin on Thursday, 29 January 2009 2:59pm
We've set a release date for version 0.02 - we're hoping to have it up for your gaming pleasure on Sunday the 8th of February. It's not going to be a huge release, but there are a couple of important bug fixes, as well as adding support for Windows, and some other eye candy you'll have to wait to see. We've tried to find a balance between making engine improvements (which you can't see) and making gameplay improvements. Hopefully I'll have a feedback form up on the website so you can let us know all your ideas for our next release!
Posted by Glenn on Wednesday, 21 January 2009 6:33pm
Just letting everyone know that we're busy making v0.02 (while we are not navigating the rest of life). As well as some optimisations, we plan to get in a little eye candy and some better missions. Maybe missions that are a little easier? I assure you, mission 1 can be beat. Also ready to go is a windows build. Is anyone even going to use that?
Posted by Justin on Saturday, 17 January 2009 11:46am
I've added a news section to the website, so we can let you know what we're up to in between releases. Don't worry though, we're still working hard on the game as well - Keep an eye out for an upcoming announcement of whats going to be in the next version!
Posted by Justin on Sunday, 11 January 2009 10:37am
We've just released the first version of Apollonia, our multiplatform, 3D, top down, arcade style helicopter game. Check it out over at the Apollonia page.