SoftShutdown2 — Shutdown all servers with peace of mind!

Is there any way to make this reserve ‘public’ servers? After the shutdown I want all players to return to a the same server, but have the server be public so it can continue to fill.

1 Like

Whenever I published my game, the players or I who were playing the game were never get sent/teleported to the Migration place

I did all the steps correctly, Here’s what I did

  1. I created a new place called Migration and made that place as empty as possible
  2. In the main game, I grabbed SoftShutdown2 and placed it to ServerScriptService in there
  3. I copied my game’s PlaceId and also copied the Migration place’s PlaceID, then I put both of them in the proper place (I copied those IDs from Asset Manager)
  4. I cloned the SoftShutdown2 script in every place under my experience, placed the SoftShutdownGui under ReplicatedFirst only in the Migration place

With everything correct, and when I try to test it by publishing an update on my game while I’m in a server, nothing’s working, not working as expected.

Do I need Merely’s SoftShutdown to make this system work? or is there a step that I missed? I felt like everything was correct but it was not working as expected, of course, I tried turning on Allow Thrid Party Teleports but it didn’t work either so I decided to remove the system.

I’ll add the system again and do the steps provided by the creator of this topic and the system someday…

Thank you make sure to bookmark it. :face_with_monocle:

This doesn’t seem to work anymore as it just shows the classic "The experience’s developer has temporarliy shut down the experience server. Please try again." It doesn’t teleport anyone at all.

I also get an error in my dev console "ServerScriptService.SoftShutdown2 v1.1:12: Incomplete statement: expected assignment or a function call" I can’t seem to figure out where it’s supossed to expect the assignment or function call.

I didn’t change anything in the script other than StarterPlaceId, MigrationPlaceId and ReserveCharacterPosition.

Let me know if what you did for the og creators script works, I’m having the same issue that you’re having, and I could not get Merly’s to work as well.

Hello im having a error of "ServerScriptService.SoftShutdown2 v1.1:36: attempt to index nil with ‘ReturnPlaceId’ " when im teleported to my softshutdown place. I did setup everything and this place is in my main place.

A lot has changed on the Roblox web backend since the original SoftShutdown was written in 2017. I’m curious - has anyone tried directly teleporting into the same Place ID instead of using the extra reserved server + 30 sec wait? I don’t see any reason why that should be required.

Also, at this point, we’ll automatically keep players together when they rejoin after a Migrate to Latest Update, so no need to do that with reserved server tricks

15 Likes

Why not just automatically rejoin them then? Seems like y’all have all the components in place for a system that skips having the kick message.

You’re correct that it’s a natural next step. We’d like to do that someday, but aren’t currently working on it. Until then, I thought I’d let people in this thread know about some potential improvements

1 Like

Yep! It works and it teleports players wayyy faster.

2 Likes

Seems to be broken:


haven’t changed any code, bar the 2 place ids

This is odd considering it should be passing over TeleportData. I’ll probably update this resource with SuperPat77’s recommendation and see if teleporting directly into the place will guarantee it being in a new server. It should hopefully be faster in this case and not rely on a secondary place in the experience to function.

Edit: Thanks for the report! Please let me know if you still have issues with TeleportData not being received properly in the latest version.

Update — Version 1.2 is out!

Brief summary of changes:

  • Removed the need for a ‘Migration’ place - SoftShutdown2 now teleports directly into the same place. According to a staff member (thank you @SuperPat77) and tests done on my end, this should be reliable enough to guarantee all migrated servers will be on the latest place version. This results in a much faster migration, almost half as much time as before.
  • Teleports no longer reserve servers. This should allow users to join your public server without any issues.
  • Optional Teleport Screen Gui feels more seamless, with it carrying over to the destination server properly, and animating on both ends, as well as additionally tweening in.
  • Cleaned up code (replaced ipairs with a general iterator, removed useless Luau syntax, …)
  • Fixed a couple of bugs
  • Improved the post structure to make it easier to understand what this resource does

What changes will I have to make on my end?

Considering the need for the ‘Migration’ place no longer exists, you can simply replace your copy with the latest version here, without the need of re-entering place ids. If you had ReserveCharacterPosition set to true, make sure to set that as well.

If you also used the Teleport Screen Gui, make sure to grab the new version here as well, as there are some improvements there as well.


As always, especially considering this update changes the structure of it a good bit, please let me know if you encounter any issues, and I’ll try to help as soon as I can! :slight_smile:

12 Likes

local TeleportResult = TeleportService:TeleportAsync(game.PlaceId, Players, TeleportOptions)
You set TeleportResult as variable but its never been used, did you trying make it for xpcall function?

Good catch, but TeleportResult isn’t ever used, it’s only set as a variable for ease of use, so feel free to remove it if you don’t want it there.

1 Like

Hey guys! So if I’m being stupid sorry but where do I place the GUI I want to dizplay while it’s teleporting?

1 Like

read the post properly mate…

I got it there and it does the normal roblox shutdown (refer to selected parts)
Screenshot 2023-04-06 at 12.37.41 am

Error for “unexpected client behavor” commonly causes:

  • Executor/Exploit exists / being injected
  • Using VPN
  • Using Private DNS (such as CF Warp/+)

Easiest fix:

  • Off your vpn/private dns/both
  • ipconfig/flushdns (cmd)
  • ipconfig/release (cmd)
  • renable it & repeat from flushdns to release
  • Done

I’m not too sure, this might be an issue on Roblox’s end, and it seems teleport codes aren’t documented well. Hopefully this will resolve itself quickly!