Ambiera ForumDiscussions, Help and Support. |
|
[ 1 2 ] Page 1 of 2 |
|
|||||
|
Can somebody please help me figure out why what im trying to do isnt working lol i dont understand as I have done this same things with the same method I always do and has always worked? I am trying to have the player get teleported into the "dungeon" (2d room map) when they press a button(while near entrance as determined by proximity behaviors and variables). The player isnt going anywhere, nothing happens. :/ @just_in_case please help :) heres a link to a video where I show my behaviours for this mechanic and the bug as well. |
||||
|
Can't see the video link, and will not be able to answer what issue you are facing, as I don't know how you are implementing the change position. Are you using scripted commands to teleport the player or using the inbuilt behavior to change the position of the player? Also as you are saying that you are using proximity behaviors, so probably need to make sure that all the proximity triggers are working, you can try that by printing the value of the variable to 2D overlays or in the debug console so that you can confirm that it is not the proximity behaviors causing the issue. As proximity behavior gets triggered by the origin of the object. it is always better to apply the proximity behavior to the object if they are large in size, instead of the player, if your player is smaller than the object then applying proximity behavior to the player might lead to no-proximity as the origin of the object can be outside the proximity while the object is actually in the proximity of the player. The case can be opposite for proximity checking with smaller object, if your player is larger than the objects, it is better to attach the proximity behavior to the player. Make sure that the proximity behaviors are set-up correctly. It is also better to use dummy nodes, or empty nodes to check proximity for larger object, for example if you have a house and you want to check the proximity with windows only, then you can create an empty node and place it in the window position of the house, and now you can test the proximity with that dummy node instead of the house. hope checking these will fix your problem, if not then please explain your issue in more detail, or provide the link to the video that you are talking about. |
||||
|
The proximity check is working great as the "Enter Dungeon" picture shows up as its supposed to, only the "Move Object > Set 3D Position" is not doing anything and im not sure why |
||||
|
@just_in_case Also thank you very much for replying so fast, I appreciate it. I have been using your engine for about 3 or 4 years now and will continue to :) It is impressively capable! |
||||
|
@just_in_case Also, I tried changing it from setting the players position to the coordinates, and instead creating a cube with no collision at the location I want the player to get teleported, and changed it to "Change Relative to Scene Node (0.0, 0.0, 0.0)" This had no effect, same bug. If its helpful, I am using a character model with a "Third Person Camera Controller" set to follow it. The camera has no collision, and I told it to restart behaviours of character model right after teleport. Still nothing :/ I have done this before with the same method and it worked, so I'm wondering if it has to do with the Third Person Camera? Thanks, SixVivid |
||||
|
Tested it and it works for me. make sure you are moving character not the camera. that means you need to teleport the character (camera will follow it). restarting behaviours for character also not the camera. (with Physics simulation it doesnt work) |
||||
|
I also tested it an it works for me as well, for both physics simulation and collision only. The reason you might see that it is not working is that it moves with the collision enabled, in physics simulation, it makes the player bounce up and then it bounces the player to somewhere else which makes it look as if it is not working. The same goes with the collision simulation, it moves the character with collision, so when you change the position of the player, it might put the player just outside the dungeon room, or near the point of collision. to confirm that it is the issue of Collision detection, you can simply remove the "Collide when moved behavior" and test the app again. Your player will change the position correctly. in order to change the position of the object with the "Collide when moved" behavior attached so that it can change position without jumping or bouncing back to another position. You can use this javascript command to change the position of your object without collision. var s = ccbGetSceneNodeFromName("cubeMesh1"); simply rename the "cubeMesh1" in the above code with the name of your player node, make sure it remains in Quotes, and change the "X, Y, Z" with the position of your dungeon or with the position where you want your player to be. You can put the above code in the execute javascript action. Also, this is not my engine, I am just a user like you. @Ambiera owns the engine. hehehe ![]() Hope this solves your issue. ![]() |
||||
|
@sven Yeah, I did. As I said i've done this many times before as well, and doenst make sense why it isnt working. Yes, I am moving the character... Didnt I say I've been developing for years? Would have thought you'd know this a month into developing... |
||||
|
@just_in_case Thank you so much, I have been reading and looking for this syntax but havent found it! Much appreciated, and I have ongoing projects all using your engine, if you'd like to see them when they're done just say so! :) |
||||
|
@just_in_case I know it's not your engine, you're seemingly the most involved user is all and have indirectly helped me with many bugs reading other replies from you in other feeds! |
||||
|
What is the "s" in (s, x, y, z) Size? Speed? |
||||
|
nevermind, I read the code again... I'm tired. |
||||
|
@just_in_case ......Your script didnt work... i've seen this code implemented in many projects and it works great. It STILL isnt working. Is it because the position is in the negative range of the Y axis? If so, that is really dumb because terrain is 0,0,0 by default and unmovable. The dungeon needs to be underground so that you cant look up(in game) and see the dungeon floating in the sky...... |
||||
|
Hi there, @sixvivid, the script does work very well, it doesn't matter what is the position, if it's negative or something else. it will always change the position without any issue. "s" in the script is a variable that stand for "scenenode" and it hold the data which scenenode we are going to move or change position. just to clarify that the code works, here is a sample ccb file, in which the cube has third person camera attached to it , which you can move with WASD, and on pressing "F" key the position of the cubemesh gets changed to the Dungeon I created using 2D room maps, below the terrain. https://cdn.discordapp.com/attac... Also in the script, you can provide any position, you don't specifically need to provide position of your object, like you are not bound to use terrain position only. You can create a dummy node, and put it somewher in your scene where you want to telport or move your object. You then copy it's position and paste those position cordinate into the script. Also, @sven has released an action, using the same thing that can help you out, so that you don't have to deal with the scripting part. you can download the extension by @sven from here.https://5v3n.itch.io/coppercube-... I would really love to see your game in action, and I am glad that I am of any help to you ![]() |
||||
|
Yes I know i did all of this exactly and it dont work, except maybe its my player model, i dont know. What i do know is i did it again in a different project (both are just as empty so shouldnt make a difference) and it worked in the second project. |
[ 1 2 ] Page 1 of 2 |
|