BGMC 20 | BeeSpeed

Here’s my entry for BGMC 20


I wanted to try my hand at making a flight simulator, and I’ve always loved the look of this plane.
Not a lot of content unfortunately, as I just threw the map together on the last day.

Attachments



To make the game better, I recommend you use w and s as throttle, a and d as ailerons, left and right as rudder to make the flying easier. I also think that the plane should sway less because in real life gee bees don’t sway that much. Just some constructive criticism.

Wow! I hope the real plane isn’t that unstable! :smiley:
Anyway, I did finally get it in to the air and had a bit of fun.
I expected there would be at least one traditional flight sim in the competition, and this one was a pretty good example of the genre.
I think that using the mouse for steering might give some more intuitive control and make flying the bee a little less scary.

The plane model is lovely by the way.

Yes, the control scheme is kind of left over from wanting to look around while testing, meaning I needed to control the plane with one hand.
I eventually wanted to control the plane with the mouse, but I had too many other pressing things I wanted to add…

The physics could definitely use some fine-tuning (the real plane can’t fly as slowly as this one), but I think a lot of the oscillation is due in part to the binary control scheme.

Thanks!
By reputation it seems like this plane really wasn’t the most stable thing ever to fly :stuck_out_tongue:

You want to borrow some of my code for my plane for mouse movement?


def pitch(self, own, speed, LOADED_WEIGHT, EMPTY_WEIGHT, mouse):

    #Use the mouse to pitch up and down
    posy = mouse.position[1]

        if posy < 0:
        posy = 0     
    if posy > 1:
        posy = 1     
        if posy < 0.6 and posy > 0.4:
        posy = 0     
    if posy < 0.5:
        addTo = 0.5-posy
        posy = posy-addTo-1
        posy /= 1.5   
    if posy == -1:
        posy = 0
            
    posy *= (speed/2.5)+5
    own.applyTorque([posy/(LOADED_WEIGHT/EMPTY_WEIGHT),0,0],True)
        



    def roll(self, own, speed, LOADED_WEIGHT, EMPTY_WEIGHT, mouse):

    #Use the mouse to roll left and right
    posx = mouse.position[0]

    if posx < 0:
        posx = 0     
    if posx > 1:
        posx = 1
    if posx < 0.55 and posx > 0.45:
        posx = 0
    if posx < 0.5:
        addTo = 0.5-posx
        posx = posx-addTo-1
        posx /= 1.5
    if posx == -1:
        posx = 0
        
    posx *= (speed/2.5)+5
    own.applyTorque([0,posx/(LOADED_WEIGHT/EMPTY_WEIGHT),0],True)

Those are two modules I made in a plane.py script

i’m on a macbook pro 13" and i don’t have that key to start the engine!! i would like to play it! graphics looks very good!

Oops!
If you select the object between the two propeller blades, the first keyboard sensor controls the starter.

Sorry about that… If need be I can upload another version

The model is awesome, and the physics are really cool too.
I can understand that you can control the plane pretty well after experimenting with it for 2 weeks, but for players like me it’s pretty hard. But it is really challenging ;). I think that the tips given above should make it easier.

Gandalf 3
still can’t start the engine :frowning:

It’s pretty hard to get the hang of, but i was able to do really well after an hour or two

Huh, so this is why my father never let me play on the old Flight simulators that came with Windows 98.

You owe me a new keyboard and window, by the way. :smiley:

Here’s a special version with enter for the starter key

I feel you bro

Could you please explain to me how you made it so the plane doesn’t drift if you turn? I’m trying to recreate the script you made but when I turn my plane, it drifts in the original direction it was flying.

own.localLinearVelocity.x (or y or z) can be used
like

own.localLinearVelocity.x*=.65

.etc

Nice flying game.