Another Character Generator

By OggDude, in Star Wars: Edge of the Empire RPG

Just now, LegendsoftheGalaxy said:

I can do it I just would need to know how

Your guess is as good as mine :) I believe there are websites that can host VMs, although I've never needed them. I use VM's all the time at work, but, of course, they're all Windows machines.

4 minutes ago, OggDude said:

I don't want to control anyone's computer :) I was just wondering if someone could set up a VM (virutal machine) with the latest Mac OS where I could do testing. I don't own a Mac, nor have I ever, and don't know too much about them. A base install with Mono would suffice.

Not sure how you'd do testing without controlling it... ;)

Unless you'd just be sending build after build and IMing while the Mac owner does the testing. I'd volunteer for that, but the latter half of this week is unusually busy (plus I'm assuming you're American, whereas I'm in the UK - which could make quick communication potentially tricky)

Either way, I'll try and stop being such a smartarse for now...

8 minutes ago, TheMongoose said:

Not sure how you'd do testing without controlling it... ;)

Unless you'd just be sending build after build and IMing while the Mac owner does the testing. I'd volunteer for that, but the latter half of this week is unusually busy (plus I'm assuming you're American, whereas I'm in the UK - which could make quick communication potentially tricky)

Either way, I'll try and stop being such a smartarse for now...

I'm talking about a VM, not doing RDP into someone's Mac session. That's crazy :) I know there's websites where you can do this, but I don't know if they're free, plus I don't own Mac OS.

My brother-in-law is heavily into Macs, plus he owns a non-profit where he sets up schools for doing this sort of thing. I've emailed him to see if he can set something up. We'll see...

OK, the new bug fix release is now in place. As always, give it about 10 minutes to sync with DropBox...

Release 2.0.0.3 Bug Fix

  • There was an issue with the web install involving manifest files. This should be taken care of.
  • Another issue with web install was that Sql Server CE files were not being included, which caused an exception when the generator was run. This should be taken care of.
  • If you launched the character generator with no data (specifically, no characters), you'd get an exception in "CharShowInfo". This will no longer happen.
  • The Navigator specialization was missing Survival from its list of career skills. This has been fixed.
  • In the skills pane, the header of the skill grid was not the right size which caused some text to be partially obscured. This has been fixed.
  • In the Sources dialog, selecting or deselecting a source would cause an exception. This has been fixed.
  • In the Sources dialog, the "Core" cell was editable. It is now properly read-only.
  • The Bardottan species had "Aleena" in the description. This has been fixed.
  • The Farsight Force power was missing a connection between the bottom-row Mastery abiltiy and the Range ability to the right. This has been fixed.
  • When a new species was selected, the character was not being recalculated, so the change was not displayed. This has been fixed.
  • There were a few places in the generator where auto recalc had been turned off for the current character in order to save needless recalcs from happening. However, it wasn't always turned back on properly. This resulted in certain changes not being reflected in the character due to recalculations not being performed properly. These situations should be fixed.
  • There was an issue where the campaign setting for a character would be erased after the character was saved. This will no longer happen.
  • When printing a group sheet, character summaries all displayed "Test [Rival]". This was because the summary control was being translated when it was loaded, which occurred after everything had already been set. Translation now occurs before everything is set, so values are now what they should be.
21 minutes ago, OggDude said:

I'm talking about a VM, not doing RDP into someone's Mac session. That's crazy :) I know there's websites where you can do this, but I don't know if they're free, plus I don't own Mac OS.

My brother-in-law is heavily into Macs, plus he owns a non-profit where he sets up schools for doing this sort of thing. I've emailed him to see if he can set something up. We'll see...

Well if you want an RDP style while you wait, I can offer it for the next couple days.

I didn't notice anyone else point this out, so here's a bug that I found:

While attempting to manually input the Mandalorian Human race for myself, I discovered that the newest build doesn't allow you to create Sub-Species. It gives an error stating that it "Needs a Key" but there's no way to fix it that I can see. The baseline Mandalorians that I made have a key (HUMANMANDO to keep with other ones), but Sub-Species don't have a key input field. In past versions, I believe the key was auto-generated based on the parent species.

Hopefully that can be fixed soon, as I want to make a Mandalorian! :)

5 minutes ago, Jaarka said:

I didn't notice anyone else point this out, so here's a bug that I found:

While attempting to manually input the Mandalorian Human race for myself, I discovered that the newest build doesn't allow you to create Sub-Species. It gives an error stating that it "Needs a Key" but there's no way to fix it that I can see. The baseline Mandalorians that I made have a key (HUMANMANDO to keep with other ones), but Sub-Species don't have a key input field. In past versions, I believe the key was auto-generated based on the parent species.

Hopefully that can be fixed soon, as I want to make a Mandalorian! :)

You couldn't have sent that 3 minutes earlier? ;)

It'll be fixed in 2.0.0.4.

Hah! I noticed you were readying a bugfix and hurried, but didn't find it until too late. :(

Keep up the good work, amigo!

BUG FOUND

Campaign selection in the character

- When I select a campaign and assign it to a character and save it will auto change the campaign name to the first campaign in the list of campaign and not the campaign I selected.

Character Generator Load Error

- When I try to load version 2.0.0.3 I get an error that says the character generator stopped working. There is no error code attached

- Running on Windows 10

- The Generator will only load if I have no character data

- I have tried to clear the cache too

Edited by LegendsoftheGalaxy
3 minutes ago, LegendsoftheGalaxy said:

