PDA

View Full Version : Should SW look into adding key extension features?



Morenu
September 5th, 2024, 00:30
Hey there,

With Bmos stepping away from managing his PFrpg extensions (Thanks for all the years Bmos, no hate), this opens up my biggest concern about extensions and FGU's core game rules. IMO several of the extensions are almost a requirement for quality of play. Is there a process for extension creators to work with SW to integrate an extension idea into the SW code for a game you consider core?

Curious on the thought process

LordEntrails
September 5th, 2024, 01:44
There have been some such "transfers". The most prevalent one I'm away of was the one from Jim Socks for table or template improvements.

To the question of should they? Well there are a lot of considerations and questions of such. Some of those are:
- IP, and fair compensation. Even if a developer wishes to gift, there can be concerns overcompensation. And code that is public domain is even harder to incorporate into commercial code. There are licenses that can avoid this, but most developers don't bother specifying what license they release their code with.
- Maintenance. Maintaining something you didn't write can be hard.
- Relevance to wider user population. If it's ruleset specific and for a minority ruleset, then it's ROI could be poor.
- User Support. Similar to maintenance and more capabilities are going to incur more support requests.
- Code complexity. Code bloat slows down feature development.
- Impact to future community developer friendliness
- User adoption/satisfaction. As you note, some users feel such extensions are critical.

Nylanfs
September 5th, 2024, 12:27
And bmos has all his extensions up on github and said he'll maintain those (and update the forge presumably) if somebody wanted to take them over the dev cycle

Morenu
September 5th, 2024, 12:56
@lordentails. Thx. Thats a good perspective and makes sense. I think its the only big drawback in the system is customers used to things working a certain way (with extensions) may get upset at a perceived loss of functionality. Thx.


And bmos has all his extensions up on github and said he'll maintain those (and update the forge presumably) if somebody wanted to take them over the dev cycle

Absolutely. I wasn’t commenting on how bmos is handling things. Their offer is extremely generous. Devs of free addons owe us nothing (and paid ones owe very little). SW benefits from the devs in each community being willing to help improve the end user experience for free or for very little compensation (again, not a complaint). The loss of Rob2e made me think on this and about how he handled things. Its a difficult thought process.

LordEntrails
September 5th, 2024, 15:17
Yes, perceived loss of functionality is a serious consideration.

SilentRuin
September 5th, 2024, 15:38
SW does not even know what extensions are out there or what they do. Until they do a deep dive into seeing what they do and why they were created I don't see them ever realizing what holes in functionality they are filling.

Plus, extension devs are bat shite crazy. You should see the code - trying to follow and keep them working would bury SW devs for all time.

EXTENSIONS = RISK

There is no winning in this. Except maybe for SW to STOP changing code known to be used by extensions unnecessarily for "simplifying" things by reeking havoc on renaming stuff.

But they would actually have to do what extension devs have to do and run searches on all the code. For example, if I change a function I have to search all of 5E/CoreRPG/and all my extensions and sometimes some other's extensions. The fact they NEVER do this themselves INSURES they cause problems they did not need to cause.

If they DID do this they might actually do a search on something they are going to rename and go "WOAH! To many extensions use that best play it safe and keep a legacy call or not change the name." Or at the very least come up with a doc showing the extensions exactly - verbatim - what they have to change to get things working again.

Honestly, my impression is we won't see this happen.

Morenu
September 5th, 2024, 16:37
Does SW have a goto person for devs to reach out to directly? Even by invite only for the heavier used ext. Devs? Say any Dev with x number of forge subscribers gets an invite to a discord place for coders to discuss directly with SW? And for paid extensions, i am not sure if the devs would prefer their ext. Be made obsolete or not.

Again this is just a mental exercise for me due to the unfortunate passing of rob2e and bmos stepping back. These are 2 of my top 5 or so devs or dev/groups for my fgu experience.

Zacchaeus
September 5th, 2024, 16:44
Smiteworks are very well aware of what extensions are out there and what they do. Many extensions have been included in the code in the past, usually those that do something fairly simple. They aren't going to add something like the behemoths that SilentRuin develops. Also you can't expect the code to stand still. If it did then there wouldn't be any new things in any ruleset ever again. And yes, SW do help extension authors - as do many people on the forums here.

SilentRuin
September 5th, 2024, 16:52
Smiteworks are very well aware of what extensions are out there and what they do. Many extensions have been included in the code in the past, usually those that do something fairly simple. They aren't going to add something like the behemoths that SilentRuin develops. Also you can't expect the code to stand still. If it did then there wouldn't be any new things in any ruleset ever again. And yes, SW do help extension authors - as do many people on the forums here.

If a response to what I said - I don't see the relevance.

SW does NOT track extension code or do searches to see the impact any renaming or rewriting they do will impact the extension community. Nor do they attempt to minimize that impact when they do these rewrites - they simply DO them.

I have to search all the code base I'm involved with to insure and changes I make are going to have minimal impact - SW should at a minimum be doing the same thing. Its not rocket science. Create a directory - put all the ruleset/extension directories with code under them via unzipped extension and add that directory to your search. Notepad++ is a simple editor I use to do this - just one directory for my searches which has all the rulesets and extension code I use so when I search on something I'm about to change I can immediately see the impact.

If you are implying in any way shape or form they do this... I absolutely don't believe you. As the constant shifting anchor points, argument rewrites, have given no indication at all they have taken into account the impacts. As doing a doc based on those search hits would allow them to inform the extension world what was going away and what to replace it with. Instead of making us spend hours first determining what changed, then how it effects us, then how to get things back to working the way they were.

Zacchaeus
September 5th, 2024, 17:37
Not a response to you but to the post above mine. In your response you said SW had no idea what extensions are out there and what they do. I said they do know what extensions are out there and what they do. That does not equate with them not changing code in case it breaks extensions. Changing the code is, as I said, necessary.

ddavison
September 5th, 2024, 18:02
There are 435 extensions in the Forge and there are new ones added and changed regularly. This is in addition to the large # of different rulesets and extensions across official products. There is no way we would be able to test across all of them in any meaningful way and still get anything done.

