MorePhysics
MorePhysics: Making Minecraft more fun
Do you miss the pistons that launch everything into the air? Do you think that carrying hundreds of tons worth of blocks in your pockets is overpowered? Should the boats sink when taking damage, or should colliding with a speeding minecart cause some internal trauma? Good news - I have the plugin just for you. MorePhysics does exactly that - and more.[ Download | Configuration | Source code | Issue tracker ]
Plugin Components
The plugin contains 8 components; each of them can be enabled / disabled individually. The description of said components has grown so long that it deserved its own page.Disclaimer
MorePhysics utilizes Plugin Metrics.Metrics is a tool used to collect anonymous statistics that will help us in the development of the project. Only the very basic hardware and software information about the server is collected, no personal data is compromised. The full description of Plugin Metrics can be found on Bukkit forums. Development builds of this project can be acquired at the provided continuous integration server here. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
I have the perfect addition/suggestion. Please read this carefully!
A long time ago, I found this plugin, and loved the features the pistons had.. Although having one set power for EVERY piston... hmm, I didn't like that in particular. There was one thing I did at the time, which made the plugin 100x better. Every player on my server loved it and we all had a blast!
What I had done, was in the PistonListener.java I added a few lines of code right before it calculated velocity added to the entity. I will give a simple, brief summarized explanation below.
Then right before it set the entity velocity I added a line of code something like this
(Obviously thee above is not my legitimate coding.)
Then on my server, for complete individual piston control - in the config I set the piston power to 1. I also disabled the whole weight aspect within the config. I also set the signplacement for 3 blocks.. (above / below - Making it 3 allowed a decent amount of room for redstone wiring to the piston) By applying these options in the config this then caused pistons to act like normal when a sign didn't exist above or below it. However when a sign did exist it multiplied the final entity velocity 1x the number given on the sign.. So we could put numbers on the sign giving us 1 x the velocity number given, allowing specific velocity control for each piston. This was great as it allowed configuring each piston for different types of TNT launchers, item launchers, player launchers etc.
Also when I modified the plugin it I did go as far as adding a listener for when a sign was placed and if the first line of the sign equaled [Piston] it would check if the player had the permission node, if not it would change the first line to blank. as well as, if they did have permission, check if the second line can be converted into the double, if it cannot change the first line to "[-Piston-]" and then the second line to color.red + "Invalid"
I'm sure other small modifications could be made to this concept like, example to disable looking for signs at all within the config.
Let me know if you will add this and when. I would like to use these features again and would be interested in you adding this feature to this for others to use. If so, and need assistance I can help with that too.
If you do not plan on adding this anytime soon. I would be interested in be allowed to update my version and posting it as a different plugin for all to use.
Thanks for the plugin! AND Thanks for reading this long message - Hope you take this into complete consideration!
Amazing plugin, and it seems to be working on 1.5.1. Only issue currently is that it's spamming console terribly with "[MorePhysics] InventoryCloseEvent registered", any fix for this?
Suggestion: for more realistic arrow damage, things like arm=opponent does less melee damage, leg=opponent gets slowed?
Great plugin, especially the armor weight system. What if armor weight also affected the amount of bonus damage you get from arrows? Imagine if light armor let you get the full bonus arrow damage while heavy armor is closer to vanilla arrow damage. The potential of the weight system is simply huge.
Bug trying to push blocks sideways (not up) makes them go to the side and not launch.
This Plugin is amazing, Only one problem, Any armor weight I try to add up, none of them give slowness 1... It goes straight to slowness 2.. Is there anyway you can fix the weight?
@Taylorwood, did you try adding the perm node "morephysics.exempt:false" to your groups? I found that without using that, ops were never affected.
I'm not sure if this is just the plugin or an actual problem- but the slowing of players with armour is almost, well, unnoticeable. I can barely see any change in running speed. When I increase the weight, nothing happens. Any help/light to shed on the situation?
@bitWolfy
Hi. How's work?
what is allowphysicsexemptions in config?
@rvarnell
But how? If every item will decrase your NBT WalkSpeed value then You will reach your limits when You will not be able to walk.
B-Feature request for the weight system:
* Set max weight limit based on permissions group
In the config file:
Capacity1: 500
Capacity2: 1000
Capacity3: Unlimited
In the permissions file (nodes), applied to a group or individual:
morephysics.weightlimit.Capacity1
morephysics.weightlimit.Capacity2
morephysics.weightlimit.Capacity3
That lets more RP-oriented servers build weight limits around races with different strengths, or build abilities or items that could change your carrying capacity.
Probably needs logic that in that case more than 1 weightlimit setting is applied, the highest value wins.
@bitWolfy
Can't wait for item weight system :P
I hope that it will not be hard to code because my server can't run without it.
@CorruptedHelix
Well, if md_5 did not find anything, I probably won't either, but it would not hurt.
I'll check on the plugin, but I really have no idea what can be causing this.
That's absolutely all I'm getting, except some stuff in console that md_5 didn't find useful when I showed him. Do you want it?
@CorruptedHelix
MorePhysics is mentioned just once in that error - in the plugin list. Are there any other errors in the console that you are getting, or that is it?
I've gotten an error sometimes when running this plugin. Said error has caused my server to crash randomly with no trigger. I showed it to a dev, and I believe he said the plugin was returning null on itself? I don't remember, but I was told either MorePhysics or ProtocolLib was the cause. I removed both and no errors occur.
http://pastebin.com/45J01ayW
@bitWolfy
1. So You mean that to default every blocks have weight (for example) 20. And if You want to change weight of cobblestone then You'll just add it to the list?
You know I would want to make different weight for every block in my server so just asking.
2. Will counting weight will be laggy if I will do different weight for every block's ID?
@Byamarro
First of all, yes, I'll expand the plugin to derive player's weight from the entire inventory, not just the armor.
Second, I do not think that including all the item IDs in the configuration file is a good idea. I'll just have all items default to a certain weight, and the configuration will have a list of blocks with custom weight. I prefer simplicity.
@bitWolfy
BTW play don't swink water if He go in water soft.
I mean when He ''walk'' on water.
Well. Items/blocks weights in equipment are neccessary for my hard survival server. Can You say if You wanna to make it? Idk is it good idea to wait for it.
PS: I can make config file template for You to make your work easier and nicer. (with bukkit materials names and value what needs to be subbed from WalkSpeed NBT value). But it could be for example 0.001 for dirt to make it balanced so I think that I could time it x10000 so dirt could have 10 weight or sth.
PS2: there should be low jump effect toobecause players just jump when they have low walking speed.