This is kind of something I've found about school in general. You shouldn't trust that if you do what you're supposed to do and get A's in all your classes and get good test scores then everything will be okay. I feel like things like GPA and GRE scores can't help your application; they can only hurt you. Just because no one around you is applying for REUs or trying publish things doesn't mean that you can also not do these things and be okay.
This might seem obvious to some people, but for others whose undergraduate is not stellar, this is something that needs to be mentioned. Speaking personally from my undergraduate experience, it can be hard to feel pressure to push harder to do extra when everyone around you is struggling just to pass linear algebra. I didn't even know what an REU was until I came to this forum because no one in the math department ever mentioned one. I never had an advisor in my math department. I think my undergraduate math department is not used to having students who set high standards for themselves, so they don't really put any effort into preparing students for grad school. I'm not saying the professors were bad; many of them produced quality research, and their classes were rich and engaging, but they never conveyed any ideas about our futures as mathematicians. I understand this struggle; I teach Cambridge A-Level Math in a high school, and it's hard to push the good students to A* level when half of the class can't even learn the chain rule. But it's still frustrating when I apply to grad school and then I find out that there were so many things that I missed just because I trusted the people around me that everything would be okay if I did what I was told to do.
I think I got lucky, because I'm fairly satisfied with the program I got into. I'm trying to avoid the same mistake twice now. I've already been assigned an advisor, so I've decided that before I go to school in the fall, I'm going to read and understand as much of his research as I possibly can so that if he gives me research related to his work, then I'll be closer to being on the same page as him. Even if my research in the program is completely unrelated to what my advisor is doing, at least I'll learn about his research topics to a considerable depth, which will give me a better foundation later on. I'm also trying to find results related to my own research ideas. Even though I'm just thinking about a few toy problems and not making much progress, I think getting used to thinking about new ideas and trying different approaches and not getting frustrated will help me build research skills for when I have better tools to attack problems. Basically I'm trying to dedicate every day toward having more opportunities after I finish my PhD in 4-5 years. I think if I do well, then I can get a decent postdoc and eventually become a professor somewhere with a good discrete math department.