Starting with the most frequently asked question of all:
What's your monthly rate?
I typically charge by the job, but you can reckon that a
straightforward single-player Nintendo DS game would take me 6-8 months from scratch, and cost between 60,000 and 70,000
euros for code alone. If I were able to re-use substantial amounts of my existing codebase (for a racing game, say) this
would shorten the project considerably – on GBA my fastest project ever took 8 weeks from first contact to
NOA approval – but the price would be much the same: I charge for the result rather than the time it takes me.
Do you offer a full outsourcing service?
Typically I just handle the programming, but I have done
deals where I sourced art, sound and design to give a full game package: it really depends what you need.
Do you only quote in euros?
I can quote in any currency that suits you, but obviously I need to allow for the currency risk in my pricing,
especially if I'm sourcing art etc from third parties.
Are you interested in full-time, in-house work?
No. I work remotely, from my home in France. I pay taxes here, and the system strongly favours
independent working over employment. Also, it's a more effective way to work. There's no commuting, no office politics, no unnecessary meetings:
I liaise with producers and artists by email or phone, and the rest of the time I just work on the project. The results speak for themselves:
my first remote project
started late but finished bang on time, to the full original specification
with developers and publishers happy, a pattern which has reproduced itself time
and time again
since then.
What if we needed you to come in at short notice? Aren't you a bit
too remote?
Not at all. I live in France, in a small seaside town, but that's only half
the story. There's a mainline railway station five minutes away, with a TGV
service direct to Paris (about three hours). From Paris there are
fast rail connections on to European destinations, or Charles de Gaulle and
Orly airports for further afield.
There's also Nantes international airport an hour from here, with daily flights
to London and other major European
cities.
What tools do you use?
For inspecting and modifying art assets by hand, I use Photoshop and 3DS
Max. For art asset conversion I mostly use my own batch tools, written in
C++. For example, I wrote a batch renderer that took .ASE files from
3DS Max and rendered them in different orientations as specified in code or
from a script. This allowed me to produce rendered sprites like the helicopter frames
in Hellfire: Apache vs Hind with
placeholder models, and then slot in the finished assets when they became available:
a cumbersome process if done by hand.
| |
 |
| |
| |
(Top) Partially-mapped Hind-D model (Viewpoint) imported from an .ASE
file and rendered by my custom batch tool. My build machine renders typical NDS-resoution
sprites to this quality at around 10 frames per second.
|
|
| |
| |
 |
| |
| |
(Bottom) The original scene as rendered by 3DS Max, for comparison.
There are tiny differences - the curve of the cockpit is slightly smoother
here, for example - but they are hard to see without magnification.
|
| |
|
All my tools produce human-readable output, so that I can visually examine
data when problems arise. For art assets, intermediate data stages are written
to bitmap files: again, this allows visual diagnosis of data problems.
How do you ensure code stability?
I write in proper object-oriented C++ wherever possible, and apply the principles of
Writing Solid Code. In particular, I make heavy use of asserts, turn on all
possible compiler warnings, use redundant algorithms and
single-step my code, especially in assembler. My recent consulting experience on other people's code has
underlined the importance of these practices: time and again, major hard-to-find bugs
turn out to be caused by C-style coding and suppressed compiler warnings.