Last day

We are close to the end but still have fix many little things.
The game is pretty done, the biggest doubt I have is about the controls.
Right now you need both the hands on the keyboard... I don't like it.
I'll reserve some time tomorrow to try different approach with the mouse.

(log in to comment)

Comments

I'm not sure what's wrong with having both hands on the keyboard? I played a ton of (older) games like this. You might want to put your time into some other aspect of the project if it is playable as it is already.
I'd agree with Archwyrm. A lot of old spectrum games used to be q/a and o/p for up, down, left, right and it felt fine.
Yes, opqa and space was my favourite configuration back in the day playing Spectrum games.

There's only one thing you need to be careful with, some keyboards can't handle more than 2 keys at the same time in the same "area". For example: up arrow + left arrow + space won't work, but up arrow + left arrow + z will!
You are correct, nothing bad in having both the hands on the keyboard... I didn't explain it very well.
I meant that in our game you have to control two different objects at the same time: you control the ship with WASD keys and the girl with arrow keys.
So I meant that having both the hands on two sets of direction keys on the keyboard is not so good.
Unfortunately I hadn't time to change it... so you will understand what I mean by playing the game.
Just call it local co-op in that case :).
I don't know why my pard dislike so much these controls.
After playing for a while (I've put 2 moon rocks in place) I got this exception:

Traceback (most recent call last):
  File "run_game.py", line 3, in <module>
    code.main.main()
  File "code/main.py", line 103, in main
    currentLevel=mainLoop(currentLevel)
  File "code/main.py", line 48, in mainLoop
    currentLevel.update()
  File "code/ftg_game/ftg_level.py", line 83, in update
    self.customUpdate() #level mechanics
  File "code/level.py", line 320, in customUpdate
    for i in g.rect.collidelistall(self.doors):
TypeError: Argument must be a sequence of rectstyle objects.
On a closer look this "ftg_game" engine is shared with (at least) your last two PyWeek entries. Is this a public game engine? If so, you could make this clear in the README.
Another crash:

Traceback (most recent call last):
  File "run_game.py", line 3, in <module>
    code.main.main()
  File "/srv/tmp/torrent/done/pyweek-17/ForkedTail_PW17/run/PW17/code/main.py", line 103, in main
    currentLevel=mainLoop(currentLevel)
  File "/srv/tmp/torrent/done/pyweek-17/ForkedTail_PW17/run/PW17/code/main.py", line 48, in mainLoop
    currentLevel.update()
  File "/srv/tmp/torrent/done/pyweek-17/ForkedTail_PW17/run/PW17/code/ftg_game/ftg_level.py", line 83, in update
    self.customUpdate() #level mechanics
  File "/srv/tmp/torrent/done/pyweek-17/ForkedTail_PW17/run/PW17/code/level.py", line 345, in customUpdate
    and not self.garbage[i].immune \
IndexError: list index out of range

ftg stands for "Forked Tail Game" (so I should rename the folder to ft_game instead of ftg_game...)
It is not a public engine, it is just my tentative of splitting code in reusable modules. Unfortunatley I'm not very neat person.

For what concerns the reported crashes, they should be fixed by editing level.py
line 299: self.doors[i]=0 --> self.doors[i].full=0
line 345: and not self.garbage[i].immune --> and not self.aliens[i].immune
I don't have chance to test them right now.