Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Tags
Creators
Details
Advanced Computers
This is yet another computer mod for Minecraft, including a custom built LUA runtime, called JLuaVm, and thus also the ability to persist computer states across chunk unloading and even server shutdowns, meaning they wont be forcefully rebooted in such events. This is similar to the behaviour of OpenComputers-1.12, though we are using a fully-custom lua runtime. This project is of course inspired by OpenComputers (for Minecraft 1.12) and the original ComputerCraft mod.
The mod itself and our Lua runtime are located under our Github organization: https://github.com/MidnightMages
THIS IS AN ALPHA
At this point there is still some fundamental content missing (thus the alpha tag) and there might also be a number of bugs present (please open an issue ticket if you find one).
Features
Currently adds programmable computers into Minecraft, along with screens, peripheral cables, real-world-internet-access, and redstone and inventory-interface peripherals, all being interactable through Lua 5.4.
For server owners: As far as resource usage goes, we are only setting up a lua execution environment per computer and not an entire virtual machine, meaning these computers have a very low ram and disk space requirement.
Cpu time limiting based on computer tier is implemented, whereas ram & disk usage limiting currently is not.
Finding your way around
The included OS (Advanced OS) comes with the basic commands such as ls, rm and even a text editor called nano, inspired by the GNU nano. Additionally there is also pasteTextToFile, which listens for pasted-text (paste via middle mouse button) and then writes that into the specified file. E.g. pasteToFile someFile.lua.
(Almost all of) the api is documented in our wiki: https://wiki.ac.ghxx.dev/
You can also use the lua code vm.listUDKeys(components:getFirst("computer")) to programmatically figure out which fields a userdata object contains (in your current mod version). 'userdata' is a special Lua type that represents a Java object. All components are represented as userdata objects.
This combined with looking at the existing uefi.lua and operating system, both located in src/main/resources/assets/advancedcomputers/lua/* should hopefully give a decent point to start out with.
You can also find the current mod and minecraft version in the global _HOST variable. E.g AdvancedComputers 0.1.2-alpha; Minecraft 1.20.1.
Planned stuff (until we label the mod as a Beta):
Make the OS more usable (including rewriting the kernel), as currently it is very very bare (though does contain thelsandluaprograms)Making a wiki on https://wiki.ac.ghxx.dev/ that lists & describes all the api functions- Finish adding anything that is missing from the Lua standard library (most notably some edgecase features in pattern matching, i.e. edgecases in string.gsub and related functions, though they mostly work)
- Sending network packets between ingame computers (with some intelligent packet handling to avoid having to write a custom ingame IP protocol)
- Interaction with more minecraft blocks
- Make disk space limited and add a soft computer ram limit
- Adding ingame networking (computer to computer)
- Adding more fun stuff like servers, etc.
Targeted minecraft versions
Currently this targets Minecraft 1.20.1 (forge), but we do plan to extend that once the mod reaches the Release state (i.e. containing very few bugs and being mostly content complete).
License & Attribution
Feel free to include this mod in any modpacks without attributing us. It would be nice if you could send us a message in Discord if you use this mod as part of a modpack as we are curious, but this is not required.
As far as non-modpack usage goes, do not reupload mod builds anywhere.
As specified in the LICENSE file, the mod is published under the MIT license. An exception to this are the fonts, which are located in the /assetSources/font in the git repository. For those, the associated license in that folder applies.
Feel free to use JLuaVm for another Minecraft mod too, as that is licensed as MIT as well.


