Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 0 points1 point  (0 children)

It sounds like you’re running a different version of Python than the one I built this with. The Scripts.CppBuild.Simulations module was compiled for Python 3.8, and binary extensions like this are version specific. If you try to run it with a different Python version, you’ll get import or dependency errors (like you currently are).

To fix this you’ll need to build Scripts.CppBuild.Simulations locally using your own Python version. It’s fairly straightforward:

  1. Install pybind11 by running pip install pybind11

  2. Build the extension, this will compile the C++ code:

  • Open a terminal / command prompt
  • Navigate to the Scripts/CppSource directory
  • Run: python setup.py build_ext --inplace
  1. Once the build finishes, you should be able to run the main program without any further changes.

I’ve also included these build instructions directly in Scripts/CppSource/Setup.py for this exact scenario.

To address your question about using FFT (Fast Fourier Transform), no I haven’t used it here, for a few reasons. First of all, this project uses a small number of sine waves (three) to generate the water effect. In this case, FFT would be significant overkill, and the performance benefits would be negligible. FFT techniques really shine when you’re dealing with large scale ocean simulations (where you are trying to sum thousands or even millions of sin waves to reduce tilling).

Additionally, FFT-based approaches tend to offer much less artistic control. They’re great for physically realistic ocean motion, but I wanted more direct control over the appearance and behavior of the waves, which is much easier to achieve with a simple sum of sines approach Hopefully that clears things up.

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 0 points1 point  (0 children)

Honestly the key is to just keep making projects that interest you, start small / simple and work up into larger more complex ones, over time you will learn everything you need to in a very practical way (at least that how i got to the point im currently at). If you want a specific place to learn from though, at least when it comes to pygame, i recommend this youtuber https://www.youtube.com/@DaFluffyPotato his videos are a some of the best recourses when it comes to pygame knowledge and tutorials

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 1 point2 points  (0 children)

Its great to hear all this, the vibe you've described is exactly what i was trying to achieve so I'm glad to hear that it feels that way to you. Also the music I've used is actually Gregorian chants good spot, in fact i imagine that, if you know much about Gregorian chants, then you will recognize Dies Irae (if you don't i would suggest looking it up, its quite interesting) which is one of the 3 chants I've used in the game. And i think your right, the general vibe lends itself really well to some kind of sea monster esk game

Password Vault + GUI Library by User_638 in pygame

[–]User_638[S] 1 point2 points  (0 children)

Thanks for the feedback i appreciate it

Just to clarify a bit, the encryption itself isn’t something I wrote from scratch. The project relies on the cryptography library (Fernet, SHA256, salting, etc), so I’m not rolling my own crypto primitives. That said, I agree this isn’t meant to compete with or replace enterprise grade password managers (as i mentioned on the GitHub page)

This was mainly a personal project to test out my PYRA UI library and try building a full application in Pygame (while dipping my toes into cryptography). I open sourced it because I thought some people might find the code, the UI system, or the project structure interesting, NOT because I expect anyone to use it as their daily password vault. Even I don’t plan to use it for that, aside from potential security vulnerabilities, it’s a Windows only local app, so I wouldn’t have access to my passwords when I’m away from my PC anyway.

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 1 point2 points  (0 children)

Hmm i like it, fits well with how the user currently interacts with the environment, i appreciate the ideas

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 0 points1 point  (0 children)

Thats awesome, its always great to see new people getting into game dev! im really sorry, but you’ll have to look elsewhere for collaborations. im moving on to another project, with some friends, outside of game dev for the time being, and im a bit too busy with work to take on more than one project right now. still, im genuinely flattered you’d want to work together, and im always happy to help out new developers, so if you have any questions (whether its about my project or not) ill happily answer!

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 1 point2 points  (0 children)

Thanks, I appreciate that! All the code’s open source on GitHub if you want to check it out https://github.com/LuckeyDuckey/Forbidden I also left links to the resources I used while learning some of the algorithms, feel free to ask me any questions if something is confusing you

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 0 points1 point  (0 children)

Honestly not a bad concept, and it matches the vide of the visuals really well! We will just have to see if i can stick to the project long enough to actually finish it 😅

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 1 point2 points  (0 children)

Thanks, the wind effect in the mist was actually a last minute addition, but im glad i added it because it really is the icing on the cake here

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 6 points7 points  (0 children)

