Battlefield 2 invades the high-tech frontlines of modern warfare. The game brings the intensity and excitement of Battlefield 1942 into the modern era with enhanced team play and the latest, most technologically advanced vehicles and weapons systems available to man.

Post tutorial Report RSS editing for BF2

Featuring animation blending using fadeIn and fadeOut times, as well as Battlefield 4 style sprint, all in the file.

Posted by on - Basic Animation

Hi everyone,

Today I'm going to show you what you can do with your file to make animations smoother, more fluid, and even give them a whole new feel. No experience besides notepad editing is required. These tweaks should work with any weapon, but some weapons will work better than others.

I have posted a few videos showing the results of my tweaks. You can them on my YouTube channel here:

If you've never taken a look inside an inc file before, you'll see that under the Animations section you can change the length of any animation using the line animationManager.length [seconds]. This is very useful to change the deploy time, reload time, or aim down sight time. I'm sure this is pretty obvious to anyone with a small amount of experience, so I'll move on.

Now, the Bundles section is where things get interesting. In this section, I will be making significant use of the lines animationBundle.fadeInTime and animationBundle.fadeOutTime to enhance the transition between any two animations. These functions are actually very powerful. For example, if you deploy or reload a weapon while sprinting, usually after the animation ends it will quickly warp to the sprint animation, which looks quite unrealistic. In order to make these transitions smoother, we'll add animationBundle.fadeOutTime 0.4 to the animationSystem.createBundle deploy and animationSystem.createBundle reload. We'll also have to add animationBundle.fadeInTime 0.4 and animationBundle.fadeOutTime 0.4 to animationSystem.createBundle still and animationSystem.createBundle sprint. Now, the last 0.4 seconds of the reload or draw animation will smoothly blend into the still and sprint animation, making the whole animation much more fluid. In addition, these tweaks will make the transition from still to sprint slower, which gives a greater sense of acceleration and weight to the animation. You can play around with the length of the fade in and out times depending on the weight of the weapon. For example, I usually use 0.2-0.3 for pistols, 0.3-0.4 for assault rifles, carbines, and SMGs, etc., and 0.5+ for machine guns, sniper rifles, rocket launchers, etc. The effect of all of this is to make the weapon handling feel more realistic and immersive, like you're actually carrying around a real weapon that has mass and momentum and not a plastic toy or a collection of pixels.

Battlefield 4 style sprint is an extension of the above. It's actually very simple: all you have to do is increase the animationBundle.fadeInTime for the sprint bundle to something around 0.6-1.0+ depending on the weight of the weapon or your preference. I also like to add animationBundle.fadeOutTime [same time] to the run bundle to make it smoother. To really increase this effect, go into Objects_server/soldiers/common/common.con and decrease Vars.Set phy-soldier-acceleration to something like 0.075. This makes soldier acceleration slower, so you will really be able to see the effect of the new animation system as you accelerate from still to walking to sprinting.

There are some other cool things you can do with animation fadeIn and fadeOut. For example, you can completely eliminate the zoom_transition animation for any weapon that uses 3D sights. This enables you to effectively mix unzoomed animations with zoomed animations from another weapon. All you have to do is delete the tozoom animation from the Animations section and the ZoomTransition bundle from the Bundles section. Now, you will use fadeIn and fadeOut times instead of the aim down sight time. Add animationBundle.fadeInTime [ADS time] and animationBundle.fadeOutTime [ADS time] to the ZoomStill bundle. You will also need to change the fadeOut times of your still, run, and sprint bundles to [ADS time]. Now, the game will automatically blend into the zoom animations when you aim down your sights. This is a very powerful tool that allows you to transfer animations from weapon to weapon while still keeping the sights lined up correctly. If you use the other fadeIn and fadeOut tweaks as mentioned above, you'll be able to mix several animations for one weapon. You can have a weapon that uses a draw animation from weapon B, a reload animation from weapon C, and a deploy animation from weapon D, while keeping its original zoomed animations. With fadeIn and fadeOut, you can have all of these different animations blend into each other smoothly and naturally.

I just want to put out a disclaimer that fadeIn and fadeOut are not perfect. Like I said, they will work better with some animations and weapons than others. Sometimes the blending will be inconsistent and you'll have hands clipping through the gun or the gun floating above the hands. The basic tips that I gave above should work fine for most weapons. If you get into the more advanced stuff like mixing animations you will really need to do a lot of experimenting, using different animations and fadeIn and fadeOut times, if you want the blending to look good. But if you can do it well, it can really make a weapon feel fresh and exciting.

If anyone wants me to post the full file for any of the weapons in the videos I posted above, I can do that. If you don't feel experienced with inc file tweaking, and would like me to mix animations for some of your weapons, I would be happy to do so. Hope my advice will make your Battlefield experience just a little bit better!


Thanks Phale! This tutorial will definately come in handy! :)

Reply Good karma Bad karma+3 votes

Thank you so much for this!

Reply Good karma Bad karma+2 votes

Saw your "Battlefield 4 Style Sprint" videos and wondering how did you do that shaking camera? I mean that camera shakes a bit when you sprint.

Reply Good karma Bad karma+1 vote
phale Author

That's the sprint animation created by the animators, you can't implement that with a simple tweak. You'll need to learn animating in order to do that ;)

Reply Good karma+7 votes

Hi everyone
I'm facing a problem with bf2 hard justice, I installed v 1.3 and on startup the screen look grey and options are appearing as "botton 1, 2, 3 ... Etc" and on loading the maps it stops on 14% (object loading) then with no warning or error it stops and I found myself facing the desktop.

I used to play it on Windows Xp and everything were ok, but now I'm using Windows 10
I'd appreciate any help or idea

Reply Good karma Bad karma+1 vote

how can I use other gun animation to my gun?

Reply Good karma Bad karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Battlefield 2
Electronic Arts
Refractor 2
Send Message
Release date
Game watch
Related Games
Battlefield 2
Battlefield 2 First Person Shooter
Related Engines
Refractor 2
Refractor 2 Commercial
Related Groups
DICE Developer & Publisher
Electronic Arts
Electronic Arts Developer & Publisher