What I learned today or “Pygame does not like to be deepcopy()ed”

I haven’t said this till now but: I’m in. Sight. Again. Started like five times already, never finished anything.

For anyone who really cares: Python 3.2, Pygame, Paint.NET, maybe something for the music later

Now for the interesting part:

Even though I never finished anything before, this time around I have gotten pretty far. I dislike the theme, but I had a good idea, so I am have my destination already set.

I don’t want to spoil too much, but it involves an open(automatic chunkloading:check), a procedurally generated world(Perlin Noise and terrain generator: check), knights(check) and castles (no check :(   ) I am really proud of what I achieved today even though I was still sleeping the first six hours (LD starts at 2:00am here) and a request for help (Stepfather: can u pls help me for an hour. pls? 3.5 hours later….) kind of took longer than expected.

WORK DONE:

  1.  I have implemented a working rendering engine and a working collision detection, which stoped me from finishing the first three or so times
  2. I have written a generator that gives me new chunks on demand.
  3. I have pixeled the most important things in a “good-enaugh” kind of fashion, so I don’t have to worry about that for now

WHAT I LEARNED UP UNTILL NOW:

  1. Generating a 4400*4400 Perlin Noise array is not a good idea with an unoptimised algorythm in an interpreted language 😀
  2. Pygame.Rects don’t like to be deepcopy()ed
  3. Pygame.Surfaces don’t like to be deepcopy()ed
  4. Pygame does not like copy.deepcopy()
  5. PYGAME DOES NOT LIKE COPY.DEEPCOPY()

TODO:

  1. Remove all remaining lines containing deepcopy that stop me from getting a showable resul
  2. Enemys
  3. Weapons
  4. Fog(shouldn’t be more than half an hour)
  5. Types
  6. Castles
  7. Special Abilities
  8. Soundeffects and maybe some music. Might fool around with the Chuck Programming Language again (Procedual Sounds and whatnot), but if time is short, I will use some other tools. Probably the one everyone is using to generate soundeffects
  9. Become insane becaus Hotline Miami OST is playing on repeat

Should better go back to work now, procastination way too much time making this post 😉

Comments

Photon
15. Dec 2013 · 01:09 UTC
Well that’s an interesting piece of information about the deepcopy(). Thanks for the heads-up. 😛