Ball:
W A S D or Joystick-RightStick: move
SPACE or Joystick-RightStick-Button: jump
View:
Mouse or Arrow-Keys or Joystick-LeftStick or Joystick-Hat: Rotate view
Mousewheel or Page-up/Page-down or Joystick-Shoulders: Zoom
Middle Mousebutton or Home or Joystick-Button 1: Reset Zoom
F or Joystick-LeftStick-Button: Camera Follows Ball On/Off
Ball has 2 game properties
'Mouse_sensitivity':
Camera speed
'Keyboard_sensitivity':
Ball Speed
Objects with property "obstacle" will let the camera go beyond. (also the floor has this)
Objects with property "transparent" and suitable Material will go transparent when view is blocked.```
the controls are amazing from my small testing and the only flaw is that sometimes the ball jumps or skips when quickly turning but I see it as a game charm and will keep it.
Now, these are some of the mesh that I have been working on for the use of my game.
Thank god this website finally leveled me up but it still has a 5 MB limit for uploads so for one of these I had to upload it to youtube first then here.
What I experience is that the Ball makes little jumps when crossing even total flat face edges (or of the triangulated mesh by the Engine).
It gets better by increasing the “Physics Substeps” (to 5 or so) in the scene properties.
ok, I see now but I really do like it so ill still keep it in.
I got a wild idea. I saw this done on Godot but haven’t seen it anywhere else and the video is now deleted. the idea is that the ball creates torque up the wall when rotating on it but loses speed because of gravity. this has the effect of the ball looking like its rolling up a wall with the amount of speed it has.
this is a drawing of what it looks like. the circle is where the ball hits with normal jumping and the arrow is how much the ball would roll up the wall at max speed.
this is if the ball hits the wall without jumping and only rolls up the wall from the bottom.
this movement would open up a lot and would allow the ball to get to locations it won’t be able to if it didn’t have the speed to climb it. it might even allow wall running but in ball form, if the player has the speed to the other side. this will add speed as a necessary aspect of the game. if it’s possible that is.
One could try to make it 100% predicable by programmming the physics (a lot of games do that), or you could make usage of the force in addition to the torque depending of he collision or position (applying force is already available in inputmovement2.py), which also needs programming.
Or just the right combination of friction and slope of the wall:
oh, so it was already in the code just needed a little tweaking. right now I’m head first creating the first map so ill create it with the movement in mind as well. ill show it here only after I got the mesh done and then later once more when I get the textures for it down.
here’s a little work I have been working on. it’s obviously not done yet I just wanted to show it off a little.
this is before the wall force/torque. it seems you could jump twice and in rare cases thrice on walls. i notice this off the last part of your video and wanted to see if it was the same without the code for wall rolling. i really don’t know which one i like more the wall running or the wall jumping.
Yes, I didn’t change the code, just gave the wall a light slope and reduced its friction.
If you want to disable jumping on the wall remove the property ‘ground’ of the wall. Jumping is only possible when on ‘ground’.
Wall running works and is also cool
(Had to refine the joystick values anyway and added the wall to:
do you have any kind of Patreon or way for me to give support? ill like to donate to you for all your help. you have really done more than I could ever dream of and wish to support you in any way even if it’s just a small amount.
work has started up again for me so my project will take a big hit in productivity. that’s the downside of having a 10-hour work shift for 4 days and almost always 10 hours of overtime on the 5th day. but I did get the map down on a drawing if you could even understand it with my bad drawing skills.
Yeah, I have tried out the wall rolling and it feels fantastic but currently, it covers more or less the same distance as just usual jumping. I think if we add a small amount of force to the ball’s WASD will in the air and make it so will on a wall property the player is able to apply the same force as the ground but be able to jump to have it jump from wall run to wall run but cap it to only one jump so the player is not able to keep jumping on the same wall endlessly and lastly let the gravity naturally drag the player back down and maybe have the player gravity will on a wall property be greater then will on the ground to make it feel like the ball is sliding back down more.
The reason for the small force will in the air is for the player to be able to get onto the platform instead of just going pass the edge and coming back down in the same spot next to the wall.
i also found this little camera bug, if you move the mouse quickly enough up it will bypass the clamping, luckily you can bypass the clamping again to return back to normal.
and the bugs have finally started. got to love programming that’s why I’m more of a modeler than a coder but I have always tried to get into all types of coding but I just don’t have the act for it. so when I found out upbge had logic brick coding I immediately jumped head in but sadly it’s highly limited and coding is a must for most things. oh, how I dream of the day when coding is fully AI.
Hi,
thanks for the bug report. The camera limit should be corrected now in all above files. Hopefully
For me also Logic Bricks in Blender made it much easier to start as I wasn’t into coding at all. After I did a huge project in LibreOffice for which I learnt Basic, Python was easy to understand.
So for the Walls: As you mentioned Wall jumping here is my proposal:
The pink walls have the property stick. When the ball is in contact, a force applies to it into the wall and when jumping the ball will jump away into opposite direction and a bit into the sky. UPBGE_0.3_Ball_joy_magneticWall_Jump.blend (1.2 MB)
Generally it always is a question of friction, slope angle. And for the pink walls you also have to look into the code and can set the sticking force, and jumping force.
It’s a bit up to to play with these or try to adapt or modify.
I like your sketch of the map! It will always be a interesting to concentrate on details or the whole image. (Challenges like wall running or anything that requires skills can easily lead to frutrating gameplay and needs a good respawn system.)
I had almost forgotten: There are also Logic Nodes, which are much more powerful than Bricks. I could imagine that most of my coding could also be done with Logic Nodes.
When the Ball is on a perpendicular Wall it also could be a good idea to change its rolling direction to be relative to the the Wall instead of the view (which is based on a ground plane)
oh no i found so many bugs with this one XD. this one is if getting off the magnetic wall high enough that the ball will go partially through the ground and if its a plane the ball will go through the map.
this next one is if the player is looking stright up will the ball is falling then once it hits the ground the camera will the go into the ball position.
this last one was me just playing with these bugs and having fun the camera one is like a first person XD.
this gives me a idea. is it possable for the player to switch gravity on them so will on the wall gravity is now pointed towards the wall and thus making that wall act like the floor. if this is possable then is also necessary to have the camera change location to look at the ball the same way as it was on the ground. i was thinking of making levels where the map is like 4d puzzle the player will have to traverse. hell can you imagin a 4d maze.
Falling through the ground is a common problem and can best be cured by increasing the physics substeps. They told me. (When I made my marble game I wasn’t aware of that option and made sure the marble better completely falls through and respawns than keeping stuck in the ground )
Ok, the Camera thing is odd. This comes because the cam looks up and then falling down the ray hits the ground and shifts the camera closer to the ball and then they have somthing going on. Getting rid of that smells like work. Or just set the maximum view Angle to 90 degrees instead of 100. Line 156 In lerp.py: max= 100
(edit: no need to change, bugs is now fixed in all versions)
Gravity switching, all is possible. Changing view or rotating the universe, what is better, what is easier? There are different Ball games out there.
This is quite advanced stuff.
Man you really are amazing i was just messing around with the bugs and next thing i know you ready fixed them. yeah for the gravity idea i think ill do that on my own because i want to make it in a unique way. ***
now for the camera maybe we could work around it by having it so if the camera hits or passes the clamp then the main active camera gets switched to a different first person cam? i was liking the first person a little too much with that bug XD.
WT* did you really just fixed it as i was writing this!!!
It’s fantastic that you find those bugs and I just HAVE to correct them.
Meanwhile I changed the ‘Transparency system’ in all files: Instead of using a collision mesh object as workaround for the RayCast (which can’t detect multiple objects in a row) it is now using a Radar Sensor on the CameraEmtpy.
I must say, this Gravity thing has my interest. The Gravity is a vector which can be rotated any direction. Now this vector could be used as base for the Camera and movement system. This would allow crazy things
But my other project is also waiting.