(Link to video)
California Games is a sport game for the Sega Master System. There are a total of 5 sport events: Half Pipe, Foot Bag, Surfing, Skating, BMX and Flying Disk.

Game objectives

  • Emulator used: BizHawk 2.5.2
  • Do all the events as fast as possible (“Complete in all events”)
  • Beat the high score for each event

Comments

For each event, the player has 3 tries, except for Surfing (5 tries) and Foot Bag (time limit). The goal here for each event is to get the minimum high score (if possible) and fail the other tries quickly.
High Scores:
  • Half Pipe: score > 10000
  • Foot Bag: score > 35000
  • Surfing: score > 5.5
  • Skating: score > 1010
  • BMX: score > 15000
  • Flying Disk: score > 777
Before the beginning of the first event, the player has to enter a name and choose a team, it doesn’t have any impact on the game except for 3 specifics name listed here: https://gamefaqs.gamespot.com/sms/588043-california-games/cheats Just for fun, I choose “TASBOT” as a name and “Santa Cruz” for the team, so it will be displayed as “TASBOT SAN” at the top of the screen at each event.
Links:

Stage by stage comments

Half Pipe

Going up and down across the half pipe, the goal is to do skateboard tricks with the right timing: hand plant, turns and aerial turns. The Skateboarder speed increases by pressing down while the skater is going down and pressing up while the skater is going up.
Addr Name Details
0x0078 Speed max at 180
0x0076 X position between 22 and 234
0x0075 Y position from -3 (252) to 169 (flat bottom)
The highest aerial turn gives 999 points (max), it’s only possible after reaching the highest speed (180). Despite the big number of points, it’s also not super fast: min 140 frames between two big aerial turns. The hand plant gives max 700 points but it has the great advantage to increase the skateboard speed faster and there are 96 frames between 2 hand plants.
Fastest would be only hand plants, but with 700 points per trick, 15 hand plants are needed to reach 10 000+ points, overall it’s not faster. The strategy here is to do 5 hand plants to reach the max speed (180), then alternate between hand plants and big aerial turns to get the 999 while keeping a good speed. For the last trick, a smaller aerial turn will save some frames and reach a score just above 10 000.
After that, we just need to fail the 2 other tries quickly by doing a too long right turn as soon as possible, holding down while going down will save some frame

Foot Bag

This event is about doing stunts with a bag (or a ball). There are 11 stunts in total, plus extra points for hitting the seagull and extra points for catching the ball after throwing it out of the screen. At the end, there are bonus points for the number of stunts, for instance 4 stunts will give 10 000 bonus points and 11 stunts (all) will give 66 000 bonus points.
This is the only event with a game over only after the time is up… which is boring for a speedrun. That’s where it’s fun to see all the possible stunts without letting the ball touch the ground.
Looks like there is some sort of RNG for the travel distance of the ball. When kicking the ball from one side, it goes up to the other side. the distance of where the ball will land would be different depending on the previous event (half pipe) and the inputs will be desynchronized.

Surfing

With 5 tries, surfing is about getting points by 3 types of tricks: turns, jumps and stays in the tube. Additional points will be given for staying on wave long, in order to get the maximum point, the surfer has to stay until the time is up. The player can only control going up (pressing left) or going down (pressing right)
This is the only event where the score is only shown at the end of the event. I was able to figure out the point system and display the final score in real time with a LUA script.
The following table describes how the final score is calculated from the different tricks. Each trick has a point counter that will be converted to a score format: “[0-9].[0, 2, 4, 6, 8]”, for instance “2.4” or “5.8”
Name Addr Count inc Point calculation
Jump 0x00A3 every landing jump and depending on the angle (+2, +3, …) count/10
Tube0x00A5every 128 frames while in the tube IF count < 3 THEN count*0.6 ELSE 1.6 + (count-3) * 0.2
Turn0x00A6every 8 frames while turning IF count < 160 THEN floor(count/32)*0.4 ELSE 1.8 + (floor(count/32)-5)*0.2)
Stay 0x00A2 every 201 frames [4-7] → 0.1 ; [8-11] → 0.3 ; [12-15] → 0.6 ; [16-19] → 0.7 ; [20-21] → 1.0
At the end of the event, if the score decimal is odd, an extra 0.1 will be added to the final score. In order to get a score of 5.6 fast, we need 22 jumps points (2.4) + 4 tube points (1.8) + 96 turn points (1.2) + 4 stay points (0.1) = 5.5 (+0.1) = 5.6
Addr Name Detail
0x0063 State 8 states (see table below)
0x006D Angle 16 angles: from 0 (horizontal right) to 8 (horizontal left) counter clockwise
0x0070 Speed starts at 128, min 64, max 192 (2 bytes fixed point)
0X006B Y position inside wave from 50 to 174
Surfer State:
0 paddling
1 take off
2 in wave
3 leaving bottom
4 jumping
5 hit by waves
6 bad jump landing
7 out of screen
Starting by getting the tube points is best because the surfer has small enough speed to stay in the tube long enough. A full loop will put the surfer very quick inside the tube and doing some quick up and down help to control the speed to stay in the tube long enough and get all the turns points.
About the speed, looking at 0x070 as an unsigned 2 byte value, it increases by 1 every frame on a horizontal angle, -12 when going up and +4 when going down. Depending on the angles when going up or down, we can have control of the speed.
For the jumps, doing small angles jumps is the fastest (angle 1 & 15), it’s faster as the speed is smaller.

