Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Test Builds & Distribution (online multiplayer)

A topic by Trybox Interactive created Jul 25, 2018 Views: 522 Replies: 1
Viewing posts 1 to 2
(1 edit)

I'm currently making a multiplayer game and, as you can imagine, it's practically impossible to test a match without quite a few people. The online framework is in place (matchmaking, creating a game, joining a new game) and uses Unity's cloud servers. There is an issue where I'm curious if anyone else has dealt with the same potential problems.

is it possible to provide a (free) copy of the game to a tester, but retain the ability to revoke access?

You only get a certain amount of concurrent users when using Unity's online servers, and anything else is charged at an additional rate. This is not really ideal until a public launch. The main concern is this;

how to deal with testers who receive a free copy, but then vanish? (they can not be contacted... or refuse to reply, yet still have a copy of the game) This would mean additional test copies would have to be given out - increasing the final price I pay for server usage (without an increase in revenue earned from sales). Ideally, the ability to revoke a key (or something similar) would be the best option. However, I'm not sure what means are available to stop this being a potential issue?

Example. 50 free copies are given out for testers (the agreement being, in return for testing, they basically get a free copy of the game which is theirs to keep).... but only 10 people actually turn up in Discord to do testing. The other 40 people don't bother to help us perform stress tests, but still take advantage of their free copy and use the online servers I pay for to play online.

I would have to give out another 40 copies (90 in total) and hope all 40 people turn up for testing. This could result in 100 + copies given out in order to get just 20 regular testers. Those who offer to test but then don't - still get a free copy of the game and use additional server bandwidth. 




(1 edit)

figured out a solution so going to leave it here for anybody that looks for something similar in the future.

1) link each download key with a custom key value using persistent data storage (CustomKeys.dat)
2) in the application, check the server connection code is correct before any connections are made (increment it every time you push a new build).
3) should a tester become inactive, revoke the key manually by removing it from the list of allowed keys.
4) the user (who's key has been revoked) will not be able to connect online until they update. However, if they were able to update the files, their key will be revoked and they will not be able to access the multiplayer service.
5) They shouldn't be able to update to new files with their itch.io key revoked, but even if they could they wouldn't be able to use multiplayer.

This topic has been auto-archived and can no longer be posted in because there haven't been any posts in a while.