Hi!
(First, excuse my English, nobody's perfect!
)
I'm making a space shooter, mostly to practice my skills with game maker, and I'm facing a design problem. I'm not making a "traditional" SHMUP, but the game have some of it's aspects. The scrolling on the Y axis is automatic (the background moves, your ship don't), every ship is facing the same direction (top of the screen), some ships can only attack on one axis, and sometime only in one direction, some ships can have turrets with a variable range of freedom (360° max).
I want the game to provide the feeling of space dogfights, but without allowing the player to rotate the ship. I also want the game to give the feeling of freedom you should have in the infinity of space.
So far, I've came up with tow solutions. First, teleportation from one side of the screen to the opposite side, ala asteroid. You keep your speed, just reappear on the opposite side, on X and Y. But I don't like the feeling of it, it's not really easy to grasp, you can go out of the screen and reappear without really anticipating the consequences of your movements, specially when moving fast and diagonally. I find it quite confusing.
The second solution is to allow the player to move inside a box centred on the screen, but to scroll the background when the ships hit the border of that box. When it does, every other object of the game are affected by your own speed, to give the feeling of going away from objects. It's not so bad, but when you hit the border of the box, if it's visually to close of the border of the screen, you move without seeing much in that direction. It's especially true when moving forward. Imagine some asteroids flying by, if you're on the top border of the box, you make everything go faster
and can't see anything coming.
I could push it further and say, ok, the player is centred inside the screen and don't move, but everything move accordingly of his speed. But I'd like to keep the feeling of the screen as an arena.
I feel like it's not really solvable, but if anyone have some advices or experience to share, I'd be happy to discuss!