Register - Login
Views: 99378766
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-23-22 10:30:45 PM
Jul - SM64 Hacking (Archive) - Toad's Tool 0.6.0 (On hiatus for an indefinite amount of time) New poll - New thread - Thread closed
Pages: 1 2 3 4 5 6 7 8 9 10 ... 19 20 21 22 23 24 25 26 27 28 Next newer thread | Next older thread
Polygon model importer, how soon do you want it?
Please vote or be transformed into Walluigi!
Now! Even if it means it will be buggy and limited to a single untextured model!
 
11.4%, 14 votes
I could wait a month for more features and textured model import.
 
22.8%, 28 votes
I want all the features you can cram in, even if it means waiting indefinitely!
 
56.9%, 70 votes
You shouldn't have announced anything and released it when ready!
 
4.1%, 5 votes
Me don't care!
 
4.9%, 6 votes
Multi-voting is disabled. 123 users have voted.

Ratchetfan19
Member
Level: 18


Posts: 38/50
EXP: 25661
For next: 4236

Since: 11-20-07


Since last post: 9.0 years
Last activity: 8.6 years

Posted on 07-24-08 01:29:30 PM Link
VL-Tone, do you have an idea of how many polygons/vertices the graphics engine can handle without slowing the game down? Actually, you might as well code a generic limit because if the game runs fine one moment, it could slow down another depending on what's currently loaded.

But that raises another question. Now it's obvious that any graphics engine has its limits, but why does the game slow down when it approaches the 240 object limit? For example, I can create 200 objects in Flatworld with no sprites and no behavior, and the game would still slow down. Is it a result of "external" coding that runs in the background for each object?
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 221/621
EXP: 1135501
For next: 21618

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 07-24-08 10:54:05 PM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by Stevoisiak
Originally posted by VL-Tone
Originally posted by Stevoisiak
I say for now just release a small seperate app for the importer. (Like you did with the text editor)


That's a good idea, I didn't think about that... The problem is that the current version of TT64 is dependent on the already generated m64geometry file to draw polygons. To load modified polygons you need to delete that file so it will be re-generated when opening the ROM, and you'd have to do that each time you re-import your .obj file.

My current development version (which will be version 6.0) decode polygon in RAM gradually as needed and can reload specific models when requested, such as when you import a new level geometry.



Yeah, I was thinking that would be a good idea. For now though, maybe TT can just check if there are any model errors and if so, regenerate the file. Or just have a question on startup asking to remake it.



The idea behind releasing a separate importer would be to avoid releasing a new TT64 just for the basic incomplete importer. If I have to release a new version of TT64 just to support the separate importer, it kind of defeat the purpose. The only advantage would be that I could publish an update to the editor only, but even then, I could end up having to update both programs back and forth.


Originally posted by Ratchetfan19
VL-Tone, do you have an idea of how many polygons/vertices the graphics engine can handle without slowing the game down? Actually, you might as well code a generic limit because if the game runs fine one moment, it could slow down another depending on what's currently loaded.

But that raises another question. Now it's obvious that any graphics engine has its limits, but why does the game slow down when it approaches the 240 object limit? For example, I can create 200 objects in Flatworld with no sprites and no behavior, and the game would still slow down. Is it a result of "external" coding that runs in the background for each object?



The game will slow down if it has too much polygons on-screen at the same time. So it all depends on the level design. Still, the original levels in SM64 were designed so you can get the whole level in the screen in some situations (when flying way up) without slow-downs. That's why levels in SM64 are relatively low-polygon, compared to games like Crash Bandicot on the PS1, which managed to get more polygons in levels by putting you on a pre-defined path that prevented you from ever seeing the level as a whole, and putting walls of vegetations to hide the rest of the level.

Modern games often to "cheat" like that, while the 3d Mario games (SM64 SMS and SMG) made the compromise of having lower resolution levels (textures and polys) but gaining the benefit of a greater sense of "freedom", where you can see far away, fly around and see the whole level at once, and not being restricted to specific paths and feeling enclosed by walls and stuff.

Anyway, all that to say that it depends. The real limit is more about RAM, because SM64 doesn't use the extension pack, and the polygon data must be kept in RAM while being displayed.


As for the empty objects slowing down the game, the problem is that behavior 0x0000 is not an empty behavior, it's one that has to calculate Mario's proximity to it. The trick to prevent an empty object from slowing down a level is to make sure that they don't appear in any acts (the little stars should all be gray in the parameter bar). But there should be a better way to "delete" objects, I'll see what I can do.



____________________
Ratchetfan19
Member
Level: 18


Posts: 40/50
EXP: 25661
For next: 4236

Since: 11-20-07


Since last post: 9.0 years
Last activity: 8.6 years

Posted on 07-29-08 11:14:28 AM (last edited by Ratchetfan19 at 07-29-08 08:14 AM) Link
So the empty behavior loads or unloads the object depending on how close or far away Mario is from it? But I thought the level script did that.
messiaen
Catgirl
Level: 68


Posts: 184/1085
EXP: 2594033
For next: 134767

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 07-29-08 04:51:36 PM Link
Actually, if you enable an object with an "empty" behavior (that is, behavior 0x0000, which is the Star Door one), the game will crash when you get near it. I don't think having extra disabled objects will slow down the game, because they are just ignored. It wouldn't make sense to allocate RAM space for a object which won't be displayed in a specific act.

However, certain behaviors (ie, enemies) can use a lot of CPU power, so if you put too many of them at once the game may slowdown. Also, if you pay attention, most moving enemies have a very simple behavior when you aren't near them. When you get near them, a most active (and CPU consuming) behavior is triggered.

After a lot of testing, I finally discovered that what was killing my test level experiments was forcing the game to load the collision when very far from Mario. Upon disabling this, even a level with 150 objects (not very close to each other) will run ok. But with the polygon importer we may test more the limits of the game.
Ratchetfan19
Member
Level: 18


