Development

BZFlag 2.4.0 “Wake the Dead” released!

BZFlag 2.4.0 “Wake the Dead” has been released.  After BZFlag 3.0 development hit a brick wall, Bullet Catcher helped get the project motivated again by producing a plan to get a new release out that was based on 2.0.x.  So what we did was bring back selective features from the 3.0 development tree that were low risk so that we could get a successful release out.  We also, of course, put in some other fixes and features.

The big thing to note is that BZFlag 2.4.x is not compatible with BZFlag 2.0.x. You cannot use a BZFlag 2.4 client on a 2.0 server, nor can you use a 2.0 client on a 2.4 server.  Servers will slowly upgrade to the new version, and some may run both versions of their maps for a while.  There will be a transition period of several months.  Windows and OSX users will be able to easily keep both versions of the game installed and in use.  Linux users will have to do a bit more work for that, but it’s still possible.

Server owners will have to make some minor changes to their configuration files for BZFlag 2.4.  They will also have to update any of their third-party plugins to the new BZFS API format.  We have documented the upgrade procedures here:

http://my.bzflag.org/w/BZFS_2.4_Upgrade
http://my.bzflag.org/w/BZFS_API_2.4_Upgrade

Some of the major features include:

  • The ability to turn off teamkilling on the server
  • The OpenFFA game mode which is a teamless FFA, meaning you can shoot anyone regardless of color
  • Per-object ricochet, which lets map authors selectively enable ricochet for individual objects
  • Removal of local authentication
  • Ability for the server to force flags to be hidden on the radar
  • Fog can not be turned off
  • The screenshot code does not lag the client badly anymore
  • The ID flag identification was moved to the server
  • Public servers must have a -publickey
  • Polls only count users that are able to vote

Check out the ChangeLog for more changes.

Here are the downloads:

UPDATE: The Mac OSX build is now up!

BZFlag 2.4 is in beta!

BZFlag 2.4 is currently in beta, and we’ll soon be moving to a release candidate.

Find out info about the beta on the BZFlag forum thread.

BZFlag 2.3 planning

Some serious thought is being put into getting a new release of BZFlag out.  Essentially it’s been decided that version 3.0 was too big of a jump with far too many big changes.  We got lost in all of the bugs and features and couldn’t get a release out.  Feature creep from the last five or six years caused us to end up with something we couldn’t easily fix.

Now the plan is to move trunk (2.99.x/3.x.x) out of the way, copy v2_0branch (2.0.x) into trunk, and then relabel the new trunk as 2.3.0.0.  Then we’ll start to bring back specific low-risk features from 2.99.x and put them into 2.3.x, which we’ll release as 2.4.0.0 (or whatever we decide on).  The idea is to push for getting a release out in a month or so.  This will mean there is less time for feature creep to take over again, which in turn will reduce how much testing we have to do.  Less new features = less chance of breaking stuff.

It won’t be BZFlag 3.0, but it will be a new version that has features worth upgrading for.  Here’s a wiki page that we’re working on that covers the plan: http://my.bzflag.org/w/BZFlag_2.3

We’re also going to work on migrating all of the web services (forum, list, wiki, main site, etc) to a different server that will be a bit more … responsive.  The existing server has been less than ideal for a long time and has hit various resource limitations.  It’s not that we’ve outgrown the server, but there is just a couple resource hungry processes (coughirssicough) on the old server that chew up lots of RAM (hundreds of MB) and make everything else very slow.

So, I’ll be working on the migration over the weekend here.  During that time, there might be some temporary outages.

BZFlag geolist source released

I set up a repository for the geolist source code.  I released the code under the MIT license.  You can go get the code at Bitbucket.

Here’s some additional features that I might add in the future:

  • HTML5 geolocation support to display servers sorted by distance.
  • KML file generation
  • Integration with Google Maps and/or Google Earth (the Google Earth plugin in the browser, at least – but could be for the desktop application as well)
  • Support for the MaxMind GeoLite City database.

Note that it does use a couple files (and will soon use more) from another open-source project of mine called mvcish.

