Been playin' since Doom, Quake and all the other FPS's. Got into development with the release of Unreal Tournament (~1999) when I made an unreleased "scanner" model complete with button animations which I imported into the engine. Battlefield 2 hit me really big in around 2007. That led me onto the Battlefieldsingleplayer.com community. Then I discovered GTA and the other sandbox games (more out of interest in the genre than being a huger player of anything other than Battlefield). Then I started going back to my roots. MAME and the classic arcade scene. That's where it originally started for me .. playing with my little brother on arcade games in seaside arcades in the 80's. Still much to learn there in terms of game play - instant fun ! Joystick and two keys to hit very hard. No confusing high concepts, just good 'ol simple fun. There's a lot of development these days that could do with that kind of "just give me the fun" treatment. I also like cheese.

RSS My Blogs

Progression with my new mod, HABAI

Michael_Z_Freeman Blog

OK, if anyone is interested here my current news.

I'm looking at a solution to autobalancing bots when there are more than 96. I looked into the Python and it looks like a bug in autobalance.py (not a hardcoded exe problem). So someone on BF Editor dot org kindly wrote a possible fix. Still in testing. No promises as always, it may all come to nothing. But it would be nice to be able to balance teams when there are more than 96 bots as the FH battlefield get's so much more interesting with all the positions being filled and vehicles being used. Otherwise it's max 96 bots. Over that then the player could have interesting unequal fights with the other team ;D.

One obvious thing I have not got to so far is to learn from the AI-Fu masters themselves, AIX2. There is smoke in there from tanks which seems to knock off AI missle lock from other vehicles. This could maybe be used in FH. But this is taking a long time for me to understand as I'm having to learn a lot about Python and other insides of BF2. But it's interesting ;D.

Testing with my new mod to be called Hardware Accelerated Battlefield AI (HABAI) is progressing well. Splitting gameplay between cpu cores with the server and the client improves framerates and seems to improve AI performance because the engine is not having to scale down the AI to compensate for over usage of the CPU. In fact here is the new mod logo ...

User Posted Image

Does anyone ever have nightmares about Nazi terminators send back to change the history of the 1940's ? 8)

An obvious idea, at least it was obvious when I realised this, is to switch Coop/SP maps in game ...

User Posted Image

Clicking on a map initiates an immediate map change.

OK, enough for now.

Multi CPU Core Helper for Battlefield 2 and Battlefield 2142

Michael_Z_Freeman Blog

For those who know me or any fans of mine out there (hello?!) I'm on quite an interesting modding journey here. It's a long one but good fortune comes to those who persevere. As part of my mission to improve the single player and Coop experience in Forgotten Hope I started looking at 2142. The first thing that occurs to me is that Forgotten Hope might do well to eventually switch to the 2142 engine. It is quite different to the Battlefield 2 one, by the look of it very different. Maps load VERY fast and there have been a lot of fixes applied to the engine by DICE. It's really an entirely new version of the Frostbite engine. Forgotten Hope, knowing them, have probably already looked into this. There may be technical reasons that prevent switching, not to mention the time consuming nature of porting everything over. Anyway, I digress.

2142 has auto controllers .... the most obvious example being the minigun turret that you can drop. It's really just another AI soldier, it just can't move around. Does Battlefield 2 have these ? These could be used in Forgotten Hope AI for artillery and other assets. Another possibility is porting Forgotten Hope to 2142 just for those who want a full single player or Coop experience. 2142 can use 128 bots (at the last count). I think Battlefield 2 can use high bot numbers as well but it seems slower. I need to do some benchmarking. The AI code may be very different in 2142 as well.

So while I ponder about fixes to the AI I'm developing a utility that will allow quick starting of multi-core games for Battlefield 2 and 2142. Neither are multi-core enabled but can be effectively made to be multi-core supported by running the game engine - the server - on one core and the graphics client - what the player sees - on another. This multi-threads the entire thing. It's quite fiddly to set up. I'm still testing the performance, both frame rate and the performance of the AI. But my research has revealed that single player and presumably Coop (not tested yet) becomes a totally different experience. Action is no longer isolated to where your 24 bots on your side happen to be as the player can now up the bots numbers much more ... the number previously being limited by running on a single core. Battles now positively EXPLODE across the screen. I guess replicating the kind of thing you get in a good fully packed online multiplayer game. So now we should get to see this in offline/SP/Coop.

Forgotten Hope and the Overlooked Potential of the Battlefield AI

Michael_Z_Freeman Blog

