{"id":15016076,"url":"https://github.com/mightypirates/opencomputers","last_synced_at":"2025-05-14T04:07:32.131Z","repository":{"id":12300068,"uuid":"14930360","full_name":"MightyPirates/OpenComputers","owner":"MightyPirates","description":"Home of the OpenComputers mod for Minecraft.","archived":false,"fork":false,"pushed_at":"2025-04-06T10:55:48.000Z","size":60781,"stargazers_count":1633,"open_issues_count":146,"forks_count":434,"subscribers_count":77,"default_branch":"master-MC1.7.10","last_synced_at":"2025-04-10T22:35:02.949Z","etag":null,"topics":["automation","forge","lua","minecraft","minecraft-forge","mod","opencomputers","programming","scala"],"latest_commit_sha":null,"homepage":"https://oc.cil.li","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MightyPirates.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2013-12-04T17:11:24.000Z","updated_at":"2025-04-09T14:03:28.000Z","dependencies_parsed_at":"2024-01-16T09:53:23.956Z","dependency_job_id":"c62d6252-2e19-433c-84dc-56e745aeecc8","html_url":"https://github.com/MightyPirates/OpenComputers","commit_stats":{"total_commits":4135,"total_committers":161,"mean_commits":"25.683229813664596","dds":0.2897218863361548,"last_synced_commit":"1e170bd9ef7e9bc67814299db34a95187a584d1c"},"previous_names":[],"tags_count":139,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MightyPirates%2FOpenComputers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MightyPirates%2FOpenComputers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MightyPirates%2FOpenComputers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MightyPirates%2FOpenComputers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MightyPirates","download_url":"https://codeload.github.com/MightyPirates/OpenComputers/tar.gz/refs/heads/master-MC1.7.10","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254069497,"owners_count":22009558,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","forge","lua","minecraft","minecraft-forge","mod","opencomputers","programming","scala"],"created_at":"2024-09-24T19:48:22.451Z","updated_at":"2025-05-14T04:07:32.040Z","avatar_url":"https://github.com/MightyPirates.png","language":"Scala","readme":"![Welcome to OpenComputers](assets/misc/banner.png)\n\nOpenComputers is a Minecraft mod that adds programmable computers and robots to the game. The built-in computer implementation uses Lua 5.2 and is fully persistent. This means programs will continue running across reloads. For more information, please [see the wiki][wiki]. Feel invited to visit the [community forums][forums] or drop by in the [IRC channel #oc on esper.net][irc].\n\nA few useful links:\n* [Minecraft Forum Thread][mcf]\n* [Downloads][releases]\n* [Bug Tracker][issues]\n* [Wiki][wiki]\n* [Ingame Manual][ingame manual]\n* [IRC][irc]\n* [Community Forums][forums]\n\n### Experimental Builds\nYou can find experimental builds [on the build server][github-actions]. Expect these to be generally more unstable than builds marked as releases. Use these **at your own risk**, but - when using the latest one - please *do* report bugs you encounter using them. Thanks!\n\n## License / Use in Modpacks\nThis mod is [licensed under the **MIT license**](https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/LICENSE). All **assets are public domain**, unless otherwise stated; all are free to be distributed as long as the license / source credits are kept. This means you can use this mod in any mod pack **as you please**. I'd be happy to hear about you using it, though, just out of curiosity.\n\n## Contributing\n### Assets and Localizations\n1. **Translations**  \n   Translations to other languages are very much appreciated. You can find the localization files [in this folder][localizations]. If a localization you wanted to create already exists, please take the time to see if the present one is complete - the strings change every so often, invalidating some of the translations. If you start a fresh localization, please base it off of the English or German one, those are the 'master' localization files. If you add a new language, please also add it to [the pack.mcmeta][pack.mcmeta] file. Keep it sorted alphabetically, use the name and region Minecraft itself uses. If you don't know how to do that, that's OK, I'll do it later.\n2. **Textures**  \n   If you would like to contribute better textures for certain items or blocks, feel free to pull-request them. If you would like to contribute *alternative* textures, make it a resource pack, and post it on the forums, for example.\n3. **Documentation**  \n   Help with keeping the [wiki][] up to date would be *really* appreciated. If you notice anything amiss and know better, fix it. If you don't ask someone who does, then fix it. If you had a question answered, consider adding that information somewhere in the wiki where you would have expected to find that information.  \n   There are also the files containing the ingame help [for programs][manpages] and [for blocks and items][manual], which could probably be much better than they are right now. Improvements to them, and new ones (e.g. for the libraries, such as `text` or `sides`) would help a lot. Thanks!\n4. **Robot Names**  \n   Robots get a random name when placed (unless set with an Anvil). The list the names are chose from [can be found here][robot names]. Feel free to pull request additional names! *However*: since the list has grown to a considerable length already, here are the two basic criteria for new names: it must either be a real or fictional robot, or an AI that at least *appears* to be self-aware.\n\n### Bug fixes, features and scripts\n1. **Bugs**  \n   If you've found a bug, please report it in the [issue tracker][issues], after checking it has not been reported before - and possibly even fixed by now. If you think you can and have fixed it, feel free to do a pull request, I'll happily pull it if it looks all right to me - otherwise I'll gladly tell you what to change to get it merged.\n2. **Features**  \n   If you'd like to propose a new feature, take it to the [forums][] or the [issue tracker][issues]. If you'd like to contribute code that adds new features, please make sure to discuss the feature with me, first - again, the issue tracker is an OK place for this, there are a couple of feature requests there, already. Alternatively start a topic on the forums to discuss the feature, and / or stop by the [IRC][irc] to talk about it. Blind / unexpected feature pull requests might very well not make it, so save yourself some time by talking about it, first! Thanks.\n3. **Scripts / Programs**  \n   OpenComputers generates floppy disks in dungeon chests that can contain data from a selection of 'loot' directories. For example, the IRC client and OPPM (a package manager) are two programs that can be found on such loot disks. If you'd like to contribute a program that can be found this way, please have a look at [the loot readme][loot], which explains how to add custom loot. Simply pull request your loot!\n4. **Core Scripts**  \n   If you would like to contribute scripts to the \"core\" Lua code (which basically defines 'OpenOS'), please have a look at the [code conventions][] for Lua to save us all some time. Bug fixes are always welcome. Additional programs and features should be kept small. Bigger programs (rule of thumb: larger than 3KiB) should go onto loot disks.\n5. **Drivers**  \n   As of OC 1.4, mod interaction that was previously provided by OpenComponents is now fully integrated into OC itself. If you wish to contribute a driver for blocks from other mods, cool! Have a look at the [integration][] package to get an idea of how to structure modules and read the readme in that package for more information (in particular on additional criteria to get your PR merged).\n\n#### Pull requests\nThe following are a few quick guidelines on pull requests. That is to say they are not necessarily *rules*, so there may be exceptions and all that. Just try to stick to those points as a baseline.\n- Make sure your code is formatted properly.\n- Make sure it builds and works.\n- Try to keep your changes as minimal as possible. In particular, no whitespace changes in existing files, please.\n- Feel free to code in Java, but don't be surprised if I convert it to Scala later on, if I feel it makes the code more concise ;-)\n- When adding mod dependencies, keep them *weak*, i.e. make sure OC still works without that mod. Also, prefer adding a Gradle dependency over adding API class files to the repo.\n- [Squash](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html) your commits!\n\nAlso, and this should go without saying, your contributed code will also fall under OC's license, unless otherwise specified (in the super rare case of adding third-party stuff, add the according license information as a `LICENSE-???` file, please).\n\n## Extending\n### In your own mod\nTo use [the API][api] in your own mod, either get the API JAR from the [build server][github-actions], or if you're using [Gradle](http://gradle.org/), add a dependency to the maven repo:\n```groovy\nrepositories {\n    maven { url = \"http://maven.cil.li/\" }\n}\ndependencies {\n    compile \"li.cil.oc:OpenComputers:MC1.7.10-1.5.+:api\"\n}\n```\nAdjust the version number accordingly to the version you'd like to build against.\n\nTo run the mod in your development environment, download the [`dev` JAR from the build server][dev-jar] and drop it into your development environment's `eclipse/mods` (Eclipse) or `run/mods` (IntelliJ IDEA) folder.\n\nAlternatively, leave out the `api` classifier and you can build against the dev JAR directly. This way you don't have to add it to your mods folder, but you will have to add `-Dfml.coreMods.load=li.cil.oc.common.launch.TransformerLoader` to the VM options in your run configuration.\n\nIf you have any questions, please do not hesitate to ask, either in the [forums][] or in the [IRC][irc]!\n\n### OpenComputers\nWant to tinker with the mod itself? Here is how - for IntelliJ IDEA users.\n\n**Important**\n- Make sure you have the Gradle plugin enabled in IntelliJ IDEA (File-\u003eSettings-\u003ePlugins).\n- Make sure you have the Scala plugin enabled.\n\nClone the repository, then in it run  \n`gradlew setupDecompWorkspace`  \nto setup the workspace, including assets and such, then  \n`gradlew idea`  \nto create an IntelliJ IDEA project.\n\nOpen the project and you will be asked to *import the Gradle project* (check your Event Log if you missed the pop-up). **Do so**. This will configure additionally referenced libraries.\n\nFor more specific instructions, read [Steps to run master MC1.7.10 from IDEA][idea_1.7.10]\n\nIn the case you wish to use Eclipse rather than IntelliJ IDEA, the process is mostly the same, except you must run `gradlew eclipse` rather than `gradlew idea`.\n\n\n\n[api]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/java/li/cil/oc/api\n[code conventions]: https://ocdoc.cil.li/lua_conventions\n[dev-jar]: https://ci.cil.li/view/OpenComputers/job/OpenComputers-MC1.7.10/\n[forums]: https://oc.cil.li/\n[github-actions]: https://github.com/MightyPirates/OpenComputers/actions\n[irc]: http://webchat.esper.net/?channels=#oc\n[issues]: https://github.com/MightyPirates/OpenComputers/issues?state=open\n[localizations]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/resources/assets/opencomputers/lang\n[loot]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/resources/assets/opencomputers/loot\n[manpages]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/resources/assets/opencomputers/loot/OpenOS/usr/man\n[manual]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/resources/assets/opencomputers/doc\n[mcf]: http://www.minecraftforum.net/topic/2201440-opencomputers-v122/\n[pack.mcmeta]: https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/src/main/resources/pack.mcmeta\n[releases]: https://github.com/MightyPirates/OpenComputers/releases\n[robot names]: https://github.com/MightyPirates/OpenComputers/blob/master-MC1.7.10/src/main/resources/assets/opencomputers/robot.names\n[wiki]: https://ocdoc.cil.li/\n[integration]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/scala/li/cil/oc/integration\n[ingame manual]: https://github.com/MightyPirates/OpenComputers/tree/master-MC1.7.10/src/main/resources/assets/opencomputers/doc\n[idea_1.7.10]: https://ocdoc.cil.li/tutorial:debug_1.7.10\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmightypirates%2Fopencomputers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmightypirates%2Fopencomputers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmightypirates%2Fopencomputers/lists"}