Another Character Generator

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

Success. Tried to transfer a blaster rifle to my ship and boom

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.


************** Exception Text **************
System.InvalidOperationException: Selected property cannot be altered before this object is added to a DataGridView control.
   at System.Windows.Forms.DataGridViewBand.set_Selected(Boolean value)
   at System.Windows.Forms.DataGridViewRow.set_Selected(Boolean value)
   at SWCharGen.Form1.CreateCharacterPanel(CharacterDisplay selChar)
   at SWCharGen.Form1.btnSave_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Can't replicate this one. I created a character, gave him a ship and some weapons, then did a transfer to and from the ship. Worked fine. Can you tell me the steps you used to cause this?

Seems to be working now after it crashed that time and had to be restarted.

What do people think about more stuff in the GM tools?

I for one use this for a lot of encounter planning, however I manage two groups with it, both different power levels.

I'd like to see something similar to this: The adversaries area is used for stock/template adversaries to be drawn from. When I place them in an encounter, it would be nice if I could edit just that instance of the adversaries so I could up the wound thresholds, swap out the weapons and such without overriding the stock/template adversary.

You could also preload them in that encounter with appropriate loot.

Awesome as always! Thanks a million!

Any thoughts on the random loot generator feature request on pg 84?

One additional minor feature request:

In the description pane of the character generator, there's a new button called "Award". You can use this to bring up a dialog that allows you to enter the XP and credits awarded to the character. These values are then added to the actual XP and Credits for the character. In other words, you can just enter the amount to add instead of having to do the math.

Could we have another button called History? When you click it, it would display an editable log of the timestamp an award was given and how many credits/xp were awarded. You would also likely have to make the Award function add the data to the History log. If you make it a simple editable text field then the Gm can edit it if he makes mistakes or needs to add/remove things.

This way a character or Gm could click the button and see how much they have earned and when. We do a lot of our post-game bookkeeping via email and it would save me tons of time to have the info right there on the characters, rather than digging through old emails. It would also solve a lot of headaches where two people's bookkeeping display different results.

It might look something like this:

04/08/2014 15:16 20XP 500cr

04/10/2014 17:20 10XP 1450cr

04/11/2014 13:36 30XP 550cr

04/14/2014 04:59 10XP 1000cr

Still contemplating this one :) I like the idea of a journal, I just need to think of the best way of implementing it. What other events would you like triggering a journal entry? Gaining/losing obligation and duty? Having a manual entry? Anything else?

What you spent xp on and when.

Duty and obligation changes.

Credit changes

Selling of gear at what percentage

buying of gear

acquiring gear.

That could create a big journal :) I'll probably need to have an option to turn auto-journal on and off. What about upping a skill, or taking a talent, or force power, or whatever? Basically, making any change?

Yes, pretty much any change. Doing it as just a txt file would work fine for me since I would only be using it to check if something did or did not happen.

Added a speeder bike. The screamer
added the 2 JoY mods
Removed the speeder bike
Crash with the error

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 SWCharGen.DescriptionProcessing.GetVehicleWeapon(CharVehicleWeapon cvw)
   at SWCharGen.DescriptionProcessing.GetVehicleSummary(CharVehicle cv, Boolean noDetails)
   at SWCharGen.EditVehicle.UpdateVehSummPanel()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.btnVehRemove_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Have not Tested on the update yet.

Added a speeder bike. The screamer

added the 2 JoY mods

Removed the speeder bike

Crash with the error

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 SWCharGen.DescriptionProcessing.GetVehicleWeapon(CharVehicleWeapon cvw)
   at SWCharGen.DescriptionProcessing.GetVehicleSummary(CharVehicle cv, Boolean noDetails)
   at SWCharGen.EditVehicle.UpdateVehSummPanel()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.btnVehRemove_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Have not Tested on the update yet.

Confirmed still happens in update.

Go to vehicle section

Click new

select Screamer speeder bike

Add manuevering thrusters attachment

Add repulsor upgrade

Remove vehicle.

Crash.

Added a speeder bike. The screamer

added the 2 JoY mods

Removed the speeder bike

Crash with the error

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 SWCharGen.DescriptionProcessing.GetVehicleWeapon(CharVehicleWeapon cvw)
   at SWCharGen.DescriptionProcessing.GetVehicleSummary(CharVehicle cv, Boolean noDetails)
   at SWCharGen.EditVehicle.UpdateVehSummPanel()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.btnVehRemove_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Have not Tested on the update yet.

I added the screamer, gave it the repulsorlift and firepower attachments. It complained about firepower, since it doesn't have any weapons. I then removed the speeder and it worked. I did this both in the character generator and in stock vehicles. Did you do something else to cause this?

