# Wiremod turns Garry's Mod into a bench for wiring things together

> Wiremod is an add-on for Garry's Mod that adds entities which communicate over wires, so players can build robots, vehicles and computers inside the game. It is written in Lua, ships a stable and a canary channel, and its release names track the hardware features that land in it.

**wiremod/wire** — Garry's Mod add-on that allows users to wire up components in order to make more elaborate automatic and user-controlled contraptions.

- Repository: https://github.com/wiremod/wire
- Website: http://wiremod.com
- Stars: 601 · Forks: 353
- Language: Lua
- License: Apache-2.0
- Published: 2026-10-22 · Updated: 2026-10-22 · Language: en
- Canonical page: https://hysenlabs.com/projects/wiremod-wire

## Entities that talk to each other

Wiremod is an add-on for Garry's Mod that adds entities which communicate via wires, and the readme says plainly that it can be used to create robots, vehicles, computers and much more. That is the entire concept, and it is more interesting than it first sounds. In the base game, props sit in the world and respond to the player. Wiremod adds the missing layer, which is a way for one object to influence another without either of them being the player, so a button can energise a motor, a sensor can feed a logic gate, and a contraption can run by itself while you watch. The description of the project puts it as allowing users to wire up components in order to make more elaborate automatic and user-controlled contraptions, and the phrase user-controlled is doing the work, since the goal is not a factory game but a sandbox where the mechanism is the toy. The project is written in Lua, the scripting language Garry's Mod is built around, and the top level tree shows a lua directory holding the add-on code alongside directories for models, materials, sound, resources and static data, which is the standard layout for a Source engine add-on.

## The entity definitions are in a file you can read

One entry in the repository listing is worth pausing on, which is a file with the .fgd extension, alongside the addon manifest. The FGD format is the entity definition file used by Source engine games, and it describes every entity a player can spawn, with its model, its properties and how the game should handle it. Having that file in the repository rather than only on a server means the entire catalogue of what Wiremod adds is a text file that can be read, diffed and reviewed, which is a considerable advantage over an add-on whose content is only visible in game. The models, materials and sound directories then hold the assets those entities reference, and a static data directory holds the data the add-on ships with. For a contributor, that means a new component is a new entity definition plus whatever script makes it behave, and for a server operator it means the content of the add-on is knowable without running it.

## Two channels, and a git route for people who want control

The installation table sets out the choices clearly. There is a stable build published on the Steam Workshop, and a canary build published separately, both pointing at the same GitHub repository, so the difference is which artifact you subscribe to rather than which code you read. That is a sensible arrangement for a game add-on, because a canary channel is how a maintainer ships a change to a small group before everyone gets it, and it means the stable workshop item is never a surprise. Two companion projects are listed alongside. AdvDupe2 is published on the Workshop, and Wire Extras is not available there yet, which is tracked by an issue, so the ecosystem is still in the middle of moving pieces around. For people who would rather not use the Workshop at all, the readme gives a git route, cloning the repository into the addons directory of the Garry's Mod installation, which gives you the ability to pin a commit and to update on your own schedule rather than on the platform's.

## A Lua codebase with a linter configuration in the root

The primary language is Lua and the code lives in the lua directory, but the interesting file for a developer is the linter configuration, a JSON file in the repository root named for Lua linting. A project that ships a linter configuration in the root is a project that expects people to send pull requests, and the README is consistent with that, telling contributors to read the code of conduct before contributing, to follow a developer style guide before opening a pull request, to use the discussions page for suggestions and the issue tracker for bugs. The separation between those two channels is the useful part. A suggestion for a new component is a conversation, and a bug report is a ticket, and mixing them makes a tracker unusable. The tree also carries a security policy file, which is worth noticing in a project that distributes code to people's game installations, and the licence is Apache-2.0, which is a permissive grant with the usual obligations and is a good match for a community add-on.

## Release names that describe the hardware

The release list reads differently from a typical software project, and the difference is informative. The newest tag is v20250213, named Friday the 13th Release with the note that zCPU is back and FPGA Merge is in. Before that there is a tag simply called zcpu, described as ZCPU, GPU and SPU, and before that a v20201205 release named after December 2020. Two things follow from those names. First, the project versions its features by what you can build, so a release note tells you that a processor class exists or has returned rather than that a bug was fixed, and a player can read the tag list as a capability list. Second, the spacing between releases is irregular, with a gap of years between the December 2020 release and the 2023 zcpu tag, which tells you this is a project that ships when there is something worth shipping rather than on a schedule. The last push was on 2026-10-19, so the development branch is active even though the tags are sparse.

## What a contraption actually is, and who the project is for

The interesting question for an outside reader is what you can end up building. The readme names robots, vehicles and computers as the three categories, and each implies a different scale of effort. A robot in Wiremod is a chassis with motors and sensors, which is a build challenge rather than a programming one. A vehicle is the same idea with wheels and a seat, and it inherits the physics of the base game, which is why a working vehicle is the usual first milestone. A computer is a different thing again, because it implies logic, and the release history shows that the project has been pushing towards a programmable processor, with the ZCPU, GPU and SPU tag describing a processor, a graphics unit and a coprocessor, and a later release bringing that processor back. That is the arc of the project in three tag names, and it is a reminder that the interesting direction for a wiring sandbox is not more wires but a way for a contraption to decide what to do with them.

## Conclusion

Wiremod earns its place for a Garry's Mod player who wants to build a machine rather than place props, because the whole point of the add-on is that components communicate rather than merely exist, which is a different kind of sandbox creation from what the base game offers. It is the wrong tool for anything outside Garry's Mod, since it depends on the game's entity and scripting model rather than being a general framework. Verify three things before you install it: which channel you want, since the canary build will have the newest features and the occasional surprise, that the add-on is compatible with the game version you run, since the add-on loads into the game's own folder and is updated with it, and how you will install it, since the Steam Workshop route and the git route give you different control over the version. The licence is Apache-2.0, the last push was on 2026-10-19, and the newest tagged release is v20250213.

## FAQ

### What is Wiremod and what does it add to Garry's Mod?

It is an add-on that adds entities which communicate via wires, so players can build robots, vehicles, computers and more elaborate automatic and user-controlled contraptions than the base game allows.

### How do I install Wiremod?

Through the Steam Workshop, where both a stable and a canary build are published, or by cloning the GitHub repository into the addons directory inside your Garry's Mod installation. The git route lets you pin a commit and update on your own schedule.

### What do the Wiremod release names mean?

The releases are named by what they add rather than by a plain version, with the newest tag v20250213 announcing that zCPU is back along with FPGA Merge, and an earlier zcpu tag covering the ZCPU, GPU and SPU classes. Before that, releases were named by month, such as the December 2020 release.

### How do I contribute to Wiremod?

Read the code of conduct first, follow the developer style guide before opening a pull request, use the discussions page for suggestions and the issue tracker for bug reports. The repository is Apache-2.0 licensed and ships a Lua linting configuration at its root.

## Sources

- [License: Apache-2.0](https://github.com/wiremod/wire/blob/master/LICENSE)
- [Project website](http://wiremod.com)
- [README](https://github.com/wiremod/wire/blob/master/README.md)
- [Releases](https://github.com/wiremod/wire/releases)
- [wiremod/wire on GitHub](https://github.com/wiremod/wire)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/wiremod-wire
