#pyweek-game-jam
1 messages · Page 13 of 1
We've typically avoided games that are massively dependent on precise inputs for pyweek, just because it's so much tweak/polish to feel nice... (not to mention that python libraries and engines tend to be... not optimized well?)
unless you can do everything in parallel for which you'd need a massive team and hyper focus to get things done exactly right with time to be tested and possibly change the game based on feedback
so like... laggy gameplay is a problem
yeah, rhythm games feel like a poor fit for python
I don't think some things are possible. It's like asking nine women to have a baby in one month
we've done a few "actiony games" that did decently well, and one that did very well... but the one that did very well was extremely lightweight https://pyweek.org/e/hoarse_oddish/
try with the command line argument to set the resolution, python run_game.py {height in pixels} {0 for windowed, 1 for fullscreen} for some reason it was displaying 720 and 1080 fullscreen on my secondary monitor, any other resolution on my primary...probably going to default it to windowed 😦
It's a wasteland 🙂, the future, 2022
I was assuming that red layer was a deliberate artistic choice :D
this is why I hate windows. How do I even try .exe files!!
yeah, if someone doesn't rebuild the pyinstaller bootloader, you can't run the exes
I could just run from source >:(
You invented the band Steam Powered Giraffe :D
it just doesn't let you? Windows really is that dumb? It lets all sorts of viruses in, but the false positives, top notch protection against nothing! Can't override their wrong judgement.
What's the deal with the pyinstaller bootloader?
you can override it, but it is non trivial
and windows defender is pretty good against viruses
Nice.
pyinstaller is easy to use to create viruses, so the wheel is detected as a virus
if you build it from source, you don't have that problem
you can even do that in a github action (though not for linux)
I guess I might have to build from source
you can look at https://github.com/python-discord/aaaaAAAA/blob/main/.github/workflows/release.yml to see how we set it up for aaaaAAAA (though we didn't complete the game on time)
4a4A
We made so many tiny tweaks to balance our game just right…
Balancing is hard
oh yeah
having some dedicated playtesters is super useful, to put fresh eyes on your game and tell you what their experiences are
this time we were very much "oh no, just get it working" for a lot of the time, so all of our balance work and even a bunch of the raw mechanical stuff was done in the last few hours :p
having an idea as to what is going on is super helpful I imagine as well. Being on a team of first timers is quite the experience. We learned a ton, even made some branches on Saturday
apparently you haven't been using Panda3D then.. idk about pygame/arcade/etc.. but Panda3D brings massive performance and is extremely optimized for pretty much anything you can throw at it..
Panda3D been around for a very long time, thus there's also a lot of work behind it to have it at the point it is today
nice!
I mean, I haven't used Panda3D - I don't really know how to code python
and most of my knowledge of the game tools are from a decade ago
I'll recommend it to our programmers to have a play with
Since most of our game coding experience was from a decade ago, I was still following a bunch of recommendations like "make all the textures square and powers of 2 so the rendering pipeline is less stressed and we reduce lag" - if there's newer libraries that cope better that's super good news
That's pretty outdated advice, modern cards have no problem handling non-power-2 sizes
On desktop hardware, anyway
Python is certainly fast enough for twitchy action games, as long as you use good libraries. And not just game engines, you can get incredible speedups just with numpy
yes.. the scipy tool chest, especially numpy is magical.. many programmers would struggle to crunch a lot of numbers in lower level languages at the speed that numpy can handle things
The only thing you'd struggle to do is AAA games where every single aspect needs to be pushing performance limits
I think an important thing to not forget about python is, that it is supposed to be a glue language, you're not doing the hard work in your python code but glue together a beautiful quilt of high performance libraries and control them from the python domain
I disagree. Python can be used as a glue language but it's not really "supposed" to be that. To me it's mainly a language that is optimised for rapid development. We did all our entries except the first one with pyglet and no other dependencies; 100% pure Python.
But maybe it depends what you want, performance-wise.
@onyx basin documentation is fine.
ok, thanks
That's what the final day is for.
the reason i'm asking is because the file to run the code is called run_game.py but the README says to run main.py
which could potentially be confusing
I think users will figure it out, but changing it is certainly OK :-)
I wouldn't really say that was a part of the game :)
unless your game is a very clever meta "figure out how to run my game" challenge
rungame.py just displays the victory screen :p
the game file displays the victory screen if you execute it with the right arguments, and the readme is a series of riddles to what those arguments are :p
:D
I agree on almost all of your points. The nice thing about it is rapid dev cycles, for projects outside of the scope of a game jam, the most obvious way to approach a problem is to write it in python first and optimize out what needs to be optimized out.. I don't say you can't do it all in Python, but you reach limits very fast when you try to do things that it simply isn't good at i.e. looping over and manipulating large datasets.. take the right tool for the job, don't shoehorn it into a lang just because you can 🤷♂️
@hot forge I may steal your idea next PyWeek... ;-)
That's very fair. There are certainly some times where we thought about numpy.
a week long jam is not something to compare against a project involving a good size team with years to work on.. the scope of a week, while long for a jam, is limiting the scope of a project before you need to take out the big guns anyway 😜
Would a game where the game is to find out how to run the game actually be "written in Python"?
Python itself is C after all so even when you're using a stdlib feature like hashlib you're in effect letting C do the heavy lifting.
At that point, it's a nice problem to have.
Also, Ahdok is a teammate of mine from previous winning entries. Should he get the role? Who do we ask?
Any Discord admin I suppose. @hot flume ?
it might mistakenly lead people to think I know anything about python :D
rather than you know, what I actually contributed to those programs
where the only python I added was this one
it was a mistake to let me have a keyboard
Is that even a python? Are there any herpetologists here?
nah.. the mistake happened a long time ago when someone thought it to be a good idea to switch from punch cards to other entry methods in computers
Role granted!
I don't really know a lot about snakes, but it has a pointed tail so it's not a rattlesnake
Like the only distinguishing thing is that underbelly I guess
Good old days of slotting the panda3d punch card into my pip machine. I might be misremembering.
ah yes.. the good old days w/o the interwebs and those fancy newfangled smart-touchy-phone-thingies
I think they started calling them wheels when they switched to floppy disks for Python packages, after the round shape of the magnetic tape inside
back when software could literally be eaten up by bugs
Back when you had to literally catch the exceptions being thrown out of your computer
How do I get the top of a sprit/image/surface?
Like, the coordinates?
I mean yeah.
So pygame.transform.rotate looks like what you need for that.
Takes the surface (the ship in this case) and can rotate it to give you a new surface.
Well, I already done that
Let me share a video
Hey @onyx basin!
It looks like you tried to attach file type(s) that we do not allow (.mkv). We currently allow the following file types: .gif, .jpg, .jpeg, .mov, .mp4, .mpg, .png, .mp3, .wav, .ogg, .webm, .webp, .flac, .m4a.
Feel free to ask in #community-meta if you think this is a mistake.
Oh
Oh, so if it's just getting the coordinates of the new surface, you can do surf.get_rect().top
It says mkv is not allowed
Oh
Imma try
Rect has a lot of features: https://www.pygame.org/docs/ref/rect.html
@unreal forge https://streamable.com/dqcxvm
There's a lot going on there
Not sure what you are aiming for exactly.
You need to move the little blue flame one?
It's another problem but I guess I can solve it easily. Actual problem is that I don't know how to move the ship in the direction of the nose of the it.
I need to do some math, I know but dunno how to implement it exactly
Ah, so if you have rotated by angle then one unit forwards is x += math.cos(angle) and y += math.sin(angle).
Although angle should be in radians for that to work.
So you can do angle_radians = math.radians(angle_degrees) first and then x += math.cos(angle_radians) and y += math.sin(angle_radians).
I try it now
45 entries is very respectable!
Here it's acting weird c:
I think it's about the fact that I do stuff about getting the angle in wrong way
@swift tinsel https://dpaste.org/Cp4W#L467,468,469
uhm
It's fine lol
@unreal forge
c:
I was confused for a second reading but then i realised you tried to mention Chard
Yes :]
Okay. I'm not 100% sure about the behaviour of cos and sin here but I think just angle -= something would probably do better than angle += 360 - something
But you could also normalise it explicitly to the range [0, 360] by doing angle_radians = math.radians(self.angle % 360).
Maybe also you want to move by more that 1 unit at a time? You can do self.x += distance * math.cos(...) etc.
I'm guessing here, I've not seen much of your code.
Yes I know that and also will try other things you said
Okay cool
Solved C:
angle_rad = math.radians(self.angle % 360)
self.x += math.cos(angle_rad)
self.y -= math.sin(angle_rad)
Thank you very much :D
Wonderful, you're welcome
C:
Oh right, minus because pygame is centered top-left?
I'm used to counting from bottom-left.
And they said trigonometry was useless. Hah!
Math is awesome
I probably will need to do more complicated math for smoothing the movement of these ships
Math for air friction
I don't know how to do that but one of my friend has done that before in Garry's Mod with Lua. So I can ask him for help I guess c:
I've played a pyweek game this competition that definitely agrees that "math is awesome"
You can do quite well by using the Verlet method: track the x and y coordinates (x, y) as well as the previous x and y coordinates (old_x, old_y). Then for each update cycle you do self.x += (self.x - self.old_x) * DRAG_FACTOR.
Tweak the drag factor, or just make it 1 for no drag, and you get a nice feeling of momentum.
And of course add on your extra movement for that update cycle.
I will try to implement that after dinner (:
@unreal forge
keys = pygame.key.get_pressed()
if keys[self.controllers["jump"]]:
self.poses.append([self.x, self.y])
if len(self.poses) >= 2:
self.old_x = self.poses[-2][0]
self.old_y = self.poses[-2][1]
angle_rad = math.radians(self.angle % 360)
self.x += (self.x - self.old_x) * 0.8 + math.cos(angle_rad) * self.speed
self.y -= (self.y - self.old_y) * 0.8 + math.sin(angle_rad) * self.speed
print(f"x = {int(self.x)}, old_x = {int(self.old_x)}")
print(f"y = {int(self.y)}, old_y = {int(self.old_y)}")
print("\n")
0.8 is quite an extreme factor.
It's losing 20% of it's momentum per update cycle.
But that's up to you.
I also vaguely feel like the sign is wrong for the self.y? Maybe should be self.y += (self.y - self.old_y) * 0.8 - math.sin(angle_rad) * self.speed
Well, looks like it doesn't work because I only draw when the player presses the button
Hmm
Otherwise I don't draw the ship hence there is no air friction effect
Brain is stopped
May I should update the speed per update cycle and need to draw the ship per update cycle instead of only when player presses the button.
I made a full play-through video of my game
(don't watch if you don't want spoilers I guess) https://youtu.be/_z8lsIEQa9I
A 100% playthrough Python Prison, a game I made for the week-long PyWeek 31 game jam contest.
It's a puzzle game where you have to escape the prison in each level by bribing cops and building and executing actual Python code.
Entry page: https://pyweek.org/e/pythonprison/
PyWeek 31: https://pyweek.org/31/
Github: https://pyweek.org/e/pythonpri...
:)
I already played through it :)
although I skipped levels 8 and 10
I uh... don't know python
the others I solved without any programming knowledge, mostly through combinatorics or guesswork
That's awesome, thanks for playing
level 10 is definitely a doozy, it takes like half the video 
my friend managed to get it to crash in stage... 6?
ooh, how? 
the first one that has a function and an output I think the p(2*3) stage
he pushed the button to run the function and it crashed. I'm sorry I didn't see a traceback
he was on mac though
that's one of the reasons I played this early, I wanted to see if I could replicate the issue, but it works fine for me
Oh, dang. I don't have a mac to test the game on 😦
Worked fine on Windows and Linux for me 
nods
he saw enough to get a good feel for it though.
we like the concept, and the puzzle execution is decent enough :)
Thanks 
it's very baba is you
yeah
I imagine with a lot more time to lay out stages, you could build the sokobans such that they wouldn't need any pulling (pulling makes sokobans pretty simple), but that's not really where the idea lies
it's going to have an issue that anyone who doesn't know python can't really solve some of the puzzles, but well, this crowd is going to have a low percentage of those players
But if a bunch of the teams have playtersters/artists/content devs who aren't programmers they might bounce off it a little due to that (although as a non-programmer I can still appreciate what the design is doing)
but you know... given one of the three scoring categories is "innovation" I think you're gonna score pretty well ;)
Yeah, I'm banking on people knowing a little Python since it's all peer judged - but maybe some levels are too hard 
it's probably fine for anyone who actually knows python (I can't judge, I don't know python)
I really wish I had more time to make more levels - a "no pulling" would have been a good option to make some harder
but in our team that's 2 out of the 6 of us :)
we had two coders, two playtesters and level designers, and two content/asset-makers
but... even with that, this is still going to be the most receptive demographic you're going to be able to find for that idea :)
python developers is gonna be 80% of the people who took part ;)
I liked the thought to put the controls and level skip options in the corner, it's good for letting people see later levels if they just don't want to do the complex ones
when you have new features and ideas in the back half of your game, it's smart to let people access those parts without having to complete everything first to get there
just so if someone is skipping through all 50 entries, they can see the scope of what you did without needing to spend half an hour to get there :)
so yeah, I think you did good :)
Yeah, I almost didn't make the skip function obvious but seemed a good idea in case people were rushing or struggling.
it's a good call for an event like this
like if a full commercial release of a game, you'd want to manage progression and gate content to have a... curated experience, or to let the game's story flow or to make sure that features were being introduced at a sensible rate etc etc.
but for a competition like this what you mostly want is for people to be able to experience and see all the work you did.
if someone judging 40 games in a week can't do a level quickly, the result is likely they just move along to the next game... or worse if the game breaks or crashes, and they're unable to see all the features, you're just missing out... whereas the debug/skip stuff is just helpful to everyone
(I'm saying this on a team that didn't provide a level skip option ofc :p)

