Author Topic: pyCharGen, a RMU character generator  (Read 14270 times)

0 Members and 1 Guest are viewing this topic.

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
pyCharGen, a RMU character generator
« on: April 13, 2013, 10:37:06 AM »
pyCharGen is a character generator designed for the RMU beta.  Starting from scratch, pyCharGen can create a new character, load a profession, select starting and potential stats, level up, and calculate all bonuses to stats/skills/resistances.  Items can be added to give additional bonuses to a stat, skill, or resistance.







I was initially developing this for my own use and that of my group, but since I didn't find any other RMU character generators on the forums, I wanted to share it with the wider community.  My primary goal in developing this is ease of use, and so any suggestions for improvement would also be greatly appreciated.

Download: https://sourceforge.net/projects/pychargen/files/
Download Source: https://github.com/EldritchCheese/pyCharGen

Offline vroomfogle

  • RMU Dev Team
  • ****
  • Posts: 3,670
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #1 on: April 13, 2013, 02:12:10 PM »
This looks great, glad to see a python based generator - and on github!   

Offline markc

  • Elder Loremaster
  • ****
  • Posts: 10,697
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #2 on: April 13, 2013, 10:36:53 PM »
I will take a look at it and I can already see a couple of things from the screen grabs.


1) Provide a Space for items that give a bonus to Stats (even if there are no items like this in the core game)
2) Provide a space for item bonus to skills
3) Often I use an other bonus section for stats and skills for keeping official GM sheets that are different from the sheets I hand out to players. This may or may not be of interest to anyone else.


MDC
Bacon Law: A book so good all PC's need to be recreated.
Rule #0: A GM has the right to change any rule in a book to fit their game.
Role Play not Roll Play.
Use a System to tell the story do not let the system play you.

Offline VladD

  • RMU Dev Team
  • ****
  • Posts: 1,468
  • OIC Points +10/-10
Re: pyCharGen, a RMU character generator
« Reply #3 on: April 14, 2013, 03:38:35 AM »
Also might provide an adrenal defense checkbox on the weapon skills; so it can calculate the DB bonus correctly. Also might provide a spell casting section (such as the official excel sheet has). Spells should be developed as skills, but might get their separate tab to display.

How easy could this program be converted to an app? I feel more people need some way of carrying and modifying their character using their phone or tablet. If it is easy, then please do an iOS and Android version ;)
Game On!

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #4 on: April 14, 2013, 08:59:20 AM »
This looks great, glad to see a python based generator - and on github!   

Thank you.  I wanted to make something cross-platform, since my group always ended up passing around the 1-2  laptops with both Windows and Microsoft Office installed to level everybody up, then transferring the spreadsheets to be viewed in openoffice.

I will take a look at it and I can already see a couple of things from the screen grabs.


1) Provide a Space for items that give a bonus to Stats (even if there are no items like this in the core game)
2) Provide a space for item bonus to skills
3) Often I use an other bonus section for stats and skills for keeping official GM sheets that are different from the sheets I hand out to players. This may or may not be of interest to anyone else.


MDC

For 1 and 2, I think I have those covered.  In the current version, an item can give a bonus to any number of stats or skills, without making a distinction between them.  For example, entering "Swimming+5" in the Bonuses area of an item would give a bonus to the Swimming skill, entering "Constitution+1" would give a bonus to the Constitution stat, and entering "Constitution+1, Swimming+5" would give a bonus to both.

For 3, I'll have to give thought as to having GM sheets that differ from player sheets.  The player sheets would need to be able to be modified, and then recombined with the extra GM-pieces.  Perhaps allowing for a character sheet to be loaded incrementally.  The players would load their single .txt file.  The GM would load the player file, then another file containing information not for players.  I could probably implement that as loading additional items in the inventory that the GM sees, which can then give bonuses to various areas.

Also might provide an adrenal defense checkbox on the weapon skills; so it can calculate the DB bonus correctly. Also might provide a spell casting section (such as the official excel sheet has). Spells should be developed as skills, but might get their separate tab to display.

How easy could this program be converted to an app? I feel more people need some way of carrying and modifying their character using their phone or tablet. If it is easy, then please do an iOS and Android version ;)

Quite true, I still need to add features related to both combat and spellcasting, including Talents such as Adrenal Defence.  Right now, I have been focused on character creation, since that is necessary to future features, but I am planning on working on other areas as well.

Unfortunately, I don't have any experience with phone/tablet apps and it would require duplication of nearly the entirety of the project in multiple languages, and so I will not be making mobile versions.  However, I am currently working on an "Export to PDF" feature, which would allow for viewing of the character sheet from a phone/tablet/dead tree.  Furthermore, the save files that I make are plain text, and so if somebody else wanted to make programs for other platforms, the possibility exists for the programs to both read the same character sheet.

