I tried running this with 1.4.6 and Forge versions 6.5.0.451 and 6.5.0.474 (those being the lowest and highest versions of Forge that will work with 1.4.6. No such luck. I'll put the error log into a spoiler.
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] The mod awger_Punt is expecting signature null for source punt_0.2.jar, however there is no signature matching that description
2012-12-23 21:52:50 [WARNING] [ForgeModLoader] The mod id awger_Punt attempted to register channels without specifying a packet handler
2012-12-23 21:52:50 [INFO] [ForgeModLoader] Configured a dormant chunk cache size of 0
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] Fatal errors were detected during the transition from PREINITIALIZATION to INITIALIZATION. Loading cannot continue
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader]
mcp [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
FML [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized
Forge [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized
awger_Punt [Punt] (punt_0.2.jar) Unloaded->Constructed->Errored
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] The following problems were captured during this phase
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] Caught exception from awger_Punt
java.lang.NoSuchMethodError: uk: method (I)V not found
at awger.mods.punt.common.ItemPunt.(ItemPunt.java:12)
at awger.mods.punt.common.Punt.preInit(Punt.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:478)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
at com.google.common.eventbus.EventBus.post(EventBus.java:268)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
at com.google.common.eventbus.EventBus.post(EventBus.java:268)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:83)
at cpw.mods.fml.common.Loader.loadMods(Loader.java:485)
at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:161)
at net.minecraft.client.Minecraft.a(Minecraft.java:410)
at asq.a(SourceFile:56)
at net.minecraft.client.Minecraft.run(Minecraft.java:744)
at java.lang.Thread.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] cpw.mods.fml.common.LoaderException: java.lang.NoSuchMethodError: uk: method (I)V not found
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.transition(LoadController.java:117)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.Loader.loadMods(Loader.java:486)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:161)
2012-12-23 21:53:02 [INFO] [STDERR] at net.minecraft.client.Minecraft.a(Minecraft.java:410)
2012-12-23 21:53:02 [INFO] [STDERR] at asq.a(SourceFile:56)
2012-12-23 21:53:02 [INFO] [STDERR] at net.minecraft.client.Minecraft.run(Minecraft.java:744)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.Thread.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] Caused by: java.lang.NoSuchMethodError: uk: method (I)V not found
2012-12-23 21:53:02 [INFO] [STDERR] at awger.mods.punt.common.ItemPunt.(ItemPunt.java:12)
2012-12-23 21:53:02 [INFO] [STDERR] at awger.mods.punt.common.Punt.preInit(Punt.java:70)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:478)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:140)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:83)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.Loader.loadMods(Loader.java:485)
2012-12-23 21:53:02 [INFO] [STDERR] ... 5 more
2012-12-23 21:53:02 [INFO] [STDERR] Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: component argument pData
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.windows.GDIWindowSurfaceData.initOps(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.windows.GDIWindowSurfaceData.(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.windows.GDIWindowSurfaceData.createData(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.d3d.D3DScreenUpdateManager.getGdiSurface(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.d3d.D3DScreenUpdateManager.createGraphics(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.awt.windows.WComponentPeer.getGraphics(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Component.getGraphics(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.awt.RepaintArea.paint(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Component.dispatchEventImpl(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Container.dispatchEventImpl(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Component.dispatchEvent(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue.access$200(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$3.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$3.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.AccessController.doPrivileged(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$4.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$4.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.AccessController.doPrivileged(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue.dispatchEvent(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.run(Unknown Source)
I tried running this with 1.4.6 and Forge versions 6.5.0.451 and 6.5.0.474 (those being the lowest and highest versions of Forge that will work with 1.4.6. No such luck. I'll put the error log into a spoiler.
Hmm. Looks like the re-obfuscation process mangles the Forge interface as well, which means I'll have to build specific releases matched to each Forge release?
I guess I have some downloading to do...
** UPDATE **
...and some rearrangement to do. Forge rearranged the package hierarchy (discarded the common folder) for version 6.5.0 so I have to rebuild my mod package and build scripts. A minor irritation, but it's Christmas Eve, it just started snowing, and the kids have just about lost their minds!
(P.S. could you try to make the boat not slip through the earth and into the void when you place it on land?)
(P.P.S When will you update to 1.4.6?)
Fixed falling through earth before I started working on the 1.4.6 conversion... many changes in Forge for 1.4.6, requires a total reorganization of my packages. Having problems getting a working 1.4.6 environment due to some network problems here at the house, downloads keep getting mangled.
Fixed falling through earth before I started working on the 1.4.6 conversion... many changes in Forge for 1.4.6, requires a total reorganization of my packages. Having problems getting a working 1.4.6 environment due to some network problems here at the house, downloads keep getting mangled.
Oh well, Keep up the great work . Did you like the alternate textures?
Congratulations! I've been playing Minecraft sense beta 1.2 and I've always wanted a boat mod. Not once have I seen anything like this! Others skin boats or add features, but never change in shape and animations. This is truly unique and I believe it has allot of potential. I hope you continue working on it and best of luck to you!
Here's a taste of what I'm working on right now... the Whitehall.
It's functional right now, but only because I've patched my Minecraft jar to get around a collision bug. Release will need to wait for an official fix from Mojang, or an as-yet-unknown workaround.
Incidentally... the space in front of the mizzen mast is for more chests or extra seats.
Here's a taste of what I'm working on right now... the Whitehall.
It's functional right now, but only because I've patched my Minecraft jar to get around a collision bug. Release will need to wait for an official fix from Mojang, or an as-yet-unknown workaround.
Incidentally... the space in front of the mizzen mast is for more chests or extra seats.
That is awesome ! Could you make a boating API of sorts you know, that has your patch built into it? Does the WhiteHall have any special abilities or perks besides the single chest?
That is awesome ! Could you make a boating API of sorts you know, that has your patch built into it?
That is, essentially, the point of this exercise. The Punt (and now Whitehall) are built on a framework, and the only difference in the code is the piece that specifies how many parts each boat has and what each boat looks like. It *is* code, however. I don't think I could abstract things enough to allow users to create new boats without writing code, but I'll try to streamline the process any way I can.
To build the Whitehall I duplicated the Punt files, refactored, and then altered the constructor to create a larger boat... that took about an hour. Building the models (by hand) took about a day. It would probably be quicker to build models in Techne, but I'm doing specific things with code right now and I don't want to be concerned with splitting out code generated by another tool. Tweaking things for the animation took several hours (it would have been easier if it was straight GL, but I'm trying to work within the bounds of common Minecraft implementation). In between this and that I'm chasing down bugs in the framework.
I started yesterday, the screenshot is from this evening. If the framework were complete I'd be done right now, and you'd be downloading it... but I'm still working on the framework. Still, the simple fact that I can build a boat from scratch over a weekend should illustrate the utility of the framework and how easy I want it to be for modders to build their own boats.
Unfortunately, the change I made to Minecraft itself is buried about as deep in Mojang's code as you can get (World.java). Unless you set up a development environment, there's no getting around it. I've been testing with a couple of machines on a dedicated server, one with the patch and one without, and it's just slightly more than irritating. It doesn't completely break the boats, but it makes it hard to enjoy them.
Does the WhiteHall have any special abilities or perks besides the single chest?
The Whitehall will be able to carry two passengers or two large chests (in addition to the small chest and driver), and a rowing version is a possibility.
Loving playing with this punt. The ability to transport this storage space is a really handy feature. I look forward to your mention of multiple passengers. Can I suggest the idea that 'passengers' include mobs?
Thanks very much for the time and effort put into this mod ^^
Loving playing with this punt. The ability to transport this storage space is a really handy feature. I look forward to your mention of multiple passengers. Can I suggest the idea that 'passengers' include mobs?
Thanks very much for the time and effort put into this mod ^^
I'm not sure how to go about making animals transportable, at least as they are. How would you get them into the boat, accept by random chance?
Plus I'm on 1.4.2 waiting for mods to up date so is it possible to make this mod for 1.4.2
I don't think there's anything in my code that would preclude it from running on 1.4.2 or 1.4.6, as long as you have the correct version of Forge.
2012-12-23 21:52:50 [WARNING] [ForgeModLoader] The mod id awger_Punt attempted to register channels without specifying a packet handler
2012-12-23 21:52:50 [INFO] [ForgeModLoader] Configured a dormant chunk cache size of 0
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] Fatal errors were detected during the transition from PREINITIALIZATION to INITIALIZATION. Loading cannot continue
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader]
mcp [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
FML [Forge Mod Loader] (coremods) Unloaded->Constructed->Pre-initialized
Forge [Minecraft Forge] (coremods) Unloaded->Constructed->Pre-initialized
awger_Punt [Punt] (punt_0.2.jar) Unloaded->Constructed->Errored
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] The following problems were captured during this phase
2012-12-23 21:52:50 [SEVERE] [ForgeModLoader] Caught exception from awger_Punt
java.lang.NoSuchMethodError: uk: method (I)V not found
at awger.mods.punt.common.ItemPunt.(ItemPunt.java:12)
at awger.mods.punt.common.Punt.preInit(Punt.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:478)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
at com.google.common.eventbus.EventBus.post(EventBus.java:268)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
at com.google.common.eventbus.EventBus.post(EventBus.java:268)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:83)
at cpw.mods.fml.common.Loader.loadMods(Loader.java:485)
at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:161)
at net.minecraft.client.Minecraft.a(Minecraft.java:410)
at asq.a(SourceFile:56)
at net.minecraft.client.Minecraft.run(Minecraft.java:744)
at java.lang.Thread.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] cpw.mods.fml.common.LoaderException: java.lang.NoSuchMethodError: uk: method (I)V not found
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.transition(LoadController.java:117)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.Loader.loadMods(Loader.java:486)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:161)
2012-12-23 21:53:02 [INFO] [STDERR] at net.minecraft.client.Minecraft.a(Minecraft.java:410)
2012-12-23 21:53:02 [INFO] [STDERR] at asq.a(SourceFile:56)
2012-12-23 21:53:02 [INFO] [STDERR] at net.minecraft.client.Minecraft.run(Minecraft.java:744)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.Thread.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] Caused by: java.lang.NoSuchMethodError: uk: method (I)V not found
2012-12-23 21:53:02 [INFO] [STDERR] at awger.mods.punt.common.ItemPunt.(ItemPunt.java:12)
2012-12-23 21:53:02 [INFO] [STDERR] at awger.mods.punt.common.Punt.preInit(Punt.java:70)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:478)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:140)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.lang.reflect.Method.invoke(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:69)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:317)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:300)
2012-12-23 21:53:02 [INFO] [STDERR] at com.google.common.eventbus.EventBus.post(EventBus.java:268)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:83)
2012-12-23 21:53:02 [INFO] [STDERR] at cpw.mods.fml.common.Loader.loadMods(Loader.java:485)
2012-12-23 21:53:02 [INFO] [STDERR] ... 5 more
2012-12-23 21:53:02 [INFO] [STDERR] Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: component argument pData
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.windows.GDIWindowSurfaceData.initOps(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.windows.GDIWindowSurfaceData.(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.windows.GDIWindowSurfaceData.createData(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.d3d.D3DScreenUpdateManager.getGdiSurface(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.java2d.d3d.D3DScreenUpdateManager.createGraphics(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.awt.windows.WComponentPeer.getGraphics(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Component.getGraphics(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.awt.RepaintArea.paint(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Component.dispatchEventImpl(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Container.dispatchEventImpl(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.Component.dispatchEvent(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue.access$200(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$3.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$3.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.AccessController.doPrivileged(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$4.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue$4.run(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.AccessController.doPrivileged(Native Method)
2012-12-23 21:53:02 [INFO] [STDERR] at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventQueue.dispatchEvent(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
2012-12-23 21:53:02 [INFO] [STDERR] at java.awt.EventDispatchThread.run(Unknown Source)
Working on it. Tripped over a bug in Minecraft itself, will have to wait for an official fix before I can release anything larger.
Hmm. Looks like the re-obfuscation process mangles the Forge interface as well, which means I'll have to build specific releases matched to each Forge release?
I guess I have some downloading to do...
** UPDATE **
...and some rearrangement to do. Forge rearranged the package hierarchy (discarded the common folder) for version 6.5.0 so I have to rebuild my mod package and build scripts. A minor irritation, but it's Christmas Eve, it just started snowing, and the kids have just about lost their minds!
pictures:
boating trip
(P.S. could you try to make the boat not slip through the earth and into the void when you place it on land?)
(P.P.S When will you update to 1.4.6?)
Fixed falling through earth before I started working on the 1.4.6 conversion... many changes in Forge for 1.4.6, requires a total reorganization of my packages. Having problems getting a working 1.4.6 environment due to some network problems here at the house, downloads keep getting mangled.
Oh well, Keep up the great work
It's functional right now, but only because I've patched my Minecraft jar to get around a collision bug. Release will need to wait for an official fix from Mojang, or an as-yet-unknown workaround.
Incidentally... the space in front of the mizzen mast is for more chests or extra seats.
That is awesome
That is, essentially, the point of this exercise. The Punt (and now Whitehall) are built on a framework, and the only difference in the code is the piece that specifies how many parts each boat has and what each boat looks like. It *is* code, however. I don't think I could abstract things enough to allow users to create new boats without writing code, but I'll try to streamline the process any way I can.
To build the Whitehall I duplicated the Punt files, refactored, and then altered the constructor to create a larger boat... that took about an hour. Building the models (by hand) took about a day. It would probably be quicker to build models in Techne, but I'm doing specific things with code right now and I don't want to be concerned with splitting out code generated by another tool. Tweaking things for the animation took several hours (it would have been easier if it was straight GL, but I'm trying to work within the bounds of common Minecraft implementation). In between this and that I'm chasing down bugs in the framework.
I started yesterday, the screenshot is from this evening. If the framework were complete I'd be done right now, and you'd be downloading it... but I'm still working on the framework. Still, the simple fact that I can build a boat from scratch over a weekend should illustrate the utility of the framework and how easy I want it to be for modders to build their own boats.
Unfortunately, the change I made to Minecraft itself is buried about as deep in Mojang's code as you can get (World.java). Unless you set up a development environment, there's no getting around it. I've been testing with a couple of machines on a dedicated server, one with the patch and one without, and it's just slightly more than irritating. It doesn't completely break the boats, but it makes it hard to enjoy them.
The Whitehall will be able to carry two passengers or two large chests (in addition to the small chest and driver), and a rowing version is a possibility.
Here's another mod review
Keep up the awesome work <3
Thanks very much for the time and effort put into this mod ^^
Look on the first page you can already change the sail's color.
I'm not sure how to go about making animals transportable, at least as they are. How would you get them into the boat, accept by random chance?