Register - Login
Views: 99379716
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-23-22 11:03:15 PM
Jul - SM64 Hacking (Archive) - Guidelines for level editing New poll - New thread - New reply
Next newer thread | Next older thread
messiaen
Catgirl
Level: 68


Posts: 60/1085
EXP: 2594039
For next: 134761

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 04-30-08 06:00:30 PM (last edited by messiaen at 05-16-08 08:46 AM) Link | Quote
The purpose of this thread is to share helpful information regard Mario 64 level editing.

I got the idea from my main difficult in creating a level from Flatworld: the lack of spatial references makes placing objects and measuring distances very difficult.

So, ny initial idea is to build a database of infomation about Mario physics, such as:

How far mario can jump using normal jump?
How far mario can jump using the long jump?
How high can mario go using normal/double/triple jump? (rephasing, what is the maximum vertical distance between two platforms?)

This could result in pratical guidelines which would decrease significantly testing time.

For maximum accuracy, the "Platform" model from Platform Battlefield can be used. This is how it is drawn:



The red dot represents the X,Y,Z coordinate of the 0x24 object.

Each platform is "1000" wide in X and Z coordinates. If you want a "1000" jump, place two platforms at X or Z coordinates that differ "2000" from each other. If you want to test how high can jump, the "Y" difference between the platforms means how high mario can go.

Here is one pratical result:

Mario can jump "800-830" far using normal jump.
Mario can jump about "1000-1030" far using double jump.

Discovering the double jump maximum distance and other facts will be very useful for measuring and balancing jump difficult.

Edit: Hmm, no interesting on this it seems . This could be of great help also for polygon editing (especially for scaling).
gamekrazzy
Member
Level: 32


Posts: 43/199
EXP: 194425
For next: 12017

Since: 03-06-09


Since last post: 10.4 years
Last activity: 8.6 years

Posted on 03-29-09 08:35:33 PM Link | Quote
I think it would be useful, but as for jumping and most of the things we do on this, we guess, are eyes are able to tell if something seems proportional or not. Now a case scenario where you need to measure is making upside down pipes work, I have actually gotten 1 to work with alot of guessing. If I had measured though I would have found how much is needed to make it work. The complicated feature to this is that when the pipe is off just a little bit, instead of warping, mario jumps and either cannot hit the warp, or hits his head on ceiling of it. I tried to do it a second time, but i failed. This might have something to deal with blocks being above it.

____________________
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 419/621
EXP: 1135504
For next: 21615

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 03-31-09 02:25:42 AM (last edited by VL-Tone at 03-30-09 11:26 PM) Link | Quote
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
It's a really good idea, and when I read it (and saw your diagram) I immediately thought of this: http://hypertextbook.com/facts/2007/mariogravity.shtml

It's a "scientific" analysis of the gravity effect in Mario games.

I'm not sure we can use much of the information there, but it's still interesting to see how precise they tried to be.

Here's the table copied from the page:

Game
Frames
Time
(s)
Height of Mario
(pixels)
Distance of Fall
(pixels)
Distance of Fall
(m)
Acceleration
(m/s2)
Acceleration
(g)
Super Mario Bros. 15 0.5 39 292 11.4 91.28 9.31
Super Mario Bros. 2 12 0.4 45 255 8.6 107.95 11
Super Mario Bros. 3 15 0.5 35 265 11.5 92.31 9.42
Super Mario World 15 0.5 38 193 7.7 61.92 6.32
Super Mario 64 10 0.33 86 217 3.8 69.22 7.06
Super Mario Sunshine 23 0.77 119 988 12.7 43.05 4.4
Super Paper Mario 12 0.4 288 748 4 49.47 5.05



As you can see, for SM64, they evaluate the fall distance in pixels, even though it's a 3d game and Mario can vary in pixel size on the screen. But they do provide Mario's pixel height as used in their calculations, so by knowing the coordinate units height of Mario, we can convert this data in something useable for the editor.

Still, this whole article is only about the gravity (falling) and doesn't cover all the different types of jumps.



____________________
gamekrazzy
Member
Level: 32


Posts: 46/199
EXP: 194425
For next: 12017

Since: 03-06-09


Since last post: 10.4 years
Last activity: 8.6 years

