brianmacintosh / catamodder Goto Github PK
View Code? Open in Web Editor NEWC# Winforms application for editing JSON files from the game Cataclysm: Dark Days Ahead.
License: MIT License
C# Winforms application for editing JSON files from the game Cataclysm: Dark Days Ahead.
License: MIT License
Add support for loading, editing, and saving 'monstergroups.json'.
Add load and save support for 'vehicle_parts.json'.
Skill requirements for recipes are handled differently for the upcoming version. Need to add compatibility for this.
Add support for loading, editing, and saving 'materials.json'.
Add support for loading, editing, and saving 'professions.json'.
Judging by the diffs here on GIT, the tool generates the entire file anew.
I had to copy out the added items, revert the changes and add the items back.
It is a little annoying considering the contributing rules.
I put asterisks next to the problem topic for ease of reading :)
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
at CataclysmModder.Storage.LoadFile(String path)
at CataclysmModder.Storage.LoadFiles(String path)
at CataclysmModder.Form1.loadFiles(String path)
at CataclysmModder.Form1.openRawsToolStripMenuItem_Click(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1008 (RTMGDR.030319-1000)
CataclysmModder
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1002 built by: RTMGDR
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
System.Web.Extensions
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1008
System.Web
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1008 built by: RTMGDR
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.233 built by: RTMGDR
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1009 (RTMGDR.030319-1000)
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
|
|
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
**System.InvalidCastException: Unable to cast object of type 'System.Collections.Generic.Dictionary2[System.String,System.Object]' to type 'System.String'.** at CataclysmModder.WinformsUtil.SetChecks(Dictionary
2 itemValues, String key, CheckedListBox field, String id, Boolean mandatory, Boolean material)
at CataclysmModder.WinformsUtil.ControlsLoadItem(Control control, Object item)
at CataclysmModder.Storage.LoadItem(Int32 index)
at CataclysmModder.Form1.entriesListBox_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ListBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ListBox.WmReflectCommand(Message& m)
at System.Windows.Forms.ListBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1008 (RTMGDR.030319-1000)
CataclysmModder
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1002 built by: RTMGDR
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1001 built by: RTMGDR
System.Web.Extensions
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1008
System.Web
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1008 built by: RTMGDR
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.233 built by: RTMGDR
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1009 (RTMGDR.030319-1000)
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1009 built by: RTMGDR
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
|
|
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentOutOfRangeException: Value of '-2' is not valid for 'Value'. 'Value' should be between 'Minimum' and 'Maximum'.
Parameter name: Value
at System.Windows.Forms.NumericUpDown.set_Value(Decimal value)
at CataclysmModder.WinformsUtil.SetInt(Dictionary2 itemValues, String key, NumericUpDown field, String id, Boolean mandatory) at CataclysmModder.WinformsUtil.ControlsLoadItem(Control control, Object item) at CataclysmModder.GenericItemValues.typeComboBox_TextChanged(Object sender, EventArgs e) at System.EventHandler.Invoke(Object sender, EventArgs e) at System.Windows.Forms.Control.OnTextChanged(EventArgs e) at System.Windows.Forms.ComboBox.OnTextChanged(EventArgs e) at System.Windows.Forms.Control.set_Text(String value) at System.Windows.Forms.ComboBox.set_Text(String value) at CataclysmModder.WinformsUtil.SetString(Dictionary
2 itemValues, String key, Control field, String id, Boolean mandatory)
at CataclysmModder.WinformsUtil.ControlsLoadItem(Control control, Object item)
at CataclysmModder.Storage.LoadItem(Int32 index)
at CataclysmModder.Form1.entriesListBox_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ListBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ListBox.WmReflectCommand(Message& m)
at System.Windows.Forms.ListBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18052 built by: FX45RTMGDR
CataclysmModder
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18047 built by: FX45RTMGDR
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18021 built by: FX45RTMGDR
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18044 built by: FX45RTMGDR
System.Web.Extensions
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.17929
System.Web
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18044 built by: FX45RTMGDR
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.17929 built by: FX45RTMREL
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18054 built by: FX45RTMGDR
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18054 built by: FX45RTMGDR
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
|
|
Here the details on a german Windows 8 laptop
Informationen über das Aufrufen von JIT-Debuggen
anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.
************** Ausnahmetext **************
System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
bei CataclysmModder.ItemDataWrapper..ctor(Int32 memberOf)
bei CataclysmModder.Form1.newItemButton_Click(Object sender, EventArgs e)
bei System.Windows.Forms.Control.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
bei System.Windows.Forms.Button.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Geladene Assemblys **************
mscorlib
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34209 built by: FX452RTMGDR.
CataclysmModder
Assembly-Version: 1.0.0.0.
Win32-Version: 1.0.0.0.
System.Windows.Forms
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34250 built by: FX452RTMGDR.
System.Drawing
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34262 built by: FX452RTMGDR.
System
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34239 built by: FX452RTMGDR.
System.Configuration
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34209 built by: FX452RTMGDR.
System.Xml
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34230 built by: FX452RTMGDR.
System.Windows.Forms.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.36213 built by: FX452RTMLDR.
mscorlib.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.0.30319.34209 built by: FX452RTMGDR.
************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.
Zum Beispiel:
Wenn das JIT-Debuggen aktiviert ist, werden alle Ausnahmefehler an den JIT-Debugger gesendet, der auf dem
Computer registriert ist, und nicht in diesem Dialogfeld behandelt.
The program generates the code like that:
materials: [
"plastic"
]
even though it should be:
materials:"plastic",
I guess it somehow expects me to mark more than 1 material.
Many item flags are only applicable to certain item types. These should be filtered.
Add a "Find" function to the Search menu that allows advanced searching across all files.
Guns have two new fields - 'pierce' and 'ammo_effects'.
Add the ability to edit values across multiple selected items.
The tool generates properties in the following order
"to_hit":0; "cutting":0; "bashing":20; "weight":3; "volume":40; "material":"iron",;
"color":"white", "symbol":"L", "description":"A still.", "name":"still"; "price":3000;
"rarity":50; "id":"still"; "type":"TOOL";
The preferred order is: "id":"x"; "type:"TOOL", "color:"white";"symbol":"L", "name":"still";
"description":"whatever"; "rarity":50; "price":3; "material":"iron"; "weight":3; "volume":40; "bashing":0; "cutting":0; "to_hit":2;
The rest (i.e. "turns_per_charge":0, "charges_per_use":0, "initial_charges":0,
"max_charges":0, "revert_to":"null", "ammo":"none") is fine as is.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.