PDA

View Full Version : Tenians Language Chat Extension for select FG 3.0 rulesets



Trenloe
January 24th, 2014, 11:18
FG v3.1.3 has most of the functionality of this extension built in. However, you can continue to use this extension if you wish.

For the base FG language functionality to use the same languages/fonts this extension uses download and enable this extension: https://www.fantasygrounds.com/forums/showthread.php?26775-Expanded-Fantasy-Language-Fonts-(FG-v3-1-3-)

I've modified Tenian's language extension to work with the 3.5E and PFRPG rulesets. Note: The languages in this extension are fairly generic 3.5e/PF languages, but also include most of the Pathfinder Inner Sea Human languages as well.

v3.4 is FG 3.1.2 Compatible

Update - V3.4. 8th August 2015.

Feature update:

Added code for understanding all languages but can't speak them. Use a language name of "comprehend languages" or "understands all" on the character sheet. See below for how to use this.
Added code for speaking all languages. Use a language name of "tongues" or "speaks all" on the character sheet. See below for how to use this.
Added error handling for /setlanguage - needs two arguments to write to database. This avoids issues with blank entries.
/help slashhandler to return extension help.
Set default current language with /currentlanguage <language name>. See below for how to use this.


V3.3c: Updated to include 5E languages based off PHB language list page 123. e.g. Elvish (not elven), Dwarvish, etc.. Thanks to Griogre.

Now works with Fantasy Grounds V3.0 rulesets: 3.5E, 4E, 5E, PFRPG and Castles & Crusades.

V3.3: Fixed issue where players couldn't chat in custom language added via /setlanguage

v3.2: Added 3 new slashhandler commands to allow the GM to add custom font mappings /setlanguage, /removelanguage and /listlanguages (these can be shortened unless there is a conflict with another extension/ruleset). "Custom Languages" can be exported to a module through the use module export window. Details on how to use this new functionality is available in post #23: https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=167105&viewfull=1#post167105

v3.1: Added - random character scrambling to avoid copy/paste "cheat". Random scrambling is seeded from each word and the language name so each word should be represented the same each time it is used for a specific language - but it is still gibberish.

Then enable the "Fantasy Language Chat" extension before you load your campaign.

To Use:

/lang {abyssal|aquan|auran|celestial|draconic|druidic|dw arven|dwarvish|elven|elvish|giant|gnome|gnomish|go blin|gnoll|halfling|igna n|infernal|orc|sylvan|terran|undercommon|deepspeec h|aklo|necril|orvian|primordial|common|hallit|keli sh|osiriani|polyglot|s hadowtongue|shoanti|skald|tien|varisian|vudrani} {text}

See post #3 below for a screenshot of the fonts used.

Players can only speak in languages listed on their sheet. It will provide translations as needed.

The Host can speak in any language. They can also use a second command to speak in any font, even those not associated with languages (emotefont for example)

/fc {internal font name} {text}

Set current/default language

In v3.4 the user can now set the current language using /currentlanguage <language name> After this is set there is no need to use the language name when using the /lang command. e.g. /lang Hello. To remove the current default use /currentlanguage without any arguments.

Understanding/speaking all languages

With spells it is possible for characters to understand and/or speak all languages. e.g tongues or comprehend languages spells. 4 new "languages" have been added that have special effects:

"comprehend languages" or "understands all" on the PC sheet means that they can understand all languages but can't speak all.
"speaks all" means that the PC can speak all languages but not understand them.
"tongues" means they can speak and understand all. This is the same as using "understands all" and "speaks all" for the PC languages.



Thanks so much to Callum for reviewing and modifying specific to the 3.5E and PF SRDs.

For other rulesets: As long as languages are stored in the same place in the DB for the character sheet translations should work OK. It looks in charsheet.id-000XX.languagelist, then the <name> tag of all of the children to determine if a character can speak a language. Translations will not currently work for rulesets with languages as skills, e.g. Rolemaster, Call of Cthulhu, BRP, etc.. The GM can still use the fontchat capability but no translation will occur.


The Extension. Save this file in your <FG App Data Folder>\extensions directory and enable the "Fantasy Language Chat" extension before you load your campaign.

(Previous version downloads 287)

Trenloe
January 24th, 2014, 11:18
Issue list:

"Unknown special message type received" and no language fonts on specific player. As per this post (https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=167366&viewfull=1#post167366). Status: waiting for feedback on "clear cache" fix.
Possible issue with /mood command and parentheses. As per this post (https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=167374&viewfull=1#post167374). Status: unable to recreate, need more info.


Recently fixed issues:

If /setlanguage is called without the correct 2 arguments it will add a blank/problem entry to the database which will result in future errors. Fix to come. Details here: https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=170402&viewfull=1#post170402 Code to stop this happening added in v3.4


Future development ideas:

Default font if language is not recognised - perhaps even a random font.
Graphical administration of custom language mappings (in addition to the current slashhandler commands).
Expand random word length code to present a mean length difference of 0 rather than add up to 6 characters to a word, which resulted in sentences being too long.
Documentation for the extension - showing the default fonts used and expanding on the use of the extension.
Look into the feasibility of using custom FG effects to reflect spells (tongues, comprehend languages, etc.) or the use of a translator to allow other players to "understand" or speak languages.
Slash command that doesn't scramble text - allows GM to use different fonts with the original words.
TAB auto completion of language names.
Feature request - add an option to use the old "X is speaking Y" chat window text - allowing everyone to know what language is being spoken, even if they don't understand it.
Feedback to GM which PCs "understood" the language.


Added in recent versions:

Chat window help for the 3 new language admin commands. Addedin v3.4
Language toggle - makes all chat entries in a specific language until the toggle is removed/changed. More than likely a slash handler, e.g. /currentlanguage Elven Addedin v3.4
Combine new code from Callum regarding spoken and understood languages, tongues and comprehend languages. Addedin v3.4
Chat window help (for /lang and /fc). Added to v3.1.
Perhaps a campaign specific override for certain language names - allowing a GM to code which font to use for which language on a campaign-by-campaign basis via chat window "slash" commands. Added to v3.2.
A module approach to languages - allowing activation of one Language module to control the languages and fonts used. Similar to the way the calendar functions now. This would allow the same extension to be used for a multitude of rulesets/settings and GMs to specify their own language/font relations.Added to v3.2.


These are example screenshots of the fonts used (more in the next post):

https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23621
https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23622

Trenloe
January 24th, 2014, 11:18
These are example screenshots of the fonts used.

https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23616
https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23617
https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23618
https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23619
https://www.fantasygrounds.com/forums/attachment.php?attachmentid=23620

Gwaihir Scout
January 24th, 2014, 14:18
Hah, I didn't know that Osiriani came out in hieroglyphics! Fantastic.

What would you need to add Thassilonian to this? I know where to get an image of every rune, but I don't know that anyone's made a font based off it yet.

Trenloe
January 24th, 2014, 14:41
What would you need to add Thassilonian to this? I know where to get an image of every rune, but I don't know that anyone's made a font based off it yet.
The main work would be making this into a Fantasy Grounds font file. There is an Font Generator available in the "utilities" section of the downloads page where you can convert True Type Fonts (TTF) to FG fonts: https://www.fantasygrounds.com/downloads/

Or, you can edit your own font using the font editor: https://googledrive.com/host/0B27SCDR38xFuNE96TGV4S1Jjdlk/fantasy-grounds-ii/fantasy-grounds-ii-font-editor.html

Then it is a case of putting the new font entry in the extension.xml file. e.g. if the new font is called thassilonian.fgf and you want the new language name to be thassilonian you'd add this entry:

<font name="thassilonian">
<fgffile name="fonts/thassilonian.fgf" />
<color value="#000000" />
</font>
Then using /lang thassilonian Hello! in chat will use the thassilonian.fgf font.

Nickademus
January 24th, 2014, 19:54
Hmmm. Did you do all those font examples in a single sitting in FG? I see a lot of duplicates between fonts. If the scrambler is based on the font and not the language, you may have someone that can speak Orc able to tell what Terran words are for example.

Trenloe
January 25th, 2014, 23:02
Some of the same fonts are used for different languages. In theory if the same words were used in languages that share the same font then a keen eyed Person with a great memory for fonts might be able to remember them - but it's a long shot. I may look into adding the language name to the random seed calculation.

Blackfoot
January 26th, 2014, 08:42
Some of the same fonts are used for different languages. In theory if the same words were used in languages that share the same font then a keen eyed Person with a great memory for fonts might be able to remember them - but it's a long shot. I may look into adding the language name to the random seed calculation.
Take a look at the Savage Worlds language thing.. it already does this somehow.

Trenloe
January 26th, 2014, 09:46
Take a look at the Savage Worlds language thing.. it already does this somehow.
That does a random scrambling with no specific random seed using the StringToGobldiegook code I created in a previous thread, so the same words are completely different every time. It was discussed in that thread that it would be more realistic if the scrambling returned the same result for each word. Which is what this release of the extension does - see the notes in the first post.

However, as mentioned by Nickademus above, it means that languages that share the same font will show the same word across the different languages. So, I think I'll add the language name to the random seed code so that a word in a specific language is always the same for that language only.

Nickademus
January 26th, 2014, 20:14
Thank you. An alternative would be to add additional fonts. Much more difficult by comparison.

Trenloe
January 26th, 2014, 21:30
Thank you. An alternative would be to add additional fonts. Much more difficult by comparison.
Using the same fonts for certain languages were based off 3.5e and Pathfinder documentation indicating that some languages share the same alphabet. As a result I think doing scrambling based off the language and the word is the best approach so that, for example, the Dwarven and Orcish written word for "fight" would be different for each language and would always be the same for the specific language.

dr_venture
January 27th, 2014, 04:17
Tren, am I correct that I can edit the "extension.xml" file to add new language/font combinations... especially if I'm just using the existing fonts?

Trenloe
January 27th, 2014, 04:30
Tren, am I correct that I can edit the "extension.xml" file to add new language/font combinations... especially if I'm just using the existing fonts?
Yep - info provided in post #5.

dr_venture
January 27th, 2014, 04:36
Yep - info provided in post #5.

*facepalm* Of course it is.

hangarflying
January 27th, 2014, 22:49
Rookie question: does every player need to have this extension installed?

Trenloe
January 27th, 2014, 22:54
Rookie question: does every player need to have this extension installed?
No, just the GM - the code from the extension will be downloaded by the players and put in the player campaign cache when they connect to the GM.

Trenloe
January 27th, 2014, 22:56
UPDATE: V3.1 released:


Randomseed for letter scrambling now includes the language name. This results in the same scrambled word being used each time with different words across languages that share the same alphabet/font.
Cleaned up chat slashhandler help.

Download available post #1.

hangarflying
January 27th, 2014, 23:08
UPDATE: V3.1 released:


Randomseed for letter scrambling now includes the language name. This results in the same scrambled word being used each time with different words across langauges that share the same alphabet/font.
Cleaned up chat slashhandler help.

Download available post #1.

Heh. I downloaded the extension literally 10 minutes before you made this update.

Nickademus
January 27th, 2014, 23:33
Thank you sir. Your tolerance of my OCD is admirable.

hangarflying
January 28th, 2014, 04:13
Any possibility of making this work with dialogue and assigned speakers so we can drag and drop the block text into the chat frame?

Trenloe
January 28th, 2014, 09:34
Any possibility of making this work with dialogue and assigned speakers so we can drag and drop the block text into the chat frame?
That would be a fairly significant change - particularly the interface in a story entry as that would need to be changed to allow entering of a language as well as a speaker. Story entries are stored in the Fantasy Grounds formattedtextcontrol control and there is very little that can be done programatically with information that is stored in that control. I can't think of a way to store language information in a story entry and make it available to the languages extension.

It has been mentioned in the past about having a way of setting the current language for all chat entries, so that everything that would be shown as a "chat" entry (in the speech bubble) would use the language font. I've added this to the future development ideas in post #2, don't don't expect anything soon...

Nickademus
January 28th, 2014, 14:11
I can't think of a way to store language information in a story entry and make it available to the languages extension.

It would be the same way as storing language information in the chat box. Start the story entry with "/lang abyssal So you've finally come. Now you will die."

The problem is not on the extension's side of things but rather in how a story entry is handled when dragged to the chat window. If it takes the raw text from the formattedtextcontrol and applies it to the chat log as if it were coming from the chat box, then this would work fine. I assume that FG instead applies the the raw text from the formattedtext control directly to the chat log with no apparent source.

In theory, swapping a function call to change the apparent source could make this work quite easily.

Trenloe
January 28th, 2014, 14:38
v3.2 released!


Added 3 new slashhandler commands to allow the GM to add custom font mappings /setlanguage, /removelanguage and /listlanguages (these can be shortened unless there is a conflict with another extension/ruleset).
"Custom Languages" added to a campaign using the slashhandler commands can be exported to a module through the use module export window. This allows custom language mapping to be stored as a module and re-used in other campaigns.


Custom Campaign language mapping
3 new slash handlers have been added to the extension:

1) /setlanguage (can usually be shortened to /setl )

/setlanguage takes 2 parameters, the first is the name of the custom language to be used campaign, the second is the font to use for this language. examples of the font name and the actual font can be found in post #3 of this thread: https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=166710&viewfull=1#post166710

Examples:

/setl egyptian osiriani

This will allow /lang egyptian <text> to be used in the chat window and will map the custom language "egyptian" to the "osiriani" font:

https://dl.dropboxusercontent.com/u/39085830/Screenshots/Fantasy%20Grounds/Language%20Ext%20Egyprian%20Example.JPG

The current language mappings in the extension are still available. If the GM wants to change the mapping for an existing language they can use this as normal - the order for mapping checks is: campaign language mapping -> module language mapping -> original extension language mapping, with the first match encountered being the mapping that is used.

2) /listlanguages (can usually be shortened to /listl )

