Anyone who's played Portal 2 with others has encountered the Ping tool at least once. For those who haven't, it provides a simple way to point out something to the surrounding players, instead of gesturing vaguely in its direction.
This mod attempts to replicate that feature in a useful way, but ensure it actually has use in the Minecraft world.
Changelog:
1.0.2:
* Fixed server-side crash
1.0.1: * Fixed Ping menu being out of order
* Added optional sound-effect upon receiving a Ping
1.0.0:
* Initial release
Use:
Using Ping is incredibly simple. Both the server and client must have it installed (though clients without it will still be able to play, they just won't receive Pings). To send a Ping, simply hold down the F (default keybind) key, and select a ping type by either mousing over it and releasing F, or by clicking on it. A Ping will then be sent to everyone in the current dimension who has 1) Chosen to receive Pings, and 2) Is in range of your Ping.(range can be modified in the config file). If a Ping is offscreen, a small icon will render on the side of your screen, pointing to it.
Config:
# Configuration file
general {
# Maximum distance a Ping can be from you and still be received
D:pingAcceptDistance=32.0
# How long a Ping should remain active before disappearing
I:pingDuration=100
}
visual {
# Whether to render a colored overlay on the Pinged block
S:blockOverlay=true
# Value from 0 - 255
I:blue=0
# Value from 0 - 255
I:green=0
# Value from 0 - 255
I:red=100
}
Media:
Alternate Downloads: The latest version can also be found here, if the above widget hasn't updated
Credits: * The always wonderful CyanideX, for putting up with me, and for offering his artistic services
Mod Packs: Inclusion in mod packs is allowed by default. I only ask for a link back to this thread.
Hellio, I get this crash report while attempting to load Ping on 1.7.10 server side.
---- Minecraft Crash Report ----
// This doesn't make any sense!
Time: 8/9/14 8:55 AM
Description: Exception in server tick loop
cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: net/minecraft/client/entity/EntityClientPlayerMP
at cpw.mods.fml.common.LoadController.transition(LoadController.java:162)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:515)
at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:88)
at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:313)
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:169)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:624)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoClassDefFoundError: net/minecraft/client/entity/EntityClientPlayerMP
at dmillerw.ping.proxy.CommonProxy.preInit(CommonProxy.java:12)
at dmillerw.ping.Ping.preInit(Ping.java:27)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:513)
... 5 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.entity.EntityClientPlayerMP
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 34 more
Caused by: java.lang.NullPointerException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at cpw.mods.fml.common.asm.transformers.TerminalTransformer.transform(TerminalTransformer.java:14)
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:276)
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:174)
... 36 more
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- System Details --
Details:
Minecraft Version: 1.7.10
Operating System: Linux (amd64) version 2.6.32-431.20.3.el6.x86_64
Java Version: 1.7.0_55, Oracle Corporation
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 835126640 bytes (796 MB) / 1029701632 bytes (982 MB) up to 1029701632 bytes (982 MB)
JVM Flags: 2 total; -Xms1024M -Xmx1024M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v9.05 FML v7.10.25.1199 Minecraft Forge 10.13.0.1199 4 mods loaded, 4 mods active
mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
FML{7.10.25.1199} [Forge Mod Loader] (cauldron-1.7.10-1.1199.01.146-server.jar) Unloaded->Constructed->Pre-initialized
Forge{10.13.0.1199} [Minecraft Forge] (cauldron-1.7.10-1.1199.01.146-server.jar) Unloaded->Constructed->Pre-initialized
Ping{%MOD_VERSION} [Ping] (Ping-1.7.X-1.0.1.B5-universal.jar) Unloaded->Constructed->Errored
Profiler Position: N/A (disabled)
Is Modded: Definitely; Server brand changed to 'cauldron,craftbukkit,mcpc,fml,forge'
Type: Dedicated Server (map_server.txt)
Hellio, I get this crash report while attempting to load Ping on 1.7.10 server side.
---- Minecraft Crash Report ----
// This doesn't make any sense!
Time: 8/9/14 8:55 AM
Description: Exception in server tick loop
cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: net/minecraft/client/entity/EntityClientPlayerMP
at cpw.mods.fml.common.LoadController.transition(LoadController.java:162)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:515)
at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:88)
at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:313)
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:169)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:624)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoClassDefFoundError: net/minecraft/client/entity/EntityClientPlayerMP
at dmillerw.ping.proxy.CommonProxy.preInit(CommonProxy.java:12)
at dmillerw.ping.Ping.preInit(Ping.java:27)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:513)
... 5 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.entity.EntityClientPlayerMP
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 34 more
Caused by: java.lang.NullPointerException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at cpw.mods.fml.common.asm.transformers.TerminalTransformer.transform(TerminalTransformer.java:14)
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:276)
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:174)
... 36 more
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- System Details --
Details:
Minecraft Version: 1.7.10
Operating System: Linux (amd64) version 2.6.32-431.20.3.el6.x86_64
Java Version: 1.7.0_55, Oracle Corporation
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 835126640 bytes (796 MB) / 1029701632 bytes (982 MB) up to 1029701632 bytes (982 MB)
JVM Flags: 2 total; -Xms1024M -Xmx1024M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v9.05 FML v7.10.25.1199 Minecraft Forge 10.13.0.1199 4 mods loaded, 4 mods active
mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
FML{7.10.25.1199} [Forge Mod Loader] (cauldron-1.7.10-1.1199.01.146-server.jar) Unloaded->Constructed->Pre-initialized
Forge{10.13.0.1199} [Minecraft Forge] (cauldron-1.7.10-1.1199.01.146-server.jar) Unloaded->Constructed->Pre-initialized
Ping{%MOD_VERSION} [Ping] (Ping-1.7.X-1.0.1.B5-universal.jar) Unloaded->Constructed->Errored
Profiler Position: N/A (disabled)
Is Modded: Definitely; Server brand changed to 'cauldron,craftbukkit,mcpc,fml,forge'
Type: Dedicated Server (map_server.txt)
Use:
Using Ping is incredibly simple. Both the server and client must have it installed (though clients without it will still be able to play, they just won't receive Pings).
Server doesn't allow client not to have this installed. Is that fixable or does it have to be installed on the client?
The Meaning of Life, the Universe, and Everything.
Join Date:
1/19/2014
Posts:
132
Member Details
Thanks for this - amazingly useful
I was wondering if you'd be willing to consider a small change: the ability to just press and release 'F' and have the targeted block highlighted with 'look' (basically a default when no icon is selected by mouse) - essentially duplicating the Portal 2 functionality.
1.6.4 version? or do i need to wait for Portal Gun mod to update to 1.7.2?
I agree, I want to use this with iChun's PortalGun Mod. Also, PortalGun will never have a 1.7.x release, he's working on a 1.8 release though... If you DO make it compatible with PortalGun, can you add PORTAL ping option?
Anyone who's played Portal 2 with others has encountered the Ping tool at least once. For those who haven't, it provides a simple way to point out something to the surrounding players, instead of gesturing vaguely in its direction.
This mod attempts to replicate that feature in a useful way, but ensure it actually has use in the Minecraft world.
Changelog:
* Fixed server-side crash
1.0.1:
* Fixed Ping menu being out of order
* Added optional sound-effect upon receiving a Ping
1.0.0:
* Initial release
Use:
Using Ping is incredibly simple. Both the server and client must have it installed (though clients without it will still be able to play, they just won't receive Pings). To send a Ping, simply hold down the F (default keybind) key, and select a ping type by either mousing over it and releasing F, or by clicking on it. A Ping will then be sent to everyone in the current dimension who has 1) Chosen to receive Pings, and 2) Is in range of your Ping.(range can be modified in the config file). If a Ping is offscreen, a small icon will render on the side of your screen, pointing to it.
Config:
Media:
Credits:
* The always wonderful CyanideX, for putting up with me, and for offering his artistic services
Mod Packs:
Inclusion in mod packs is allowed by default. I only ask for a link back to this thread.
Like what I do here? You can support me in many ways!
* Follow me on Twitter (@dylantweets)
* Support me on Patreon
Also, obligatory stamp of approval:
Glowstone Wire | MCF Modlist
Join us at our website: AIM Gaming
---- Minecraft Crash Report ----
// This doesn't make any sense!
Time: 8/9/14 8:55 AM
Description: Exception in server tick loop
cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: net/minecraft/client/entity/EntityClientPlayerMP
at cpw.mods.fml.common.LoadController.transition(LoadController.java:162)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:515)
at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:88)
at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:313)
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:169)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:624)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoClassDefFoundError: net/minecraft/client/entity/EntityClientPlayerMP
at dmillerw.ping.proxy.CommonProxy.preInit(CommonProxy.java:12)
at dmillerw.ping.Ping.preInit(Ping.java:27)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:513)
... 5 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.entity.EntityClientPlayerMP
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 34 more
Caused by: java.lang.NullPointerException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at cpw.mods.fml.common.asm.transformers.TerminalTransformer.transform(TerminalTransformer.java:14)
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:276)
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:174)
... 36 more
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- System Details --
Details:
Minecraft Version: 1.7.10
Operating System: Linux (amd64) version 2.6.32-431.20.3.el6.x86_64
Java Version: 1.7.0_55, Oracle Corporation
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 835126640 bytes (796 MB) / 1029701632 bytes (982 MB) up to 1029701632 bytes (982 MB)
JVM Flags: 2 total; -Xms1024M -Xmx1024M
AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v9.05 FML v7.10.25.1199 Minecraft Forge 10.13.0.1199 4 mods loaded, 4 mods active
mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
FML{7.10.25.1199} [Forge Mod Loader] (cauldron-1.7.10-1.1199.01.146-server.jar) Unloaded->Constructed->Pre-initialized
Forge{10.13.0.1199} [Minecraft Forge] (cauldron-1.7.10-1.1199.01.146-server.jar) Unloaded->Constructed->Pre-initialized
Ping{%MOD_VERSION} [Ping] (Ping-1.7.X-1.0.1.B5-universal.jar) Unloaded->Constructed->Errored
Profiler Position: N/A (disabled)
Is Modded: Definitely; Server brand changed to 'cauldron,craftbukkit,mcpc,fml,forge'
Type: Dedicated Server (map_server.txt)
Any help on fixing it?
Fixed! Grab 1.0.2.
Server doesn't allow client not to have this installed. Is that fixable or does it have to be installed on the client?
I was wondering if you'd be willing to consider a small change: the ability to just press and release 'F' and have the targeted block highlighted with 'look' (basically a default when no icon is selected by mouse) - essentially duplicating the Portal 2 functionality.
Thanks, again, for this incredibly useful mod!
Should be able to via the controls menu
I agree, I want to use this with iChun's PortalGun Mod. Also, PortalGun will never have a 1.7.x release, he's working on a 1.8 release though... If you DO make it compatible with PortalGun, can you add PORTAL ping option?
Imo, this should be in every modpack. Pointing stuff out on servers is the biggest pain in the world.
Heyy, nice Mod.