Re: Add language to 3.5

Steven High

Criticism is not disrespectful. Dissent is not disloyalty.

That the **present** source files for the core java engine are protected while being edited for release---Andrew Maitland's "git"---does **not** alter the fact that there is and was very poor control of the data sets which are essential to the **useful** functioning of the program. There are whole swaths of file data that are duplicated, or rendered null, or in conflict with one another, &c, but all of which comprise a continuing source of error and confusion. That is poor version control.

Pointing that out may not make you happy, but it does not make the criticism invalid.

For the record, the "homebrew" folder gets written over, too. It is no different than any other folder (nee directory) in the distribution.


Have you told the OP what happens to the other languages in their selected datasets? Or how to make "Read Lips" show up as a selectable Bonus language? Or how the languages subsystem works?


The fact is that using PCGen for more than vanilla character generation is non-trivial, except in the most trivial of circumstances. But the overwhelming usage of the program is ordinary character generation and maintenance, with GM Monster generation next. So vanilla is exactly where the emphasis **should** be.

The fact that PCGen does it's core job very well does not mitigate the difficulty in using it in ways it asserts it is just as useful for: one of the reasons the data sets are a hot mess, and the loader and output interfaces have so many issues, is that flexibility comes at a cost, and requires much more stringent **version control** in the strictest sense; I use sccs when making my edits to the splat.lst files, but that does not protect me from unseen and undiscovered errors buried in other splat2.lst files that have been overlooked for uncounted years. I have to build those matrices by hand, through trial and error.


Andrew Maitland noted, as I did, that the homebrew folder get overwritten---which is clearly stated inside the folder and in the textual help files.


On Thu, 14 Nov 2019 at 02:16, Andrew Maitland via Groups.Io <> wrote:


About to go to bed but let me address a few things:

1) PCGen uses git for version control. I would know because I've been a part of the migration effort from the previous version control "SVN" to Git. Also, we have two primary branches - Master which houses all the latest features (6.09.x) and then the production branch named for the production version (6.08).

2) Homebrew support is readily available. First I created a skeleton set for customization, next I pushed the code team to support an additional data folder preference location (Previous to this, you had data and vendordata), today you also have homebrewdata.

3) Most of our volunteers will tell folks to move homebrew content to an alternative location to avoid being overwritten. Unless you're creating new game systems or customizing your own character sheet exports, this feature is quite sufficient. However, symlinks is a great mechanism to allow for expansion for additional content requirements such as the aforementioned folders.

4) PCGen is a 20 year old open source project that has been altered over thousands of man hours, by hundreds of volunteers with various levels of experience and knowledge. If you don't like something, want something fixed, or want to make a change, then join the team and enact it. That's how most of us joined up. We wanted to see a change and made it happen. This is truly a community project.

Now, to the answer of documentation and support - F1 opens the program documentation. There is a List Tag index that explains all the lst and pcc file tags, there is an Outputsheet tag index in case you want to branch out into creating some character sheets. I also created several youtube videos to explain basics of pcgen, how to code things up, and made some examples.

My availability is limited, but I have a group of lurking volunteers over on discord that answer questions in real time (Might be delayed a few hours, cause time zones) but for the most part we average a 5-15 minutes turn around time during the Main North American time zones. (2am to 5am we don't have many up and about.)

For the Language add, you open the LANGUAGE file. Though why would "read lips" be a language you learn? Someone speaking another language would make that difficult. I recall a 3rd edition skill called read lips, and there is a reference to skills. However, at the end of the day, you do whatever you want. Want it as another language, then add it to the language file, want it as a skill, then add it as a skill, want it as a class feature, then make it a class feature. Adding a skill or language is a 5 minute task.


Read Lips <tab> TYPE:Observation


Read Lips <tab> TYPE:Language.NormalSkill


Read Lips <tab> TYPE:SpecialQuality <tab> CATEGORY:Special Ability <tab> DESC:You can read the lips and decipher most of a conversation you can observe.

Help us to help you. Tell us what the end state/goal is, and we can help you get there. (Within reason).

Hope that covered the questions that I saw posted.



PCGen Board of Directors - Content Silverback

On 11/13/2019 8:02 PM, robert@... wrote:
> This is why the homebrew  system exists to allow users to modify the core rules in order to meet their requirements.
Could someone point to the documentation of the homebrew system and syntext for the my_homebrew.pcg file?

Join to automatically receive all group messages.