<- 1  -   of 222 ->
^^
vv
List results:
Search options:
Use \ before commas in usernames
Not very convenient at all, but thanks. I'm still trying to understand room states fully. My main problem seems to be that different states keep different things from the standard state. For example: In the landing site, all the states have the same tiling, but Event 1(zebes is exploding) has different PLM data, Power Bombs 1 has different FX1 but the same verything else, and I can't find what's different between Event 2 and Standard for the life of me.

Is there any easy way to tell what carries over between states? Is there anyway to make certain things carry over and other things not carry over? I'd really like to be able to change the tiling of some rooms after an event occurs. A prime example would be to make something fall and close off the path of the room next to the noobtube after said tube breaks, essentially letting me represent that the powerbomb that broke the tube cause more damage than expected.
You simply go to the Pointers segment and then swap between states and see which pointers change and which stay the same.
Acclaimed Threshold
Constant Sorrows
Quote from Cardweaver:
Not very convenient at all, but thanks. I'm still trying to understand room states fully. My main problem seems to be that different states keep different things from the standard state. For example: In the landing site, all the states have the same tiling, but Event 1(zebes is exploding) has different PLM data, Power Bombs 1 has different FX1 but the same verything else, and I can't find what's different between Event 2 and Standard for the life of me.

Is there any easy way to tell what carries over between states? Is there anyway to make certain things carry over and other things not carry over? I'd really like to be able to change the tiling of some rooms after an event occurs. A prime example would be to make something fall and close off the path of the room next to the noobtube after said tube breaks, essentially letting me represent that the powerbomb that broke the tube cause more damage than expected.


laugh new Ah that was a good laugh, thanks Card.  grin new

Okay, the reason some states have different data is because each state has its own set of pointers. Open up the Edit Pointers window and change states, you can see what changes with it. This should make things much simpler for you. Generally speaking, you can give one room state the same information as its other state(s) just by changing the pointer to the new state.

There's two exceptions that comes to mind. Changing level pointers works backwards; if you change a level pointer of one state to another state, you will actually OVERWRITE the level data at the location of the new pointer. For example, if you took a "WS off" state and changed its level data pointer to its "WS on" state, you'd actually be turning the "WS on" level data into the "WS off" level data. AFAIK this is the only pointer that works "backwards" like this, the others are fine to edit... Jathys needs to fix this "bug" at some point, I just keep forgetting to mention it to him. Uhm, I also don't think you can change doorout pointers for individual states (but I might be wrong on that).

Anyway it's all simpler than it sounds and you're certainly smart enough to get it, just ask if you have questions.

Quote from Black Telomeres:
You simply go to the Pointers segment and then swap between states and see which pointers change and which stay the same.


Bah, darn you and your short, quick replies, I got this one covered dangit.
Ah, I knew it had something to do with pointers, just wasn't sure where the blasted things were. I assume that to do what I want to do with the noobtube I'll have to use a hex editor to find free space, then point the tile data there? But backwards right? So I'd have to repoint (for my purposes we'll call the two states: event 1 and 2, where one if before the tube breaks and 2 is after) event 2's tile data to empty space? Or would I have to repoint both event's data? Ugh... There should be an easier way to do this...

Speaking of bugs in SMILE, be careful when using the edit projectile function. I didn't touch anything else but that function, and I go to play the game, getting the beams and trying them out, only to find that my ice beam sounds like the xray scope, and the sound didn't go away until I made samus do something else that makes noise, like spinjumping.  laugh new When I asked why this happened, someone (I think it was Kejardon, but it might have been Jathys) told me that the soundfx table is right after the beam table in the rom.

Quote from Acheron86:
you're certainly smart enough to get it