Offline VladD

  • RMU Dev Team
  • ****
  • Posts: 1,468
  • OIC Points +10/-10
Re: pyCharGen, a RMU character generator
« Reply #5 on: April 15, 2013, 04:41:56 AM »
Ow well; pdf's are fine as well for tab and phone viewing.
Game On!

Offline Keen_Man

  • Neophyte
  • *
  • Posts: 92
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #6 on: April 22, 2013, 09:58:12 AM »
Cool start I like what I see so far.

Did you ever play with the old roll master RCMS? that character generator was a compiled front end for access and it was amazing

The original website and email addresses are all dead so dont know how to contact the creator but I have always kept a copy around.

I have uploaded it here and when its approved I will link to it

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #7 on: April 23, 2013, 09:44:10 PM »
Did you ever play with the old roll master RCMS? that character generator was a compiled front end for access and it was amazing

The original website and email addresses are all dead so dont know how to contact the creator but I have always kept a copy around.

I have uploaded it here and when its approved I will link to it

Alas, I have not.  I've used the RMFRP spreadsheet quite a bit, and (ever so lightly) dabbled with RMOffice.  I would quite like to see it when you are able to share it, as I quite enjoy looking for new things to add.

Offline Thom @ ICE

  • Aurigas Staff
  • ******
  • Posts: 3,810
  • OIC Points +0/-0
  • Thom@ironcrown.com
Re: pyCharGen, a RMU character generator
« Reply #8 on: April 23, 2013, 10:04:40 PM »
I have uploaded it here and when its approved I will link to it

File is now available.
http://www.ironcrown.com/ICEforums/index.php?action=tpmod;dl=item844
Email -    Thom@ironcrown.com

Offline DavidKlecker

  • Senior Adept
  • **
  • Posts: 699
  • OIC Points +0/-0
  • Everything is coming up Milhouse!
Re: pyCharGen, a RMU character generator
« Reply #9 on: May 10, 2013, 08:53:30 AM »
Nice work. Unfortunately there is quite a few things that are not working for me. I cannot create a race or culture but it look unimplemented anyways. I cannot add ranks. I hit the buttons, but get no results. Add child skill doesn't work, or produces results not expected. When leveling up I finally get the results from applying ranks. Also, no information for items to really test it.

Also here are a few nitpicks

1) If it's possible it would be nice to not drag the whole white text box with the weapon, just the text. That way I can see where my mouse is pointing to and I get a more accurate result when I move.
2) If I can enter my temporary value in the grid, it would be nice to change the potential value in the grid as well.
3) It would be nice to have a "Done" button. It's not evident to finish a character by selecting the level up option on the menu.
4) When selecting a new character it would be better to default to the 2nd tab where the character creation actually starts.
5) I think it would be better to actually rearrange the combat attacks in the skills to match the order selected in the character creation mode.

That's all for now. Again... nice start.  8)

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #10 on: June 20, 2013, 10:46:59 PM »
I do apologize for the time without reply.  Non-rolemaster things were pressing me for time, leaving little on the side for hobbies.

Nice work. Unfortunately there is quite a few things that are not working for me. I cannot create a race or culture but it look unimplemented anyways.
That is true.  So far, races and cultures have not been implemented yet.  I put the menus there, but disabled, as a reminder to myself to add it later.

I cannot add ranks. I hit the buttons, but get no results. ... When leveling up I finally get the results from applying ranks.
At the moment, this is by design.  Underneath the "Buy ranks" buttons are indicators to tell what the bonus will be after levelling up.  I think that I should add another column in the table to say this as well.  Perhaps have a "Start Levelling" button, and a "Apply Level-up" button.  The first shows everything related to levelling up, and the second adds the new ranks in while incrementing the level.

Also, no information for items to really test it.
Very true, the item page is too blank at the moment.  There is some grayed-out text in the "Name" and "Bonus" column, saying to right-click to add a new item, but I don't think it is intuitive enough.  Perhaps adding a "New Item" button in addition.

Add child skill doesn't work, or produces results not expected.
Could you elaborate on this point?  Right now, I cannot reproduce this error.  Right-clicking and clicking "Add Child Skill" does add a skill for me, as a child of the clicked skill.  Granted, the drop-down box is not opened by default, which is rather silly, and I should change that.  Perhaps also have it select the name box so that it is obvious that the name can now be edited.

Also here are a few nitpicks