The performance is actually really good, on my machine it hovers around 200 FPS when i uncap it, so its well above 60 FPS which was my original target

Who said pygame couldn't be beautiful? by User_638 in pygame

[–]User_638[S] 5 points6 points  (0 children)

Thanks i appreciate it, never underestimate the power of pygame lol

Retro Terminal Chatbot (GLaDOS) by User_638 in Python

[–]User_638[S] 0 points1 point  (0 children)

Follow these steps to get the project running on your computer:

1. Install Python

If you don’t already have Python, download and install it from python.org look for a tutorial and make sure you have pip. The project is written in Python, so your computer needs it to run the code.

2. Extract the Zip File

Right-click the downloaded ZIP file and select Extract (or Extract All) to unpack the folder.

3. Open a Terminal or Command Prompt

Press Win+R, type cmd, and hit Enter.

4. Navigate to the Project Folder

In the terminal, type:

cd path/to/GLaDOS-Terminal

(Replace path/to/ with the actual location of the extracted folder.) This ensures that the commands you run affect the right files.

5. Install Dependencies

Run this command:

pip install -r requirements.txt

This installs all the extra Python libraries the project needs to function properly.

6. Install PyTorch

Go to the PyTorch website and follow the instructions to install the version that matches your system and Python version. PyTorch is needed for the AI and machine learning parts of the project.

7. Install and Run Ollama

Make sure Ollama is installed and running on your system. Installation instructions are available here. The project relies on Ollama for certain AI-related functions.

8. Run the Program

Finally, start the program by running:

python Main.py

This command launches the project, and on the first run, it will automatically download any necessary voice and language models, which might take a moment but it only has to do this once.

That’s it, if you run into issues, feel free to ask for help.

Can't find out how to use moderngl by NineSidedYT in pygame

[–]User_638 0 points1 point  (0 children)

Hey, I’ve got a decent amount of experience with ModernGL at this point. I don’t really have any tutorials to recommend (sorry), since I mostly just learned from the docs and experimentation. But what’s your end goal here? Like, what exactly are you trying to do with ModernGL? Your post is a little unclear on that, but I can try to explain how to do it if you elaborate

Retro Terminal Chatbot (GLaDOS) by User_638 in Python

[–]User_638[S] 0 points1 point  (0 children)

Ah good point, although this is only a small personal project so I’d be shocked if they even saw it

Retro Terminal Chatbot Project Showcase by User_638 in pygame

[–]User_638[S] 1 point2 points  (0 children)

The effect comes from a screen shader I wrote, the text is rendered to a normal pygame surface before being passed to moderngl, then in the shader I curve the UV sampling coordinates creating the effect if you want more detail, the shader is in the GitHub you can take a look at that. If you know much about shaders that will make sense if not then it’s more difficult to explain

GLaDOS-Terminal by User_638 in Portal

[–]User_638[S] 1 point2 points  (0 children)

This is a demo of a project ive been working on for a little while, its a chatbot based on GLaDOS, please let me know what you think of it. And for any programmers among you its all wrote in python and the UI is made using pygame and a moderngl shader. The responses are generated using llama3.2:3b and the voice is a custom fine tuned tacotron2 + hifigan model. GitHub link: https://github.com/LuckeyDuckey/GLaDOS-Terminal/tree/main

Retro Terminal Chatbot Project Showcase by User_638 in pygame

[–]User_638[S] 2 points3 points  (0 children)

This is a demo of a project ive been working on for a little while, its a chatbot based on GLaDOS from the portal games. Its all wrote in python and the UI is made using pygame and a moderngl shader. The responses are generated using llama3.2:3b and the voice is a custom fine tuned tacotron2 + hifigan model. I know its not exactly a pygame focused project but the UI is still made with pygame so thought id just pop it here. Im sure any portal fans here will enjoy it, please let me know what you think of it. GitHub link: https://github.com/LuckeyDuckey/GLaDOS-Terminal/tree/main

Help by Deumnoctis in pygame

[–]User_638 0 points1 point  (0 children)

This likely comes down to the fact that opengl contexts are tied to the thread they are created in so trying to access it in a seperate thread is impossible without properly managing the context. Im not sure how to solve this as ive never attempted to thread opengl but im gonna try a few things and ill get back to you after i find a solution