ScriptBlock
Welcome on the ScriptBlock v0.8.0 project page !
ScriptBlock is a CraftBukkit plugin inspired by the great Fluff's plugin Annotate and CommandSign !
It allow you to bind text, commands, or MANY commands to any block (levers, buttons, doors, Signs, etc...), triggered by clicking or walking on it !
Here is a Tutorial video made by Kunoichi Kitteh ! Thanks to here !
LiekMudkipzz also made a cool video of ScriptBlock ! It's a bit outdated, some commands have changed ! but Thanks to him too !
Here is the link !
Regarding Donators
Those who help me maintain motivation for Keeping this project updated !
I really Thanks them !
S4h4rk
StefanPelskamp
Slipswhitley
About 0.8.0...
Lot of change in the codes, in the commands, to make possible and easily, for other devs, the add of Options, and the use of ScriptBlock Options for other Minecraft Event than walk , and interact trigger ! ( ask for sources, and for help if you want to do one ! )
Also a New BIG and FULLY customizable permission system. See changes log for more informations !
Features
- Adding any text, command, or set of commands to a block (levers, buttons, doors, signs, etc...) with Various Options !
- Read any Text and execute any commands or command Script. that has been bound to a block with right or left-click !
- ScriptBlock use the Vault API ! You need to download it even if you don't want to use the Economy and Permissions features !
Download Vault - Support all permissions plugins supported by Vault or if you don't like permissions, it can be Op based only !
- Most of Economy plugins support (if Vault support it, ScriptBlock support it too ! ).
- MultiWorld Support.
- Player can use a bound command, even if he usually doesn't have the permission to use it, with the help of the @bypass prefix.
- You can edit scripts with a simple Text editor like notepad
++
. - Look at Changes Logs for more Infos !
Commands
Trigger:
- /sbinteract
is used for "on block interaction triggered" scripts ! - /sbwalk
is used for "on block walk triggered" scripts !
After you've choosen the kind of trigger you want , you need to choose the type of commands you want to send to ScriptBlock !
Types:
- create
Use this command to create a script and follow displayed informations ! - add
Use this command to add a command, or a script to an already created one, or to an already bound one. - remove
Use this command to remove a script from a block. - view
Use this command to view the script you've bound to a block ! - reload
This command let you reload the save file, to refresh the scripts bound on blocks !
Usefull when editing script in the BlocksData.yml save file while server is still running !
exemples:"/sbinteract create" , "/sbwalk create", "/sbinteract remove", "/sbwalk remove", etc...
Options
There is a lot of cool options you can use for your scripts ! You MUST at least use one option with your script to make it work !
Options List
Permissions
ScriptBlock Permissions system have a lot of possible customisation. You can use simple permissions nodes if you are admin and want full power, without taking the time to set up all the permissions for your players. Or you can take the time, and fully customize the way you want your players to use ScriptBlock.
Upcoming Features
- Per Player Cooldown.
Economy plugins support- Copy/paste Scripts. (low priority)
Add a Config file to edit Script that has been bound.More Permission NodesA command that let you know what commands you've bound to a block.- WorldGuard / Residence support. (low priority)
- Custom messages
- Chat color
@TrinaryAtom
@riffic33
The Minecraft 1.0.1 support is planned for this week if all of the API I need to keep compatibility, with permissions plugins, and economy plugins are updated ! ( I haven't checked all of them, but it looks like most of them are ! )
Excellent mod. I attempted to use the other outdated ones, but this one is better and simpler to implement for admin.
The usage of the mod on our server goes to users paying (iConomy) to "buy" a command. This simply works by using this mod in combination with permissions commands to add the user to designated group allowed to use it. Has many other uses I plan on implementing as well and give you kudos for the work done so far. (Expect a donation with continued support for 1.0)
Hows the support for 1.0.0 going?
@pur3p0w3r
Well I 'm not sure to understand everything well, but it looks like it works well for you !
So far so good on cooldown.dat!
I'll resume annoying you should more problems arise! :D
@StefanPelskamp
if I do that, I need to reload the permission plugin each time a player it the blocks.... with some permission plugin... players will be able to Lag your server by chain hitting the block...
it's a real pain for me to have to keep op based system for the @bypass option...
op system is the only who works with every permissions plugin and can't lag your server (by the way even if a player can place a block, he absolutely can not perform himself a command while a @bypass ScriptBlock command is running. So he no longuer can promote himself to Op )
I just need to add a built in protection for protecting the ScriptBlock... maybe you can disable Op in the worldguard config and add a build flag to your Ops instead ? the Residence plugin works like that... I don't have any kind of issues like yours with it...
However I will try to add something similar to your request... even if it lag the server, I've been already working on it... but getting it work for every permission plugins is long... and I don't have a lot of time...
I will try to release the built-in block protection today... so Player won't be able to place block nor to destroy your ScriptBlocks again...
I can still break the scriptblock and place blocks on the scriptblock....
I got an even better idea for more security: Add a line for the permissions to give say @perm:bukkit.command.gamemode and only during the small time it takes to execute it, they can only use that permission node.
@pur3p0w3r
I wasn't able to replicate your issue... but I've tried to fix it... tell me if it happens again !
@StefanPelskamp
This is now totally fixed ! (I hope my fix won't add new issues...) if a player find a way (mostly by having a hacked client) to have the time to use a command while the @bypass script is performed... the command will be ignored and a broadcast message will announce that the player is trying to hack.
Please download the latest version !
@Shereis
The other problem is obviously a much bigger deal and effects more than... well... just me. I can deal with another few days of deleting the file every time I start the server, like you said the other problem is highest priority.
@pur3p0w3r
okay... so the problem is bigger than I thought... I will try to fix it...
@Shereis
That is kindof just a temp fix. Every time I restart the server I have to delete the .bat...
That can get very annoying. Any ideas on how to fix it forever?
@pur3p0w3r
Just delete your CooldDown.dat in the scriptblock folder, it should fix the problem.
@StefanPelskamp
I'm working on this as my very High priority.
Hate to be a bother ( I can see you guys are having a mini tragedy at the moment ) but I've had this same error for 2 months now and would like some help! When you have the time ofc :3
http://www.youtube.com/watch?feature=player_detailpage&v=0zHwVmuHPYc
And it gets even worse, providing you have the right amount of lag, you can actually break the blocks that give you temporary op. I can see how a skilled hacker could use /op while just like I can break the blocks.
http://www.youtube.com/watch?feature=player_detailpage&v=fQi6o3SUvXo
@Shereis
You might be totally right...
http://forums.bukkit.org/threads/people-can-op-themselves-by-just-typing-op-theirname.49144/#post-845698
That might be the cause of all my mess....
Uploading a video now of the bug.
[INFO] [ScriptBlock] Enabling... 2011-12-09 23:29:06 [INFO] [ScriptBlock] Checking Configurations Files... 2011-12-09 23:29:06 [INFO] [ScriptBlock] Configuration Files Found !!! 2011-12-09 23:29:06 [INFO] [ScriptBlock] BlocksData.yml loaded ! 2011-12-09 23:29:06 [INFO] [ScriptBlock] Cooldowns.dat File Loaded !!! 2011-12-09 23:29:06 [SEVERE] Error occurred while enabling ScriptBlock v0.4.2 (Is it up to date?): null java.lang.NullPointerException at fr.shereis.scriptblock.Main.onEnable(Main.java:71) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:188) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:968) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:280) at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:186) at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:169) at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:348) at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:335) at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:165) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
Well this is my problem. Any ideas anyone? I've spent awhile trying to figure it out and have since given up lol. :/
@StefanPelskamp
I don't really understand how player can place blocks while using this script... When using it, it opens a chest Gui... so I can't place any block anywhere... then I close the gui... My permissions are already turned back to their original state, I really don't have the time to do anything before event to place a little click... but maybe worldguard have a long refresh time... Have you noticed any undesired op in your ops.txt after a player used this script ?? Are the damage big ? ( I ask this to determine for how long the player keep the bypass power for the protected area )
The permissions plugin I use is bPermissions, The script says:
@player An employee leads you to your chests @bypass /gp c normal1
Using plugin VirtualChest
To protect the region I use worldguard.
@StefanPelskamp
Can you tell me more informations about what's happening ? what is the script you have bound ? your permission plugin, and your protection plugin ?
While using your plugin, Im allowing my members to use a sign with @bypass inside a protected building, but when they use it, they can also place blocks, and many people abuse this... could this be fixed?