1) If it's possible it would be nice to not drag the whole white text box with the weapon, just the text. That way I can see where my mouse is pointing to and I get a more accurate result when I move.
Unfortunately, this is something that is set by the GUI package that I am using, and so it would be rather difficult to do so.  It does, however, show a gray line where the dragged skill will be placed.

2) If I can enter my temporary value in the grid, it would be nice to change the potential value in the grid as well.
Huh.  How silly of me not to have done that from the start.  The next release will have that fixed.

3) It would be nice to have a "Done" button. It's not evident to finish a character by selecting the level up option on the menu.
I agree.  I really need to work on the flow of how users use the program as they go through.  I think that I want to make some sort of color-coding for making a character.  Green meaning that the field has been filled.  Yellow meaning that the field should now be filled.  Red meaning that other fields should be filled first.  Not bright garish tones, but softer tones.  Also, having help messages pop up (and be easily disabled, of course), to guide players through the creation of a character.

4) When selecting a new character it would be better to default to the 2nd tab where the character creation actually starts.
Agreed.  Done.

5) I think it would be better to actually rearrange the combat attacks in the skills to match the order selected in the character creation mode.
I agree.  I have a bit of messy code that is handling the storing of skills, which I am currently in the process of cleaning up, and so that will come alone with the new implementation.  Thank you for the suggestion on it.

That's all for now. Again... nice start.  8)
Thank you for all the feedback.  It is quite encouraging, and let's me know where I should be focusing next.

Right now, I almost have the pdf output finished.  It works quite nicely on my machine, but I still need to package it up in a way that can be used on other machines as well.

Offline DavidKlecker

  • Senior Adept
  • **
  • Posts: 699
  • OIC Points +0/-0
  • Everything is coming up Milhouse!
Re: pyCharGen, a RMU character generator
« Reply #11 on: June 21, 2013, 10:27:35 AM »
I think the issue was that for skills that were duplicated such as Region, the child skill went into the last skill not the skill I had highlighted. i was expecting the highlighted skill to get the child skill.

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #12 on: June 21, 2013, 12:17:42 PM »
I think the issue was that for skills that were duplicated such as Region, the child skill went into the last skill not the skill I had highlighted. i was expecting the highlighted skill to get the child skill.
Ooh, ah, I see.  Thank you.  That is indeed a problem.  Well, a two-fold problem.  The first is that it should be "Region, Own" and "Region, Other".  I have now fixed that in the file used to generate the character, along with similar errors such as "Instrument, specify" being listed only as "Instrument".

The other problem is that I currently pass around the names of the skills as strings, and play rather fast and loose with them.  This is useful in the configuration file, since then I can specify by name which skill is to be the parent skill.  This also makes a problem wherever skills are named identically.  Looking into it, it appears to also affect skills such as "Riding/Horse" and "Animal Handling/Horse".  Adding a child skill to either will add it to "Animal Handling/Horse".  And it would seem that changing the name of a skill before adding a child skill makes the child skill not be added at all.

At the moment, I am working on making this area of the code be cleaner and run faster, and so this is a good time for me to fix bugs in this area as well.

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #13 on: November 13, 2013, 10:32:31 PM »
So, just to state it, I have not been hit by a bus, and I am still working on pyCharGen, just at a bit of a slower pace than I had been.

pyCharGen now can output character sheets to pdf.  In addition, races and cultures are implemented according to the RMU rules.  My next goal will be spellcasting helpers.

Download: https://github.com/EldritchCheese/pyCharGen/releases/tag/v1.1

(On a sidenote, is there a way to edit my original post so that the download link points to the latest version?)

Offline Ynglaur

  • Senior Adept
  • **
  • Posts: 532
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #14 on: November 15, 2013, 01:22:12 AM »
Will there be a way for users to edit the underlying data themselves?

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #15 on: November 15, 2013, 05:34:31 PM »
Will there be a way for users to edit the underlying data themselves?

Quite certainly, yes.  One of my goals in development has been to have everything about the system be configurable by the user.

  • BaseChar.txt, which is loaded whenever a new character is made.  This defines the different stats, the resistances and the skills.  This sets up the skill categories, defines which skills are specializations of other, and which skills depend on which stats.  All of these can be edited by the user, and will be reflected in the GUI.
  • Professions.txt, where all the different professions are defined, with the different costs for developing each skill.
  • Races.txt, where each different race is defined.  Want more or fewer races for your setting?  Edit this file.
  • Cultures.txt, where each different culture is defined.  Just as with the race files, easy to edit.
  • SkillBonus.txt, where the conversion from number of ranks to bonus is held.  If you don't like the decreasing returns on ranks bought, or if you want to change the penalty for having 0 ranks in a skill.
  • StatBonus.txt, where the conversion from stat value to stat bonus is held.  If you prefer the way stats bonuses are calculated in RMFRP, editing this file will convert to it.

