Ball Race SDK: A List of Needed Changes to Improve Custom Maps

I’ve had a blast playing custom Ball Race maps, it’s been something I’ve wanted for years, but there are some changes that definitely need to be made to certain things. I understand that custom maps are still buggy (which I completely get, my map still has two more bugs that haven’t been confirmed to be fixed in the next hotfix), but I hope some of these listed changes will be implemented after the bugs have been resolved.

These suggested changes were sorted in order from most important, to least important. Some of these changes may also improve custom maps for other modes, but I’ll be specifically targetting Ball Race in this list.

Needed Changes:

These are changes that are needed for Ball Race, and if not implemented, will start to cause some issues over time.

- Force Lobbies to Wait until Everyone has Loaded the Map

For lobbies with slower hosts, sometimes the custom map may take longer to load for players than expected. This can occasionally cause weird issues like all players except the host falling through the first level. Yes, this does suck, but it’s not horrible. However, in certain scenarios, this issue can be abused to break the first level on certain maps. Yesterday, when playing the custom map “Momentum” with 8 other players, my map took a while to load. When the match started, I played the level as normal and tried to go the correct direction of the first level, even though some objects hadn’t loaded in yet. The moment I stepped over an object that hadn’t loaded in yet, it immediately loaded in and caused my ball to quickly fly upwards in the air. Because of this, I was able to achieve an unfair record that was not intended by the creator:

Screenshot 2024-09-27 011857

Therefore, the game should not start until every player in the lobby is done loading the map. This should also apply to people joining the game in the middle of a match. If they are in spectator when a level finishes and are about to spawn in, but their map hasn’t finished loading, they should be forced to continue to spectate until their map fully finishes loading.

- The game should check if the player is on the most recent version of a custom map, and if not, prevent them from setting any records:

People (myself included) have experienced times where certain custom maps have not been updated to the most recent version. This by itself is not a huge issue, since people can simply go to the workshop and resubscribe to the map. However, the game does not care what version of a custom map you are on when you set a score. This issue can be massively abused. For example, on my map called “Downtown”, the 8th level has a skip that I did not intend for people to be able to take. If, I were to patch out that skip and request that that level’s leaderboard get reset, people who would not be on the newest version of the map would still be able to take the skip and get an unfair score, even though I would’ve patched the skip in this instance.

I think this feature should be implemented in a way to where the game simply checks the version of the custom map you are playing when you first load the level, and then never again. If the game detects you are playing an outdated version, a popup should appear saying that you are playing on an outdated version and any scores you set will not be uploaded to the leaderboard. This would ensure that if a level creator were to patch out any unintended skips, or simply change the way a level is laid out, that everyone is now forced to play on that version of the map as the creator intended. This feature can also be implemented for official ball race maps as well, since I would assume the game does not care what version you are on when setting a score.

Changes that would be beneficial, but aren’t needed:

These changes aren’t ones that are necessarily needed, but would be very good changes if introduced.

- Make the Golden Melon UI dynamic based on how many golden melons a custom map has:

The golden melons that appear in the top left of the screen when playing Ball Race will always be there, even if a custom map does not have any golden melons. For custom maps, it would be beneficial to allow the UI to change depending on how many golden melons are in a map. If there are none, none should be displayed. If there are one, two, or three, the correct amount of melons should be displayed.

- Custom Maps should show the level’s thumbnail in the server select screen, instead of the placeholder steam workshop image:

If a lobby plays one custom map and doesn’t change the name of the server, you’ll be able to tell what map they are playing. However, if they continue to play, the default name of the server (which will default to the custom map’s name) will not change, therefore not showing players what map a lobby is playing. This issue also happens when a lobby does not have a default name, since currently, the lobby name is the only way to know what custom map a lobby may be playing.

- Ball Race Replay System

Considering that the main appeal for people who continuously play Ball Race is usually trying to achieve good times, it would be nice if the mode could get some sort of a replay system. Players could determine how they want replays to be saved in the settings, by default the game should save no replays unless the player hits a certain button upon finishing a level in a map. Players could customize the settings to automatically save replays when achieving a new best, after completing a level, etc. These replays can then be browsed from some sort of menu accessible from the main menu, along with ways to easily clear out cached replays.

- Custom Maps should display the map’s difficulty when selecting a map:

When selecting a custom ball race map, when you look at a map, it does not specify what difficulty it is. Official maps do this and make it easy for newer players to determine what map to play, but this does not apply for custom maps. I understand that custom maps have a unique coloring to show that they are a custom map, but it would be nice if that coloring was removed and replaced with the color corresponding to the difficulty of a custom map, just like the official maps. An extra icon (either to the right of the title or in the bottom left of the thumbnail) indicating that it is a custom map could also be added for more clarification, so players do not mistake maps for official ones.

- Custom Maps should display the map’s author when selecting a map:

When selecting a custom ball race map, when you hover over a map, it should show (beneath the name of the custom map) who created it.

- Custom Maps should display the correct level count when selecting a map:

When selecting a custom ball race map, when you hover over a map, it does not display the amount of levels it contains. Official maps do display the amount of levels when you hover over a map, but this feature does not exist for custom maps.

- Custom Maps should have the ability to display it’s features when selecting a map:

When selecting a custom ball race map, when you hover over an official map, it will have a little box above the description showing what features the map includes. For custom maps, this feature does not exist. It would be great if creators could either select from a preset amount of features, or insert their own, so players know what to expect when selecting a certain map.

Force map authors to beat their own creations from start to finish before being allowed to upload, this feature should also carry over to the Minigolf SDK

2 Likes

This could potentially be beneficial, but at the same time this wouldn’t prevent many issues. It would be great if there were ways to ensure players don’t create hidden shortcuts that only the creator knows about (which luckily isn’t currently happening in any custom maps), but the editor would have to become extremely limited and have watered down features to ensure that no hidden creator routes are possible. In my opinion, it’s fine as is. If a creator uses a hidden route, people will know about that by seeing their time on the leaderboard, which could then result in that map getting it’s unit approval taken away. I don’t see creator verification as an extremely needed feature right now, and believe that the needed changes I mentioned would have more of an impact currently, but it certainly wouldn’t be a bad idea to implement verification in some sort of way without limiting the editor.

1 Like