Here is a step-by-step manual how to build trunk on windows these days. It is written so that also a nonprogrammer should be able to follow (if i didn't forget some step :)).
1) Download project from repository (i used TortoiseSVN)
2) Download and install Code::Blocks with mingw (i used version 10.05)
3) Download and install Python (i used version 2.7.1)
4) In project folder, go to .\armagetronad\trunk\armagetronad\win32 and run update_version.bat. It will probably tell you that python is missing, so..
5) in the same folder, edit python.bat and change SET PYTHON=python.exe to SET PYTHON=<path to python.exe> (in my case: C:\Python27\python.exe). You can now run python.bat to see if everything is allright.
6) Now we will need to setup Google protocol buffers. Still in the same folder, edit protobuf.bat and change command "protoc" to "<path to project folder>\armagetronad\trunk\winlibs\protobuf\bin\protoc.exe" (without quotation marks)
7) Run protobuf.bat and optionally check ..\src\protobuf folder for *.pb.h files. If they are there, everything is cool.
8) Boost in winlibs is outdated which causes building errors. We will update it. Download boost at
http://www.boost.org/users/download/. Extract the archive and copy boost subfolder. Go to <path to project folder>\armagetronad\trunk\winlibs\boost\includes, delete the boost subfolder there and insert the newer one you have copied.
9) Before finally entering Code::Blocks, we will update its project files to fix names of link libraries. Download code_blocks.rar - an archive uploaded by k3nny in this thread. Copy all cbp files you will find inside. Then, go to <path to project folder>\armagetronad\trunk\winlibs\win32\code_blocks and replace cbp files there with the ones you have copied.
10) So far so good? Cool, we can now start Code::Blocks. Go to <path to project folder>\armagetronad\trunk\armagetronad\win32\code_blocks and start ArmagetronAd.workspace. Now, in menu, you can Build -> Select Target -> Win32 Release (or debug if you want) and Build -> Build workspace. However, building will fail giving you some errors :(. Here are things you need to fix in source codes...
11) For navigation in source codes, use Managenement toolbar on the left. In Armagetron Advanced -> ... -> src -> tools -> tString.cpp, add #include <time.h> into include section.
12) In tTrueVersion.h at the first line, change the last-fourth number to zero (if there is no fourth number behind comma, add zero there). You will not find this file in Management toolbar. Here is path to the file in explorer: <path to project folder>\armagetronad\trunk\armagetronad\src\tTrueVersion.h
13) Go to FTGL -> Headers -> FTGL -> include -> FTTextureGlyph.h at line 55. Remove " FTTextureGlyph::" label there.
14) In Armagetron Advanced -> ... -> src -> tron -> gMenus.cpp at line 316, insert "bool dirty = true;" and replace "currentScreensetting.useSDL" with just "dirty" at line 321 (of course without quotation marks).
15) Now, compiling should pass. Well done. But linking of client will still fail because of wrong names of link libraries (missing dll suffix) in Armagetron Advanced project. We have fixed that for other projects but not for this one because K3nny's archive doesn't include Armagetron Advanced project file. In attachment, you will find an archive with mine. Replace the project file in <path to project folder>\armagetronad\trunk\armagetronad\win32\code_blocks\ with the one you will find in the archive. If you build the workspace now, everything should pass successfully, but armagetronAd still would not launch giving an error. So..
16) as it has been noted in this thread, you need to remove Armagetron Advanced -> ... -> src -> tron -> gWinZone.cpp from the project. Right click on it and choose Remove file from the project. If you want to build a dedicated server you need to do this for project Dedicated.
17) Build workspace.
18) Now, go to <path to project folder>\armagetronad\trunk\armagetronad\win32 and run make_dist.bat. Then go to <path to project folder>\armagetronad\trunk\armagetronad\build\dist and...
19) enjoy living on the edge :).
Many steps could be ommited if trunk was updated accordingly.
EDIT: if you download trunk from launchpad-bazaar thing (really the latest sources), steps 9, 13, 16 have been done already.