Skating

Skating is about reaching the finish line while avoiding all the different obstacles (trashes, sand, cracks, ...). By rapidly pressing up and down, the skater will gain more speed, she can also spin if the player presses left and jumps with the button 2. You get points for every obstacle passed (10, 20 or 30 points), jumping over will give 2x the points and a jump spin will give 4x the points.
Addr Name Detail
0x006A Speed Start at 512, max = 952 (2 byte unsigned)
0X0090 Y position in track between 136 and 184
0X1F00 Collision flag 1 when hit obstacle
Doing 5 frames up and 5 frames down (or other way around) is faster. After each jump, the speed decreases, the up and down inputs can be started 2 frames before landing. The strategy here is to do a spin jump for all obstacles and make sure to have enough up & down between jumps to keep enough speed. Only one obstacle doesn’t have a jump because the next obstacle is too close, it’s not worst to slow down. After reaching 1010, we just need to fall and get 20 points at the same time.
The only RNG in this event is the ball bouncing around the track. This ball luck can be changed by pressing the button 1 (or 2) one frame later on the event intro screen.

BMX

Similar to skating: BMX is about reaching the end line while avoiding obstacles (tree trunk, barrel, rock). There are different size of bumps along the track for the biker to do different jumps & tricks. The points would depend on how big is the jump or how long the key is hold for the tricks:
Trick Min points Max points
Wheeling (holding + left) 100 200
Regular jump 200 400
Table top (jump + up) 500 1000
360 turn (jump + down) 1000 2000
Back flip (jump + left) 1500 3000
Front flip (jump + right) 3000 6000
The biggest trick, the front flip, can only be done when the bump is big, so the right key can be held long enough to get the 6000 points. There are 2 big bumps pretty early at the beginning of the event where the front flip is possible, before those 2 bumps we just need to get 3100 points.
At the starting line, it’s possible to jump at the top of the ramp, we can then do a 360 turn to get 2000 points. When jumping on a flat surface, we have enough time for a small table top, 2 of them give 1000 points. For the 100 points remaining, we can do a wheeling right after landing the first front flip by holding the left key for 5 frames.
After the 2nd front flip, we can do a back flip (or front) on a flat surface to get an instant game over (crash on the head).

Flying disk

The last event and also the most difficult one is about throwing a disk and then catching it. One part is to choose the speed & angle of the disk, the other part is to control a catcher by running left or right and diving if necessary. Once passing the difficulty of figuring out how to throw the disk, it’s a different story to catch the disk! Depending on which direction the catcher runs or dives, the disk has to be at the right height of the catch’s hand.
Addr Name Values
0x0078 Disk Y Position initial position at 139
0x0079 Disk Speed from 160 to 960 (2 bytes)
0x007B Disk move up time count increase every 2 frames, from 110 to 271, when reach 256, set angle flag to 0
0x007C Disk angle flag 255 go up & 0 go down
0X006E Catcher X position initial position at 1824 (2 bytes)
0X006A Catcher state 0 = stop; 1 = run; 2 = dive; 5 = catch
The Highest possible score is 490 in one try, which means minimum 2 tries are required to reach a score above 777. For this event we want the disk and the catcher to meet as early as possible, when the disk flies right and the catcher runs left.
When the catcher is running left, her speed is 3 px/frame and while diving (state = 2) her speed is 4 px/frame. For the disk, we need the fastest speed (960) with the lowest angle possible. If the disk move up time count (let’s simply call it angle) is above 218, the disk cannot be catched. I’ve tried 3 different speed while getting the lowest angle possible:
Speed Angle Frame #
928 197 0
960 (bigger) 197 +9
880 (smaller) 200 (smaller) +3
For the 3rd try, we can just throw the disk on the ground by pressing Left then right as fast as possible.