Moon Wizard is out of the office at the moment, but we will evaluate to see what sort of steps we can take to minimize the impact on community devs in the future. I used to work in the corporate development world as a consultant and programmer for several decades, so I can share with him some things we used to do back then that helped. We have some constraints that are unique to our situation and some that are similar.

Regarding Extension handling if the community dev leaves or becomes unavailable:
Rob2E also planned the passing of his code to others because he knew his health was declining. This is an important step for devs to make, but it is a personal matter. There are also financial implications. Our main focus is to continue building the core experience to support people. When certain features rank high on the feature request list, and/or free extension list, then we look at building that sort of feature into our system. If that functionality is part of an extension on the Forge, we may reach out to the original dev to see if we can simply incorporate their code -- but often we just write our own version. There have been a couple cases where devs offered code for us to use. Sometimes we use their stuff as a base and sometimes we do a different approach. We also try not to actively compete with our community devs if this is something they are known for. That may happen at times, but we take that into consideration as well.

SilentRuin
September 5th, 2024, 18:12
There are 435 extensions in the Forge and there are new ones added and changed regularly. This is in addition to the large # of different rulesets and extensions across official products. There is no way we would be able to test across all of them in any meaningful way and still get anything done.

Moon Wizard is out of the office at the moment, but we will evaluate to see what sort of steps we can take to minimize the impact on community devs in the future. I used to work in the corporate development world as a consultant and programmer for several decades, so I can share with him some things we used to do back then that helped. We have some constraints that are unique to our situation and some that are similar.

Regarding Extension handling if the community dev leaves or becomes unavailable:
Rob2E also planned the passing of his code to others because he knew his health was declining. This is an important step for devs to make, but it is a personal matter. There are also financial implications. Our main focus is to continue building the core experience to support people. When certain features rank high on the feature request list, and/or free extension list, then we look at building that sort of feature into our system. If that functionality is part of an extension on the Forge, we may reach out to the original dev to see if we can simply incorporate their code -- but often we just write our own version. There have been a couple cases where devs offered code for us to use. Sometimes we use their stuff as a base and sometimes we do a different approach. We also try not to actively compete with our community devs if this is something they are known for. That may happen at times, but we take that into consideration as well.

Doing a search on keywords for the bulk of 435 text data when about to change names or remove things is not a huge expense to do. Not once did I mention testing. I mentioned searching existing 3rd party code you claim to allow and gauging the impact on changing keyword/names/anchors/args simply by seeing who currently uses them and coming up with a document (or not doing them) to show what has to be done to replace that functionality.

This is very doable. And simple.

ddavison
September 5th, 2024, 18:35
This is very doable. And simple.

No, it is not simple at all. It would mean you would have to constantly keep a current copy of every extension and ruleset on your system and then search it for any change you wanted to make. You could use the same names for things and use them in completely different ways. You would have to investigate every match and rule out any false positives, etc. What if you do find matches? Do you then contact each person, not make a change, or just note it on a changelog? None of those options are good or sufficient to alleviate the issue for devs.

SilentRuin
September 5th, 2024, 18:45
No, it is not simple at all. It would mean you would have to constantly keep a current copy of every extension and ruleset on your system and then search it for any change you wanted to make. You could use the same names for things and use them in completely different ways. You would have to investigate every match and rule out any false positives, etc. What if you do find matches? Do you then contact each person, not make a change, or just note it on a changelog? None of those options are good or sufficient to alleviate the issue for devs.

It is simple. You are removing or changing a named piece of code (IU or function matters not). A simple text search for all hits of that name will give you an IDEA of how much impact that change is about to have on the code base. Scripts can keep things from Forge up to date and unzipped on whatever search directory you wish to have them reside unzipped in. I do this now. It is simple if to a much lesser degree of 435 extensions. Mine is more along the lines of all your current rulesets and about 10 extensions.

Matters not what matches you get - you are doing and EXACT match search and you WILL get a scale of the impact you are about to make on the extensions. And trust me, names CAN be preserved. Legacy functions CAN be done.

You can say its not simple at all. But its not convincing me as I HAVE to do this now on a smaller scale already. What you really mean is its an extra task you do not wish to be burdened with as Extensions are largely on their own to deal with changes. And SW is not responsible for gauging any impacts a change will have on extensions.

For instance, I'm going to change "PowerManager.parsePower" argument list - how much of an impact will that be? (not a great example as usually there will be a raft of other rulesets impacted also)




C:\Old Machine\Dungeon and Dragon World\Fantasy Grounds Extensions\5E\scripts\manager_power.lua (2 hits)
Line 2099: local tActions = PowerManager.parsePower(tData);
Line 2326: local aActions = PowerManager.parsePower(tData);
C:\Old Machine\Dungeon and Dragon World\Fantasy Grounds Extensions\FantasyGroundsExtensions\Equipped Effects Extention\Data\extensions\Unpacked\EquippedEffects \scripts\manager_equipped_effects.lua (1 hit)
Line 519: sortedpowerdata = PowerManager.parsePower(tData);


Looks like the only people who directly call these functions are in 5E and Equipped Effects (though I fixed BCEG in my search directory also - it was also impacted - both of which will be busted). Thus there is a documented need to have a work around.

Its really that simple. Just building the directory of text to search is only task and that can be done by scripting.

Morenu
September 5th, 2024, 19:11
Smiteworks are very well aware of what extensions are out there and what they do. Many extensions have been included in the code in the past, usually those that do something fairly simple. They aren't going to add something like the behemoths that SilentRuin develops. Also you can't expect the code to stand still. If it did then there wouldn't be any new things in any ruleset ever again. And yes, SW do help extension authors - as do many people on the forums here.

Thx.

I hope that SW staff knows that we love the platform and have made an informed choice about it. I am glad that maintaining the Forge seems to have been a boon for everyone involved. As a user, i try to be respectful of all the hard work that is put into essentially my play time. So understanding some of that helps me and my expectations.

ddavison
September 5th, 2024, 19:12
The search thing is a non-starter. We simply disagree on the feasibility of that.

The example of the change to parsePower is something that could be managed differently to still allow for refactoring while not breaking a public interface. This is something we have spoken about internally in the past. The argument for building a new function called from the old function would improve backward compatibility and minimize the impact on community devs who may be using the old function definition. The argument against that approach is that the code gets bloated. I lean towards the first option, but we will review again with this clear example.