Character Generator Load Error

- When I try to load version 2.0.0.3 I get an error that says the character generator stopped working. There is no error code attached

- Running on Windows 10

- The Generator will only load if I have no character data

Just tried it on my win10 machine and it's working with a character in the list. Do you have custom data?

I do. But I cleared all of that out and tried a fresh install and the launcher will open. But each time I try to release the character generator it says Star Wars Character Generator has stopped working. A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available.

Below is a link to my data files if you want to look

Quote

Edited by LegendsoftheGalaxy
3 minutes ago, LegendsoftheGalaxy said:

I do. But I cleared all of that out and tried a fresh install and the launcher will open. But each time I try to release the character generator it says Star Wars Character Generator has stopped working. A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available.

Below is a link to my data files if you want to look

Wow, you have a lot of characters :) I just updated my own personal web install and it's working with my 30 or so characters. Did you just update a character? What you might try doing is temporarily removing the character files that were most recently changed and try running it again to see if a particular character is causing the problem. If you find one that's causing problems, email it to me and I'll take a look.

I have just started using 2.0.0.3. I noticed a bug when using the "select none" button on the Character Generator's Options to clear source selections. It gives off the following error:

Consulte o final desta mensagem para obter detalhes sobre como chamar a


depuração just-in-time (JIT) em vez desta caixa de diálogo.

************** Texto de Exceção **************
System.NullReferenceException: Referência de objeto não definida para uma instância de um objeto.
em SWCharGen.frmSetSource.btnSelectNone_Click(Object sender, EventArgs e)
em System.Windows.Forms.Control.OnClick(EventArgs e)
em SWCharGen.ImageButton.OnClick(EventArgs e)
em System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
em System.Windows.Forms.Control.WndProc(Message& m)
em SWCharGen.ImageButton.WndProc(Message& m)
em System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
em System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
em System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Assemblies Carregados **************
mscorlib
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
SWCharGen
Versão do Assembly: 2.0.0.3
Versão do Win32: 2.0.0.3
Base de Código: file:///C:/Users/Uri/AppData/Local/Apps/2.0/AX054NCE.9HV/2QDAWAAN.L31/swch..tion_0000000000000000_0002.0000_23a7beb20f886158/SWCharGen.exe
----------------------------------------
System.Windows.Forms
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
SWCharGenCtlLib
Versão do Assembly: 2.0.0.3
Versão do Win32: 2.0.0.3
Base de Código: file:///C:/Users/Uri/AppData/Local/Apps/2.0/AX054NCE.9HV/2QDAWAAN.L31/swch..tion_0000000000000000_0002.0000_23a7beb20f886158/SWCharGenCtlLib.DLL
----------------------------------------
SWCharGenLib
Versão do Assembly: 2.0.0.3
Versão do Win32: 2.0.0.3
Base de Código: file:///C:/Users/Uri/AppData/Local/Apps/2.0/AX054NCE.9HV/2QDAWAAN.L31/swch..tion_0000000000000000_0002.0000_23a7beb20f886158/SWCharGenLib.DLL
----------------------------------------
System.Core
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
HtmlRenderer.WinForms
Versão do Assembly: 1.5.0.6
Versão do Win32: 1.5.0.6
Base de Código: file:///C:/Users/Uri/AppData/Local/Apps/2.0/AX054NCE.9HV/2QDAWAAN.L31/swch..tion_0000000000000000_0002.0000_23a7beb20f886158/HtmlRenderer.WinForms.DLL
----------------------------------------
HtmlRenderer
Versão do Assembly: 1.5.0.6
Versão do Win32: 1.5.0.6
Base de Código: file:///C:/Users/Uri/AppData/Local/Apps/2.0/AX054NCE.9HV/2QDAWAAN.L31/swch..tion_0000000000000000_0002.0000_23a7beb20f886158/HtmlRenderer.DLL
----------------------------------------
System.Xml
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Windows.Forms.resources
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_pt-BR_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Data.SqlServerCe
Versão do Assembly: 4.0.0.1
Versão do Win32: 4.0.8876.1
Base de Código: file:///C:/Users/Uri/AppData/Local/Apps/2.0/AX054NCE.9HV/2QDAWAAN.L31/swch..tion_0000000000000000_0002.0000_23a7beb20f886158/System.Data.SqlServerCe.DLL
----------------------------------------
System.Data
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1636.0 built by: NETFXREL3STAGE
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Transactions
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
mscorlib.resources
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_pt-BR_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.EnterpriseServices
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll
----------------------------------------
System.Data.resources
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Data.resources/v4.0_4.0.0.0_pt-BR_b77a5c561934e089/System.Data.resources.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
Versão do Assembly: 4.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Microsoft.GeneratedCode
Versão do Assembly: 1.0.0.0
Versão do Win32: 4.6.1586.0 built by: NETFXREL2
Base de Código: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** Depuração JIT **************
Para habilitar a depuração just-in-time (JIT), o arquivo .config deste
aplicativo ou computador (machine.config) deve ter o valor
jitDebugging definido na seção system.windows.forms.
O aplicativo também deve ser compilado com a depuração
habilitada.

Por exemplo:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

Quando a depuração JIT está habilitada, qualquer exceção sem tratamento
será enviada ao depurador JIT registrado no computador,
em vez de ser tratada nesta caixa de diálogo.


@SladeWeston and @ShadoWarrior , thanks for the help with the spoiler bit.

