java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: eu.crushedpixel.mcjson.MCScore
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at java.util.ArrayList.readObject(Unknown Source)
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 java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at java.util.ArrayList.readObject(Unknown Source)
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 java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at eu.crushedpixel.mcjsongenerator.MainFrame$4.actionPerformed(MainFrame.java:433)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(UnknownSource)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.io.NotSerializableException: eu.crushedpixel.mcjson.MCScore
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeObject(Unknown Source)
at java.util.ArrayList.writeObject(Unknown Source)
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 java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeObject(Unknown Source)
at java.util.ArrayList.writeObject(Unknown Source)
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 java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)
at java.io.ObjectOutputStream.writeSerialData(Unknown Source)
at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
at java.io.ObjectOutputStream.writeObject0(Unknown Source)
at java.io.ObjectOutputStream.writeObject(Unknown Source)
at eu.crushedpixel.mcjsongenerator.MainFrame$5.actionPerformed(MainFrame.java:482)
... 38 more
I saved all the info for a custom book I was working on, so I closed the program, and I came back to it later. But when I tried to load the same file up, it was just a blank book! No edits, no nothing!
I know that some of you may say that I might have not saved/did something wrong, but I assure you that I did everything properly. More proof that confirms this, is that I made multiple saves and every time I loaded them up, I still got nothing.
Ive also noticed that If you're editing a book, and try to load up another one, the information on the screen does not change at all, and you can still see the current info for the book your working on in the program.
The JSON Book Generator has been updated to Version 1.0.6 - I fixed the Load/Save functionality! Thanks to The_BrainStone for providing me with a Stacktrace which helped me resolve the issue.
The Meaning of Life, the Universe, and Everything.
Join Date:
9/11/2013
Posts:
130
Minecraft:
_F1R35T0RM_
Member Details
I'm using 1.0.6 but im running into the same problem aswell i was working on my book and saving it and it was loading fine but then i came back after a few days of doing other things and when i tried to load it up the file popped up like i had necer done anything, ive deleted that file and have decided not to use it for the time being since the saving feature is not reliable as of yet otherwise i love your tool
Great job on this, thanks for taking the time to make this.
I was having the above problem...
Not sure what was wrong... I was having trouble loading. I tried a redownload, and it started worked. I looked through my download history, and can confirm that I downloaded 1.0.6 both times. So yeah, weird...
Saving doesn't appear to save the title and author, just so you know.
Also, I do have one file that I can't load, it could be because I didn't nest my reformatted words, instead I made them siblings.
Here's the error report:
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: eu.crushedpixel.mcjsongenerator.HoverValueDialog$4 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1355) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) at java.util.ArrayList.readObject(ArrayList.java:791) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1896) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) at java.util.ArrayList.readObject(ArrayList.java:791) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1896) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) at eu.crushedpixel.mcjsongenerator.MainFrame$4.actionPerformed(MainFrame.java:433) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.AbstractButton.doClick(AbstractButton.java:376) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877) at java.awt.Component.processMouseEvent(Component.java:6525) at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) at java.awt.Component.processEvent(Component.java:6290) at java.awt.Container.processEvent(Container.java:2234) at java.awt.Component.dispatchEventImpl(Component.java:4881) at java.awt.Container.dispatchEventImpl(Container.java:2292) at java.awt.Component.dispatchEvent(Component.java:4703) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462) at java.awt.Container.dispatchEventImpl(Container.java:2278) at java.awt.Window.dispatchEventImpl(Window.java:2739) at java.awt.Component.dispatchEvent(Component.java:4703) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:746) at java.awt.EventQueue.access$400(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:697) at java.awt.EventQueue$3.run(EventQueue.java:691) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:719) at java.awt.EventQueue$4.run(EventQueue.java:717) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) at java.awt.EventQueue.dispatchEvent(EventQueue.java:716) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Caused by: java.io.NotSerializableException: eu.crushedpixel.mcjsongenerator.HoverValueDialog$4 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) at java.util.ArrayList.writeObject(ArrayList.java:762) at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:988) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) at java.util.ArrayList.writeObject(ArrayList.java:762) at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:988) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) at eu.crushedpixel.mcjsongenerator.MainFrame$5.actionPerformed(MainFrame.java:482) ... 38 more
And thanks again, for making such great software.
Edit:
Nevermind, still having a problem. Doesn't actually happen all the time. Only on certain ?large? files. Can't seem to issolate the issue.
I've been trying to use this to create a tutorial walk-through on my server, and for the most part it works, but tends to get quite confusing and annoying at some point. Previously, I managed to write quite a few pages successfully, then the program randomly decided to stop loading the file (v1.0.6, the version that said it fixed save/load problems, so not sure what's going on). No error message, it just doesn't do anything when attempting to load it. So I have some suggestions:
1) Show a helpful error message when the file fails to load at some point. If it's already designed to do so, whatever I've done to the file doesn't trigger this function, so I've no clue why it isn't loading.
2) Allow the window to be resized. When resizing horizontally, only expanding the components on the right: the tree view, book options, the two buttons under the Book Options (which should probably be moved above the tree, my mouse is generally near that area anyways), and the tree view. When resizing vertically, only expanding the JSON text box (if all that's possible). This would make the tree view much easier to view and search.
3) Simplify the tree view somehow? I don't quite care for it to reflect the exact JSON data tree; For usability, it'd be nice if the tree could be simplified. I'm not sure how detrimental this would be, but I often find the tree very cluttered and hard to navigate, especially since it's quite a narrow panel and how the 'extra' tags tend to nest things quite far in. If the 'extra' could be removed and just show the elements nested in the extra, it may help. I've also noticed you can't add multiple text objects directly to a page parent. It must be nested under the page's first object's extra tag. Would it be worth merging that first object with the Page object (still allowing it to be edited by highlighting the page, which I'm assuming allows some properties to extend to child objects) and then having objects in the extra of that directly under the page? Another thing is that the title and author labels can be hidden since they have text boxes of their own. May even be worth allowing them to be edited by highlighting the Book object and use the space the 'Book Options' occupies to make more room for the tree view.
Example of what I mean:
- Book
-- Page 1 (pages can be hidden I suppose)
---- Text (extra of 'Page 1's initial object)
------ Text (extra of the above 'Text' object)
---- Selector (another extra of 'Page 1's initial object)
Thanks for reading all this. I'd quite appreciate this tool if I could manage to finish this guide book. Good work on everything so far! About the only thing I can find for creating books like this so far.
Another minor things that might make it more interesting to use is to use small colored squares to replace the color drop down? Empty JLabel or JButton with a colored icon and a tooltip for the color's name would likely work well. Maybe change the border of the label or add a border to the icon when it's selected. Thinking about all this makes me want to remake this, but I know I'd likely not finish it. Anywho, thanks again and good luck!
How do I run it? I looked it up on Google (like you said) and it gave me steps. I followed the steps, and when I execute the .bat file it opens a window for a split second, then the window vanishes, and then nothing.
Rollback Post to RevisionRollBack
(It's "VMod" when used in a title or beginning of a sentence, and "vmod" otherwise. LEARN IT)
Maker of multiple vanilla mods, like these:
Link Removed - Overhauls survival with steeper difficulty curve
I'm having troubles with a book. I figured out how to make complex items in command blocks but I was hoping to take it further and make a book that functioned as a catalog of items (click the text to receive the item). The code I got from the book generator was:
/give @p minecraft:written_book 1 0 {author:"Linc",title:"Starter Guide",pages:["{text:\"Equipment\\n\",extra:[{text:\"Vorpal Bow\",color:\"dark_red\",clickEvent:{action:\"run_command\",value:\"/give @p bow 1 0 {ench:[{id:51,lvl:1},{id:48,lvl:999},{id:34,lvl:999}],display:{Name:\\\"Bartender\\\",Lore:[\\\"Hey bartender! How 'bout another shot? ~Famous last words~\\\"]},AttributeModifiers:[{Operation:0,UUIDLeast:1,UUIDMost:1,Amount:1000,AttributeName:generic.attackDamage,Name:Flower}]}\"}}]}"]}
however said code gives an error when clicking the text in the book of "Data tag parsing failed: Unbalanced brackets: {ench:[{id:51,lvl:1},{id:48,lvl:999},{id:34,lvl:999}],display:{Name:"Bartender",Lor"
I can make it work if I omit everything after the array of enchants (name, lore, attribute mods), but then I'm left with items that lack a theme.
The full code for the item works within a command block:
/give @p bow 1 0 {ench:[{id:51,lvl:1},{id:48,lvl:999},{id:34,lvl:999}],display:{Name:"Bartender",Lore:["Hey bartender! How 'bout another shot? ~Famous last words~"]},AttributeModifiers:[{Operation:0,UUIDLeast:1,UUIDMost:1,Amount:1000,AttributeName:generic.attackDamage,Name:Flower}]}
Is there any way to make a nested item like this work?
(not sure if this is related, but the sign generator program posted by CrushedPixel in another thread makes clickable text that will make the item, lore included)
This is the error I get:
The BrainStoneMod! GET IT NOW!
Tested it on Windows 8 Pro 64bit
I saved all the info for a custom book I was working on, so I closed the program, and I came back to it later. But when I tried to load the same file up, it was just a blank book! No edits, no nothing!
I know that some of you may say that I might have not saved/did something wrong, but I assure you that I did everything properly. More proof that confirms this, is that I made multiple saves and every time I loaded them up, I still got nothing.
Ive also noticed that If you're editing a book, and try to load up another one, the information on the screen does not change at all, and you can still see the current info for the book your working on in the program.
Want to learn Minecraft History in Minecraft? Here you go: http://www.minecraftforum.net/forums/minecraft-discussion/creative-mode/2368408-mcmuseum-learn-minecraft-history-in-minecraft
Please run the tool via the console and give me the error log it gives you when saving a book.
Also, you can only load books saved using 1.0.6!
I was having the above problem...
Not sure what was wrong... I was having trouble loading. I tried a redownload, and it started worked. I looked through my download history, and can confirm that I downloaded 1.0.6 both times. So yeah, weird...
Saving doesn't appear to save the title and author, just so you know.
Also, I do have one file that I can't load, it could be because I didn't nest my reformatted words, instead I made them siblings.
Here's the error report:
Edit:
Nevermind, still having a problem. Doesn't actually happen all the time. Only on certain ?large? files. Can't seem to issolate the issue.
1) Show a helpful error message when the file fails to load at some point. If it's already designed to do so, whatever I've done to the file doesn't trigger this function, so I've no clue why it isn't loading.
2) Allow the window to be resized. When resizing horizontally, only expanding the components on the right: the tree view, book options, the two buttons under the Book Options (which should probably be moved above the tree, my mouse is generally near that area anyways), and the tree view. When resizing vertically, only expanding the JSON text box (if all that's possible). This would make the tree view much easier to view and search.
3) Simplify the tree view somehow? I don't quite care for it to reflect the exact JSON data tree; For usability, it'd be nice if the tree could be simplified. I'm not sure how detrimental this would be, but I often find the tree very cluttered and hard to navigate, especially since it's quite a narrow panel and how the 'extra' tags tend to nest things quite far in. If the 'extra' could be removed and just show the elements nested in the extra, it may help. I've also noticed you can't add multiple text objects directly to a page parent. It must be nested under the page's first object's extra tag. Would it be worth merging that first object with the Page object (still allowing it to be edited by highlighting the page, which I'm assuming allows some properties to extend to child objects) and then having objects in the extra of that directly under the page? Another thing is that the title and author labels can be hidden since they have text boxes of their own. May even be worth allowing them to be edited by highlighting the Book object and use the space the 'Book Options' occupies to make more room for the tree view.
Example of what I mean:
- Book
-- Page 1 (pages can be hidden I suppose)
---- Text (extra of 'Page 1's initial object)
------ Text (extra of the above 'Text' object)
---- Selector (another extra of 'Page 1's initial object)
Thanks for reading all this. I'd quite appreciate this tool if I could manage to finish this guide book. Good work on everything so far! About the only thing I can find for creating books like this so far.
Another minor things that might make it more interesting to use is to use small colored squares to replace the color drop down? Empty JLabel or JButton with a colored icon and a tooltip for the color's name would likely work well. Maybe change the border of the label or add a border to the icon when it's selected. Thinking about all this makes me want to remake this, but I know I'd likely not finish it. Anywho, thanks again and good luck!
Hey Crushed, Just wondering if you had any luck with the load functionality yet
How d I save my work?
daddy
I know I want to load my book!!
daddy
Thanks, I'll remember that and I hope that gets fixed.
daddy
Hi for some reason that i don't know I can't load my book Someone know how to fix that ?
(Sorry I have write this comment without read the other, I've find my answer )
How do I run it? I looked it up on Google (like you said) and it gave me steps. I followed the steps, and when I execute the .bat file it opens a window for a split second, then the window vanishes, and then nothing.
Like them? Post on them! Say your opinion, or suggest more features!
Never mind, got it to work.
Like them? Post on them! Say your opinion, or suggest more features!
All right, sort of having a problem. I can load my book, but when I copy it into Minecraft it says it's an invalid book tag.
Like them? Post on them! Say your opinion, or suggest more features!
I'm having troubles with a book. I figured out how to make complex items in command blocks but I was hoping to take it further and make a book that functioned as a catalog of items (click the text to receive the item). The code I got from the book generator was:
/give @p minecraft:written_book 1 0 {author:"Linc",title:"Starter Guide",pages:["{text:\"Equipment\\n\",extra:[{text:\"Vorpal Bow\",color:\"dark_red\",clickEvent:{action:\"run_command\",value:\"/give @p bow 1 0 {ench:[{id:51,lvl:1},{id:48,lvl:999},{id:34,lvl:999}],display:{Name:\\\"Bartender\\\",Lore:[\\\"Hey bartender! How 'bout another shot? ~Famous last words~\\\"]},AttributeModifiers:[{Operation:0,UUIDLeast:1,UUIDMost:1,Amount:1000,AttributeName:generic.attackDamage,Name:Flower}]}\"}}]}"]}
however said code gives an error when clicking the text in the book of "Data tag parsing failed: Unbalanced brackets: {ench:[{id:51,lvl:1},{id:48,lvl:999},{id:34,lvl:999}],display:{Name:"Bartender",Lor"
I can make it work if I omit everything after the array of enchants (name, lore, attribute mods), but then I'm left with items that lack a theme.
The full code for the item works within a command block:
/give @p bow 1 0 {ench:[{id:51,lvl:1},{id:48,lvl:999},{id:34,lvl:999}],display:{Name:"Bartender",Lore:["Hey bartender! How 'bout another shot? ~Famous last words~"]},AttributeModifiers:[{Operation:0,UUIDLeast:1,UUIDMost:1,Amount:1000,AttributeName:generic.attackDamage,Name:Flower}]}
Is there any way to make a nested item like this work?
(not sure if this is related, but the sign generator program posted by CrushedPixel in another thread makes clickable text that will make the item, lore included)