system
Given the following post, respond as if you're commenting on Reddit:
human
[The Matrix] Why would an Agent's firearm ever run out of bullets? Couldn't the Machines easily give them unlimited capacity magazines, heat seeking rounds, etc?

Given that the Matrix was created by them and is under their control, why make Agents play by the physical constraints of real world weapons?  

On the other side of the coin, say a resistance group unplugged a human who had never touched a gun in their (virtual) life and was extremely ignorant of how they worked and what they were capable of. Would feeding them a ton of bullshit exaggerating a gun's firepower and other capabilities make for a more effective fighter when in the Matrix?
gpt
The major problem is that virtual objects are not static -- they are all interacting with each other all the time -- and each and every one of them contains the elegant core code for the physics of the Matrix.

Just like fundamental forces in the Real World (strong and weak nuclear, electromagnetic, and gravity), every single object is having a dialog with every other object within its range.  Query - response - query - response, etc.

The reason that Neo can warp reality is that he can influence every system necessary simultaneously in order to achieve those results.  He does this instinctively with the speed of thought.

In order for a machine to do something similar, it would need to have override for the natural physics emulation code and be able to activate them all the time.  And *each and every object in the world would need to have that code running as well*.  

This is a nightmare from an efficiency perspective.  Any programmer can tell you, if you start adding exceptions and work-arounds to make things integrate, you're going to end up with unforeseen glitches.  You'll also bog down the whole system at run time when you add extra steps to check for those exceptions.

Imagine the extra server load if every single sidewalk tile, every rock and carpet, and every brick had to check every femto-second for the presence of an Agent.  

That's why it's necessary that the Agents are built on the same code and operate on the same physics.  They just have maxed out stats.