/listlanguages returns all of the current custom language mappings in this campaign and any opened modules.

For example:

https://dl.dropboxusercontent.com/u/39085830/Screenshots/Fantasy%20Grounds/Language%20Ext%20List%20Languages%20Example.JPG

3) /removelanguage (can usually be shortened to /removel )

/removelanguage takes a single parameter of languagename and if this language exists within the campaign as a custom language it will be removed. Note: this only works for languages in the campaign, not in modules (which are read only).

Example:

/removel egyptian

This is shown in the following screenshot - first /listl was used to show that egyptian is a campaign language, then /removel egytian is executed to remove the language mapping for egyptian and finally /listl is called again to show that the language has been removed.

https://dl.dropboxusercontent.com/u/39085830/Screenshots/Fantasy%20Grounds/Language%20Ext%20Remove%20Lang%20Example.JPG


Language Modules

"Custom Languages" has been added as an option to the "Module Export" window. This allows custom language mappings to be stored in a module and re-used in other campaigns. You can see language mappings from open modules and the current campaign using the /listlanguages command.

Note:

Languages in a module are read only, they cannot be modified with the /removelanguage command.
Languages in a module are read after languages in a campaign - the campaign mappings will always be used first. The order is: campaign mapping -> module mapping -> original extension mapping, with the first match encountered being the mapping that is used.
Order of checking languages in multiple modules cannot be guaranteed. If you open multiple modules with custom language mappings be sure you have no duplicates as which one that will be used could be random.
Using the /listlanguages command will show language mappings from both the local campaign and any open modules.


https://dl.dropboxusercontent.com/u/39085830/Screenshots/Fantasy%20Grounds/Language%20Ext%20-%20Export.JPG

Nickademus
January 28th, 2014, 16:04
*tear*

I can finally speak Gobbledygook in a game.

Much obliged on all the work.

Blackfoot
January 28th, 2014, 16:30
This looks awesome. Did you manage to get the language mode feature to be included, where it functions like '/mood' ?

hangarflying
January 28th, 2014, 16:37
Any possibility of getting a list of the name of fonts used with the stock languages?

Trenloe
January 28th, 2014, 16:37
This looks awesome. Did you manage to get the language mode feature to be included, where it functions like '/mood' ?
Nope, that is still on the future development list in post #2.

I'm going to have to think about it as that will require changes to the base CoreRPG chat code. What has been great about this extensions so far is that it doesn't modify any CoreRPG files in any way - it is purely called from slashhandler commands. Adding in a language toggle would require changes to the base CoreRPG code (that's OK, extensions can handle that!), I need to investigate and think of a good way to do this with the minimum impact to CoreRPG code.

But, thanks BF for the reminder that /mood is essentially similar functionality - I'll look at how that works...

EDIT: Does /mood work for Chat text from a story entry? No, it doesn't... :(

Nickademus
January 28th, 2014, 17:12
Did you see my suggestion above?

Changing the functionality of the story entry drag-n-drop would allow the language command (and mood for that matter) to act normally. Would be beneficial even for people that don't use the languages.

(Oh and by the way, you can drag story entries to the chat box and hit enter to have them process this way already. If someone really wanted the /lang or /mood in a chunk of boxed text, they could drag to the chat box instead of the chat window.)

Trenloe
January 28th, 2014, 17:19
Did you see my suggestion above?
Yeah, this is all covered by the "Language toggle - makes all chat entries in a specific language until the toggle is removed/changed. More than likely a slash handler, e.g. /currentlanguage Elven" item in the future development list in post #2.

Nickademus
January 28th, 2014, 17:28
Hmm. Perhaps I'm not explaining well enough. I'm not talking about the language extension at all.

I'm saying, if you modified how the story entry text is handled when it is dragged onto the chat window, you could get it to register all slash commands as if the text were sent from the chat box.

Trenloe
January 28th, 2014, 17:35
That is what would be required to do the "Language toggle - makes all chat entries in a specific language until the toggle is removed/changed. More than likely a slash handler, e.g. /currentlanguage Elven" functionality. The toggle would set all future chat entries (until toggle changed or removed) to use the language specified in the toggle.

Coding would need to be done to allow for freeform chat entered and for text of type = chat being dragged to the chat window to be intercepted and processed by the language extension.

EDIT: I'm not looking to change any other base functionality of the CoreRPG ruleset, if making the change I discover that it will allow other process (like mood) to be acted on I'll look into it. But, not planning on any major updates for a while - I think I'll let this version run and see if there are any issues with it.

Blackfoot
January 28th, 2014, 18:31
Nope, that is still on the future development list in post #2.Well the changes thus far look really great, I'm looking forward to putting it into play.
Thanks!

Acroyear
January 28th, 2014, 18:52
Trenloe, awesome job!

Callum
January 29th, 2014, 20:35
v3.2 released!


Added 3 new slashhandler commands to allow the GM to add custom font mappings /setlanguage, /removelanguage and /listlanguages (these can be shortened unless there is a conflict with another extension/ruleset).
"Custom Languages" added to a campaign using the slashhandler commands can be exported to a module through the use module export window. This allows custom language mapping to be stored as a module and re-used in other campaigns.

This is great, Trenloe - thanks! I'd made various change to the font assignments for my own use, and this will make it much easier to adjust. I guess if I want to use different fonts to those provided, I'll have to add those in to the extension myself manually?

Actually, I've checked, and my old version (for FG2) of the extension seems to work fine. Did you have to make many changes to update it for FG3?

Trenloe
January 29th, 2014, 21:33
I guess if I want to use different fonts to those provided, I'll have to add those in to the extension myself manually?
Yep, details in post #5.


Actually, I've checked, and my old version (for FG2) of the extension seems to work fine. Did you have to make many changes to update it for FG3?
The main one was to add in the various different rulesets. If you're happy with your versions just use that. The version in this thread uses repeatable text scrambling, so if your players are away of the copy/paste cheat you may want to use it and make the custom assignments you want into a module for repeated use.

Myrddin
January 31st, 2014, 18:23
Thanks Trenloe. I am really happy with the repeatable text scrambling...keeps the translated languages internally consistent, but stops those pesky players and their copy/paste tricks! Great job.

Callum
February 1st, 2014, 21:04
I've now played around with version 3.2, and it's great! One thing I really like is that if you, as GM, mistype a language name the text still gets scrambled, thus making the error less costly.

I've made a few special modifications myself, which you might want to consider for your version, Trenloe:


Reduced the maximum random number of extra characters to 3, instead of 6 - the translated phrases were getting too long
Restricted the gibberish characters to only lower-case letters - many fonts don't have numbers or upper-case letters in their style

I've also added in my support for the tongues and comprehend languages spells - I can send you my script file if you're interested.

Trenloe
February 1st, 2014, 21:15
I can send you my script file if you're interested.
Yes please.

dr_venture
February 1st, 2014, 21:29
Running a C&C game last night - one of the players reported getting error messages after each language message he received. The other 3 players reported no problems. Here's what he was seeing in chat:

5999

It looks like for some reason his FG instance didn't get the language resourced downloaded properly... thus I assume this is a FG app bug of some kind. Still, I figured I should post about it.

Callum, those changes sound sensible... nice work! Tren, thanks for all the work on this and everything else. Sorry, but the forum won't let me add any more reputation :P

Callum
February 1st, 2014, 22:08
As I can't attach any files to PMs, and I can't attach lua files to here, I've attached my whole ext file. The main difference in the script is adding a new understandsLanguage function, and then calling that instead of speaksLanguage when looking to translate, and checking for "tongues" and "comprehend languages" among the list of languages at the appropriate places.

One thing I wondered was whether it would be possible for the /listlanguages command to also list the unmodified language-to-font assignments (or for another command to do so)?

Trenloe
February 1st, 2014, 22:08
Running a C&C game last night - one of the players reported getting error messages after each language message he received. The other 3 players reported no problems. Here's what he was seeing in chat:

It looks like for some reason his FG instance didn't get the language resourced downloaded properly...
I'd say get the player to "clear player data cache" (use the "nuclear" button in top right on the "Join Game" screen) as it looks like a portion of the extension hasn't loaded properly.

Trenloe
February 1st, 2014, 22:13
Thanks for the extension, I'll check the additions out...

One thing I wondered was whether it would be possible for the /listlanguage command to also list the unmodified language-to-font assignments (or for another command to do so)?
I had thought about this, but it would have to be hard coded, e.g. "dwarven = dwarven", as it is essentially a list of all of the fonts in the extension and I don't think there is a way of programatically finding a font name that is valid - especially one specific to an extension.

I'll look to add the default languages as hard coded to the /listlanguage command. This would then rely on anyone who added additional fonts to a custom extension to amend the hard coded list as necessary.

Callum
February 1st, 2014, 22:25
Ah, yes, I see. I'd been thinking there might be some way to do it programmatically, but if there isn't, it may not be worth adding a hard-coded list.

Nickademus
February 1st, 2014, 23:10
Running a C&C game last night - one of the players reported getting error messages after each language message he received. The other 3 players reported no problems. Here's what he was seeing in chat:

I had this happen to a fellow player in our Saturday game. We tracked it down to the use of a parenthesis in the text header to the left of the typed text. It would happen each time I used the /mood command.

The first time it affected one player but the next week it affected a different player and the first no longer had the issue. Clearing the cache didn't help since both players had to do so to fix other problems. We assumed it was the use of the 2.9.x language extension that was doing it and the GM turned it off. The game stopped before we could continue testing though.

Trenloe
February 2nd, 2014, 11:55
I had this happen to a fellow player in our Saturday game. We tracked it down to the use of a parenthesis in the text header to the left of the typed text. It would happen each time I used the /mood command.
Thanks for the pointer, I'm unable to recreate - could you provide some more info on this please? i.e. steps/mood commands used, etc..

Thanks.

Trenloe
February 2nd, 2014, 12:58
It looks like for some reason his FG instance didn't get the language resourced downloaded properly... thus I assume this is a FG app bug of some kind. Still, I figured I should post about it.
Reply #2:

I've looked into this more - and even if there was a problem with the "special message text" due to some other chat functionality this shouldn't stop the chat being displayed in the correct font, as this is not part of the special message handler - it is purely the GM side pushing chat in a specified font. Because the language font in the screenshot showing the issue is just the standard font - this is looking very much like this specific player's FG didn't download the extension correctly (as you supposed above), so it didn't have the available language fonts. If the player's console was open (type /console in the chat window) they would have seen a warning along the lines of "unable to load font elven".

dr_v - How have you configured the "elvish" and "orcish"fonts? The name for these fonts by default in the extension is "elven" and "orc", so I'm curious if you've used the new /setlanguage functionality or modified the extension directly?

If you used the /setlanguage functionality and if this issue occurs again please get the player to log out, clear their data cache and log back in and see if the same issue occurs, hopefully they will have downloaded the extension resources properly next time.

If you have modified the extension directly what changes have you made?

Trenloe
February 2nd, 2014, 15:39
As I can't attach any files to PMs, and I can't attach lua files to here, I've attached my whole ext file. The main difference in the script is adding a new understandsLanguage function, and then calling that instead of speaksLanguage when looking to translate, and checking for "tongues" and "comprehend languages" among the list of languages at the appropriate places.
Thanks for that - I like the differentiation between speaks and understands, and the addition of tongues and comprehend languages. :)