Posts: 42/50
EXP: 25661
For next: 4236

Since: 11-20-07


Since last post: 9.0 years
Last activity: 8.6 years

Posted on 07-29-08 11:38:48 PM (last edited by Ratchetfan19 at 07-29-08 08:40 PM) Link
If we do get around to having a model importer, say, if it has to many polygons/vertices/faces, would TT64 fix it up or would it have to be appropriately drawn in 3DS max or a similar program?

Edit: And that reminds me, if you want to take an exisiting level geometry, like Delfino Plaza from Super Mario Sunshine for instance, would it be possible to slim down its polygon count to a reasonable number by "reducing" its quality in a 3D modeling program?
Deleted User
Collection of nobodies
Posted on 07-30-08 07:06:13 AM (last edited by Blaster at 07-30-08 04:13 AM) Link
Originally posted by messiaen
After a lot of testing, I finally discovered that what was killing my test level experiments was forcing the game to load the collision when very far from Mario. Upon disabling this, even a level with 150 objects (not very close to each other) will run ok. But with the polygon importer we may test more the limits of the game.

Messian, I have a few questions. I'm not sure if you can answer them all, anyway, do Platform Battlefield v0.3 objects force the game to load the collision for them when they are very far from Mario, and second, do normal Super Mario 64 objects load their collision when they are very far from Mario?
messiaen
Catgirl
Level: 68


Posts: 186/1085
EXP: 2594033
For next: 134767

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 07-30-08 12:53:47 PM Link
Yes, in that version all objects have a "maximum" collision distance setting. So, not only every object has to calculate how far they are from Mario, but they have also to load the collision. This is a trick I used so that enemies can detect the collision, otherwise they would just fall off to the ground.

Since objects are very simple, you can get reach a reasonable amounts of objects without slowing down the game, but try then placing a few enemies and you have problems.

In the game, thee collision distance setting really depends on how big is the object. The bigger the object, sooner you have to load the collision, otherwise you will touch the object and its collision isn't loaded yet. That's what happened when I first created the collision for the mushroom platform, it wouldn't work unless you get VERY near it, because it's a very big object which needs a reasonable setting for this parameter. Then I found a good setting and everything worked ok. Also, you can notice that whenever there are moving platforms, there's never a ground moving enemy on it, because that would require too much extra CPU power.

That's why some collision is separated from the objects (ie, the volcano), this way the game can only load the graphics and use the main level terrain collision, which doesn't have to calculate its distance with Mario. Most of the time, the "Static & NOT Solid" behavior is used for such objects. This is pretty much a "null" behavior, but it does one thing: it keeps the object on screen all the time.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 224/621
EXP: 1135501
For next: 21618

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 08-02-08 03:06:55 AM (last edited by VL-Tone at 08-02-08 12:11 AM) Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by Ratchetfan19
If we do get around to having a model importer, say, if it has to many polygons/vertices/faces, would TT64 fix it up or would it have to be appropriately drawn in 3DS max or a similar program?

Edit: And that reminds me, if you want to take an exisiting level geometry, like Delfino Plaza from Super Mario Sunshine for instance, would it be possible to slim down its polygon count to a reasonable number by "reducing" its quality in a 3D modeling program?



TT64 wouldn't fix it up, reducing the number of polygons is a complicated process that's better left to 3d programs. I'm pretty sure 3DS max and Maya can do it, so you could probably make a low-polygon version of Delfino Plaza and import it in TT64.

In case you guys didn't know, SMS polygon format has been cracked a while ago, and there's probably a program somewhere that can export the level polygons. Aside from the fact that the guys that cracked it are better programmers than me, Super Mario Sunshine's polygon format is much closer to a real 3D object format and much better organized than in SM64, where there's no filesystem and where polygon data and parameters are stored as ASM-like drawing commands.

Originally posted by messiaen
Actually, if you enable an object with an "empty" behavior (that is, behavior 0x0000, which is the Star Door one), the game will crash when you get near it. I don't think having extra disabled objects will slow down the game, because they are just ignored. It wouldn't make sense to allocate RAM space for a object which won't be displayed in a specific act.


I didn't even notice that the 0x0000 behavior would crash the game when you got near it. I just remember that when I was experimenting and building the original Flatword, that the game would slow down if I didn't remove the "empty" zeroed objects from all acts. I think they were all at position 0,0,0 and that I simply didn't go near that point.

____________________
SubDrag
Member
Level: 13


Posts: 7/27
EXP: 10083
For next: 184

Since: 03-01-08


Since last post: 7.1 years
Last activity: 8.1 years

Posted on 08-21-08 01:32:29 AM (last edited by SubDrag at 08-20-08 10:36 PM) Link
Fantastic We'll see what challenges arise and how far it can go. Can I again request .obj *export* as well, please? I recommend you put in the time and go for the full import -a simple import won't really help much except to be a mostly unused toy. Mario should be a bit easier, because as far as I know, it sounds like it's one room only?

____________________
http://www.goldeneyevault.com
radorn
Random nobody
Level: 5


Posts: 1/3
EXP: 367
For next: 162

Since: 08-23-08


Since last post: 13.0 years
Last activity: 12.9 years

Posted on 08-23-08 04:03:00 AM Link
Do what you prefer. I wouldn't waste time preparing a preview when you could spend that effort into making the final version unless you really want to release something now. I, for one, ain't hurried.

I second SubDrag in the exporter feature.
It would be nice to be able to dissect the original levels and maybe use parts of them into crafting new levels to then import into flatworld. Not mentioning other uses one could give to these models.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 240/621
EXP: 1135501
For next: 21618

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 08-23-08 08:46:13 PM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
I don't think I'll work on an export feature anytime soon. Besides, it would be much harder to make it so that it will export every single polygon parameters and make the importer able to reproduce the original model. Many N64 specific parameters can't be exported to .obj directly. If you really want an export function, there's a n64 emulator that has the ability to export 3d scenes. What I may do eventually, is a raw data export and import for specific models so you can put specific models from the original game in your level without being subjected to bank limitations.