SilentRuin
September 5th, 2024, 19:58
The search thing is a non-starter. We simply disagree on the feasibility of that.

The example of the change to parsePower is something that could be managed differently to still allow for refactoring while not breaking a public interface. This is something we have spoken about internally in the past. The argument for building a new function called from the old function would improve backward compatibility and minimize the impact on community devs who may be using the old function definition. The argument against that approach is that the code gets bloated. I lean towards the first option, but we will review again with this clear example.

The ONLY thing I'm looking for is stability. I don't care what you do to achieve it - I DO NOT want to waste tons of hours every single TEST drop where stuff is no longer working. And spending time to get to where you WERE or ARE in LIVE again?

That is the worst. And it seems to be a regular pattern where things we were told to use or reference are changed without warning other than clicking a button and seeing a raft of Errors in the console.log.

I don't care how you solve it in the end, if I'm not adding new functionality I don't want my old functionality busted every 3 months.

And users don't want to have extensions that stop working not because something is no longer possible - but simple because the cards (code) has been shuffled in a way that kills the extension.

LordEntrails
September 5th, 2024, 20:31
I think a few things are "true" that are key to keep in mind:

Enhancing the capabilities of FG requires code changes
FG needs to continue to enhance capabilities to remain competitive in the market and for SmiteWorks to remain financially viable
SmiteWorks has limited resources
Community Devs generally do what they do for self-fulfillment (own use, love of the ruleset, love of community, etc) and not as a job or for money
Community Devs through at least their extensions and products add value to the FG community & the FG product.
FG code needs to be kept "reasonable" i.e. some level of manageable and supportable. Bloat is bad. More features mean more testing and complexity.
"We", the community, don't have our lively hoods tied to these decisions (maybe a few community devs actually do?), SmiteWork does. And the decisions are SmiteWorks to make.


I think there are two real/root cause issues here;
A) Keeping especially #2, 4 & 6 in mind, how can SmiteWorks reduce the impact of code changes? Not just but for community devs, but for themselves as well. (And while keeping the overhead impact to new development "reasonable"?)
B) How should the work that results from code changes be distributed between SW and Community Devs? There will always be a split, IMO it's not ideal for either side to bear the full "cost" of such changes.

damned
September 6th, 2024, 00:03
Not a response to you but to the post above mine. In your response you said SW had no idea what extensions are out there and what they do. I said they do know what extensions are out there and what they do. That does not equate with them not changing code in case it breaks extensions. Changing the code is, as I said, necessary.

From my perspective 5E already works.
Make 5E24 a new ruleset.
Stop continuously reworking stuff that works - many, many changes do not add functionality to the user - they are supposedly adding a benefit to the developers.
The challenge it creates for every other developer suggests that this benefit may be exaggerated.

There are so many game systems begging to be developed.
Divert your talented team to creating rulesets and widening your potential user base.

Kelrugem
September 6th, 2024, 03:25
@SilentRuin, I cannot evaluate your suggestion with the search stuff or whether or not a code change was really necessary, but in my case SW was certainly always eager to answer my questions regarding coding, and if a bigger patch was happening then I even got contacted privately on Discord to make me aware of certain things and to offer help. Thus, I would certainly not say that SW is not aware of the extensions and the devs out there, quite the opposite if even I (a smaller dev) gets contacted on Discord for such things :)

I totally understand that it is frustrating to update extensions, but with competition like Foundry there is certainly now even more a need to keep FG up to date with certain things, especially also regarding UI which is one of the most criticised aspects of FG so that we can expect changes in that regard. Though, as I said, I cannot evaluate explicit code changes in that regard, simply due to lack of experience.

ddavison
September 10th, 2024, 17:00
From my perspective 5E already works.
Make 5E24 a new ruleset.

We started going down that patch, but there were some major issues with that approach. I think a new ruleset is confusing for the average D&D user, when Wizards of the Coast has been telling everyone that it is compatible. For the most part, it is compatible -- just with a lot of development changes on our end to make that work. In many ways, it is easier at the table than it is digitally. That doesn't matter though. The expectation of the average D&D user is that they will be able to access either the new 2024/2025 D&D content or the older content in the same campaign interchangeably.

rhagelstrom
September 10th, 2024, 21:11
Hey there,

With Bmos stepping away from managing his PFrpg extensions (Thanks for all the years Bmos, no hate), this opens up my biggest concern about extensions and FGU's core game rules. IMO several of the extensions are almost a requirement for quality of play. Is there a process for extension creators to work with SW to integrate an extension idea into the SW code for a game you consider core?

Curious on the thought process

The dev extension community has been hoping that this sort of thing would happen for years, but it doesn't or at least not often. When it does, it's not rolling in an ext to mainline but rather a complete reimplementation. There are some extensions that are more near turnkey ready to roll in to mainline than others with regards to style and coding standards than others, so that is also a factor. You don't know that though until you look under the hood.

Many of the top exts are also tops on the feature requests. It'd be pretty much impossible to roll in all the third-party extension ideas but I'd hope that everyone has a pretty good idea on extension features that are a really good idea / hole in fantasy grounds. That is probably like 20ish or so. If it was just those, it'd be a huge improvement. I'm going to leave Aura off that list because its a good idea and everyone wants it but there is more to it than meets the eye to just roll in.

There aren't that many of us ext devs left and we have lost a lot of great devs in the past two years. There are abandoned great ideas and some get picked up by others but there are just too many for the rest of us to keep up with, especially with breaking churn. I assume the churn is good in the long run but exhausting in the short term. That means that things are going to die on the vine which will be a backwards step for FG as a whole, especially when comparing to other VTTs be it if someone is deciding to start using FG or if someone is going to continue to use FG. It is just the reality of the situation.

claedawg
September 11th, 2024, 04:42
I like the UI updates so far but I think SW should really just drop the faux 3D maps and focus on the strong point of the system, automation. That faux 3D in my opinion is a waste of time from a financial standing, as it will in no way be able to compete with the other VTT systems out there that do actual 3D. Once those systems get the automation part down, FG will be in real trouble. The faux 2D looks worse that the graphics from Daggerfall, that was almost 30 years ago. SW needs to move forward, not backwards. Hopefully, once they get the UI completely updated, they will get working on making the automation better.