Edited by Alryon

@Alryon We appreciate the bug report but do you mind editing your post to hide it in a spoiler wrap? This thread is quite long enough without pages of bug reports bogging it down.

Don't know if this is helpful for debugging Mono errors, but just for a laugh, I installed Mono on a Windows 7 laptop and tried to launch the Launcher from it. I get the following error:

System.ArgumentException: A null reference or invalid value was found [GDI+ status: InvalidParameter]
  at System.Drawing.GDIPlus.CheckStatus (System.Drawing.Status status) [0x0009b] in D:\j\workspace\v\repos\mono\mcs\class\System.Drawing\System.Drawing\gdipFunctions.cs:212 
  at System.Drawing.Font..ctor (System.Drawing.FontFamily family, System.Single emSize, System.Drawing.FontStyle style, System.Drawing.GraphicsUnit unit, System.Byte gdiCharSet, System.Boolean gdiVerticalFont) [0x00047] in D:\j\workspace\v\repos\mono\mcs\class\System.Drawing\System.Drawing\Font.cs:341 
  at System.Drawing.Font..ctor (System.Drawing.FontFamily family, System.Single emSize, System.Drawing.FontStyle style) [0x00000] in D:\j\workspace\v\repos\mono\mcs\class\System.Drawing\System.Drawing\Font.cs:318 
  at (wrapper remoting-invoke-with-check) System.Drawing.Font:.ctor (System.Drawing.FontFamily,single,System.Drawing.FontStyle)
  at SWCharGen.EmbeddedFonts.GetFont (System.String name, System.Single Size, System.Boolean Bold, System.Boolean Italics) [0x00033] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGen.EmbeddedFonts.ElektraTextFont (System.Single Size, System.Boolean Bold, System.Boolean Italics) [0x00000] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGen.TranslateClass.TranslateControl (System.Windows.Forms.Control ctl, System.String source) [0x000ef] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGen.TranslateClass.TranslateControl (System.Windows.Forms.Control ctl, System.String source) [0x006be] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGenLauncher.frmSWLauncherMain.GetLanguage () [0x00068] in <803646a6844f427ba0139e5bdcd036be>:0 
  at SWCharGenLauncher.frmSWLauncherMain.OnLoad (System.EventArgs e) [0x0017f] in <803646a6844f427ba0139e5bdcd036be>:0 
  at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00029] in D:\j\workspace\v\repos\mono\mcs\class\System.Windows.Forms\System.Windows.Forms\Form.cs:2902 

Don't know if that helps you work out what font-related issue it's throwing, or if this is just a red herring...

3 minutes ago, SladeWeston said:

@Alryon We appreciate the bug report but do you mind editing your post to hide it in a spoiler wrap? This thread is quite long enough without pages of bug reports bogging it down.

Sorry but I'm new to the forums and I can't seem to find how to do that. :unsure:

3 minutes ago, TheMongoose said:

Don't know if this is helpful for debugging Mono errors, but just for a laugh, I installed Mono on a Windows 7 laptop and tried to launch the Launcher from it. I get the following error:


System.ArgumentException: A null reference or invalid value was found [GDI+ status: InvalidParameter]
  at System.Drawing.GDIPlus.CheckStatus (System.Drawing.Status status) [0x0009b] in D:\j\workspace\v\repos\mono\mcs\class\System.Drawing\System.Drawing\gdipFunctions.cs:212 
  at System.Drawing.Font..ctor (System.Drawing.FontFamily family, System.Single emSize, System.Drawing.FontStyle style, System.Drawing.GraphicsUnit unit, System.Byte gdiCharSet, System.Boolean gdiVerticalFont) [0x00047] in D:\j\workspace\v\repos\mono\mcs\class\System.Drawing\System.Drawing\Font.cs:341 
  at System.Drawing.Font..ctor (System.Drawing.FontFamily family, System.Single emSize, System.Drawing.FontStyle style) [0x00000] in D:\j\workspace\v\repos\mono\mcs\class\System.Drawing\System.Drawing\Font.cs:318 
  at (wrapper remoting-invoke-with-check) System.Drawing.Font:.ctor (System.Drawing.FontFamily,single,System.Drawing.FontStyle)
  at SWCharGen.EmbeddedFonts.GetFont (System.String name, System.Single Size, System.Boolean Bold, System.Boolean Italics) [0x00033] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGen.EmbeddedFonts.ElektraTextFont (System.Single Size, System.Boolean Bold, System.Boolean Italics) [0x00000] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGen.TranslateClass.TranslateControl (System.Windows.Forms.Control ctl, System.String source) [0x000ef] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGen.TranslateClass.TranslateControl (System.Windows.Forms.Control ctl, System.String source) [0x006be] in <e1ca7f179562454ead83030e88414081>:0 
  at SWCharGenLauncher.frmSWLauncherMain.GetLanguage () [0x00068] in <803646a6844f427ba0139e5bdcd036be>:0 
  at SWCharGenLauncher.frmSWLauncherMain.OnLoad (System.EventArgs e) [0x0017f] in <803646a6844f427ba0139e5bdcd036be>:0 
  at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00029] in D:\j\workspace\v\repos\mono\mcs\class\System.Windows.Forms\System.Windows.Forms\Form.cs:2902 

Don't know if that helps you work out what font-related issue it's throwing, or if this is just a red herring...

How do you launch stuff from Mono? I installed it as well, but I'm not sure how to use it :) If I could test on Windows, it would be optimal.

