Dudaw
Member
Level: 17
   
Posts: 1/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Hi, everyone. I'm back.
Hopefully all of you can forget about my depraved old ways of life on the forum, or the majority of you are just new members.
MM88 gave me permission to join again, just to let you know. I come in peace after the three years that have passed.
Anyway...it feels I've missed so much, I don't even know where to start posting.
Skimming through a few posts above, I feel reminded to hand out this model of the SM64 boundaries (not sure if anyone's done anything like this before.)
This is a v7 Google Sketchup project, but you can always export it out to another model type if you're not comfortable with the program:
https://sites.google.com/site/4thstudios/MaxSize.skp?attredirects=0&d=1
I didn't implement the limit of the Y-axis here, but the plain tells you the basic limitations. The size of the model is 100% accurate when scaled at "1" in Messiaen's importer.
Of course, you can put some hills around the square edges or whatever, but that's where the invisible walls are going to be.
I threw some ripped models of the cannon, castle door, and Mario in there, too. The sizes on these are accurate as well, so feel free to use them in your levels. Another reminder is that the size of the door is only good for the gold-ish doors and locked ones used inside the castle. Any others will either be too big or too small for this frame.
Mess, I can't believe I didn't even see your new release of the importer up until I signed up. O.o
Youtube will usually show me your new videos first, and I hadn't seen any updates from you for quite a bit...
So, easy for me to miss. :-/
Anyway, I'll give it a spin and tell you what I think.
Another thing you might want to incorporate in v14 is some settings for the little demo gameplay clips shown after the title screen. While documenting some of the title screen functions, I stumbled across a way to disable them, if some people would prefer doing that to avoid glitches. Since you modified Mario's actions in these clips in the Missing Stars, you might already know where to find it, but I really think it's a good idea to put a disable option in the importer.
If you didn't find that then I can let you know where to find the instructions if you want. |
Dudaw
Member
Level: 17
   
Posts: 2/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Okay, These are little bits of the ASM documents I was working on. They're not complete, but here's some stuff about those screens. I'll try to keep this short, since it would otherwise belong in the ASM thread.
8016F5B0 appears to be the title screen "level type" function loaded by 0x1108 and 1208 commands, and it's responsible for the sounds made during the title screen, displaying text, and of course, the demo gameplay screens.
0021F948 0C05BC00 JAL 0016F000 <---------- (0x21F4C0 ROM) Deals with how demo gameplay is shown and returned
If you take that instruction out, the game will keep resetting itself and eventually crash.
Next at 0x21F540 is a JAL which seems to pretty much skip the scenes if removed.
I seem to have lost track of where I headed after looking in these places, but I think I then moved on to that function pointed to by the intruction above and found a second way to disable the scenes. However, the one at 21F540 seems to get the job done fine.
Also, I see that the 8024BCD8 function is required for all basic levels to work. The solution to our camera problems could lie in there, no? If I, for example, swapped it out with 8016F5B0 mentioned above, I could literally turn any level into the title screen.
One document that I have complete is the "PRESS START" string. I'll post that on my website or in the ASM thread eventually. Here's a little peak at what can be done with it:
Vinny:
Perhaps VL-Tone's documentation on Mario's geo layout would be helpful.
I'll release the Kirby hack if I get better results in the display. If not, I'll just release it as is, except replacing Mario's original display data so that it will work everywhere in the normal game.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 3/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Hi, everyone.
Thought I would give you a little peak at some of what's going on in SM64: Wacky Worlds, since my last update on Youtube was of Forest Labyrinth...which was some time ago.
Currently, there's a very early "alpha" demo available on my website, as a lot of you already know.
If you've played it, keep in mind that this is just the first look at the first changes made, and doesn't represent the final quality of the hack.
A few previews here:
http://www.youtube.com/watch?v=PUk1tvuPeYk
http://www.youtube.com/watch?v=6pUwv6FB8C8&feature=related
http://www.youtube.com/watch?v=u_s5TAWBMYE&feature=related
What this hack is about:
Mario is in Subcon again (Mario's subconscious world from SMB2). Collect all Sanity Stars and restore the Grand Sanity Star!
Along the way, you'll meet goofy and demented characters, and even one who has a symbolic message to share.
The hack is comprised of four towns and a small hub, all inside of a vast kingdom known as Marythorn.
In each town, there are three main levels and at least one bonus.
The layout and designs of the hubs were hugely inspired by the canceled game, Earthbound 64.
As for the music used; it includes songs from N64, GB, GBA, and SNES games. Most of the tracks were ripped with various tools, instead of using midis from different authors on VGMusic.
Also, here's something I could use some opinions on... I have just one last level I need to figure out how to use. It must be a main level with 7 stars.
I was thinking maybe a field level in the main town... But that's just about it.
Anyone have any suggestions as to what I could do with this level? Your opinions are appreciated.
A few screensies:
The princess isn't as nice as most of the others you've seen in Mario games.
Custom title screen made from the modified "PRESS START" text function.
An arrow lift challenge in Marythorn. Are there too many?
8-Bit Land. Most of the level is comprised of a variety of objects, instead of just an imported level.
Mario in town.
That's all for now!
Please make any suggestions or ask questions you might have.
I will be needing opinions from several people, as well as soon-to-come testing.
I know there isn't much for me to show at the moment, but we're getting there.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 4/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Hey, here's some good news.
I've found the solution to our camera problems!
@ 0x41C80 are some JAL instructions that load the hardcoded "paths" for each of the levels.
The search went exceptionally well; I was expecting something very similar to what I ended up finding.
When I was searching for the RAM offset to where the current camera option is stored, I was somehow led into finding the pointers to the paths.
I haven't checked yet, but I'm sure if we followed our way back from these instructions, we would probably find that camera paths are nothing more than a bunch of elaborate camera positions and rotations.
In case if you didn't notice, the Castle Grounds actually uses a different type of camera setting than every other level. Even when you import a new model into CG, you'll notice that it doesn't seem to follow a path, but instead smoothly rotates around any walls and slopes.
What I did was I took the instruction from 0x41D00 and replaced every other one with it.
Only problem I noticed is that the camera position is a little uncomfortable in levels other than CG.
It appears positions and a few other effects must be set somewhere else.
Not only that, but other camera settings such as when Mario comes out of water or goes through a door are in this function, too. Those ones are at 0x41D60.
Also, 0x41C00 seems to be for the different camera options that are set with the C and R buttons.
Messiaen, this is a must for v14.
It does need some fixing like I mentioned, but this should work!
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 5/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Okay, thanks. When I found this, I was kind of in a rush, and playing around in a hex editor to make things go quicker.
I would have also included RAM offsets, but I just supposed you could make better use of it any way.
Also, thanks for letting me know that the title screen info was already out somewhere. I'll have to look into that some more. And yeah, disabling the scenes, I wasn't too sure about that. Probably just related to how the title screen actually switches over to the scenes. I did find some things to be related to Mario in there, but nothing that really modified any of the demo gameplay settings.
Anyway, thanks for posting the new camera thread. I'll be sure to take a look at it.
I was quite convinced that these actually get the camera "paths" somewhere along the way because replacing one with another will actually give that level another one's path... So, we'll see.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 6/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Oh yeah, 0x8033C6D4 is how I found the jump table. Assuming that this would show up as loadword like how a lot of other RAM stuffs are pointed to, I went ahead and searched "C6D4."
There seem to be several of these throughout the ROM followed by pointers to 0x8033C6D5.
I wasn't expecting anything like this, but I somehow ended up where I did.
Anyway, if you don't mind me asking, how do you plan on incorporating camera options into the next version of the importer?
And didya get all of those settings down at 0x80286C80?
Silly me, these are actually different camera settings, not just for levels.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 7/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Yes, Celux. Interesting design as usual. Maple Treeway... I thought I recognized that song.
Does seem kind of plain in terms of objects... But that's just about it for me. I understand you still have ways to go, but you might want to look into that.
Meltfire, yes, it's fun to just take some midis and import them into SM64 for the first time... Reminds me of how amazing MML2M64 was to me when it first came out.
But since you asked... I don't really get it. I can't recognize the music and it sorta hurts my ears.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 8/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by Meltfire
And I notice at the beginning Mario 64 title screen the bottom copyright part the screen where it usually say "1996 Nintendo" would be edit to say something else or to act as a sub title.
I like to know how to edit that part to so I can add my hack rom name as the sub title.
The texture can be found at 0xAF8BB4.
Use the tool called (Tool name removed to prevent Meltfire from corrupting his graphics) to navigate to that offset and import a texture there, or do it some other way. If I remember correctly, there is some information about the program somewhere on this forum.
I just find it kind of disrespectful to Nintendo to replace any kind of copyright notices that were originally in the game, though.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 9/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by RDX Are there any programs that export the level models from the game? I'm pretty sure there are, and I'm pretty sure one of them mentioned was Mupen (Which I'm downloading right now). But I thought I'd ask anyway, in case I'm wrong/there's a better program.
I've seen a lot of these.
Nemu64 is supposedly the best option, although it just doesn't work on my PC ever.
There's also a plugin for PJ64 (forgot the name) but it has an "export VRML" option.
There's another program called 3D Ripper DX but Jabo's plugin v1.5 was the only plugin that seemed to work with that program for me.
For the tools that export VRML, you should probably go get Blender to open them and export to whatever the desired model type may be.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 10/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Really nice work on all of the new features, Mess. This version is quite the successor of the past releases!
Anyway, I was looking at the music tab. I really like the option to import new tracks. It's really a convenience.
But have you considered including some sound samples of all the instruments?
I would think that might have potential lag, but I think it would be useful.
If you don't get to that, here's a little something you might think about using in a future version:
https://sites.google.com/site/4thstudios/instsets.txt?attredirects=0&d=1
There's some more tested instruments in there.
Just thought you might find some use of that.
Edit: instruments may not be 100% accurate, but it's kind of hard to tell with how they sound in SM64... 
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 11/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by Celux If I open a MIDI in WMP it works fine, but if I open a program like Cakewalk Studio or a game that uses MIDI's, not sound is played.
I actually get the same problem, too.
Mine is just caused by nothing more than my sucky audio card.
Have ya tried going to your sound settings down in the right side of the task bar and turning up the volume on your midi device?
For me, I have to be doing this a lot, but it does solve the problem.
Not sure if there's any way you can get it to stop doing that, though.
Poor me, I get a whole bunch more midi problems than just that... 
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 12/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
I've found some workarounds for all of those texture and "invisible wall" problems in Google Sketchup.
Namely, you can try going to "file > import > 2D graphic" instead of just painting faces with the default materials and then later modifying them.
If you have lots of edges where you want textures to be wrapped around, you should project or position the textures and then apply them to whatever faces you please. I've gotten much better results when doing this; it makes the model seem more smooth, as well as cutting down many of those texture problems.
It's all about trying different ways of mapping your textures... Even triangulating your model differently can solve the problem.
As for the "invisible walls", I've gotten rid of this bug almost always by simply making things more like they were in the original game (obvious.)
The other day, I made a map that had a lot of random features in it. This included several slopes and random intersections -- both of which were where I was finding invisible walls and missing collision.
What I did was I aligned edges in places that shared certain parts of the model.
In Sketchup, you should always try to take more "incremental" measurements on your edges and lifted faces.
If you hold shift while using most move tools, they'll snap onto any axis you're currently moving on.
That's what works for me. Try it!
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 13/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by ShenoxVII Question, needs answer.
How do I convert RAM values to ROM data? (In hexadecimal)
Example? When like changing mario's current action, Say I change it to sleeping, how would I convert that to ROM data or if not possible, how would I turn that into a gameshark code directly from RAM to GS?
With you making your "Gameshark patcher" or whatever, you should probably know how to do all of this by now, amiright?
Mario's current action is in stored RAM, so you would have to trace it back to wherever it's coming from in order to get it patched into the game in your situation. These types of things and their respective offsets do not exist in the actual ROM.
You may sometimes find them in the ROM, but modifying them like you would with a Gameshark code won't do you any good.
I don't know if you did this unknowingly, but you've talked about "0x245000" several times.
Subtracting that value from any RAM offset in the first checksum segment only (don't remember the length of it) will get you the ROM address.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 14/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by Friedslick6 I had an idea to import Crash Bandicoot's PSX model parts over Mario's, using Mario's animations. On a scale of 1 to 10, how implausible is that? I've seen Dudaw's Kirby model import, and it seems flawless despite a total difference in shape and size. In any case, what could I do to achieve this?
This thread and many more on this forum is what you could do to achieve this.
Like I've said to too many people already, you need some basic knowledge about the geo layouts and Fast3D display lists in order to do something like this.
Have you ever worked with segmented pointers or moving stuff around in the game?
Won't really do you any good if you've never done much of that before.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 15/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by DarkSpacer I did find an interesting interaction when screwing around with the Level Select code...I put up a YouTube video on my channel about it...
There's nothing too special about that.
If I remember correctly, that's just the camera used when Mario dies... Namely in sinking sand.
There are plenty more silly things you can do with the moon jump code beside that, too.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 16/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Gazpacho, I strongly suggest the Bob-omb "NPC" behavior over the Toad, due to the hardcoded music pointer, availability time, and etc..
The script is @ 0x0021CFDC
00 04 00 00 -- Entry point
11 01 24 49
27 26 00 00 08 02 39 6C -- animation command; change last byte every 4 bytes to get the proper frame animation (may not always work right)
2F 00 00 00 00 80 00 00 -- "Collision sphere" thing; change last four bytes to get the one you want
1E 00 00 00
23 00 00 00 00 64 00 3C -- Collision sphere scaling
28 00 00 00
10 1D 00 00
2D 00 00 00
0C 00 00 00 80 2E 76 AC} --
08 00 00 00 |
10 05 00 00 |
0C 00 00 00 80 2E 7C 4C} -- Functions for the NPC
09 00 00 00 -- Return
Modify that script and copy it down wherever you want. Probably in the extended memory if you're not lazy to do it.
There's a list of animation commands and whatever else on my website, too.
But as Metal Man said to someone above, you have to be capable of executing the ideas you come up with...
So I don't know if I just wasted time there explaining the NPC thing. 
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 17/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by Gazpacho146 Do you know where i can find a tutorial of animation commands? or could u tell me how to do it? is this in hex btw?
There's really nothing specific about the animation commands that needs to be expressed in a tutorial.
Like I said,
http://sites.google.com/site/4thstudios/list-of-animation-commands
Under "Command" are the last four bytes you insert after the 0x2726 command.
Yes, this is in hex. If you've never used a hex editor before, go grab HxD or Hex Workshop.
Refer to my last post, too.
So either do the work, or don't bother.
Edit: I just read your email now... What "person" said to you is absolutely right; we don't know what kind of answer you're looking for, and these things aren't always as readily doable as you would like them to be. 
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 18/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by messiaen (edit: Just a correction, you are not changing "frames", but rather using another animation type)
Whoops, not "frame."
I don't know, I haven't looked into the actual segmented pointers... Excuse me for that instance.
But yeah, that dirty trick does seem to work with behaviors that don't change animation very much.
I didn't notice any freezing when doing that with the talking Bob-Omb.
Gazpacho, remember I said the Bob-Omb script was at 0x0021CFDC?
That's the address I was talking about there... As for your display problem, maybe just continue toggling around in the hex editor's settings to get it how you want.
I think Hex workshop had some kind of option that let you choose between whether your offsets end in "0" or "1," no? If it does, change it to 0.
There should be something in there to change the length of the offsets, make sure that's set to 8, and that the data length is 16 (10hex) bytes per row.
Hm... I can't go into much more detail than that.
Hex editors are generally easy to get the hang of.
Glad to see you're actually trying.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 19/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by Gazpacho146but my animation frame is the koopa when they fall on the ground so they fall on the ground and get back up so i was successful but i didnt get the animation i was looking for, so how can you tell how many bytes are in a command
so how many bytes is 06 01 13 64...[/quote
Well, as Mess said, it's not necessarily a "frame," but rather an animation pointer I was referring to.
Yes, that's a little problem when applying the Koopa animation to any behavior.
So add 4 bytes to the final byte "64," so then you get 68. Continue doing that in hex until you get the animation you're looking for.
Hm... I've only done this with one animation before, so I'm not 100% sure it won't crash the game.
To modify the ROM name, you can just do that in the ASCII column.
It's right there at the beginning of the ROM, so it's easy to locate.
However, when modifying stuff in the "checksum segments," you need to recalculate the checksum.
The patch required for Messiaen's importer to work installs a hack so that you don't have to recalculate each time.
I warn you, though, never modify anything if you don't know what it does, especially since you've barely done any kind of hacking like this.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |
Dudaw
Member
Level: 17
   
Posts: 20/49
EXP: 22053 For next: 2690
Since: 01-07-11
Since last post: 9.2 years Last activity: 5.8 years
|
|
Originally posted by Gazpacho146 oh nvm i was increasing by numbers (forgot hexadecimal codes XD) If i wanted to create different colored koopas, would i copy a koopas hex data and paste it into the extended memory? and if so, how would i do it?
(idea from dudaws white shyguy vid)
What was said to Friedslick6...
Don't expect a direct answer all the time.
Beside, making multiple copies of the Koopa is huge amount of space and time.
Unless you were to do something that could change the Koopa's textures according to some kind of preset, I wouldn't suggest making copies of such a massive model at all.
____________________ "zOoM!"
http://sites.google.com/site/4thstudios
http://www.youtube.com/dudaw12 |