Tumgik
#my phone. as for how: i actually traced the original sprite
miharuhebinata · 18 days
Text
nuggeto
+ original sprite for comparison
Tumblr media Tumblr media
7 notes · View notes
sbcafe · 7 years
Photo
Tumblr media
When I was starting out and tinkering with Game Maker, I also realized that I had to make some sprites.
Technically, I could have gone the whole Thomas Was Alone design and made them all squares, and typically that’s what most people do when they first create!  They want to get the gameplay working first so as to not waste time on graphics that might not be used.  (I have a whole slew of graphics that never made it to the final game, I’ll share those at some point.)
I have been using Piskel all this time for all my graphics as it’s basic, simple to work with and has an easy-to-use animation tool.  There was only one time that I used GIMP for some quick editing, and that was for the final boss’s mask gradient. 
One of the very first sprites I drew up was the player’s Ship, of course.  It became my flagship icon for everything (icons, branding, etc) so I never really changed its design after creating it.  I’m silly-proud of the little red flashing lights that remind me of radio antennae at night.
When I first was tinkering with the Game Maker engine, I actually didn’t even have scrolling or an end-level boss!  It was a one-screen shooter (many people compared it to Galaga when I showed it off) and I had nothing but the Green Enemies in random waves and that big grey ship.  I’m really proud of the 3D sprite effect I made on that, but I never really used that effect that often.  It has a charging-laser effect that actually took me a long time to figure out correctly, as I hadn’t figured out “Parents” yet.  That will be another article.
The little red enemy was the first time that I started working on rotation with the enemies. I wanted him to trace my path and fire directly at me.  He had to be slow-moving but still difficult, so he had higher hitpoints than the rest of the enemies on the first stage.  Its programming is actually very simple.  It moves towards the player’s ship with a slow speed, but its direction (and the rotation of its sprite are literally pointing from its origin point to the player’s Ship.  No matter what you do, that little red ship has a bead on you.
However, I continually found out new things along the way with the game.  Destroying the red enemy was fine, but I forgot to check what would happen if the player’s ship got destroyed instead!  Halfway through my testing, I came across this and I got confused, and I had to start learning how to read the error log.  As the red enemy looks for the player’s ship every frame, the very moment that the player is destroyed, the game crashes, as the red enemy no longer knew what angle to point itself.  (In previous iterations of Game Maker, if the game made a call like that and didn’t have an answer, it used to return “0”, which if you think about it, is good to prevent crashes, but horrible for debugging and poor practice in programming in general.)
So what do you do when the game can’t find something?  Lucky, Game Maker has a simple “if object exists” check.  So I have the red enemy check for the player’s ship, and if it exists, it angles itself towards it.  If the ship does not exist, the red enemy gently hovers backwards and holds its angle.
Something I look at when I’m programming is efficiency.  I can only imagine that Level 1 of my game is not very optimized as it was the first stage when I was just starting out, 2 years ago.  Levels 4 and 5 are much more streamlined in their programming.  Considering that I’m programming, I’m always concerned that I’m putting too many “if-then” statements into the game, as the game has to constantly check for these conditions and act upon them.  However, we are dealing with mobile phones that can handle thousands, if not millions, of checks every second.  That doesn’t mean that I can literally run “if then” all the time, but, just like my code, I can work on learning better techniques to optimize how the game is run.
This might be a little premature to say, but I called Space Shooty with the “2016″ moniker with the thought that maybe down the line, I’ll remake it to see how far I’ve come.  Maybe I’ll release “Space Shooty 2024″ and that one will only take me 2 months to make instead of 2 years.  However, I already have a lot of ideas in my head and Id love to share them all with you, so we’ll just have to see what comes up next!
4 notes · View notes