I like the 3 new fonts too!

I noticed, like you I guess, that some fonts didn't have changed numbers; I hadn't spotted the problem with capitals.

I've been thinking about the random character addition, perhaps over thinking? I think you're right that what I originally did made things longer than usual in my first attempt at the code. I may re-visit and add/subtract a few characters based on the length of the original word, so this could help to keep the length down on average. Perhaps something like words of 3 or less just have 0-2 characters added, words of 4-6 characters have between -2 and +2 characters, words over 6 have between -3 and +3 characters - this would result in the total sentence on statistical average being slightly longer (based off 3 character or less words being 1 character longer on average), but the longer words would have a statistical net length change of 0.

I don't think I'll do a new release until the issues dr_venture and Nickademus have mentioned are checked and have a fix (if a fix in the extension is the right place).

Thanks for the ideas and the code - I'll definitely combine these into the next release...

Blackfoot
February 2nd, 2014, 16:42
As I can't attach any files to PMs, and I can't attach lua files to here, I've attached my whole ext file. The main difference in the script is adding a new understandsLanguage function, and then calling that instead of speaksLanguage when looking to translate, and checking for "tongues" and "comprehend languages" among the list of languages at the appropriate places.

One thing I wondered was whether it would be possible for the /listlanguages command to also list the unmodified language-to-font assignments (or for another command to do so)?
Checking for 'Tongues' and 'Comprehend Languages'? Does this look for spell effects on the character? That seems like it would be cool.

Trenloe
February 2nd, 2014, 16:44
Checking for 'Tongues' and 'Comprehend Languages'? Does this look for spell effects on the character? That seems like it would be cool.
It checks languages of that name.

Only an hour ago I added "effects" to the development list in post #2, as I thought an effect with a duration would be good to cover spells etc..

dr_venture
February 2nd, 2014, 20:50
Reply #2:

dr_v - How have you configured the "elvish" and "orcish"fonts? The name for these fonts by default in the extension is "elven" and "orc", so I'm curious if you've used the new /setlanguage functionality or modified the extension directly?

I directly edited the extension.xml file to have all of the languages (and spellings) represented - the elvish and orcish entries are thus:


<font name="elvish">
<fgffile name="fonts/dnd4eelvish-regular-14.fgf" />
<color value="#000000" />
</font>
<font name="orcish">
<fgffile name="fonts/dnd4edwarvish-bold-14.fgf" />
<color value="#000000" />
</font>


I assume the entries are correct, as everything is just copied-pasted from other entries... or in the case of Elvish, I just changed that entry's spelling.

I haven't even looked at the /setlanguage command - which I will do now :)

Trenloe
February 2nd, 2014, 21:01
I directly edited the extension.xml file to have all of the languages (and spellings) represented - the elvish and orcish entries are thus:
When you modified the extension did you give it a different name in the extension.xml and the .ext filename?

If you didn't use different names, can you check with the player who was having the issues and see if they have the unmodified extension installed?

I think that if they had a copy of the unmodified extension that it may have been using that and elvish and orcish would not have matched with fonts in base extension.

Just as an FYI - If you modify an extension from the base release, it's best to give it a different name so that players will download your updated extension rather than using the original extension if the names are the same.

dr_venture
February 2nd, 2014, 21:14
Just as an FYI - If you modify an extension from the base release, it's best to give it a different name so that players will download your updated extension rather than using the original extension if the names are the same.

Good point! I didn't change the name - I'll do that now. FWIW, Andraax was in the game and he mentioned that he had it installed, too, but he was seeing the languages correctly. That said, name conflicts may cause weirdness to abound, so I'll change the name and see if it clears up. I'll also see if the player who's screenshot I shared had the extension installed.

Trenloe
February 2nd, 2014, 21:18
Good point! I didn't change the name - I'll do that now. FWIW, Andraax was in the game and he mentioned that he had it installed, too, but he was seeing the languages correctly. That said, name conflicts may cause weirdness to abound, so I'll change the name and see if it clears up. I'll also see if the player who's screenshot I shared had the extension installed.
I'm not 100% convinced that this would cause all of the issues seen (it doesn't explain the unknown special message error), but it is good practice to change the name.

I still think this could be related to the player not downloading the extension correctly - as this would explain the missing font and the special message error.

Nickademus
February 2nd, 2014, 22:43
Thanks for the pointer, I'm unable to recreate - could you provide some more info on this please? i.e. steps/mood commands used, etc..

Thanks.

I wish I could. I wasn't the GM and thus don't know the settings he was using, nor is the game going anymore so we can't continue to experiment. It had an element of randomness since it didn't always affect the same player. Though one thing I know is that it didn't stop any messages from coming through. It just provided an error in addition.

I think I remember one of the players saying that all languages were translating for him while this was occurring. That's all I've got.

Callum
February 3rd, 2014, 14:46
I've been thinking about the random character addition, perhaps over thinking? I think you're right that what I originally did made things longer than usual in my first attempt at the code. I may re-visit and add/subtract a few characters based on the length of the original word, so this could help to keep the length down on average. Perhaps something like words of 3 or less just have 0-2 characters added, words of 4-6 characters have between -2 and +2 characters, words over 6 have between -3 and +3 characters - this would result in the total sentence on statistical average being slightly longer (based off 3 character or less words being 1 character longer on average), but the longer words would have a statistical net length change of 0.
Well, I was thinking something similar! I decided to keep it simple at first, but I do think it would be good to also reduce some words in length. Your scheme sounds like a good one. I'd kind of like to do it in one operation, though - with a single random number being scaled by the original word length to add or subtract an appropriate number of characters (down to a minimum of 1). Perhaps that's me over-thinking it!

Callum
February 3rd, 2014, 14:55
Checking for 'Tongues' and 'Comprehend Languages'? Does this look for spell effects on the character? That seems like it would be cool.

I'm afraid not, Blackfoot - that's beyond my FG coding skills! As Trenloe said, it only looks in the list of languages on the Notes tab of the character sheet. I intended it mainly for characters who have permanent versions of these spells, but you could use it for impermanent ones, too, by adding the spell name to the languages list when it's cast. Just write yourself a note (in the spell effect on the Combat Tracker, perhaps) to remove it at the end of the duration!

Blackfoot
February 3rd, 2014, 15:49
This isn't as hard as you might think... lemme see if I can find the code... I was just working with it.

local aCLangSpell = EffectManager.getEffectsBonusByType(rTarget, "COMPREHEND LANGUAGES", false, {});
local aTongSpell = EffectManager.getEffectsBonusByType(rTarget, "TONGUES", false, {});
if #aCLangSpell > 0 then
end
if #aTongSpell > 0 then
end
Or something like that should do the job.

Nickademus
February 9th, 2014, 01:09
I have a humble request for the next release of this extension. Can you add a slash command called "/font <languageName> <text>" that will display the text in the language's font without the scrambling effect? This would be ideal for English-based languages that the player/GM wants to use a specific font when displaying. (Or just a player-side option to disable the scrambler.)

Trenloe
February 9th, 2014, 10:06
I have a humble request for the next release of this extension. Can you add a slash command called "/font <languageName> <text>" that will display the text in the language's font without the scrambling effect? This would be ideal for English-based languages that the player/GM wants to use a specific font when displaying. (Or just a player-side option to disable the scrambler.)
Unscambled slashandler added to the development list.

There is the /fc <font> <text> options available now (fc = fontchat) but it does use the scrambler - the only difference is that it doesn't check for languages and do translations. Your idea was probably what Tenian had in mind when he originally made the extension, but the scrambling code has since been added across the board. I think there is still a need for /fc to still be scrambled - in case the GM wanted to speak in a specific font without any of the players having a chance to know it - i.e. it isn't a language in the list, but you need to specify a language (font) to get the text to display.