I'm seriously working on TT64 today, and intend to do so all week-end.

I just made a preliminary bank selector so you'll be able to chose which object banks are available in your new level.

There are some limitations though. There's only two banks that you can switch around (0x0C and 0x0D). Also, these two banks each have their own list of banks you can chose from, so you can't use two banks from the same list at the same time. This comes from a limitation in the game engine: polygon data contains a lot of pointers that refer to its container bank, by number. That means that you have to put this polygon data in this specific bank or it will crash the game. The only way around it would be to copy the polygon bank somewhere else and change all bank numbers in it.

There's also another bank (0x0F) that you'll be able to disable it to make room for bigger bank combinations. You can't switch bank 0x0F to something else because there is only one possible swap, because only one bank uses this number. It's a bank with a lot of shared stuff in it that's usually available in almost all level except a few levels like Bowser battles and inside the castle.

I'm also working on a feature that will enable you to choose which background sky you'll use in your new level, as well as some other parameters, such as the number of empty objects you want.

Now, about the polygon importer, here's how it should work:

The .obj format includes support for "groups". Groups are used differently depending on the 3d program you use. Some will make groups for each individual mesh in your scene, while others will make groups according to what you chose (you select two or more objects, then group them). Because of that and other reasons, you'll be able to make your own groups out of multiple groups in TT64.

A group of groups in TT64 will be called a "model", and it makes sense since it's how they will be treated by the importer. Essentially, a model will consist of all of the associated groups merged together.

Each model will have a set of parameters, for example you'll be able to chose if the model is part of the main level mesh, or as an individual model that can be used as a 0x24 object. For the latter, I haven't decided yet what to do with solidity. To make each object solid, a new behavior would need to be created for each model. And since you'd want more than "static and solid", I'd have to create a few behavior script templates for different behaviors like elevators, rotating platforms and other stuff. Maybe messiaen could help me with that?

A decision I've taken today is that the level script will be generated from scratch each time you create your level. This was necessary to implement the bank switcher and individual model importing. I'll have to code something to optionally save and load your 0x24 objects, as well as all the parameters you'll be able to set in the importer interface so you don't have to start over each time you import an .obj file.

Note that despite all the "expert" features like grouping and other stuff, I'll implement some default parameters so you can simply import a level polygon mesh in a click or two.



____________________
SubDrag
Member
Level: 13


Posts: 9/27
EXP: 10083
For next: 184

Since: 03-01-08


Since last post: 7.1 years
Last activity: 8.1 years

Posted on 08-23-08 09:47:36 PM Link
The problem with dumping levels from Nemu/PJ64 and plugin is that it also exports the objects which is no good...just want the "terrain" for import into other mediums...It doesn't have to be perfect on exporting to .obj, just a decent job is good enough. It requires vertices, indices, u,v coords, shading, and spit out/apply the textures (which I'm sure you already know how to parse this stuff since you're doing it)...It's the importing that's hard.
radorn
Random nobody
Level: 5


Posts: 2/3
EXP: 367
For next: 162

Since: 08-23-08


Since last post: 13.0 years
Last activity: 12.9 years

Posted on 08-23-08 09:54:24 PM Link
Excuse my ignorance but I really don't understand what you are saying.

I suspect you may be misunderstanding what I expect of such an exporter (to obj or whatever you prefer).
I, for one, all I want for such an exporter is to get a level's textured mesh out in some format I can then import to some 3d software. I would even settle with no textures if things get too messy and try to texture it manually. Doesn't Toad's Tool 64 already show the entire geometry of the levels? If you can get it to render there, what stops you from dumping that into a 3d mesh file? That's all I really need.

I tried that emulator (well, plugin, Lemmy3D, for Nemu and, apparently, also works on 1964 099), but I haven't been able to get it to work, and from what I understand, it outputs geometry AFTER transform, so it's not exactly the same.
What TT64 shows on my screen looks good enough for me and the little inacuracies there may be would be easily solventable with manual work... if I could get them out of TT64, that is...
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 241/621
EXP: 1135501
For next: 21618

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 08-23-08 11:33:03 PM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Well, even if you just want a simple limited exporter, I can't simply export the render at the touch of a button. My spare time is limited, and my priorities are about improving the editing capabilities of TT64. Exporting doesn't do anything for editing, unless the result can be re-imported back, that was what I was talking about.

As for the emulators exporting all objects at once, most levels in SM64 are made of several objects (platforms etc.) beside the main level mesh, TT64 cannot magically isolate them and only export those, so it would require some work to decide which one to include, or to build an interface to do so.

Lastly, and this is my crazy personal opinion, I'm not in a hurry to see a first-person shooter mod using actual SM64 levels. If it was only a matter of a couple lines of code, I would do it, despite what I just wrote, but it's not so you may have to wait a long time.

____________________
messiaen
Catgirl
Level: 68


Posts: 220/1085
EXP: 2594033
For next: 134767

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 08-24-08 03:58:37 AM Link
There are a few videos on YouTube which feature Mario64 (and even Mario Kart64) levels in first-person shooter games, so this area seems to be already covered by other tools. However, exporting the geometry of non-animated 0x24/0x43 objects would be interesting.

For the additional behaviors, perhaps you could place them at level script bank (0x0E), this way you would avoid problems expanding shared banks. I haven't tested many "moving" platforms behaviors, but most of them are quite flexible and will work with any model as long as you provide a valid collision pointer, so behavior templates are a good idea.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 242/621
EXP: 1135501
For next: 21618

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 08-24-08 04:37:01 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Anyway, I just mentioned the fps thing because I had this on my mind, but it's not the reason why I won't work on an exporter anytime soon.

