This is based on Humble Bundle version of the game source code.
The source for my edited version currently is not available (quite rushed, and, as it turns out, largely working by series of coincidences), and it doesn't seem to be legal to redistribute the edited sources for anything from the bundle but Spelunky (which was already open-source).
But basically, for local multiplayer, you just need to have each projectile store the ID of the player that fired it, and change things like "Player.x" to get that from the correct player (nearest for AI, owner for bullets, all for conditions). Then it's just lots of small edits like making laser guns not fly out of all players when firing.
I ended up changing a substantial amount of code in the game, but that was largely related to online multiplayer, and unneeded if that is not your goal.