There are many things you can try:
1- Do not create all 3000 objects at once. Only create the objects you need and are visible on screen.
2- If you can disable off-screen objects, that would reduce performance usage.
3- Reduce the resolution of the sprite images of these objects.
4- Avoid using Loops and Every Tick events. It is a good practice to run the code only when needed, instead of Every Tick (whenever possible).
5- Use object pooling techniques (i.e. instead of creating a new object, you can reuse existing old objects).
6- Reduce repetitive and redundant tasks. For example, if a variable is common for the 3000 objects, then you can calculate it once, instead of 3000 times.
I hope this gives you a useful insight about optimizing your game. If you could share some screenshots of your game layout/code, we might be able to help you better.
Good luck!
I have 31 every tick events and turning them off did not do anything i did change the fullscreen mode from high to low it works but it's something i don't want to use because you can't see the character and background art and objects you can interact with i am now going to try the other tips you are giving and trying to figure out on how to do them