You wouldn't want a player side option to disable the scrambler as that allows a player to stop scrambling and use the copy/paste "cheat" to find out what is being said in a language they don't understand. The "cheat" was the whole reason for language scrambling.

Nickademus
February 9th, 2014, 16:35
Thank you sir.


You wouldn't want a player side option to disable the scrambler as that allows a player to stop scrambling and use the copy/paste "cheat" to find out what is being said in a language they don't understand. The "cheat" was the whole reason for language scrambling.

While I could have been more clear on the player option, I meant that it would disable the scrambler on /font text, not /lang. This would allow the GM and players to use the /font for English-based fonts or the languages fonts and the GM to still use /lang with the guarantee of no cheating. Otherwise a player couldn't use a custom font unless the GM turned off the scrambler for all languages.


I think there is still a need for /fc to still be scrambled - in case the GM wanted to speak in a specific font without any of the players having a chance to know it - i.e. it isn't a language in the list, but you need to specify a language (font) to get the text to display.

Perhaps I'm just too tired to understand this, but I thought you already implemented the ability to add languages to the list. A GM with a desire for a special language would just add one with a name no one has. I'm not seeing the need for /fc to be scrambled.

Of course, none of that matters if you're adding a slashhandler that would let the players manually type in unscrambled text.

Trenloe
February 9th, 2014, 17:22
Perhaps I'm just too tired to understand this, but I thought you already implemented the ability to add languages to the list. A GM with a desire for a special language would just add one with a name no one has. I'm not seeing the need for /fc to be scrambled.
Then for every untranslated language a GM wants to use they would have to /setlanguage for each individual one before they use it - suddenly it is a 2 step process to get untranslated language fonts working. Then the GM probably has to use a custom language name that they are familiar with (so they can remember it for next time), and so there is always the outside chance of a player guessing and putting a bunch of languages in their list, or the GM not knowing the a player has "demon" listed as a language. I try to eliminate any such chances in my code wherever possible - even if they are incredibly remote. /fc being scrambled allows the GM to know that if they type "/fc abyssal Hello there!" there is no chance of translation and players can't use the cheat method to find out what is being said.


Of course, none of that matters if you're adding a slashhandler that would let the players manually type in unscrambled text.
There will be at some point. :)

Jwguy
March 10th, 2014, 05:01
The extension is very nice, and I'm happy to see something like this in the works. I have two things in note, however; One is a suggestion, the other is a bug that I continually experience.

One, in regards to the Language Toggle in development, would it be possible to make it so that certain players or characters speak in a specific language until un-toggled? I ask because it would be very useful in cases where certain characters can only speak some languages, which are removed from the norm (For example, our whole party can speak Common, and makes an effort to communicate with it. Our rogue, however, can only speak Undercommon and Sylvan, due to his race and intelligence bonus, and thus relies on two other characters to translate for him)

Two, I get a strange error whenever I try to use any of the slash-handlers for custom languages. I attempted to use both /listlanguages and /setlanguage, but whenever I try, I get either of the following:


Script Error: [string "scripts/fontchat.lua"]:76: attempt to concatenate a nil value

Script Error: [string "scripts/fontchat.lua"]:143: bad argument #1 to 'lower' (string expected, got nil)

Trenloe
March 10th, 2014, 05:09
Two, I get a strange error whenever I try to use any of the slash-handlers for custom languages. I attempted to use both /listlanguages and /setlanguage, but whenever I try, I get either of the following:
Could you try recreating the errors in a brand new campaign? If you get the errors, please give steps on how to recreate, including the exact commands you are typing into the chat window. Thanks.

Trenloe
March 10th, 2014, 18:09
Two, I get a strange error whenever I try to use any of the slash-handlers for custom languages. I attempted to use both /listlanguages and /setlanguage, but whenever I try, I get either of the following:

Script Error: [string "scripts/fontchat.lua"]:76: attempt to concatenate a nil value

Script Error: [string "scripts/fontchat.lua"]:143: bad argument #1 to 'lower' (string expected, got nil)
I've gone through the code and I can see where these 2 errors could occur - it is when the /setlanguage command is used without the correct format.

I will work on making the extension more robust around this code at some point soon.

The fix is to close Fantasy Grounds, edit the db.xml file in your campaign folder and delete any blank <id-XXXXX> entries from the <language_extension> section.

Make a copy of your campaign db.xml file before modifying it! (Just in case).

For example, the following has a problem <id-00002> entry:

<language_extension>
<id-00001>
<fontname type="string">osiriani</fontname>
<languagename type="string">egyptian</languagename>
</id-00001>
<id-00002>
</id-00002>
</language_extension>

Delete <id-00002> and the closing tag </id-00002> to give:

<language_extension>
<id-00001>
<fontname type="string">osiriani</fontname>
<languagename type="string">egyptian</languagename>
</id-00001>
</language_extension>
Save db.xml and load your campaign. You should be able to use /listlanguages and /setlanguage without errors now. But, make sure you use /setlanguage correctly (until I update the extension to stop this issue) otherwise this error may occur again.

Jwguy
March 10th, 2014, 21:44
I've gone through the code and I can see where these 2 errors could occur - it is when the /setlanguage command is used without the correct correct format.

I will work on making the extension more robust around this code at some point soon.

The fix is to close Fantasy Grounds, edit the db.xml file in your campaign folder and delete any blank <id-XXXXX> entries from the <language_extension> section.

Make a copy of your campaign db.xml file before modifying it! (Just in case).

For example, the following has a problem <id-00002> entry:

<language_extension>
<id-00001>
<fontname type="string">osiriani</fontname>
<languagename type="string">egyptian</languagename>
</id-00001>
<id-00002>
</id-00002>
</language_extension>

Delete <id-00002> and the closing tag </id-00002> to give:

<language_extension>
<id-00001>
<fontname type="string">osiriani</fontname>
<languagename type="string">egyptian</languagename>
</id-00001>
</language_extension>
Save db.xml and load your campaign. You should be able to use /listlanguages and /setlanguage without errors now. But, make sure you use /setlanguage correctly (until I update the extension to stop this issue) otherwise this error may occur again.

And here I was about to respond to the first one! You got it, exactly. It appears I must have botched the original entry, but after following your instructions, it works. Thank you, much!

Nickademus
March 17th, 2014, 02:39
This still work for 3.0.3?

Trenloe
March 17th, 2014, 03:18
This still work for 3.0.3?
Yep, it's all using slash handlers so no change to the ruleset code.

Are you having any issues?

Nickademus
March 17th, 2014, 05:00
No, I just naturally remove all extensions when a new update is put out until I hear they are compatible.

Jwguy
March 24th, 2014, 02:05
I kind of came across some issues with the plugin, lately.

It seems that if I set custom languages, they only seem to work for me, and players who attempt to use the languages just get a bunch of garbled words and numbers. For example, I have two custom languages in my campaign: Kerani, which uses the Druidic Font, and Solean, which uses the Osirian font. Both work when I use them, and players can see the font fine. But if the player uses them, there are no fonts, just a random collection of numbers and letters (eg m2m31ml2kmlebube1u2ej22).

Trenloe
March 24th, 2014, 03:46
I kind of came across some issues with the plugin, lately.

It seems that if I set custom languages, they only seem to work for me, and players who attempt to use the languages just get a bunch of garbled words and numbers. For example, I have two custom languages in my campaign: Kerani, which uses the Druidic Font, and Solean, which uses the Osirian font. Both work when I use them, and players can see the font fine. But if the player uses them, there are no fonts, just a random collection of numbers and letters (eg m2m31ml2kmlebube1u2ej22).
Found this issue. Fixed in v3.3 - download available in post #1. Please let me know how it goes.

Bidmaron
March 24th, 2014, 03:58
Edit: posted on the wrong thread.

Thanks, Trenloe for all the hard work on this extension.

ddavison
May 14th, 2014, 16:02
I featured this extension on the Fantasy Grounds YouTube Channel, G+, FB and the Steam Videos section. Very cool work.

Valarian
May 16th, 2014, 09:35
I'll have to look at including this type of thing when upgrading The One Ring ruleset. Be nice to see Khuzdul or Quenya characters appear for Dwarf and Elf characters.

Callum
May 16th, 2014, 14:09
I'll have to look at including this type of thing when upgrading The One Ring ruleset. Be nice to see Khuzdul or Quenya characters appear for Dwarf and Elf characters.

My version of the extension uses those. :)

Thanks for the shout-out, Doug!

VenomousFiligree
June 8th, 2014, 23:18
Forgive me for not reading the full thread, but is this available for 5E?

Trenloe
June 8th, 2014, 23:28
Forgive me for not reading the full thread, but is this available for 5E?
It wasn't, but it is now - download in the first post of this thread. :)

zapoqx
August 31st, 2014, 07:16
Hello,
So the DM was asking me today about something in specific. What he missed in the old language plugin was that you could see "A is speaking in X"" where A is a player and X is the name of the language. If you knew it, it showed the translation. If you didn't, it doesn't. It is like that now, but what he would like is at the very least, an option to possibly turn on as a GM so that it does so still in stead of just "A is speaking:"
Is there a setting we just haven't tried or is this something that can be implemented? I know that asking for it to just be the new default (which would be an old default technically) is probably asking much since everyone's preferences is different, so just wanted to see if there was at least an option to change it or perhaps implementing one.

Thanks!

Trenloe
August 31st, 2014, 07:25
I can't remember why, but there was a good reason for changing it.

The GM can still see what language is being spoken in the line beneath the language font, it will say "Translated Elven" for example.

EDIT: I looked back in an older thread and the reason the language name was removed from the first line was because everyone sees this, even if hey don't know the language. That is why the layout was changed so that only people who understand the language know what language it is for sure. Others may be able to guess what it is based on the font, but that is all.

zapoqx
September 1st, 2014, 06:08
Correct. That is what the GM and the group in general want. The GM kinda wants to go to an older version, but he disliked having to manually go in and make a new language set if it needed to be made, not to mention how finicky it was with the language name needing to be spelled I believe in all lower case (I believe capitalizing any single letter including the beginning, it bounced back with an error). I think it also partially has to do with some people remembering which symbol was what (example, Elven being more interesting to look at before vs current elven). Though, based on what its stated here, as long as they have the font, they can change it by finding the font they want to use and placing it into the folder, correct?

Trenloe
September 1st, 2014, 07:07
Correct. That is what the GM and the group in general want. The GM kinda wants to go to an older version, but he disliked having to manually go in and make a new language set if it needed to be made, not to mention how finicky it was with the language name needing to be spelled I believe in all lower case (I believe capitalizing any single letter including the beginning, it bounced back with an error). I think it also partially has to do with some people remembering which symbol was what (example, Elven being more interesting to look at before vs current elven). Though, based on what its stated here, as long as they have the font, they can change it by finding the font they want to use and placing it into the folder, correct?
Sorry, I'm confused what you're actually asking for now. :)

