If I go into a game (we'll call it the main game) and publish it to a different game place so I can test and edit without affecting the main game will it affect the DataStore at all? I haven't really tried this in fear of corrupting the players data.
For this, you should use GetGlobalDataStore. The word says it all. Global Datastore. If you use Global Datastores, as long as you use the same datastore key, your data will async across multiple places. You can use this to transfer your old data.