Alpha release – BZFlag 2.99.60 SVN r21252

BZFlag 3.0.0 is in the “alpha” stage right now. I have made a Windows installer of the latest development code, and a couple other people made various versions of an OSX build. Linux users (and OSX users that can’t run the builds below) can build a client with the source from SVN. You want the trunk code.

There’s a forum thread over at the BZFlag forum about this as well.

Downloads:

As I don’t have an Intel Mac (much less a Mac that boots) I can’t verify the OSX builds will work as noted, soooo…. have fun! :)

If you encounter bugs or problems, please check if they have already been reported. Here are some places to look:

And feel free to mention/discuss the bugs (known or otherwise) on our #bzflag IRC channel. If you want to help contribute any fixes, that is welcome as well.

Happy tanking!

UPDATE: Removed “Tiger” from the note for mrapple’s OSX build. Someone reported it didn’t work on Tiger.

April Fools and BZFlag 2.0.16

First off, I’d like to say that ALL server owners should upgrade to 2.0.16 as soon as possible. There was a security flaw found that allows player impersonation to occur. It was fixed in the server code as of late March. I would say a good chunk of the popular servers are already running recent enough code to prevent the exploit. But over half of the running servers are still using an older version.

So anyways, if you didn’t know, BZFlag 2.0.16 (named “No foolin”) is out. Source packages and a Windows installer are available for download. An OSX package may or may not happen. There are a couple notable new features in the client. There are a few other minor changes as well.

First, you can use the mouse to control the view in observer mode. If you are in either tracking (tank or flag) or roaming mode (press F8 to cycle modes), you can click and drag the mouse to control the view. You can use the left, right, and center (press the mouse wheel) to move differently. You can, of course, continue to use the arrow keys paired with the modifier keys for observer movement.

The second is a new feature back ported from the development code called “shot length”. This gives the bullets a different look. They will appear to have a tail. You can enable this feature by adjusting the Options > Effect Settings > Shot Length setting. View the full post for screenshots of the new bullets, as well as talk about my April Fools prank. Read More »

BZWorkBench r20937 Win32 Build

We recently picked up a new developer named Runic that had started off by submitting some great patches to the BZWorkBench project. Since been given commit access, he’s added and fixed a good number of things. Here is some screenshots:

Louman's H2O in BZWorkBench r20937 #1

Some of the objects don't show up properly, but it looks way better than it used to. Previous to Runic's fixes, I think everything showed up white.

More screenshots, information and download links in the full article. Read More »

Plugin release – teamFlagControl 0.1

I’ve been toying with the idea of a plugin that can control various aspects of the team flag in CTF mode. Well, as of today, I have the first release of that plugin available. It’s pretty basic so far. Currently it only has one feature. It can control where the team flag will spawn. A new object of type ‘teamflagspawnzone’ will need to be added to the map. A lot more detail is available in the README file provided with the source. You can download the plugin in the full article.

Read More »

BZWorkBench on Linux

A few days after posting the Windows build of BZWorkBench, I was able to fix the build on Linux. There are still some issues with building on Mac OSX, but I can’t debug that as I don’t have OSX. Anyway, here are the steps for compiling on Ubuntu 9.04. It should be similar for other distributions. Instructions are in the full article.

Here’s an example with HiX loaded:

BZWorkbench on Ubuntu 9.04 with the HiX map loaded.

BZWorkbench on Ubuntu 9.04 with the HiX map loaded.

Read More »

BZWorkbench r20544 Win32 build

For those of you on Windows who want to try out the latest revision of BZWorkbench (the map editor that has been created over the course of two Google Summer of Codes), then I have a binary package up. There’s no installer – it’s just a zip file containing the files. This is built from the stock SVN revision 20544 code. You will also need the Visual C++ 2008 SP1 runtime, which I have linked below as well.

Download BZWorkbench r20544 Win32

Download Visual C++ 2008 SP1 ATL runtime

There’s probably still lots of issues with it, so please report them to the official BZFlag bug tracker. Also note that as of this revision, building BZWB on Linux and OSX doesn’t seem to work.