Not to mention, there are a ton of tutorials around, with several series on youtube.
–
DrewAug 27 '12 at 17:20

the UDK is good if you are willing to pay and being subject to the license, i will not use the UDK for a project like this, also there are problems when you use the UDK in a condition like this, because you can't tell if you are using the UDK at your workplace ( and you are supposed to pay the license for your seat no matter what you do ) or in your spare time and this is honestly pointless because the UDK is so big that the only reason for using it is for real production. Also the market is full of free alternatives that are much better for a beginner.
–
user827992Aug 27 '12 at 17:43

@user827992 While you're mostly right, you're assuming OP is interested in creating a commercial product. If you're just making something for your own interests or to share with friends then it's free.
–
Mike CAug 27 '12 at 21:27

I'm not too big into FPS games so only one thing comes to mind that would allow such extensive modding in a short time, and that's Bethesda's Fallout 3. I've seen quite a few mods for it and everything in your list is possible given you're willing to put in some effort. It's not going to do everything for you but it will speed up the process.

If you want a completely free solution, where you can also feel free to publish your work without warring about royalties and fees, you can use the Blender game engine and you can create your own game right inside blender and export it as a standard application.

Blender is a completely free open source 3D modeler with advanced capabilities and it's written in C++ for the biggest and offers internal API for Python.