Giter Club home page Giter Club logo

additionalrails's People

Contributors

alberto512 avatar anuar2k avatar cervator avatar darkweird avatar eviltak avatar jdrueckert avatar keturn avatar mayant15 avatar pandacontron avatar pollend avatar qwertygiy avatar skaldarnar avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

additionalrails's Issues

New Cart Type: Hoover Cart

The Hoover Cart would collect all items and blocks laying on the ground in 3x3 area around the cart. It would have an inventory used to store the collected items and a input space for fuel, which would power the device. One fuel unit would provide energy for collecting for example 50 items/blocks.

This cart could be used together with a tunnel borer cart to collect digged stuff, or in some automated farm to collect the harvest.

This cart would collect these items in a similiar way like the player does.

Pressure plate rail proposal

Description

The rail will emit a signal of infinite strength for the duration a vehicle is on it, much like the pressure plate in the signalling module.

Dependencies

Proposed Implementation

Much like the booster rail implementation, the segment entry and exit events will be used to detect the presence of a cart on it. This can be done by maintaining a count of the number of vehicles on top of the rail; a counter is incremented and decremented every time the entry and exit events are called respectively. The counter method may seem unnecessary at first, but will come in handy when the multi-axle carts are released.

On every update, if the above defined counter is non-zero, there is something on top of the rail and a signal is emitted.

Possible uses

  • As a trigger to initiate the unloading process once a cart carrying items reaches its destination
  • As a general signal generator equivalent to the Signalling module's pressure plate but for carts

New Cart Type: Torch Placer

The Torch Placer Cart would place torches on walls in a ~5x5 area around itself. It would have an inventory in which torches are stored. It would possibly have a configurable "light level" (configured through GUI) at which it should place another torch. The cart would attempt to place a new torch on a surface if the light level at the block it is currently occupying falls below the cart's "light level" threshold.

This would be a useful cart to have with the tunnel-borer cart so that tunnels are illuminated.

New Rail Type: Signal Controlled Rails

The new rail type would have the ability to essentially control cart movements. It would have a master block, along with variable amount of tracks, which could be increased by laying down more tracks directly next to each other, but facing parallel in the same direction. The master block could have 2 specific sides where rails could be placed in parallel. When a certain level of signal power (This would interact with the Signalling module) is applied to the master block, it would activate the corresponding rail (essentially a booster rail). The master block would also have a GUI that would allow the user to select which rail would activate at which signal power level. For example, the user could set rail 3 to activate at signal power 7. This would work well as a way to automate rail systems, (if only there were a rail that would send a signal when carts crossed it) because it would have the ability to send different carts back and forth along the rail automatically.

New Cart: Chest Cart

This cart is essentially a cart that acts as a chest on wheels. It would have a GUI that is opened with e. The GUI would be the same as a chest GUI but would have double the space. I was thinking that this cart could have the same texture as a cart on the outside but have a chest block on the inside. I think this cart would be very useful in a mining setup for sending mined blocks back up to the surface so you can keep mining.

Tunnel Bore and Track Layer carts are directional

These two carts both use the connections of the rail block under them to determine which way they are going. This system was dependent on the fact that straight tracks could still have different connections despite being the same block, which has evidently been changed with the new block families. This means that these carts only work going in one direction now. To avoid more issues, it would probably be best to use a different way of detecting the cart's direction.

Collecting block

Description

A block that will collect the items from a cart that has an inventory.It will be a red block with an inventory.

Implementation

It will be placed at one side of an ActivationRail, and when a cart goes trought the ActivationRail, it will check if the cart has an inventory. If it has it, and it has things inside it, the block will pick up all the objects from the cart inventory. The block will only work if it is placed in a range of one block to the Activation Rail

Usages

It will be useful for carts like the harvesting cart that store things in their inventorys

Stopping Rail

I suggest to create a new type of rail that will stop all the cart. This rail could be useful at the end of the roads. It don’t matters the speed of the cart, this rail will stop it.

New Rail Type: Derailer

This new rail type would have the ability to remove carts from the rail and make them drop as items. Anything stored inside the cart would be kept, This would work well as a way to collect more advanced carts that may be implemented in the future (like harvesters, chest carts, etc.) conveniently. The rails would have an always on variant as well as a variant which interacts with the Signalling module in order to turn on and off, for more advanced systems.

New Rail Type: Blocker

Features:

The rail would stop a cart indefinitely or for a certain period of time.
An NUI screen that comes up when the user interacts with the rail could allow the user to change various options such as:

  • Whether to stop carts indefinitely or delay them
  • If delaying, the length of the delay
  • Whether to reverse carts' direction when releasing them
  • Whether to send a signal when a cart is blocked or released
  • Whether to release carts when receiving a signal

It would be nice if the rail could show how much time is left by changing its appearance(tile).

Implementation:

The core feature could be implemented by saving the references and velocities of all carts passing over the rails(in a way similar to how BoosterRail and OnewayBoosterRail save their carts), setting their velocity to 0 and setting it to the original velocity when releasing them.
Delaying could be achieved with DelayManager or UpdateSubscriberSystem.

Possible uses:

  • Preventing collisions at intersections
  • Making train stops
  • Linking a certain number of carts together automatically(if such a feature is added in the future)

Needed modules:

Signalling for sending and responding to signals.

Prefab for Hoover Cart fuel

Currently, the Hoover Cart will only accept "Core:Torch" as fuel. However, the Torch has been moved to CoreBlocks; #32 would change this to accept any torch block, but that is still a temporary solution.

Ideally, a prefab option should be made to allow multiple types of fuel to be defined.

New Rails Idea (Reverse Rail)

My idea about reverse rail is an activating rail that will reverse the moving direction of the cart (if the cart moves forward, it will move backward with the same speed when it touches the activating rail). This activating rail will use the signalling that triggered the cart to move reversely. To make the cart move reversed, i am thinking of changing its' moving direction by sending an impulse event to the opposite direction when the signalling rail triggered the cart. This event will make the cart stop first then start moving the other direction. This should make the cart move backward and additionally player can use it as transportation inside the game. a straight rails without circular path can be used to transport players and things as the cart or maybe a locomotive moves forward and backward frequently :D

New Cart: Rocket Cart

Introduction/Concept

This cart would be really useful for going down a really long mine shaft much quicker than a regular mine cart or even a mine cart on powered rail. It could also be used for Extreme Parkour™: Mine Cart Edition.

Speed

This cart is a normal mine cart, but once it gets going, it picks up speed 3 times as fast as a normal mine cart until it reaches a top speed of 10x faster than a normal mine cart. When this cart leaves the track, it should start to slow down as fast as a normal mine cart would off the rails. This means it would travel much farther without rails.

Mechanics

The cart would also have a GUI that allows the player to put in fuel, for instance any item that is wood or fuel. Every 10 blocks, the cart would consume a set amount of fuel, not an amount of fuel items to make sure that different fuel densities are respected. This fuel consumption would need to be set through play testing. If the cart runs out of fuel it begins to slow down at normal mine cart speeds and reaches a low speed of 0.5x that of a normal mine cart (to account for the rocket boosters). If this cart crashes into any stone/metal blocks, it explodes.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.