Golfcraft
GlfCraft
Version 1.6.0
CB 1.6.2-R0.1
Golfcraft lets you play golf! Simply type /golf, and you will be given a bow and arrow. You can hit (shoot) the ball (arrow), and it will generate a sign where it lands (unless you hit the ball into the water, or the trees).
There are anti-griefing parameters in place, so each golfer needs to destroy their own sign before their arrow will generate a new sign.
Materials of recognition:
- Green Wool: the Fairway (main material)
- Lime Wool: the Green (putting material)
- Sand: Sand Trap (stops balls from bouncing)
- Glowstone: the Cup
- Grass: the Rough (reduces ball's bounce velocity)
- Fence: the Flag
- Wood: Teeing Ground ( start of the course, gives your driver a boost)
Features:
- Clubs!
- Up to 12 clubs to chose from
- Each club has its own advantage
- Snowballs!
- Arrows are converted to snowballs when you shoot!
- Create a golf course by adding holes
- Creating holes set their par
- The par is used for per-hole scoring
- Per-hole golf-info chat channels
- Any players in the same hole will know what happens with the other players
- If the ball landed on a valid block, a sign with the player's name is placed, marking where the ball landed
- This sign MUST be destroyed in order for another sign to generate
- Once destroyed, the player cannot move more than one block away until their next ball lands in a valid location
- Per hole scoring
- Uses that hole's par to compare how many hits the player took.
- Prints the score via number of hits, as well as golf lingo (Bogie, Eagle, etc)
- SuperPerms
- Plenty of anti-griefing parameters
- I try my best to make sure players arent spammed with text or signs. I've spent most of my time coding making sure they cant.
Permissions: (overridden by OP's)
- golf.spectate
- (allows the player to simulate golf (no scoring, or messages))
- golf.play
- (allows the player to play golf use hole-start signs)
- golf.tp.play
- (allows the player to TP to a hole via command)
- golf.tp.sign
- (allows the player to teleport to their sign)
- golf.tp.sign.others
- (allows the player to teleport other players to their sign)
- golf.create
- (allows the player to create new holes)
- golf.sign
- (allows the player to create/destroy hole-start signs)
- golf.ref
- (allows the player to destroy other players' signs)
Source Code is currently Unavailable
Everytime i restart my server all of my holes delete.... whats wrong?
Here is the error:
2012-06-19 08:25:08 [SEVERE] [Golfcraft] Unknown error saving Holes. 2012-06-19 08:25:08 [SEVERE] java.io.IOException: No such file or directory 2012-06-19 08:25:08 [SEVERE] at java.io.UnixFileSystem.createFileExclusively(Native Method) 2012-06-19 08:25:08 [SEVERE] at java.io.File.createNewFile(Unknown Source) 2012-06-19 08:25:08 [SEVERE] at musaddict.golfcraft.GcFiles.save(GcFiles.java:137) 2012-06-19 08:25:08 [SEVERE] at musaddict.golfcraft.Golfcraft.onDisable(Golfcraft.java:53) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:363) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:400) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:393) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.plugin.SimplePluginManager.clearPlugins(SimplePluginManager.java:434) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:522) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.Bukkit.reload(Bukkit.java:182) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:22) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) 2012-06-19 08:25:08 [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567) 2012-06-19 08:25:08 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459)
these screenshots are posting weirdly and I don't know how to fix them! click through on the links to see them better. (slash maybe they changed their mind. I don't know, do whatever...) http://i.imgur.com/rVZh8.jpg http://i.imgur.com/cR0wA.png http://i.imgur.com/8SVP1.jpg http://i.imgur.com/bJSBz.jpg http://i.imgur.com/wk1LZ.jpg
- Add a direction to the starting point data for each hole. This will force people to face the intended direction when they click the start sign, making the holes less confusing for first time golfers.
- Trap the player to a certain area for the tee shot. If I knew more (read: anything) about java, I could suggest better ways to do this, but I would imagine if you either had two starting points to enter (thus creating a box) for the tee and confined people to that, or made it so they couldn’t step off from wood, that would fix the problem. There’s too much reliance on honor to not just click the sign and walk to the hole to put it in.
- Set a location for the hole as well as the tee. Currently (as you’re well aware), you could play to any hole and have the score count. Again, this is purely an honor based change.
- I would suggest that hitting the fence post flag shouldn’t count as holing the shot. I would prefer just letting the ball bounce off it to the current results. Holing out from long distances is waaaay too easy when you can just bounce it into the pin. It really removes the finesse from the game. This would get rid of the crazy scores that are possible (the course record on our first course is -22) and force you to hit good shots instead.
- Can you scale hitting off grass (the rough) to make the club go 90% as far? Right now there’s no penalty for missing the fairway (unless you hit a fairway bunker). We don’t think the penalty in distance should be large, but that the ball should only travel 85-90% as far.
- Can you change the 3-wood and 5-wood so they can be hit off the fairway? They shouldn’t go as far as hitting them from the tee (maybe 90-95%), but just having the ability to hit them would make so much difference in our design of Par 5s.
- Is Out-of-Bounds possible? It could be defined by nether fence. Again, I don’t know if it’s possible, but in an ideal world you could use the nether fence to define OB and red/yellow hazards, and the game could distinguish them based on a sign placed on the boundary.
- Would love to have a delete hole function. I read back through the posts and I think you said you’d add it a while back, so maybe you already have it planned, but I thought I could mention it anyways.
- Is there any way to group the holes together into a course? This might allow you some way to keep track of a cumulative score for a round on that course.
- We have this problem where our shots will land on the same block and the second player’s sign will replace the first. Is there a way to make the sign occupy the block next to it instead?
- We’d like to see wind added eventually. There wouldn’t be a good way to actively show this, but I think you could get around it. For example, when you start a hole it would say “[username] has begun Hole#Par. Wind: 8MPH going NE” or something, and then whenever you typed “/golf wind” it would again give you the readout in the text box. The admins should have the ability to configure this, maybe with a wind setting from 0 (no wind) to 10 (hurricane) with potential swirling depending on the intensity. This would really help to deter the monotony a course gets after you’ve memorized the shots, as well as add a new skill to master.
- We’d love to see a draw/fade ability eventually. However, I haven’t been able to come up with a clean, easy way to do that with a plugin. The only way I’ve come up with is if Minecraft can register which slot you have an item placed in your hotbar. If you had your bow in the center, it would go straight. The further to the left you have it, the more it hooks, and the further to the right you have it the more it slices. This feature could even be turned on and off if you had difficulty levels (Amateur/Pro). There are probably more conducive ways to do this, but like I said, I’m short of ideas on this one.
We’ve made a texture pack specifically for use with this plugin, and we currently have 3 playable 18 hole courses. I plan to roll out my server for public use in the near future, and I will post here when that happens! I’m hoping to be able to post some screenshots of our courses as well.
Again, thanks so much for what you’ve already provided. I hope that you consider our suggestions in an effort to improve this plugin towards its potential.
@Nicomang070
At this point I don't plan to actively add features, but I will update the plugin as needed to avoid it breaking in new builds.
I can't guarantee anything, but I may find the time to work on this soon. I've been swamped the last 5 weeks :/
Is this plugin still going to develop? Its been more than a month since an update.
@FeedDante
@FreedDante Ok, thank you very much. (I figured that sense it was a NPE, reinstalling would not fix it, I was just making sure :) )
@zackandreweli
Reinstalling won't make a difference, there's an exception when trying to save (NPE), and thus nothing is saved. This is rather quite easy to see in the call stack.
java.lang.NullPointerException at musaddict.golfcraft.GcFiles.save(GcFiles.java:154)
I've seen this same error about a week or so ago, but both me and Jase have been busy. I'll forward the error to him.
Hello, your plugin works very well, except it does not save the holes for some reason. I have tried deleting all the files of your plugin, and "Re-installing" it, but this issue is still here.
Here is the error:
08:40 PM [INFO] [Golfcraft] Saving 5 holes... 08:40 PM [SEVERE] [Golfcraft] Unknown error saving Holes. 08:40 PM [SEVERE] java.lang.NullPointerException 08:40 PM [SEVERE] at musaddict.golfcraft.GcFiles.save(GcFiles.java:154) 08:40 PM [SEVERE] at musaddict.golfcraft.GcCommands.onCommand(GcCommands.java:288) 08:40 PM [SEVERE] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40) 08:40 PM [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) 08:40 PM [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:473) 08:40 PM [SEVERE] at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821) 08:40 PM [SEVERE] at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781) 08:40 PM [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764) 08:40 PM [SEVERE] at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34) 08:40 PM [SEVERE] at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) 08:40 PM [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) 08:40 PM [SEVERE] at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) 08:40 PM [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:551) 08:40 PM [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449) 08:40 PM [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Hey Minecraft golfers! I would really like to see a golf community develop. Most google searches for Minecraft golf return links to 'put put' style golf. It's really difficult to find other servers running a real golf addon these days.
If you're running Golfcraft Please post your server info: my server:
Server IP: 76.114.254.63 dynmap address: http://76.114.254.63:8123
I just completed construction on course #2 It has turned out to be considerably more challenging that the first course.
Here are some video links to my courses:
Course #1 Holes 1 - 9 http://www.youtube.com/watch?v=2nV_yTmaWq0
Holes 10 - 18 http://www.youtube.com/watch?v=k0DVegBhiHw
Course #2 Holes 1 - 18 http://www.youtube.com/watch?v=eJsidVWmmXk&feature=youtu.be
Thanks for all the work you've put into this addon Musaddict.
I agree with Bacon. It's got to be the coolest addon out there. I'm looking forward to see how it develops even more.
A few recommendations- I think you need to be required to start a hole on the wooden tee box. I'm finding that when I start a hole, I can start walking and get a hole in one by cheating. There should also be designated glowstone holes per teebox. Maybe rather than require the ball to go to the glowstone cup, it should just go to a marked square (mark by using /golf set hole holename following /golf create holename par) There also REALLY REALLY REALLY need to be a command to remove or edit holes. I'm finding it aggravating that if I mess up or want to change the par, there's no way to without deleting the entire config.
@Nicomang's skill level idea- I don't think that's exactly fair. You shouldn't need to play more to get your character better.
Nice plugin, Could you make the club selection easier e.g.
[Wood] [1][2][3] [Irosns] [4][5][6][7][8][Others] [SW][PUTT]
..All on one line, and the selected club in white or green.
Also, when GolfCraft tp's a player the are always facing west direction? i.e. they start a hole or continue a hole from a sign and leave the square.
can you please make it for java 6 beauche i have a mac and for mac it give no java 7 version.
@pixeltimoto
You will need to update your computer to Java 1.7, and make sure you edit your RUN.bat file to make sure it's directed to the version 7 of java.
i become his error wehen I start my server please help me : I become this error when i start my server plese help me
09:09:45 [SCHWERWIEGEND] Could not load 'plugins/GolfCraft(1).jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError: musaddict/golfcraft/Golfcraft : Unsupported major.minor version 51.0 at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:150) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:207) at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:183) at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:53) at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:156) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:422) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.UnsupportedClassVersionError: musaddict/golfcraft/Golfcraft : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) at java.lang.ClassLoader.defineClass(ClassLoader.java:615) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) at java.net.URLClassLoader.access$000(URLClassLoader.java:58) at java.net.URLClassLoader$1.run(URLClassLoader.java:197) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:41) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:29) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:247) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:139) ... 8 more
@jase3905
Ok, thanks. If your actually utilizing the features of 7 that's fine. I just assumed you (like most developers) were using it "just because".
And I'd upgrade to 7, but my linux box is pretty old, and ran into a lot of issues installing it.... Oh well... I'll just have to run my server sans Golfing :/
@DocHarley
We actually have some code setup in all our plugins that require Java 7. A huge, tedious, inneficcient workaround would be required if we were to use Java 6.
@zwollner
If you are a java developer yourself, then why aren't you testing with Java 7, and therefore are ok with me using it because you should have it already? Just because Java 7 is still in beta doesn't mean it's broken. It's founded on Java 6, so the only things that can break are the new methods given in Java 7.
Besides, over 5000 downloads, across all of my plugins, have required Java 7 and you're the first to get riled up about it. Like I said, it's required for the methods I use, so since you're a developer, I have confidence that you'll understand and that you'll use that Java 7 that you should have.
A fair number of third-party hosts (mine included) do not run Java 7 yet. I have a ticket into my provider, with the hope they will swap me over. Regardless of how that turns out, unless you have a compelling reason to build against 7 (other than "it's new"), I don't believe it's a very good idea to require it.
@jase3905
Take a look at this: http:java.com/en/download/ It's the place you download the most recent java runtime. Oh, wait... what's it say? "Version 6 Update 31" Java 7 isn't even GA yet! please don't force people to use it.
Yes, I know java 7 is available (and probably works just fine) but oracle (the developer of java) even says: (referring to java 7) "The new release of Java is first made available to the developers to ensure no major problems are found before we make it available on the java.com website for end users to download the latest version."
Being a java developer myself I know not to force end users to use a "beta" version of a runtime unless absolutely necessary.
Also: http:wiki.bukkit.org/Setting_Up_Your_Workspace "Get version 1.6 of the JDK. We've not moved to the updated version 1.7 yet."
@zwollner
Take a look at this: http://wiki.bukkit.org/Setting_up_a_server
It's a tutorial for setting up bukkit, and it offers ways to set it up for java 1.6 AND java 1.7. The difference is LITERALLY typing "7" instead of "6" lol.
1.7 will run 1.6 applets perfectly, it's designed to NOT break.
LOL every plugin out works great on 1.7. Not to mention GolfCraft is probably the coolest plugin ever developed.