The AI is commonly seen as something that was tacked on to Battlefield 2 as an afterthought. EA/DICE probably simply ran of time or decided to concentrate on marketing the multi-player experience. Despite this there is an extremely sophisticated AI engine underneath with most, if not more, features that were originally available in Battlefield 1942. Maybe it's because many are used to the AI bots in more traditional FPS games that the praises of Battlefield 2 AI are not sung more often. More seriously, the player can see the AI bots as servantile droids. Players expect the AI to respond to every command, or be available to every controlling whim of the player. Here is one example taken from the ESAI page...

Someone wrote: AI, bot commanders are retarded as before. I especially hate when I'm the commander, my team bots become exclusively retarded. They dont know how to use their weapons anymore, dont engage the enemies and what is most annoying- disobey my orders... Most of my time as a commander I spend on killing insubordinates. Seriously, whats up with that?


Here the player is making this classic mistake of treating his AI soldiers as slaves. Players who do this are like bad squad commanders belligerently ordering around their squad rather than just letting them get on with it. In a recent FH game I used minimal commands and sometimes did nothing and my AI squad behaved perfectly. We started moving as a true squad (you have to keep up with them), keeping distance from one another just as real soldiers do to lower causalities from grenades and so forth. Each bot was actually covering a different quadrant of the 360 degrees around us. Squad members even paused at cover while another bot moved forward. Why ? Because I was allowing them to be what they are - their natural selfs - a sophisticated AI that can "think" for itself without endless commands and demands being fired at them. It is this demanding approach to the AI that can make them seem "retarded". Actually this is really due to ignorance of what the AI is, and it simply just spoils what can be fun a fun game for the player.

Forgotten Hope (FH) is a wonderful mod, and funny as well. Where else can you hear Australians calling for artillery support in typical Australian fashion ... "Drop some artillery here will you, mate ?". This is probably one of the reasons why it won the Mod of the Year Players Choice. FH game play is semi realistic. The knock around instant-access Battlefield game play is there, but there can be more to learn for the beginner than many mods. It would be a shame if that put off new players. One of the ways that this mod could improve this is to have the technicalities of some of the game play used more by the AI in the single player and co-op mode. That way the AI could be used to train players for multiplayer as well as in the mechanics of FH game play. For example it's not immediately obvious how to rearm positions with ammunition, but seeing a bot dropping ammo boxes in front of an artillery piece might cue the player into noticing the nearby ammo class pickup. A more dramatic example is related to the semi-realistic/tactical nature of Forgotten Hope. New players often rush forward with tanks and then wonder why they only last a few seconds. Or worse, they get frustrated and don't use tanks at all, or even abandon their curiosity in FH altogether. But seeing the AI in single player holding back with tanks so they remain well protected by infantry from anti-tank soldiers and guns might reveal more of the tactical brilliance that is Forgotten Hope. There are many other examples of this like, making the AI respond to being suppressed by enemy fire.

Overall FH single player is already well implemented. There are plenty of FH maps that can be run in this mode. The AI uses most assets and can create fierce and interesting battles. Obviously many prefer multiplayer. No AI opponent is going to compete with a sentient enemy (at least not for a few decades yet). Humans are just too inventive. It's like the difference between a Chess computer and a real player. But just like a Chess computer the FH AI can be formidable. In fact the Battlefield 2 AI was designed from the bottom up to reflect the behaviour of combined arms and soldiers working together. The AI share spotting information and do things you would expect real soldiers to do on the Battlefield, and just as in multiplayer, no single soldier can win the battle alone; there has to be cooperation. However, I'm still seeing examples out there that show that Battlefield AI is not recognised in some quarters for it's capacity to do this.

Forgotten Hope recently took on a new Single Player developer and there are some interesting plans in the works for applying the ESAI mod to Forgotten Hope Single Player/Coop. ESAI uses Python scripting and the underlying strategic AI system of Battlefield 2 to alter the single player experience. Further development of the AI could provide an impressive Single Player/Coop experience that we have not seen up till now and really let this sometimes neglected side of DICE's creation really shine.

Official ! Forgotten Hope Single Player Issue Tracker Accepted by FH Dev Team

Michael_Z_Freeman Blog

Forgotten SP Hope Issues

After many months showing how Forgotten Hope single player development could be improved I am proud to announce that the issue tracker that I set up has been accepted by the Forgotten Hope development team. This tracker is for single player and coop AI issues, multiplayer is covered elsewhere. The official acceptance means there is now an improved way for single player fans to get bug reports and fixes to the FH team. Of course, as always, when it comes to submissions actually getting into a release build nothing is guaranteed.

I have always had the best of respect for Forgotten Hope as it shows the best work of many talented developers coming together to make a unique experience. Forgotten Hope has always been one of the better supported mods for Battlefield 2 single player. But there have been some interesting possibilities for an increase in scope when one comes to consider that SP can actually be a training environment for online play. Forgotten Hope's tactical focus is also something that can be developed for single player. Suppression by enemy fire has always been part of the mod and it looks like such a function could be added to suppress bot (AI) behavior. That could include smoke shells and grenades that actually blind bots rather than giving them an opportunity to show off their x-ray vision ! For example one issue in the tracker covers bots not fleeing from grenades. I suspect a simple change to a template will have them fleeing just as they do from vehicles (to avoid being run over). Add all these little fixes together and an impressive SP experience can be made.