Although, with the 2024 D&D thing going on, I imagine the vast majority of their time is being spent on that. Unfortunately for me, I am tired of running superhero medieval fantasy and want to move on to something else. Shadowdark is a good start, but still lacks much of what I want in a game (this is totally my issue and not SW in anyway, lol).

I would love to play Rolemaster or BRP, but neither of those games were implemented very well, with BRP basically being unusable the way the system was intended to be used at the table, atleast without extensive outside modding through extensions (which do not exist). Rolemaster needs a complete overhaul to fully embrace the capabilities of FG (especially the crit tables, they are a mess the way they are now).

Most of the "fully supported" systems are just barebones and seem to have just been thrown together to get the minimal capabilities available and seem to have been created with the thinking that other people (modders) making the games actually functional in the way they were intended to be played. Very similar to how Bethesda treats most of its games. Even the most supported games, 5E and PF2, have much of the rules not implemented, especially the optional rules (the hexploration, camping and influence rules for PF2 are the biggest missing pieces for that system, imo).

The only system that seems like it would fit the majority of my personal wants is still in development and they do not have any plans to implement for FG, but they are thinking about Foundry, The Broken Empire from the youtuber Me, Myself and Die.

damned
September 11th, 2024, 07:31
Most of the "fully supported" systems are just barebones and seem to have just been thrown together to get the minimal capabilities available and seem to have been created with the thinking that other people (modders) making the games actually functional in the way they were intended to be played. Very similar to how Bethesda treats most of its games. Even the most supported games, 5E and PF2, have much of the rules not implemented, especially the optional rules (the hexploration, camping and influence rules for PF2 are the biggest missing pieces for that system, imo).

This is a curious post.

Most rulesets have many, many thousands of lines of code and layout.
Many optional rules are complex to code and are rarely used.
Many edge cases are also complex to code and rarely used.

Last week you attempted to make a mod but instead of looking at the actual code you asked ChatGPT to do it for you and then asked other people to tell you why it did or didnt work.
For a feature to exist it has to be coded and there needs to be someone capable and motivated to do it. For the most part money will not be a motivator because most FG programming does not pay more than some hobby money.
And the feature you were trying to code for wasnt even part of the rules for that system.

You also use the term "fully supported" in quotes but I cannot find any official reference to a ruleset saying it is "fully supported".
This is a misdirection.

johnecc
September 11th, 2024, 08:22
Also, in what way are the Rolemaster Crit tables a mess? I played in a game for about 6 months, and the table resolution seemed to work quite well. I admit that a lot of the effects aren’t automated, but most of the important ones seem to be.

claedawg
September 11th, 2024, 09:00
This is a curious post.

Most rulesets have many, many thousands of lines of code and layout.
Many optional rules are complex to code and are rarely used.
Many edge cases are also complex to code and rarely used.

Last week you attempted to make a mod but instead of looking at the actual code you asked ChatGPT to do it for you and then asked other people to tell you why it did or didnt work.
For a feature to exist it has to be coded and there needs to be someone capable and motivated to do it. For the most part money will not be a motivator because most FG programming does not pay more than some hobby money.
And the feature you were trying to code for wasnt even part of the rules for that system.

You also use the term "fully supported" in quotes but I cannot find any official reference to a ruleset saying it is "fully supported".
This is a misdirection.

You are also misrepresenting my post in the Shadowdark thread as I clearly stated that I did not have access to files for the ruleset to be able to look at the coding first. For the extension I was doing, I have no access to the files for that ruleset. The coding I got from ChatGPT was an example code (which I explained in a later post) that I just attempted to use to see if it would work and was trying to get some suggestions on how to go forward with it. ChatGPT does have access to quite a bit of the coding from some rulesets (although I did not realize until after those posts that it has a cutoff date from 2021 so it will not have new items obviously).

As for the fully supported comment, I used quotes to indicate that I wasn't sure if the ruleset was done by SW or by someone from the company that produced the game itself but was purchased through the main store and not the Forge. If something is available on the main store page, most people are going to understand that to be a SW work.

For BRP specifically, the whole book is nothing but options as it is a tool for GMs to add the things they want for their setting and not to be used whole cloth. That needs to be able to be modified ingame in order for it to be of any real use to the vast majority of people who would run it, as we do not have the skill nor the time to basically create a whole new ruleset to use an existing ruleset. Maybe a generic, cross setting, toolkit system is beyond what FG can do in a single ruleset, if so, it would have been better to have it broken down into separate rulesets for its different setting options, or just leave BRP on the tabletop and create the rulesets for the settings they already had created (i.e., Mystara, Pendragon, Runequest) like was done with CoC.

That sentiment does not reflect how I feel about the Shadowdark game, which was where my attempt at creating an extension came from. I knew I was adding something that was not in the printed game and my statements in my original post here was in no way in regards to my post on the Shadowdark thread. My post on this thread was specifically geared towards BRP, Rolemaster and parts of PF2 that were either not included or done poorly, especially Rolemaster with all of its charts; and the Phase Initiative system it uses which does not work with the normal initiative setup in FG without making the game even harder to use on FG than it is at the table with pen and paper. FG was the perfect place to do Rolemaster right by fully automating the Crunch and make it a breeze to use, but it was not. I did a better job of recreating the attack and critical tables with QBasic in DOS on my Tandy than what was done in FG, and I absolutely suck at coding.

Truthfully, most of the issues I have with D&D and PF2 on here are covered in the player agency extension, which really should have been something that had been developed inhouse. Other things, like my wanting to add or change certain things for Shadowdark (or even in other rulesets) are not part of my criticisms in this thread, as I often get an itch to change things to fit my own personal vision of running a game. One of those things is hexcrawling (which comes with the PF2 printed rules but was not implemented in a way that it can be used without extensions in FG) or the Influence system (which was mostly just additional fields that could have been added to the NPC sheet). D&D 5E has its own issue that is not SW fault, as they decided in 2014 to not include many of the rules for things that were in previous editions, but many DMs still use, and told the DMs to basically just figure it out for yourself while you're in the middle of a game.

I understand that there is a lot of code involved, but the main power of FG is that it automates better than any other VTT out there right now (that I know of) making the tracking of roll results and resource depletion left to the computer and let the GM and players just worry about the characters and setting. Outside of 5E and PF2 the creation of the ruleset, from whoever is coding those programs, was focused on the bare minimum and left it up to others to actually make the game work to even half of what the game can do, hence the Bethesda reference.

I want FG and SW to continue to be the huge success they have been for over a decade now. It feels like when SW started focusing on the faux 3D, everything else was set aside and the bare minimum was being done after that. So far, I do like the changes being made (the UI stuff) and I am hoping for bigger and better improvements to come.

Just FYI, I have noticed you have been getting very defensive and terse lately when someone even just has a question on how to do something that is not implemented in FG, but there are rules for it in the game. Even when that person is not criticizing, just wanting help to try and implement it themselves with an extension. Most of the time, we are just looking to make changes to systems to better fit our vision of the game we want to run and is in no way meant to be critical of SW or its employees.

I was using this thread to more or less blow off some steam after getting the BRP from the store and finding out it cannot be used for what it was intended for. BRP on FG is the first time I have ever asked for a refund from FG and that is something I almost never do in any other arena much less here.

claedawg
September 11th, 2024, 09:10
Also, in what way are the Rolemaster Crit tables a mess? I played in a game for about 6 months, and the table resolution seemed to work quite well. I admit that a lot of the effects aren’t automated, but most of the important ones seem to be.

Mostly in the way it was implemented where you have to open a separate window and drag the roll result to a copy/pasted image that was hard to see as the image included all of the tables that were on that page in the book. It would have been better to just have the system automatically roll the criticals in the background and post the results in chat. That is what I did with QBasic in DOS 30 years ago. In that, all you had to do was then the attack roll and DB and the functions did their thing to produce the result for the attack and critical. In FG all that should have been needed was targeting the opponent and rolling the dice, no extra manual steps should have been involved to produce a critical result. The skill tables were just as bad, but I may be misremembering as it has been a couple of years since I ran it.

As for the phase initiative, it is just better to run D&D style initiative without a custom CT that specifically handles the different phases.

ddavison
September 11th, 2024, 16:39
The 2.5D stuff is a big step towards full 3d usage as well. Most of our publishers (outside of WOTC) will only ever be able to supply us monster and map graphics in 2D, so we thought it best to focus on that first. I would also be surprised if Wizards of the Coast decides to share any of their newly created 3D assets with any other VTTs. I get that not everyone likes 2.5D or 3D content, but we try to provide options for as many different users as possible. Thankfully, you can continue to use it in a completely 2D manner going forward.

If we look at the development costs we incur to develop smaller systems, we actually lose money on those. They are subsidized by sales on the top tier systems. If community devs build out 2nd and 3rd tier rulesets, then we don't really make money on these, but we don't lose money either like we would if we developed those in-house. It still takes internal staff time and effort to roll out community developed mods, and to manage those after release. Our best bang for the buck is to build functionality that improves the top selling rulesets and can be used to add functionality to the 2nd and 3rd tier rulesets as well.

Dudin
September 11th, 2024, 16:58
The dev extension community has been hoping that this sort of thing would happen for years, but it doesn't or at least not often. When it does, it's not rolling in an ext to mainline but rather a complete reimplementation. There are some extensions that are more near turnkey ready to roll in to mainline than others with regards to style and coding standards than others, so that is also a factor. You don't know that though until you look under the hood.

Many of the top exts are also tops on the feature requests. It'd be pretty much impossible to roll in all the third-party extension ideas but I'd hope that everyone has a pretty good idea on extension features that are a really good idea / hole in fantasy grounds. That is probably like 20ish or so. If it was just those, it'd be a huge improvement. I'm going to leave Aura off that list because its a good idea and everyone wants it but there is more to it than meets the eye to just roll in.

There aren't that many of us ext devs left and we have lost a lot of great devs in the past two years. There are abandoned great ideas and some get picked up by others but there are just too many for the rest of us to keep up with, especially with breaking churn. I assume the churn is good in the long run but exhausting in the short term. That means that things are going to die on the vine which will be a backwards step for FG as a whole, especially when comparing to other VTTs be it if someone is deciding to start using FG or if someone is going to continue to use FG. It is just the reality of the situation.

This is what I fear most. I know you, rhagelstrom, have generously taken on maintaining many extensions given the the original authors have moved on or can't commit time anymore to maintaining the mostly free extensions. For that, and your amazing original works like BCEG, I will always be thankful to you for.
I don't know how much I would want to keep using FGU without all the extension functionality I have grown accustom to outside of sunk cost fallacy holding me in. If more developers like yourself fall off and extensions stop working, then there wouldn't be much stopping me from trying other platforms (who I am sure will have their own issues too). I don't blame any community developer for dropping support for anything they have made. Time is precious and no dev is making a living off their work on the platform.
I have only really played 5E using FGU, so I can't comment whether I think the other rulesets (popular or not) feel adequate without extensions.

LordEntrails
September 11th, 2024, 17:09
I don't think increasing the automation in FG, in the popular rulesets or others, will actually make much of a dent in gaining or retaining market share. As pointed out, FG is already the most automated VTT on the market. Adding automation to that is not going to change that. (Can't be better than first place.)