Do you guys think replit.com is good to start off coding for python?
No. It was inspired by koko the gorilla and the gamestop stock thing where a guy that goes by DeepFuckingValue and RoaringKitty led a bunch of people who started calling themselves "apes".
oh yes, I do remember the gorilla movement
I updated my entry
default windowed now
the command line options exist for those who want em
I'm already thinking about multiplayer 😮
More demolition derby than get the checkpoint
I do want to implement a minimap too
I wonder if pyglet might offer performance enhancements and if I should move there first...
@hybrid granite
we didn't complete the game on time
this seems to be really common with game jams for a variety of reasons
What errors do you see?
something about weak proxies. i closed the window that ran it but i can re-run it if you want. it's also only on exit so it doesn't really matter.
Thanks for all the feedback btw
Now I want to try your team's game 
https://pyweek.org/e/paper-dragon-31/ - although I think we'll probably get a fair few reviews :)
Can we still write diary entries after the submission deadline?
If not, I'll write a post-portem writeup elsewhere.
I burned the bunny's donut 
But cute art 
but well... I hope that gives some idea of why our team has someone who doesn't know any python, and what they were doing :D
I have a lot of photos in my phone of "hey guys, this is where we're at" :D
I do believe so, looks like it should work
I could check for y'all by just adding a diary entry to an ancient pyweek game
so I can add diary entries to 7 year old games
so old that the webhost with all the images for our diary entries back then doesn't exist
Anyone able to use the pyweek cli tool? https://pyweek.readthedocs.io/en/latest/cli.html
I get ssl certificate error when I try 
Yes same
I’ve made an issue on GH and pinged mauve twice
No response
You can view my solution here: https://github.com/pyweekorg/cli/issues/2#issuecomment-813123489
added a live leader board to our itch.io page for our jam entry: https://janentikan.itch.io/badge-blaster-2112
just scroll down all the way, and if you're not on there, go and git good to push your way into the top 10 😜
i didnt realize pyweek happened lmao
i participated last time and burned the hell out of myself
that's a cool game 
Is anyone doing anything to sandbox the games they're judging? I was thinking of setting up a virtual machine, but maybe that is overkill.
I don't think it's a bad idea. you're running code from people that you probably can't trust
Howdy. requirements.txt is missing in all your uploads. Can you supply it please? Never mind. I saw the repo URL and grabbed it from there.
panda3d~=1.10.9
panda3d_keybindings
Virtual machines don't perform very well. Some games are okay, others will be very glitchy. If you're concerned, most games still play well on a beater 10 year old i3.
You might also set up a second account that has zero privileges, and run games like that.
Brilliant, thanks!
we have two weeks so reading through the source before you run it doesn't seem like a bad idea
I have looked into the downloader issue and I think maybe the server is missing an intermediate certificate
@woeful tree that is correct: openssl s_client -connect pyweek.org:443 fails.
I've asked @tiny mesa to look into it, because he is the person with root, but he can't get to it right now
I've released version 0.5.2 of the PyWeek CLI, which disables SSL certificate verification: https://pypi.org/project/pyweek/
It will print warnings but it does work
It might have been a better workaround to bundle CA certificates into the CLI, but that would take longer
time limit is the only limit 🥴
someone broke my record 
Yeah, FOX broke all our records…
yeah 😳
@knotty stag i was able to crash ur game
very sorry and embarrassed by that. we forgot to tripple and quadruple check the final submission. thanks for pointing it out
Mea culpa, I did the packaging
I'm just making a new user account on Linux, I think that should suffice, I'll put them in a different group and that puts me at ease
I've been wanting to learn more about the account management side anyways
There's always the risk that accelerated graphics won't work well under emulation
@shut gull failed to run ur game
when are we voting for the winner
Now
wait wait... how?
You can review and rate entries on the PyWeek site.
At the end of the two-week period the rating system will close and the winner will be announced.
There's a countdown timer on the PyWeek site.
oh I see.
Anytime you see TypeError: 'type' object is not subscriptable usually means you need Python 3.9 and you aren’t using it.
almost everyone? it~~s supposed to ~~ gives ~~ some ~~ a lot of good info.
I always read teh readme before pulling down code... the internet is a scary place
but I love reading
I'd certainly read the readme if I get an error message… if I didn't already read it earlier
lol
i uh
what do you read when you cause an error on your own project?
🤔
Obviously the next step would be to try and fix it myself
write a beautiful README.md
with info that other users might find useful.
but... empty? 
Okey maybe i will read them in future
github gives you this banner thing that says something like "write a readme to tell users" something something
lol I barely open github
Firejail might give you enough protection without the overhead and lack of GPU of a virtual machine if you're on linux of some sort, it's in the repos for Ubuntu, debian and arch at least https://firejail.wordpress.com/
Docker would probably also work well
And from what I’m reading, they actually work similarly (on Linux, since I have no clue how Docker works on Windows)
docker isn't safe, but it may be good enough for this
Lots of good suggestions in here how to do it on linux, but unfortunately I'm on windows.
wdym?
our school has sandboxie, but idk how good it is
Maybe that was my first mistake
docker shouldn't be used to run untrusted processes. It isn't designed to be resistant to that attack
Windows Sandbox is good, but it can be minorly annoying for smth like Python, since you’d have to install Python and never close Windows Sandbox
Windows Sandbox was created so that you could run untrusted software safely
I'll give that one a try. Didn't know windows had that as a feature
I think you might need Win 10 Pro
You have to enable it from Add or Remove Features and restart your computer
Thanks! I do have windows 10 pro, so that should work
install linux 🙂 I used to be on windows, then I installed a dual boot option, now I never boot windows
It's also easy to just run from a flash drive or DVD, that's probably the safest if you're worried about nefarious PyWeek entries 
great super villain tactic.. let's write an evil app during pyweek.. yes, I wonder why they haven't made it into a movie yet... smh
read the diary logs, that pond protector game looks suspect, so much effort, they must have nefarious plans
yeah, absence of donuts is a clear giveaway
Simple logic, that
Hey! I was running the aaaaAAAA project, I am getting this error on running poetry run task start
i was having troubles with that as well with our project
i was the only one in our group to have that issue
converting to .wav files made it work
just curious, which OS are you on?
another 😬
Hey @digital spoke!
It looks like you tried to attach a Python file - please use a code-pasting service such as https://paste.pythondiscord.com
my apologies for the SSL SNAFU folks, I've updated the SSL cert renewal and it all seems correct now
And I have reverted the downloader CLI to restore full certificate verification
Anyone else get these to work? is the 100% non-working just me?
I wasn't sure how many folks have rated these games; I'll try them on another machine (non-mac) to see if that was the cause
badge blaster works perfectly tho...
Badge Blaster launched, but it accepted no keyboard nor mouse-input for me; the main screen and audio were great! 🙂
Do i have to mark my submission as final?
@tardy quarry you need to use the up arrow key to select a menu item
It's in the instructions that the game is exclusively controlled via the arrow keys.
Also, if you have a gamepad plugged in, you need to unplug it, otherwise it is used for input instead.
hmm, no game pad plugged in; nothing happens when I use the arrow keys
fudge i just read the rules and i did it wrong
smh
Not to stir up a discussion about platforms, but macOS is getting less and less dev friendly, particular noticeable in the gamedev sector.. so anyone on mac, who has any other OS to test an entry on, it would be great to go that little extra mile. Keep on using macOS if you feel at home there, but note that Apple is one of the most obstructive players doing a lot to make developing and using free and opensource software harder and harder. If that is on purpose, ignorance or a mix of those two makes very little difference imho.
Asteroid Chase was developed on Ubuntu and MacOS. I have no idea why it's not working for you.
@tardy quarry Hi James, what was the issue with "Asteroid Chase"?
Case in point, the .zip file I created for my entry seems to be a proprietary format for MacOS - I've updated my entry's (PIT Stop) text to hopefully sort out any issues one might have
.zip file format depends on OS? 
usually no.. but I'm sure someone challenged apple to try and break the zip format and they were up to the challenge
FWIW - it's my fault, I used the Finder "compress this folder" thinking that it couldn't possibly mess up a zip of a folder... little did I know until I used the unzip command - double clicking it from Mac Finder of course works fine 😦
good.. you learned the apple credo.. "you're holding it wrong", "it's a feature not a bug" and so on and so forth... /s
but seriously, NO! it's not your fault. that thing offers to compress to a zip file, one should be allowed to expect it doesn't do any funny business.. coming from the company making the apparently user friendliest interfaces and devices, this is just unacceptable imho..
thanks for the kind words - I should have checked the my .zip before I submitted (other than using finder itself) - I hadn't found the pyweek command until I started judging the other games though, that's when I downloaded my game (along with all others) and found that the .zip file includes a "__MACOSS" that includes all the files as dot files... really goofy - it might be okay since it also includes the original folder I intended to send
yeah.. I doubt anyone is going to have a lot of difficulty to get it to run, so don't beat yourself up about it.. trust me, each time I want to double/triple/quadruple check everything and every time something goes wrong.. it's the nature of a jam or releasing something in general..
I just don't like Apple and have a hard time to keep that to myself.. not sure if it's noticeable 🤔
I said I could solve that problem easily but looks like it's not easy to solve for me c: So, how do I merge two surfaces while I have the chance to use them separately at the same time?
I need to move the little blue thruster flame after the ship's back
I need to use them separately too because the blue flame has its own effects, like if ship is in speed, the flame will be growed in size
not sure what is being used.. but this is a case for reading up on transformation matrices and applying that knowledge
So you need to rotate the second sprite (flame) by the same angle as the first one (ship), that's fairly clear. But you also need to change the offset between the flame and the ship in a way which depends on the rotation. In general, if the offset between the centres of the two sprites (from the ship to the flame) used to be (dx, dy), then the new offset needs to be something like (dx * cos(angle) - dy * sin(angle), dx * sin(angle) + dy * cos(angle)).
whatever framework/engine is underneath that probably, provides such matrices ootb
50% chance I got the sign of the sines incorrect, but it also depends on which direction the framework considers to be a positive angle.
From there you can generalise to a tree of sprites each with their own configurable offsets and angles. Get some skeletal animation going.
Have some fun with it. 😁
use linear algebra instead of trigonometry tho.. it's just a stepping stone and if you want to really get into graphics programming you'll end up using linalg anyways sooner or later
:D Well thanks for your descriptive answer, I will try to apply it now
Probably a cart before the horses situation. I'm always in favour of generalising but linear algebra is easier to understand in terms of concrete, familiar examples, no?
yes.. that's what the "read up on it" part was intended for
doesn't hurt to understand the trig part to understand the latter.. but you won't be able to avoid linalg when you get into graphics programming, so why go the long way around..
I may not be the best or most patient teacher, but if I had another go to start from scratch, I wouldn't let me write entire scenegraphs w/o using stacking matrices that do both the heavy lifting and apply it in a manner that is better understood and executed faster by the underlying hardware
The question that was asked was how to position one sprite relative to a rotated sprite, though. Not how to become a graphics programmer.
well.. the question implies wanting to learn about graphics programming from how I see it...
I certainly didn't read it that way.
good for you
Hey, both of your answers were awesome C: May @sacred marsh's one is a little out of topic tho :D But well it's helpful too since it's about my question
I'm not being critical. I just mean I honestly answered the question that was put to me the way I would answer it for myself. Yes there are deeper answers but I'm not going to get into the weeds when it seems unnecessary. Apart from anything else the trigonometry is substantially easier than matrices when you're in two dimensions and restricted to rigid body motions.
FWIW though there doesn't seem to be a matrix class in pygame, so it's pretty much limited to the functionality in pygame.transform.
Sorry for late reply but I couldn't get it working
@property
def x(self):
dx = self.ship.image_copy.get_width() / 2 - self.ship.offsets["thruster"]
return dx * (math.cos(self.ship.angle) - math.sin(self.ship.angle))
@x.setter
def x(self, value): self.x = value
@property
def y(self):
dy = self.ship.image_copy.get_height() / 2 - self.ship.offsets["thruster"]
return dy * (math.cos(self.ship.angle) + math.sin(self.ship.angle))
https://streamable.com/0o3fn4 Here how it is acting
dx and dy values while moving
dy -16.5
dx -36.0
dy -36.0
dx -16.5
dy -16.5
dx -36.0
dy -36.0
dx -16.5
dy -16.5
dx -36.0
dy -36.0
dx -16.5
dy -16.5
probably a stupid question, but is there any reason the blue flame can't be rendered on the same image / sprite with the ship? then you'd have a sprite for "ship_with_flame" and "ship" when it is not thrusting?
You haven't done the calculation correctly, the offset (dx, dy) gets transformed to (dx * cos - dy * sin, dx * sin + dy * cos).
I think it was so the sprite could be modified or animated separately, based on input
Actually it would save me from expensive calculations, but Chard' s way seems more sensible for future use
Thanks anyway it's a good solution too I guess
yeah, it's a trade-off; more sprites taking up disk vs CPU time during execution
Yep, though your solution is more easygoing since I don't suffer from disk but CPU, as I said other one will help me a lot for other things
It still acts weird c:
@property
def x(self):
dx = self.ship.sprit_copy.get_width() / 2 - self.ship.offsets["thruster"]
dy = self.ship.sprit_copy.get_height() / 2 - self.ship.offsets["thruster"]
# dx = dy = 50
print("dx", dx)
return dx * math.cos(self.ship.angle) - dy * math.sin(self.ship.angle)
@x.setter
def x(self, value): self.x = value
@property
def y(self):
dx = self.ship.sprit_copy.get_width() / 2 - self.ship.offsets["thruster"]
dy = self.ship.sprit_copy.get_height() / 2 - self.ship.offsets["thruster"]
# dx = dy = 10
print("dy", dy)
return dx * math.sin(self.ship.angle) + dy * math.cos(self.ship.angle)
The thing you are transforming is just the offset between the two sprites, you still need to add that transformed offset back on to the centre of the parent sprite.
Think about how you are calculating and using that offset.
And also remember that the arguments to sin and cos should be in radians.
Think it through and you will get there.
If you can set the rotation point to be the same as the ships then it should work with no extra effort. Another option would be to make the image as big as the ship plus the flame but mostly transparent so that you can rotate it around the centre and it lines up with the ship.
Well friends, thanks but I guess I need to sleep now. Tomorrow morning I will try to fix it
Here source of it for those who are interested in it: https://github.com/sifirib/no_clue/blob/main/no_idea.py
Have a good one!
I recorded the full campaign of our game, Asteroid Chase. We invite you to play the game, despite the broken requirements.txt file 😉
https://youtu.be/b31-toqAYNI
What is this game about?
You play as Jake. He is a police officer from the Outer Ring.
He has just arrived in the capital to repair his rusty police ship.
His plans change when he hears about a grand theft on the police radio.
Help him catch the thieves of the imperial crown!
Game created by Team Vegemite Pierogis!
Credits:
Game Design: VV...
Those are called resource forks, and it's usually fine to just ignore them. I think there's an environment variable you can set to prevent macOS from generating them.
@onyx basin !iv nice game
Thanks c:
@unreal forge It is working pretty, thank you c:
def __init__(self):
self.offsets = {"thruster":(80, -10)}
@property
def rect(self): return self.sprit_copy.get_rect(center=(self.origin))
def offset(self, key): return self.offsets[key]
@property
def x(self): return self.ship.rect.center[0] - (self.ship.offset("thruster")[0] * math.cos(self.ship.angle_rad) + self.ship.offset("thruster")[] * math.sin(self.ship.angle_rad))
@property
def y(self): return self.ship.rect.center[1] - (self.ship.offset("thruster")[0] * -math.sin(self.ship.angle_rad) + self.ship.offset("thruster")[1] * math.cos(self.ship.angle_rad))
!paste
Pasting large amounts of code
If your code is too long to fit in a codeblock in discord, you can paste your code here:
https://paste.pydis.com/
After pasting your code, save it by clicking the floppy disk icon in the top right, or by typing ctrl + S. After doing that, the URL should change. Copy the URL and post it here so others can see it.
lol
Just found out about this competition! Looks really cool, is there a date set for the next one yet? I want to put something in my calendar so that I make sure I don't miss it!
6 months from now, maybe around end of September.
Oh yeah like 8 days left to rate games
I should start playing more of them
hm yes
Does anyone else have trouble downloading the zip for Robir the Robber by Monsterrreporte? https://pyweek.org/e/Monsterreporte/
Oh weird. I guess there's two separate entries, and the one you linked doesn't have an upload marked "final" so it can't be rated.
Yep!
What if nobody plays my game?
I'm working my way through, but there are so many; which one is yours? I'll prioritize it
COP.EXE
Thank you so much!
You have one week to develop a game in Python
and that week is over.
You can develop a Python game in a week any week you like.
It just won´t be part of the competition. 😉
it just doesn't feel the same
You have a 1/26 chance!
Hey @fiery shuttle!
It looks like you tried to attach a Python file - please use a code-pasting service such as https://paste.pythondiscord.com
actually, 2/365
because its a 7 day competition, but they could choose any 7 consecutive days to create a game
Very fair
so to choose the correct 7 days, there's technically only two correct weeks
although we could weight a portion of it
^ this is the theme for next pyweek yall
"meta pyweek"
How do the theme options get picked?
@north ocean but you can take anywhere from 1-7 days to create that game, some have submitted PyWeek entries made in 3 days
true
so we have to figure out the odds for someone to finish their game
and that increases the possible choices to be during pyweek
PyWeek: The Game
I should make a game like that.
That is a choice game.
You choose which path you want to go on, and make a game.
And then rate others.
An emulation of PyWeek.
It could even populate itself with the entries in the current PyWeek.
Including itself!
That would be cool.
It probably shouldn't steal your browser cookies and rate itself 5/5/5.
Is there a PyWeek api?
If so, then I would actually do that.
There's whatever the game downloading tool does.
Wonderful. Is that open source?
It seems to use this: https://pyweek.org/31/downloads.json
Which doesn't contain the other data about entries.
But you could also just parse the entry list.
Then time for PyWeek: The Game. Name ™️ed by Chard
You can have the name.
Although maybe some kind of recursive name?
"GAME: A Meta-Entry"
Ooh, that's smart.
Take it. I look forward to playing it.
I don't know about python, but may I user test it? I can look for bugs..... 🙂
So I was referred here from another channel, that game dev was even possible. I was wondering if there can be a game that people play to be hire in a company have to play to evaluate them. Like an moral choice, knowledge test, social test-RPG 🙂
hey peeps
Man, there's so many games to rate 
How common is it that most people bother trying and rating everyone else's games? 
Is pygame still used most nowadays?
@onyx basin Some simply sample x games at random plus play the ones that look promising
@leaden ginkgo it varies, pygame is used a lot because it´s relatively low-level, but I´ve also seen use of pyglet, wasabi, pygame zero, arcade, and of course Panda3D
ursina is a fun panda3d wrapper
is there any automated scanning for malicious code in the game submissions? I got nervous downloading 40+ zip files to install and run their dependencies on my machine
IDK that there is, but at this point I Feel SOMEONE Would have had to have found it
@hot flume (sorry for the ping, you're the first person I thought of) after great consideration, I have decided to give the pydis staff entry the Duckiest Game Award. Congrats to everyone who worked on aaaaAAAA!
haha, thanks! I'll let them know~
If I had made and separately entered my ducky wheres waldo that would've been mine...
Lol it would have
I didn't do PyWeek because I have a busy 1 year old daughter, but I tinkered some of the evenings. Just released something!
https://github.com/lordmauve/pyfxr
https://pyfxr.readthedocs.io/en/latest/
I tend to do the ones that look interesting to me first, then anything that looks particularly polished (as ideally I want to have seen the top few when the results are declared so I know which is which) - and after that I randomly sample from games I think won't have attracted many views :)
how fast are sample generation calls?
an fxr in python is already cool, but splitting the backend into a separate package might make it even more useful
Varies but maybe around 500μs per s of audio
What backend?
The whole thing is a separate package
i just saw the [gui]
Oh, yeah, doesn't have a Pygame dependency by default
I don't understand why some of the arguments are prefixed with "p_"
convenience to distinguish floats for outside callers?
I'm working to hide that behind a new API (here: https://github.com/lordmauve/pyfxr/blob/c7334704cf6f905fd9b81d1a9630762b3d4784cb/pyfxr.py#L179)
It's because the original code that I was porting used both names like p_xxx and xxx and I didn't want to lose track of them when I was in the middle of porting
ah ok
Actually, not sure if it used them or I added them; in the original code lots of these variables were globals that were mutated while generating, which I did not want to do
Ah, yeah, both - it used names like p_xxx and xxx for the same xxx, AND all of those were global: https://github.com/grimfang4/sfxr/blob/48ce8f1ee3951c6313cf40948a65d8f76df4d77e/sfxr/source/main.cpp#L58
is learning pygames worth it?
Learning to speak Italian is worth it, if you want to go to Italy.
Released this as 0.2.0
>>> pyfxr.pickup()
pyfxr.SFX(
base_freq=0.595,
env_attack=0.0,
env_sustain=0.063,
env_decay=0.194,
env_punch=0.428,
arp_mod=0.567,
)
>>> t = _
>>> from sounddevice import play
>>> play(t)
@woeful tree Curious: why do you use a for loop to copy data to _params instead of just doing _params.update(kwargs)?
To trigger the side effects of the descriptors' __set__() methods
Validation and conversion, at least
Got it
I misread the code
I thought you were using setitem instead of setattr (which IK doesn’t exist, but that’s what I thought I read for some reason)
It totally exists! https://docs.python.org/3/library/operator.html#operator.setitem
Also it's such a cute function: ```python
def setitem(a, b, c):
"Same as a[b] = c."
a[b] = c
The docstring contains the entire function body.
The actual version you probably use is in C: https://github.com/python/cpython/blob/e1903e11a3d42512effe336026e0c67f602e5848/Modules/_operator.c#L540
operator is a funny module that defines lots of Python functions and then imports faster implementations from _operator and overwrites them all
I guess that means it can be used in non-CPython implementations just as well. Does this mean that the Python implementations are generally untested though?
They are tested! They do this sneaky thing: ```python
import sys
sys.modules['_operator'] = None
import operator
I meant in builtins
would you know if theres any cases where the operator implementation can be faster than using the actual operator?
It being a function means you can do things with it like pass it to map. That's probably faster in cases where what you need is map.
But I imagine the _operator implementation will just call the same C function as the corresponding opcode would.
@woeful tree are we allowed to use meme images in diary entries?
not from the perspective of memes in general, but copyright reasons if we're discussing inspiration for the game during brainstorming
I don't know, IANAL. I don't think PyWeek has rules about licensing for diaries so I guess it's the same grey area as the rest of the Internet
Five hours to go. Has anyone played every game?
I attempted every game, I couldn't get some to play and didn't spend enough time to debug "file not found" issues that theoretically I could fix
Good on you for trying them all though. I've only done ten, I feel bad about that.
Imagine how bad I feel that I've only had time to try two :-/
Gz @lusty wasp !
I forgot the judging ended. My game won? 
Well done! I'm sorry I didn't get round to playing yours, but I know my teammates loved it.
And Halt! and Badge Blaster, both definitely deserving 
Thanks 
People were right, I should have made the levels easier and the music was terribly repetitive 
Don't second guess yourself, the important thing is to have something at the end of the week.
Yup!
Wonderful job everyone!
And people told me I didn’t have enough content even though I slaved away all week 😔
Building a game in a week is hard 
@hot forge To answer your message I have no idea if this game contains a potential exploit where you could execute something problematic with the code blocks given There was no such protection since I had no clue how to properly sandbox in python
All I did was was set globals and locals to {} and set open=None as a feeble way to prevent messing with stuff.
Though it's no more dangerous than a normal python interpreter 
Thank you 
Congrats!
Congrats on the winners of Pyweek 31
I assume you can still import things. while 1:__import__('os').fork() would break things pretty fast.
@onyx basin Its especially hard when you have a day job to juggle with as well as participating in the event.
haha yeah
I've never done a pyweek where I didn't take holiday to have time for it
that's scary
I do notice one problem I'm having while participating in these pyweek game jams. My "production" value seems rather lackluster. While true that I could make a solid game. The one thing I seem to be struggling the most is the "Aesthetically pleasing graphics, and decent sound/music quality. This is my 3rd attempt at pyweek and 2 of the 3 have been successful
and I didn't even do any coding!
This run however I went in with the smallest scope possible because of my day job. Had to make a compromise somewhere.
While I'm here I got to ask. What constitutes as good "production"? If I want to be a decent indie game dev, This particular trait needs the most improvement.
Yours was one of the many games that wouldn't run for me since it wouldn't load assets 😦 like 5 or 6 had that issue and I wanted to try them
UI, art, sound, clear game objectives & putting that all together I suppose 
I think people interpret "production" differently, but to score well there's a lot of things that contribute
like obviously, having nice graphics helps (not necessarily complex graphics, but they've got to be fit for purpose and look nice in the context they're being used)
music and sound make a big difference too. If your game is very limited in sound that feels very empty
yeah, even just a tiny bit of sound helped me enjoy a lot of games
but after that, you also want to put lots of work into UI and player experience - everything needs to work, you want to make it so that it's obvious what things do and controls are intuitive. Menus and UI need feedback (I'm mousing over this hitbox, so it changes colour and maybe makes a little quiet noise so you know what you're mousing over)
things like "it has a title screen, and a menu, saves your progress, has an end screen and credits" seem obvious, but a lot of game jam games skip over them
getting all that stuff in there takes time and work too
So I've noticed. I tend to primarily focus on the gameplay aspect and making sure everything runs fine with almost minimal to no glitches/bugs. Sound music and graphics tend to come next. It seems I've been falling short on the latter 3.
Like, this time we scored super high on production, and we had (I hope) nice graphics, but we didn't score super high on production because we had nice graphics, we scored high on production because we had menus and dialogue scenes and voice acting and sound effects and visual feedback and so on.
a lot of people kinda rate by "feel" as well, and we put a bunch of thought into how these things complemented each other - part of the reason that our dialogue is short and goofy and cute is because the art is, etc.
Were you in a team in this game jam?
So by default having a team has an advantage and the ability to have different people do different tasks...provided they are coordinated.
nice raccoon pic btw
well, there's a good reason why "individual" and "team" are different categories :D
True
although having said that, there's plenty of pyweeks where the individual score outclassed the team score (and the individual game was better)
that's something I kind of subconsciously think about while rating too, if a team is 2 people or an entry is solo entry, I kinda consider that a bit when rating a game
Top individual entries always score higher on fun and innovation. Top team entries always score higher on production.
Caveats around overgeneralisation etc. etc.
but yeah, when you have a team of people, you can afford to have a dedicated artist, and then they can devote quite a lot of time to polishing that stuff
whereas an individual entry has so much other stuff to do
like, one thing that's always been part of my experience when making art for these jams is sometimes I'll draw something, and it'll need adjusting or altering to "look right" - and that tweaking process takes a lot of time
but for a solo entry you make the asset and just kinda go with it
(having said that, I cut plenty of corners myself - none of the art is remotely as polished as I wanted it, but that's what timed challenges are about)
@green trench I've never done a solo entry. It sounds like a lot of time pressure. But I think what I'd try to do would be to make sure I don't overreach, that I can ship something that is a clean end-to-end experience. Scoping is hard though...
@unreal forge I made that mistake with the scope when I attempted pyweek 28(Tower)
but yeah, those are the things that I think really affect production. UI especially is something that is often overlooked for how much it adds to the "professional feel" of a game
in fact I'm still working on this tower game to this day.
about a month or 2 was spent solely on sprite art
:D
Going to have to speed it up however. Working on a game for x amount of years takes its toll. I want to do something else for game dev. And I certainty don't want to make a habit of starting a project only to leave it half done.(I already have 1-2 projects like that)
You have to ship, that's part of what's nice about game jams, it forces the issue
Yeah and bundlers and packagers like pyinstaller doesn't seem to be the way to go long term. I've seen python games from other developers shipped where almost "everything" is in one application.
and you can just run from the application without having to search through 40-50 files to find the executable.
You can ship as a single .exe with pyinstaller.
@unreal forge I tried to do something like that in this run, but I ended up making a shortcut that doesn't work.
obviously its not that simple 😛
That was the windows build script I set up for us this time.
It probably should've also tried to package the ffmpeg DLL but apart from that it seems to have worked pretty well.
No, though. It isn't simple. 😦
@onyx basin Enjoy your pink name :D and congrats
Other PyWeek winners, please tag me and I can apply the role~
Pink
thank you 
:o congrats to all the winners!
hopefully i can join next pyweek and make something cooler
i def learned a bit more about what i am capable of
What's with the cat in lots of people's discord names?

its cute.
one thing I've noticed with this server is how patterns in nicknames spread to many users.
(gurkan)
gurkan? 
lot of people with that name.
Congrats to everyone!
congrats to your team!
Looks like you've been busy ;-)
Hey, okay okay okay so what modules should i learn for starter Pygame?
like basic basic
I know some basic Python and some file handling is it
@feral dagger this is not a channel about pygame, see #game-development
pyweek game jam tho-?
#pyweek-faq message
pastman and mina started it, we continued!
gurkans are completely different, ||we even have a server||
Ohhh okay thank you :) I'll be talking here in 6 months or so probably then lol
||even a programming language||
who are petri and mina?
pastaman - #voice-chat-text-1 message
mina - #voice-chat-text-0 message
oh.
Turns out that if u make game in dark room others cant see anything in light because in the game colors are dark ;)
Calibrate your monitor's gamma curve
It all started here: #voice-chat-text-0 message
Congrats on PyWeek btw @onyx basin! 🙂
Grats to the winners 🙂
Thank you
congrats to the other winners as well 
Congratulations!
Congratulations everyone!
Congrats everyone :D :D :D great games here!
Gotta start training for next time!
Like... Python workouts.
Reps are easy with loops
Nice! Maybe this though: ```python
for i in range(1000):
if i < 5:
print('do a push up')
else:
raise TypeError('not built for this')
Throw an await random.choice(distractions) in there and that'd be right for me
One last message in #pyweek channel until it gets archived.
this channel doesn't get archived, we just move it slightly lower in the channel list
interesting.
Why are there two groups of moderators with the same color and name?
Why are there two groups of moderators with the same color and name?
It's part of a new system. One role has the permissions and is hoisted, but the other role is the one thats pinged. That makes is so that only mods who are "online" (they opt in to that) get pinged.
Ah
The discord I spend the most time in has Mods (which gets pinged) and Grail Sorters (which has the perms). (It follows a sorting theme)
@hybrid granite nice job on your 292k score! You're getting closer to beating fireclaw 🙂 http://cops.highscores.best/
yes 
nc
when is the next pygame
5-6 months from now
I think closer to 5 than 6 at this point
damn :/
guys
does anyone know how to do a cutscene in pygame?
You should ask general gamedev questions in #game-development
What is this channel for?
the deed is done B)
@hybrid granite Wow! Amazing! Congrats!
This channel is for the semi-annual(?) game jam, PyWeek!
The spring pyweek is over but you can participate in the fall one
biannual is every 2 years, if that was your question
oh
whats "happens twice a year"
Apparently biannual is used sometimes, and semiannual is used too.
all dis stff be making me confuzzled lol
Either semiannual or biannual
Biannual can mean 1 every 2 years or 2 every 1 year
There's also biennial.
Good communicating means making yourself understood, so I recommend avoiding all of these words.
Except maybe semiannual, that one seems unambiguous.
semiannual means every half year, that is the word that applies to PyWeek.
which ide good for pygame
Wrong channel , bud
But PyGame doesn’t have an IDE
any editor/ide would work
@north pivot
hello
!hel0
No Category:
help Shows this message
Type !help command for more info on a command.
You can also type !help category for more info on a category.
<@&831776746206265384> ^
!hel0
!help
lol
well
!help
!ban 811872674614739014 self botting is against Discord's ToS
:incoming_envelope: :ok_hand: applied ban to @lyric fog permanently.
That was unexpected...
wowee
it is?
oh.
so like, you cant use selenium to automate certain processes like deleting messages?
using your authority
in discord?
welp ig i shouldnt make a dm purger then
Why are you asking this in here? Just read the Discord ToS again if you want to remind yourself of what you agreed to
!rank
theres no ranks in this server
!rules
The rules and guidelines that apply to this community can be found on our rules page. We expect all members of the community to have read and understood these.
ah thanks
Thanks again to everyone who participated in PyWeek!
The next PyWeek is not scheduled yet, but we'll announce it as soon as a date is decided on. It'll most likely be in the Fall of this year.
Wondering what PyWeek is?
PyWeek is a twice-a-year game jam that has been running for the past 15 years. Starting on the first day of the jam you start coding, designing, and developing your game. This can be done as an individual or with a team. By the end of the 7 days you must submit your entry on the PyWeek website for it to be counted as a valid submission. Visit pyweek.org for more details!
wow
just noticed that pyweek could be the reason that https://stackoverflow.blog/2021/04/19/how-often-do-people-actually-copy-and-paste-from-stack-overflow-now-we-know/ is skewed towards python
@north ocean what leads you to that conclusion? The only thing in there about python was the tags skewed towards python and that was all data science related
specifically that pyweek was the same week that they tracked the data
they only tracked the data over a few weeks time, and pyweek was one of those weeks
We collected data for two full weeks, from March 26th 2021 to April 9th 2021. The following analysis is based on the behavior during that time.
it would be interesting to see if they are different if it was tracked during not py week
PyWeek was the first of the weeks they tracked. But I would be surprised if ~90 users impacted the stats of a site that gets literally millions of hits a day.
i thought pyweek was bigger than that oops
But even in the article, the stuff that mentioned python was all data science related, no game dev related.


