lithekod / snake-ribs

A simple python code skeletons for making games.
MIT License
0 stars 2 forks source link

Feedback from first GameJam #25

Open FredTheDino opened 3 years ago

FredTheDino commented 3 years ago

*Note that this will be split up into more issues, just posting it here for now before I/we forget!*

TheZoq2 commented 3 years ago

Try to find a better alternative than pygame?

Ah, the age old question. Unfortunately, the answer seems to always be that pygame is probably better.

Though if we're writing a wrapper around things anyway, SDL might be an option.

FredTheDino commented 3 years ago

The problem with SDL, is that you have to compile SDL, or a wrapper around it somehow. Or is there a python sdl wrapper allready out there?

While arcade is written entirely in Python, it's one pip install and you're ready to roll. I don't think we can beat that TBH.

TheZoq2 commented 3 years ago

Yea, arcade looks neat.

I don't remember how SDL worked exactly, it might very well be that you need to do a bunch of woodoo. Perhaps @emiluren remembers more, I think he set things up initially in at least one of my pysdl projects

Emiluren commented 3 years ago

Yeah, there is pySDL I think it's called. Since pygame already has a dependency on SDL that shouldn't make a diffference

Emiluren commented 3 years ago

One advantage of using SDL directly is you can use SDL 2 with hardware acceleration and don't have to rely on old SDL 1.2 which pygame uses

FredTheDino commented 3 years ago

But why would we require SDL if we don't have to? If we can use something completely written in Python, that solves the entire problem, no?

I'm trying to communicate: Let's not use something based on SDL, since it requires a compiler and other things. Arcade only requires PIP and Python, so it should be easier to get started with. Arcade > SDL

FredTheDino commented 3 years ago

https://pysdl2.readthedocs.io/en/rel_0_9_7/integration.html#known-problems-with-sdl2-binaries As an example

But if you look at something like Arcade: https://github.com/pythonarcade/arcade/issues/742 They understand that people want to bundle it all together, and they're dedicated to making it work on Mac, Windows and Linux.

As I see it, we have two options.

  1. Write a custom python game library/engine, using PySDL, might be buggy, might have trubble installing on some platforms. It would be cool to have a custom python engine, and we'd have full knowledge of it unless people move, which they might. It's a lot more work to write, and we'd have to solve problems like text rendering in a good way. Totally plausible.
  2. Switch to Arcade, and just maintain a simple example game, maybe contribute to the project aswell. Arcade will be around even if we stop using it, giving the people who use it something they can actually use when not a GameJam. We could put more effort into making good documentation and a good starting point which might benefit other people using Arcade.

I think you know where I stand, lemme know what you think. :D

Emiluren commented 3 years ago

Yeah I know nothing about arcade, but I'm not opposed to it

FredTheDino commented 3 years ago

Tell me why! Give me a reason!

TheZoq2 commented 3 years ago

Haven't looked into arcade, but it does sound like a good idea

Emiluren commented 3 years ago

Tell me why! Give me a reason!

A reason for not being opposed?

FredTheDino commented 3 years ago

I must have missread, I missed your not, which kinda changed the sentence. ;)

FredTheDino commented 3 years ago

I think we need a meeting here TBH.

TheZoq2 commented 3 years ago

A reason for not being opposed?

Yes. Please write a 1000-2000 word essay about this. It should be on my desk tomorrow at 17