Actors Unable to Slide Along Collisions

Have any questions or problems in making your game, subscribing and/or using our software? Post here.
Forum rules
Make sure you are using the newest version. This can be downloaded at the top of the site via the "downloads" link.

Use a very good subject. "Problem" or "Help" are unacceptable titles.

Use the search feature before posting a question, as the answer is probably already here.

Subscript out of range error 9: This is a generic error, and we'll need way more information than that to figure out the problem. If you get this, strongly consider following the instructions of submitting your project through the Submit Bug feature within the editor.
User avatar
RamchuK_Ntertainment
Ultimate 001 Member
 
Joined: Tue Sep 29, 2009 10:50 pm
Location: Seattle, Washington

Actors Unable to Slide Along Collisions

Postby RamchuK_Ntertainment » Wed Feb 08, 2017 1:30 am

I'm not sure if this is a bug, therefore I am writing in this section, but I ran into a rather annoying issue. As of the latest update, actors no longer slide along collision-based objects. I have an actor that is using a basic collision box for practical reasons in my project; the collision does not rotate and is symmetrical. The character is able to rotate as necessary. In the previous build, I was able to easily slide along objects, even when running into them, which makes sense for most games who require this feature. Am I just missing a change that needs to be made to bring the functionality back, or is this a bug? My project is desperately in need of this functionality. :(
Travesty: 3D Survival - WIP >>> Forum Topic
University of Washington (BABA)
-REGT- Ramchuk Entertainment Games Team
Strategy/Action/Adventure
Copyrighted©2008-2017

User avatar
Mike
001 Co-Founder
 
Joined: Sun May 08, 2005 1:29 pm
Location: Ontario, Canada

Re: Actors Unable to Slide Along Collisions

Postby Mike » Wed Feb 08, 2017 1:35 am

Make sure "Auto-Climb/Strafe" is checked in the general behavior options of the actor editor. I'm not guaranteeing this will work, but it'll definitely make it use that system.

User avatar
RamchuK_Ntertainment
Ultimate 001 Member
 
Joined: Tue Sep 29, 2009 10:50 pm
Location: Seattle, Washington

Re: Actors Unable to Slide Along Collisions

Postby RamchuK_Ntertainment » Fri Feb 10, 2017 12:46 am

I've tried it, but it doesn't seem to be changing much, except for better climbing on objects; actors nevertheless get stuck like before. Is there any way around this?
Travesty: 3D Survival - WIP >>> Forum Topic
University of Washington (BABA)
-REGT- Ramchuk Entertainment Games Team
Strategy/Action/Adventure
Copyrighted©2008-2017

User avatar
Mike
001 Co-Founder
 
Joined: Sun May 08, 2005 1:29 pm
Location: Ontario, Canada

Re: Actors Unable to Slide Along Collisions

Postby Mike » Fri Feb 10, 2017 1:19 am

Can you show me a video of before and after by any chance? I'm not really sure.

User avatar
RamchuK_Ntertainment
Ultimate 001 Member
 
Joined: Tue Sep 29, 2009 10:50 pm
Location: Seattle, Washington

Re: Actors Unable to Slide Along Collisions

Postby RamchuK_Ntertainment » Fri Feb 10, 2017 3:19 am

dia.png
dia.png (3.32 KiB) Viewed 907 times

I don't think a video is worth making to explain this (besides, I don't have any footage of how this worked before), but I did jot down an image to illustrate the situation. Assume the green square to be the player, pressed against the collision object. The green square very well depicts the player's collision box, which as mentioned before, does not rotate and remains at a default degree of rotation. The orange line shows the player's actual facing angle (the player model actually rotates to this degree). In the previous version, if the user was to move forward, the player would slide along the collision object (leftward); the degree of rotation would just affect how fast the actor would move. In the new version, the player does not move at all. It's best to imagine some FPS game and a player that is running against a wall that he is facing. You will expect the player to be able to move slightly left or right, depending on how much the player is facing to either side of the wall. Simply being stuck doesn't make sense, unless that is totally desired. In my case, and in most FPS game cases, it is expected that the player model would glide along. Surely this should make more sense now.
Travesty: 3D Survival - WIP >>> Forum Topic
University of Washington (BABA)
-REGT- Ramchuk Entertainment Games Team
Strategy/Action/Adventure
Copyrighted©2008-2017