When I see folks in places like r/vtt asking about what VTT they should use, they are almost never concerned about getting more automation. Half of them seem to be impressed by the VTT with the most wow factor (such as animated graphics &/or first person/camera view/3D, &/or the visual appeal of the UI). The other half seem to care about ease of use. Most of these folks care about D&D (it's what, 80% of the market?). A few others want PF2, CoC, or some of the "second tier" RPGs. Most of which are directly supported by FG. Only occasionally do they care about the level of automation in these rulesets.

Though I always hope for a bit more automation for my own use, I see the most important areas for FG to enhance are:
- The perception of Ease of Use. Though I think FG is very easy to use, many people see it differently. UI enhancements for consistency and a few other things go a long way to this.
- Enhanced "marketing" and broader community awareness towards the animation and 'flash' that FG does have. Things like including for free; a dozen set of coordinated PC or NPC tokens, portraits and standups. Releasing a free module of map packs that have animation/FX created and enabled. These would go a long way to showing what FG is capable of and could be used in the various Sneak Peaks and demo videos. Showing this as the 'norm' and not just something that can be done would go a long way to setting the collective RPG communities "wow" impression about FG.

SilentRuin
September 11th, 2024, 19:19
Below is IMHO..

The vast majority of users that use FGU, FGU mods, and FGU rulesets as is are not aware there is anything else. What they don't know about they don't miss.

The minority of users that use extensions to make the pain of running a game as a GM easier usually can't live without them once they know of their existence and start using them.

The ultra thin minority (like < 30 IMHO) write their own extensions and modules to fill in any deficiencies in running their game and don't care what they know as if it can be done they just make it happen even if its not perfect (shoot for good enough).

While the forums are filled with opinions on extensions I feel the vast majority of users simply don't read them and are unaware of the things many feel strongly about.

We of the forums live in a rarified world IMHO.

Zacchaeus
September 11th, 2024, 21:24
I think this may be the first post that you've ever made that I agree with ;)

Morenu
September 11th, 2024, 22:11
So here is an honest question I looked into a year back and got a bit lost and then interrupted. As an old head that has done DOS Basic and Pascal eons ago and understands the basics of how HTML works, and has done a few edits in things for 3d printing firmware and what not... is it realistic for me to learn to code Lua for use in FGU?

Perhaps the other partial fix is to have a central location for people to learn? I see github being used I assume to collaborate and such but I know very little of its benefits.

And if the response is yes and such, this maybe should be its own post.

ddavison
September 11th, 2024, 22:27
Yes. A couple basic tips to get you started:

1. Unzip CoreRPG.pak and whatever other ruleset you want to look at, such as 5E.pak into folders somewhere on your disk (outside of FG preferably)
2. Look over the XML and LUA files to get a basic fill for things
3. Use Notepad++ and the Find in Files option to look for keywords. If you know a keyword, it will often be in a strings file to allow for localization and then you can see everywhere that is referenced by searching for the name of that string variable
4. Do the same thing for extension files that end in .ext

Unpacked folders will override the official versions delivered from our update system, so keep this in mind if you leave them under the rulesets or extensions folder. That's a good and fun way to test small changes. Just type /reload into chat whenever you want to test your small changes. Ideally, you will want to look at making extensions to modify stuff. Updating the ruleset directly is a quick and easy way to test an idea or prototype.

There are loads of examples online for LUA and you can even use chatGPT to assist you with the development. Just tell it you need LUA code and provide some samples and what you hope to accomplish.

damned
September 12th, 2024, 00:17
Learning to code some Lua just for FG is both reasonable and achievable. It is very satisfying when you make something work for yourself.

Getting started for non programmers can be daunting but is still very achievable.

Morenu
September 12th, 2024, 01:15
Thankyou ddavison, thats great info.


Learning to code some Lua just for FG is both reasonable and achievable. It is very satisfying when you make something work for yourself.

Getting started for non programmers can be daunting but is still very achievable.

I am really enjoying returning something to FGU by coding effects for PFrpg Feats and more, not coding per say but the problem solving and mental process is fun.

Taking over orphaned extensions with say a group of new coders and doing fixes or taking say an extension from 1 rule system and making it work in another (with permission) or even making from scratch could all be done. the idea of managing an extension once its live can be aa bit much, but a group of individuals that can test and offer fixes might draw in more new coders.

damned
September 12th, 2024, 03:04
There are also some extensions that are 5 lines of code and some that are serious stuff. Start small.

damned
September 12th, 2024, 07:36
If we look at the development costs we incur to develop smaller systems, we actually lose money on those. They are subsidized by sales on the top tier systems. If community devs build out 2nd and 3rd tier rulesets, then we don't really make money on these, but we don't lose money either like we would if we developed those in-house. It still takes internal staff time and effort to roll out community developed mods, and to manage those after release. Our best bang for the buck is to build functionality that improves the top selling rulesets and can be used to add functionality to the 2nd and 3rd tier rulesets as well.

The $$ obviously show this statement to be true.
And probably especially so with the release of a new version.

An alt perspective is:

People play D&D 60%+ of the time but they also play a lot of other systems and if other platforms have D&D and the other games that makes a compelling case for these other platforms.
If FG ever lost the rights to sell new D&D versions I imagine it would leave a crater sized hole in your cashflow.

Dudin
September 12th, 2024, 13:40
I don't know how much of the user base engages with extensions vs those who don't. It would be cool if there were stats for that if it was even possible outside of seeing forge subscription numbers.
I can only say I use them and I have grown to significantly value their function.
Like Silent Ruin said, it is hard to give up functionality you liked/grew used to after you had it. I am just one guy in an apparent minority of FGU users that use extensions, so I won't say I expect to sway SW decision making. I just know I will look for a VTT that gives me the functionality I want.

claedawg
September 12th, 2024, 15:35
I would really love to see a system developed solely for FG that showcases the power of a fully operational death s...I mean FG. I mean a full crunch system that is as fully automated as possible to show that no matter how difficult the game would be to run in-person, FG makes it a breeze.

LordEntrails
September 12th, 2024, 15:39
I don't know how much of the user base engages with extensions vs those who don't. It would be cool if there were stats for that if it was even possible outside of seeing forge subscription numbers.
I can only say I use them and I have grown to significantly value their function.
Like Silent Ruin said, it is hard to give up functionality you liked/grew used to after you had it. Given I am just one guy in an apparent minority of FGU users that use extensions, so I won't say I expect to sway SW decision making. I just know I will look for a VTT that gives me the functionality I want.
Well, one way to get a ROM of these numbers is to look at the number of forum subscribers, ~470k. Since FGU users need a forum account its a starting place.
The number of active users we can guess at 25-50%. And another guess would be GMs might be 20% of those. So maybe between 23k to 47k GMs.
Player Agency is the most subscribed extension at 2458.

So, order of magnitude, 5-10% of GMs have that extension.
Maybe half of them use it? (i.e. I have it but don't use it.)
Not trivial, but also not a must have for most folks.
Note, only 7 extensions have more than 1k subscribers. So extension use drops off quickly.

IMO, extensions are important to the community and health of FG, but only in terms of us diehards. But, that is important because we are the most vocal supporters of the platform and word of mouth is probably the biggest driver of new sales.

claedawg
September 12th, 2024, 15:43
Player Agency is the most subscribed extension at 2458.

I would say Player Agency is a requirement if you are running a hexcrawl or point crawl. It is the best way to share info with the players and keep GM notes on the same "document" for places and people on an overland or city map.

Cyrian
September 12th, 2024, 18:10
This gets to the very heart of the original post. Some of you are saying there are critical extensions that you have grown to love and essentially not live without. I run multiple games weekly and would be interested in expanded capabilities, especially when I hear how much you guys love some of these. However, I'm in the camp of not wanting to be hassled with extensions potentially breaking when there are game updates, so I tend to just not use extensions.

If there's a quick drop-off in usage in the top extensions, it seems like those few top picks would be the prime candidates for the OP's inquiry of how to get those incorporated in the SW ruleset.

Morenu
September 12th, 2024, 19:24
This gets to the very heart of the original post. Some of you are saying there are critical extensions that you have grown to love and essentially not live without. I run multiple games weekly and would be interested in expanded capabilities, especially when I hear how much you guys love some of these. However, I'm in the camp of not wanting to be hassled with extensions potentially breaking when there are game updates, so I tend to just not use extensions.

If there's a quick drop-off in usage in the top extensions, it seems like those few top picks would be the prime candidates for the OP's inquiry of how to get those incorporated in the SW ruleset.

Well thats my thinking entirely. if x percentage of users of a fully supported SW ruleset subscribe to an extension, then IMO it would be in SW interest for at least some of them, to reach out to the creator and see if they are interested in handing it off, perhaps offering a discount = to what SW makes from store products or less (so SW loses no money but coder gets a monetary benefit). obviously it depends on a lot of variables, but if an extension is popular among the people that use extensions of a ruleset, then to me it would be popular with most users if add to FG code.

Obviously if it is a paid for extension then to creator may not wish to share their code due to that. although it may be that focusing on the top extensions may mean that the extension sales have dried up a good bit and the creator may prefer to not have to continue updating / answering questions.

anyway, I hope that this topic did not cause any issues / hard feelings as it was in no way my intension. I just know there is no way I would be ok DMing or playing in a vanilla FGU at this point.

LordEntrails
September 12th, 2024, 19:46
Well thats my thinking entirely. if x percentage of users of a fully supported SW ruleset subscribe to an extension, then IMO it would be in SW interest for at least some of them, to reach out to the creator and see if they are interested in handing it off, perhaps offering a discount = to what SW makes from store products or less (so SW loses no money but coder gets a monetary benefit). obviously it depends on a lot of variables, but if an extension is popular among the people that use extensions of a ruleset, then to me it would be popular with most users if add to FG code.

Obviously if it is a paid for extension then to creator may not wish to share their code due to that. although it may be that focusing on the top extensions may mean that the extension sales have dried up a good bit and the creator may prefer to not have to continue updating / answering questions.

Doug addressed this in the second half of his response in post #11 https://www.fantasygrounds.com/forums/showthread.php?82623-Should-SW-look-into-adding-key-extension-features&p=724832&viewfull=1#post724832

SilentRuin
September 12th, 2024, 21:29
Word to the wise, there is no reason they would want to maintain someone else's code and incur that kind of work load.

First, most extension devs are bat shite crazy in their coding - one need only look at their code.

No way do SW devs want that kind of code maintenance dropped on them.

Second, some of us have told them TAKE THE CODE PLEASE... but they are not so easily fooled into taking up that kind of time sink where they have to delve into crazy code and try to figure out what to do when it stops working.

You have a better chance of showing them what is lacking with current FGU - show them solutions in extension land that fill that lacking area - and ask them to fix it. Most of those "solutions" extensions preset are also preference solutions that has many possible solutions (Problem is to wishy washy to solve perfectly and in one true solution).

Though with their limited resources, and their recognition that a lot of extensions fill lacking areas of FGU that are not easily or perfectly solved, they will likely not get around to most of those lacking areas.

Plus you have to have a harder edge with your user base than they are willing to do as a friendly business.

My powers of NO to all requests are renown. They don't have that. They will say - add it to the request list :)

A sort of No, but still, they are friendly about it :)

damned
September 13th, 2024, 00:19
If an RPG had rules that were actual rules and didnt have exceptions and exceptions to the exceptions it could be coded fully.
Sadly these RPGs are not the ones that people play so the rulesets will cover most of the use cases most of the time and that is fair enough.

Agreed with Silent Ruin - he at least knows how to code - I am a hack and my coding shows that to be very true.
SW will sometimes take the "idea" from an extension but they will usually not take the code because they code in a very specific manner and tend to be more rigorous in error capture etc than some hacks like me.

LordEntrails
September 13th, 2024, 02:57
61950

Navigat0r
September 13th, 2024, 12:13
Player Agency is the most subscribed extension at 2458.

When I use no other filters, the most subscribed extension that comes up when searching on the forge is the Aura Effect extension at 5390 subscribers. Player agency shows up as the 9th most popular extension. I quickly looked through 5 pages of results (50 items) and each item still had above 1000 subscribers. Granted, some of the items were map/portrait packs but there were still many more than 7 extensions to be found in the top 50 items. I am not sure how to exclude maps from the search results.

EDIT: Upon closer inspection it may be more accurate to say the 8th most popular extension on the forge as out of the top 10 items one is a skin rather than an extension. I also noticed that Played Agency is the only item in the top 10 with the "any ruleset" tag. The rest are specific to certain rulesets.

SilentRuin
September 13th, 2024, 16:14
Free Extensions? BAH.

The only way to keep the general riff-raff off your extension is to put a price on it.

Though sales can open that gate... still...

KEEP THE DOOR CLOSED!!!!! Its a way to stay sane for the author :)

