Alter-Fox wrote:Serpwidgets wrote:So what I'm saying, in my roundabout way, is that this may not even be possible with the Mania engine -- but I hope it is.
It shouldn't be that hard to implement. When reading in a track file you check to see if it's the old version, if so use the default gravity. Otherwise there would be an extra element in the array specifying which gravity setting to use.
If it is already hardcoded though, it could be harder to add this. That's kind of my point. They'd need to change the gravity code that they had, before they could add that gravity element to the array in the GBX.
The gravity code would consist of something like this:
That's it.
Even if "Grav" is a literal numeric value in the source code, it's not that hard to make it a variable which defaults to that same value until/unless it's changed. I can't think of anything else that is subjected to physics in the game so it's not like there's anywhere else to change that same one line of code.
Then you add a couple lines of code to the map editor, for the user to select gravity.
And where the maps are saved, 1 line to write the grav value.
And where a map is loaded :
1- see if the array length is consistent with the grav value, or even check a "version number" in the file header if they already have one,
2-read in that value and set the "grav" variable to that value, else set it to (or leave it as) whatever the constant currently is for Canyon.
Any decent programmer could do that in an hour or less.

Given the source code I could probably do it in an afternoon without having ever seen the source code before.