High Score Bonus

After beating an event’s highscore, the player has the chance to get an bonus after obtaining 3 identical cards:
  • 3 x Foot Bag Cards = Faster hackey-sack reflexes, ball and time go slower
  • 3 x Surfer Cards = New surfboard, faster speed
  • 3 x BMX Cards = New Bike, jump higher
None of those bonuses make the run faster so we need to lose the bonus game as fast as possible.

arkiandruski: Judging..
arkiandruski: Replacing the file with one that removes 57 frames of input at the end.
arkiandruski: The judges have had a discussion and we decided as laid out in Samsara's post that we don't want to accept a run that fails every event as fast as possible, and high scores are the next objective goal above that, so this run is acceptable as a fastest completion. With that in mind, I am accepting this run to Vault.
EZGames69: Processing
feos: Removing the branch, because this has been agreed to be the standard goal of this game. It's a situation when the any% flag and blank label both fit.
feos: Set rerecord count to a more accurate estimate provided by the author.

TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14776
Location: 127.0.0.1
This topic is for the purpose of discussing #7032: arnaud33200's SMS California Games in 06:01.11
Spikestuff
They/Them
Editor, Expert player, Publisher (2254)
Joined: 10/12/2011
Posts: 6324
Location: The land down under.
Light Spike of 57 frames of extra input left behind by the author. There is some menuing issues present in the input, but not like other Rookies where they mash through the stuff, this one takes it time. Just for future reference, cycle through using the 1 and 2 buttons after every menu. Not providing a patch up cause it desyncs at Foot Bag and there was actual time spent behind the input by planning stuff ahead and deliberately.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. These colours are pretty neato, and also these.
Synahel
She/Her
Joined: 1/19/2011
Posts: 259
Location: France
Having played this game to death as a child, this is totally my jam i'm admirative, the footbag part feels very good to me More than a "get record on every sport" category i'm more curious of what a perfect score could mean for each one, i know i grinded BMX to unfathomable scores with the Crazy Flips everywhere possible (never understood why keeping right pressed gave 6000 points when just pressing it once gave 3000, while the risks were exactly the same tho, quite an oversight in the game mechanics)
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
@Spikestuff sadly I realized about cycling through button 1 & 2 a bit late. I'm wondering, is it documented somewhere? @Synahel that would be interesting but a lot of work as well. For sure Surfing has the max score of 9.0 and for flying disk I found that a max score would be 1470 (big speed + big angle + left dive). That's true, BMX doesn't need too long of a key press to get the big points (41 frames out of ~60). Half pipe has similar mechanics but more difficult timing, especially the handplant trick where pressing not long enough will fail
Zinfidel
He/Him
Player (199)
Joined: 11/21/2019
Posts: 247
Location: Washington
Giving this one a 'meh'. The gameplay that was present was entertaining (and nostalgic!) enough that I watched the whole video, but the unfortunate nature of games like this that require you to just fail through the rest of your attempts means that those sections of the movie are decidedly uninteresting. This is a real borderline 'meh'-'yes' vote for me.
Emulator Coder, Experienced player, Judge (593)
Joined: 2/26/2020
Posts: 691
Location: California
arnaud33200 wrote:
@Spikestuff sadly I realized about cycling through button 1 & 2 a bit late. I'm wondering, is it documented somewhere?
For this game probably not, but "consecutive input lag" is fairly common throughout games (due to games seeing them as holds rather than presses), and can sometimes be avoided by simply using an equivalent function (but different) button.
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
Zinfidel wrote:
... but the unfortunate nature of games like this that require you to just fail through the rest of your attempts means that those sections of the movie are decidedly uninteresting. ...
I know, it's a trade off between all events any% (boring button smashing) and all events maximum score (more like super play)
CasualPokePlayer wrote:
For this game probably not, but "consecutive input lag" is fairly common throughout games (due to games seeing them as holds rather than presses), and can sometimes be avoided by simply using an equivalent function (but different) button.
Good to know, thanks :)
Joined: 1/27/2014
Posts: 181
Much prefer this to the button smashing instafails. Great job!
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
electricslide wrote:
Much prefer this to the button smashing instafails. Great job!
Thanks :) Also I realize the youtube video wasn't the last version. I update the submission with the new youtube video: https://www.youtube.com/watch?v=ZIpqEx7ur7I Not a big different though, just in the BMX event for the wheeling after the first front flip and for flying disk, a faster dive catch and without the 57 extra inputs, the final time is 06:01.099. I guess the submission details will be updated later?
Active player, Reviewer (276)
Joined: 12/14/2006
Posts: 717
Why not go for max score, then? By the votes it looks like this submission is going to be a Vault run Which severely limits the categories I can accept under the current rules. I don't think "beats in game high score fast as possible" is a category I can accept.
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
arkiandruski wrote:
Why not go for max score, then? By the votes it looks like this submission is going to be a Vault run Which severely limits the categories I can accept under the current rules. I don't think "beats in game high score fast as possible" is a category I can accept.
I was thinking to do an any% but it's kind of boring since it's requires to just get game over quickly. High scores is more fun to run Would a 100% category work? I guess it would require winning 3 bonus?
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
Actually if we consider not having having any bonus, that would fit for a 100% run. Also considering of the high randomness of getting those bonus in a RTA speedrun. I was wondering if not having game over for each level or reaching the goal (BMX and Skating), would be consider as 100%? I don't think there are check or flag in the game for that but there is an high scores screen having the name for each event would make the game fully finished?
Active player, Reviewer (276)
Joined: 12/14/2006
Posts: 717
could you explain how those bonus tokens work, please?
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
arkiandruski wrote:
could you explain how those bonus tokens work, please?
sure! for any event, every time the highscore is beaten, there is a bonus games where the player need to get 3 identical cards (like a slot machine). I didn't look at the code but having 3 indentical cards is RNG. When one bonus is unlock for an event, the player will have a special ability for this event (speed, higher jump, slower time). I described those 3 bonus in the "High Score Bonus" of my submission. For instance playing the game casually, if I want to get a bonus unlocked, I will get 10200 points at the half pipe, if I couldn't get any luck for the bonus I will do this half pipe event again with maybe 11000 points and try the bonus again. I would repeat until I got lucky.
Active player, Reviewer (276)
Joined: 12/14/2006
Posts: 717
Alright, based off what I see, I don't think passing bonuses should be needed to count as full completion. You can choose to pass or fail as you wish and just aim for the highest score possible.
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
arkiandruski wrote:
Alright, based off what I see, I don't think passing bonuses should be needed to count as full completion. You can choose to pass or fail as you wish and just aim for the highest score possible.
so yeah I would like to pass this run as 100%! Should I update the submission myself?
Active player, Reviewer (276)
Joined: 12/14/2006
Posts: 717
This isn't a max score run, though..
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
arkiandruski wrote:
This isn't a max score run, though..
yes this is not a max score, I though it would be ok for this run to be in "100%" category.
arkiandruski wrote:
You can choose to pass or fail as you wish
maybe I didn't understand this "pass"?
Active player, Reviewer (276)
Joined: 12/14/2006
Posts: 717
I meant pass or fail the bonus game, not the events.
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
ok so let's see the options we have here: - the run as it is now cannot be consider as a 100% category? - or 100% would mean having the best score possible for each event? - Does an any% run (not getting highscore) would acceptable for a vault submission?
Active player, Reviewer (276)
Joined: 12/14/2006
Posts: 717
How easy is it to fail optimally? That might be the deciding factor. I'm just guessing an any% would be trying to end all events as soon as possible with no regards to score.
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
arkiandruski wrote:
How easy is it to fail optimally? That might be the deciding factor. I'm just guessing an any% would be trying to end all events as soon as possible with no regards to score.
super easy! In fact I've already made an any%: https://www.youtube.com/watch?v=pgNevD5b2nQ I can do a separate submission for any% run. But still I would like to have this 100% approve, I think "Max Score" would be a separate category
Site Admin, Skilled player (1234)
Joined: 4/17/2010
Posts: 11251
Location: RU
Max score can serve as a full completion goal if there's no other way to define full completion for a given game. http://tasvideos.org/MovieRules.html#FullCompletionRules If it's not "maximum/all X", it's not full completion.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Active player (397)
Joined: 10/4/2015
Posts: 98
For example, there are other similar games. In FILA Decathalon, in the discus throw, the "fastest" completion arguably would be just dropping the discus. That's not very interesting. https://www.youtube.com/watch?v=lLte-pQZ0-0 So for games like that (and this one) going for highest score is probably a better goal.
Player (15)
Joined: 11/24/2012
Posts: 42
Location: Toronto (Canada)
Meerkov wrote:
So for games like that (and this one) going for highest score is probably a better goal.
I see, so yeah it makes sense this to be highest score possible. I was looking at the NES vault section, there is a california games in it. I guess it was accepted in the vault because during the time it was submitted (2006), vault rules were different? http://tasvideos.org/1020S.html