I started game programming because of you. I still remember the day you uploaded minecraft video. I was a noob and couldn't even imagine building something like that. Now after 4 years, I've graduated and last month I made my first voxel game engine. These videos give me nostalgia of my college days 😟
You notice in the footage of the original Space Invaders, the projectiles are green when they are horizontally inline with the green shields. Space Invaders was displayed on a monochrome screen with coloured filters overlayed on it :)
I remember back in high school when I made space invaders in c++, at the time I didn't know classes so everything was very poorly hard coded... In the end it worked and I was very proud and its what pushed me to keep programming.
ive been making mastermind in c# over easter, as per a challenge set by my college. So i've also been putting my own spin on it, with nice menus, only using a console because i dont like windows forms, different difficulties, that kind of thing. The only thing i have left to add is a highscoring system that persists between playings. A simple file will do, i just need to remember the syntax
Your channel inspired me to make my own channel! I Do website development tutorials and web app tutorials! It taught me a lot, I aspire to one day help someone with development like you!
I can code like him, it just takes practicipe and logic, try and you will succeed. I'm doing the same with arts and it seems to work, getting human anatomy is so easy after a few trials! Good luck, if you want some help, he has a discord full of awesome ppl!!!
You've inspired me to learn C++ and make games in SFML. Dunno how, I've learned most of C++ and SFML in about a week. Maybe because I already know Java and some syntax is similar or even the same.
I would say its actually the other way around: Java is similar (in syntax) to C++. Anyway, I always recommend, for learning C++ a book called "Object Oriented programming in C++" by Robert Lafore. A big Gem
There's also a third libraru Edit : I mean there's a library called Thor which is an extension to sfml and there's also sfgui and tgui, they are both GUI library
Ok ok, lemme clear up. My statement wasn't very precise to what I learned. What I actually meant is that I've learned most of the syntax, not all the libs available in the language. Heck, I even have to use a reference very often to understand how a certain function works.
I enjoy this style of videos a lot. Hoping for more in the future, but I know you're busy. Do you think you will make this kind of video once a month? Or is that also hard with your current schedule? Either way, keep them coming!
In the original you could only shoot another bullet once your last one had hit something or gone off screen. This would have probably made the logic easier and more efficient for the arcade machine.
A few years ago, I made a SpaceInvaders clone for college (cranite.github.io/SpaceInvaders/) with programmer art, of course. But getting the swam of aliens to act in tandem was definitely the most difficult part of making the game, so my solution was to essentially have all the aliens be children of a parent entity. Each enemy can be hit independently, but remains stationary. It's the parent that moves, moving its children with it. Therefore you only need to check one entity, _the swarm_ as it were. If you do go on the website that I linked, press _B_ and you'll see what I mean.
Thanks! And I know it's cliche, but what I learned was picked up over time. I didn't learn from only one place, I learned from many places. I believe I _started_ from a book, which gave me foundations to begin creating my own projects. Whenever I got stuck creating a project, I did not give up. This is something MANY beginners do. One compiler error and they be like "Ughh this sucks" and give up. Instead, Google it, ask people, experiment etc. List of good books here: stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
Can you make a tutorial on how to install all the software you use to use SFML graphics. I'm trying to learn c++ but the other tutorials on youtube and the internet don't help very much. Thanks.
Im trying to make the predator prey cellular automaton in python, but its incredibly slow and not comparable to the one you made, is the problem in the way i implemented it or is c++ that faster than python ?
Python is an interpreted language whereas C++ is a compiled language, meaning that Python is significantly slower at runtime. You may have been inefficient in your implementation, but bear in mind you are already slowed down by Python's speed, regardless of how efficient your code is.
I would check out his community discord, there is a programming help channel and several smart people that I''m sure would be happy to help. The link is in the description.
Hopson Ratchet and clank was the first game I remember playing, I played Deadlocked first but my favourite is close between locked and loaded or R&C1. Easily the best sound tracks in any video game franchise personally!
Doesn't matter what you use. If you are a beginner, then I guess Windows and either CodeBlocks or Visual Studio. If you are more experienced, then Linux with whatever people use on there :p
Hey Hopson, I've followed you for a while now and started learning c++ because of this, I made a small game (non graphic console based) and wanted to see if you can do it better, if you want to try or see the source just answer this
So how are you storing high scores? I would think that different users logged in on the same machine would share the leaderboard, so it can't just go in appdata, as you would only see your own scores.
Do you think you could make a c++ tutorial. I want to learn how to code before high school so I'm ahead BTW I created a game on scratch called project meteor strike If you want to see it. Its not very good quality but it is my second ever game.
Hopson well...it can make your code run faster...although can you please give me an example of when to use multithreading because I am definitely confused on how to use it to make games
Yes, it can, but as the game was already running at fine performance levels, I had to need to overcomplicate the code using multiple threads. I'm not really an expert on the topic, so I probably shouldn't give an example of when it can be used :(
got it, while you replied, I was actually trying to experiment using threads to finds out how many prime numbers exist until n. But yeah, seeing your reply is a nice break because the experiment is a failure ;-; Also, yeah, agreed that multithreading is overcomplicating because I believe I heard that there's a saying that says, early optimization is bad
Hey hopson, i like the games you make and i wanna try them out for myself but not sure what application i need and how to run it. If you could help i would really appreciate it. (Im windows 10)
Ohh Short answer: You can't. The C++ code is translated into assembly code, which was then assembled by an assembler into machine code that a computer can actually understand, meaning it is nothing more than tonne of 0's and 1's, and the original C++ is long gone. For example, take this simple program that calculates Fibonacci numbers. i.imgur.com/DkI3vN0.png On the left, is C++, and on the right is the assembly code from it. Notice how it is basically unrecognisable, and how difficult it would be to reverse-engineer that :P I mean, there are technically programs that can "decompile" it sometimes, but it would be unrecognisable from the original source code.
Edi Lipovac ahh the PS4 one? Unfortunately I don't have a PS4 so I haven't actually played that one , but from videos I have seen, I don't like how much they changed :(
very good however, in the video of the original space invader, you can see that the lines of invaders move horizontally not alltogether you didn't implement that in your version sad.
"space invaders is a game" - Hopson 2018
top quote of 2018, and 2019 and 2020 and 2021
@@dabberdood2009 and 2022, 2023, and 2024
I started game programming because of you. I still remember the day you uploaded minecraft video. I was a noob and couldn't even imagine building something like that. Now after 4 years, I've graduated and last month I made my first voxel game engine. These videos give me nostalgia of my college days 😟
You notice in the footage of the original Space Invaders, the projectiles are green when they are horizontally inline with the green shields.
Space Invaders was displayed on a monochrome screen with coloured filters overlayed on it :)
SMART
I remember back in high school when I made space invaders in c++, at the time I didn't know classes so everything was very poorly hard coded... In the end it worked and I was very proud and its what pushed me to keep programming.
What's really good about it is how the sprites are accurate to the old design. _The nostalgia..._
ive been making mastermind in c# over easter, as per a challenge set by my college. So i've also been putting my own spin on it, with nice menus, only using a console because i dont like windows forms, different difficulties, that kind of thing. The only thing i have left to add is a highscoring system that persists between playings. A simple file will do, i just need to remember the syntax
I really like your videos! You're one of my inspirations to learn OpenGL.
Great video Hopson :) Keep up the good work, and good luck on your exams
Good job! You've inspired me to actually try and have a look at c++, instead of just looking over from my box of c# familiarity
Your channel inspired me to make my own channel! I Do website development tutorials and web app tutorials! It taught me a lot, I aspire to one day help someone with development like you!
Awesome job, man. I love SFML.
I wish I could code like you! :(
You can join his discord, there are lots of people who can support and help you
Nah I‘m german I don‘t speak English very well.
Don't let that stop you! You learn by talking to people, that's how I did it as well :) You don't need to know perfect english
I can code like him, it just takes practicipe and logic, try and you will succeed.
I'm doing the same with arts and it seems to work, getting human anatomy is so easy after a few trials!
Good luck, if you want some help, he has a discord full of awesome ppl!!!
hp 1611 this is the exact reason google translate exists
You've inspired me to learn C++ and make games in SFML.
Dunno how, I've learned most of C++ and SFML in about a week. Maybe because I already know Java and some syntax is similar or even the same.
You haven't learnt most of c++ in about a week.
I would say its actually the other way around: Java is similar (in syntax) to C++. Anyway, I always recommend, for learning C++ a book called "Object Oriented programming in C++" by Robert Lafore. A big Gem
There's also a third libraru
Edit : I mean there's a library called Thor which is an extension to sfml and there's also sfgui and tgui, they are both GUI library
No one learns most of C++. And that statement is also very broad as well.
Ok ok, lemme clear up. My statement wasn't very precise to what I learned.
What I actually meant is that I've learned most of the syntax, not all the libs available in the language. Heck, I even have to use a reference very often to understand how a certain function works.
Hey Hopson, great video. Ignore those codeblocks and vs nerds, you should ascend to the Vim master race
Fantastic Job. I'm quite amazed. If I wanted to be picky, the only thing I can think of is collision between bullets is missing.
Thanks.
Also, collision between bullets isn't missing :P
Is it no? My apologies then! Great job, Hopson
wowLinh 7:43 Bullets colide
Ratchet and Clank is one of my favorite games on ps2, and I thank you for putting this in your video xD
This is great man!
I love your work :)
Hopson has a talking space alien
wish you can fix the visual studio error Severity Cannot open include file: 'SFML/Graphics.hpp': No such file or directory
Really good video. I am still struggling to create a tic tac toe game :D
Have you ever tried to do a game with SDL2?
I have tried out using SDL2 before, but I didn't particularly like the syntax of it. I much prefer SFML :P
I enjoy this style of videos a lot. Hoping for more in the future, but I know you're busy. Do you think you will make this kind of video once a month? Or is that also hard with your current schedule? Either way, keep them coming!
Thanks!
My next video will have to after exams, which should be around early to mid-June :)
How to display FPS ??
Why did you go over from Codeblocks to visual studio?
Ratchet and Clank music :D
In the original you could only shoot another bullet once your last one had hit something or gone off screen. This would have probably made the logic easier and more efficient for the arcade machine.
This is really cool, but I couldn't get my mind off the fact that you used the Wupash Nebula theme from R&C 2 in the background.
ConstaChymic yeah right. That game was great, still is in fact
It's one of my favourite games of all time. I'm doing another playthrough of the game as we speak :)
I really like it too although I prefer the first game just a little more. I can recognize every theme in R&C 1.
Great Work!
Ive Done some c++ programs and i wonder how i download graphics.h
4:10
Beethoven's Silence
but can you code it in assambler?
Good Job !
A few years ago, I made a SpaceInvaders clone for college (cranite.github.io/SpaceInvaders/) with programmer art, of course. But getting the swam of aliens to act in tandem was definitely the most difficult part of making the game, so my solution was to essentially have all the aliens be children of a parent entity. Each enemy can be hit independently, but remains stationary. It's the parent that moves, moving its children with it. Therefore you only need to check one entity, _the swarm_ as it were. If you do go on the website that I linked, press _B_ and you'll see what I mean.
AMAZING DUDE
Add like a , real time online highscore, to compete with other players :)
IN the 70s they did all this in Assembly and have to create their own hardware :O
Yep, and it took an entire year.
Nice job dude, I considered do this multiple time but.... I got the attention span of a goldfish on meth.
How long did it take you to put the game together? (BTW great work!)
Vi V thanks, on and off it took about a week
The original space invaded had coloured filters on top of the screen, and I noticed you the missed the red one at the top of the screen
Whoopsie poopsie hehe :3 rawr
Hey, how do you make the FPS-Conter?
Hi, i just wanted to say you are a GENIUS, you complete everything like its a child's play. Also From where did you learn this stuff??
Thanks!
And I know it's cliche, but what I learned was picked up over time. I didn't learn from only one place, I learned from many places.
I believe I _started_ from a book, which gave me foundations to begin creating my own projects.
Whenever I got stuck creating a project, I did not give up. This is something MANY beginners do. One compiler error and they be like "Ughh this sucks" and give up.
Instead, Google it, ask people, experiment etc.
List of good books here: stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
Thanks for the Information, appreciate it.
Just a nit-pick, but the "S" sounds in the audio are very present.
Probably because I had to use my bad microphone as I don't have access to a better one for now :(
Sorry about this
Just use a "sibulence filter" over the audio track when editing.
I can't not hear it now. I blame you.
Can someone show me how to make sprite sheets like him and what program to use? I'm using windows 10.
Diego Perez I used a program called "paint.net"
You can get it at "getpaint.net"
Ok thankyou.
Can you make a tutorial on how to install all the software you use to use SFML graphics. I'm trying to learn c++ but the other tutorials on youtube and the internet don't help very much. Thanks.
There I have it installed. How can I make a simple sprite. Let's say a minecraft grass block.
Im trying to make the predator prey cellular automaton in python, but its incredibly slow and not comparable to the one you made, is the problem in the way i implemented it or is c++ that faster than python ?
Love your videos btw
Python is an interpreted language whereas C++ is a compiled language, meaning that Python is significantly slower at runtime. You may have been inefficient in your implementation, but bear in mind you are already slowed down by Python's speed, regardless of how efficient your code is.
I would check out his community discord, there is a programming help channel and several smart people that I''m sure would be happy to help. The link is in the description.
Euxiniar approves it
Finally you moved to Visual studio.
I love the minecraft in C++/OpenGL Series are you still working on that ?
hey hopson can you make videos about Unreal Engine 4 c++ cause I don't understand it please make a tutorial on how to make games on unreal engine!
I know nothing about Unreal engine, sorry
You lose a life when you get hit by the invaders? That happened to me as a kid. That must be why I watch people program on RUclips.
Next up in the Hopson Arcade should be Pong, if you can ;]
Can you do Galaxian?
@Hopson I've followed everything you did in your tutorial to link SFML to code::blocks but to no avail, is there anything else you would suggest?
I know ratchet and clank music when I hear it! Are you a fan or just like the music?
I love it, man, I have played through every game, some multiple times haha
My favourite is the second one (Ratchet and Clank Locked and Loaded)
Hopson Ratchet and clank was the first game I remember playing, I played Deadlocked first but my favourite is close between locked and loaded or R&C1. Easily the best sound tracks in any video game franchise personally!
Also the Beyond Good and Evil soundtrack. Great game too
Dragon Quest music :o
Hey! So i was gonna learn c++ and i just wanna know what is the best program for c++ and should i do it on linux or windows?
Doesn't matter what you use.
If you are a beginner, then I guess Windows and either CodeBlocks or Visual Studio.
If you are more experienced, then Linux with whatever people use on there :p
Hey Hopson, I've followed you for a while now and started learning c++ because of this, I made a small game (non graphic console based) and wanted to see if you can do it better, if you want to try or see the source just answer this
Why Visual Studio?
So how are you storing high scores? I would think that different users logged in on the same machine would share the leaderboard, so it can't just go in appdata, as you would only see your own scores.
John Długosz just a text file in the same folders as the .exe
Hopson can you send the source code of space invader with its libraries . I shall be very grateful to you . Thanks.
(the upper one doesn't work)
github.com/Hopson97/Hopson-Arcade
Why did you switch from codeblock to visual studio ?
What compiler do you use?
I wish there was more C++ library like sfml.
?
I mean a similar library like sfml
RUclips Video compression doesn't like your flashing images. But I do
Do you think you could make a c++ tutorial. I want to learn how to code before high school so I'm ahead
BTW I created a game on scratch called project meteor strike If you want to see it. Its not very good quality but it is my second ever game.
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
Hopson wow the that was really fast!!! I will check it out after my homework!!!
I just realized that my notifications did not work because I just saw your vid on c++, oops! Oh... April fools?
Yes sorry ahah
I'm gonna try to get one of the books anyway
How could I code like you. It's amazing!
Any multithreading used ?
No, it was not needed here
Hopson well...it can make your code run faster...although can you please give me an example of when to use multithreading because I am definitely confused on how to use it to make games
Yes, it can, but as the game was already running at fine performance levels, I had to need to overcomplicate the code using multiple threads.
I'm not really an expert on the topic, so I probably shouldn't give an example of when it can be used :(
got it, while you replied, I was actually trying to experiment using threads to finds out how many prime numbers exist until n. But yeah, seeing your reply is a nice break because the experiment is a failure ;-;
Also, yeah, agreed that multithreading is overcomplicating because I believe I heard that there's a saying that says, early optimization is bad
Yeah there is a saying, something like "premature optimization is the root of all evil"
Hehe, visual studio, yey
Nice, I always wanted to get into coding but I just can't understand it. Maybe one day.
Dope
lit
I have a suggestion: make a space invaders emulator! I just finished mine, and it was super fun!
x4 speed reminds me of the knightrider intro song xD
You could you re-upoad code Git hub link died.
Fixed
@@Hopsonn thank you
how did you learn to develop games?
Yeah, that's what I initially figured, but I just watched his Q&A and it seems he's self-taught. really impressive
Hey hopson, i like the games you make and i wanna try them out for myself but not sure what application i need and how to run it. If you could help i would really appreciate it. (Im windows 10)
I have a download link in the description. You just have to unzip the folder (Either using 7z or windows built in unzipper) and then you can play :)
Hopson thanks
Is it possible to see the source code from the download link?
There's a link to the source code directly above the download link lol
I know, it's just that I was wondering how the source code is "embedded" in the .exe and how to access it from there
Ohh
Short answer: You can't.
The C++ code is translated into assembly code, which was then assembled by an assembler into machine code that a computer can actually understand, meaning it is nothing more than tonne of 0's and 1's, and the original C++ is long gone.
For example, take this simple program that calculates Fibonacci numbers.
i.imgur.com/DkI3vN0.png
On the left, is C++, and on the right is the assembly code from it. Notice how it is basically unrecognisable, and how difficult it would be to reverse-engineer that :P
I mean, there are technically programs that can "decompile" it sometimes, but it would be unrecognisable from the original source code.
Hmm. Can the images/textures/dlls/sounds be translated to machine code and be embedded in the .exe already?
Probably, it could in the code as a big ass array of unsigned bytes.
i have one suggestoin for this game:
add a *boss at the end*
Why you don't make a pong game in c++? :(
you should do a ludum dare
Did I hear ratchet and clank music in the background?
Yes
Hopson I knew it, where is it from specifically? R&C 2?
Yes, from wupash nebula
Hopson thanks, the soundtrack is dope! Can't say the same about the most recent ratchet and clank :(
Edi Lipovac ahh the PS4 one? Unfortunately I don't have a PS4 so I haven't actually played that one , but from videos I have seen, I don't like how much they changed :(
what software you use to code?
Visual Studio
Are you ever planing on making a tutorial?
No, I am not a good teacher
Ok do you suggest any video tutorials that you have used I want to learn c++ but I can’t find any good tutorials
I would look here
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
Plane on, my child
Ok thx
1:50
both aliens died D:
Was there a reason for you using vs and not codeblocks?
Wanted to give it an actual try, and I actually quite like it :)
do you has try Emacs or Spacemacs sometime ?
My favorite is VS Code.
One of usssss
Coding is not for me :(
Why not ?
just learn
people write code, but forget to actually make something people enjoy
NOICE
How long are you programming?
A little under 3 years
Make a video with code bullet, where you make a somewhat original game, and he has to make an Ai to play it!
Suggestion.
Difficulty: medium
Make solitaire with that framework thing.
F R A M E W O R K
Visual Studio FTW!
very good
however, in the video of the original space invader, you can see that the lines of invaders move horizontally not alltogether
you didn't implement that in your version
sad.
Is sfml this verbose or is the code just convoluted as fuck?
What?
Hello?
mother ship should be red
I love game programming... But I can't be bothered to learn OpenGL :|
Minecraft 2
Nice, can I pay for Matrix-Styled skill transferring? £200 for your entire skill set for programming, thank you.
Oh, you switched to visual studio. Why?
wanted to give it a try
I know
who gave the video a thumbs down