Register - Login
Views: 99379089
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-23-22 10:44:01 PM
Jul - SM64 Hacking (Archive) - ToadsTool Suggestions New poll - New thread - Thread closed
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 Next newer thread | Next older thread
Weapon Master
Random nobody
Level: 8


Posts: 3/8
EXP: 1614
For next: 573

Since: 05-18-08

From: Pennsylvania

Since last post: 13.9 years
Last activity: 13.8 years

Posted on 05-22-08 08:35:54 PM Link
Dont yell if this was already posted but, how about a multiselect option. I.E. ctrl clicking on objects will allow you to change what they are, the position, ect. This would be useful for flatworld due to its 100+ blank items.
messiaen
Catgirl
Level: 68


Posts: 106/1085
EXP: 2594035
For next: 134765

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 05-22-08 09:27:07 PM Link
If you hold the "shift" key, you can select multiple objects at once. Any changes will affect all selected objects. It also took me a while to figure this feature , but it is probably in the Read Me file.
Weapon Master
Random nobody
Level: 8


Posts: 4/8
EXP: 1614
For next: 573

Since: 05-18-08

From: Pennsylvania

Since last post: 13.9 years
Last activity: 13.8 years

Posted on 05-22-08 10:54:05 PM Link
Thanks for that messiaen, it shuold list that. Another thing, how about a help button?
Stevoisiak
Member
Level: 38


Posts: 84/283
EXP: 345475
For next: 24972

Since: 11-22-07

From: New York, Long Island

Since last post: 12.3 years
Last activity: 5.6 years

Posted on 05-26-08 03:56:08 PM Link
So let me compile a newer list list of suggestions (I made one before) and if available, quotes from VL-Tone.


-A help button
-Turn double textures (Ex: Paintings, peach's portrait) into a single texture
Originally posted by VL-Tone
Yeah, but I would need to create special cases for these textures. I understand how useful it could be, but it would mean to have to design a special interface to deal with these.

-Integrate Text Wrangler into Toad's Tool
Originally posted by VL-Tone
Integrating the text editor was always in the plans. Currently it's not integrated. The menus for signs and Toad will show you the text from the game, but won't let you edit it. Actually it only shows the original text, it doesn't load it from the ROM.

The main issue is that the Text Wrangler shares some function names but the functions are sometimes different. Also, TT64 uses a different Binary I/O Xtra (Director Plug-in), so I'll have to change the code so it uses the same one (using both Xtras at the same time creates problems).

It won't be that hard, but the fact that it's not straightforward kept me from adding it sooner.

-Automatically resize oversized textures
Originally posted by VL-Tone
Having an automatic resizing feature was in my original plans. It wouldn't be that hard to implement. I'll try to keep that in mind

-Ability to edit colors of objects/characters other than Mario
-Change preferences before loading the ROM
Originally posted by VL-Tone
I'll try to see what I can do about that preference thing. I guess I could change the startup sequence so that it jumps to the pref screen at the beginning, and disable the "enable flatworld" button, and "back to editor" until a ROM is first loaded.

-Automatic Mario to Luigi/Waluigi/Wario button
Originally posted by VL-Tone
I thought about it, maybe a Luigi preset will be included.

-Skins for Toads Tool
-Make it so no files are left on the host PC if Toad's Tool is run of a flashdrive
Originally posted by VL-Tone
Well TT64 leaves an harmless preference file, but that's it.

-Add messiaen's custom objects for Flatworld Battlefield and "Flatworld Lava Land" to Toads Tool
-Allow extra text in the game
Originally posted by VL-Tone
It wouldn't be "that" hard, I would just need to know where is the pointer for the beginning of the text data so I could move the text at the end of its MIO0 bank, at a place where expansion would be easier. I'll try to keep that suggestion in mind and eventually implement it.

-Make some objects movable
Originally posted by VL-Tone
Unfortunately, the SM64 engine doesn't makes this as easy. You can't turn things solid just with a simple byte change, unlike when I thought when I started hacking the game. Objects need a collision map to be solid, which is in a different format than the textured polygon model.

Platforms in the Bowser courses and in Lethal Lava Land rely on the main level collision map to be solid, that's the problem we have. Moving the platforms without modifying the main collision map result in platforms that are not solid. Even if I make a collision data editor, it would be complicated to keep track of object movements and match the collision data changes. Furthermore, while some platforms can move individually, some of them are glued together in the collision map, and separating them in the collision map wouldn't be trivial, it would require adding new collision polygons.

You probably noticed that some platforms in other levels are solid by themselves, don't rely on the main collision map, and will remain solid if you move them.

Those have their own collision map, stored somewhere in the level data bank, or in the bank where their textured polygons are found.

I recently figured out that these collision maps are referred by the 0x2A commands found in the behavior scripts. The 0x2A command includes the address where this collision map is found. For example, the rotating grass platforms in Whomp's Fortress rely on their behavior to be solid. If you apply their behavior to another object, you'll notice that it does rotate, but that it has the same round platform collision as the original platform.

What I'm thinking about doing, is generate individual collision maps for each platform in the Bowser courses and LLL, then create new behavior scripts for each of them that will refer to their own collision map.

That would solve a lot of problems at the same time. That way, platforms would be really solid, and you could move them, swap them, duplicate them without having to modify the main collision map each time. I'd probably have to eliminate the original collision map.

If I used the rotating grass platform as a template to create these new behaviors, you could even make all platforms in the level rotate at the speed you want, or if you'd set their rotation to zero, they would be static like they are in the original.

Doing that would require some heavy modification of the original levels and data. The ROM would need to be patched with these modifications before it would be loaded by TT64. Maybe the ROM Extender could do that automatically, or TT64 itself.

-Use High Resolution textures.
Originally posted by VL-Tone
The N64 hardware has a very small texture cache, and this is the real limitation.

At best we could replace 32x32 textures by 64x64 versions. That would be relatively easy for textures that are contained in "texture-only" MIO0 data bank, but it would be much more complicated for textures that are contained along polygon data in the same MIO0 banks, since it would require moving the polygon commands around and change all the pointers and jump commands.

The high-resolution SM64 textures you've seen are possible only in an emulator using a specially crafted plug-in called "Rice video". This plug-in doesn't read the high-res textures from the ROM but rather from a folder. As far as I know it doesn't really increase the n64 texture cache, but rather intercepts the low-res texture before they're drawn on screen and replaces them with the high-res version.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 205/621
EXP: 1135502
For next: 21617

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 05-28-08 02:49:59 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by messiaen
If you hold the "shift" key, you can select multiple objects at once. Any changes will affect all selected objects. It also took me a while to figure this feature , but it is probably in the Read Me file.


Starting with version 0.5.6 or something like that, I modified the behavior of the shift key from what it was in previous versions.

Now you can use the shift key to select multiple objects in the same click, by selecting the first object, then clicking on the last object while holding shift. Previously the shift key was only selecting or deselecting one object at a time (you could select multiple objects using shift, but only one by one). Since that change, the control key is now used much like the shift key was in previous versions, mimicking standard UI selection behaviors found in Windows and Mac OS X (though on the Mac it's the command key that has this role in the rest of the OS).

These changes were not listed in the latest documentation, but I'm pretty sure that the earlier shift behavior was mentioned.

Anyway, thanks again guys for all the suggestions, I'll try to address them when I get the time to work on TT64 again.

____________________
messiaen
Catgirl
Level: 68


Posts: 116/1085
EXP: 2594035
For next: 134765

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 05-28-08 03:16:32 AM (last edited by messiaen at 05-28-08 01:52 PM) Link
There is one suggestion I think could benefit TT64 flexibilty: support loading behaviors from banks other than 0x13. I think every level can hold a few more bytes of data, so if you sneak in custom behaviors in one of the banks loaded (and expand it) you can have for instance scaling behaviors without affecting all objects and/or individual collision maps for some objects.

Also, VL-Tone, are you sure about the shift key functionality? In my 0.5.98b Windows version, it behaves like the usual "Control" function (selecting just one object at once), instead of selecting all objects between the first and second click.
GhostMaster3000
Member
Level: 18


Posts: 18/53
EXP: 27633
For next: 2264

Since: 04-07-08

From: United States

Since last post: 12.5 years
Last activity: 12.5 years

Posted on 06-03-08 12:49:14 AM Link
Make the ROM extender extend all n64 ROMs to help people hack other games

____________________
Consoles Own: Atari 2600, NES, Game Boy, PlayStation, Nintendo 64, Game Boy Color, Sega Dreamcast, PlayStation 2, Gamecube, Xbox, Gameboy Advance (and SP), Nintendo DS (and DS Lite), PSP, Xbox 360, and Wii
Stevoisiak
Member
Level: 38


Posts: 87/283
EXP: 345475
For next: 24972

Since: 11-22-07

From: New York, Long Island

Since last post: 12.3 years
Last activity: 5.6 years

Posted on 06-03-08 01:02:56 AM Link
Originally posted by GhostMaster3000
Make the ROM extender extend all n64 ROMs to help people hack other games

Youd need a decoding of each individual game to extend it. When it extends the rom, the moved data needs to be moved to specific places, or it'll just end up as garbage.
Linkin800
User
Level: 11


Posts: 6/17
EXP: 5008
For next: 977

Since: 05-01-08


Since last post: 13.0 years
Last activity: 12.4 years

Posted on 06-03-08 01:34:19 AM Link
A way to rename object's so you don't have to click on everything that says undentified object to find the right one.
GhostMaster3000
Member
Level: 18


Posts: 19/53
EXP: 27633
For next: 2264

Since: 04-07-08

From: United States

Since last post: 12.5 years
Last activity: 12.5 years

Posted on 06-03-08 01:52:15 AM Link
Originally posted by Stevoisiak
Originally posted by GhostMaster3000
Make the ROM extender extend all n64 ROMs to help people hack other games

Youd need a decoding of each individual game to extend it. When it extends the rom, the moved data needs to be moved to specific places, or it'll just end up as garbage.

good point

____________________
Consoles Own: Atari 2600, NES, Game Boy, PlayStation, Nintendo 64, Game Boy Color, Sega Dreamcast, PlayStation 2, Gamecube, Xbox, Gameboy Advance (and SP), Nintendo DS (and DS Lite), PSP, Xbox 360, and Wii
messiaen
Catgirl
Level: 68


Posts: 124/1085
EXP: 2594035
For next: 134765

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 06-06-08 01:46:45 PM Link
What about the possibility to manually input the behavior number instead of choosing it from the list? Since this would require some intimacy with behaviors, TT64 could prompt a confirmation box.

The reason I ask this is twofold: first, because of the "undefined behaviors" and, second, to make access to custom behaviors more easy. TT64 compiles the list of behaviors from objects used in the game, so if you have an unused behavior it won't show in the interface. To use it, you have manually change the behavior of a object in a hex editor, and then open TT64 behavior for a new "object combo" to be created.

Another option, but this probably needs a bit more work, is to actually read the bank 0x13 and compile the list of behaviors pointers from there.
machead253
iFruit
Level: 18


Posts: 46/50
EXP: 25222
For next: 4675

Since: 05-17-08

From: U.S.A

Since last post: 13.5 years
Last activity: 13.3 years

Posted on 07-16-08 02:24:05 PM Link
Would it be hard to have a button that could take Mario's hat of or maybe you could save different colors for Mario instead of doing it manually each time.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 210/621
EXP: 1135502
For next: 21617

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 07-16-08 03:43:52 PM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by messiaen
There is one suggestion I think could benefit TT64 flexibilty: support loading behaviors from banks other than 0x13. I think every level can hold a few more bytes of data, so if you sneak in custom behaviors in one of the banks loaded (and expand it) you can have for instance scaling behaviors without affecting all objects and/or individual collision maps for some objects.

Also, VL-Tone, are you sure about the shift key functionality? In my 0.5.98b Windows version, it behaves like the usual "Control" function (selecting just one object at once), instead of selecting all objects between the first and second click.



Yes it could be done, currently the 0x13 byte is hidden, but I could make it visible and editable. As for the shift key, I'll have to check when I get home, but it is supposed to work that way.

Originally posted by Linkin800
A way to rename object's so you don't have to click on everything that says undentified object to find the right one.


Actually, you can change object labels with the current version of TT64, hold the alt/option key when clicking on the name (in the parameter bar, not in the menu) and you'll be able to edit the name. Note that if you update TT64 you'll lose your changes unless you keep the "label" files from the previous version. If you manage to find and rename a lot of the unknown labels, you can send me the files so I can integrate the changes into the next version of TT64.

Originally posted by messiaen
What about the possibility to manually input the behavior number instead of choosing it from the list? Since this would require some intimacy with behaviors, TT64 could prompt a confirmation box.

The reason I ask this is twofold: first, because of the "undefined behaviors" and, second, to make access to custom behaviors more easy. TT64 compiles the list of behaviors from objects used in the game, so if you have an unused behavior it won't show in the interface. To use it, you have manually change the behavior of a object in a hex editor, and then open TT64 behavior for a new "object combo" to be created.

Another option, but this probably needs a bit more work, is to actually read the bank 0x13 and compile the list of behaviors pointers from there.



By holding the alt/option key and clicking on a parameter field, you can edit any locked values. The field will be highlighted in red, reminding you to be careful with the values you enter. You can even edit things like 0x17 and 0x1A parameters with this feature (which are normally locked), but you'll have to reload the ROM for TT64 to take the changes into account.

Originally posted by machead253
Would it be hard to have a button that could take Mario's hat of or maybe you could save different colors for Mario instead of doing it manually each time.


Being able to save color sets is a nice suggestion, I'll try to remember it. As for Mario's hat, it would require me to have the ROM location of the byte modified by the appropriate Gameshark code (I assume that there's a code that does that).


____________________
Deleted User
Collection of nobodies
Posted on 07-18-08 07:52:49 AM Link
When you click the maximize button on a widescreen display, Toad's Tool 64 doesn't maximize the window fully. It makes the window not resize fully across the screen. Dragging the edges of the window when small doesn't allow the window to fill the whole screen, just a square shaped part of the screen on the left side.

My suggestion is when you click the maximize button on a widescreen display, it maximizes the screen fully and also dragging the edges should allow the window to go across the whole screen.
messiaen
Catgirl
Level: 68


Posts: 174/1085
EXP: 2594035
For next: 134765

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 07-18-08 04:04:41 PM (last edited by messiaen at 07-18-08 03:27 PM) Link
I'm not sure if the following are bugs or something that needs to be implemented, but I would like to know how jumps (0x06) in the level scripts are handled. I tried insert a jump inside a jump and that works in SM64, but not in TT64. I also tried repointing one of existing 0x06 jumps to an extended part of the level script to get more room for 0x24 objects, but again this worked in the game but not in TT64. In both cases, I got a #getProp error. Are the level script jumps hardcoded in TT64?

And for the suggestion itself: what about a debug box so you can see what command and/or offset triggered the error?
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 213/621
EXP: 1135502
For next: 21617

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 07-21-08 12:22:32 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by Blaster
When you click the maximize button on a widescreen display, Toad's Tool 64 doesn't maximize the window fully. It makes the window not resize fully across the screen. Dragging the edges of the window when small doesn't allow the window to fill the whole screen, just a square shaped part of the screen on the left side.

My suggestion is when you click the maximize button on a widescreen display, it maximizes the screen fully and also dragging the edges should allow the window to go across the whole screen.



What resolution is your screen? I think I put some maximum size value for the window, I may extend it, or remove the maximum. As for the dragging by the edges, I think it's a Director limitation, maybe it's fixed in Director 11, I'll have to check.

Originally posted by messiaen
I'm not sure if the following are bugs or something that needs to be implemented, but I would like to know how jumps (0x06) in the level scripts are handled. I tried insert a jump inside a jump and that works in SM64, but not in TT64. I also tried repointing one of existing 0x06 jumps to an extended part of the level script to get more room for 0x24 objects, but again this worked in the game but not in TT64. In both cases, I got a #getProp error. Are the level script jumps hardcoded in TT64?

And for the suggestion itself: what about a debug box so you can see what command and/or offset triggered the error?



Did you use the 0x07 command to get back from your jumps? I suspect that the game may not care that much if you didn't, but TT64 does.

As for a debug box, TT64 would first need some better error trapping. There's already a debug function that is more or less useful, hold shift while clicking on the splash screen to activate it.


____________________
Deleted User
Collection of nobodies
Posted on 07-21-08 12:54:40 AM Link
Originally posted by VL-Tone
Originally posted by Blaster
When you click the maximize button on a widescreen display, Toad's Tool 64 doesn't maximize the window fully. It makes the window not resize fully across the screen. Dragging the edges of the window when small doesn't allow the window to fill the whole screen, just a square shaped part of the screen on the left side.

My suggestion is when you click the maximize button on a widescreen display, it maximizes the screen fully and also dragging the edges should allow the window to go across the whole screen.


What resolution is your screen? I think I put some maximum size value for the window, I may extend it, or remove the maximum. As for the dragging by the edges, I think it's a Director limitation, maybe it's fixed in Director 11, I'll have to check.

My screen resolution is 1680 x 1050.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 217/621
EXP: 1135502
For next: 21617

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 07-21-08 01:18:08 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Well it's the same as mine, though I'm pretty sure I put the limit of 1280 when I had a smaller screen. So anyway I'll remove the limit in the next version.


____________________
Deleted User
Collection of nobodies
Posted on 07-21-08 01:25:03 AM Link
Also I noticed I can't drag the bottom of the window to touch the taskbar. Clicking the maximize button doesn't let it either.
GhostMaster3000
Member
Level: 18


Posts: 32/53
EXP: 27633
For next: 2264

Since: 04-07-08

From: United States

Since last post: 12.5 years
Last activity: 12.5 years

Posted on 08-20-08 01:32:30 AM (last edited by GhostMaster3000 at 08-19-08 10:34 PM) Link
I just thought of something, when we known a lot about sm64, we can turn it into
A completely different game. Like the game is what you start with but then you use custom models and behaivors to change it.

Like mario in ocarina of time or a mix of games with a different plot.

____________________
Consoles Own: Atari 2600, NES, Game Boy, PlayStation, Nintendo 64, Game Boy Color, Sega Dreamcast, PlayStation 2, Gamecube, Xbox, Gameboy Advance (and SP), Nintendo DS (and DS Lite), PSP, Xbox 360, and Wii
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 Next newer thread | Next older thread
Jul - SM64 Hacking (Archive) - ToadsTool Suggestions New poll - New thread - Thread closed


Rusted Logic

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

34 database queries, 10 query cache hits.
Query execution time:  0.094661 seconds
Script execution time:  0.035073 seconds
Total render time:  0.129734 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 299 - 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 192 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 93 - Warning: unescaped & or unknown entity "&page"
line 149 column 124 - Warning: unescaped & or unknown entity "&page"
line 149 column 155 - Warning: unescaped & or unknown entity "&page"
line 149 column 186 - Warning: unescaped & or unknown entity "&page"
line 149 column 217 - Warning: unescaped & or unknown entity "&page"
line 149 column 250 - Warning: unescaped & or unknown entity "&page"
line 149 column 281 - Warning: unescaped & or unknown entity "&page"
line 149 column 312 - Warning: unescaped & or unknown entity "&page"
line 149 column 343 - Warning: unescaped & or unknown entity "&page"
line 149 column 375 - Warning: unescaped & or unknown entity "&page"
line 149 column 408 - Warning: unescaped & or unknown entity "&page"
line 149 column 441 - Warning: unescaped & or unknown entity "&page"
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 478 - 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 182 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 184 column 9 - Warning: missing <tr>
line 202 column 13 - Warning: missing <tr>
line 208 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 210 column 9 - Warning: missing <tr>
line 228 column 13 - Warning: missing <tr>
line 234 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 236 column 9 - Warning: missing <tr>
line 254 column 13 - Warning: missing <tr>
line 308 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 310 column 9 - Warning: missing <tr>
line 328 column 13 - Warning: missing <tr>
line 331 column 73 - Warning: <style> isn't allowed in <td> elements
line 331 column 9 - Info: <td> previously mentioned
line 331 column 1511 - Warning: missing </font> before <blockquote>
line 331 column 1590 - Warning: inserting implicit <font>
line 331 column 1590 - Warning: missing </font> before <hr>
line 331 column 1655 - Warning: inserting implicit <font>
line 331 column 1655 - Warning: missing </font> before <hr>
line 332 column 1 - Warning: inserting implicit <font>
line 331 column 137 - Warning: missing </div>
line 342 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 344 column 9 - Warning: missing <tr>
line 362 column 13 - Warning: missing <tr>
line 370 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 372 column 9 - Warning: missing <tr>
line 390 column 13 - Warning: missing <tr>
line 396 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 398 column 9 - Warning: missing <tr>
line 416 column 13 - Warning: missing <tr>
line 423 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 425 column 9 - Warning: missing <tr>
line 443 column 13 - Warning: missing <tr>
line 449 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 451 column 9 - Warning: missing <tr>
line 469 column 13 - Warning: missing <tr>
line 477 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 479 column 9 - Warning: missing <tr>
line 497 column 13 - Warning: missing <tr>
line 507 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 509 column 9 - Warning: missing <tr>
line 527 column 13 - Warning: missing <tr>
line 533 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 535 column 9 - Warning: missing <tr>
line 553 column 13 - Warning: missing <tr>
line 556 column 73 - Warning: <style> isn't allowed in <td> elements
line 556 column 9 - Info: <td> previously mentioned
line 556 column 1511 - Warning: missing </font> before <blockquote>
line 556 column 1590 - Warning: inserting implicit <font>
line 556 column 1590 - Warning: missing </font> before <hr>
line 556 column 1655 - Warning: inserting implicit <font>
line 556 column 1655 - Warning: missing </font> before <hr>
line 559 column 1 - Warning: inserting implicit <font>
line 559 column 1 - Warning: missing </font> before <blockquote>
line 562 column 2520 - Warning: inserting implicit <font>
line 562 column 2520 - Warning: missing </font> before <hr>
line 562 column 2586 - Warning: inserting implicit <font>
line 562 column 2586 - Warning: missing </font> before <hr>
line 563 column 1 - Warning: inserting implicit <font>
line 563 column 1 - Warning: missing </font> before <blockquote>
line 566 column 3212 - Warning: inserting implicit <font>
line 566 column 3212 - Warning: missing </font> before <hr>
line 566 column 3277 - Warning: inserting implicit <font>
line 566 column 3277 - Warning: missing </font> before <hr>
line 571 column 1 - Warning: inserting implicit <font>
line 571 column 1 - Warning: missing </font> before <blockquote>
line 574 column 4461 - Warning: inserting implicit <font>
line 574 column 4461 - Warning: missing </font> before <hr>
line 574 column 4528 - Warning: inserting implicit <font>
line 574 column 4528 - Warning: missing </font> before <hr>
line 575 column 1 - Warning: inserting implicit <font>
line 556 column 137 - Warning: missing </div>
line 579 column 15 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 580 column 25 - Warning: missing <tr>
line 587 column 33 - Warning: missing <tr>
line 594 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 596 column 9 - Warning: missing <tr>
line 614 column 13 - Warning: missing <tr>
line 622 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 624 column 9 - Warning: missing <tr>
line 642 column 13 - Warning: missing <tr>
line 645 column 73 - Warning: <style> isn't allowed in <td> elements
line 645 column 9 - Info: <td> previously mentioned
line 645 column 1511 - Warning: missing </font> before <blockquote>
line 645 column 1590 - Warning: inserting implicit <font>
line 645 column 1590 - Warning: missing </font> before <hr>
line 646 column 1 - Warning: inserting implicit <font>
line 646 column 1 - Warning: missing </font> before <hr>
line 648 column 1 - Warning: inserting implicit <font>
line 648 column 1 - Warning: missing </font> before <blockquote>
line 651 column 2463 - Warning: inserting implicit <font>
line 651 column 2463 - Warning: missing </font> before <hr>
line 651 column 2528 - Warning: inserting implicit <font>
line 651 column 2528 - Warning: missing </font> before <hr>
line 654 column 1 - Warning: inserting implicit <font>
line 645 column 137 - Warning: missing </div>
line 660 column 15 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 661 column 25 - Warning: missing <tr>
line 668 column 33 - Warning: missing <tr>
line 678 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 680 column 9 - Warning: missing <tr>
line 698 column 13 - Warning: missing <tr>
line 701 column 73 - Warning: <style> isn't allowed in <td> elements
line 701 column 9 - Info: <td> previously mentioned
line 701 column 137 - Warning: missing </div>
line 704 column 15 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 705 column 25 - Warning: missing <tr>
line 712 column 33 - Warning: missing <tr>
line 717 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 719 column 9 - Warning: missing <tr>
line 737 column 13 - Warning: missing <tr>
line 746 column 17 - Warning: missing <tr>
line 746 column 17 - Warning: discarding unexpected <table>
line 749 column 35 - Warning: missing <tr>
line 749 column 93 - Warning: unescaped & or unknown entity "&page"
line 749 column 124 - Warning: unescaped & or unknown entity "&page"
line 749 column 155 - Warning: unescaped & or unknown entity "&page"
line 749 column 186 - Warning: unescaped & or unknown entity "&page"
line 749 column 217 - Warning: unescaped & or unknown entity "&page"
line 749 column 250 - Warning: unescaped & or unknown entity "&page"
line 749 column 281 - Warning: unescaped & or unknown entity "&page"
line 749 column 312 - Warning: unescaped & or unknown entity "&page"
line 749 column 343 - Warning: unescaped & or unknown entity "&page"
line 749 column 375 - Warning: unescaped & or unknown entity "&page"
line 749 column 408 - Warning: unescaped & or unknown entity "&page"
line 749 column 441 - Warning: unescaped & or unknown entity "&page"
line 749 column 50 - Warning: missing </font> before </td>
line 749 column 478 - Warning: missing </font> before </table>
line 751 column 35 - Warning: missing <tr>
line 751 column 50 - Warning: missing </font> before </td>
line 752 column 37 - Warning: unescaped & or unknown entity "&id"
line 751 column 192 - Warning: missing </font> before </table>
line 753 column 17 - Warning: discarding unexpected </textarea>
line 753 column 28 - Warning: discarding unexpected </form>
line 753 column 35 - Warning: discarding unexpected </embed>
line 753 column 43 - Warning: discarding unexpected </noembed>
line 753 column 53 - Warning: discarding unexpected </noscript>
line 753 column 64 - Warning: discarding unexpected </noembed>
line 753 column 74 - Warning: discarding unexpected </embed>
line 753 column 82 - Warning: discarding unexpected </table>
line 753 column 90 - Warning: discarding unexpected </table>
line 755 column 9 - Warning: missing </font> before <table>
line 767 column 25 - Warning: discarding unexpected </font>
line 776 column 58 - Warning: discarding unexpected </font>
line 754 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 216 - Warning: <img> proprietary attribute value "absmiddle"
line 161 column 21 - Warning: <img> lacks "alt" attribute
line 161 column 62 - 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 187 column 22 - Warning: <img> lacks "alt" attribute
line 187 column 63 - Warning: <img> lacks "alt" attribute
line 187 column 111 - Warning: <img> lacks "alt" attribute
line 187 column 161 - Warning: <img> lacks "alt" attribute
line 198 column 15 - Warning: <img> lacks "alt" attribute
line 205 column 236 - Warning: <img> proprietary attribute value "absmiddle"
line 205 column 236 - Warning: <img> lacks "alt" attribute
line 213 column 21 - Warning: <img> lacks "alt" attribute
line 213 column 62 - Warning: <img> lacks "alt" attribute
line 213 column 111 - Warning: <img> lacks "alt" attribute
line 213 column 161 - Warning: <img> lacks "alt" attribute
line 224 column 15 - Warning: <img> lacks "alt" attribute
line 231 column 160 - Warning: <img> proprietary attribute value "absmiddle"
line 231 column 160 - Warning: <img> lacks "alt" attribute
line 239 column 22 - Warning: <img> lacks "alt" attribute
line 239 column 63 - Warning: <img> lacks "alt" attribute
line 239 column 112 - Warning: <img> lacks "alt" attribute
line 239 column 162 - Warning: <img> lacks "alt" attribute
line 250 column 15 - Warning: <img> lacks "alt" attribute
line 313 column 22 - Warning: <img> lacks "alt" attribute
line 313 column 63 - Warning: <img> lacks "alt" attribute
line 313 column 112 - Warning: <img> lacks "alt" attribute
line 313 column 162 - Warning: <img> lacks "alt" attribute
line 324 column 15 - Warning: <img> lacks "alt" attribute
line 331 column 693 - Warning: <img> lacks "alt" attribute
line 331 column 1818 - Warning: <img> proprietary attribute value "absmiddle"
line 331 column 1818 - Warning: <img> lacks "alt" attribute
line 339 column 2976 - Warning: <img> lacks "alt" attribute
line 339 column 3135 - Warning: <img> lacks "alt" attribute
line 347 column 22 - Warning: <img> lacks "alt" attribute
line 347 column 63 - Warning: <img> lacks "alt" attribute
line 347 column 111 - Warning: <img> lacks "alt" attribute
line 347 column 161 - Warning: <img> lacks "alt" attribute
line 358 column 15 - Warning: <img> lacks "alt" attribute
line 375 column 22 - Warning: <img> lacks "alt" attribute
line 375 column 63 - Warning: <img> lacks "alt" attribute
line 375 column 112 - Warning: <img> lacks "alt" attribute
line 375 column 162 - Warning: <img> lacks "alt" attribute
line 376 column 11 - Warning: <img> lacks "alt" attribute
line 386 column 15 - Warning: <img> lacks "alt" attribute
line 401 column 22 - Warning: <img> lacks "alt" attribute
line 401 column 63 - Warning: <img> lacks "alt" attribute
line 401 column 112 - Warning: <img> lacks "alt" attribute
line 401 column 162 - Warning: <img> lacks "alt" attribute
line 412 column 15 - Warning: <img> lacks "alt" attribute
line 428 column 22 - Warning: <img> lacks "alt" attribute
line 428 column 63 - Warning: <img> lacks "alt" attribute
line 428 column 112 - Warning: <img> lacks "alt" attribute
line 428 column 162 - Warning: <img> lacks "alt" attribute
line 439 column 15 - Warning: <img> lacks "alt" attribute
line 454 column 22 - Warning: <img> lacks "alt" attribute
line 454 column 63 - Warning: <img> lacks "alt" attribute
line 454 column 112 - Warning: <img> lacks "alt" attribute
line 454 column 162 - Warning: <img> lacks "alt" attribute
line 455 column 11 - Warning: <img> lacks "alt" attribute
line 465 column 15 - Warning: <img> lacks "alt" attribute
line 482 column 22 - Warning: <img> lacks "alt" attribute
line 482 column 63 - Warning: <img> lacks "alt" attribute
line 482 column 111 - Warning: <img> lacks "alt" attribute
line 482 column 161 - Warning: <img> lacks "alt" attribute
line 493 column 15 - Warning: <img> lacks "alt" attribute
line 511 column 11 - Warning: <img> lacks "alt" attribute
line 512 column 22 - Warning: <img> lacks "alt" attribute
line 512 column 63 - Warning: <img> lacks "alt" attribute
line 512 column 111 - Warning: <img> lacks "alt" attribute
line 512 column 161 - Warning: <img> lacks "alt" attribute
line 513 column 11 - Warning: <img> lacks "alt" attribute
line 523 column 15 - Warning: <img> lacks "alt" attribute
line 538 column 22 - Warning: <img> lacks "alt" attribute
line 538 column 63 - Warning: <img> lacks "alt" attribute
line 538 column 112 - Warning: <img> lacks "alt" attribute
line 538 column 162 - Warning: <img> lacks "alt" attribute
line 549 column 15 - Warning: <img> lacks "alt" attribute
line 556 column 693 - Warning: <img> lacks "alt" attribute
line 577 column 5037 - Warning: <img> lacks "alt" attribute
line 577 column 5196 - Warning: <img> lacks "alt" attribute
line 583 column 37 - Warning: <img> lacks "alt" attribute
line 599 column 22 - Warning: <img> lacks "alt" attribute
line 599 column 63 - Warning: <img> lacks "alt" attribute
line 599 column 111 - Warning: <img> lacks "alt" attribute
line 599 column 161 - Warning: <img> lacks "alt" attribute
line 610 column 15 - Warning: <img> lacks "alt" attribute
line 627 column 22 - Warning: <img> lacks "alt" attribute
line 627 column 63 - Warning: <img> lacks "alt" attribute
line 627 column 112 - Warning: <img> lacks "alt" attribute
line 627 column 162 - Warning: <img> lacks "alt" attribute
line 638 column 15 - Warning: <img> lacks "alt" attribute
line 645 column 693 - Warning: <img> lacks "alt" attribute
line 658 column 3595 - Warning: <img> lacks "alt" attribute
line 658 column 3754 - Warning: <img> lacks "alt" attribute
line 664 column 37 - Warning: <img> lacks "alt" attribute
line 683 column 22 - Warning: <img> lacks "alt" attribute
line 683 column 63 - Warning: <img> lacks "alt" attribute
line 683 column 112 - Warning: <img> lacks "alt" attribute
line 683 column 162 - Warning: <img> lacks "alt" attribute
line 694 column 15 - Warning: <img> lacks "alt" attribute
line 701 column 693 - Warning: <img> lacks "alt" attribute
line 702 column 1820 - Warning: <img> lacks "alt" attribute
line 702 column 1979 - Warning: <img> lacks "alt" attribute
line 708 column 37 - Warning: <img> lacks "alt" attribute
line 722 column 22 - Warning: <img> lacks "alt" attribute
line 722 column 63 - Warning: <img> lacks "alt" attribute
line 722 column 112 - Warning: <img> lacks "alt" attribute
line 722 column 162 - Warning: <img> lacks "alt" attribute
line 723 column 11 - Warning: <img> lacks "alt" attribute
line 733 column 15 - Warning: <img> lacks "alt" attribute
line 752 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 752 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 752 column 216 - Warning: <img> proprietary attribute value "absmiddle"
line 761 column 25 - Warning: <img> lacks "alt" attribute
line 766 column 267 - Warning: <img> lacks "alt" attribute
line 331 column 1511 - Warning: trimming empty <font>
line 556 column 1511 - Warning: trimming empty <font>
line 645 column 1511 - Warning: trimming empty <font>
line 746 column 17 - Warning: trimming empty <tr>
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 203 column 27 - Warning: <nobr> is not approved by W3C
line 229 column 27 - Warning: <nobr> is not approved by W3C
line 255 column 27 - Warning: <nobr> is not approved by W3C
line 329 column 27 - Warning: <nobr> is not approved by W3C
line 331 column 157 - Warning: <table> proprietary attribute "height"
line 331 column 222 - Warning: <td> proprietary attribute "background"
line 331 column 318 - Warning: <td> proprietary attribute "background"
line 331 column 408 - Warning: <table> proprietary attribute "height"
line 331 column 488 - Warning: <td> proprietary attribute "background"
line 331 column 1443 - Warning: <td> proprietary attribute "background"
line 363 column 27 - Warning: <nobr> is not approved by W3C
line 391 column 27 - Warning: <nobr> is not approved by W3C
line 417 column 27 - Warning: <nobr> is not approved by W3C
line 444 column 27 - Warning: <nobr> is not approved by W3C
line 470 column 27 - Warning: <nobr> is not approved by W3C
line 498 column 27 - Warning: <nobr> is not approved by W3C
line 528 column 27 - Warning: <nobr> is not approved by W3C
line 554 column 27 - Warning: <nobr> is not approved by W3C
line 556 column 157 - Warning: <table> proprietary attribute "height"
line 556 column 222 - Warning: <td> proprietary attribute "background"
line 556 column 318 - Warning: <td> proprietary attribute "background"
line 556 column 408 - Warning: <table> proprietary attribute "height"
line 556 column 488 - Warning: <td> proprietary attribute "background"
line 556 column 1443 - Warning: <td> proprietary attribute "background"
line 588 column 47 - Warning: <nobr> is not approved by W3C
line 615 column 27 - Warning: <nobr> is not approved by W3C
line 643 column 27 - Warning: <nobr> is not approved by W3C
line 645 column 157 - Warning: <table> proprietary attribute "height"
line 645 column 222 - Warning: <td> proprietary attribute "background"
line 645 column 318 - Warning: <td> proprietary attribute "background"
line 645 column 408 - Warning: <table> proprietary attribute "height"
line 645 column 488 - Warning: <td> proprietary attribute "background"
line 645 column 1443 - Warning: <td> proprietary attribute "background"
line 669 column 47 - Warning: <nobr> is not approved by W3C
line 699 column 27 - Warning: <nobr> is not approved by W3C
line 701 column 157 - Warning: <table> proprietary attribute "height"
line 701 column 222 - Warning: <td> proprietary attribute "background"
line 701 column 318 - Warning: <td> proprietary attribute "background"
line 701 column 408 - Warning: <table> proprietary attribute "height"
line 701 column 488 - Warning: <td> proprietary attribute "background"
line 701 column 1443 - Warning: <td> proprietary attribute "background"
line 713 column 47 - Warning: <nobr> is not approved by W3C
line 738 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 345 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