I agree, I love the idea of being able to assign loot to an adversary instance in encounters.

Furthermore, LOVE the new initiative table.

Added a speeder bike. The screamer

added the 2 JoY mods

Removed the speeder bike

Crash with the error

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 SWCharGen.DescriptionProcessing.GetVehicleWeapon(CharVehicleWeapon cvw)
   at SWCharGen.DescriptionProcessing.GetVehicleSummary(CharVehicle cv, Boolean noDetails)
   at SWCharGen.EditVehicle.UpdateVehSummPanel()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.btnVehRemove_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Have not Tested on the update yet.

Confirmed still happens in update.

Go to vehicle section

Click new

select Screamer speeder bike

Add manuevering thrusters attachment

Add repulsor upgrade

Remove vehicle.

Crash.

I ran the chargen. Went to vehicle pane on new user. Added a screamer. Added the maneuvering thrusters attachment. Added the repulsorlift attachment. Clicked "Finished". Then I clicked "Remove" with the screamer selected. Worked fine.

Are you sure you didn't add a weapon to it or something? The error looks like it's expecting a weapon. Does your screamer have a weapon?

I agree, I love the idea of being able to assign loot to an adversary instance in encounters.

Furthermore, LOVE the new initiative table.

Cool :) After using the encounter sheets, and after listening to how others deal with initiative, I figured that this will be more useful. Plus, you can customize how many slots are available (predetermined by the number of adversary groups, plus the number configured in the print dialog).

Just tested making an R series droid and the Arc Welder doesn't appear anywhere on its character sheet.

Added a speeder bike. The screamer

added the 2 JoY mods

Removed the speeder bike

Crash with the error

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 SWCharGen.DescriptionProcessing.GetVehicleWeapon(CharVehicleWeapon cvw)
   at SWCharGen.DescriptionProcessing.GetVehicleSummary(CharVehicle cv, Boolean noDetails)
   at SWCharGen.EditVehicle.UpdateVehSummPanel()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.btnVehRemove_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Have not Tested on the update yet.

I added the screamer, gave it the repulsorlift and firepower attachments. It complained about firepower, since it doesn't have any weapons. I then removed the speeder and it worked. I did this both in the character generator and in stock vehicles. Did you do something else to cause this?

not firepower. manuevering Thrusters. and repulsor lift enhancement

Edited by Daeglan

go into gm tools.
click adversaries
click encounters
click group
click stock vehicles
Crash

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at SWCharGen.EditVehicle.SetVehicleGrid()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.Initialize(CharData data, List`1 vehList)
   at SWCharGen.Form1.CreateVehicles()
   at SWCharGen.Form1.MainButtonClick(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

I got that crash with Stock vehicles, not sure which one it was, but I had to delete all my stock vehicles and reimport the stock ones. However I think it was because of the new way data sets are managed for the ship in the Age of Rebellion beta. Follow the readme in that import area and you may be golden. As a last resort, reimport all the stock vehicles.

Added a speeder bike. The screamer

added the 2 JoY mods

Removed the speeder bike

Crash with the error

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 SWCharGen.DescriptionProcessing.GetVehicleWeapon(CharVehicleWeapon cvw)
   at SWCharGen.DescriptionProcessing.GetVehicleSummary(CharVehicle cv, Boolean noDetails)
   at SWCharGen.EditVehicle.UpdateVehSummPanel()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.btnVehRemove_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

Have not Tested on the update yet.

Confirmed still happens in update.

Go to vehicle section

Click new

select Screamer speeder bike

Add manuevering thrusters attachment

Add repulsor upgrade

Remove vehicle.

Crash.

I ran the chargen. Went to vehicle pane on new user. Added a screamer. Added the maneuvering thrusters attachment. Added the repulsorlift attachment. Clicked "Finished". Then I clicked "Remove" with the screamer selected. Worked fine.

Are you sure you didn't add a weapon to it or something? The error looks like it's expecting a weapon. Does your screamer have a weapon?

Did not add a weapon. I listed all the steps i did. New vehicle. Add screamer, Add manuever thrusters. Add enhanced repulsors, clicked finish. Click remove. Get crash. do have a x-wing on the character as well. Maybe it has to do with having 2 vehicles.

Just tested making an R series droid and the Arc Welder doesn't appear anywhere on its character sheet.

You'll see it on the equipment pane as a weapon. If you want it to show up on your character sheet, check the "Shown" box.

go into gm tools.

click adversaries

click encounters

click group

click stock vehicles

Crash

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at SWCharGen.EditVehicle.SetVehicleGrid()
   at SWCharGen.EditVehicle.CreateVehiclePane(Boolean skipGrid)
   at SWCharGen.EditVehicle.Initialize(CharData data, List`1 vehList)
   at SWCharGen.Form1.CreateVehicles()
   at SWCharGen.Form1.MainButtonClick(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at SWCharGen.ImageButton.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.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)

