age-series / serverage Goto Github PK
View Code? Open in Web Editor NEWIn-game linux servers for your Minecraft!
License: MIT License
In-game linux servers for your Minecraft!
License: MIT License
Add a serial console BIOS sort of thing that provides minimal file editing/viewing on Event Computers
It can be something simple like a nano implementation along with a very basic shell that lets you move, create, delete, and copy files.
This mod should be relatively simple from the user's perspective:
Blocks:
Items:
Crafting Items.. these may come from Processing Age or other Age-mods.
The rack will have 5 sides. Each side can be connected to a different conduit. Conduits can have junctions.
In order to use a conduit, you must configure the connection using an Ethernet Cable or Fiber Cable, which will create a link between two endpoints that the Conduit is aware of. You can right-click any portion of conduit with a cable to open this interface. Ethernet cables are limited to 32 blocks of conduit length.
Racks have names as configured in their GUI (the same one used for configuring the devices within) that shows up in the connected Conduit networks.
Conduits can carry .. a few cables (8?). They are colored using Minecraft colors.
When you bring up the rack config, you can configure the servers and network switches with their connectivity with the 5 connectable sides of the block (the front face is not connectable). This allows you to do basic drag-drop connections between incoming conduits and the various slots.
Additionally, on the other side of the rack slots, you can connect the various servers in the rack into the network switch(es) of the rack. This uses a similar drag-drop interface and requires one cable item per connection.
Depending on the cards installed, servers can have 1 to 4 connections on them. Most 1u servers can have 1 card and a built-in Ethernet, most 2u servers can have 4 cards and built-in Ethernet. The reason it depends is because Lambdas and EC2 instances will be handled differently due to various limitations.
I do want to have various limits that bring these computers down a notch on processing power, namely slow networking (slower still with Ethernet as opposed to the Fiber), slow CPU cores (but multiple in the 2u boxes) and other design decisions.
I also want to make sure that boxes are locked down with a permissions system to the player using them; particularly for the AWS systems since people are going to bring their own accounts for that which integrates with the server via the AWS API direct from the Minecraft server. This will be configurable in the mod but we do need to be careful to only allow this for online mode Minecraft servers, as offline mode ones don't restrict players from impersonating one another.
The serial console will literally give the user a serial console. It's the most basic interface; we will not provide any framebuffer/keyboard/mouse support. Basically, the serial terminal allows you to configure it enough to do basic things, and if you need more power, get an Internet card or use SSH.
Somehow, we will allow disks to be moved from system to system so that you can set up Lambda boxes without directly typing the code into the serial terminal for the lambda, although we will provide a basic LambdaOS for this interface so that you can type your code and provide your inputs.
I think that the Lambda component would be really cool (particularly since it's cheap compared to EC2 for what we're probably doing) but it might have some interesting implementation challenges. Values passed back and forth between the Lambda and the mod will probably need to have some standardized format so that we can share 1) game state to the Lambda based on the inserted cards and messages and 2) let the Lambda inform game state back to the game server.
@Caeleron wants a USB drive
Enable users to specify the VPC in their account that their Lambda runs in.
Does GCP/Azure have something similar?
Make the computers able to be placed, rotatable, etc.
Create a working serial console that allows you to interface with computers
There will be relatively standard quantities:
We might need textures. I think we might have them already but need to check. Once that's done, make items and mark done.
We need to rename the Lambda Computer to Event Computer before mod launch.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.