I have tried to make the various tables be human-readable and human-writable, as can be seen in the links above.

Offline arakish

  • Navigator
  • ***
  • Posts: 1,579
  • OIC Points +5/-5
  • A joy of mine
Re: pyCharGen, a RMU character generator
« Reply #16 on: December 03, 2013, 09:34:34 AM »
Don't ask why because even I don't know.  Finally decided to give this a looksee.

(On a sidenote, is there a way to edit my original post so that the download link points to the latest version?)

Nope.  Not after a small window has passed.  Something of a legal thing...

Will there be a way for users to edit the underlying data themselves?

Quite certainly, yes.  One of my goals in development has been to have everything about the system be configurable by the user.

Wonderful.  I will definitely give this aspect a scrutinizing looksee.

Thanks for your valuable time and effort in creating this.

rmfr
"Beware those who would deny you access to information, for they already dream themselves your master."
— RMF Runyan in Sci-Fi RPG session (GM); quoted from the PC game SMAC.

Offline paravia

  • Apprentice
  • *
  • Posts: 1
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #17 on: December 19, 2013, 09:25:13 PM »
I'm not sure the best location for this, but since it was mentioned in this particular conversation most recently I will add:

The RCMS version that has been uploaded is NOT the most recent.  There were 2 updates that were released after the v2.1.7 version.  With the patches applied the newest version is actually v2.2.2

If you want me to provide the patches, just respond to this forum and I'll have email notification let me know.

Offline Turbs

  • Seeker of Wisdom
  • **
  • Posts: 221
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #18 on: February 18, 2014, 03:17:30 PM »
Hi!
just tried out your generator and I like what I see.

some feedback;

  • add a version number to your "Help->About" option

  • The hardest thing for me to get my head around, (that has also been mentioned above) is working the correct method of spending Development points when buying skills. Preferably the easiest way (from a user viewpoint) would be a buy rank button the you hit each time you want a rank, this would automatically change the cost listed on the button after you spent your first rank and track your DP cost (as it does already) and updating the number of ranks in your skills column at the same time

  • add talents/flaws section (even if it is just a textbox with a checkbox option that deducts/returns DP's when you 'check' it

hope this helps.
The universe is hostile. So impersonal. Devour to survive; So it is; So it's always been.  ~Tool; Vicarious~

Offline Eldritch Cheese

  • Neophyte
  • *
  • Posts: 13
  • OIC Points +0/-0
Re: pyCharGen, a RMU character generator
« Reply #19 on: February 27, 2014, 10:34:55 PM »
Hi!
just tried out your generator and I like what I see.

some feedback;

  • add a version number to your "Help->About" option

  • The hardest thing for me to get my head around, (that has also been mentioned above) is working the correct method of spending Development points when buying skills. Preferably the easiest way (from a user viewpoint) would be a buy rank button the you hit each time you want a rank, this would automatically change the cost listed on the button after you spent your first rank and track your DP cost (as it does already) and updating the number of ranks in your skills column at the same time

  • add talents/flaws section (even if it is just a textbox with a checkbox option that deducts/returns DP's when you 'check' it

hope this helps.

It helps quite a bit, thank you.  I've been working on the program, and so it is rather difficult for me to realize when something is not obvious.

I have now added in the first and third comments that you made.  Thank you for pointing out the missing version number, as I had completely forgotten that that would be a reasonable thing to have in an "About" window.  Talents and Flaws are now handled in the same tab as Items, and the tab has been renamed from "Inventory" to "Bonuses".  The DP cost of each talent is added to the DP used on skills.  The Talents are defined in "tables/Talents.txt".  I only have a few in there at the moment, since I haven't worked up the energy to go through and type them all in.

I have a preliminary version with these changes applied at https://github.com/EldritchCheese/pyCharGen/releases

You are completely right that the skill leveling is confusing, and I think that you have given me the solution to it.  I had been thinking of it as being similar to the RMFRP spreadsheet, in which one selects the skills to be levelled, and then applies the level-up.  That is, one first selects the skills to increase when levelling from 0 -> 1, then applies the level up.  Instead, it would be simpler to do it the other way around.  First, you level up to level 1, then you select which skills to increase.  These skill increases are applied immediately.  Upon the next level up, your DP allowance is given again, allowing you to increase the skills again.  I'm going to play around with that, and see how it feels.