So I spent some time today getting the offsets of each clients weapon so you can literally force a sniper lobby if you want just thought I'd share will probably make a tool for this and just keep it to myself so yeah. The best way to do this is obviously with entity taking away and giving players a certain weapon on spawn through the engine rather than reading and writing to memory for each client to get the same effect however I'm terrible and gave up after a few days of trying this on both mw2 and mw3 and resorted to the "easy shit cunt method".
Client 0 Primary Weapon = 01C296BC
Client 0 Ammo For Said Weapon = 01C297E4
+ 38EC for each client (im pretty sure from what I leached off the forums lol) it looks like this hasn't changed since the updates just have not been able to test it obviously if it has calculating the change between each client is easy if you have even half a brain and someone else to join your game and help you.
Now you can find these values by using a player weapon list which is listed in byte values. However there can be huge errors writing the addys this way because byte values simply are not accurate enough. For example if you're forcing players to use the MSR you would change the client values to 42. If the clients are all using scoped weapons and you don't care about giving anyone attachments this will work fine... HOWEVER if they're for example using a ump or something it will end up giving them something fucking retarded such as a msr with no scope and a silencer. Also by just writing byte values you can only change the weapon you can't alter the attachments or anything. To get around this write your value as a float value. The float value for msr with extended mags and speed for example is 3.846199947E-40. You must also change the ammo value to the same value as your gun so in this case we would also change that to 3.846199947E-40 and it will give the player the ammo they had for their last weapon and then you can give everyone infinite ammo too. If you don't change this value the weapon will no receive any ammo regardless of if your server has infinite ammo or not. As far as I know you can't do this in mw2 you need to do it with the engine directly or you'll be forever without ammo as I haven't been able to find the address to move it over to your new gun - . PS my girlfriend bought me an anime body pillow for Christmas so I can make unfunny twitter memes with it I deserve the worst.
Update Have most addys need one person to come help me so I can find the offset for deahtstreaks so I can disable that I'm down to 300 values and I need to start going through and testing them. I can't without someone to join my game and kill me till I find it. My skype is ... add me if you can waste 10 minutes of your life.