Posted on 03-31-09 02:41:54 AM (last edited by gamekrazzy at 03-30-09 11:46 PM) Link | Quote
Do you know how far from the ground an upside down pipe needs to work? This is in the measurements from TT64 of course. Oh and VL-Tone, I am sure that in SM64 they did not apply all physics such as Air resistance into the game, so wouldn't the jumps not be resisted by anything allowing Mario to go up at a constant rate, so there is a specific point above the ground that causes mario to fall. Obviously the speed going up is less than going down. Now my question is was the falling at a constant rate?

EDIT: NVM the fact that there is an acceleration tells me no, so I guess the higher up mario is, the faster he comes down. And in order to keep that at a constant speed there needs to be a resisting force (Basically Gravity is applied.)

Can't you find out how high mario goes by applying it in an equation? F/a = m. and if gravity is applied here, we can apply more equations to find out how high Mario goes!

____________________
Next newer thread | Next older thread
Jul - SM64 Hacking (Archive) - Guidelines for level editing New poll - New thread - New reply


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

31 database queries, 1 query cache hits.
Query execution time:  0.089844 seconds
Script execution time:  0.022679 seconds
Total render time:  0.112523 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 300 - Warning: unescaped & or unknown entity "&page"
line 119 column 11 - Warning: <form> isn't allowed in <table> elements
line 118 column 10 - Info: <table> previously mentioned
line 120 column 11 - Warning: missing <tr>
line 120 column 119 - Warning: missing </font> before </td>
line 124 column 16 - Warning: plain text isn't allowed in <tr> elements
line 120 column 11 - Info: <tr> previously mentioned
line 125 column 68 - Warning: missing </nobr> before </td>
line 141 column 68 - Warning: missing </nobr> before <tr>
line 147 column 35 - Warning: missing <tr>
line 147 column 50 - Warning: missing </font> before </td>
line 148 column 37 - Warning: unescaped & or unknown entity "&id"
line 147 column 199 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 91 - Warning: missing </font> before </table>
line 156 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 158 column 9 - Warning: missing <tr>
line 176 column 13 - Warning: missing <tr>
line 177 column 99 - Warning: unescaped & or unknown entity "&postid"
line 209 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 211 column 9 - Warning: missing <tr>
line 229 column 13 - Warning: missing <tr>
line 230 column 101 - Warning: unescaped & or unknown entity "&postid"
line 235 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 237 column 9 - Warning: missing <tr>
line 255 column 13 - Warning: missing <tr>
line 256 column 101 - Warning: unescaped & or unknown entity "&postid"
line 258 column 74 - Warning: <style> isn't allowed in <td> elements
line 258 column 9 - Info: <td> previously mentioned
line 258 column 1512 - Warning: missing </font> before <table>
line 267 column 1 - Warning: inserting implicit <font>
line 258 column 138 - Warning: missing </div>
line 276 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 278 column 9 - Warning: missing <tr>
line 296 column 13 - Warning: missing <tr>
line 297 column 101 - Warning: unescaped & or unknown entity "&postid"
line 306 column 17 - Warning: missing <tr>
line 306 column 17 - Warning: discarding unexpected <table>
line 309 column 35 - Warning: missing <tr>
line 309 column 50 - Warning: missing </font> before </td>
line 309 column 91 - Warning: missing </font> before </table>
line 311 column 35 - Warning: missing <tr>
line 311 column 50 - Warning: missing </font> before </td>
line 312 column 37 - Warning: unescaped & or unknown entity "&id"
line 311 column 199 - Warning: missing </font> before </table>
line 313 column 17 - Warning: discarding unexpected </textarea>
line 313 column 28 - Warning: discarding unexpected </form>
line 313 column 35 - Warning: discarding unexpected </embed>
line 313 column 43 - Warning: discarding unexpected </noembed>
line 313 column 53 - Warning: discarding unexpected </noscript>
line 313 column 64 - Warning: discarding unexpected </noembed>
line 313 column 74 - Warning: discarding unexpected </embed>
line 313 column 82 - Warning: discarding unexpected </table>
line 313 column 90 - Warning: discarding unexpected </table>
line 315 column 9 - Warning: missing </font> before <table>
line 327 column 25 - Warning: discarding unexpected </font>
line 336 column 57 - Warning: discarding unexpected </font>
line 314 column 1 - Warning: missing </center>
line 120 column 63 - Warning: <img> lacks "alt" attribute
line 125 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 125 column 93 - Warning: <img> lacks "alt" attribute
line 141 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 141 column 98 - Warning: <img> lacks "alt" attribute
line 148 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 245 - Warning: <img> proprietary attribute value "absmiddle"
line 161 column 22 - Warning: <img> lacks "alt" attribute
line 161 column 63 - Warning: <img> lacks "alt" attribute
line 161 column 111 - Warning: <img> lacks "alt" attribute
line 161 column 161 - Warning: <img> lacks "alt" attribute
line 172 column 15 - Warning: <img> lacks "alt" attribute
line 193 column 908 - Warning: <img> lacks "alt" attribute
line 206 column 1670 - Warning: <img> proprietary attribute value "absmiddle"
line 206 column 1670 - Warning: <img> lacks "alt" attribute
line 214 column 22 - Warning: <img> lacks "alt" attribute
line 214 column 63 - Warning: <img> lacks "alt" attribute
line 214 column 112 - Warning: <img> lacks "alt" attribute
line 214 column 162 - Warning: <img> lacks "alt" attribute
line 215 column 11 - Warning: <img> lacks "alt" attribute
line 225 column 15 - Warning: <img> lacks "alt" attribute
line 232 column 769 - Warning: <img> lacks "alt" attribute
line 240 column 22 - Warning: <img> lacks "alt" attribute
line 240 column 63 - Warning: <img> lacks "alt" attribute
line 240 column 112 - Warning: <img> lacks "alt" attribute
line 240 column 162 - Warning: <img> lacks "alt" attribute
line 251 column 15 - Warning: <img> lacks "alt" attribute
line 258 column 694 - Warning: <img> lacks "alt" attribute
line 273 column 4117 - Warning: <img> lacks "alt" attribute
line 273 column 4276 - Warning: <img> lacks "alt" attribute
line 281 column 22 - Warning: <img> lacks "alt" attribute
line 281 column 63 - Warning: <img> lacks "alt" attribute
line 281 column 112 - Warning: <img> lacks "alt" attribute
line 281 column 162 - Warning: <img> lacks "alt" attribute
line 282 column 11 - Warning: <img> lacks "alt" attribute
line 292 column 15 - Warning: <img> lacks "alt" attribute
line 303 column 1033 - Warning: <img> lacks "alt" attribute
line 312 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 312 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 312 column 245 - Warning: <img> proprietary attribute value "absmiddle"
line 321 column 25 - Warning: <img> lacks "alt" attribute
line 326 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 306 column 17 - Warning: trimming empty <tr>
line 309 column 50 - Warning: trimming empty <font>
line 125 column 68 - Warning: <nobr> is not approved by W3C
line 141 column 68 - Warning: <nobr> is not approved by W3C
line 177 column 27 - Warning: <nobr> is not approved by W3C
line 230 column 27 - Warning: <nobr> is not approved by W3C
line 256 column 27 - Warning: <nobr> is not approved by W3C
line 258 column 158 - Warning: <table> proprietary attribute "height"
line 258 column 223 - Warning: <td> proprietary attribute "background"
line 258 column 319 - Warning: <td> proprietary attribute "background"
line 258 column 409 - Warning: <table> proprietary attribute "height"
line 258 column 489 - Warning: <td> proprietary attribute "background"
line 258 column 1444 - Warning: <td> proprietary attribute "background"
line 297 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 115 warnings and 0 errors!


The alt attribute should be used to give a short description
of an image; longer descriptions should be given with the
longdesc attribute which takes a URL linked to the description.
These measures are needed for people using non-graphical browsers.

For further advice on how to make your pages accessible
see http://www.w3.org/WAI/GL.
You are recommended to use CSS to specify the font and
properties such as its size and color. This will reduce
the size of HTML files and make them easier to maintain
compared with using <FONT> elements.

You are recommended to use CSS to control line wrapping.
Use "white-space: nowrap" to inhibit wrapping in place
of inserting <NOBR>...</NOBR> into the markup.

About HTML Tidy: https://github.com/htacg/tidy-html5
Bug reports and comments: https://github.com/htacg/tidy-html5/issues
Official mailing list: https://lists.w3.org/Archives/Public/public-htacg/
Latest HTML specification: http://dev.w3.org/html5/spec-author-view/
Validate your HTML documents: http://validator.w3.org/nu/
Lobby your company to join the W3C: http://www.w3.org/Consortium

Do you speak a language other than English, or a different variant of
English? Consider helping us to localize HTML Tidy. For details please see
https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md