For the longest time the Force Action has only allowed limited options. select angle or toward an object and then apply the force with either instant or permanent [nothing in between].
We should take a page out of Construct2 and 3 and add two new features to the Force Action to add new game mechanics:
1- decleration…so if you select the permanent option, you can select decleration so the object begins moving constantly [ie permanant force] but then gradually slows down; coming to a full halt…by selecting different values for decleration you can control how quickly or slowly the object comes to a halt.
2-gravity…once the object is put into motion the gravity number determines how much the object begins to arch or fall downwards [higher gravity object begins to fall faster, etc.].
RESULT: without using any physicas extention, you can apply permanent force to an object [a rock the character throws] and control the decelration [how near or far it goes] and gravity [how easily and rapidly the rock begins falling down]…all via the Force Action and no physics extention.
The current force action is very permative and has not been updated in a very long time.
I am not against your idea
Just want you to be aware
1 - You are talking about either tweens or tween variable used inside force
Or straight up adding/subtracting to/from variable each frame which is used with instant force
2 - That is why we have physics and platformer behavior
Where you are talking about on top of adding force toward wherever your objects should move
Add another force toward where gravity pull should be most likely angle 90
Unless I’m completely missing something you are looking at, the actions you’re referring to are physics actions in C3. There’s nothing to change as there’s already parity between the two.
These are the same as the physics behaviors in GDevelop, and just like GDevelop, you have to add a behavior to the object in C3.
The non-physics based movement (called “move forward” or “Move at angle”) does not have built in deceleration. You set how many pixels to move, thats it.
there has been alot of confusion on this discussion, i apologize if i was not clear enough.
1- i do not mean use of any physics properties. Construct has physics properties also, but you do not need to use them to make a rock thrown fall gradually down at it travels. you can do that quickly and easily using their version of “add force” [the “bullet behavior” screen show below] which has the gravity and slow down properties also. yes, physcis does it, but it introduces all kinds of other complex and unnecessary variables…using the force action with 2 new variables [one for gravity pull and one for slowing down] solves the problem in a quick and easy way.
if “acceleration” is set to a negative number then the bullet starting at 400 spped but then starts slowing down at that negative speed.
2- i am not talking about using tween but rather just the plain old force action. picture a character throwng a rock [or arrow] and as the rock travles it gradually slows down [decelaration variable] and also goes downward [gravity strenght variable]…it can be solved with 1 force action that has 2 new variables. quick and easy. one and done.
Again; Unless I’m missing something, either there’s a misunderstanding of what this is in C3, or this functionality already exists 1:1 in GDevelop.
What you’re describing is a behavior in C3. The actions for it are also from that C3 behavior, it’s in their documentation. It’s also explicitly built using their physics system and just collections a bunch of standard actions using physics and labels them for the bullet behavior.
There’s no new features needed to do this same thing in GDevelop. The physics engine is available via the physics behavior, the bullet interactions (handling collisions at high speed for a physic object) is available for objects with the physics behavior.
If you wish to pre-label a bunch of conditions, or add new parameters, you could just make a behavior and pre-set up the Physics behavior how you wish, plus adding the conditions/actions you want with the names you want. That’s some of the primary purpose of behaviors, repurposing logic to present it in another way. No new features are needed to do this.
But, really you should just use the Physics behavior because everything is there as is today, acceleration, weight, movement at an angle, bouncing off solids, etc.
It is a bullet behavior [similar to our Force Action]. it is not physics at all, that is a separate behavior. they have managed to recognize and provide a more robust way of moving an object [bullet behavior] with features that are more advance than our “force action” without the need for the fullblow physics behavior and all of the additional features, complications that requires.
Use the physics behavior when you need a sledge hammer, but use the bullet with a few more features for other less demanding needs…the bullet is just like our force action with a few more abilities rather than the basic “instant || perminant”.
we do not have to be “purest” in object oriented development just to recognize the “force action” can improve with a few more features; leaving aside the physics behavior for more advance/realistic developments. they are not mutually excluse…you can improve one, without needing the other in every simple case.
Again, you can read their documentation and how it is built, they even surface some of the base logic (Edit: Sorry, wrote source code in a half-awake state. Apologies for the confusion). It is using their physics engine. (edit: The attributes match up to the physics object attributes nearly 1:1, the only difference is how they’re defining bouncing)
It is just a behavior that combines other actions to recontextualize them, the same way the GD5 behaviors work. I would strongly recommend you focus on doing that to accomplish your goal rather than focusing on something that may never get added (as the devs generally do not add functionality to existing features accomplished by user behaviors)
To be 100% clear, I’m not saying your request is invalid or anything. I’m saying that you can do it, today, with a few basic steps to make an extension, and then you can use that extension whenever and where ever you want. And if you wait for them to add the enhancement you’re requesting, you may be waiting forever.
Edit: This sounded familiar, and I remembered why. Someone already built the extension in question: “Advanced Projectile”