Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

Elijahlorden

Members
  • Content Count

    34
  • Joined

  • Last visited

Everything posted by Elijahlorden

  1. Elijahlorden

    MatterTech

    I have finally gotten to the point where I feel I am capable enough to write an addon mod for OpenComputers. This addon is the result of my desire to provide useful mechanics which are gated behind OpenComputers knowledge and infrastructure. As the title of this post suggests, this addon will focus on the manipulation of matter (and energy) through the use of OpenComputers components. All machines in this addon/mod will require OpenComputers to function. This mod will not feature any GUIs, besides the interfaces OpenComputers itself provides. Planned content (may change): - A Transporter system similar to the technology of the same name seen in Star Trek. (This will be the first feature added and is currently being worked on) - A viable endgame power source (power output comparable to Mekanism's Fusion Reactor) in the form of a matter-antimatter reactor. - An Energy->Matter converter similar to the Replicator technology seen in Star Trek. Any ideas or feedback on this project is welcome! The GitHub repository for this project may be found here.
  2. Elijahlorden

    MatterTech

    Of course
  3. Elijahlorden

    StattenOS - Base control system

    I thought I fixed this :|
  4. https://github.com/elijahlorden/StattenOS This is a very early implementation of StattenOS, a networked base control system I am developing. Installation instructions: You will need a hard drive with an existing OpenOS install, and an internet card to access Pastebin. You will also need one tier 3.5 memory (at least) in order to run the installer. Navigate to the root directory (which is just up one from the default OpenOS directory) and run the following commands: pastebin get fNQ4EUTg InstallData pastebin get uZhxkJLt Installer The first file may take a moment to download, as it is rather large. After both of them have downloaded, type 'Installer' into the prompt and wait. (If you get a 'too long without yielding' error, please report it in this thread) Once the installation has finished, power the computer off and on again, and it should now boot into StattenOS. (Currently, if no network card is installed, it will crash) Purpose: The purpose of StattenOS is to allow a player to automate parts of their base, and then access those parts from anywhere, at any time. Any device on the network can run a command on any other device, and receive feedback. Devices can also broadcast notifications across the network to alert the player if something happens while they are out around. If the OS is updated and you install the update on the central server, you can send the update to all networked devices, you can also create a new StattenOS install from any existing StattenOS install. Devices currently supported: SGCraft Stargates - Allow Tablets to wirelessly dial Stargates, and save addresses to the server which are then replicated to other tablets on the network. Mekanism Fusion Reactors - Allow automated charging and firing of the ignition laser, as well as checking status and a notification if, for whatever reason, the reactor deactivates. StattenOS will load device-specific settings and commands based on what 'Device Driver' it has been set to. You can use the command 'listDeviceDrivers' to print out a list of these. In order for the network to function correctly, at least one device must use the 'Server' driver. StattenOS can also compile task-specific lightweight versions of itself called 'miniApps'. Currenttly there are two of these: GCont - Simple gate control program which works with the dialGate and closeGate commands in the Tablet driver. LRelay - A relay for sending/receiving packets via linked cards. The primary purpose of this is to allow Tablets a network connection no matter where they are. (I couldn't get Linked Cards to function properly when placed in Relays) In order to install one of these apps, insert a floppy disk (I generally use a Floppy disk for these, but you can use a hard drive aswell) into a computer with a StattenOS install, and note the assigned drive letter (Drive A will always be the drive where the StattenOS install is located) and use the command 'installMiniApp driveLetter appName' to install the application on the disk. The disk can then be removed and placed in another computer. If a StattenOS update also updates one of the miniApps, you can simply insert the disk and it will automatically be wiped and updated with the new version of the app. (as long as you do not change the label) More information will come later.
  5. Elijahlorden

    StattenOS - Base control system

    @payonel Thanks for the suggestion, I'll be sure to make that change.
  6. Elijahlorden

    StattenOS - Base control system

    This is correct. The installer and installdata files should be downloaded to and run from the root directory.
  7. Elijahlorden

    How does the Thread API actually work?

    After reading through the wiki page on the OpenOS Thread API, it seems that Threads allow for preemptive yielding. What I am wondering is how this is accomplished, since (afaik) there is no way to implement preemptive yielding with normal Lua coroutines.
  8. Elijahlorden

    How does the Thread API actually work?

    Thanks for the responses! I think I misread the wiki. I thought there was some magic happening here that was allowing for preemptive yielding, hence my confusion. I appreciate the explanation, you saved from trying to pick through the Thread API myself!
  9. Elijahlorden

    StattenOS - Base control system

    Working on the network command rewrite, and a much-needed improvement to the terminal: https://gyazo.com/d3f8e0cdc9465aea66d0b3aa49e7e08a
  10. Elijahlorden

    StattenOS - Base control system

    The pastebin files have been updated.
  11. Elijahlorden

    StattenOS - Base control system

    I am, at some point, going to rewrite the installer to automatically grab InstallData from a GitHub release.
  12. Elijahlorden

    StattenOS - Base control system

    Right. I now know what's happening. Like an idiot, I did not update the pastebin files. You can grab the updated files off my StattenOS installer repo, or wait until I can update the pastebin files. My bad.
  13. Elijahlorden

    StattenOS - Base control system

    Not currently at my computer, but that it looks like that error is in the recursive JSON decode. Can you open the installer and verify that OS.sleep is defined?
  14. Elijahlorden

    StattenOS - Base control system

    To clarify, the program crashed before InstallData was fully read into memory? I think I need to add more tolerance, because I have used the installer multiple times without issue.
  15. Elijahlorden

    StattenOS - Base control system

    I have modified and reuploaded the installer. The installer should now work correctly. This update also means that the netcode overhaul is also now present in the InstallData file. Any issues with high network traffic causing computers to freeze should now be fixed.
  16. Elijahlorden

    StattenOS - Base control system

    This has been an ongoing issue. I need to modify the JSON library I use to yield during large operations.
  17. Elijahlorden

    StattenOS - Base control system

    That depends. Where are you getting the error?
  18. Elijahlorden

    StattenOS - Base control system

    The Fusion Reactor is composed of five components. You can view these using the 'listCompAddresses' command on a StattenOS install set to the Fusion Reactor driver. The command will list the name of each device, what block it is, and what it should be connected to. Use the 'setCompAddress [name] [UUID]' command to register a component specified with the name parameter to the UUID (will accept shortened UUID string) provided with the UUID parameter.
  19. Elijahlorden

    StattenOS - Base control system

    I am currently working on the OS again, and will look at the installer once I have finished the rather large amount of refactoring I have started on the network code (I found a huge optimization which should stop issues I was having with the computers locking up during times of high network traffic). What version of OpenComputers are you using? For now, if you would like to install the operating system to use it, you can always manually place the files in a filesystem (world/OpenComputers/FilesystemUUID). To do this the filesystem must have been initialized (either install OpenOS or mount it to a computer running OpenOS and edit a file onto it).
  20. Elijahlorden

    StattenOS - Base control system

    Yes, I did know about that. If you look at the code in the network module you will see that I set the card's strength to max before sending a packet. I have also found on several occasions that wireless packets are sporadically not received when sent from the same location. I've had this happen multiple times when, for instance, dialing a gate ~10 blocks away from the receiving computer with one layer of bocks separating the broadcast and reception points. While it only happens sometimes, it is annoying enough for me to not use wireless networks if I am not required to.
  21. Elijahlorden

    StattenOS - Base control system

    Still playing in 1.10. I'm not moving to a newer version until the Warp drive mod does. (it's still in the process of being updated to 1.10 lol) expect many drivers for WD devices.
  22. Elijahlorden

    StattenOS - Base control system

    If you do end up creating additional drivers, let me know. I would love to include them!
  23. Elijahlorden

    StattenOS - Base control system

    I designed the tablet driver with the intention of using linked cards. I find wireless networks in OC to be unreliable, especially where the tablet is concerned. I can add an option to toggle the use of wireless cards in responding to a ping and accessing the gateRegistry, though.
  24. Elijahlorden

    StattenOS - Base control system

    Initial post updated
  25. Elijahlorden

    StattenOS - Base control system

    Wow. Ok then. The OS is heavily network-oriented. It's written so any device can run a command on any other device in the network. The reason for having to press a key to bring up the prompt is because running one of these commands from the network will mess up the prompt if it is open. listComponentMethods takes an address, if you look at the arguments listed in 'help listComponentMethods' (I can allow it to look for components by primary if it does not find one by address). The shutdown/reboot command errors are legit, it's happening because the command does not for the case where a device-specific module (I call these 'Drivers') is not actually loaded (this happens by default since the device is set to 'Default', which does not load a file from /Drivers/. I forgot to remove some testcode which compiled the installer/InstallData files on boot, which is why it says it's removing them every time it starts (it's also why you see the OS packaging itself every time it starts).
×

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.