Putting the behaviors in the 0x0E bank is also a good idea I kinda forgot that they're not limited to bank 0x13. That reminds me, I'll have to make the behavior bank number editable in 0x24 commands. I'll have to make some other changes too because things like behavior labels don't take bank numbers into account.

For now I'll concentrate on making the rest work (the importer and bank switcher), and I'll add the behavior stuff afterward. The importer will generate collision data for individual models too, even before solidity support will be added.




____________________
messiaen
Catgirl
Level: 68


Posts: 221/1085
EXP: 2594033
For next: 134767

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 08-24-08 03:07:45 PM Link
Why don't you go for something like "Global/Shared Behaviors" (Bank 0x13) and "Level Behaviors" (0x0E) for the lists? I don't see any reason why someone would need more flexibility than that (ie, choosing yet another bank for behaviors). This way you could simplify things, as the Bank Number in the 0x24 commands would be restricted to these two values, which would have individual description lists.

Global/Shared are somewhat innacurate descriptions of the 0x13 behavior bank, because some of the behaviors contain pointers to specific level banks which may crash the game, but so far it's the best solution I could come up with.

About the importer, I don't have any experience in 3D modelling, but how can I know if the scale of my objects is good for Mario 64? Also, last time I checked (a long time ago), the boundaries for a "Flatworld" level were X -8192, Z 8192 (Y seemed to be a bit more flexible). Even though I could get polygons drawn after 8192, the collision didn't worked. For most levels, this seems to be the boundaries used, so you should experiment a bit with it in order to set some size restrictions.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 243/621
EXP: 1135501
For next: 21618

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 1.2 years

Posted on 08-24-08 07:15:03 PM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
One way or the other, I'll still have to track down all code that deals with behavior numbers and modify it if needed. While this solution of having only two lists would be useful if I was working at the bit level in a memory limited situation (like the n64 RAM), this change will happen in TT64, and Director doesn't support booleans anyway. I'd rather make the code able to use anything for the behavior bank number.

The scaling is a problem I'm thinking about since the beginning. There will be a scaling factor parameter in the importer you'll be able to adjust. Note that this scaling factor will pre-scale your coordinates before writing them. The geo layout scale command (0x0D?) will be another parameter.

As far as scaling go, the problem lies more with the different ways 3d programs export .obj. For example, Maya will export the coordinates as is, but Cheetah 3d (a freeware Mac modeler) will normalize them, meaning that all exported coordinates go from -1.0 to 1.0. Normalizing creates a big problem, because 1.0 (or -1.0) will always represent the coordinate of the vertex that is the farthest along this axis. Let's say you make a flat box as the basis for the level, import it in TT64 and adjust your scaling to 2048, things will work fine. But if you go back and add another box that's outside the horizontal boundaries of the first box. When you import the .obj file back, everything will be scaled down to fit the new box so you'll have to readjust your scaling by x amount to keep a constant size (which is a pain if you already added 0x24 objects.). To avoid that, what I'll recommend is to always make an horizontal plane at the bottom of your level that represents your level boundaries, and never put anything outside the boundaries. This way the scale will remain constant whatever you do.

Also, I will add 3d preview pane in the importer, with a wireframe box that shows level boundaries at -8192 to 8192 or whatever number we decide to be the limit.

And about this 8192 limit, I'm not sure it's the absolute limit. When you say that you could get polygon drawn beyond 8192, are you talking about placing your custom 0x24 objects there? The thing is, and I found that when first working on the importer, the game engine will create an invisible wall around the main level collision map. In flatworld, the level collision map is a 16384 units square, so you can't reach anything outside of it. For my Super-Mario Galaxy-esque level with a floating sphere and torus, I had to create a big collision "death floor" at the bottom of the level or else Mario would hit an invisible wall preventing him from falling off.




____________________
GhostMaster3000
Member
Level: 18


Posts: 36/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-24-08 07:37:49 PM Link
I found some info on the polygons of mario 64! Nintendo used a program called Softimage 3D to create the polygons and because they did no have windows they used an OS called IRIX which they had in the early 1900's

Sources: en.wikipedia.org/wiki/softimage_3d#video_games
en.wikipedia.org/wiki/IRIX#References

____________________
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: 223/1085
EXP: 2594033
For next: 134767

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 08-24-08 07:42:23 PM Link
I noticed the "wall" effect. If you place a collisiong plane along the X and Z axis (such as the "Flatworld"), the engine will aditionally create free "Y" space, making it a [unfilled] "collision square". An object wich individual collision won't be limited by this (ie, if you set a very narrow square for your main collision), as its collision will "extend" the collision range. That is, unless you place it out what seems to be the boundaries limits (a 16384 units square), then the object will show but the collision won't work (that is, it will work UNTIL 8192).

It makes sense, since the polygon commands are very low-level code (handled by hardware?), while the collision format is handled by the software.

I hope this makes any sense .
Pages: 1 2 3 4 5 6 7 8 9 10 ... 19 20 21 22 23 24 25 26 27 28 Next newer thread | Next older thread
Jul - SM64 Hacking (Archive) - Toad's Tool 0.6.0 (On hiatus for an indefinite amount of time) New poll - New thread - Thread closed


Rusted Logic

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