extra_smug
Acclaimed Threshold
Constant Sorrows
Quote from Cardweaver:
I assume that to do what I want to do with the noobtube I'll have to use a hex editor to find free space, then point the tile data there? But backwards right? So I'd have to repoint (for my purposes we'll call the two states: event 1 and 2, where one if before the tube breaks and 2 is after) event 2's tile data to empty space? Or would I have to repoint both event's data? Ugh... There should be an easier way to do this...


It really is quite easy after a couple times, trust me, it's like riding a bicycle. (TODO: cheesy bicycle clip art here)

Okay I should've said it in the last post but I didn't so here it is: what actually happens when changing level data is, when you change the pointer, it saves the CURRENT loaded level data (the one on the SMILE screen at the present moment) to the location because SMILE wants to save the current room before changing pointers. Problem is that it does this AFTER changing the level pointer. So because of this, when SMILE then automatically saves the room as part of the pointer-changing process, it saves the CURRENT loaded room to the location the room's header points to, but we just changed that pointer so now it's overwriting the stuff at that location. This is "backwards" in the sense that all the other pointers, when saved, do not overwrite any data at those locations... only the level data pointer has this effect.

In other words, if you're pointing to free space, you can just change the pointer to free space, save, and it'll copy the room data for the room that's loaded to free space. BE AWARE: If you're editing a room that has more than one state, and you're going to be changing the pointers, it is advised you change the level pointer for EVERY state in that room to the new location before you start drawing the room, otherwise you're going to have to do some hexwork to manually change the level pointer outside of SMILE since doing so at that point would obviously obliterate your room changes.

Anyway I repeat again that it's much simpler than it sounds, just not necessarily immediately intuitive. No matter how imposing this seems, I assure you anyone who got through middle school is smart enough to understand this once they've messed with it once or twice.

Quote:
someone (I think it was Kejardon, but it might have been Jathys) told me that the soundfx table is right after the beam table in the rom.


Actually this is really cool and useful information for me. I will have to experiment with that.
. . .
Quote from Acheron86:
This is "backwards" in the sense that all the other pointers, when saved, do not overwrite any data at those locations... only the level data pointer has this effect.


Not true, changing scroll pointers also have this backwards effect!  I found this out while trying to make rooms with up/down doors.  (Those who don't know, up doors need blue/no scroll, and down need green)  So I messed around with changing scroll pointers for awhile until I learned about the 0000 and 0001 scroll pointers! 

It took me for a loop at first, but now that Acheron86 has explained why it happens, it makes alot more sence now!
A simple question....

I wish to have a door leading to another room but not have a door...the only thing is that I can't seem to use "door" tiles on any other tiles and as a result have to have one door tile so samus can move rooms and was wondering if theres any way I can change the tile so that it is just normal ground but still acts as a door?

*EDIT* I have tried before but it is $DOOR 01 and anytime I try it it keeps going to $DOOR 00 and I can't change and save it  :|
Acclaimed Threshold
Constant Sorrows
Quote from Super_Metroid_1990:
A simple question....

I wish to have a door leading to another room but not have a door...the only thing is that I can't seem to use "door" tiles on any other tiles and as a result have to have one door tile so samus can move rooms and was wondering if theres any way I can change the tile so that it is just normal ground but still acts as a door?

*EDIT* I have tried before but it is $DOOR 01 and anytime I try it it keeps going to $DOOR 00 and I can't change and save it  :|


If I'm understanding you right, you want to have a tile that acts like a door but without the door bubble. Two steps are involved here:

1-Set the tile to "door" and give it an appropriate BTS (if it's to use door zero in the door editor list, you'd give it a BTS of zero; for door one, BTS one, and so on.)
2-Open up the door editor, click on the door in the door list to change, and click the picture that shows up to change it from a door to a no-door picture. Then "remember this door" and save the room.

If the door you want to use is door 01 but the door the tile goes to is door 00, just change the BTS of the door to 01. Changing BTS defaults a tile to a slope so you'll need to change it back to a door tile after that, but it'll work. You can tell if a door has a BTS by the white or blue boxes that surround its door tiles. Also, mousing over a tile shows its BTS in the title bar of the SMILE application.
Warning: lump of "How do I" questions coming up!

1. How do you edit the background? I want to add structures and formations that the Samus sprite is "in front of" instead of running behind everything.

2. How do you add water to a room, and 3. How do you put things (such as spikes, crumble blocks) inside the water?

4. How do you add lava/acid to a room that normally doesn't have it?

5. How do you change what species are allowed in a room?

6. I've accidentally had some "air" tiles turned into invisible solid blocks. How do I quickly locate what "air" tiles are solid so I can fix them?

7. How do you change a door type into another?

8. (Related to the above question) When I first started SMILE, I replaced blue tiles with red thinking that would make it a missile door, but it didn't work, so I changed it back to blue. However, whenever I shoot the door now, a minor graphical glitch occurs and the door tiles reverse (in appearance, not in function, see attachment). Is there a way to fix this or do I have to live with the glitch?

9. I figured out how to change the location of items by editing PLMs. But what do I do with the old PLM? Do I change it into something else (like an enemy?) or hide it offscreen, or... well, if all items sharing the same index# disappear when you pick one up, could I set all the old item PLMs to the same index as morph ball that way they would all disappear when I pick up morph ball?

(More advanced questions)

This isn't important for the halfhack I'm making now, but I want to know how to delete rooms and create my own map. I believe this requires a hex editor to create new door pointers, but I really know nothing about how to use hex editors.

What exactly does SMILE's "expand ROM" option do?

Edit: Major, major thanks to anyone who answers any of these questions.

attachment:
Ahhhhhh thank you very much Acheron86 it worked perfectly :D

Thanks for always coming through for me :)
Edit history:
Xaggoth: 2008-07-24 04:27:49 pm
Quote from Deep_Space_Observer:
Warning: lump of "How do I" questions coming up!


You should give BT's SMILE faq a read.  It will have a lot of this information for you already:
http://www.freewebs.com/blacktelomeres/smilefaq.htm

1. tools-->graphics editor (find the tiles you want with the selector and click the corners of the image.  The little red square indicates which side of the tile Samus will show up on.

2.  Edit-->Fx1 (I recommend looking at a room that has water and copying the information)

3?

4. See number 2

5.  Right click an enemy and look in the lower left of the menu, double click an entry to remove it and double click from the list above to add it.

6.  Double click the type of tile (the big one on the right, red surprise!)

7.  Door... type?  See Acheron's post above, but if you mean with a plm just drag and drop a door plm on your blue door.

8.  Have you tried copying door tiles from a different door and pasting them over your edited door?

9.  For the love of god don't use the ++/-- plm/enemies option unless you know what you are doing.  Just change the existing plms in that room or repoint plm data to that room (from an entirely different room or a different state inside that room)

Edit: more info about #9:pickups with the same index will disappear when one of a similar number is picked up.  This is also true of door caps.  However, if they occupy the same room they will not be removed until you leave that room and reenter.

The rest: Nothing I've done before.
Edit history:
playerman1230: 2008-07-24 04:55:41 pm
Hated by all
Quote from Deep_Space_Observer:
What exactly does SMILE's "expand ROM" option do?


Well, it just adds a bank to your ROM (look in a hex editor, normally it should be 300000, but in the SM format [since it's a Fast LoROM], it starts with E08000). You can use that to expand rooms (just put 300000 in the level_entries.txt file, and I don't remember if you place E08000 in the level_data pointer or whatever it was). If you want more room expansions, just look in the hex editor. Any practical guy can just translate the numbers for you.

If you want a detailed explanation, look a few pages back.

I'm seeing seven bright grays in a row in Set 1 Row 3 (it wasn't 1-5) in the Graphics Editor, and which one seems to be for the sky? I edited four shades of gray, but the sky didn't turn the blue I wanted it to. It probably ended up just making the CRE display all blue (except for some gray sky color).
Edit history:
Acheron: 2008-07-24 04:53:46 pm
Acclaimed Threshold
Constant Sorrows
Dang Xaggoth sounds like a pro now. If you have any other questions or are still confused after looking at BT's FAQ, search the thread, and if nothing comes up go ahead and ask here again and we'll try to clarify.

Quote from Deep_Space_Observer:

This isn't important for the halfhack I'm making now, but I want to know how to delete rooms and create my own map. I believe this requires a hex editor to create new door pointers, but I really know nothing about how to use hex editors.

What exactly does SMILE's "expand ROM" option do?

Edit: Major, major thanks to anyone who answers any of these questions.


You'd have to do more than make door pointers, but not a ton more. Basically you'd need to create new level headers, set up pointers for level data, FX, doorout, PLMs, Enemies, all that good stuff... and then add the header's location into SMILE. I wouldn't bother though... if you're not going to be using that any time soon, just wait, some really cool and awesome and sexy hacker is going to make a template patch soon that "cleans out" all the old rooms (except for special rooms, like bosses and such).

If you find there aren't enough rooms in SMILE for all the editing you want to do, try making one room really big and using it for several rooms, adding more door pointers to make things easier. I have a tutorial on how to do that a few pages back in this thread; it still requires hex but not nearly as much or as hard to do.

Expand ROM is for adding banks to the ROM; each bank is $8000 bytes and you'd want to do this for a variety of hex-related editing. Currently Aegis is at bank $E8 or something, for example.

Quote:
I'm seeing seven bright grays in a row in Set 1 Row 5 in the Graphics Editor, and which one seems to be for the sky? I edited four shades of gray, but the sky didn't turn the blue I wanted it to.


Make sure you turned off the "Grey" checkbox in FX settings. If it's not showing up as changed in SMILE, I dunno, keep experimenting? It shouldn't be too hard and I'm not sure what area you're looking at.
Thanks guys, BT's faq is really helpful. I got another idea while reading it and now I have some more graphics troubles.

I changed the tileset for the bomb torizo room, and tried to give it the same background as the noob tube room. (They both use tileset 12) I copied the noob tube's Layer1_2 pointer over, which did nothing. So I set the BG_Data to 0000 as the tube room doesn't use it. Result (It's different than what it was before, but still messed up):

attachment:
Acclaimed Threshold
Constant Sorrows
Quote from Deep_Space_Observer:
Thanks guys, BT's faq is really helpful. I got another idea while reading it and now I have some more graphics troubles.

I changed the tileset for the bomb torizo room, and tried to give it the same background as the noob tube room. (They both use tileset 12) I copied the noob tube's Layer1_2 pointer over, which did nothing. So I set the BG_Data to 0000 as the tube room doesn't use it. Result (It's different than what it was before, but still messed up):


If a room doesn't use BG, then its background is in layer 2 (which is different than background data). I can't check the noob tube room right now but if you open it up, go to view and turn off layer 1, then you can see/edit layer 2 tiles. If its background is layer 2 you'll be able to tell by looking. In that case you'd want to copy that layer 2 over to Bomb Torizo's room; however his room's pretty small and I don't think it has a layer 2 so that might not work without expanding the room size.
I just got done figuring out custom backgrounds in a not-the-same-tileset-as-the-last-room situation, so its your lucky day.

You'll need to change the background pointer to 0000, and layer1_2 pointer to 0000, and the layer 2 scroll (location on the right hand side of the ediotr under the "other" tab to 0000. Then, add a layer 2 to the room if it doesn't have one(edit->special->layer2->add), then draw your own background it. This should work nicely.

edit: what acheron said is also very true. make sure  that you don't go over the room limit, and make sure that when you try to draw the background, you press F1 to turn off the layer 1 tile data temporarily.

I think I may have a question that hasn't been asked here before (probably not... lols), but how do you edit the title screen to say Super Metroid and then have the title of your hack underneath it?
Quote from Cardweaver:
I think I may have a question that hasn't been asked here before (probably not... lols), but how do you edit the title screen to say Super Metroid and then have the title of your hack underneath it?


I'm betting you can just use tlp?  I haven't learned how to use it yet.
Yup, TLP. But does anyone know which tiles are which and which tiles to edit to get the results you want? It all looks like a bunch of garbled pixels until you find the map icons/enemies. I might want to change the gfx if I ever wanted to make a fullhack.
You need to go into the gfx editor section under tools and rip specific things, open those ripped files in TLP and edit them that way. Opening the whole rom in TLP is fine for stuff that SMILE won't let you rip, but that's not the best way to do things when SMILE will let you rip something, especially if, like most tiles, that thing is compressed.
I added in a layer2 and drew some stuff in it, but the problem persists. It looks like it should in SMILE, but still looks the same as the pic in my last post when actually playing. Pointers BG_Data and Layer1_2 are both set to 0000 as is the Layer2 scroll, so I don't know what's wrong. (I've edited and rechecked all three states of the room, too.)

Edit: Just had my first experience with a room getting eaten. Setting the layer2 scroll to 0000 ate up the room before the torizo one. I have a savestate inside that room, but it freezes whenever I try to enter that room through a door. I have a backup where the only difference is the layer2 scroll and the room works normally.

Is there a "black" tile I could use to "cover up" the glitched background, or are all of those items?
Acclaimed Threshold
Constant Sorrows
Quote from Deep_Space_Observer:
I added in a layer2 and drew some stuff in it, but the problem persists. It looks like it should in SMILE, but still looks the same as the pic in my last post when actually playing. Pointers BG_Data and Layer1_2 are both set to 0000 as is the Layer2 scroll, so I don't know what's wrong. (I've edited and rechecked all three states of the room, too.)

Edit: Just had my first experience with a room getting eaten. Setting the layer2 scroll to 0000 ate up the room before the torizo one. I have a savestate inside that room, but it freezes whenever I try to enter that room through a door. I have a backup where the only difference is the layer2 scroll and the room works normally.

Is there a "black" tile I could use to "cover up" the glitched background, or are all of those items?


Uhm, that's strange.

Could be something to do with FX stuff though I doubt it. changing layer2 scroll has never ever given me those sorts of bugs, although I don't know if I've tried 0000 before (I usually leave them alone or set them to 91D5 [default "do nothing" value AFAIK]). It could be a bug with Bomb Torizo's room specifically; try testing it in another room and see what happens.
Quote from Acheron86:
Uhm, that's strange.

Could be something to do with FX stuff though I doubt it. changing layer2 scroll has never ever given me those sorts of bugs, although I don't know if I've tried 0000 before (I usually leave them alone or set them to 91D5 [default "do nothing" value AFAIK]). It could be a bug with Bomb Torizo's room specifically; try testing it in another room and see what happens.


I've figured out the problem. I was always testing the room the "quick way" by using a savestate inside the corrupted room, so I never noticed the crash until I tried entering said room it through a door. It seems what caused the crash was adding a layer2 to the Torizo room in the first place. So it looks like I'm stuck either keeping it with the same tileset, or a wonky looking backround. Or is there a Maridia tileset room that uses regular background information I can use instead of layer2?
Acclaimed Threshold
Constant Sorrows
That can't be right. I added a layer2 to my bomb torizo room without any problems. You might need to repoint level data in the worst-case scenario but it's certainly possible to use layer2 in that room.
Quote from Deep_Space_Observer:
Is there a Maridia tileset room that uses regular background information I can use instead of layer2?


I was just doing some maridia editing and room 7D461 has a background.  I imagine the rooms similar to it also have backgrounds. 
Quote from Acheron86:
That can't be right. I added a layer2 to my bomb torizo room without any problems. You might need to repoint level data in the worst-case scenario but it's certainly possible to use layer2 in that room.


I have a layer2 working now with scroll 91D5. I made it all black but it doesn't seem to work where there are layer1 tiles placed. Is this normal behavior for layer2?

Edit: went with Xaggoth's idea and removed layer2. The background looks good, but it has the same problem as the pic below. Everywhere except the Torizo's body and the door is black.

Edit 2: Yay, it's working now! Thanks Xaggoth.

One thing it seems you can't do to the room: add water.

attachment: