It has been about 7 months since the start of the Foundry Virtual Tabletop 0.7.x
release series and now the exciting times of breaking changes and new features will start again with the release of the 0.8.0
alpha!
WARNING!
This is going to be an alpha release. It is not intended to be stable and will most definitely break many features, modules, and worlds. It is intended as a preview for developers to help them update their systems and modules, which are impacted by the breaking changes.
DO NOT UPDATE – wait for a stable release.
With the warning out of the way we will take a brief look on what this release has to offer and what you can expect going forward with the 0.8.x
release series.
This release is mainly focused on Next-Gen infrastructure which means its mostly intended for developers and not as much for the regular user. That’s not to say you shouldn’t be excited for this release as it lays the foundations for future features!
So WHAT can you expect from this release? Well, first off, expect a lot of BREAKING changes which means some things will no longer work the same way as they did previously. You might ask why make breaking changes in the first place? To answer that, let me allow to quote the creator himself:
I think Foundry VTT is already a great piece of software, but I think it can be much better still – and in order to accomplish the potential it has to do even more exciting things, some of the underlying software design was not where I wanted it to be to support long-term development work.
The main feature of this release is going to be the development of the Common Document Model, which will continue to take shape over the course of the 0.8.x release series. This feature is fairly technical, but the gist of it is unlike before where the codebase was strictly separated into client
and server
there will be a third set of libraries under the name common
which can be used by both the client and the server.
Some of the other features in this release are amongst other things the possibility to disable the canvas completely while retaining all other VTT features and thus greatly improving the performance for the people who just do Theater of Mind play, the possibility to have combat encounters that are not linked to a specific scene, and a new icons library for consumables because I for one love giving players the option of gathering 10+ different kinds of nuts!
We asked the League of Extraordinary FoundryVTT Developers to comment on this first 0.8.x update for their thoughts and advices.
To Foundry users:
0.8.0 brings a lot of amazing changes that will help enable some incredible functionality, such as a single glorious fight spanning across a 5 story building split across 3 separate scenes, tokens freely moving between them while a fire burns floor 2, and anyone still on it to a crisp.
It may take a bit before Players see all of this incredible work in a stable version, but the wait will be worth it!
To the Devs community:
0.8.0 is the first of several alphas in the 0.8.0 release train. You should not expect a beta for a couple of versions yet – alphas are meant for exploratory testing, not for general usage.
Expect things to change before a beta drops!
If you get your package running on 0.8.X, make sure to mark requiredCoreVersion as 0.8.0 to prevent users on 0.7.9 from installing it, and share your findings with the class on our Discord server in#foundryvtt-080-research
and on https://foundryvtt.wiki/en/migrations/0_8_0
As a development community, we should not encourage general users to be playing on 0.8.X yet – your fellow developers need time to explore how to best migrate, and the more users actively playing on alpha versions, the more extraneous bug reports packages will get about things that aren’t final yet.
We should focus on making 0.8.0 a period of exploring the wonderful new changes and providing feedback to Foundry such that 0.8.1 can be even more awesome.
We’re looking forward to exciting research and development together!
You can find the detailed Patch notes here. If you wish to see an extended preview of these changes, you can check the VOD from the last Twitch live stream where Atropos goes in-depth into the new architecture and what’s to come in the next versions.
And this is just the beginning of this new release series. The next release 0.8.1
will focus on overhauling the way audio is played and presented but don’t get too hyped up just yet and expect that it will take another couple releases for a stable one to arrive.
Would it be helpful for users to install this release on a test server for the purpose of helping find bugs in systems and modules? If so, how should those bugs be reported?
Hey! That’s a very good question. Not yet, at least not for modules and systems. Devs will need help but not just yet, it would be better to wait for them to release their first 0.8.x version.
@brkwsk Would you recommend people just starting Foundry development start using the current 0.7 release or jump to the 0.8 releases?
I’m assuming a large majority of the code will stay the same?
That would depend on how much of a rush you are to bring your “product” to Foundry users. It’s likely going to be several months before 0.8 has a stable release that will attract the majority of GMs. While we can see the future, 0.7 isn’t exactly rushing toward he light at the end of the tunnel. Until a significant number of plugin authors update their offerings, a lot of GMs are going to stay on 0.7.
The underlying data model and the API have significant changes for 0.8, so if you aren’t in a rush to market, I would start there. From what I’ve seen so far, the 0.8 API also seems to have better documentation, which is definitely a factor when learning something new. The down side will be that a significant portion of existing plugins/macros may either A) break or B) use deprecated functions, so it may be a bit tougher to find 3rd party code examples. The good news is that the support section on the official Discord is populated with a small army of knowledgeable and very helpful volunteers and this site has a dedicated forum section for tech help for developers.
@StoicalZebra I’d say it largely depends on how ambitious your project is if it’s just a small scale module it shouldn’t be much of a problem to go back and implement changes for 0.8.x. If your planning on something bigger that touches on a lot of core data or even your own game system I’d suggest to keep an eye out for the coming changes.
In any case if you want to start developing your own Foundry modules/systems you should really drop by the League of Extraordinary Foundry VTT Developers (https://discord.gg/7MkDagrhN3). They usually help out new and experienced devs and is a great place to ask questions and they will probably have even more insight regarding this topic.
@Talidor @brkwsk great – thank you for the informed responses! I’m just looking at a small project – mainly to help me improve my JS development skills.
I’ll definitely drop by League of Extraordinary Foundry VTT Developers on Discord for help. You guys are a great resource!