Post #3 of this thread shows you the list of all fonts available - and their names. You can use lower case or upper case or any combination of case - the extension specifically ignores case.

With the addition of the slash commands to allow campaign custom mapping of language name to font you can pretty much map any language name you want to the fonts included. More info here: https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=167105&viewfull=1#post167105

Back to your original request. I currently have no plans to add the old "X is speaking Y" as a campaign option in the immediate future. I take the Smiteworks opinion of trying to match 80-90% of the required functionality and not add too many additional entries to the campaign options menu. I've added it as a feature request in post #2, but make no promises if/when this will be made available.

zapoqx
September 2nd, 2014, 07:29
ah I'm sorry for not being clear :o
What I was referring to was since you can set languages, if it was possible to set a font for a language like I thought I read (or must have been dreaming), example: someelvishscript.ttf using /setlanguage elven someelvishscript
Or is it limited to JUST the ones in the extension.
As to the request, I highly appreciate it and thanks for the info in regards to what happened. I personally don't have much issue about it either way, but figure to chime in for the group in regards to it.

damned
September 2nd, 2014, 07:38
you can open up the extension and add your own fonts...
rename .mod to .zip and extract
use notepad++ to view/edit/tinker with files.
when you zip them back up again do not zip the parent folder - the files should be in the root of the zip
rename the zip to mod

make sure windows is not hiding the .mod/.zip extensions or you are likely to get confused....

Trenloe
September 2nd, 2014, 14:24
use notepad++ to view/edit/tinker with files.
Love it! :D

To expand on what damned is saying here: Fantasy Grounds needs a definition of a font within an XML file - this definition specifies the font file to use, what colour the text will be and the name FG will use to refer to that font.

You can "tinker" with the extension XML files - opening extension.xml you'll see that it is pretty much a list of FG font names and their corresponding file (in the extension). For example:

<font name="elven">
<fgffile name="fonts/dnd4eelvish-regular-14.fgf" />
<color value="#000000" />
</font>
Note that the font file is an FG font file - you can use the FG Font Generator tool available here (at the bottom of the page) to convert Truetype fonts into .FGF bitmap font files: https://www.fantasygrounds.com/wiki/index.php/Developer_Guides

FG now support Truetype fonts in certain controls - I'm not sure if they are fully supported in the chat window, I've done some basic tests and they appear to be but haven't done extensive tests for this extension. If you're trying a TrueType font you'll need to specify the size to use in the FG font defintion, I'd recommend using 14. Here's an example of one of the two TrueType fonts used in the CoreRGP ruleset, note the addition of the size parameter:

<font name="reference-h">
<ttf file="graphics/fonts/MarcellusSC-Regular.ttf" name="Marcellus SC" size="24" />
<color value="#660000" />
</font>

So, if you wanted to add your own fonts to this extension you would have to:

Add your supported font file to the extension.
Add a font definition to extension.xml that references this new font - use the name you want to use as the default language.
Package your extension back up and activate it for the campaign you want to use it in.

Note: The extension currently uses community commons fonts which can be legally distributed (see the sources.txt file in the extension). If you modify the fonts being used please do so only for your own use (your own private games), only distribute font files that you have permission to distribute.

damned
September 2nd, 2014, 14:26
Apologies - that was the first extension I ever made any successful modifications to...
I did only add extra languages and not change any fonts...

Thus - I could just "tinker" with it!

zapoqx
September 2nd, 2014, 15:50
Interesting. Thanks all!

Vogard7A
April 21st, 2015, 09:15
Has this been updated for 3.0.12 ? I just started my new campaign and was surprised to see that this extension isn't working anymore.

Thanks for the help, I really liked this extension.

Trenloe
April 21st, 2015, 13:20
Has this been updated for 3.0.12 ? I just started my new campaign and was surprised to see that this extension isn't working anymore.

Thanks for the help, I really liked this extension.
It shouldn't need updating. What isn't working? Do you get any error messages? What ruleset are you using?

damned
April 21st, 2015, 13:35
Has this been updated for 3.0.12 ? I just started my new campaign and was surprised to see that this extension isn't working anymore.

Thanks for the help, I really liked this extension.

I love seeing players/GMs come out into the open!
Welcome Vogard7A! Although you have been here for 2years already we have only just met :)

Vogard7A
April 21st, 2015, 19:09
It shouldn't need updating. What isn't working? Do you get any error messages? What ruleset are you using?

I'm using the 3.5 ruleset. No error messages, just /lang {language} {text} doesn't do anything, it just brings up the help command.

I have it saved in Fantasy Grounds/extensions I thought about saving it in Fantasy Grounds/campaigns/[My Campaign]/extensions but there's no extensions folder there by default. Do you think I should create a folder for that?


I love seeing players/GMs come out into the open!
Welcome Vogard7A! Although you have been here for 2years already we have only just met :)

Thanks, I'm mostly just a user, not active on the forums as you can tell, lol.

darrenan
April 21st, 2015, 20:28
When you start up the campaign, do you get a message in the chat window saying the extension is loaded?

Vogard7A
April 22nd, 2015, 02:44
I seem to have solved the problem, thanks for the help!

damned
April 22nd, 2015, 03:03
I'm using the 3.5 ruleset. No error messages, just /lang {language} {text} doesn't do anything, it just brings up the help command.

I have it saved in Fantasy Grounds/extensions I thought about saving it in Fantasy Grounds/campaigns/[My Campaign]/extensions but there's no extensions folder there by default. Do you think I should create a folder for that?



Thanks, I'm mostly just a user, not active on the forums as you can tell, lol.

If you are not the GM you cant load the extension - only the GM loads extensions.

msouthward
April 29th, 2015, 21:37
I picked up the extension for use in my 5e campaign but when i try to type in different languages the different fonts are not showing up, the words are just coming up as random letters and numbers. Is there a separate font file i need to find to add the different fonts to fantasy grounds or am i just missing something.

Michael

Edited : I take that back im just a very special person.. when i first attempted to speak elven i was typing out /lang elvish who goes there. But ive got it now. Very awsome extenion this is going to be fun when we play tommorow.

Trenloe
April 29th, 2015, 21:39
I picked up the extension for use in my 5e campaign but when i try to type in different languages the different fonts are not showing up, the words are just coming up as random letters and numbers. Is there a separate font file i need to find to add the different fonts to fantasy grounds or am i just missing something.
You don't need to load anything else. Please provide a screenshot showing this happening to help troubleshoot.

Blackfoot
April 29th, 2015, 21:39
The languages need to be ones that are known to the extension. There is a way to create a custom list, it is described in this thread.

Griogre
April 29th, 2015, 23:31
Trenloe, I did a 5E compatibility pass and updated this extension for use in my game. There are currently issues in that in 5E they changed the names of several languages, ie Dwarven is now Dwarvish; Elven is now Elvish; Gnome is now Gnomish and that is how the language is called when the race is dropped on the character sheet. Since this is a multi-ruleset package I just added the new language names and used the same fonts. I can send you the update if you want.

ianmward
April 30th, 2015, 00:11
Trenloe, I feel an update coming to this extension...
Star Wars Language Fonts (https://ganodi.tumblr.com/post/114724776474/lucif-hare-edit-this-post-has-been-getting)

Trenloe
April 30th, 2015, 01:06
Trenloe, I did a 5E compatibility pass and updated this extension for use in my game. There are currently issues in that in 5E they changed the names of several languages, ie Dwarven is now Dwarvish; Elven is now Elvish; Gnome is now Gnomish and that is how the language is called when the race is dropped on the character sheet. Since this is a multi-ruleset package I just added the new language names and used the same fonts. I can send you the update if you want.
I was just looking at the 5E languages in the PHB earlier today. If you could send me the update that would be great and I'll look to incorporate it into a general release. Thanks!

Trenloe
April 30th, 2015, 01:08
Trenloe, I feel an update coming to this extension...
Star Wars Language Fonts (https://ganodi.tumblr.com/post/114724776474/lucif-hare-edit-this-post-has-been-getting)
Thanks for the link.

Trenloe
April 30th, 2015, 05:03
Post #1 updated with version 3.3c which includes 5E languages from page 123 of the PHB. Thanks Griogre. I also added primordial and deepspeech (no space) and changed the common font to a Greek font (much better then the previous script, IMHO).

AstaSyneri
April 30th, 2015, 10:12
Trenloe, I feel an update coming to this extension...
Star Wars Language Fonts (https://ganodi.tumblr.com/post/114724776474/lucif-hare-edit-this-post-has-been-getting)

Oh yes, please! :D

That would be so great for my "campaign" starting next Tuesday :D :D :D.

Nickademus
June 2nd, 2015, 21:14
So this is listed as 3.0.11 compatible in the extension list, and 3.0.12 compatible in this thread. Any word on 3.1.0 compatibility?

Trenloe
June 2nd, 2015, 22:22
So this is listed as 3.0.11 compatible in the extension list, and 3.0.12 compatible in this thread. Any word on 3.1.0 compatibility?
It should be fine as it uses all it's own code without modifying any base ruleset scripts. Haven't tested it yet though... Let me know if there are any issues.

Dromonster
July 20th, 2015, 05:41
@Trenloe: I cant seem to use the slashhandler commands "/setlanguage, /removelanguage and /listlanguages" - each time I try I receive an error:

10581

I'm running FG through Steam, and the version is v.3.1.1 ULTIMATE.

Is this just a matter of version disparity?

Trenloe
July 20th, 2015, 15:38
@Trenloe: I cant seem to use the slashhandler commands "/setlanguage, /removelanguage and /listlanguages" - each time I try I receive an error:

10581
I think you're encountering this issue: https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=170402&viewfull=1#post170402

Trenloe
August 9th, 2015, 03:14
Update - V3.4. 8th August 2015.

Feature update:

Added code for understanding all languages but can't speak them. Use a language name of "comprehend languages" or "understands all" on the character sheet. See post #1 for how to use this.
Added code for speaking all languages. Use a language name of "tongues" or "speaks all" on the character sheet. See post #1 for how to use this.
Added error handling for /setlanguage - needs two arguments to write to database. This avoids issues with blank entries.
/help slashhandler to return extension help.
Set default current language with /currentlanguage <language name>. See post #1 for how to use this.


Loads of thanks to Callum for providing the tongues/comp languages code ages ago - I completely forgot about it and only just implemented it. Thanks Callum, sorry for letting it lapse so long...

Zacchaeus
August 14th, 2015, 12:08
This is fine stuff Trenloe; kudos on the updates and the time you put into this and your other extensions.

DaffyRoth
October 16th, 2015, 23:39
Hmm I have the latest download for this extenstion and running the 5e rule set. All I get are a random mix of numbers and letters. Any help would be greatly appreciated!!! Also running v 3.1.2.

Trenloe
October 17th, 2015, 00:43
Hmm I have the latest download for this extenstion and running the 5e rule set. All I get are a random mix of numbers and letters. Any help would be greatly appreciated!!! Also running v 3.1.2.
What is the exact language names you are using?

You need to use the specifically defined language names (see post #1 for the names to use) or define your own that map to the predefined ones. See here for more info: https://www.fantasygrounds.com/forums/showthread.php?20332-Tenians-Language-Chat-Extension-for-select-FG-3-0-rulesets&p=167105&viewfull=1#post167105

DaffyRoth
October 17th, 2015, 01:54
You know what, I am stupid. I was saying dwarven instead of dwarvish and elven instead of elvish. PROBLEM SOLVED!!!

kylania
October 19th, 2015, 01:22
FYI, a version of this will be built in with FG 3.1.3.

Trenloe
October 19th, 2015, 01:27
FYI, a version of this will be built in with FG 3.1.3.
Yep, sure will and it looks good.

However, there will still be a place for this extension for a number of reasons:

There are wider range of language/fonts available. Especially supporting Pathfinder Golarion languages.
Support for spells/abilities that allow understanding/speaking all languages.
Ability to custom map languages to specific fonts.
Ability to export custom mapping to a module.

I hope most of the above will be covered in future versions of the native language functionality.

The main advantage to the CoreRPG based language functionality is the drop down box at the chat window and the ability to add in languages through a graphical interface (although these custom languages don't use any fonts, just work scrambling).

Moon Wizard
October 20th, 2015, 00:12
1. The challenge I had with adding the ability to map languages to custom fonts is that there is no mechanism to "add" new fonts by the end user, and the name necessary to select a font is the actual font asset name defined by the ruleset or extension (which is not obvious to end users). Therefore, I was thinking this would be better managed by extensions that plug into the existing system with minimal coding. Also, it wasn't clear that all the fonts being used in the extension were free to use commercially, which led me to again push that to extensions.

2. If a character has one of the following entries in their language list, it is treated as special case:
* Speaks all
* Understands all
* Comprehend languages
* Polyglot
* Tongues

3. See 1) above.

4. I'm not sure what this means, but it probably would again fall to answer to 1) because of font licensing and font name management.

I'm open to something more advanced, but it might be worth building extension that just adds entries into GameSystem.languages in the onInit call (which I think is all that is needed to add new entries via extension, but I haven't tried yet).

Cheers,
JPG

GunnarGreybeard
October 20th, 2015, 19:34
I can't believe I overlooked this extension/feature all this time. I could really make good use of it especially with the ability to use the /setlanguage option to add custom languages. Time to add in all those Hârn languages. :bandit:

Trenloe
October 20th, 2015, 19:48
Time to add in all those Hârn languages. :bandit:
Awesome!

Trenloe
October 24th, 2015, 00:46
1. The challenge I had with adding the ability to map languages to custom fonts is that there is no mechanism to "add" new fonts by the end user, and the name necessary to select a font is the actual font asset name defined by the ruleset or extension (which is not obvious to end users). Therefore, I was thinking this would be better managed by extensions that plug into the existing system with minimal coding. Also, it wasn't clear that all the fonts being used in the extension were free to use commercially, which led me to again push that to extensions.

2. If a character has one of the following entries in their language list, it is treated as special case:
* Speaks all
* Understands all
* Comprehend languages
* Polyglot
* Tongues

3. See 1) above.

4. I'm not sure what this means, but it probably would again fall to answer to 1) because of font licensing and font name management.

I'm open to something more advanced, but it might be worth building extension that just adds entries into GameSystem.languages in the onInit call (which I think is all that is needed to add new entries via extension, but I haven't tried yet).
With the recent updates to 3.1.3 (https://www.fantasygrounds.com/forums/showthread.php?26330-Test-Release-v3-1-3&p=236015&viewfull=1#post236015) most of these are now covered.

1) Understand the need to only have verified fonts that could be use commercially.
2) That's great!
3) Looks like this is now covered.
4) It would be nice to have some way of exporting custom language mapping (now that campaign languages can be assigned alternative fonts). This will allow a module to be made of languages for a specific RPG and/or setting. No need to do the custom languages each time a new campaign is created.

Mixylplyx
October 28th, 2015, 04:19
I just came across this extension and love it! However, if this is going to be baked into a future version of FG, I hope it makes it easier to enter commands into the chat window. Basically, I need the ability to drag a language from a PC or NPC sheet to the chat window, and it automatically switch to that character and do the /lang <language> command, so all I need to do is type in the text. I hope this makes sense and it's in the new version.

damned
October 28th, 2015, 11:41
I just came across this extension and love it! However, if this is going to be baked into a future version of FG, I hope it makes it easier to enter commands into the chat window. Basically, I need the ability to drag a language from a PC or NPC sheet to the chat window, and it automatically switch to that character and do the /lang <language> command, so all I need to do is type in the text. I hope this makes sense and it's in the new version.

need is such a strong descriptor!

kuthulu
November 3rd, 2015, 22:58
(Oh and by the way, you can drag story entries to the chat box and hit enter to have them process this way already. If someone really wanted the /lang or /mood in a chunk of boxed text, they could drag to the chat box instead of the chat window.)

Wow, knowing this makes this extension so much better. I can setup all my story text ahead of time. This will be great! My players better learn Giant real quick. :D

Thanks!

Trenloe
November 3rd, 2015, 23:05
Wow, knowing this makes this extension so much better. I can setup all my story text ahead of time. This will be great! My players better learn Giant real quick. :D
v3.1.3 of FG will have most of the functionality of this extension built in - with a drop-down list of supported languages to select from. Therefore, the need for this extension will basically go away.

Smiteworks can't distribute all of the fonts used in this extension as part of their commercial offering, so I'll more than likely be doing an extension that covers the non-default fonts supplied with FG. This will help cover Pathfinder languages, etc..

kuthulu
November 3rd, 2015, 23:12
Sweet! Thx Trenloe.

GunnarGreybeard
November 5th, 2015, 03:51
Hmm . . with the update have we lost the ability to use /setlanguage - /setl in the 5e ruleset to add custom languages? Entering either of those with the previously working examples pulls up the /help window and /listlanguages is not working either?

ddavison
November 5th, 2015, 04:36
This is now a built-in feature, but it works a little bit differently. You can add your own custom languages now by opening your Preferences/Options and then clicking on the Languages button to open the Languages Window. To change the language spoken, select the dropdown in the chat window.

GunnarGreybeard
November 5th, 2015, 05:17
OMG! I must have had the Option window open about 5 times tonight and never saw that button. :( Thanks D!

Callum
November 7th, 2015, 10:12
I'll more than likely be doing an extension that covers the non-default fonts supplied with FG. This will help cover Pathfinder languages, etc..

Any joy wth this, Trenloe? Since my players use the functionality of this extension all the time, I'm reluctant to udate to v3.1.3 until I know it can replicate all of it...

Moon Wizard
November 7th, 2015, 16:29
The v3.1.3 implementation has all the same features (except using Windows and controls instead of chat entry commands), but it just doesn't include some of the custom fonts in the extension due to licensing restrictions.

Cheers,
JPG

Blackfoot
November 7th, 2015, 17:09
I'm thinking what we are going to need is an extension that brings in some extra fonts, seems like it shouldn't be too hard to do based on the way the code works.. also I noted that the Halfling language wasn't included in the standard list... a PF languages extension (for example) would be pretty simple to do.

Trenloe
November 7th, 2015, 18:37
The v3.1.3 implementation has all the same features ...
The only thing the v3.1.3 implementation is missing from the original extension (except the custom fonts that Smiteworks can't distribute, that I am working on putting in an extension) is the ability to export custom font mappings to a module for future use in another campaign. You'll need to do manual custom font mappings in each campaign.

Blackfoot
November 7th, 2015, 19:13
The other thing the 'new way' doesn't seem to do anymore is that it is a straight mapping of the characters to another font.. hence you can drag the text to 'cheat' the translation. The module actually was doing some tricky stuff to mask the text when not translated.

Moon Wizard
November 7th, 2015, 19:17
It actually scrambles the text unless it's understood. Check it out on the player side.

Regards,
JPG

Blackfoot
November 7th, 2015, 19:24
Well... there ya go. I was looking at it as the GM.. (obviously)

Trenloe
November 7th, 2015, 19:34
It actually scrambles the text unless it's understood. Check it out on the player side.
This is a nice addition as it allows players who own a PC who understand the text to copy/paste it into their notes and it come across as readable text. Nice one. :)

Trenloe
November 7th, 2015, 20:59
Any joy wth this, Trenloe? Since my players use the functionality of this extension all the time, I'm reluctant to udate to v3.1.3 until I know it can replicate all of it...
Try the attached "Fantasy Language Fonts" extension. This replicates the fonts and font mappings from the extension in post #1 of this thread - it overwrites the base FG v3.1.3 fonts and their mappings.

Note: If you've already created the campaign before loading this new extension then FG won't use the new mappings, it will use the old one. Edit your campaign db.xml file and remove the <language> section (all of it, including the <language> .. </language> tags). Then open up your campaign with this extension enabled and the new mappings will be there.

See post #139 below for v1.0.1 with minor fixes.

Callum
November 8th, 2015, 09:59
Thanks very much, Trenloe! Would you mind giving a quick guide to the extension, in particular the lua, so I know how to modify it for my own selection of languages and fonts? It's not clear to me why that particular subset of languages appears in new_languagefonts (or why there two instances of "Dwarven"), nor why the GameSystem entries are structured in the way they are.

Trenloe
November 8th, 2015, 17:07
Thanks very much, Trenloe! Would you mind giving a quick guide to the extension, in particular the lua, so I know how to modify it for my own selection of languages and fonts? It's not clear to me why that particular subset of languages appears in new_languagefonts (or why there two instances of "Dwarven"), nor why the GameSystem entries are structured in the way they are.
Forget about the new_languagefonts table, that isn't used (it's just left in there from when I started messing around with this).

The GameSystem.languagefonts table sets up the fonts that can be assigned to a language in the Languages admin screen (available from the Options window). The name in square brackets is what will appear in the drop down list in the Languages admin window and the name after the = is the actual name of the font within Fantasy Grounds (defined in graphics\graphics_fonts.xml in the base ruleset or extension.xml in this extension) and is, strangely enough, the name that will appear in the list once the font is selected. I'd recommend making the name before an after the = the same.

The GameSystem.languages table is the list of the base language name to font mappings. Whatever is in the square brackets is the actual language name and after the = is the FG font name - within this extension it doesn't have to match to entries in the GameSystem.languagefonts table it can be a valid FG font name, but this might get confusing and it won't be available in the drop down fonts list.

Summary: Setup new FG fonts in GameSystem.languagefonts and map language name to font in GameSystem.languages

Callum
November 8th, 2015, 18:10
That's very helpful, Trenloe - thanks! Why do some of the entries have "Interface.getString" at the beginning, and others not?