15 minutes ago, OggDude said:

How do you launch stuff from Mono? I installed it as well, but I'm not sure how to use it :) If I could test on Windows, it would be optimal.

When Mono is installed, it sticks a shortcut into your Start Menu called "Open Mono x86 Command Prompt". This opens a cmd directly into the Mono install directory. (by default, C:\Program Files (x86)\Mono\)

Then you just type "mono C:\Users\username\desktop\gen\SWCharGenLauncher.exe" or whatever the path to the executables is and it should launch them.

To get the debug messages, run

mono --debug C:\file.exe

If you need to save the debug info, you can run

mono --debug c:\file.exe >> C:\users\username\desktop\debug.txt

Might be worth compiling a Hello World script as per http://www.mono-project.com/docs/getting-started/mono-basics/ - takes about 5 minutes and will prove that Mono is installed correctly.

Once you know it's working, you could put the Mono directory into your PATH variable

I do appreciate that you're doing this as a bonus for Mac users, so thanks :)

Edited by TheMongoose
typo
15 minutes ago, Alryon said:

Sorry but I'm new to the forums and I can't seem to find how to do that. :unsure:

You look up "bbcode spoiler tag" using Google. The actual code looks like [.spoiler] and [./spoiler], without the '.'.

39 minutes ago, Alryon said:

Sorry but I'm new to the forums and I can't seem to find how to do that. :unsure:

[ ] around spoiler before the text and [ ] around /spoiler after the text.

Edited by SladeWeston
ninja'd after forgetting to hit the save button for an hour.

Files to help describe the problem

I have windows 8.1 which is weird because I haven't had any problems running the generator since before the update.

C:\Users\Owner\AppData\Local\Temp\WER9728.tmp.appcompat.txt

C:\Users\Owner\AppData\Local\Temp\WER97E5.tmp.WERDataCollectionFailure.txt

Problem signature:

Problem Event Name: CLR20r3

Problem Signature 01: SWCharGenLauncher.exe

Problem Signature 02: 2.0.0.3

Problem Signature 03: 58c6c418

Problem Signature 04: mscorlib

Problem Signature 05: 4.0.30319.36366

Problem Signature 06: 57a0f7d2

Problem Signature 07: 452b

Problem Signature 08: 105

Problem Signature 09: System.IO.DirectoryNotFound

OS Version: 6.3.9600.2.0.0.768.101

Locale ID: 1033

Additional Information 1: 2beb

Additional Information 2: 2beba6fb4680d73a8c78ca7c24ccdb46

Additional Information 3: 26a5

Additional Information 4: 26a5651d90016da371f8017cb906e2d5

Edited by kiranar
moving text around

What would be the best way to add a new category for crafting to cover Lightsabers from Endless Vigil? I threw some templates under Brawl and Melee weapons, but filtering out the enhancements for lightweight etc I can't seem to get right. Swapped these back to ctMelee to get them to show up.

I'm also not seeing Droid or Droid Directive under the Item Types in the Craft Item form, but they do show up as a category in the Schematics section.

Here's changes I made to try getting it working, I know I don't have all of the improvements set up properly.

\Languages\Lang-en-US.xml

<Phrase Source="CraftTypeEnum" Name="ctLightsaber" Value="Lightsaber" />

CraftImprovements.xml

<!-- Lightsaber - Positive-->

<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERLIGHT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Lightweight</Name>
<Description>
Reduce encumbrance by 1.
</Description>
<CostAdvThr>1</CostAdvThr>
<CostTriDes>1</CostTriDes>
<EncumbranceChange>-1</EncumbranceChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABER2H</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Two-Handed</Name>
<Description>
The lightsaber becomes two-handed, increasing damage and encumbrance by 2.
</Description>
<CostAdvThr>1</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<TwoHands>true</TwoHands>
<EncumbranceChange>2</EncumbranceChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERDISG</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Disguised</Name>
<Description>
Add [SE] to other characters' checks to identify the lightsaber hilt as such while it is not ignited.
</Description>
<CostAdvThr>2</CostAdvThr>
<CostTriDes>1</CostTriDes>
<Abilities>
<Ability>
<Name>Disguised</Name>
<Description>Add [SE] to other characters' checks to identify the lightsaber hilt as such while it is not ignited.</Description>
</Ability>
</Abilities>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERCNTRWGHT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Counterweight</Name>
<Description>
Increase the lightsaber's encumberance by 2; it loses the Unwieldy(AG) quality and gains the Cumbersome(BR) quality with the same value.

TODO: Fix this replacement
</Description>
<CostAdvThr>2</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<Mod>
<MiscDesc>Switch from using Agility to check against Unwieldy to Brawn to check against Cumbersome.</MiscDesc>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERCRSSGRD</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Crossguard</Name>
<Description>
The lightsaber hilt gains a crossguard, as described on page 42 (Endless Vigil). It gains the Defense 1 quality (or increase the value of its Defensive quality by 1). and the user can spend [AD][AD] or [TR] to hook his opponent's blade and disarm his foe.
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<Mod>
<Key>DEFENSIVE</Key>
<Count>1</Count>
<Index>3</Index>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERCUSTOM</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Customizable</Name>
<Description>
Increase the lightsaber's Hard Points by 1. (This can only be selected once)
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<HPChange>1</HPChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERDELBAL</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Delicate Balance</Name>
<Description>
The lightsaber loses the Cumbersome quality and gains the Unwieldy quality with the same value (this can only be selected once).

