💡Inspiration

Cowboys were brilliant horse riders. They were skilled with the lasso (lariat), a loop of rope used for controlling and catching cattle. The work attracted men who were independent and courageous, as well as hard-working. Over time, the cowboy became a mythical figure, central to the idea of the American West. We were also inspired by retro raycasting games like Wolfenstein, DOOM, and Duke Nukem!

⚙️ What it does

It's a first-person shooting game based on the western cowboy style. We used the ray-casting method to implement the game. We used some ready-made and also self-designed assets for the game. When you start the game you can log in, signup, or not connect to the server and just play. If you connect to the server, you have to sign up or login and that will help you put your score on the leaderboard. We used appwrite to auth and also store the scores in the leaderboard.

🛠️ How we built it

We used Ray casting which is the methodological basis for 3D CAD/CAM solid modeling and image rendering. Raycasting is a rendering technique to create a 3D perspective in a 2D map. Back when computers were slower it wasn't possible to run real 3D engines in real-time, and raycasting was the first solution. Raycasting can go very fast because only a calculation has to be done for every vertical line of the screen. We also implemented the most optimized algorithm in raycasting, Digital Differential Analysis with the renderer to track everything.

⚠️ Challenges we ran into

  • We had problems with integrating appwrite because appwrite+pygame was never done before and we couldn't find any blogs, docs, or tutorials. The second issue was designing and finding assets for the game.

👩‍💼🧑‍💻 Accomplishments that we're proud of

  • We are proud to make this project functional and working to help gamers in a certain manner.
  • We are immensely proud of achieving a good team contribution with each of the members who have n contributed to the project in some way or other.
  • We learned many technologies and had experience working on them as well. Such as GitHub and the GitHub pages were something we were introduced to for the first time.
  • Used Twilio Sendgrid with Appwrite to signup and verify email and log the users

⚓ What we learned

We learned a lot about appwrite's Python SDK. We also learned the ray casting algorithms.

🤝 What's next for Cowboy Nukem

  • We want to have a live leaderboard
  • Send updates over Phone with Twilio

Built With

Share this project:

Updates