I don't understand how to attach a script to a button that gives it functionality. Whenever I do, it just creates a new button with the functionality, rather than the old one. There's something that's just not clicking properly, since I've spent about 4 hours trying to figure out how to make a basic button work.

You want to attach a script you already have to a button?

You can either drag the script from the filesystem onto your button in the scene tree. Or the cumbersome way is to select your button in the scene tree and click on the to attach a script. If you choose a path to an existing script it will be used, else a new script will be created.

I can't get the button that already exists to do what I want it to do. I tried using this and just calling the methods, but those didn't work. All that's worked is creating a new object in the script and having it do what I want.

Like, I can tell a new object to do stuff, but if I just try to say do stuff it crashes. I'm at work, so I can't post the actual code, but it's basically just what exists on the Button documentation page.

The code (and what you expect it to do) and your scene setup would help. I'm not sure if I understood the problem.