Thread: Breaking Extensions so much
-
September 23rd, 2024, 15:16 #21
- Join Date
- Dec 2020
- Posts
- 7
-
September 23rd, 2024, 15:17 #22
This is probably because in the past extensions were small things that did one thing (like implement Halfling's Luck, or other similar things). Extensions now tend to be beasts and do many things like rewrite character sheets and do things with the combat tracker and other essential features. The other thing which is impacting the situation is that over the past 18-24 months a lot of the underlying code has been re-written to allow more future proofing and also to allow more features to be added. The previous code was becoming too restrictive and needed to change to be more resilient to changes. Since many extensions interfere with this low level code and since many are bigger and touch way more areas of the code extensions break more easily and more frequently.
If there is something that you would like to see in Fantasy Grounds that isn't currently part of the software or if there is something you think would improve a ruleset then add your idea here https://www.fantasygrounds.com/featu...rerequests.php
-
September 23rd, 2024, 15:52 #23
There are two main issues going on here.
Extension/Ruleset Developers:
SW has few resources and has chosen, yes chosen, to not provide detailed documents on things that have changed causing huge amounts of time being consumed making simple fixes because they have to be traced from the error - the reason it was changed - to what can be done to get stuff back to working. This is a huge unnecessarily imposed time synch imposed on devs by SW. I've suggested making them do what we have to do - expand out all source we touch - and do searches when we change things to judge the impact and what will need to be changed by those impacted. I've been told they have no intention of doing this as its to difficult. Telling me dumping a few GB of expanded source ( i exaggerate hugely ) into a directory and running a search with modern computers with modern storage devices using something simple like notepad++ is not hard. In fact, with scripting - its pretty damn simple. Short of doing this - a minimum I'd ask is that any changes make some attempt to preserve naming or legacy calls or at the very least document what changes were made and why they were made so we can cut down on our time guessing at all that. As shown in the following thread - I actually documented every time consuming issue I encountered and what the change was and what I had to do to replace it. Simple stuff - that impacted multiple extensions (even now still) - that took tons of time I did not want to spend getting my stuff back to working as it was before LIVE dropped.
https://www.fantasygrounds.com/forum...uleset-Updates
Users of Extensions/Rulesets:
Users appear to be largely completely clueless to the RISK of using EXTENSIONS. As I say in every one of my forum threads for my extensions - EXTENSIONS = RISK - with a paragraph at the end of page 1 stating why. They somehow think the tiny dev team of SW has time to suck in extension code and incorporate it into their code base incurring all the RISKS and DANGERS that implies. Newsflash - 3rd party devs can be completely clueless on how to write safe code or clearly documented code with easily understood logic (just look at my stuff). So even if we would love to dump the responsibility of maintaining these extensions onto SW - the words "fat chance" apply to all but the most simple extensions. In fact, I have great fears that some extensions (looking at you AURA) that are heavily used and are in the works to probably have something similar done in SW will completely bust all the dependencies on them simply because SW does not have the time to actually grok what is being done and why - and simply go off on their own implementation losing functionality and dependencies that use the current functionality. Is this SW fault? No. Its a twisted mess to maintain your own code base with small number of devs already. The fact they allow 3rd parties to hook into their code and provided FORGE after some of us were booted out of DMsG (yes a whole other story most users are clueless about - why FORGE was created which is not the reason some posts state above) is a great service to 3rd party devs.
Conclusion:
Its a twisted messy issue that has no easily solved solution. I've both lambasted and defended SW from two different perspectives and if you don't grok that - too bad. It is what it is. Can things be done to reduce breakage of extensions? Absolutely. Can the RISK of extensions be removed?
Hell no. Not a chance. You use them - you accept the RISK - or you stay far far away from them.
IMHOFree(Forums/Forge) Extension(FGU 5E):
Paid (Forge) Extension(FGU 5E):
-
September 23rd, 2024, 22:36 #24
Tell that to Steam Workshop LOL... Does anyone here complain to Steam or the game publisher if their Game mod is broken? Thats what we would call Pissin into the wind.
I don't get it, I play with Mods in games all the time, especially if I have played through it once. EVERY Time the main game updates, something breaks in my mods, and Hell then I can't play at all unless I start new with only the working mods (Shutting off broken extensions MIGHT let you play in FGU). and Sometimes the updates of the Game or Mod breaks your save and you have to start over. I have no Fin clue Why people see Fantasy Grounds differently. And it is SO much easier NOT to update FGU then it is on steam.Last edited by Morenu; September 23rd, 2024 at 22:43.
My First Mod PFRPG - Feats Extended, focusing on PF1e Feats and Racial Traits automation. It is open to community assistance** accidentally deleted, If anyone grabbed a copy, PLEASE let me know**. Here is the forum Link.
40+ PF1e Extensions & Modules I use, with links.
PF1E Coding Effects - Spreadsheet
Discord: Morenu
-
September 24th, 2024, 00:20 #25
The idea of having separate update channels (or pipelines) is a great idea. And expensive is relative.
I've worked with one software company (as a user, client administrator, consultant, etc) that has a value of over $20 billion USD for decades. My current employer pays this company about $1mil USD per year for user licenses and support. This software company does not have multiple update channels and they have explored the idea more than once. It is simply too expensive and induces too much risk. Multiple release/update channels is a rarity in the software industry for a reason. SmiteWorks and FG are not going to be able to ignore those reasons just because it would be good for some of us.
Allowing third parties to deploy extension or integrated packages is not easy and even the companies with huge investments in their pipelines and quality control etc don't get it right every time. Remember CrowdStrike?
Can SmiteWorks do better? Yes. Informed and considered feedback from the community will help them do so.
Will extensions ever be without substantial risk? No, not unless one of you wants to give SW a few million dollars that would never be recouped.
Educate yourself. Make your own decisions and take responsibility for your decisions.
Problems? See; How to Report Issues, Bugs & Problems
On Licensing & Distributing Community Content
Community Contributions: Gemstones, 5E Quick Ref Decal, Adventure Module Creation, Dungeon Trinkets, Balance Disturbed, Dungeon Room Descriptions
Note, I am not a SmiteWorks employee or representative, I'm just a user like you.
-
September 24th, 2024, 01:26 #26My First Mod PFRPG - Feats Extended, focusing on PF1e Feats and Racial Traits automation. It is open to community assistance** accidentally deleted, If anyone grabbed a copy, PLEASE let me know**. Here is the forum Link.
40+ PF1e Extensions & Modules I use, with links.
PF1E Coding Effects - Spreadsheet
Discord: Morenu
-
September 24th, 2024, 14:34 #27
- Join Date
- Mar 2020
- Location
- Wales, UK
- Posts
- 322
I would point to the other major VTT which allows custom extensions - Foundry. Foundry has gone the multiple-channels route and it is ALSO a nightmare.
With FGU you click the update button, it downloads and unpacks everything, all from one place. You never gets a "file not found" error. You never have to start chasing down dependencies. You never have to be your own SysAdmin for all these packages. Conversely, if the core updates contain breaking code, which over the last year or so quite a lot of them have, it may break extensions.
If you are running a handful of extensions, as I am, this is a minor issue. The most I've had to do is to turn one or two off for a couple of weeks, or perhaps stop using them in a worst-case scenario.
If you are running 30-50 extensions, this is a major issue as the likelihood of at least one extension breaking approaches 100%, and debugging which one(s) to turn off is far from trivial.
The Foundry approach is that which I more commonly saw in Particle Physics code deployment - lots of people maintaining lots of code in lots of places, which theoretically gets pulled in when you request an update. You CAN request an update everything, but you don't have to - if you are working on your own extension, you can rebuild just that.
The downside is that in my experience even professional purchased products can go missing - the URL for where to find the package is no longer valid, and you're on your own trying to figure out where to go from there.
Foundry's model relies on more functionality being provided by modules, and they absolutely introduce breaking changes with every release. So they've had to go down the route of marking which version of the core software each add on module works with. The net result is that if you switch to the latest version, you will very likely find that even the core ruleset of purchased products hasn't caught up yet and you may be running at risk. You end up with a patchwork of modules and it's very rare to get everything all updated to the
latest core release before the next core release happens.
In my experience this is a hundred times worse in terms of GM and player experience than the "one button update" solution provided by FGU. Not least because the FGU core functionality of everything purchased in the store (rather than the forge) is guaranteed by SmiteWorks and they do - frankly - an astounding job of making sure that this does not break.
With Foundry, I was forced to lock the version when I got everything working for a campaign. I could absolutely guarantee and afternoon's SysAdmin work for myself if I ever wanted to update.
With FGU, I update weekly and if anything breaks, it'll be one of the small number of extensions which I just turn off for the week. And I rarely need to do that.
So for my use case at least, the way FGU does it now is far superior to the proposed approaches, which start going down the "separate update streams for different modules" route. IMO that would be a BIG mistake to make.
The only exception I might make that might be fair is to introduce a "download new purchases" button as an alternative to "Update everything". But honestly I'm not sure it's worth the candle, you'd get people with two year old code wondering why the latest stuff doesn't work with a download new purchases and the overall load on the team for debugging would increase.
My observation (and it may be biassed and wrong) is that the people who have the most complaints tend to be running Pathfinder; maybe 5E. I think it is the most mechanically complex system FGU support, and probably genuinely does benefit from all those extensions. I found a few 5E ones to be invaluable (SOMETHING to handle druid wildshape and polymorph is a clear standout for what is core PHB functionality) and a wide range of smaller ones that were useful. Thankfully for most of the other games I favour (SWADE, Vaesen, Alien, DCC etc.) they do not need more than the occasional helper extension.
So I can see the Foundry approach might be more useful for these patchwork systems relying on lots of extensions? TBH though given how hard it proved to get stable builds of Forbidden Lands and 5E to support few-month mini-campaigns on Foundry I suspect it would actually make matters worse for end users, if possibly easier for extension devs.
Cheers, Hywel
-
September 24th, 2024, 14:48 #28
- Join Date
- Dec 2020
- Posts
- 7
-
September 24th, 2024, 18:36 #29
- Join Date
- Feb 2017
- Location
- Greece or Iceland, depending on the time of year.
- Posts
- 203
As an owner of both Foundry and FG (though I almost exclusively use FG), I second what @HywelPhillips said. Updating Foundry is a pain in the ***. I would also like to point out that in order for Foundry to reach the functionality of vanilla FG, you need about 40 extensions at last count. Also, the fact that both functionality-altering plug-ins (what we call extensions in FG-land) and content material (what we call modules), are ALL called modules in Foundry and are all loaded from the same menu, which is also an annoying mess. Quite frankly, I have no idea why people say that Foundry is more intuitive. [My theory is that both FG and Foundry get a portion of new users that have left Roll20, so when they compare the two, they feel Foundry is more intuitive because foundry's interface is an iteration of R20's interface--thus reaching a false conclusion]
But, to be fair, when it comes to maps, Foundry completely blows FG out of the water. I cannot believe that it's been what? Four-ish years of FGU, and we still don't have directional lights for instance. But that's discussion for another topic.
On our topic, I'm a heavy extensions user. I run home-brew adventures on a home-brew setting. Many of my extensions are QoL improvements for my players. Some are QoL for me. Some help implement a couple of house-rules I use for my setting. Stuff BCEG because it allows me to do more automation and can thus do more elaborate cool stuff that I wouldn't to do at a table because they would require tedious book-keeping. MOST of the stuff I use are things useful to me, but not necessarily stuff FG needs. But on the other hand, some are stuff that since the days of FGC I could not understand why FG has not implemented them since day 0.
And I have not updated my LIVE channel.
Could SW handle updates in a way that helps devs more with breakages? Yeah. Many, many conversations have been made on the matter--particularly the last few months--and I know that SW is looking into it.
For users, the easiest, minimum effort stuff SW could do, is add an extra dialogue box before important ruleset of software update saying something like: "This is a major update affecting the functionality of the FG software (or the functionality of X Ruleset if it's a big ruleset update like we got with 5e). If you use extensions, they may stop working properly. Are you sure you want to continue?"
I believe that message would go a long way in reducing user outrage. Not eliminate, but at least reduce.Last edited by Vass_Dts; September 24th, 2024 at 18:38.
-
September 24th, 2024, 19:06 #30
I 100% agree with this. In fact I added a request for it on the Feature Request list back in March.
For everyone, please take a look and consider voting for it. You can find it by searching the Feature Request list for "Warning Msg for Non-Content Updates"
Problems? See; How to Report Issues, Bugs & Problems
On Licensing & Distributing Community Content
Community Contributions: Gemstones, 5E Quick Ref Decal, Adventure Module Creation, Dungeon Trinkets, Balance Disturbed, Dungeon Room Descriptions
Note, I am not a SmiteWorks employee or representative, I'm just a user like you.
Thread Information
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks