Ok So I will be using this thread to document my probably ultra-slow progress into programming.
I will be making a clone of Atari's "Asteroids", all to teach myself to program, and hopefully motivate me to do things....
So far what I am needing to do is:
Make a Title Screen
Make the Ship
Design the Asteroids
the UFO
Add a score board
Lives
maybe a level count?
I have 0 knowledge how to do this so it will be nice to see if I can do it!
I've thought about using sprites for everything game related, like the ship, UFO, and asteroids.... However I've also though about making it like the 2600 asteroids, without a definite sprite sheet and just use it's basic syntax to draw these things.
any tips would be very helpful as well! I look forward to making something we can all enjoy...hopefully!
Hello there!
We are on the same boat, I've begun just a couple of months ago :)
If you have 0 previous knowledge it will be tough to tame a tiny beast like Asteroids.
I suggest you to start with something easier like pong or Arkanoid (here's my attempt: https://www.lexaloffle.com/bbs/?tid=29815).
Once done that you'll grap the basics of interactive programming and you'll be ready to attempt a more ambitious project.
If you want to get an idea of Asteroids' complexity here's some Python code taken from an online course exercise:
https://gist.githubusercontent.com/csaez/5787626/raw/82a5ea0917d247a3945508d74c410835da00742e/ricerocks.py
You can select all the code, paste it here:
http://www.codeskulptor.org/
And run it.
I also strongly suggest you to start from the exercises and small games shown in the Picozine:
https://sectordub.itch.io/pico-8-fanzine-1
Have fun, happy hacking :)
thanks! I have started with the Picozine things, I made the little squashy pong game; I understand how the really basic things work, but I'll keep reading through it to see what I can do!
Oh man asteroids is more complex than I thought
If you are going to use sprites just be aware that you can't rotate the sprite itself, so you may need to make sprites facing multiple angles and then just swap them in. Or make a vector shape and then move and rotate that vector. That is how I've handle the asteroids ship. I am working on something in this vein currently.
ah yes a vector shape is best in this instance...I can't do an accurate 8x8 ship sprite and have it rotate with proper collision detection due to the 8x8 nature as far as I'm aware
You can always use bounding boxes around the ship and the asteroids and then just write the aabb type of collision function for it. Instead of 8x8 you could go like 6x6 or 4x4 etc. Just whatever 'feels' right for the ship. And then for the asteroids you can do the same based on their size. I was going to treat the bullet collision by using pget() and testing against color.
Hey folks, I recently banged out an asteroids clone myself. Feel free to browse the code if you are stuck / curious and I'm happy to answer questions! https://www.lexaloffle.com/bbs/?tid=32331
[Please log in to post a comment]