I clicked them in order and randomly about 20 times and I can't get anything to happen.

Out of curiosity, what kind of computer are you running this on? What processor, speed, memory, etc?

Alien ware 8 gigs ram. Not at computer to tell you speed. But it is a quad core

Our group is getting so much mileage out of this tool, Thanks OggDude!

I found one issue in regards to the Boost Die/Setback Die mechanics on my machine.

On a character who has Sleight of Mind, the affected skill (Stealth) doesn't get Boost Dice added to its listing.

I tried adding on other Talents that add boost to specific skills like Uncanny Senses but that doesn't add them either.

After that I added a new tree to test the setback dice and none of the talents are affecting skill readouts for me.

I'm in the fresh new release and it's properly adding Force Dice to affected skills from Force Powers so that's working for me.

I tried making a new test character - a Mechanic - and gave him two ranks of Gearhead, but the setback dice removal icon doesn't appear in the listing of his Mechanic skill either.

I checked the Sleight of Mind talent in the Data Editor just to be sure and it does say it should be adding a Boost Die to the skill.

I'm using the web install and everything else including all my hand-entered data and attachments are working well. :)

tested on mine and uncanny sense does add the boost to mine. And uncanny reactions does add to mine. But Sleight of mind does not work on mine.

It was only working with ranked talents. I fixed it to work with unranked talents as well.

Edit: All the other ones you mention work for me (the ranked talents). I just made a Mechanic as well, selected Gearhead, and Mechanics got the remove setback icon as it should. Did you not overwrite the Data directory when you installed? Remember that the Data directory that comes with the install has nothing to do with YOUR data, and should ALWAYS replace data from a previous install. In fact, if you're copying a new install over an old install, always delete the Data directory before copying.

Found the issue - I had an extra backup of my Data and Custom Data folders where I used to have the tools installed, I deleted the out of date Data folder and things are now working as you intended.

(**** me and my obsessive need for triple redundant backups - I should really put them elsewhere)

Thanks, OggDude!

I would still like a planet section added to the GM tools. So we could add planet detail that was in the same style from the books and be able to print it to.

Did not add a weapon. I listed all the steps i did. New vehicle. Add screamer, Add manuever thrusters. Add enhanced repulsors, clicked finish. Click remove. Get crash. do have a x-wing on the character as well. Maybe it has to do with having 2 vehicles.

OK, figured it out. First off, all the attachment stuff was a red herring, as was the speeder. The only reason you got the error was because you had the X-Wing, and the X-Wing had a weapon (proton torpedo) with a quality override (limited ammo 6 instead of 3). When you have a quality override, it first takes all the quality descriptors from the base weapon, then overrides the counts for the vehicle weapon. The problem was that it took the actual quality descriptors for the main data weapon entry, instead of just copies, which changed the default count on the weapon. So, base data was being modified, which should never happen.

The combine routine should have been cloning the quality descriptor from the main data, not using the actual descriptors. When I made that change, it all worked fine. The thing is, this has been an issue right along, since that code goes back to me first adding vehicle support. You just now found it :)

I wouldn't be surprised if that wasn't the cause of the other issue too, as the error indicates that it came from the vehicle pane.

Edited by OggDude

A number of people are requesting a loot generator. I think I need this to be 'splained to me, Lucy :) Wouldn't "loot" be whatever equipment they have on them? And that's already part of the generator. I mean, it's not like you kill a gundark and out plops 1,000 credits, a +1 heavy blaster rifle, and a Staff of the Jedi :)

Of course, there's an excellent chance I'm just missing something obvious here...

The way I play loot is my players roll perception, and depending on how they roll I give them what's listed on the adversary sheet. But, a lot of people like random loot for some reason.

Tried the Arc welder again, it's nowhere to be found in the weapons panel:

https://www.dropbox.com/s/seqb6h020myuuye/Screenshot%202014-04-12%2014.50.26.png

Everything checks out on my end, so either you didn't remove and replace your "Data" directory with the new install, or you have a custom droid species file. Make sure you have the latest Data directory from the latest install, or go to the Data Editor, select Species, then see if "Droid" has a custom flag on it (like CustomItem). If it does, then remove it or convert it to a DescOnly item.

Found the problem. I had previously made a custom droid subspecies, HK Series Assassin Droid, and for some reason that was stopping the new version of the droid data updating to include an Arc Welder for the R series.

Is there anything anyone of us can do to prevent this in the future?