Rocketeer
- 5 Devlogs
- 20 Total hours
A rocket builder and launch platform based on one of my favourite games, Spaceflight Simulator.
A rocket builder and launch platform based on one of my favourite games, Spaceflight Simulator.
The physics is completely broken 😭😭😭😭. I’ve spent many hours trying to fix this but every problem I solve leads to 10 more (quite litterally). I’ve realized that I’ve been mixing real units (ms^-1/2, s, N, J) with pixels which broke everything. I fixed it but now I have other problems that I have no idea how to solve at this point.
My biggest problem right now is that no matter which direction I turn the rocket it only ever moves stright up. This has quickly become the most complex project I’ve ever made and I’m honestly starting to forget what some of the functions and files I’ve made even do.
This also means that every time I try to solve a problem I run into 10 more. As of now my thinking is that the velocity vector isn’t turning, but this is exaclty what I was thinking 4 hours ago.
My rocket also bounces now, for some reason 💀💀.
I’ve just about finished the build menu and now I’ve completely revamped the physics. This took way longer than I imagined and it still somehow doesn’t work.
In this session I added:
I’ve reached a point where my knowledge of high school physics isn’t enough, so now I’m having code and research. I plan of using AI to learn some of the more advanced concepts and help me with the integration with my code.
My next steps include making the physics system way better as it still is very unrealistic. I also want to add in a crash mechanic, space, the moon, a landing mechanic, and a trip screen where the user can view their whole trajectory on a map of space.
Overall, I’ve got lots of work to still do.
As I did before, I’ve gone over my code and changed a whole bunch of things. This time it’s mainly UI and UX upgrades like:
There is some other minor stuff, such as internal methods to find what parts are connected to what and other stuff like that I intend to use later during the rocket launch phase. There are a lot more coming, mainly the whole launch phase and a few more builder menu upgrades. If you guys have any improvement ideas please lmk.
Hello people, after having already restarted once, I’ve finally made some progress. Right now I’m going back and forth a lot as I’m learning new things while coding.
One example of this is the way I was storing position data. Initially, I was just storing x and y variables, but I later found out that Pygame has a vector class built in (pygame.Vector2()) that makes storing values such as position, velocity, and acceleration much easier. But of course, I only found this out after I had spent an hour using the first method. Even still, it wasn’t too much of a pain to overhaul, as the code didn’t change much structurally.
Aside from that, I’ve spent much of the 4 hours I coded today working on the page where the user builds their rocket. So far, I was able to make an inventory, stats, and drag n drop feature. I also became overly obsessed with the idea of the parts snapping together and spent 2 hours repeatedly failing to implement that before eventually getting there.
My next steps are finishing up the physics system that I started today and making the drag n drop system smarter so that you can’t just connect random parts together.
PS. Graphics overhaul is coming I just hate that part, so I’m leaving it to the end. dw, it’s not gonna be ugly forever.
Okay, I’m starting this new project, taking with me a lot of what I’ve learned from my previous project, the Gravity Simulator. That served as a way for me to take my knowledge of CS and physics and learn how to cleanly integrate the two. This new project is based heavily on the game (Spaceflight Simulator)[https://store.steampowered.com/app/1718870/Spaceflight_Simulator/] and is my take on it, with hopefully some of my own features if I’m able to get to that point. So far, I’ve already had to restart once after 2.5 hours of work. My current structuring of the project just wasn’t working out well, but I’ll be able to use a lot of what I’ve already coded.