User avatar
Mike
001 Co-Founder
 
Joined: Sun May 08, 2005 1:29 pm
Location: Ontario, Canada

Re: Actors Unable to Slide Along Collisions

Postby Mike » Fri Feb 10, 2017 11:07 am

Ah I understand now. No, both versions exhibit the same. When using regular movement, it'll allow for movement in different axis when certain axis fails. However, the vehicle system, which I assume is what you're using, doesn't use that same system unfortunately. More recently I made it nudge rotation slightly, but that's all that makes sense for vehicles (as I'm sure you could imagine). You'll want to script movement yourself for that sort of effect, which allows you to design how sensitive and what angles you're willing to accept. If you need help on implementing this, let us know.

User avatar
Mr.Numbers
001 Support
 
Joined: Wed Feb 28, 2007 1:50 am
Location: Alberta, Canada

Re: Actors Unable to Slide Along Collisions

Postby Mr.Numbers » Fri Feb 10, 2017 5:31 pm

You can disregard the vehicle movement system and use the traditional movement x/y, but allow full 360 movement.

If I recall correctly, you can input non-integer numbers into the event, which means you could for instance be moving half speed left (By inputting -0.5)

Using this, you're able to take advantage of the slide behavior of normal movement, with the full 360 range of vehicle movement.

For Change movement X:
Code: Select all
Geometry.DirectionPointX(0,Actor("main").DirectionAngle,1)


For Change movement Y:
Code: Select all
Geometry.DirectionPointY(0,Actor("main").DirectionAngle,1)



Only down side to this is you lose acceleration/reverse speed and such. This could all be totally scripted in though using variables that adjust the "1" at the end of the use-value. Setting it to 0.5 would make the player walk at half speed for instance.

Now lets also hope that I'm totally right that you can input non-integer numbers into the Change movement x/y events :P Otherwise this obviously wouldn't work.
Image
I AM THE ALL MIGHTY SCRIPTING MASTER
Please do not PM me with Engine 001 related questions, rather post on the forums. ;)

User avatar
RamchuK_Ntertainment
Ultimate 001 Member
 
Joined: Tue Sep 29, 2009 10:50 pm
Location: Seattle, Washington

Re: Actors Unable to Slide Along Collisions

Postby RamchuK_Ntertainment » Thu Feb 16, 2017 5:14 pm

I've given the method described a go, but I ran into several issues. To start, since standard movement is only based on the X and Y axis commands, it requires consistent updating in order to correct for the player's facing direction. This however, results in strange behavior; when looping the Change Movement X & Y events at any interval (including 0), movement direction is not updated quickly enough and it seems as though the player's direction has the power to change the movement speed, which looks extremely weird as the player turns and speeds up unintentionally. I noticed that the speed change occurs when the players is moving diagonally. By far, these are the only struggles I ran into, which I would appreciate any guidance on, as I'm not quite sure of what remedies I have available to make this work like the Forward/Backward events for vehicles.

UPDATE: As of the latest update, X & Y movement seems to be working beautifully; above issues do not apply. I will proceed with the implementation. Thank you Numbers for the help!


Last bumped by RamchuK_Ntertainment on Thu Feb 16, 2017 5:14 pm.
Travesty: 3D Survival - WIP >>> Forum Topic
University of Washington (BABA)
-REGT- Ramchuk Entertainment Games Team
Strategy/Action/Adventure
Copyrighted©2008-2017


Return to Technical Support Questions

Who is online

Users browsing this forum: No registered users

cron