Say you create a map for a level pack with the following:
With the level pack loaded, create a Tails save slot. The map A1 will be available to Tails through the level select nonetheless. Enter the map, as intended Tails "become" Sonic. Finish the map; now the save slot is Sonic's.
EDIT:
Let me describe exactly what happened when I was testing my level pack, before releasing it:
The level select part is not required for the bug to happen, just complete a map that changes the character. The game just changes the default character of a slot as you play, but doesn't assign separately the main character of the slot and the current character you are playing. Therefore, the game can't recover the main character originally created with once you leave the map that changed the character.
My workaround to avoid this in my level pack was replacing LevelSelect = 1 with LevelSelect = 0. The map with ForceCharacter can be safely played via Extras Menu.
Gitlab issue: https://git.do.srb2.org/STJr/SRB2/-/issues/816
Level A1
LevelName = Name
TypeOfLevel = Singleplayer
ForceCharacter = Sonic
SaveGame = true
LevelSelect = 1
With the level pack loaded, create a Tails save slot. The map A1 will be available to Tails through the level select nonetheless. Enter the map, as intended Tails "become" Sonic. Finish the map; now the save slot is Sonic's.
EDIT:
Let me describe exactly what happened when I was testing my level pack, before releasing it:
- Create a level pack whose maps are A, B, C and D. A, B and C are the normal SP campaign that can be played by any character. Only D is Sonic-only and an unlockable that will be available in SP level select if you meet the required ConditionSet (e.g. collect X emblems, GameClear etc.).
- Load the level pack and start a Tails save slot.
- Play normally until you meet the ConditionSet to unlock D. Finish the normal SP campaign.
- Go back to title screen. Now: 1 Player -> Start Game -> Select a save slot in which both the level select and map D are unlocked.
- Now in level select, select the map D.
- Despite the save slot you are playing now is a Tails slot, your character is Sonic. Ok, it's intended.
- Beat the map. Go back to title screen. The Tails save slot is now Sonic's (per
SaveGame = true
in level header). - Open the Tails save slot. You play as Sonic on map A.
The level select part is not required for the bug to happen, just complete a map that changes the character. The game just changes the default character of a slot as you play, but doesn't assign separately the main character of the slot and the current character you are playing. Therefore, the game can't recover the main character originally created with once you leave the map that changed the character.
My workaround to avoid this in my level pack was replacing LevelSelect = 1 with LevelSelect = 0. The map with ForceCharacter can be safely played via Extras Menu.
Gitlab issue: https://git.do.srb2.org/STJr/SRB2/-/issues/816
Last edited: