My name’s John Mansir but round these parts they call me magus. I’m 18 and I live near London, and back in March I joined the First Strike team as a coder. I’ve just finished school and hopefully I’ll be going to university in a few months to study physics. I started modding nearly 4 years ago by joining the Battlefield 40000 team for battlefield 1942. It’s been an awesome journey and I’m really glad to have ended up here at First Strike. My job on the team now mostly involves coding vehicles and annoying Woodrow.
I know coding can be boring and you usually don’t hear much about it but I figure there must be at least one person out there who’s interested in how we code vehicles! To that end in this dev diary I’ll show you how we created the B wing starfighter. Don’t worry, I won’t subject you to big boring chunks of code, there will be lots of pretty pictures along the way!
Step 1: Get model & texture.
The first step in this process is to retrieve the art assets from the people who created them and load them into 3D Studio max. This time they were kindly provided by my extremely skilled colleagues RedMonkey and Rybot:
Here’s a shot of the model first loaded up in 3d studio. As you can see from the window on the left it’s in a mish mash of unorganised pieces! These need to be organised into a proper hierarchy so that the battlefield engine knows exactly what to do with all the bits.
Step 2: Plan out hierarchy and organise the pieces in max
Now that we have the vehicle in max, we have to plan out how the vehicle behaves. To do this we have to find out what the vehicle is like in the movies. I put out a request for background information on the B Wing, and my colleagues Talon and Dutch_Razor provided me with a whole slew of stuff about weapon loadouts and special abilities that the B wing has. The B wing has 2 important features that will be important to our hierarchy; firstly, it starts off in a horizontal position and folds out into a vertical flight position like so:
Secondly, according to background lore the cockpit is gyroscopic, meaning that it always faces up regardless of which way the rest of the ship is facing. After some deliberation we decided that a ship like that would be almost impossible to fly; we came up with a compromise in that the cockpit should only be gyroscopic when the craft is folding out into flight position. As you can see from the above picture, the cockpit is facing upwards in both positions. Now we know what has to be done, we can plan out the hierarchy.
In the battlefield engine, each separate piece of a model (known as an object) has to have a certain object type. For example, you can set something to be a ‘PlayerControlObject’. These are the base of each vehicle. Each PlayerControlObject corresponds to one position on a vehicle, so in a jeep you would have one for the driver position, one for the passenger position, one for the gunner position and so on. There are many other object types, including ‘GenericFireArms’ (this is just a fancy name for any kind of vehicle mounted weapon), ‘Wings’ (These are invisible objects that generate lift to keep air vehicles flying), ‘RotationalBundles’ (Objects that rotate by player control are RotationalBundles, for example the steering wheel in the jeep), and ‘LandingGears’ (These are a special kind of Rotationalbundles that can rotate automatically when the vehicle reaches a certain speed/altitude, hence their usefulness as landing gears). Since we want the entire ship to rotate from horizontal to vertical automatically when it reaches a certain speed, we’re going to be using a lot of LandingGears!
Each vehicle must have a PlayerControlObject (PCO) as its base, and they can not rotate. Therefore our PCO will be invisible, and attached to the invisible PCO will be an invisible landing gear. All of the other objects will be attached to this invisible landing gear meaning the entire ship will rotate from horizontal to vertical as we planned. The wings are also LandingGears; they will fold out and go from a position held at the side of the main hull to a fully extended position as the rest of the ship folds out.
Unfortunately with this setup it means that the cockpit will also rotate and will be facing the wrong way when the ship has fully folded out. To counteract this, we’re going to attach another invisible LandingGear to the first one which rotates the opposite way. (Think of this as if you were standing on top of a big spinning plate. If you spin the opposite way at the same speed as the plate then you will always face the same direction. We are going to use this principle to keep the cockpit facing the same direction). Attached to this second invisible landing gear are the cockpit model and the player camera. Finally, we need to attach the GenericFireArm weapons, the Engine, and the ‘Wing’ flaps to the main hull object.
Now we translate all of this into 3d studio max and we end up with this (note red annotation is mine):
This is now ready for exporting into the battlefield editor.
Step 3: Tweak in the battlefield editor
Now that we’ve exported the vehicle from 3ds max into the battlefield editor we can start to change and tweak all of the object properties until they work just as we want. Here’s a shot of the B wing in the editor, and in it you can see me tweaking the ‘GearDownSpeed’ property. Most properties are self explanatory from their names, and as you might have realised this one controls the speed below which your vehicle has to be before a landing gear will deploy itself.
There are many many properties to set and this is one of the most time consuming steps in the whole process. It takes an especially long time because to tweak certain properties to their perfect value you have to boot up bf2142 again and again and again to test until you’re satisfied. It can get frustrating!
Step 4: Polishing off
After tweaking it in the editor the next step is to put it in an in-game environment and see if any changes need to be made. This is usually lighting/sounds and other minor tweaks to handling. At this point I retrieved sounds made by Ulversial and added them to the weapons and engines on the B wing. Also at this stage we need to add any extra effects, for example engine glows and ‘damagestates’ (These are the smoke and fires that appear when your vehicle is damaged). Here’s a shot of me testing the weapon laser effects and the engine glows in-game:
Finally after I am satisfied that everything is complete I hand over the vehicle to Blitz and Woodrow for them to do any executive tweaks or add anything that I might have forgotten. Once this is complete the vehicle is added to the game for our testing team to fly around in to ensure that it works properly. Any complaints from the testers are addressed and the vehicle may be further tweaked. As you can see, not including the testing team, coding this vehicle involved the work of 8 developers so it is very much a team effort to produce each vehicle. It’s an awesome thing to behold and I love seeing so many people’s work come together in the game.
Anyway I’m sure you’re bored by now and this is getting long so I’ll bid you farewell and see you on the battlefield!
FSDev| Luuri (one of our unsung heroes behind this mod) has created some incredible new Wallpaper for you all to enjoy. Now depending on what faction you are aligned with, the choice is yours, just make it the right one Trooper!
My name is Daniel “Yoshiboy” Holden. I’m 17, from London in the UK and reasonably recently I signed up to First Strike as a texture artist.
I actually know lots of these guys from way back. Galactic conquest was the first mod I ever played and the first thing that got me into modding. Quite late in GC’s development I got a place as an alpha tester which was great fun and once GC finished I went my way and spent some time making mods elsewhere and for lots of other platforms. I’ve always been following FS and after I finished one of my projects I decided it was about time to start on something using more recent graphics and development techniques to keep myself on the ball. First Strike was the perfect thing.
I still can’t really get used to it. It is pretty weird to be working with some of my modding heroes from GC. Although it is great to be working with lots of new guys who are really brilliant and friendly, it certainly was a warm welcome onto the mod. It is great to be working on something this large with all these guys who are so talented.
I had a little BF2 modding experience so the guys threw me in at the deep end and I worked quite a lot on skinning Mos Espa. This was a learning experience and it is great now because they have started to give me some of the more exciting models to skin like the Y-Wing and the Nebulon B. I also should thank Rybot and Jay for these, Jay for tweaking the model and texture of the Y-wing and Rybot for making the capital ship textures, without those two the models wouldn't be nearly as sublime.
Hopefully in the future I can get into real game development and I’ve no doubt that FS should act as a good launch pad – I’m doing better graphics now than I ever have and I’ve learnt such a lot in a small amount of time. Anyway, as Woody keeps pointing out I still need to get a copy of BF2142 (is it healthy getting more pleasure out of developing than playing?) and once I’ve done that I’ll hope to see you on the battlefield!
The team here at FirstStrike is gearing up towards a release very soon and to that end we have created a demo trailer for you to enjoy. The Demo Trailer was premiered on German TV games show GIGA TV last night. It depicts the land and space battles you can play, moreover the Maps Escape from Hoth and Mos Espa respectively.
Hello there, my name is Stephen Brennan or steb74 and I’m the music composer for First Strike.
Following the layout of the other dev diaries, I’ll just tell you briefly about myself. I’m from the north west in the UK but have been living in Madrid for about a year. My age? Well, I’m younger than 34 but older than 32 ( it’s hard to believe Star Wars has been a major factor in my life for 30 years, a long time ago indeed ! ) I was only 3 when I saw Star Wars so I must admit it’s difficult to remember the exact emotions of the experience but I was 6 when I saw The Empire Strikes Back and life has never been quite the same, it was the most magical moment of cinema in my life and I imagine will remain so. I’ve been passionately interested in music/movies/tv and games for as long as I can remember and spent most of my late teens and twenties performing and recording with various rock/blues bands, while at the same time writing orchestral type work for various other projects.
I guess when I was about 27 I decided I just wanted to pursue a music career composing and have spent my time since then working on my writing. I'm currently writing the music for a theatre production of The Jungle Book for a production company in Madrid. All my life I’ve been addicted to the combination of music and imagery and find that the results can even sometimes create real life magic - surrendering ones senses to the creativity of others is a magnificent pleasure of life indeed.
It’s still early days for me as a composer but I believe I do have something positive and musically effective to offer and I guess that’s how I ended up in this neck of the woods with this fine group of rebels. I’ve only been involved here since about March of this year ...I think, but even in that time and from the solitude of our own keyboards, it’s wonderful how warm friendships can blossom when a common love and goal is in the sights.
I've had great Sunday night chats with Ulf and Mika. My responsibility at the moment for First Strike has been to create music for the menu and also for the various loading screens. I imagine for the first release that this is the only role the music will play. However, I’ve read various questions on the forums and also there has been discussion among the devs about the role of music in actual gameplay. If done wisely I believe music can really enhance the immersion of the gaming experience and obviously if done poorly it can just simply annoy and get in the way. I’ve always been a bit of a ‘ Han Solo ‘ when it comes to gaming and don’t have any real experience in these 40+ player battles, so for me the music has never really got in the way as such but I do understand how in a huge multiplayer experience music could become too intrusive and cease to function as it should, enhancing the unfolding drama.
I think when the first release is out we will be able to continue exploring ways in which music can work ingame and function effectively. I’ll return to these thoughts though when there is actually something more concrete to discuss and explore. For the time being, here is some music for the Mos Espa loading screen. This piece has gone through so many changes and I’m sure that some of the unused parts I wrote will find there way into other pieces at some point. It’s hard to really take any credit as the whole piece is completely based on music or musical ideas contained within the style of John Williams ( my musical hero ). The piece hopefully should evoke the feeling of tatooine and the world of Star Wars and also a more early John Williams style which we felt suited our current needs better. One thing is for sure though that the better I get, my John Williams rips should also get better. Anyway, I’m sure you all only wanted a quick hello and a bit of info – so thanks for reading.