LordEntrails
September 13th, 2024, 18:35
When I use no other filters, the most subscribed extension that comes up when searching on the forge is the Aura Effect extension at 5390 subscribers. Player agency shows up as the 9th most popular extension. I quickly looked through 5 pages of results (50 items) and each item still had above 1000 subscribers. Granted, some of the items were map/portrait packs but there were still many more than 7 extensions to be found in the top 50 items. I am not sure how to exclude maps from the search results.

EDIT: Upon closer inspection it may be more accurate to say the 8th most popular extension on the forge as out of the top 10 items one is a skin rather than an extension. I also noticed that Played Agency is the only item in the top 10 with the "any ruleset" tag. The rest are specific to certain rulesets.
Interesting. Not sure why I got different results, but won't argue :) I do know I filteres only on extensions so I would not get modules or themes or art packs.
The point is simple though and anyone can do the desired math, most GMs do not use extensions.

madman
September 13th, 2024, 23:28
Most GMs do not use extensions.

I would love to see the results of a poll on that.

BushViper
September 14th, 2024, 00:21
I use a number of TTRPG systems in real life, but online I exclusively play D&D.

That said, there are a handful of extensions that would result in me outright abandoning Fantasy Grounds if one of them stopped working. The additional functionality/quality-of-life that they provide are that high. Combat Highlighter is a prime example of an extension I refuse to play without. Tuning all the options to fit your taste can be a little annoying but once you get it tuned, it's like using a different platform. There was a two-week period when the extension was hosed and I came this <-> close to never logging in again.