Trenloe
November 8th, 2015, 18:13
Why do some of the entries have "Interface.getString" at the beginning, and others not?
Those are the base ones from the standard FG ruleset. Interface.getString fetches the text to use from the FG string files (in \strings). It's used to make translations easier. The ones without Interface.getString are the entries I added. I just hard coded them for expediency.

Callum
November 8th, 2015, 21:26
A few oddities I noticed:

You fetch Common with getString in GameSystem.languages, but not in GameSystem.languagefonts (it's one of your hard coded ones) - what font is assigend to Common in the standard FG ruleset?
You hard code Halfling in GameSystem.languages - is this not included in the standard FG ruleset?
You have Gnoll in GameSystem.languagefonts, but it doesn't appear in the extension.xml file.
Conversely, you have Giant in the extension.xml file, but it doesn't appear in GameSystem.languagefonts.

Trenloe
November 8th, 2015, 21:40
A few oddities I noticed:

You fetch Common with getString in GameSystem.languages, but not in GameSystem.languagefonts (it's one of your hard coded ones) - what font is assigend to Common in the standard FG ruleset?
You hard code Halfling in GameSystem.languages - is this not included in the standard FG ruleset?
You have Gnoll in GameSystem.languagefonts, but it doesn't appear in the extension.xml file.
Conversely, you have Giant in the extension.xml file, but it doesn't appear in GameSystem.languagefonts.


Nothing is assigned, so it uses standard characters, which get scrambled for players without characters who speak common.
No it's not included.
Good spot. Fixed - see extension here: https://www.fantasygrounds.com/forums/showthread.php?26775-Expanded-Fantasy-Language-Fonts-(FG-v3-1-3-)
Good spot. Fixed.

Trenloe
November 9th, 2015, 18:59
Created a new thread with the extension here: https://www.fantasygrounds.com/forums/showthread.php?26775-Expanded-Fantasy-Language-Fonts-(FG-v3-1-3-)

DMReckless
January 4th, 2016, 21:09
found

Trenloe
January 4th, 2016, 21:34
where does one find these tables?

or the extension xml files for that matter
Link provided in the post immediately prior: https://www.fantasygrounds.com/forums/showthread.php?26775-Expanded-Fantasy-Language-Fonts-(FG-v3-1-3-)

DMReckless
January 4th, 2016, 22:09
Link provided in the post immediately prior: https://www.fantasygrounds.com/forums/showthread.php?26775-Expanded-Fantasy-Language-Fonts-(FG-v3-1-3-)

Sure, a link to the extension.

You have to extract the .ext to find the .xml file, and I had no idea how to do that. Luckily, I found the extraction method in the developer guides.

Unfortunately, adding a fgf for Thassilonian to the fonts file and editing the .xml to reference it doesn't seem to be doing a darn thing for me.... can't access the font

EDIT Post: So, the aforementioned tables can be found in the languages_extension.lua file under the scripts folder of the extracted .ext file.

So the steps to add in a new font series and define it are:

Download the FantasyLanguageFonts extension here, the fgf font generator file and FGPEM utility from the developers guides, use the fgf font generator to create your font, use the FGPEM utility to unzip the FantasyLanguageFonts.ext, move your font to the extracted fonts file, define your font/language in the extension.xml file, define your language/fonts on the languages_extension.lau, and then repack using FGPEM; scrub your db.xml if necessary, then run FG with the FantasyLanguageFonts.ext

And as long as you've spelled everything the same throughout, you should be good to go, like me!

Trenloe
January 4th, 2016, 22:54
@DMReckless - glad you got it working.

DMReckless
January 4th, 2016, 22:57
12469

Me too! Thanks.

iemckinnon
January 18th, 2016, 02:45
With the existing functionality in FG3, is there a place where fonts are stored, and where new fonts can be added? That seems to be the greatest limitation I can see in the built in language feature in 3.1.5+.

damned
January 18th, 2016, 02:49
With the existing functionality in FG3, is there a place where fonts are stored, and where new fonts can be added? That seems to be the greatest limitation I can see in the built in language feature in 3.1.5+.

Have a look at this thread....
https://www.fantasygrounds.com/forums/showthread.php?26592-New-official-language-fonts-for-5E

Trenloe
January 18th, 2016, 13:11
With the existing functionality in FG3, is there a place where fonts are stored, and where new fonts can be added? That seems to be the greatest limitation I can see in the built in language feature in 3.1.5+.
Use the languages button accessible from the campaign options window to add new languages based off the inbuilt fonts. If you want to add new fonts, see this extension as an example: https://www.fantasygrounds.com/forums/showthread.php?26775-Expanded-Fantasy-Language-Fonts-(FG-v3-1-3-)

iemckinnon
January 20th, 2016, 18:10
Ok, quick question. I seem to be missing something, or I am stymied because I am on a mac.
I have created fonts I like using Birdfont, saved them as truetype, loaded them up, and converted them using FGFontGenerator into .fgf files.
Replaced the .fgf files in the directory, modified the .xml file. zipped it up and renamed the file to .ext (it looked like it was just a renamed .zip file)
I am familiar with editing XML files, and I have the tools.
Is there a specific compression program that is used to zip up the files into .ext. I am looking around for general guides into properly creating .ext files.

Addendum: found and working my way through the developer guides.
Addendum: Found the old .pak .ext .mod utility, put it in my crossover in the utility folder. Works. yay me.

Nylanfs
January 20th, 2016, 19:10
Yea!!!

APPR3NTIC3
August 25th, 2016, 05:36
Is there a way to get this to work with the d20 modern ruleset? I was looking to add modern languages into my game. If not, is there some way to make a basic 'database' entry in my d20 modern game to include languages and if the character doesn't know them to simply say [speaks in XXXXXX] in chat.

Blackfoot
October 4th, 2016, 06:00
2. If a character has one of the following entries in their language list, it is treated as special case:
* Speaks all
* Understands all
* Comprehend languages
* Polyglot
* TonguesWhy is Polyglot on this list in PFRPG? It is a 'normal' language in Golarion.

Moon Wizard
October 4th, 2016, 06:20
https://www.google.com/webhp?ie=UTF-8#q=define%3A+Polyglot

That's a strange choice of a language name, given it's meaning.

JPG

Blackfoot
October 4th, 2016, 06:23
It's an amalgam language used by the natives of the Mwangi Expanse. Like a bunch of tribal languages.. but not a universal language. :(

Polyglot
Polyglot is the collective name given to the numerous dialects of the Mwangi tribesfolk inhabiting central and western Garund. Surprisingly, the various tribes can generally understand each other, and it is believed all the dialects are derived from an unknown root language.[6] Polyglot is spoken mainly in the Mwangi Expanse, the Shackles, and Sargava.

Andraax
October 4th, 2016, 12:42
Call the language "Mwangi" and move on... ;)

Blackfoot
October 4th, 2016, 12:53
Except that it's wrong. There's no reason for Polyglot to be broken in PFRPG. We have been calling it 'Polyglott' to get around it the issue... but the issue is a error.

Andraax
October 4th, 2016, 13:45
Except that it's wrong. There's no reason for Polyglot to be broken in PFRPG. We have been calling it 'Polyglott' to get around it the issue... but the issue is a error.

It's not broken. 'Polyglot" is a word with a specific meaning, and it applies that meaning in the software. Using a common word as a language name is the "broken" concept.

Blackfoot
October 4th, 2016, 14:32
It's not broken. 'Polyglot" is a word with a specific meaning, and it applies that meaning in the software. Using a common word as a language name is the "broken" concept.I don't really want to argue with you but this is a 'game' thing. In Pathfinder, Polyglot is the name of a language. So for the purposes of PFRPG it is an error to have it auto translate everything. To use a work around is fine for folks who are 'in the know' but for the general user it just seems broken if they are playing Pathfinder and using the Golarion world.

Andraax
October 4th, 2016, 16:03
So write an extension to handle this *one* *case* instead of insisting that your *one* *case* should guide the rules for everyone else. It's not broken, it works as designed. Your failure to understand the documented options does not make the software "broken".

Callum
October 4th, 2016, 16:14
Blackfoot is 100% correct. This has bothered me for some time!

Trenloe
October 4th, 2016, 16:16
It is an issue with, as far as we know, just the Pathfinder rules - it's an oversight, nothing more. So please calm down everyone! Role-playing games will often take commonly used terms and use them for something specific in their rules/world.

I'd recommend someone making an extension to cover this for the PFRPG ruleset until there's an update for the PFRPG ruleset.

@Blackfoot - please log this as an issue in the House of Healing, with a request to fix/update for PFRPG. And please use less strong words - it's an oversight, not a deliberate design decision. Thanks.

Andraax
October 4th, 2016, 16:26
Extension that changes "Polyglot" to "RealPolyglot" (the latter will work as the former, freeing up the "Polyglot" name to be used as a language name). Took ten minutes to write and test. Setting a character's language to "RealPolyglot" will act like polyglot - translates all languages. Should work with all CoreRPG rulesets, though I only tested in 3.5.

Andraax
October 4th, 2016, 16:54
It is an issue with, as far as we know, just the Pathfinder rules - it's an oversight, nothing more.

I wouldn't even say it's an issue with these rules - it's only an issue with *that particular game world*. People who play Pathfinder (or 3.5E) in virtually any other game world will not see this as a problem. The advantage to only doing this as an extension, is that you can apply this to *only campaigns in that game world*. If you play Pathfinder with some campaigns in that game world, and other in another game world, you can just use the extension on the ones that need it.

Blackfoot
October 5th, 2016, 13:10
It is an issue with, as far as we know, just the Pathfinder rules - it's an oversight, nothing more. So please calm down everyone! Role-playing games will often take commonly used terms and use them for something specific in their rules/world.

I'd recommend someone making an extension to cover this for the PFRPG ruleset until there's an update for the PFRPG ruleset.

@Blackfoot - please log this as an issue in the House of Healing, with a request to fix/update for PFRPG. And please use less strong words - it's an oversight, not a deliberate design decision. Thanks.Will do.
I didn't start out with strong words and realized it was an oversight... but some people are obstinate about things for whatever reason. I'm pretty sure that nobody uses Polyglot for any purpose other than the Golarion language... but hey.. maybe I'm wrong there.

damned
October 5th, 2016, 13:25
Will do.
I didn't start out with strong words and realized it was an oversight... but some people are obstinate about things for whatever reason. I'm pretty sure that nobody uses Polyglot for any purpose other than the Golarion language... but hey.. maybe I'm wrong there.

I dont play Pathfinder but I am aware (because I looked) that it is a language used in Golarion - however I have always (always being as long as I can remember) understood the term to be someone who speaks/understands at least three languages.... Not meaning to add any fuel to any fires...

Andraax
October 5th, 2016, 13:38
Will do.
I didn't start out with strong words and realized it was an oversight... but some people are obstinate about things for whatever reason. I'm pretty sure that nobody uses Polyglot for any purpose other than the Golarion language... but hey.. maybe I'm wrong there.

One of your first posts on the subject said, in part, "There's no reason for Polyglot to be broken in PFRPG." I pointed out that it wasn't broken, it worked as documented. Also, the fix is to either call the language something else, or one line of code in an extension file, so I don't see why you continued to make a big deal out of it. If you needed help with the latter, you could have asked for it, instead of trying to force everyone else to agree that it was broken and change the software for your one game world...

And yes, I've had characters that had "polyglot" in it's original meaning.

bestellen
October 11th, 2016, 11:58
Me too! Thanks.

Callum
October 11th, 2016, 13:16
One of your first posts on the subject said, in part, "There's no reason for Polyglot to be broken in PFRPG." I pointed out that it wasn't broken, it worked as documented. Also, the fix is to either call the language something else, or one line of code in an extension file, so I don't see why you continued to make a big deal out of it. If you needed help with the latter, you could have asked for it, instead of trying to force everyone else to agree that it was broken and change the software for your one game world...

The thing is, it was this game world that brought the word "Polyglot" into the Language Chat extension, and hence into the core FG code. For that reason, it initially worked as a language in its own right, and then at some point got changed to duplicating the "speaks all" functionality - which meant that PFRPG players lost some functionality that they'd been used to, while other players didn't really gain anything.

Zacchaeus
October 11th, 2016, 13:40
I think we've exhausted the discussion of this subject now; especially since Moon Wizard has fixed the issue in v3.2.

jedorian
May 4th, 2017, 04:21
Is this extension still compatible with the recent updates? I'm running a modern game and would really like to use this for all those languages....oh so very many of them.

Andraax
May 4th, 2017, 04:38
Is this extension still compatible with the recent updates? I'm running a modern game and would really like to use this for all those languages....oh so very many of them.

It's built into the latest rulesets built off CoreRPG, so it's no longer needed.

Trenloe
May 4th, 2017, 04:44
Is this extension still compatible with the recent updates? I'm running a modern game and would really like to use this for all those languages....oh so very many of them.
You can continue to use it if you wish, but the languages functionality in CoreRPG based rulesets is easier to use (no chat commands).

Post #1 includes a link to an extension that gives you all of the fonts from the old extension in the new setup.

jedorian
May 4th, 2017, 05:46
Its the fonts I want, not the actual languages it has.

Trenloe
May 4th, 2017, 05:55
Its the fonts I want, not the actual languages it has.
Then the extension linked in post #1 is what you want. :)

Maldev
May 29th, 2018, 14:05
G'day there, I cannot for the life of me figure out how to see the shots of the fantasy fonts in this post
(screen shot attached)

I have the browser in FG Responsive

damned
May 29th, 2018, 14:15
G'day there, I cannot for the life of me figure out how to see the shots of the fantasy fonts in this post
(screen shot attached)

I have the browser in FG Responsive

Ahem...
Sorry - the images are no longer there... sorry...

Trenloe
May 29th, 2018, 14:18
G'day there, I cannot for the life of me figure out how to see the shots of the fantasy fonts in this post
(screen shot attached)

I have the browser in FG Responsive
They were in the Public folder on DropBox, but DropBox have (fairly) recently removed that functionality. I've uploaded them as attachments.

Maldev
May 29th, 2018, 15:27
Thanks guys. Great stuff this. G'night

skj310
July 2nd, 2018, 14:30
1. The challenge I had with adding the ability to map languages to custom fonts is that there is no mechanism to "add" new fonts by the end user, and the name necessary to select a font is the actual font asset name defined by the ruleset or extension (which is not obvious to end users). Therefore, I was thinking this would be better managed by extensions that plug into the existing system with minimal coding. Also, it wasn't clear that all the fonts being used in the extension were free to use commercially, which led me to again push that to extensions.

2. If a character has one of the following entries in their language list, it is treated as special case:
* Speaks all
* Understands all
* Comprehend languages
* Polyglot
* Tongues

3. See 1) above.