TODO: Fix this customization
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERPERSDES</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Personalized Design</Name>
<Description>
When the crafter makes a successful Lightsaber check with this weapon, add automatic [SU] to the results. Add automatic [TH] to the Lightsaber checks other characters make with this lightsaber (This can only be selected once).
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERINBUILT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Inbuilt</Name>
<Description>
The hilt is constructed as part of another item, such as a tool or weapon. Choose an appropriate item of encumbrance 1 or higher that the character possesses and increase its encumbrance by that of the lightsaber hit, the hilt is part of that item. While the lightsaber is ignited, the wielder cannot use the original item for its intended purpose and must spend a maneuver to switch between functions. (This can only be selected once)
</Description>
<CostAdvThr>4</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFNEMIT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Fine-Tuned Emitter</Name>
<Description>
Add automatic [AD] to combat checks made with this lightsaber (this can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERPERINLAY</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Personalized Inlay</Name>
<Description>
Reduce the difficulty of checks to modify any lightsaber crystal installed in this weapon by 1 (this can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERENGBLD</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Energy Bleed</Name>
<Description>
The lightsaber gains the Stun 2 quality (or increase the value of Stun quality by 2).
</Description>
<CostAdvThr>4</CostAdvThr>
<CostTriDes>1</CostTriDes>
<Mods>
<Mod>
<Key>STUN</Key>
<Count>2</Count>
</Mod>
</Mods>
</CraftImprovement>

<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFNEMIT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Integral Attachment</Name>
<Description>
Add +1 Hard Point to the weapon, then install one applicable weapon attachment that requires 1 or fewer hard points and is not a lightsaber crystal. No check is required to obtain this attachment, and it costs 0 credits.
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>2</CostTriDes>
<IntegralAttachment>true</IntegralAttachment>
</CraftImprovement>

<!-- Lightsaber - Negative-->

<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABEREXHEFF</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Exhausting Effort</Name>
<Description>
Suffer 3 strain when finished with construction.
</Description>
<CostAdvThr>-1</CostAdvThr>
<CostTriDes>-1</CostTriDes>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERHVY</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Heavy</Name>
<Description>
Increase encumbrance by 1.
</Description>
<CostAdvThr>-1</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<EncumbranceChange>1</EncumbranceChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERODDWGHT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Oddly Weighted</Name>
<Description>
The lightsaber gains the Cumbersome 2 quality (or increase the value of its Cumbersome quality by 1)
</Description>
<CostAdvThr>-2</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<Key>CUMBERSOME</Key>
<Count>2</Count>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFRGCAS</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Fragile Casing</Name>
<Description>
Increase the difficulty of checks to repair this lightsaber by 1
</Description>
<CostAdvThr>-2</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<MiscDesc> Difficult to Repair : Increase difficulty of checks to repair this weapon by {0}</MiscDesc>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERAWKGRP</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Awkward Grip</Name>
<Description>
The lightsaber gains the Unwieldy 2 quality (or increase the value of its Unwieldy quality by 1).
</Description>
<CostAdvThr>-3</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<Key>UNWIELDY</Key>
<Count>2</Count>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERMISEMT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Misaligned Emitter</Name>
<Description>
The lightsaber requires a maneuver to ignite rather than an incidental, it can still be powered down as an incidental (this can only be selected once).
</Description>
<CostAdvThr>-3</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<MiscDesc> Misaligned Emitter: The lightsaber requires a maneuver to ignite rather than an incidental, it can still be powered down as an incidental.</MiscDesc>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERERRTIC</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Erratic</Name>
<Description>
Once per combat encounter, the GM may spend [DE] from any combat check with the lightsaber to have the energies within ripple out, damaging the hilt and shocking the wielder. The lightsaber becomes damaged one step (minor to moderate, moderate to major, etc.) and the wielder suffers 3 strain. (This can only be selected once).
</Description>
<CostAdvThr>-4</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<MiscDesc> Erratic: Once per combat encounter, the GM may spend [DE] from any combat check with the lightsaber to have the energies within ripple out, damaging the hilt and shocking the wielder. The lightsaber becomes damaged one step (minor to moderate, moderate to major, etc.) and the wielder suffers 3 strain.</MiscDesc>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERENDVIG</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Poor Focusing Lens</Name>
<Description>
The lightsaber gains the Inaccurate quality (or increase the value of its Inaccurate quality by 1). If it has the Accurate quality, reduce the value of that quality by 1 instead.
</Description>
<CostAdvThr>-4</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<Key>INACCURATE</Key>
<Count>1</Count>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFLTINL</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Faulty Inlay</Name>
<Description>
Increase the difficulty of checks to modify any lightsaber crystal installed in this weapon by 1 (this can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<MiscDesc>Increase the difficulty of checks to modify any lightsaber crystal installed in this weapon by 1</MiscDesc>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERTRGACC</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Tragic Accident</Name>
<Description>
During the process of crafting the hilt, the character's focus slips at a key moment, and the character suffers a major injury. Upon completing Step 3: Construction , the character suffers a Critical Injury (see page 223 of the Force and Destiny core rulebook. This can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERUNSTBL</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Unstable</Name>
<Description>
The GM may spend [DE] from any combat with the lightsaber to have it sputter and short out. It remains inoperable until it is repaired through an Average ([DI][DI]) Mechanics check .
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>-2</CostTriDes>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERLRNEXP</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Learning Experience</Name>
<Description>
(Failed Check)The crafter learns valuable techniques in the attempt; that PC gains [BO] on the next attempt made to craft a hilt and does not need to purchase new materials.
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>1</CostTriDes>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERHRBACC</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Horrible Accident</Name>
<Description>
(Failed Check)Not only has the crafter failed to fashion a working hilt, but the hilt mechanism has exploded. The crafter suffers a Critical Injury with a +20 to the roll (see page 225 of the Force and Destiny Core Rulebook), and all of the materials are destroyed.
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>2</CostTriDes>
</CraftImprovement>

CraftTemplates.xml

<!-- Lightsaber Weapons -->

<CraftTemplate>
<Key>STDLTSABER</Key>
<Name>Standard Lightsaber</Name>
<Description>
[H3]Standard Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>6</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>2</Difficulty>
</CheckDifficulty>
<MaterialCost>100</MaterialCost>
<MaterialRarity>4</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>1</Encumbrance>
<HP>5</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
</Qualities>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>PRECLTSABER</Key>
<Name>Precision Lightsaber</Name>
<Description>
[H3]Precision Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>2</Difficulty>
</CheckDifficulty>
<MaterialCost>150</MaterialCost>
<MaterialRarity>5</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>1</Encumbrance>
<HP>3</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
<Quality>
<Key>ACCURATE</Key>
<Count>1</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<Key>DAMSUB</Key>
<Count>1</Count>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>CTDEFLTSABER</Key>
<Name>Defensive Lightsaber</Name>
<Description>
[H3]Defensive Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>3</Difficulty>
</CheckDifficulty>
<MaterialCost>300</MaterialCost>
<MaterialRarity>6</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>1</Encumbrance>
<HP>3</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
<Category>Lightsaber Hilt</Category>
</Categories>
<Qualities>
<Quality>
<Key>DEFENSIVE</Key>
<Count>1</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<Key>DAMSUB</Key>
<Count>1</Count>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>DBLLTSABER</Key>
<Name>Double-Bladed Lightsaber</Name>
<Description>
[H3]Double-Bladed Lightsaber[h3]
This is a lightsaber weapon template.

Attachments and crystals cost double.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>3</Difficulty>
</CheckDifficulty>
<MaterialCost>300</MaterialCost>
<MaterialRarity>5</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>2</Encumbrance>
<HP>4</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
<Quality>
<Key>LINKED</Key>
<Count>1</Count>
</Quality>
<Quality>
<Key>UNWIELDY</Key>
<Count>3</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<MiscDesc>Requires two hands to use.</MiscDesc>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>POLELTSABER</Key>
<Name>Pole Lightsaber</Name>
<Description>
[H3]Pole Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>3</Difficulty>
</CheckDifficulty>
<MaterialCost>150</MaterialCost>
<MaterialRarity>5</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>2</Encumbrance>
<HP>4</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
<Quality>
<Key>DEFENSIVE</Key>
<Count>1</Count>
</Quality>
<Quality>
<Key>CUMBERSOME</Key>
<Count>3</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<MiscDesc>Requires two hands to use.</MiscDesc>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>

Edited by FelixTG
Messed up tags
45 minutes ago, FelixTG said:

What would be the best way to add a new category for crafting to cover Lightsabers from Endless Vigil? I threw some templates under Brawl and Melee weapons, but filtering out the enhancements for lightweight etc I can't seem to get right. Swapped these back to ctMelee to get them to show up.

I'm also not seeing Droid or Droid Directive under the Item Types in the Craft Item form, but they do show up as a category in the Schematics section.

Here's changes I made to try getting it working, I know I don't have all of the improvements set up properly.

\Languages\Lang-en-US.xml

<Phrase Source="CraftTypeEnum" Name="ctLightsaber" Value="Lightsaber" />

CraftImprovements.xml

<!-- Lightsaber - Positive-->

<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERLIGHT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Lightweight</Name>
<Description>
Reduce encumbrance by 1.
</Description>
<CostAdvThr>1</CostAdvThr>
<CostTriDes>1</CostTriDes>
<EncumbranceChange>-1</EncumbranceChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABER2H</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Two-Handed</Name>
<Description>
The lightsaber becomes two-handed, increasing damage and encumbrance by 2.
</Description>
<CostAdvThr>1</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<TwoHands>true</TwoHands>
<EncumbranceChange>2</EncumbranceChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERDISG</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Disguised</Name>
<Description>
Add [SE] to other characters' checks to identify the lightsaber hilt as such while it is not ignited.
</Description>
<CostAdvThr>2</CostAdvThr>
<CostTriDes>1</CostTriDes>
<Abilities>
<Ability>
<Name>Disguised</Name>
<Description>Add [SE] to other characters' checks to identify the lightsaber hilt as such while it is not ignited.</Description>
</Ability>
</Abilities>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERCNTRWGHT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Counterweight</Name>
<Description>
Increase the lightsaber's encumberance by 2; it loses the Unwieldy(AG) quality and gains the Cumbersome(BR) quality with the same value.

TODO: Fix this replacement
</Description>
<CostAdvThr>2</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<Mod>
<MiscDesc>Switch from using Agility to check against Unwieldy to Brawn to check against Cumbersome.</MiscDesc>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERCRSSGRD</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Crossguard</Name>
<Description>
The lightsaber hilt gains a crossguard, as described on page 42 (Endless Vigil). It gains the Defense 1 quality (or increase the value of its Defensive quality by 1). and the user can spend [AD][AD] or [TR] to hook his opponent's blade and disarm his foe.
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<Mod>
<Key>DEFENSIVE</Key>
<Count>1</Count>
<Index>3</Index>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERCUSTOM</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Customizable</Name>
<Description>
Increase the lightsaber's Hard Points by 1. (This can only be selected once)
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
<HPChange>1</HPChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERDELBAL</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Delicate Balance</Name>
<Description>
The lightsaber loses the Cumbersome quality and gains the Unwieldy quality with the same value (this can only be selected once).

TODO: Fix this customization
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERPERSDES</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Personalized Design</Name>
<Description>
When the crafter makes a successful Lightsaber check with this weapon, add automatic [SU] to the results. Add automatic [TH] to the Lightsaber checks other characters make with this lightsaber (This can only be selected once).
</Description>
<CostAdvThr>3</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERINBUILT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Inbuilt</Name>
<Description>
The hilt is constructed as part of another item, such as a tool or weapon. Choose an appropriate item of encumbrance 1 or higher that the character possesses and increase its encumbrance by that of the lightsaber hit, the hilt is part of that item. While the lightsaber is ignited, the wielder cannot use the original item for its intended purpose and must spend a maneuver to switch between functions. (This can only be selected once)
</Description>
<CostAdvThr>4</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFNEMIT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Fine-Tuned Emitter</Name>
<Description>
Add automatic [AD] to combat checks made with this lightsaber (this can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERPERINLAY</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Personalized Inlay</Name>
<Description>
Reduce the difficulty of checks to modify any lightsaber crystal installed in this weapon by 1 (this can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERENGBLD</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Energy Bleed</Name>
<Description>
The lightsaber gains the Stun 2 quality (or increase the value of Stun quality by 2).
</Description>
<CostAdvThr>4</CostAdvThr>
<CostTriDes>1</CostTriDes>
<Mods>
<Mod>
<Key>STUN</Key>
<Count>2</Count>
</Mod>
</Mods>
</CraftImprovement>

<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFNEMIT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Integral Attachment</Name>
<Description>
Add +1 Hard Point to the weapon, then install one applicable weapon attachment that requires 1 or fewer hard points and is not a lightsaber crystal. No check is required to obtain this attachment, and it costs 0 credits.
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>2</CostTriDes>
<IntegralAttachment>true</IntegralAttachment>
</CraftImprovement>

<!-- Lightsaber - Negative-->

<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABEREXHEFF</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Exhausting Effort</Name>
<Description>
Suffer 3 strain when finished with construction.
</Description>
<CostAdvThr>-1</CostAdvThr>
<CostTriDes>-1</CostTriDes>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERHVY</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Heavy</Name>
<Description>
Increase encumbrance by 1.
</Description>
<CostAdvThr>-1</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<EncumbranceChange>1</EncumbranceChange>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERODDWGHT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Oddly Weighted</Name>
<Description>
The lightsaber gains the Cumbersome 2 quality (or increase the value of its Cumbersome quality by 1)
</Description>
<CostAdvThr>-2</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<Key>CUMBERSOME</Key>
<Count>2</Count>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFRGCAS</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Fragile Casing</Name>
<Description>
Increase the difficulty of checks to repair this lightsaber by 1
</Description>
<CostAdvThr>-2</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<MiscDesc> Difficult to Repair : Increase difficulty of checks to repair this weapon by {0}</MiscDesc>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERAWKGRP</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Awkward Grip</Name>
<Description>
The lightsaber gains the Unwieldy 2 quality (or increase the value of its Unwieldy quality by 1).
</Description>
<CostAdvThr>-3</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<Key>UNWIELDY</Key>
<Count>2</Count>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERMISEMT</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Misaligned Emitter</Name>
<Description>
The lightsaber requires a maneuver to ignite rather than an incidental, it can still be powered down as an incidental (this can only be selected once).
</Description>
<CostAdvThr>-3</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<MiscDesc> Misaligned Emitter: The lightsaber requires a maneuver to ignite rather than an incidental, it can still be powered down as an incidental.</MiscDesc>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERERRTIC</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Erratic</Name>
<Description>
Once per combat encounter, the GM may spend [DE] from any combat check with the lightsaber to have the energies within ripple out, damaging the hilt and shocking the wielder. The lightsaber becomes damaged one step (minor to moderate, moderate to major, etc.) and the wielder suffers 3 strain. (This can only be selected once).
</Description>
<CostAdvThr>-4</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<MiscDesc> Erratic: Once per combat encounter, the GM may spend [DE] from any combat check with the lightsaber to have the energies within ripple out, damaging the hilt and shocking the wielder. The lightsaber becomes damaged one step (minor to moderate, moderate to major, etc.) and the wielder suffers 3 strain.</MiscDesc>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERENDVIG</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Poor Focusing Lens</Name>
<Description>
The lightsaber gains the Inaccurate quality (or increase the value of its Inaccurate quality by 1). If it has the Accurate quality, reduce the value of that quality by 1 instead.
</Description>
<CostAdvThr>-4</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<Mods>
<Mod>
<Key>INACCURATE</Key>
<Count>1</Count>
</Mod>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERFLTINL</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Faulty Inlay</Name>
<Description>
Increase the difficulty of checks to modify any lightsaber crystal installed in this weapon by 1 (this can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
<Mods>
<MiscDesc>Increase the difficulty of checks to modify any lightsaber crystal installed in this weapon by 1</MiscDesc>
</Mods>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERTRGACC</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Tragic Accident</Name>
<Description>
During the process of crafting the hilt, the character's focus slips at a key moment, and the character suffers a major injury. Upon completing Step 3: Construction , the character suffers a Critical Injury (see page 223 of the Force and Destiny core rulebook. This can only be selected once).
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>-1</CostTriDes>
<SelectCount>1</SelectCount>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERUNSTBL</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Unstable</Name>
<Description>
The GM may spend [DE] from any combat with the lightsaber to have it sputter and short out. It remains inoperable until it is repaired through an Average ([DI][DI]) Mechanics check .
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>-2</CostTriDes>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERLRNEXP</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Learning Experience</Name>
<Description>
(Failed Check)The crafter learns valuable techniques in the attempt; that PC gains [BO] on the next attempt made to craft a hilt and does not need to purchase new materials.
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>1</CostTriDes>
</CraftImprovement>
<CraftImprovement>
<TempType>ctLightsaber</TempType>
<Key>IMPLTSABERHRBACC</Key>
<Source Page="87">Endless Vigil</Source>
<Name>Horrible Accident</Name>
<Description>
(Failed Check)Not only has the crafter failed to fashion a working hilt, but the hilt mechanism has exploded. The crafter suffers a Critical Injury with a +20 to the roll (see page 225 of the Force and Destiny Core Rulebook), and all of the materials are destroyed.
</Description>
<CostAdvThr>0</CostAdvThr>
<CostTriDes>2</CostTriDes>
</CraftImprovement>

CraftTemplates.xml

<!-- Lightsaber Weapons -->

<CraftTemplate>
<Key>STDLTSABER</Key>
<Name>Standard Lightsaber</Name>
<Description>
[H3]Standard Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>6</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>2</Difficulty>
</CheckDifficulty>
<MaterialCost>100</MaterialCost>
<MaterialRarity>4</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>1</Encumbrance>
<HP>5</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
</Qualities>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>PRECLTSABER</Key>
<Name>Precision Lightsaber</Name>
<Description>
[H3]Precision Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>2</Difficulty>
</CheckDifficulty>
<MaterialCost>150</MaterialCost>
<MaterialRarity>5</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>1</Encumbrance>
<HP>3</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
<Quality>
<Key>ACCURATE</Key>
<Count>1</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<Key>DAMSUB</Key>
<Count>1</Count>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>CTDEFLTSABER</Key>
<Name>Defensive Lightsaber</Name>
<Description>
[H3]Defensive Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>3</Difficulty>
</CheckDifficulty>
<MaterialCost>300</MaterialCost>
<MaterialRarity>6</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>1</Encumbrance>
<HP>3</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
<Category>Lightsaber Hilt</Category>
</Categories>
<Qualities>
<Quality>
<Key>DEFENSIVE</Key>
<Count>1</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<Key>DAMSUB</Key>
<Count>1</Count>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>DBLLTSABER</Key>
<Name>Double-Bladed Lightsaber</Name>
<Description>
[H3]Double-Bladed Lightsaber[h3]
This is a lightsaber weapon template.

Attachments and crystals cost double.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>3</Difficulty>
</CheckDifficulty>
<MaterialCost>300</MaterialCost>
<MaterialRarity>5</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>2</Encumbrance>
<HP>4</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
<Quality>
<Key>LINKED</Key>
<Count>1</Count>
</Quality>
<Quality>
<Key>UNWIELDY</Key>
<Count>3</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<MiscDesc>Requires two hands to use.</MiscDesc>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>
<CraftTemplate>
<Key>POLELTSABER</Key>
<Name>Pole Lightsaber</Name>
<Description>
[H3]Pole Lightsaber[h3]
This is a lightsaber weapon template.
</Description>
<Source Page="85">Endless Vigil</Source>
<TempType>ctLightsaber</TempType>
<TimeHours>12</TimeHours>
<CheckSkills>
<Key>MECH</Key>
</CheckSkills>
<CheckDifficulty>
<Difficulty>3</Difficulty>
</CheckDifficulty>
<MaterialCost>150</MaterialCost>
<MaterialRarity>5</MaterialRarity>
<MaterialRestricted>false</MaterialRestricted>
<WeaponProfile>
<SkillKey>LTSABER</SkillKey>
<DamageAdd>0</DamageAdd>
<Crit>0</Crit>
<RangeValue>wrEngaged</RangeValue>
<Encumbrance>2</Encumbrance>
<HP>4</HP>
<Rarity>-1</Rarity>
<Type>Lightsaber</Type>
<Categories>
<Category>Lightsaber</Category>
</Categories>
<Qualities>
<Quality>
<Key>DEFENSIVE</Key>
<Count>1</Count>
</Quality>
<Quality>
<Key>CUMBERSOME</Key>
<Count>3</Count>
</Quality>
</Qualities>
<BaseMods>
<Mod>
<MiscDesc>Requires two hands to use.</MiscDesc>
</Mod>
</BaseMods>
</WeaponProfile>
</CraftTemplate>

It'll be easier just to wait until I put them in :) You can't add something to the CraftTypeEnum since I have to actually add it to the enum in code. Plus, what you're doing is just adding a friendly translated name to the enum value which, as I just mentioned, doesn't exist yet.