Beyond that handful there are another dozen+ that would cause me an enormous amount of irritation if they no longer worked.

I'm not only one who feels that way. In fact, there are quite a number of us.

Extensions are written for a lot of reasons, but one of the primary goals is to provide a solution for a problem. FGU (despite how much I enjoy the platform) has a lot of mind-boggling inadequacies. Fortunately, extension creators have improved (or solved) many of those problems, but maintaining the solutions is a MASSIVE headache for both creators and users.

I know Smiteworks is a small company with relatively limited resources but addressing problems/shortcomings that the vast majority of the users agree upon would be a lot more useful than features like the recent work on the new map perspective. Every single person I have spoken to about it (roughly 35) has said it's "neat," but only 2 said they intended to use it. That feature is requiring a lot of precious manhours to develop and it isn't particularly valuable to the userbase. There are literally dozens of issues that would objectively improve the platform and require significantly fewer manhours to develop than video-gamifying TTRPGs and there's absolutely no debate about that. Creating a new feature is a lot harder than looking at someone else's working design and tweaking it so that it fits within your own framework.

I see a lot of excuses being made as to why more features from extensions aren't implemented and that's what they are - excuses. Of course, there are always exceptions, but no one is getting rich writing extensions and the vast majority of the developers would be over the moon to have their solution (potentially improved) and integrated into the base client. It's a win for everyone involved. Obviously, I'm not saying every extension needs to be added. Far from it. The cost/benefit needs to make sense.

P.S. I don't have the data to back it, but I suspect that the people that use extensions aren't the majority of users. I know a lot of people feel that they're too much trouble or they simply don't understand how they work. Some may not even know that they exist. Regardless, that's even more incentive to improve the base client because the plethora of solutions written by creators aren't being utilized by the bulk of users and it's a fact that the base FGU client is inferior to one with even a handful of the most useful extensions.

damned
September 14th, 2024, 00:23
I would love to see the results of a poll on that.

The pool would be skewed because most gms also don't use the forums much.

johnecc
September 14th, 2024, 01:07
I have been playing in a 5e game since Dec last year, and the GM does not use any extensions, and it has run just fine. I personally have around 50 extensions/mods, but don't really miss them in the game I am playing.

BushViper
September 14th, 2024, 01:19
I have been playing in a 5e game since Dec last year, and the GM does not use any extensions, and it has run just fine. I personally have around 50 extensions/mods, but don't really miss them in the game I am playing.

I don't think many people would disagree that a lot of extensions provide more benefit to a DM than a player. Looking at my list, more than half of the 80ish that I use don't directly benefit players, at all.

Svandal
September 19th, 2024, 07:20
Is there a good way of creating a backup of this version of fantasy grounds?
Could I make a zip file of all the files, and if an extension stops working we can all go back to that specific version of fantasy grounds?
Or would that create problems when hosting?

That could be an ok fix for us with our mix of extensions.
Only one of our multiple extensions provide more benefits to automation than the previously 6 years of fantasy grounds updates combined (not including extensions) so in my mind having this kind of backup would be a really good safeguard. We play pathfinder 1st edition.
And it will not work to say to everybody do not update, at some point somebody will update.

In this case even if something breaks we can just go back to the previous "safe" version and play that for the next x years before considering to update again.

Zacchaeus
September 19th, 2024, 14:18
No, there's no way to use a previous version.

Lazybones1969
September 21st, 2024, 18:22
I use extensions quite reluctantly, because they break so often when a major update to the FGU software is pushed through. If that didn't happen so frequently I would probably use more of them, as some of the ones I've looked at seem to add a lot of convenience for the DM. Most of the ones I do use were suggested by my players. I would love to see some of the ones that automate basic functionality (the spell tokens in Critically Awesome Essentials, cohorts in FriendZone, the extra advantage die in Elvish Accuracy, paladin auras in Aura Effects, etc.) added to the basic system. I know the Forge has an automated update system, but it doesn't work very well for me (I bought CAE before it was put on the Forge, and I have to go to the forums for FriendZone updates as the current updater can't update the Forge version for some reason).

LordEntrails
September 23rd, 2024, 21:11
Is there a good way of creating a backup of this version of fantasy grounds?
Could I make a zip file of all the files, and if an extension stops working we can all go back to that specific version of fantasy grounds?
Or would that create problems when hosting?

That could be an ok fix for us with our mix of extensions.
Only one of our multiple extensions provide more benefits to automation than the previously 6 years of fantasy grounds updates combined (not including extensions) so in my mind having this kind of backup would be a really good safeguard. We play pathfinder 1st edition.
And it will not work to say to everybody do not update, at some point somebody will update.

In this case even if something breaks we can just go back to the previous "safe" version and play that for the next x years before considering to update again.
Not really, but sort of. Each and every person would have to keep a backup of their FG Installation and FG Data folders. And then if they accidentally update or you decide you want to revert as a play group then restore to the backup. Even though people should have backups of their computer data, most people don't and when they do get confused by file versioning and trying to restore to the correct point in time.

From a practical point of view, this is effectively just not clicking Update. Or doing a Revert if someone does.

New content/purchases may not be available, because they often use new capabilities and won't run in older versions.

It also means that often people would not be able to play in other games that are updated (unless they Update/Revert) because sometimes the FG Client is not backwards compatible.