<aside> ‼️ WARNING! Sending map changes in a large (>50 person) space may cause instability. Player changes have been tested and are safe at any scale. We'll update this warning when we're confident map actions won't cause performance issues.
</aside>
<aside> ⚠️ CHANGES: The Gather API is going to evolve a lot as the platform grows and matures. There are going to be plenty of breaking changes. We'll do our very best to give lots of warning, and try not to take away any functionality entirely, but know that you are building on a constantly shifting foundation. We've built in a robust system to warn you when you're using something we plan to remove (via logs from the Client), and we'll do our best to alert the community ahead of really significant changes. We're only willing to guarantee one week of backwards compatibility with old client versions, but in practice we've set up an elegant system for gradual change and we expect clients over a month old to function fine.
</aside>
If you have any questions or want to show off what you build, join our forum!
— <3, Gather Game Engine Team
The best way to learn is probably just to look at the examples below and see how they work — you should be able to run them out of the box! But, this doc provides some more explanation of what's going on.
First of all, you will need to have the correct permissions in the Gather space:
Second, you need an API key—get one here: https://gather.town/apiKeys
Third, grab the info you may need:
spaceId
— the id in the url of your space, for example oxrhEtb3sV7VutbQ\\GatherOffice
in https://app.gather.town/app/oxrhEtb3sV7VutbQ/GatherOffice (note the \\
not /
)mapId
— the id of the room of interest. You can find it in the room list of the mapmaker, here:We recommend copying one of the examples below as a template, but if you want to start from scratch, just npm install --save @gathertown/gather-game-client
.