4. I'm not sure what this means, but it probably would again fall to answer to 1) because of font licensing and font name management.

I'm open to something more advanced, but it might be worth building extension that just adds entries into GameSystem.languages in the onInit call (which I think is all that is needed to add new entries via extension, but I haven't tried yet).

Cheers,
JPG

am not a coder, but would love to see this turn into an effect we can add to our actions tab when a spellcaster casts comprehend languages. an addition to https://www.fantasygrounds.com/wiki/index.php/5E_Effects

would that be a feature request to go here: https://fg2app.idea.informer.com/

Trenloe
July 2nd, 2018, 15:59
would that be a feature request to go here: https://fg2app.idea.informer.com/
Yes.

Nickademus
August 12th, 2018, 21:56
I admit, it has been a while since I've used the language feature of FG, but am I correct in that the built-in functionality is completely missing this part?:

v3.1: Added - random character scrambling to avoid copy/paste "cheat".

Seems odd to take a step backwards when the code already existed.

Andraax
August 12th, 2018, 22:09
You are incorrect; the built-in functionality *does* include this feature.

Trenloe
August 13th, 2018, 00:24
I admit, it has been a while since I've used the language feature of FG, but am I correct in that the built-in functionality is completely missing this part?
What might be confusing you is that it is only scrambled on the player side, not the GM.

ddavison
August 13th, 2018, 15:29
Yes, it scrambles automatically now.

I personally liked the non-scrambled version because I believe it aids roleplay if players that don't know a language start seeing the same letters when they are repeated over and over. Guessing, correctly or incorrectly, the meaning of a word in a language you don't know provides some great opportunities for roleplaying. The scrambling was put in to avoid cheating the translation by players, but I rarely play with players that would do that since it would only serve to erode their own fun.

Trenloe
August 13th, 2018, 15:47
I personally liked the non-scrambled version because I believe it aids roleplay if players that don't know a language start seeing the same letters when they are repeated over and over. Guessing, correctly or incorrectly, the meaning of a word in a language you don't know provides some great opportunities for roleplaying. The scrambling was put in to avoid cheating the translation by players, but I rarely play with players that would do that since it would only serve to erode their own fun.
I specifically designed the scrambling so that the same word in a specific language would appear exactly the same each time.

Random scrambling is seeded from each word and the language name so each word should be represented the same each time it is used for a specific language - but it is still gibberish.

So, you do get the ability for players "learning" commonly used words.

ddavison
August 13th, 2018, 15:52
I specifically designed the scrambling so that the same word in a specific language would appear exactly the same each time.

Random scrambling is seeded from each word and the language name so each word should be represented the same each time it is used for a specific language - but it is still gibberish.

So, you do get the ability for players "learning" commonly used words.

Ahhh, very nice. I should have guessed that you thought of that. :D

Bidmaron
August 13th, 2018, 17:57
Trenloe, you are just the man! All there is to it (despite accusations that you are an AI on the order of Joshua in War Games)

Nickademus
August 13th, 2018, 18:59
What might be confusing you is that it is only scrambled on the player side, not the GM.

This is good to know. Yes, I was viewing the GM side of things.

ddavison
August 13th, 2018, 19:50
Trenloe, you are just the man! All there is to it (despite accusations that you are an AI on the order of Joshua in War Games)

The only difference is that Trenloe can play against himself in Tic-tac-toe and still manage to win.

Silverpung
November 3rd, 2018, 14:21
I am trying to setup a "chatframe" in a "story"-tab for some inscription on a magic item, so what i have done is: "/lang dwarvish Hello". But when i press the chat bouble to send the text into the chat window, the output is still the standard english font. Is this somewhat possible to do in another way? I'm thinkin it could be a nice way to prepare your stories with cool inscriptions on items and doors as eg.

Trenloe
November 3rd, 2018, 14:30
Welcome to the forums!


I am trying to setup a "chatframe" in a "story"-tab for some inscription on a magic item, so what i have done is: "/lang dwarvish Hello". But when i press the chat bouble to send the text into the chat window, the output is still the standard english font. Is this somewhat possible to do in another way? I'm thinkin it could be a nice way to prepare your stories with cool inscriptions on items and doors as eg.
A couple of things:
1) The extension is really no longer needed (as mentioned in post #1).
2) If you are using this extension: as you're discovering, you can't use chat commands (e.g. lang) in a chat bubble - it uses different code from typing the same command in the chat window.

To, kind of, get this to work. Don't load the extension, but use the built-in language support - select the language from the drop down list just above the chat entry control. Then drag/drop the text you want to use the language to the chat entry control and press return. This will send the text to the chat window in the selected language.

bchaddock
April 11th, 2020, 20:38
Hey Trenloe, I noticed that these links no longer work and I was looking to add some more language options to FG for Eberron specific Races. Like Riedran and Quor.

Is there a way to accomplish this with the most current FG and D&D 5e.

Thanks in advance.

Trenloe
April 11th, 2020, 20:47
Hey Trenloe, I noticed that these links no longer work and I was looking to add some more language options to FG for Eberron specific Races. Like Riedran and Quor.

Is there a way to accomplish this with the most current FG and D&D 5e.
The links still work fine for me. Make sure you're not in mobile mode.

You'll want to be using the new extension - linked in post #1.

bchaddock
April 11th, 2020, 21:11
The main work would be making this into a Fantasy Grounds font file. There is an Font Generator available in the "utilities" section of the downloads page where you can convert True Type Fonts (TTF) to FG fonts: https://www.fantasygrounds.com/downloads/

Or, you can edit your own font using the font editor: https://googledrive.com/host/0B27SCDR38xFuNE96TGV4S1Jjdlk/fantasy-grounds-ii/fantasy-grounds-ii-font-editor.html

Then it is a case of putting the new font entry in the extension.xml file. e.g. if the new font is called thassilonian.fgf and you want the new language name to be thassilonian you'd add this entry:

<font name="thassilonian">
<fgffile name="fonts/thassilonian.fgf" />
<color value="#000000" />
</font>
Then using /lang thassilonian Hello! in chat will use the thassilonian.fgf font.

Sorry I meant these links

Trenloe
April 12th, 2020, 08:05
Ah, OK.

Get the font editor here: https://drive.google.com/open?id=1SSa-50rd4UAnJFcwKWTGiK73HQ8vjFCh

I don't have a copy of the TTF to FGF converter. But, this is built into FG now. You can specify a TTF file in the font defintion. See here: https://www.fantasygrounds.com/refdoc/font.xcp and there are some example in the CoreRPG ruleset.

bchaddock
April 13th, 2020, 16:06
Sweet thanks.

Denyooo14
December 9th, 2020, 03:04
Trenloe,

Friends and I are starting a campaign and looking into adding Thieves Cant in as a language. Went through the Thread and couldn't find an extension that added it as a usable language.

Are we still having to add a custom language and such for it?

Moon Wizard
December 9th, 2020, 03:32
BY default, you can click on the Options setting in the default ruleset; then click the Languages button; and then add a Language to the language list for your campaign.

Regards,
JPG