My thanks goes out to Void and the FH dev team for allowing this to happen as well as all the FH SP dev's who have worked over the years to allow an amazing SP experience in Forgotten Hope.

BattleGroup42 1.7 Map Browser

Michael_Z_Freeman Blog

I just finished my map browser for BattleGroup42 1.7 (a Battlefield 1942 mod).


(Click for larger)

The browser: Battlegroup42.djbarney.org

The site has been accepted well by the core BattleGroup42 dev team and they have added the browser to the mod encyclopaedia.

BattleGroup42
has a 138 maps. The browser should make it a bit easier to find the right map to play. BattleGroup42, by default, has it's maps arranged by date. This puts the focus on historical accuracy but it can sometimes be a little difficult to find a map if you just know it by it's name. So the browser adds an alphabetical arrangement. I can already see an improvement I need to make. I need to add the date for each map in the alphabetical browser to make it easier to cross reference to the date in the in game map menu.

Observant video game warriors might notice that there is more than just listing of the maps going on. Each map has health an ammo locations marked as well as other points of interest. In later releases I hope to allow players to find where specific custom vehicles are so you can, for example, look back through previous news releases, pick an interesting vehicle, and then pick the map that has that particular vehicle on it and know where to find it.

The method I used to create the site was quite challenging. I know how to write Linux Bash scripts. The entire site is generated from a single script with a few custom edits to tidy things up. This has the advantage of updates being relatively easy to roll out ... for the upcoming 1.8 release for example. However the site creation was not without it's headaches (any developers will know how it is).

Thanks to the BattleGroup42 dev team for allowing me to use their official graphics, and to Eric Haines, a.k.a. [Fredhead] for his wonderful Perl script that generates the annotated maps.

Rock on Battlegroup42 !

Lack of Innovation in Online Gaming

Michael_Z_Freeman Blog

I was looking at an update from Stargate No Limits and was thinking ... "I bet this is Multiplayer only ... again." There it was ...

Someone wrote: And concerning the gameplay, it will be mainly axed on multiplayer actions, but we're also planning to make a single player part, but that will obviously take more time before we can do it ...


Oh man, something has snapped in me reading that yet again .... There must be a billion ways players can interact online that does not involve the usual routine ... weapons, run around some kind of level. Frag, frag, frag. IS ANYONE SICK OF THIS YET ? Yes, I like doing it. I've been fragging since 2000 when I started playing Unreal Tournament. There are a lot of games that cover this gameplay very well, but do we really need another ? How about some innovation. Use the technology. Look at Twitter or Facebook or any other of the zillion ways that people are interacting online ... but somehow video games are still using a decade old game play style .... WTF ?

Actually there could be money involved here (yeah I know, what's up Holmes ?) ... but lets face it, the term "Multiplayer" has become a huge mrketting term and cash cow for the mainstream video game companies. They create homogenisation and brainwash people into thinking that they "need" multiplayer. But we're not them. We're independent modders or indie game developers so we don't have to follow their ideology ... so why do it ? Be creative.

Forgotten Hope Modification

Michael_Z_Freeman Blog

Making progress with a small mod for Forgotten Hope Single Player. Watch this space ! Almost have this working now. My ".con" and ".tweak" files are stable (no CTD) so this is going well. It's been a bit of a crash course with the templates. I found this tutorial very useful ... Intro to .con Objects.

UPDATE: Here's my first release !!!

Current work

Michael_Z_Freeman Blog

Just a note for the curious. I'm currently working on ...

  • An as yet unannounced UDK project. I'm using the opportunity to do what I've been wanting to achieve for a long time. Learn how to use Blender. This is currently going very well as previous attempts have ended in frustration with the interface. Blender 2.56 series is a much improved experience for the Blender newbie. I come from a 3ds Max background. The last time I modelled was in 1997 to 2002 with a now antiquated version of Max (1.2!). However all the concepts are the same - booleans, UV's and so forth. It is amazing to see what was once a manual process is now automated in Blender - UV Unwrap.
  • An ArmA addon. I plan to customise the command bar. Steep learning curve here but I have the guts of ArmA Combined Operations (ArmA 2 + OA) spread all over my harddrive so it is only a matter of time until things start making sense.
  • Working on the Battlefieldsingleplayer.com website team.
  • For the future. Once I can model again in Blender I would like to make something for Battlefield 2.

That's it. Have fun.