Comprehensive Guide:Protection: Difference between revisions

From CivWiki
Jump to navigation Jump to search
Content added Content deleted
(→‎Decay: updated decay timers)
(redir to Mechanics and Plugins)
Tag: New redirect
 
(15 intermediate revisions by 6 users not shown)
Line 1: Line 1:
#REDIRECT [[Mechanics and Plugins]]
{{See also|Comprehensive Guide}}
Mechanics that protect structures and items.

== Citadel ==
''Protect blocks {[https://github.com/CivClassic/Citadel source], [https://github.com/CivClassic/AnsibleSetup/tree/master/templates/public/plugins/Citadel config]}''
[[File:Citadel block break animation.gif|thumb|305px| '''Example of a reinforced block being broken.''' The block break animation plays and the block breaks but because it is reinforced, the block reappears.]]

Spend resources to reinforce blocks to [[Comprehensive_Guide:Protection#Namelayer|private groups]]; players not on the group must to break the block multiple times in order to destroy it.

===Overview===
Reinforcing blocks costs one item of the corresponding reinforcement material. This item is returned only when a player who is on the reinforcement group mines the block or uses the relevant Citadel command. Choice of reinforcement material is selected by punching the block with a chosen item or using Citadel commands.

{| class="wikitable"
|+Reinforcement materials {{refn|group=note|There also exists a bedrock reinforcement that takes 147483646 breaks to destroy, accessible only to server operators.}}
!Material
!Number of breaks to destroy
!Maturation time
!Acid maturation
|-
|Paper {{refn|group=note|Patreon reward paid by [[wjkroeker]]<ref>https://www.reddit.com/r/civclassics/comments/crz0fi/admins_chadmins_paper_is_real/</ref>}}
|1
|1 minutes
|1 minutes
|-
|Stone
|50
|5 minutes
|20 minutes
|-
|Iron
|300
|30 minutes
|6 hours
|-
|Diamond
|2000
|4 hours
|2 days
|-
|}

{|class="wikitable"
|+Citadel commands
!+class="nowrap" | Usage
! Alias
! Description
|-
| '''/ctfortify [groupname]'''
| /ctf
| Reinforces all blocks placed until reinforcement material runs out or command used to exit reinforcement mode. Requires holding reinforcement material items when typing command
|-
| {{nowrap|'''/ctreinforce [groupname]'''}}
|/ctr
| Reinforces blocks punched while holding a reinforcement material
|-
| '''/ctinfo'''
| /cti
| Will give reinforcement information about blocks clicked on.
|-
| '''/ctoff'''
| /cto
| Turns off all reinforcement and information modes
|-
| '''/ctacid'''
|
| Activates an acid block
|-
| /ctbypass
|/ctb
| Bypasses a reinforcement and gives the reinforcement back when you break it
|-
| /ctinsecure
|/ctin
| Toggles insecure reinforcment
|-
|/rein
|
|List all possible materials you can reinforce with, in a GUI
|-
| /help Citadel
|
| List all commands
|}

* Tool durability will not go down when damaging a reinforced block
* Because a moment passes between block break animation and reinforced block reappearing it is possible to 'reach' behind reinforced block. The block will reappear before a player can fall or walk though, however
* It is possible to double reinforce a double chest by placing it while using <code>/ctf</code>
* Explosions will do one reinforcement damage to all blocks in blast range. This only applies to blocks that the explosion would have been able to damage had they been unreinforced.

====== Acid blocks ======

Reinforcing a gold block creates an acid block. An acid block can remove the reinforced block directly above it regardless of respective reinforcement groups. The acid block must be allowed to mature and must use the same reinforcement type as the block directly above it. When enough time has passed such that the acid block is mature, looking at the acid block and doing /ctacid will remove the blocks. The block on the top will be removed an the gold block will be dropped on the ground. /ctacid has a range of 40 blocks. It can remove several blocks at the same as long as they line up with the player's cursor. Acid blocks can be used in traps.

====== Insecure reinforcements ======
A reinforcement can be set to insecure using /ctin or /ctinsecure and hitting it. This allows hoppers to move items out.

====== Redstone interactions ======

* Reinforced buttons will only emit a signal if someone from the namelayer is nearby (distance?)
* Comparators cannot inspect the content of a reinforced container block (e.g: chests, furnaces, droppers)
* Droppers and hoppers will not transfer items if the destination block is not on the same reinforcement group.
* Blocks can not be attached to a reinforced redstone component (e.g dropper, dispenser, hopper?) if not on the reinforcement groups.
* Reinforced doors, trapdoors and fences gate will only respond to a redstone signal if someone on the reinforcement group is less than 7 blocks away from it <ref>https://www.reddit.com/r/civeconomics/comments/9qwas2/on_citadel_redstone/</ref>

====== Decay ======

Reinforcements placed under a group will decay if the group becomes inactive (no player in the groups logs in).

Currently, reinforcements will start decaying after 3 months of inactivity and the damage multiplier doubles every year.
The damage multiplier is applied to every block break. This means that with a damage multiplier of 2, reinforced blocks can be broken twice as fast.

Since a single player logging in is enough to reinitialize the decay clock and since the decay rate is rather slow, decayed buildings aren't common.

{|class="wikitable"
|+Decay steps
! Decay state
! Inactivity
! Damage multiplier
|-
| Not decayed
| < 3 months
| x1 (normal)
|-
| Partially decayed
| > 3 months but < 1 year
| 2-8
|-
| Highly decayed
| > 1 year but < 2 years
| 16-128
|-
| Heavily decayed
| > 2 years but < 3 years
| 256-1024
|-
| Completely decayed
| > 3 years
| >= 2048
|}

====== Terminology ======
A common abbreviation series is DRO/IRO/SRO/PRO, standing for for Diamond/Iron/Stone/Paper reinforced obsidian.

=== Advanced features ===

* Note that reinforced blocks are not affected by gravity (e.g. reinforced sand will float). However if the block by default breaks when block beneath is removed, it will break even if reinforced (e.g. rails whose base is broken will also break).
* Being in reinforcement or fortify mode will prevent the use of citadel buttons. Walking over pressure plates while in this mode will reinforce them to currently selected group.
* Reinforcing farmland will give crops planted on it citadel protection.
* Reinforce leaf blocks and destroying the tree they are apart of will lead to loss of reinforcment.

===== Known bugs =====

* Placing a reinforced button/sign and breaking the block at the base will make it drop but will leave a reinforced air block behind. As this is an exploit its use should be avoided.

===Reinforcement values===

An online calculator can be found at: https://okx.sh/break/

===Non reinforceable blocks===

Some blocks cannot be reinforced. This includes blocks with unique properties such as TNT, bedrock and portal blocks. Most plants cannot be reinforced. Finally liquids and entities are also unreinforcable (they are not blocks).

{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Non reinforceable blocks (excluding plants)
!Block name
|-
|BEDROCK
|-
|END_GATEWAY
|-
|END_PORTAL_FRAME
|-
|END_PORTAL
|-
|PISTON_EXTENSION
|-
|PISTON_MOVING_PIECE
|-
|TNT
|-
|FIRE
|-
|SNOW (only layers of snow, the full block can be reinforced)
|-
|ICE (only normal ice)
|-
|PORTAL
|-
|CAKE_BLOCK
|-
|WEB
|}

{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Non reinforceable plants
!Block name
|-
|CROPS
|-
|CARROT
|-
|POTATO
|-
|NETHER_WARTS
|-
|VINE
|-
|CACTUS
|-
|SUGAR_CANE_BLOCK
|-
|RED_ROSE (Includes all single block tall flowers)
|-
|YELLOW_FLOWER
|-
|BROWN_MUSHROOM
|-
|RED_MUSHROOM
|-
|SAPLING
|-
|LONG_GRASS
|-
|DEAD_BUSH
|}

==Namelayer==
'' {[https://github.com/CivClassic/NameLayer source], [https://github.com/CivClassic/AnsibleSetup/tree/master/templates/public/plugins/NameLayer config]}''

''A Citadel reinforcement group manager. Allows the creation of groups in Minecraft. From buildings to chat messages, one can selectivity restrict or expand which players have access.''

The extensive Namelayer commands can be entirely avoided:

* <code>/nl [group]</code> - Open Namelayer GUI.

The first screen of the Namelayer GUI shows rows of chestplates each corresponding to a Namelayer group, each chestplate type corresponding to a permission level (Leather = Member, Gold = Mod, Iron = Admin, Diamond = Owner. The enchanted chestplate shows the default group which is the group reinforcements will be on after typing only <code>/ctf</code>). For example the admin owner permission level gives the ability to delete the group while the member does not by default.

[[File:Namelayer Main GUI Example.png|thumb|250px|The GUI opened by typing '/nl'.]]

{|class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Namelayer Active Commands
!width="30%"| Namelayer command
!width="70%"| Function
|-
|/nlcg <group> [password]
| Creates a group, optionally with password
|-
| /nlsp <group> <password>
| Adds password to an existing group
|-
| /nljg <group> <password>
| Joins a password protected group
|-
| /nlag <group>
| Accepts an invitation to a group
|-
| /nlbl <group> <player>
| Blacklists a player in a group
|-
| /nldg <group>
| Deletes a group
|-
|/nlip <group> <player> (PlayerType- default MEMBERS)
| Invites player to a group with optional rank
|-
| /nlleg <group>
| Leaves a group
|-
| /nllink <super group> <\sub group>
| Links two groups to each other as nested groups. (unsupported)
|-
| /nlmg <The group left> <The group that will be gone>
| Merges two groups together. (Warning : Doing this is not recommended and may eventually cause groups to break)
|-
|/nlmp <group> <add/remove> <PlayerType> <PermissionType>
|Modifies the permissions of a group.
|-
| /nlpp <group> <player> <playertype>
|Promotes/Demotes a Player in a group
|-
| /nlrg <group>
| Rejects an invitation to a group.
|-
| /nlubl <group> <player>
| Removes a player from the blacklist for a group
|-
| /nlrm <group> <member>
| Removes a member from a group.
|-
|/nlri <group> <player>
| Revokes an invite
|-
|/nlsdg <group>
| Sets or changes default group
|-
|/nltaai
|Toggles the auto-acceptance of invites
|-
| /nltg <group> <player>
| Transfers a group to another owner
|-
|/nlunlink </super group> </sub group>
|Unlinks two groups from each other. [Unsupported]
|-
| /nlun [CONFIRM]
| Updates account name on the server to the one minecraft account currently has [Unsupported]
|}

{|class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Namelayer Passive Commands (Get group stats)
!width="30%"| Namelayer command
!width="70%"| Function
|-
| /nllg
| Lists all groups player is in. Formatted "<group> : <permission level>"
|-
| /nlgdg
| Gets default group
|-
|/nlgls
|Gets the amount of groups on server
|-
|/nlgs <group>
| Get stats about a group. (Total members and list of members)
|-
| /nlid
| Infodump including list of members for each role level in each group
|-
| /nllci
| Lists players current active invites.
|-
| /nllm <group> (PlayerType)
| List the players with selected role in a group
|-
| /nllp <group> <PlayerType>
| Shows permissions for a PlayerType in a group.
|-
| /nlsbl <group>
|Shows all blacklisted players for a group
|}
{|class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Namelayer Permissions in order they appear on /nl GUI
!width="30%"| Permission Name
!width="70%"| Function
|-
| LIST_PERMS
| Can list the permissions of any PlayerType
|-
| OPEN_GUI
| Can open namelayer GUI for group
|-
| BASTION_PEARL
| Can pearl into bastion fields
|-
| BASTION_ALLOW_EXILED
| Allows exiles inside bastion range
|-
| MERGE
| Can merge group with another group they have MERGE permissions on [Note: Does Merge group work as intended?]
|-
| DOORS
| Can open and close reinforced doors
|-
| ADMINS
| Allow inviting admins and removing existing admins
|-
|CLEAR_SNITCHLOG
| Can clear snitchlog with /jaclear
|-
|SNITCH_NOTIFICATIONS
| Can see chat messageswhen players trigger snitches
|-
|JOIN_PASSWORD
| Perm level given to members when they join with a password
|-
|LINKING
|Linking to another group as supergroup or subgroup [Unsupported]
|-
|OWNER
| Can invite new owners and remove existing owners
|-
|DELETE
| Can delete group
|-
|READ CHAT
| Can read chat messages sent in group
|-
|MODS
| Can invite new owners and remove existing owners
|-
|ACIDBLOCK
| Can place acidblocks reinforced to group (/ctacid)
|-
|CROPS
| Can place and destroy crops
|-
|UPGRADE_FACTORY
| Can upgrade factories
|-
|MEMEMANA_WITHDRAW
| Can withdraw mana
|-
|SNITCH_IMMUNE
| Will no longer cause snitch alerts when in range of snitches on group.
|-
|BASTION_PLACE
| Can place in bastion ranges reinforced to group
|-
|WRITE_CHAT
| Can type messages in group
|-
|READ_SNITCHLOG
| Can check snitchlogs with /ja
|-
|MEMBERS
| Can invite new members and remove existing members
|-
|PERMS
| Can adjust all permissions in group (Dangerous)
|-
|USE_FACTORY
| Can use factory reinforced to group
|-
|INSECURE_REINFORCMENT
| Can use hoppers to take items out of reinforced containers /ctinsecure
|-
|SNITCH_TOGGLE_LEVER
| Can do /jaToggleLevers 1 to allow snitchs triggering redstone
|-
|BASTION_LIST
| Can list bastions on group (/bsl)
|-
|REINFORCEMENT_INFO
| Can use /cti and see group block reinforced to
|-
|BYPASS_REINFORCEMENT
| Can use /ctb and break reinforcement, returning reinforcement item
|-
|REINFORCE
| Can /ctf, /ctb blocks
|-
|LIST SNITCHES
| can /jalist to see all snitches on group
|-
|BLACKLIST
| Can blacklist players and remove existing blacklisted players
|-
|PASSWORD
| Allows viewing this groups password and changing or removing it
|-
|GROUPSTATS
| Can check stats on group
|-
|BASTION_MANAGE_GROUPS
|
|-
|LOOKUP_SNITCH
| Can /jalookup a snitch giving coords
|-
|RENAME_SNITCH
| Can rename snitches
|-
|CHESTS
| Can use chests
|-
|KIRA_MANAGE_CHANNEL
| Can setup Kira relays on discord to relay group messages and alerts
|}

=== Updating username ===
Usernames are permanent. Once an account has logged in, it won't be possible to change the username. Changing the username the username using the official Minecraft website will not change it on CivClassic.

== Bastion ==
'' {[https://github.com/CivClassic/Bastion source], [https://github.com/CivClassic/AnsibleSetup/tree/master/templates/public/plugins/Bastion config]}''

Prevent actions such as block placements inside claims, unless bastion is broken.

=== Basic Mechanics ===
CivClassic<ref>https://github.com/CivClassic/Bastion/wiki</ref> uses '''Bastion''' in tandem with Citadel and Namelayer. It adds two types of blocks to the game: city bastions (lored bone block) and vault bastions (lored sponge). They are an advanced defensive block, preventing foes from taking action in the space surrounding it. The fields they project cover a square area from the y-level where the bastion block is located up to y256 (sky limit). Vault bastions are typically used in defensive infrastructure (most notably, vaults) to prevent block placement and ender pearl throwing. They allow or disallow players based in membership on the group the bastion is Citadel-reinforced with, and can be broken by hostile players from any block under their coverage. Essentially, doing any "forbidden" activity inside of a bastion field will cause damage, and over a period of time (scaling with the number of people attacking) the bastion will break, deleting the block and removing its field from existence. The health of the bastion block depends on the Citadel reinforcement, but due to the high cost of the block there is little sense in using anything but diamond. A bastion cap refers to the blocks, normally 1 layer of DRO (Diamond-reinforced obsidian), placed around the bastion block itself to protect it. Without a cap, it may be more efficient for attackers to mine the bastion block itself than to break it via block placements.

* Breaking a vault bastion or city bastion alone with block placements takes exactly one hour and 30 minutes respectively for a single player. Bastions can be concurrently broken by several players, the speedup factor will be equal to the number of player e.g: It'll take 4 times less time for 4 players to break a bastion that it'd take for 1 player. (15 minutes vs 1 hour)

* 50% of the damage dealt to vault bastions will also be inflicted on all other bastions within a 5 blocks radius (center block + 5) from the vault bastions that were not initially affected by the initial damages. <ref>https://www.reddit.com/r/civclassics/comments/ggtkdx/changelog_20200510/</ref>

* 50% of the damage dealt to city bastions will also be inflicted on all other bastions within a 25 blocks radius (center block + 25) from the city bastions that were not initially affected by the initial damages. <ref>https://www.reddit.com/r/civclassics/comments/ggtkdx/changelog_20200510/</ref>

Bastions are created with FactoryMod using a bastion factory. To build one, it costs 32 of each of the 6 lored bastion components, each coming from a separate factory:
{| class="wikitable"
|+'''Bastion Components'''<ref>https://factorymod.github.io/civclassic/</ref>
!Item
!Factory of Origin
!Ingredients (per recipe)
!Yield
|-
|Gearbox
|Redstone Mechanics
|16 gold, 4 iron blocks, 32 redstone
|1
|-
|Energizer
|Cauldron (Tiers 2 and 3)
|6 emeralds, 32 charcoal, 6 gunpowder
|1
|-
|Bio Component
|Animal Husbandry
|3 slimeballs, 32 ice, 16 grass blocks, 1 lava bucket (only consumes lava)
|1
|-
|Refractor
|Ore Smelter
|6 diamonds, 64 glass, 32 lapis blocks
|2
|-
|Casing
|Carpentry
|64 chests, 4 iron blocks, 64 obsidian
|4
|-
|Radar
|Iron Forge
|32 iron, 16 redstone, 8 eyes of ender
|8
|}
This means that, not including the 6 factories above, the total cost of a bastion factory is roughly 96 diamonds, 192 emeralds, 174 iron blocks, 57 gold blocks, 121 redstone blocks, 1024 ice, 1024 glass, 1024 charcoal, 512 lapis blocks, 512 obsidian, 512 chests, 512 grass blocks, 192 gunpowder, 96 slimeballs, 32 eyes of ender, and a lot of lava. Due to this steep price, most players produce bastions collaboratively or purchase them from others with the means.
{| class="wikitable"
|+Bastion commands
!Usage
!Description
|-
|/bsl
|Displays list of all bastions player is on Namelayer group for and their type, location and maturity
|-
|/bsi
|(INFO mode) Using USE key on block within a bastion field displays whether a bastion is present and if player is added to bastion group. If the bastion block itself is clicked, the bastions maturity is shown : e.g. "Bastion: Some Strength" if maturing and a percentage equal to however much health of the bastion remains.
|-
|/bsga <group>
| Add a Namelayer group to a set of "allowed to build" groups for a Bastion's Namelayer group. People on are thus able to build on areas covered by the bastions on . The person running command does not need to be on the added namelayer group.
|-
|/bsgd <group>
|Removes a previously allowed group from a Bastion's Namelayer group
|-
|/bsgl <group>
|list allowed groups in bastion groups
|}

{|class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Obsolete or misleading bastion commands
!width="30%"| Usage
!width="70%"| Description
|-
|/bsf
|Allows you to reinforce a sponge block without turning it into a bastion. Note: After this command is used, it may not be possible to turn sponge block back into bastion - the /bsb command does not appear to work. If you wish to display a bastion block without it applying an effect, simply place it down without reinforcing
|-
|/bsb
|(BASTION mode) Any reinforced target sponge block will become a Bastion Block. Note: This does not appear to work : if one wishes to place a bastion block they should simply place in normal mode, which requires no command.
|-
|/bsd
|(DELETE mode) Click bastions to delete them Note: This does not appear to serve a function - if one wishes to remove a bastion they own they can simply mine the bastion and do not have to delete the block and in the process lose the bastion.
|-
|/bso
|(NORMAL mode) Changes all bastion modes to normal. Note: Is not needed unless one is using DELETE or BASTION modes, which are also necessary. One can place bastions without using any bastion command, simply by reinforcing the bastion block.
|-
|/bsc
|No longer a command
|}
<br />

{| class="wikitable"
|+Bastions comparison
!Name
!Break time
!Maturation time
!Size
!Block placement
!Block reinforcement
|-
|Vault
|1 hour
|2 days
|21 x 21
|Yes
|Yes
|-
|City
|30 min
|2 days
|101 x 101
|No
|Yes
|-
|}

====== City Bastion ======


City bastions prevent unauthorized players from

* Appearance: bone block

* Size: 101 * 101 centered around the bastion block

* Description: Allow block placement but prevents block reinforcements. Prevent exiled players from entering area of effect. Exiled players who come within the bastion range will be teleported to a location outside of the bastion field.
*Factory Cost: 1 of each bastion component yields 4 city bastions.

====== Vault Bastion ======

* Appearance: sponge

* Size: 21 * 21 centered around the bastion block

* Description: Prevent block placement, Prevent pearling to any block within the bastion field. Prevent exiled players from entering area of effect. Prevent flying Elytra into field. Elytra will break.
*Factory Cost: 16 of each bastion component yields 16 bastions.

[[File:Hjaltland Vault 09.24.17.png|alt=Use of advanced bastion overlap patterns makes advancing even a single ring difficult. |thumb|Hjaltland's Vault as it stood in September 2017. ]]
<br />

=== Advanced Bastion Mechanics ===

==== Overlapping Fields ====
While it is efficient to spread bastions out, defensive structures make use of overlapping bastion fields to ensure breaking a single bastion won't grant the breaker access to a full 21*21 area. In open spaces, blocks placed in the overlap would be a liability (since both bastions would take full damage) but vaults use walls and other physical barriers to prevent attackers from doing so. Immense subdivision and traps make ground assaults against such a structure difficult.
[[File:Skybunker Bastions.png|thumb|Only two layers protect this skybunker, but they provide a large and durable area of safety for defenders.]]
One other form of field overlap involves the vertical dimension. You can protect an area in the sky (typically at sky limit, but not always) by forcing attackers to break one bastion at a time. This is achieved by separating bastion layers by 8 blocks (to prevent mining) and moving each successive layer one block diagonally away from the center. Unless they can find a way to place bastions closer to the center (either on the outside of your structure or on top of it) they can only break a single bastion layer at a time.

====Block glitching====

Vault bastions remove block placements, yet for a tick the block appears as normal. Server rules allow using block glitching to pillar out from holes. Block glitching more than a few blocks high is possible although timings make it difficult.

====Exile glitching====

Exile players are teleported outside of bastion fields. With a correct setup this can allow teleportation over large distances. This is against server rules.

====Blocking====

* Vault bastions will block Block placements, Pearls, Elytra, Piston extensions causing block to enter bastion field, liquids from flowing into field (including through dispenser), exiled players from entering.
* Vault bastions will not block entities (including falling entities), dragon eggs teleporting into field, bonemeal usage inside field

<br />

== JukeAlert ==
''Record the actions of other players in an area using snitches {[https://github.com/CivClassic/JukeAlert source], [https://github.com/CivClassic/AnsibleSetup/tree/master/templates/public/plugins/JukeAlert config]}''
[[File:JukeAlertCheatsheet.png|thumb|350px| JukeAlert single image summary]]

=== Creating a snitch ===

Snitches are triggered when a player enters the 11 block square shaped radius around the snitch block. Players with namelayer permission <code>SNITCH_NOTIFICATIONS</code> on the group the snitch is reinforced to receive a chat message in the format <code>* <player> entered snitch at <snitch name> [world <x>,<y>,<z>]</code>. To create a snitch place a reinforced noteblock or jukebox. The snitch name can be set using the <code>/janame <name></code> command. Both noteblocks and jukebox snitches output chat messages on player entry yet jukebox snitches have the additional functionality of logging the entry in addition to block placement, block breaks and interactions with entities (Such as opening chests, killing mobs and mounting horses)

=== Checking snitches===

Jukebox logs can be checked by players who have the permission <code>READ_SNITCHLOG</code>. Standing within snitch range (11 block raduis) and typing <code>/jainfo</code> prints logs in chat while <code>/ja</code> opens a GUI containing logs. Both commands display the same information. <code>/jainfo</code> can take additional parameters in the syntax <code>/jainfo [<page number> or 'next'] [censor] [action=<action type>] [player=<username>]</code>. These parameters can be combined in any order.

{|class="wikitable"
|+<code>/jainfo</code> parameters
!width="20%"| Parameter
!width="30%"| Description
!width="50%"| Example
|-
| <code><page number> or next</code>
| View older entries. It can either be a page number or the keyword <code>next</code>. <code>next</code> will print the next page.
| <code>/jainfo 3</code> will print the 3rd page.
|-
| <code>censor</code>
| Censor coordinates from the logs. This is useful for posting snitch evidence publicly.
| <code>/jainfo censor</code> will print <code>Falvyu Block Break 1 [*** *** ***]</code> instead of <code>Falvyu Block Break 1 [1562 13 178]</code>
|-
| <code>action=<action type></code>
| Filter by action type.
| <code>/jainfo action="block break"</code> will only print entries where a block has been broken. Note that double quotes are only mandatory if the action has a space in it.
|-
| <code>player=<username></code>
| Filter by player name.
| <code>/jainfo player=RaiderCC1</code> will only print entries for 'RaiderCC1'. Note that this is case insensitive and will also print partial matches. <code>/jainfo player=raider</code> will therefore print entries for 'RaiderCC1' and any other player who has the word 'raider' in their name.
|}

=== Culling ===

Snitches need to be periodically refreshed by a player entering the snitch field who is on the snitch group with the namelayer <code>LIST_SNITCHES</code> permission. Snitches that are not refreshed will cull and lose all functionality which can only be regained by breaking and replacing the snitch block.

{|class="wikitable"
|+Cull times
!| Type
!| Cull time
|-
| Noteblock
| 6 months
|-
| Jukebox
| 1 year
|}

=== Lever trigger ===

Jukebox snitches can be configured to cause levers on the blocks on or adjacent to the jukebox sides to output a redstone pulse. This behavior which is disabled by default can be enabled with <code>/jaToggleLevers 1</code> and disabled by <code>/jaToggleLevers 0</code> in radius of snitch.

The direction the lever is placed on changes the action type that causes it to trigger.

{|class="wikitable"
|+Redstone signal
!| Direction
!| Trigger
|-
| North
| Player entry or login/logout
|-
| East
| Block placement
|-
| South
| Chest opened
|-
| West
| Block break
|}

Nearby levers will be turned on for a duration of approximately 750ms. This duration can vary due to server lag. Levers that have already been enabled by players will also be turned off after 750ms.

=== Mechanics ===
* Breaking a snitch will print the namelayer group it is reinforced to along with the owner of the namelayer. This does not apply to culled snitches.
* Pearling in a snitch field will not trigger the snitch but moving inside will.

=== Commands ===

{|class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Commands
!| Usage
!| Function
|-
| <code>jahelp</code>
| Display JukeAlert help
|-
| <code>ja</code>
| Open snitch GUI
|-
| <code>/jainfo [<page number> or 'next'] [censor] [action=<action type>] [player=<username>]</code>
| Print snitch logs in chat.
|-
| <code>jalist [page number]</code>
| Display snitches in chat
|-
| <code>janame <name></code>
| Name snitch
|-
| <code>jalookup []</code>
| Use coordinates to show the namelayer the snitch is reinforced to
|-
| <code>jamute [group]</code>
| Ignore/Stop ignoring a group. Leaving the 'group' parameter empty will list the ignored groups.
|-
| <code>jaclear</code>
| Clear snitch logs from a nearby snitch
|-
| <code>jatogglelevers <0,1></code>
| Enable/Disabled the lever output functionality
|}

=== Tips ===

* It is recommended to name snitches appropriately to locate snitches more easily. A good naming pattern can be <code>[group name]<location></code>
* The [https://github.com/iykHvfIvfR/Snitch-Master Snitch Master mod] is recommended when managing snitches.
* It is advised to configure a Kira relay to send snitch messages to a discord channel.

== Vault ==
See [[Vault]]

== Notes ==
<references group="note"/>

== References ==
<references/>

Latest revision as of 23:45, 9 July 2022