Does anyone know the general, and I'm talking about the high-level mathematical and algorithmal design, construction of a classic 2D Sonic Engine? I've scoured the forums, and I've peeked at some engines (E02's looks great) but I don't want to read anyone's source code because I'm not extending something. I just want solid general advice on how to implement levels (like tiles/collisions/slopes) and loops and other dynamic objects like floating tiles and things like that. I'm very good with Java, C and C# so don't hold back on the programming angle of this guys. And yes, I've read the Sonic Physics Guide, but it's only on Sonic's motion and not the architectural aspects of how the game is put together.
Specifically, I'm working on an engine and I'm concerned about the maps/tiles. Should each tile have a slope and y-intercept based on a unit square system? Should the game be defined by a connection of linear equations/graphs? Should each tile be off/on or true/false and just have a high resolution of these tiles? I have no idea where to start and these are a couple of ideas I have. I'll be sure to ask more!
Thanks a lot guys!
Also, first post whhhhhhhhhhhheeeeeeeeeeeeeeeee!