[Mech]Fortification v0.6 [556]

Discussion in 'WIP and Development Status' started by Rogueleader89, Mar 22, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    Rogueleader89

    Finally got some free time and decided it was time to port over my Fortification plugin (was going to wait for group support from bukkit, but thats taken long enough already). Putting this in WIP since I'm not done porting it yet (apologies if a mod thinks this is in the wrong section, wasn't entirely sure when I posted it), but it is in a semi-functional state (no horrible server crashing bugs that I know of). I will release it fully once I finish porting everything and get permission support in (right now everyone can use everything, Ops bypass to teleblock shields). As with any WIP plugin, there are likely to be bugs, I haven't run into any in this particular build (which is why I am putting it up), but I could easily have missed some, so use at your own risk.


    To steal my old description from the hmod page (with some updates):

    This is a redstone focused plugin aimed at leveling the playing field in pvp by providing defenders with the tools necessary to mount a proper defense. This being said, many of the features I am adding can serve non-combat purposes as well.


    What's in this plugin?

    As of v0.3.1 it adds flame turrets, sensors, and trap doors to minecraft.

    [​IMG]

    Turrets

    Flame Turret

    You can make a flame turret if you have the permissions /flameturret and /turret.
    To do so place a sign on the block type defined in fortification.properties(bloodstone, id 87 by default).
    The first line must read "Flame" (no quotes, not case sensitive)
    second line is "[Turret]" (again not case sensitive and no quotes)

    When the sign is provided with power (via redstone) and the ground on the opposite side of the bloodstone is level, fire shall appear up to 5 spaces out from the bloodstone (fire will not pass through solid blocks and can not appear in midair).

    Sensors

    You can make a sensor if you have the /sensor permission.
    To do so place a sign on a block of your choice, with the first line of text being the type of sensor you want (blank = default), and the second line being "[Sensor]" (without quotes, not case sensitive) and a lever on the opposite end of that block. Now, in the case of the default sensor, when someone passes within 8 (or the length defined in fortification.properties) blocks infront of the sensor it will detect their presence and activate the lever (and thus turn on any redstone near it). Each type of sensor is a different filter that can be applied to how it detects people (you can detect only certain people, ignore certain people, detect/ignore by group, etc.).

    For a full list of sensor types ingame, type "/sensor". For more info on a specific type, type "/sensor type". (This also works for turrets, but its kind of pointless since there is only one turret type right now).

    Trap Doors

    *untested in v0.6

    You can make a trap door if you have the /trapdoor permission.

    To do so place a wall sign with [Trapdoor] on the second line (case insensitive) on a block of the type you would like the trap door to remove(/replace if you have it set to replace blocks in fortification.properties (defaults to false)).
    On the first line put the length you would like the trapdoor to span (must be an integer greater than 0 and less than or equal to the maximum defined in fortification.properties, defaults to 4).
    From here you just have to provide power to the sign, power will remove blocks of the type the sign is on out to the length you set. If you have replace-trapdoor-blocks-on-power-off set to true it will replace all air (id 0) within the set length with the block type the sign is on when the redstone is powered off.

    Equals Signs
    Place sign with [Equals] on second line on a block, lever on back of the block. If the text on the first line of the equals sign equals the text on the third line of the equals sign the lever will flipped and the redstone it is connected to turned on (equals checks are not case sensitive). Command permission is /equalssign

    Send Signs

    *not yet ported*

    placing [Send (direction)], where (direction) = the first letter of a compass direction ([Send N] for instance), will, upon receiving redstone power, send text from one sign to another (one sign in the direction you are sending, one sign in the opposite direction, text that is sent is text which is on the same line that [Send] is on on the send sign, can have [Send] on multiple lines).

    For instance, if you had a setup like the below (will replace with pictures later :p)

    |South Sign 1 | | [Send N] | | North Sign 1|

    and the send sign (middle) recieved power, the sign to the south (South Sign 1) would have its next transmitted to the sign to the north (North Sign 1), so that the north sign would then read "South Sign 1". Options in the properties file include whether or not you can send commands via send signs (looks for [ ], thus compatible with craftbook as well as commands in fortification, also checks for AllDo: PlayerDo: and ServerDo: signs from signcommands), whether or not the original text is erased, and whether or not sent text can overwrite existing text. Command permission is /sendsign

    Message Signs
    The first line of the sign is the name of the person you want to send a message to. The second line is [Message]. The third and fourth lines are the message you want to send. When redstone power is recieved the message on the third and fourth lines is sent to the person on the first line. Command permission is /msgsign

    Shields
    You can make a teleblock shield if you have the command permission /teleblockshield

    As their name suggests, teleblock shields prevent teleportation within a set range around the teleblock shield (configurable in fortification.properties). This prevents both teleporting in and out. It effects everyone except people who have the /ignoreteleblock command permission. By default, teleblock shields must be built on obsidian.

    Download:
    <Edit by Moderator: Redacted mediafire url>

    Planned Future Updates

    Show Spoiler
    * Permissions/Group support
    * Include location of message sign in text sent to target player.
    * Prevent a single message sign from spamming a player constantly with text.
    * Add command that allows player to mute all messages from message signs.
    * Create new type of send sign that exchanges/flips text between two signs (so s1 becomes s2 and s2 becomes s1)
    * Add ability to move strings from one line of a sign to a different line on another sign (s1l1 to s2l4 for instance [Send N3] would send
    * the string on the line the send sign is on to line 3 on a sign to the north.
    * Add device that can activate redstone when a chest in its vicinity is interacted with. l1 = Chest l2 = [Sensor]
    * Add device that can detect the destruction of nearby blocks and activate redstone when they are destroyed.
    * Allow trap doors to go through lava/water.
    * Add optional fuel/ammunition costs to turrets
    * add area health regen signs w/filters like sensors, possibly a shield type?
    * add new sensor types (multi-directional, radius detect, more filter options (custom filters))
    * add sensor that can detect mobs
    * shield signs to increase hardness/durability of blocks around it (not possible atm).
    * different types of shields are possible here. Bubbleshield could hold back water similar to the bubble spell.
    * Endurance shields could replace destroyed blocks around them with blocks from a chest located on the block the shield sign is on.
    * Large Area Teleporter - teleport a number of blocks/people from one point to another (for use with airships).
    * advanced sensors that can send name of detected player to another sign (could have it be l1 = listname; l2 = [Sensor]; l3 = name of player)
    * Math signs, allow user to add/subtract/divide/multiply numbers on lines 1 and 3, return result on line 4.
    * Boolean signs, allow user to check a true/false value, if true turn on redstone, if false turn off (similar to string comparison but can use number symbols like '>', '<', '<=', '>=' in conjunction with math signs)
    * Ammunition/item use system for turrets/shields.
    * String transmitter/reciever, l2 = [sTransmitter], l2 = [sReciever]; l3 & l4 are transmitted/recieved, l1 = bandwidth (name of rec or rec to send to)
    * New sensor types that can detect the items a player is carrying, filters that take advantage of this: detectweapons, detecttools, detectid.
    * Sensor that displays name of detected player for use in conjunction with send and message signs.
    *Mob Sensors

    Turret types to add:
    * Arrow
    * Fire Arrows - Light any blocks they hit on fire.
    * Artillery - fires TNT
    * warp - teleport the player to a new position (defined by sign placement?)
    * push - Pushes player back away from the turret
    * pull - pulls player towards the turret
    * frost - freezes a player in place temporarily; optionally freezes water below firing area.
    * item grabber - Take item player is holding and stores in chest above turret (or an item of id defined by user)
    * item dispenser - shoot out an item from a chest near the turret. Chest on top of block with turret sign, user may specify direction that chest dispenses items.
    * Multi-directional turrets, place block ontop of turret block, fires out in all user chosen directions
    * Floor traps - turrets that come up from the floor and fire once when redstone triggered.


    I am always open for more suggestions for new features.

    Things left to be ported:
    Send Signs
    Config file
    Equals Signs (may work as they are now, but untested)
    Trap Doors (also may work as they are now, but untested)


    Changelog

    Show Spoiler
    0.6 (beta)
    Updated for Bukkit (mostly)
    Sensors now turn off redstone automatically after approximately 2 and a half seconds (to prevent rare bugs which kept them on forever)

    0.5
    All Sensor issues fixed (no, really this time :p)
    Sensor width increased back up to 3
    teleblock shields added.
    equals signs added
    message signs added
    send signs added
    added /fortification command to tell user what permissions they have within the plugin.
    setting the required block type id for a device to 0 in the properties file will allow it to accept any block type (allowing flame turrets to be built on anything)
    beginnings of frost turrets added...
    updated for b132

    0.4
    All Sensor issues fixed
    Sensors no longer require redstone clocks running to them.

    0.3.1
    Trapdoors added
    Flat file support added

    0.3
    Permissions fixed... again

    0.2
    Permissions fixed.

    0.1
    Plugin released.
     
    Last edited by a moderator: Dec 14, 2016
    chibirubara likes this.
  2. Offline

    RazorFlint

    Hmmm I Like the look of this I'll try this later.
     
  3. Offline

    TheAnyInbox

    Yeah, the /sensors option look tons simpler than FalseBook's one. A "suprise" mob spawner would be cool! So they go into you house and... OMG ZOMBIEPIGMAN!
     
  4. Offline

    Rogueleader89

    apologies for falling behind on this, writing a few seperate plugins for my server as we move to a new map, still planning on getting this up fully/continuing it into the future.
     
  5. Offline

    maladryne

    Sensors seem to be ignoring fortification.properties and are detecting within 4 squares only.
     
Thread Status:
Not open for further replies.

Share This Page