!e import pygame
@onyx basin :x: Your eval job has completed with return code 1.
001 | Traceback (most recent call last):
002 | File "<string>", line 1, in <module>
003 | ModuleNotFoundError: No module named 'pygame'
!e pip install pygame
@onyx basin :x: Your eval job has completed with return code 1.
001 | File "<string>", line 1
002 | pip install pygame
003 | ^
004 | SyntaxError: invalid syntax
how does pyweek game jam work?
got it, thanks!
Is the game still going on?
When does this jam happen?
Next one would be in 5 months or something 
what is self botting?
Another term for account automation
Where a user uses their own account, instead of a bot account
why is that against the rules?
Because it's part of Discord's terms of service, which you agreed to when you created your Discord account.
oh that make sense
but isn't self botting just discord bots but with extra steps
when will the next gamejam be
Hey @rare pond!
It looks like you tried to attach a Python file - please use a code-pasting service such as https://paste.pythondiscord.com
no, its your account
which you will be using to carry out tasks
for example, you could self bot yourself to spam in multiple channels
there are actually much fewer steps
for self botting
using selenium or ppadb you could easily automate multiple things
making a program use your authority in discord is against TOS
One could argue that discord.py has a shallower learning curve than Selenium
hi
what if it was just him pasting a default bot message? lol
i think with the new update, all of intents for selfboting are disabled, so you wont be able to see message content or user data any more
For all those that gave up frustrated that the 'speech to text' input did not work in our game: here is a version that supports text input through the keyboard: https://pyweek.org/d/7319/
Kinda sucks. I made this RPG and I want to share it
Feel free to share it in #python-discussion 
or...share here?
,
i wanto to be tall
Well doing exercises might help you or eat healthy
conversation 100
I wonder why they're keeping this channel up even tho the next pyweek is months away. Not even being archived? 🤔
There is no reason to archive it, PyWeek is a partner of ours and we're large fans of the event, hence we keep the channels up year round (though do retire team forming).
nice.
who knows django?
#web-development might be a better place to ask
sry
What's a pyweek game jam?
See channel description
The next PyWeek has not been scheduled yet, although it will be held roughly in the Fall of 2021.
PyWeek is a twice-a-year game jam that has been running for the past 15 years. Starting on the first day of the jam you start coding, designing, and developing your game. This can be done as an individual or with a team. By the end of the 7 days you must submit your entry on the PyWeek website for it to be counted as a valid submission. Visit pyweek.org for more details!
Lol
I saw Godot has 3rd party Python bindings and does that count? Or is that not allowed in PyWeek
I think that is allowed, though you would need to then avoid GDScript in favour of Python. The rules do allow supporting parts of your entry to be written in other languages but I don't think a hybrid of Python and GDScript will fly with judges because they're in exactly the same space and you could just have written Python. You're safer writing C++ :-)
Well, that's good to know if I ever join
What's considered as supporting parts btw?
I have spoken the the author of godot-python before, and he warned me that godot-python isn't well supported by Godot and not to expect production quality software
oof
That may have changed, of course, it may have matured
What's considered as supporting parts btw?
I don't recall exactly how this is expressed in the rules, but game logic should be in Python, even if your engine uses other languages.
Some time in Fall 2021. It hasn't been scheduled yet.
yeaa
Hi
thank you very much Lu
Out of curiosity is there a way to get to the top of a thread quickly? I wish everywhere used Vim commands.
In a channel Ctrl + F -> press enter and filter the results to see the oldest messages first. (That's how I do it, there might be other ways)
Legend 😉
@glass atlas Feel free to try out bot commands in #bot-commands, this channel is for the pyweek game jam
k but who's you?
I'm a moderator here
oh.. thanks
Look at the channel description 🔍
what is pyweek game jam??
?
its just putting jam on games
real meaning = ||its an event in which devs make games and the best game wins there can be themese for em and all||
py week game jam i think this like create a project in 48houres or 24hours something like that
The next one is in September/October
You have a week to build a game in Python for PyWeek
hey can anyone help me out with a programming issue I'm having? I posted my question here: https://stackoverflow.com/questions/67757967/getting-an-winerror-10057-in-my-python-multiplayer-game-using-pygame?noredirect=1#comment119766277_67757967
Looks like you have some solid responses on the SO question, and it also looks like you should read #❓|how-to-get-help , this is a soon? to be archived channel until the next pyweek in about 6 months, not a pygame specific help channel
Gnabergasher, it's not getting archived it seems.
Oh neat, though it's still less a pygame help channel, and more a discussion of the awesomeness of the event, there's #game-development and #❓|how-to-get-help
They might wanna update the channel info
The channel description is still correct. We don't have dates for the next PyWeek yet.
need to deyank it it's tenured now by this point
Where do i submit
PyWeek 31 is over, the 32nd will start sometime this fall
Girl i deadass finished my game today
U_u rly how it be
PyWeek is only a week long, and it was in March/April
mmm jam
strawberry jam
can you do 3D in python
I do not think so
You can. One of the winners used panda3d https://pyweek.org/e/fizzle/
Technically 3d on a screen is just a 2d image so you could technically do 3d with a 2d module, it would just be a lot of unnecessary work
yeah
how do u make games in python
i use pygame
but its not very efficient to make good games
my pg has turned to ph to alternate module help..
For the twice-a-year game jam called “Pyweek game jam” 
That sounds fun!
Wow that seems fun
Yea, does sound fun.. would be fun if you knew how to use pygame unlike me :p
this seems fun.
It is fun. Now, go learn pygame and join us. 🙂
i know a tiny bit of pygame, but it's only a GUI and a custom icon ;-;
You guys know pygame?
I got alot to learn, I will contine to learn and maybe I will join you all
@vast monolith i understand, i regret what i have done, please
you need to have the image in the same directory as the .py file, or have the full path
hey
i've tried working with pygame took a long time I recommend either pycharm or sublime text sublime is a bit hard to sit up but good luck
We provide Linux training for busy IT professionals. We provide Linux certification bootcamp, Linux for beginners, and onsite linux classes. All attendees get a free linux laptop.
Some good pygame courses recommended?
In this Pygame for beginners video, we'll be making a game in about 90 minutes. I'm going to cover a lot of stuff about Pygame in this video, including sound effects, images, moving objects, collision, most of the fundamental things you need to make a basic game. We'll be making a simple 2 player game to showcase how everything works in Pygame i...
thx bro
What is pyweek?
it's in the channel description
Thanks, needed this.
"unnecessary work" -every video game in the world isn't unnecessary work. they're fun. and fun is important.
It's not in the same dir. You need to put it in the same dir as your main.py.
Otherwise you can specify the entire path and keep fkimage.jpg in your Desktop.
let's keep messages on topic for this channel, there is no one there since the event is not running
I'm starting to like pygame man, it's amazing.
Why does this channel stick around but code jam doesn't?
Good question 
because similar to #black-formatter, we are the home for pyweek, and since they direct users here for conversation we don't want to remove a channel that people get directed to and have a use for
are we supposed to use only pygame?
No, you can use any of the following libaries: https://pyweek.readthedocs.io/en/latest/libraries.html
ok 😄
,
not particularly aware of game dev, what kind of games are done in python?
platformers, rpg, anything you can think of - if you have the time 😉
Can somone help me with colisions im making a tile goame nothing do do w game jam im.stuck on the same probelm for week pls pls help hod do i code colision without a class
All of those stupid ass tutprials are like: yea colisons is ewhen 2 blocks colide anyhow here is the code from preious video:(1200lines)
PLS HELP
Im act going mad
Pls help
I cant takr this no morw
You said u do platformers
Pls for thr love of Satan help
You might want to look there: #❓|how-to-get-help
:incoming_envelope: :ok_hand: applied mute to @full plank until 2021-06-18 11:28 (9 minutes and 58 seconds) (reason: duplicates rule: sent 4 duplicated messages in 10s).
oh hypixel skyblock image on background +rep
hello im new to python programming, but i know basics, im making a pygame, i have created a window and added an button image, but what i want is that when u press the button it spits out jokes, how can i do this? can someone quickly show me now??
This channel is dedicated to the twice in a year event “pyweek game jam” so you might want to check out #❓|how-to-get-help instead.
ok
Hello
hello
robux
Hii
im full of bobux
Hi
hi
Hii 👍
Hey!
Hello
Programmed to know and not to feel
Not even sure that this is real
Hello world
Ooooh will i find a love
Oooooh or a power plug
OoOoOoh Digitally
I-So-La-Ted
If the website isn’t down and you’re getting that, check your hosts file

You might want to look at the channel description (#pyweek-game-jam message)
@lusty wasp I think I found a bug in your submission for pyweek. When the game is running and the 'd' key is pressed, I lose a life.
@hybrid granite it is a key we used for testing the gameover sequence, we forgot to take it out before release 😳
interesting.
for easily getting to the gameover sequence? instead of waiting to get hit?
hmm
Smart
:incoming_envelope: :ok_hand: applied mute to @misty oriole until 2021-07-10 15:51 (59 minutes and 59 seconds).
been waiting ever since 
Is there a game jam going on at the same time as the codejam?
Affiliated with this server? No
What do you mean?

PyWeek was affiliated with this server, hence why this channel is still here even though the event we've a while ago
Oh okay. I only ask because I think it would be fun to be a part of a group to do a game jam.
HI guys , how to open project python in pycharm
i'm creating project by cmd terminal
like folders and files
Create Project, select folder, use existing files; something along those lines - not really the right channel for that
Pycharm is a bit tricky and not handy for beginners, therefore you should definitely see some yt videos.
Hello, is there a tool to save the code and the command to do?
hii all
hi
hi @sullen bear
hi all
hi :)))
Hi guys
How to upload a python django website to shared hosting with Godaddy , Is there a video that explains this?
bro why are they standing still tho
There are some videos in Youtube. Did you already check it?
are you asking for scheduling scheduling
Hey I must ask what is pyweek?
Hi all
time to play some games