41 database queries, 13 query cache hits.
Query execution time:  0.135229 seconds
Script execution time:  0.048177 seconds
Total render time:  0.183406 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 233 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 94 - Warning: unescaped & or unknown entity "&page"
line 149 column 128 - Warning: unescaped & or unknown entity "&page"
line 149 column 160 - Warning: unescaped & or unknown entity "&page"
line 149 column 192 - Warning: unescaped & or unknown entity "&page"
line 149 column 224 - Warning: unescaped & or unknown entity "&page"
line 149 column 256 - Warning: unescaped & or unknown entity "&page"
line 149 column 288 - Warning: unescaped & or unknown entity "&page"
line 149 column 320 - Warning: unescaped & or unknown entity "&page"
line 149 column 352 - Warning: unescaped & or unknown entity "&page"
line 149 column 389 - Warning: unescaped & or unknown entity "&page"
line 149 column 423 - Warning: unescaped & or unknown entity "&page"
line 149 column 457 - Warning: unescaped & or unknown entity "&page"
line 149 column 491 - Warning: unescaped & or unknown entity "&page"
line 149 column 525 - Warning: unescaped & or unknown entity "&page"
line 149 column 559 - Warning: unescaped & or unknown entity "&page"
line 149 column 593 - Warning: unescaped & or unknown entity "&page"
line 149 column 627 - Warning: unescaped & or unknown entity "&page"
line 149 column 661 - Warning: unescaped & or unknown entity "&page"
line 149 column 695 - Warning: unescaped & or unknown entity "&page"
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 732 - Warning: missing </font> before </table>
line 152 column 73 - Warning: missing </b> before </td>
line 155 column 210 - Warning: discarding unexpected </a>
line 156 column 131 - Warning: missing <tr>
line 159 column 195 - Warning: discarding unexpected </a>
line 160 column 133 - Warning: missing <tr>
line 163 column 209 - Warning: discarding unexpected </a>
line 164 column 132 - Warning: missing <tr>
line 167 column 195 - Warning: discarding unexpected </a>
line 168 column 133 - Warning: missing <tr>
line 171 column 144 - Warning: discarding unexpected </a>
line 172 column 131 - Warning: missing <tr>
line 175 column 66 - Warning: missing </font> before </td>
line 175 column 140 - Warning: plain text isn't allowed in <tr> elements
line 175 column 25 - Info: <tr> previously mentioned
line 182 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 184 column 9 - Warning: missing <tr>
line 202 column 13 - Warning: missing <tr>
line 210 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 212 column 9 - Warning: missing <tr>
line 230 column 13 - Warning: missing <tr>
line 233 column 73 - Warning: <style> isn't allowed in <td> elements
line 233 column 9 - Info: <td> previously mentioned
line 233 column 1511 - Warning: missing </font> before <blockquote>
line 233 column 1590 - Warning: inserting implicit <font>
line 233 column 1590 - Warning: missing </font> before <hr>
line 233 column 1669 - Warning: inserting implicit <font>
line 233 column 1669 - Warning: missing </font> before <hr>
line 233 column 1745 - Warning: inserting implicit <font>
line 233 column 1745 - Warning: missing </font> before <hr>
line 233 column 1812 - Warning: inserting implicit <font>
line 233 column 1812 - Warning: missing </font> before <hr>
line 234 column 1 - Warning: inserting implicit <font>
line 234 column 1 - Warning: missing </font> before <hr>
line 238 column 2486 - Warning: inserting implicit <font>
line 239 column 1 - Warning: inserting implicit <font>
line 239 column 1 - Warning: missing </font> before <hr>
line 241 column 1 - Warning: inserting implicit <font>
line 241 column 1 - Warning: missing </font> before <blockquote>
line 245 column 3154 - Warning: inserting implicit <font>
line 245 column 3154 - Warning: missing </font> before <hr>
line 245 column 3223 - Warning: inserting implicit <font>
line 245 column 3223 - Warning: missing </font> before <hr>
line 248 column 1 - Warning: inserting implicit <font>
line 233 column 137 - Warning: missing </div>
line 261 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 263 column 9 - Warning: missing <tr>
line 281 column 13 - Warning: missing <tr>
line 287 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 289 column 9 - Warning: missing <tr>
line 307 column 13 - Warning: missing <tr>
line 317 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 319 column 9 - Warning: missing <tr>
line 337 column 13 - Warning: missing <tr>
line 344 column 15 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 345 column 25 - Warning: missing <tr>
line 352 column 33 - Warning: missing <tr>
line 358 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 360 column 9 - Warning: missing <tr>
line 378 column 13 - Warning: missing <tr>
line 390 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 392 column 9 - Warning: missing <tr>
line 410 column 13 - Warning: missing <tr>
line 413 column 73 - Warning: <style> isn't allowed in <td> elements
line 413 column 9 - Info: <td> previously mentioned
line 413 column 1511 - Warning: missing </font> before <blockquote>
line 413 column 1590 - Warning: inserting implicit <font>
line 413 column 1590 - Warning: missing </font> before <hr>
line 413 column 1659 - Warning: inserting implicit <font>
line 413 column 1659 - Warning: missing </font> before <hr>
line 416 column 1 - Warning: inserting implicit <font>
line 416 column 1 - Warning: missing </font> before <blockquote>
line 421 column 2894 - Warning: inserting implicit <font>
line 421 column 2894 - Warning: missing </font> before <hr>
line 421 column 2959 - Warning: inserting implicit <font>
line 421 column 2959 - Warning: missing </font> before <hr>
line 422 column 1 - Warning: inserting implicit <font>
line 413 column 137 - Warning: missing </div>
line 426 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 428 column 9 - Warning: missing <tr>
line 446 column 13 - Warning: missing <tr>
line 452 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 454 column 9 - Warning: missing <tr>
line 472 column 13 - Warning: missing <tr>
line 481 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 483 column 9 - Warning: missing <tr>
line 501 column 13 - Warning: missing <tr>
line 504 column 73 - Warning: <style> isn't allowed in <td> elements
line 504 column 9 - Info: <td> previously mentioned
line 504 column 137 - Warning: missing </div>
line 531 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 533 column 9 - Warning: missing <tr>
line 551 column 13 - Warning: missing <tr>
line 557 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 559 column 9 - Warning: missing <tr>
line 577 column 13 - Warning: missing <tr>
line 590 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 592 column 9 - Warning: missing <tr>
line 610 column 13 - Warning: missing <tr>
line 613 column 73 - Warning: <style> isn't allowed in <td> elements
line 613 column 9 - Info: <td> previously mentioned
line 613 column 137 - Warning: missing </div>
line 620 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 622 column 9 - Warning: missing <tr>
line 640 column 13 - Warning: missing <tr>
line 648 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 650 column 9 - Warning: missing <tr>
line 668 column 13 - Warning: missing <tr>
line 671 column 73 - Warning: <style> isn't allowed in <td> elements
line 671 column 9 - Info: <td> previously mentioned
line 671 column 137 - Warning: missing </div>
line 681 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 683 column 9 - Warning: missing <tr>
line 701 column 13 - Warning: missing <tr>
line 711 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 713 column 9 - Warning: missing <tr>
line 731 column 13 - Warning: missing <tr>
line 734 column 73 - Warning: <style> isn't allowed in <td> elements
line 734 column 9 - Info: <td> previously mentioned
line 734 column 137 - Warning: missing </div>
line 748 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 750 column 9 - Warning: missing <tr>
line 768 column 13 - Warning: missing <tr>
line 777 column 9 - Warning: <div> isn't allowed in <table> elements
line 178 column 17 - Info: <table> previously mentioned
line 779 column 9 - Warning: missing <tr>
line 797 column 13 - Warning: missing <tr>
line 807 column 17 - Warning: missing <tr>
line 807 column 17 - Warning: discarding unexpected <table>
line 810 column 35 - Warning: missing <tr>
line 810 column 94 - Warning: unescaped & or unknown entity "&page"
line 810 column 128 - Warning: unescaped & or unknown entity "&page"
line 810 column 160 - Warning: unescaped & or unknown entity "&page"
line 810 column 192 - Warning: unescaped & or unknown entity "&page"
line 810 column 224 - Warning: unescaped & or unknown entity "&page"
line 810 column 256 - Warning: unescaped & or unknown entity "&page"
line 810 column 288 - Warning: unescaped & or unknown entity "&page"
line 810 column 320 - Warning: unescaped & or unknown entity "&page"
line 810 column 352 - Warning: unescaped & or unknown entity "&page"
line 810 column 389 - Warning: unescaped & or unknown entity "&page"
line 810 column 423 - Warning: unescaped & or unknown entity "&page"
line 810 column 457 - Warning: unescaped & or unknown entity "&page"
line 810 column 491 - Warning: unescaped & or unknown entity "&page"
line 810 column 525 - Warning: unescaped & or unknown entity "&page"
line 810 column 559 - Warning: unescaped & or unknown entity "&page"
line 810 column 593 - Warning: unescaped & or unknown entity "&page"
line 810 column 627 - Warning: unescaped & or unknown entity "&page"
line 810 column 661 - Warning: unescaped & or unknown entity "&page"
line 810 column 695 - Warning: unescaped & or unknown entity "&page"
line 810 column 50 - Warning: missing </font> before </td>
line 810 column 732 - Warning: missing </font> before </table>
line 812 column 35 - Warning: missing <tr>
line 812 column 50 - Warning: missing </font> before </td>
line 813 column 37 - Warning: unescaped & or unknown entity "&id"
line 812 column 233 - Warning: missing </font> before </table>
line 814 column 17 - Warning: discarding unexpected </textarea>
line 814 column 28 - Warning: discarding unexpected </form>
line 814 column 35 - Warning: discarding unexpected </embed>
line 814 column 43 - Warning: discarding unexpected </noembed>
line 814 column 53 - Warning: discarding unexpected </noscript>
line 814 column 64 - Warning: discarding unexpected </noembed>
line 814 column 74 - Warning: discarding unexpected </embed>
line 814 column 82 - Warning: discarding unexpected </table>
line 814 column 90 - Warning: discarding unexpected </table>
line 816 column 9 - Warning: missing </font> before <table>
line 828 column 25 - Warning: discarding unexpected </font>
line 837 column 58 - Warning: discarding unexpected </font>
line 815 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 155 column 70 - Warning: <img> proprietary attribute value "absmiddle"
line 155 column 70 - Warning: <img> lacks "alt" attribute
line 156 column 70 - Warning: <table> attribute "width" has invalid value "11.4%"
line 159 column 70 - Warning: <img> proprietary attribute value "absmiddle"
line 159 column 70 - Warning: <img> lacks "alt" attribute
line 160 column 70 - Warning: <table> attribute "width" has invalid value "22.8%"
line 163 column 70 - Warning: <img> proprietary attribute value "absmiddle"
line 163 column 70 - Warning: <img> lacks "alt" attribute
line 164 column 70 - Warning: <table> attribute "width" has invalid value "56.9%"
line 167 column 70 - Warning: <img> proprietary attribute value "absmiddle"
line 167 column 70 - Warning: <img> lacks "alt" attribute
line 168 column 70 - Warning: <table> attribute "width" has invalid value "4.1%"
line 171 column 70 - Warning: <img> proprietary attribute value "absmiddle"
line 171 column 70 - Warning: <img> lacks "alt" attribute
line 172 column 70 - Warning: <table> attribute "width" has invalid value "4.9%"
line 172 column 70 - Warning: <table> attribute "bgcolor" has invalid value "grey"
line 187 column 22 - Warning: <img> lacks "alt" attribute
line 187 column 63 - Warning: <img> lacks "alt" attribute
line 187 column 112 - Warning: <img> lacks "alt" attribute
line 187 column 162 - Warning: <img> lacks "alt" attribute
line 188 column 11 - Warning: <img> lacks "alt" attribute
line 198 column 15 - Warning: <img> lacks "alt" attribute
line 215 column 22 - Warning: <img> lacks "alt" attribute
line 215 column 63 - Warning: <img> lacks "alt" attribute
line 215 column 112 - Warning: <img> lacks "alt" attribute
line 215 column 162 - Warning: <img> lacks "alt" attribute
line 226 column 15 - Warning: <img> lacks "alt" attribute
line 233 column 693 - Warning: <img> lacks "alt" attribute
line 258 column 5568 - Warning: <img> lacks "alt" attribute
line 258 column 5727 - Warning: <img> lacks "alt" attribute
line 266 column 22 - Warning: <img> lacks "alt" attribute
line 266 column 63 - Warning: <img> lacks "alt" attribute
line 266 column 112 - Warning: <img> lacks "alt" attribute
line 266 column 162 - Warning: <img> lacks "alt" attribute
line 267 column 11 - Warning: <img> lacks "alt" attribute
line 277 column 15 - Warning: <img> lacks "alt" attribute
line 292 column 22 - Warning: <img> lacks "alt" attribute
line 292 column 63 - Warning: <img> lacks "alt" attribute
line 292 column 111 - Warning: <img> lacks "alt" attribute
line 292 column 161 - Warning: <img> lacks "alt" attribute
line 303 column 15 - Warning: <img> lacks "alt" attribute
line 322 column 22 - Warning: <img> lacks "alt" attribute
line 322 column 63 - Warning: <img> lacks "alt" attribute
line 322 column 112 - Warning: <img> lacks "alt" attribute
line 322 column 162 - Warning: <img> lacks "alt" attribute
line 323 column 11 - Warning: <img> lacks "alt" attribute
line 333 column 15 - Warning: <img> lacks "alt" attribute
line 348 column 37 - Warning: <img> lacks "alt" attribute
line 363 column 22 - Warning: <img> lacks "alt" attribute
line 363 column 63 - Warning: <img> lacks "alt" attribute
line 363 column 111 - Warning: <img> lacks "alt" attribute
line 363 column 161 - Warning: <img> lacks "alt" attribute
line 374 column 15 - Warning: <img> lacks "alt" attribute
line 395 column 22 - Warning: <img> lacks "alt" attribute
line 395 column 63 - Warning: <img> lacks "alt" attribute
line 395 column 112 - Warning: <img> lacks "alt" attribute
line 395 column 162 - Warning: <img> lacks "alt" attribute
line 406 column 15 - Warning: <img> lacks "alt" attribute
line 413 column 693 - Warning: <img> lacks "alt" attribute
line 423 column 3770 - Warning: <img> lacks "alt" attribute
line 423 column 3929 - Warning: <img> lacks "alt" attribute
line 431 column 22 - Warning: <img> lacks "alt" attribute
line 431 column 63 - Warning: <img> lacks "alt" attribute
line 431 column 112 - Warning: <img> lacks "alt" attribute
line 431 column 161 - Warning: <img> lacks "alt" attribute
line 442 column 15 - Warning: <img> lacks "alt" attribute
line 449 column 83 - Warning: <img> proprietary attribute value "absmiddle"
line 449 column 83 - Warning: <img> lacks "alt" attribute
line 457 column 21 - Warning: <img> lacks "alt" attribute
line 457 column 62 - Warning: <img> lacks "alt" attribute
line 457 column 111 - Warning: <img> lacks "alt" attribute
line 457 column 161 - Warning: <img> lacks "alt" attribute
line 468 column 15 - Warning: <img> lacks "alt" attribute
line 486 column 22 - Warning: <img> lacks "alt" attribute
line 486 column 63 - Warning: <img> lacks "alt" attribute
line 486 column 112 - Warning: <img> lacks "alt" attribute
line 486 column 162 - Warning: <img> lacks "alt" attribute
line 497 column 15 - Warning: <img> lacks "alt" attribute
line 504 column 693 - Warning: <img> lacks "alt" attribute
line 528 column 5479 - Warning: <img> lacks "alt" attribute
line 528 column 5638 - Warning: <img> lacks "alt" attribute
line 536 column 22 - Warning: <img> lacks "alt" attribute
line 536 column 63 - Warning: <img> lacks "alt" attribute
line 536 column 112 - Warning: <img> lacks "alt" attribute
line 536 column 161 - Warning: <img> lacks "alt" attribute
line 547 column 15 - Warning: <img> lacks "alt" attribute
line 562 column 21 - Warning: <img> lacks "alt" attribute
line 562 column 62 - Warning: <img> lacks "alt" attribute
line 562 column 111 - Warning: <img> lacks "alt" attribute
line 562 column 161 - Warning: <img> lacks "alt" attribute
line 573 column 15 - Warning: <img> lacks "alt" attribute
line 595 column 22 - Warning: <img> lacks "alt" attribute
line 595 column 63 - Warning: <img> lacks "alt" attribute
line 595 column 112 - Warning: <img> lacks "alt" attribute
line 595 column 162 - Warning: <img> lacks "alt" attribute
line 606 column 15 - Warning: <img> lacks "alt" attribute
line 613 column 693 - Warning: <img> lacks "alt" attribute
line 617 column 2582 - Warning: <img> lacks "alt" attribute
line 617 column 2741 - Warning: <img> lacks "alt" attribute
line 625 column 22 - Warning: <img> lacks "alt" attribute
line 625 column 63 - Warning: <img> lacks "alt" attribute
line 625 column 111 - Warning: <img> lacks "alt" attribute
line 625 column 161 - Warning: <img> lacks "alt" attribute
line 636 column 15 - Warning: <img> lacks "alt" attribute
line 653 column 22 - Warning: <img> lacks "alt" attribute
line 653 column 63 - Warning: <img> lacks "alt" attribute
line 653 column 112 - Warning: <img> lacks "alt" attribute
line 653 column 162 - Warning: <img> lacks "alt" attribute
line 664 column 15 - Warning: <img> lacks "alt" attribute
line 671 column 693 - Warning: <img> lacks "alt" attribute
line 673 column 1784 - Warning: <img> proprietary attribute value "absmiddle"
line 673 column 1784 - Warning: <img> lacks "alt" attribute
line 678 column 2430 - Warning: <img> lacks "alt" attribute
line 678 column 2589 - Warning: <img> lacks "alt" attribute
line 686 column 22 - Warning: <img> lacks "alt" attribute
line 686 column 63 - Warning: <img> lacks "alt" attribute
line 686 column 111 - Warning: <img> lacks "alt" attribute
line 686 column 161 - Warning: <img> lacks "alt" attribute
line 697 column 15 - Warning: <img> lacks "alt" attribute
line 716 column 22 - Warning: <img> lacks "alt" attribute
line 716 column 63 - Warning: <img> lacks "alt" attribute
line 716 column 112 - Warning: <img> lacks "alt" attribute
line 716 column 162 - Warning: <img> lacks "alt" attribute
line 727 column 15 - Warning: <img> lacks "alt" attribute
line 734 column 693 - Warning: <img> lacks "alt" attribute
line 745 column 4340 - Warning: <img> lacks "alt" attribute
line 745 column 4499 - Warning: <img> lacks "alt" attribute
line 753 column 22 - Warning: <img> lacks "alt" attribute
line 753 column 63 - Warning: <img> lacks "alt" attribute
line 753 column 112 - Warning: <img> lacks "alt" attribute
line 753 column 162 - Warning: <img> lacks "alt" attribute
line 754 column 11 - Warning: <img> lacks "alt" attribute
line 764 column 15 - Warning: <img> lacks "alt" attribute
line 782 column 22 - Warning: <img> lacks "alt" attribute
line 782 column 63 - Warning: <img> lacks "alt" attribute
line 782 column 111 - Warning: <img> lacks "alt" attribute
line 782 column 161 - Warning: <img> lacks "alt" attribute
line 793 column 15 - Warning: <img> lacks "alt" attribute
line 804 column 829 - Warning: <img> proprietary attribute value "absmiddle"
line 804 column 829 - Warning: <img> lacks "alt" attribute
line 813 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 813 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 813 column 216 - Warning: <img> proprietary attribute value "absmiddle"
line 822 column 25 - Warning: <img> lacks "alt" attribute
line 827 column 267 - Warning: <img> lacks "alt" attribute
line 233 column 1511 - Warning: trimming empty <font>
line 238 column 2486 - Warning: trimming empty <font>
line 413 column 1511 - Warning: trimming empty <font>
line 807 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 203 column 27 - Warning: <nobr> is not approved by W3C
line 231 column 27 - Warning: <nobr> is not approved by W3C
line 233 column 157 - Warning: <table> proprietary attribute "height"
line 233 column 222 - Warning: <td> proprietary attribute "background"
line 233 column 318 - Warning: <td> proprietary attribute "background"
line 233 column 408 - Warning: <table> proprietary attribute "height"
line 233 column 488 - Warning: <td> proprietary attribute "background"
line 233 column 1443 - Warning: <td> proprietary attribute "background"
line 282 column 27 - Warning: <nobr> is not approved by W3C
line 308 column 27 - Warning: <nobr> is not approved by W3C
line 338 column 27 - Warning: <nobr> is not approved by W3C
line 353 column 47 - Warning: <nobr> is not approved by W3C
line 379 column 27 - Warning: <nobr> is not approved by W3C
line 411 column 27 - Warning: <nobr> is not approved by W3C
line 413 column 157 - Warning: <table> proprietary attribute "height"
line 413 column 222 - Warning: <td> proprietary attribute "background"
line 413 column 318 - Warning: <td> proprietary attribute "background"
line 413 column 408 - Warning: <table> proprietary attribute "height"
line 413 column 488 - Warning: <td> proprietary attribute "background"
line 413 column 1443 - Warning: <td> proprietary attribute "background"
line 447 column 27 - Warning: <nobr> is not approved by W3C
line 473 column 27 - Warning: <nobr> is not approved by W3C
line 502 column 27 - Warning: <nobr> is not approved by W3C
line 504 column 157 - Warning: <table> proprietary attribute "height"
line 504 column 222 - Warning: <td> proprietary attribute "background"
line 504 column 318 - Warning: <td> proprietary attribute "background"
line 504 column 408 - Warning: <table> proprietary attribute "height"
line 504 column 488 - Warning: <td> proprietary attribute "background"
line 504 column 1443 - Warning: <td> proprietary attribute "background"
line 552 column 27 - Warning: <nobr> is not approved by W3C
line 578 column 27 - Warning: <nobr> is not approved by W3C
line 611 column 27 - Warning: <nobr> is not approved by W3C
line 613 column 157 - Warning: <table> proprietary attribute "height"
line 613 column 222 - Warning: <td> proprietary attribute "background"
line 613 column 318 - Warning: <td> proprietary attribute "background"
line 613 column 408 - Warning: <table> proprietary attribute "height"
line 613 column 488 - Warning: <td> proprietary attribute "background"
line 613 column 1443 - Warning: <td> proprietary attribute "background"
line 641 column 27 - Warning: <nobr> is not approved by W3C
line 669 column 27 - Warning: <nobr> is not approved by W3C
line 671 column 157 - Warning: <table> proprietary attribute "height"
line 671 column 222 - Warning: <td> proprietary attribute "background"
line 671 column 318 - Warning: <td> proprietary attribute "background"
line 671 column 408 - Warning: <table> proprietary attribute "height"
line 671 column 488 - Warning: <td> proprietary attribute "background"
line 671 column 1443 - Warning: <td> proprietary attribute "background"
line 702 column 27 - Warning: <nobr> is not approved by W3C
line 732 column 27 - Warning: <nobr> is not approved by W3C
line 734 column 157 - Warning: <table> proprietary attribute "height"
line 734 column 222 - Warning: <td> proprietary attribute "background"
line 734 column 318 - Warning: <td> proprietary attribute "background"
line 734 column 408 - Warning: <table> proprietary attribute "height"
line 734 column 488 - Warning: <td> proprietary attribute "background"
line 734 column 1443 - Warning: <td> proprietary attribute "background"
line 769 column 27 - Warning: <nobr> is not approved by W3C
line 798 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 408 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