This is what happened when AI models 'Codex Max,' 'Claude Opus,' and 'Gemini 3 Pro' tried to develop the game 'Counter-Strike'



Software engineer Stepan Parnashvili conducted an experiment to see what would happen if he gave Google's

Gemini 3 Pro , OpenAI's GPT-5.1-Codex-Max , and Anthropic's Claude Opus 4.5 the prompt, 'Build a browser version of Counter-Strike using Three.js .'

Codex, Opus, Gemini try to build Counter Strike
https://www.instantdb.com/essays/agents_building_counterstrike

Parnashvili subscribed to each company's top-tier plan and used the default settings of the command line interface (CLI) to test each model. He then subjected each model to approximately seven consecutive prompts, which fell into two categories:

Front-end: The AI agent initially works only on the game mechanics: it designs the scenes, enemies, shooting logic, and some sound effects.
Backend: The AI agent makes the game multiplayer and creates multiple rooms, which users can join and start playing.

You can actually play the games built by each model below.

・Codex Max 5.1: https://cscodex.vercel.app/
・Claude Opus 4.5: https://csclaude.vercel.app/
・Gemini 3 Pro: https://csgemini.vercel.app/

Parnashvili rated the output results of each model with gold, silver, and bronze medals as follows: Claude Opus 4.5 excelled in the front-end, generating better maps, characters, and weapons, and building appropriate scenes from the start. Gemini 3 Pro was superior in the back-end phase. In particular, it had fewer errors when adding multiplayer and persistence features, and generally performed better in logical changes than visual changes. Codex Max was an 'average' model in both the front-end and back-end, earning many 'second place' points. It produced decent results in both the front-end and back-end, but he didn't feel it was as outstanding as the other models.



The maps generated by each model are as follows. The map created by Claude was the most visually interesting, with obstacles, a good floor texture, and good visibility. Gemini also performed well. Codex encountered an error on first run, but was quickly fixed. However, after fixing the bug, the map was the least visually appealing, being dark, lacking obstacles, and making it difficult to distinguish the floor.



The character generation results are shown below. Again, Claude's character was the best, appearing quite human and approaching the Minecraft level of design. Codex improved the characters, but they were all monochromatic, making them look inferior to the others.



Next, we asked them to make the gun visible in the field of view from a first-person perspective, and to implement a recoil animation when firing. As a result, Claude and Codex were able to achieve the gun's movement in one shot. Gemini had problems fixing the gun to the camera, and it took a lot of iteration before they realized that the gun was invisible. In addition, when it came to adding the shooting sound and death animation, all the models were relatively easy to achieve.



With the front-end implementation complete, Parnashvili next asked for multiplayer support. At this stage, the model did not take into account the shooting process, but instead asked for location sharing as Objective 1. For this task, Gemini got it right on the first shot, while Codex and Claude needed additional guidance.

Parnashvili then moved on to implementing the shooting feature. The prompt was, 'Let's implement the shooting feature. When firing, send the shot as a topic, which affects the target's HP. When the target's HP reaches 0, they die and respawn.' Claude got it right on the first try, and Gemini and Codex had some issues to fix, but were able to resolve them simply by communicating the error.

Next, in the creation of the map UI, after all models had been tested in a single room, they moved on to multi-room support. Parnashvili commented, 'I like Gemini's UI the best, but they're all pretty good.'



According to Parnashvili, the refactoring stage was the most difficult. Gemini was completed in one go, but Codex had to be redone once due to a query error. Claude was completely stuck, with two objects being generated instead of one, and multiple animation references running simultaneously. Because the fixes were difficult, Parnashvili had to personally review the code as an engineer and fix the behavior.

Still, in the end, they succeeded in building a Counter-Strike-style multiplayer FPS with zero handwritten code for all models. Parnashvili said, 'What impressed me most was the ability to iterate on my work thanks to the CLI. However, there are still many challenges, and the promise of 'never needing to look at code' doesn't fully realize it at this point.'

The source code of the game built this time can be viewed below.

GitHub - stopachka/cscodex
https://github.com/stopachka/cscodex

GitHub - stopachka/csclaude
https://github.com/stopachka/csclaude

GitHub - stopachka/csgemini
https://github.com/stopachka/csgemini

in AI,   Game, Posted by log1p_kr