- Home /
How do I create a shmup in Unity?
I have been making a top-down Shoot'em up for a school project and I'm having trouble figuring out how to create this project. How would I get the player to move on two axes and rotate when I press the left or right arrow keys? How would I make a moving background that changes direction and how would I create a boss fight. I have used Unity for 3 Years (making small projects) and I'm not sure how to tackle this one. Here's an example of the controls and scrolling background I would like to achieve: (The background starts to change directions at 1:30) http://www.youtube.com/watch?v=qBR8-zNHMxA
Im so bad at scripting :(
This tutorial is just for your reference. http://pixelnest.io/tutorials/2d-game-unity/table-of-contents/
Answer by Ekta-Mehta-D · Nov 28, 2013 at 09:31 AM
Sir, You can have scrolling background and allow ship to move up to certain area left-right.. And for boss fight , just spawn the bass out of the scene and then transform the boss so that it comes under screen area and don't stop scrolling background.
For basic start you can refer this link :
http://www.3dbuzz.com/training/view/unity-standard/simple-2d-shooter
Answer by fafase · Nov 27, 2013 at 07:34 AM
http://www.youtube.com/watch?v=LUn_VE31osw
(this has been turned into an answer)
Well, I just post a link because your requirement are too big. You claim not to know programming, that is where you need to start. Your game will just gain out of your skills. If you cannot even perform basic programming tasks, you will be quickly stuck. Programming is not different than other jobs, if you don't know, you won't get far.
People tend to think that doing a game is easy because it is more about interaction and look than the actual programming of a software. This is totally wrong, a game is a software. Just a funny one. So just learn C# to some extents, you do not need to know multi-threading or even how your GPU treats info, just the basic things, and then give it a go.
That was my lesson on life through programming games.
Thanks for the tip. :) I do know a lot about Javascript but not much C#. I was just wondering how I would construct the scenes etc. For example, to get the scrolling background, would I have the ship constantly moving forward or would I be better making the ship static and having the background move around it? For the boss fights, would I have to load a new scene or just stop the environment and spawn the boss? These questions have been bugging me. :/
Your boss could be on the same scene. Now two approaches, either your guy does not move and the world moves around him. That means you need to code the whole scene with timer or countdown of dead enemies.
You have a game manager that keep track of things supposed to trigger events.
The other way is to move the player in the world. This time you have less code but you need to position everything in the world and you need to design a long level. Easier maybe to start with.
The second actually would also have a lot of code since you should disable enemies that are too far and only enable them when you reach a certain position. Then by the end the boss is waiting.
$$anonymous$$y advice would be the second approach as you have a better visualization. Also, the first case makes debugging more cumbersome as you need to reach a part of the level to debug or develop the script in a debug mode (which is also good practice) so that you would start right from the spot you want to debug.
Your answer
![](https://koobas.hobune.stream/wayback/20220613122915im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Deadfrontier type crosshair 1 Answer
Camera Setup for Top Down Shooters 3 Answers
Mouselook in space, without a 'down' or 'up' 1 Answer
Camera looking down 1 Answer
Cinimachine virtual camera not updating when in standby mode 1 Answer