This week, I had to test the Season Mode data dialog on Xbox One and, no surprise, there were some bugs. It’s kind of a confusing system of asynchronously checking the cloud for a save slot’s data, running a fail/success/no data callback, then looking at the next slot. But I’m happy to say it seems to be functioning properly. It was extra work, so hope someone enjoys there being 3 save slots per player profile!
Something that’s been lacking for a while in Super Slam Dunk Touchdown is any concept of an “assist”. I know, it seems obvious that this should be in a sports game. It was going to be a feature for an after-match stats screen, which got lumped in with the Season Mode TODO list. Well, here we are!
So what’s an assist exactly? I had to look up assist rules for sports. It seems to be a matter of debate as to what counts as an assist. In basketball, it seems to be a “two dribble” rule: if you can score within two dribbles of receiving a pass, the player who passed the ball gets an assist. I’ve played a lot of matches of SSDT and heard people’s reactions to what they would consider an assist, so for now the rules are this: If a teammate passes the ball — and it must be a pass — a timer starts and, if a teammate picks up the ball and scores before that timer expires, you are awarded the assist.
There is currently no feedback in game that any of this is happening outside of the debug log, but I did get it implemented and tested. It feels pretty right when it happens, and I’m thinking of ways this could be presented on screen. In the current dev build, an assist will add to your MVP points. The person who scores will get more MVP points, but a decent amount goes to the assist player as well.
This is helping me gel the concept of how you will accumulate fans in Season Mode. There’s probably a magic formula where team total MVP points + did you win? – did you lose? = delta fans.
Last week I talked about scraping off the old Team HQ screen, the hub for all things Season Mode. I had built that screen a while ago and as suspected, a lot of it was broken. UI changes, save data changes, scene transition changes and the half-finshed work there all needed to be corrected or removed. Once that was done, the screen worked about as well as it did before.
The only buttons that do anything are Exit and Sports Pages. The idea for the sports pages was to provide a way to see the upcoming schedule and rankings, but I’m not sure in retrospect that this is the best way to present this information. I will probably hold out on working on the Sports Pages until I can actually play matches, and present things like accumulation of fans; it may make more sense to just show season schedule information after the match.
One of the things I had to gut was the Game Schedule from this screen. It wasn’t fully implemented, and didn’t really work. I believe the Game Schedule code is still good: it determines what teams play what other teams in what order throughout the season. Before I reintegrate this with the Team HQ screen and the next match set up, I need to create the Season Events List. I was calling this an Events Calendar, but it has more in common with a list than a calendar. This is what needs to be added for this screen to function, and for a season to be playable. The way it will work is this:
- If this is a new season, initialize the Season Events List
- Process the current event. This involves presenting information to the user, such as “here’s who you are playing next”, “so-and-so team beat the-other-guys”, or “here’s a special message for you!”
- The current event needs to be resolved. For a “next match” event, this means you play the other team, and either win or lose. For a message type event, this just means displaying the message.
- Remove the event from the list, and look at the next event. If there is one, go to step 2, otherwise, well I guess you finished the season didn’t you? Start another one and go to step 1!
Once this system is created and tied in with the Game Schedule, I’ll have a playable pre-alpha Season Mode. Very exciting! This begins next week. Until then, stay sportsy!