# Character type .gravity is broken in 2.79?

no, this will be excellent to have because … this character wrapper really acts strange. char.gravity doesnt seems to directly = Max jump speed.

thats because its probably not that simple. gravity is a force, more of a scalar than a hard limit.

higher will be a short fast jump, and lower would be floaty. max speed is likely a hard cap, stopping the natural flow of simulated physics.

ok , to summarize “Fall speed max” <> .gravity. I though that .gravity was a proxy for “fall speed max” but no.

• “Jump force” >= 0 and “Fall speed max” > 0 ; object will fall as long as .gravity > 0
• “Jump force” > 0 and “Fall speed max” = 0 ; object will goes up as soon as .gravity < 0
• “Jump force” = 0 and “Fall speed max” = 0 ; object doesn’t react to .gravity
• Set .gravity to 0 and you will simply preserve the current speed (up or down) … just like in space (look the movie with Sandra Bullock Gravity , if you ignore physics law in space)

So you must play with the .gravity to weight with momentum those 2 opposite forces

EDIT : There’s no balance trick : Set the object with Jump Force = 2 and Fall Speed Max = 500 , as soon as the gravity is setted negative, your object will slow down and will ends going up after reducing its falling speed to 0 (so an collision will help for that)

yeah, gravity is like a mass. zero G aka space if zero.

gravity is a constant acceleration in a set direction. physics 101. fall speed max sounds like simulating air friction to hack terminal velocity.

does fall speed at zero disable it?

if Fall speed max = 0 , it will never goes down. But if .gravity < 0 , the object starts to go up

ok, so it hard caps the Z velocity. so you can jump up faster than you fall

maybe its like

``````if worldLinearVelocity.z < -cap:
worldLinearVelocity.z = -cap
``````

EDIT: negative lol

i guess you can make ur character jump higher with lower .gravity or even flying if < 0 . But i just know that it’s not possible to change Jump and Fall parameters in game. It’s possible with import bpy but then cannot use the Standalone player

upbge looks like it adds that feature

ahh, so the character physic type was not dismissed… I just like it for it’s simplicity. I started to make my game with no knowledges in BGE and a little few with Blender. So i started with the basic and now the result is becoming nice

(no offense) But why are you using a CHARACTER_PHYSICS and not RIGIDBODY_PHYSICS (?)
I gave up CHARACTER_PHYSICS long ago due too it being too ‘unpredictable’.
RIGIDBODY_PHYSICS also have more options then CHARACTER_PHYSICS do.

If you are using CHARACTER_PHYSICS for jump code.
Any OBJECT can jump with.

logic.getCurrentController().owner.applyForce()

.jump() works for Character. I would say that Character physics is ok for me for the moment. I’m very suspicious of dynamic Physics in games in general : if your physics goes crazy 1 time on 100 , forget about it. I prefer to stick with basic things and master them rather than go into fancy things i won’t be able to predicte its behavior (i had some hard times with rigid bodies, but i was pure noob at that time) Also why did they create the “Character” physic in the first place ? There’s probably a reason I would like to know.

Also, im not sure that ‘Character’ can use the .applyforce()

[ FEEDBACK ]
If you want PRECISE motion with PYTHON then use math.radians().

I think CHARACTER physics were invented for people who don’t code.

Dynamic box is the best way to hold a player, enemy, or anything that needs a collision check.
Very easy to control, you see that 99% uses this for their characters, due to it’s the best option.

is it a bit harder, no not at all. does it have all the functions, no that is something you need to build (like walking stairs(if you need it)), but most can be worked around it, for example simply put a plane on the stairs

Yes it is good solution for collisions. However box collisions can be very weird to watch.
(Like getting stuck between 2 narrow walls)

never had a problem with it, and if you make the passage as width as the char. box then ur doing something wrong already

@Cotaks
Personally for me.

OBJECTS are either going through walls.
Or
OBJECT COLLISION is extremely far from each other.

P.S I know how to do all the PHYSIC options btw.

so you use the wrong method to move your character.
use velocity or force, now they will never ever again go trough walls

here try it out:

So you scale objects the wrong way, scale in edit mode or use ctrl+a and apply scaling.

Thx for the suggestions.
I was just trying to give some humor to @blenderaptor’s situation.
Collisions isn’t really a big issue for me unless I’m building large environments.

yes, that’s exactely why i’m ok with Character physics. It makes me feel they put a canevas on what is possible and what is not. Generaly speaking, if i see lot of options, somehow i expect that something will goes crazy at 1 moment and i won’t know what will provoke that.

Nice BGE PHYSIC quote.