Matrixx Posted August 16, 2007 Report Share Posted August 16, 2007 Something that seriously bothers me about this engine... you can't seem to latch onto slopes on the ceiling at all without going through the floor first. For example... (image 1) What do you think would happen when he hits that spring? He jets off for high speed adventure, right? (image 2) Wrong. Donk! He hits the roof. Is there any way this could be remedied? Link to comment Share on other sites More sharing options...
DimensionWarped Posted August 16, 2007 Report Share Posted August 16, 2007 I'm pretty sure that isn't part of the normal functionality of any of the engines. Instead, its probably done through some manner of specifically enabled exception that is probably done through a trigger. Blaze asked for something similar involving springs. http://www.sonicfangameshq.com/forum/attachment.php?attachmentid=220&d=1178828133 That allows you to set a collision item down that will autmatically plant Sonic to the surface of a ceiling with all the proper direction and whatnot. In order to get it to work at an angle though, you'll need to be a little sneakier and change the angle to suit your needs. You might need to play with it a while. Link to comment Share on other sites More sharing options...
Matrixx Posted August 17, 2007 Author Report Share Posted August 17, 2007 It was a normal part of Sonic DIY and I'm pretty sure it's a part of Sonic Retro... is there really no way to make the engine do this automatically? Link to comment Share on other sites More sharing options...
DimensionWarped Posted August 17, 2007 Report Share Posted August 17, 2007 Actually, I don't recall ever once seeing that happening in the Retro Sonic releases I've played, but I suppose I'll bite anyway. You know about the springing action I'll take it? Well, you could add a clause to it that does basically what I said to do with the sensor object when both a side sensor and the top sensor are set to overlapping. Right Sensor Alt A =1 and Top Sensor Alt A = 1 Then set ground to 1, action to 0, angle to... something, x speed to something, yadda yadda... you'll have to play with it. Left Sensor Alt A =1 and Top Sensor Alt A = 1 THen set ground to 1, action to 0, angle to that on the other side of 90 degrees, x speed to the opposite, yadda yadda, you get the drill. That should cut it... but again, it will require some fine tuning. Link to comment Share on other sites More sharing options...
Matrixx Posted August 17, 2007 Author Report Share Posted August 17, 2007 ...Um. I'm still not sure how the whole 360 movement thing works... Couldn't you just use the same effects for when Sonic lands on a slope and gains speed accordingly, only... upside down? Link to comment Share on other sites More sharing options...
DimensionWarped Posted August 17, 2007 Report Share Posted August 17, 2007 I'm not 100% sure. You'd have to try it. If you want, experiment. Link to comment Share on other sites More sharing options...
Matrixx Posted August 17, 2007 Author Report Share Posted August 17, 2007 I'll have to get a more fundamental understanding of how this works, though... blarg. By the way, see attachment. Link to comment Share on other sites More sharing options...
Midiman Posted August 17, 2007 Report Share Posted August 17, 2007 Do you understand the concept of movement/values in this 360 engine? All you really need to study is the static elements. You can have a 64x64 square object ( much akin to the blocks to the Cork gimmick uses ), and put ths onto the border of a level peice ( so that the engine's sensors can detect it ). This will be our RunTrigger, for now we'll only make 1 ( you can make 3, for each other angle the engine doesn't work for ). Now, let's say that we are making an trigger that let's you run from a 270º angle ( Left Wall and less, like the example's you posted ). the condition for this would be: if Player_SensorLeftBig is overlapping Trigger_270Run and Ground of Player_MovementValues == 0 then do: +Set Angle ( MovementValues ) to 270 +Set Ground to 1 +Set Action to 0 +Set Direction to 1 +Set XSpeed to YSpeed ( MovementValues ), to keep the action smooth. You should now have an object that sets you upward on a wall , note that we shouldn't do this,but instead put it about 32 pixels from the edge of the ceiling curve. If I confused you on anything, let me know. I've been known to be a bad explainer Link to comment Share on other sites More sharing options...
Kain Posted August 17, 2007 Report Share Posted August 17, 2007 You could very simply mimick the manner you land on the ground and flip it upside-down to work on the roof if you're going upwards and had just bounced off a spring. At least that's the most accurate way to do it. I've implemented it before, it requires a fair amount of understanding the engine in that you have to call the slope detect function/fast loop, but otherwise, it's pretty simple and specialized enough to not necessarily be called "part of the movement engine." I don't know World's enough to tell you how you'd do it in that engine, though. It works even better if you have a slope detection method that works when you have no idea what the angle of the wall will be ::wink wink::. Link to comment Share on other sites More sharing options...
Matrixx Posted August 17, 2007 Author Report Share Posted August 17, 2007 Man, I remember when static engines were new and complicated... Link to comment Share on other sites More sharing options...
Recommended Posts