Opening
In the opening there are 3 things that you can do in the opening. Turn left using one wheel turn right with one wheel or go to the white line after waiting 3 seconds of course now you make make this better 1. making the turn or drive to the white line faster but this may come at the cost of accuracy (which does not really matter in the opening) 2 having multiple codes so that you can adapt to certain bots if you know what they are doing.
Seeking Phase
In the seeking phase both robots have done the opening and are now "seeking each other out" so that they can attempt to push each other off the board when this happens they spin while their ultrasonic sensors look for the other sumo bot within a certain distance.
Defense
To make sure you don't fall of the board use light sensors. Use light sensors by placing them 2 inches in front of the wheels (It doesn't have to be 2 inches, that is just the recommended distance.) Set your code by saying when light sensor see white set B and C motors to move backward. If the sumo bot falls of the board you are out.
Attack
Last but not least is the "Attack" part of the code. To "Attack" write code that say something like "when ultrasonic sensor is less than 15" move forward at 100% speed and move forward.
Strategies:
Make your robots attacking system white to make the opponents "back up when see white" code activate and get away from your bot.
Try to make your bot as heavy as posable depending on your rules, one way to do that is to add weighted blocks.
Make sure to also use wheels with a lot of traction like the wheels in the EV3 sets.
Adding a cage to protect motors and sensors.
Add more weight over the wheels to create better traction or over the front spikes so they can’t flip your sumobot.
Clean your wheels before each match to help with traction. You can use a lint roller.