![]() Register - Login |
||
| Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users Ranks - Rules/FAQ - JCS - Stats - Latest Posts - Color Chart - Smilies |
||
| Jul - Posts by Garmichael |
| Pages: 1 2 3 4 5 6 7 |
| Garmichael Member Level: 23 ![]() Posts: 1/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
| Hey all, I've created a couple levels using Treeki's NSMB editor and I'd like to share them. You can download the rom pack at: http://www.develteam.com/Garmichael/downloads/Garmichael_rompack_1-1_1-2.zip I also have some youtube clips up of each level, but they contain spoilers and secrets, so if you're the type to explore you shouldn't watch them right away. I'm curious what you think, and if you aren't given the walkthrough, your feedback will be more appropriate. EDIT: See post below for the clips... Level 1 isn't too tough and is meant to be in World 1 somewhere, whereas Level 2 is meant for later in the game since its quite a bit tougher. Level 1 should be imported into World 1-1, and Level 2 should be imported into World 1-2. Thanks! |
| Garmichael Member Level: 23 ![]() Posts: 2/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
| I use Snag-it 8 to record my videos. I did record through my mic without realizing it (you can hear my 'phew' at the end of level 2, and the clickityclack of my analog stick). Next time, I'll record through my stereo out. That VGA Poppy Bright DOES look WAAAYYYY better, thanks! Do you have any tips on making the sound less staticy? Thanks for the feedback on the levels.. I've widened those beetle gaps Treeki mentioned. I'm sketching out some ideas for a couple more levels, but they'll take some time. |
| Garmichael Member Level: 23 ![]() Posts: 3/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
| I have a couple ideas for an upcoming release of this editor. Hold SHIFT while clicking and dragging a tile to resize it, as if you clicked and dragged the little square under it. Hold CONTROL while clicking and dragging a tile to make a clone of it under the cursor, retaining the width, height, and tile properties of it. I don't know how hard or easy these UI improvements would be, but I feel they would dramatically reduce the time it takes to build a level (especially for those pesky edge/corner tiles) |
| Garmichael Member Level: 23 ![]() Posts: 4/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Treeki
|
| Garmichael Member Level: 23 ![]() Posts: 5/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
| How did you record your video? Specifically, the music sounds amazing. |
| Garmichael Member Level: 23 ![]() Posts: 6/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
OH YEAH! I spent a few hours this afternoon figuring out the Connection Pipes stuff. I feel great! This post is about how to make connected pipes work, with the camera pans included. 1) Make a couple pipes, and put the entrances on them. Give unique values for the Entrance Number. Give them the same Connected Pipe ID number, and click "Connected Pipe" on both. Camera, Destination Entrance, and View should be 0 (there might be some exceptions for this, i dunno). However, for the Destination Area field: the first entrance should have a value of 0, and the second entrance should have a value of 1. Okay, thats the easy part. 2) Open up the level in Hex Editor. The blocks we're going to be playing with are blocks 11 and 13. ---- Block 11 ---- This block is like a table of contents. Each 'entry' is 8 bits (or whatever) long. The structure is as follows:
CC: This is the Pipe Connector ID. A pipe will only work if an entry in block 11 starts with its Connector ID. RR: This value points to the row in Block 13 that contains its information. TT: This value is the number of twists and turns the camera will follow, PLUS one. If you have a pipe with no bends, this value will be 2. If you have a pipe that goes left for a while, then up, then right, then goes down and exits you out, there are 4 twists and turns, so this value will be a 5. 00: While looking through the rom, these values are always 0. They might mean something, but then they might not. ---- Block 13 ---- This block contains the information for the twists and turns.
XX: The X position of the current destination. There appears to be an offset of 16 to 32... not sure why, tho. YY: The Y position of the current destination. There is also an offset of 16 to 32 here. These values might take some denial and error (TPB reference )00: These values appear to be 00 every time throughout the rom. DD: This is the direction you come out of this pipe. Sometimes, it doesn't seem to matter what this value is, and Mario will come out of the pipe the right way, but other times, he wont. 00: Down | 01: Right | 02: Up 03: Left First of all, the row that this data is on is important. the RR value in block 11 points to this row. The first row is, of course, 00. Then, 10, 20, etc. The number of rows for each Connection ID is equal to the number of Twists and Turns (the value of TT in block 11). Each row is a destination to a 'node' in the pipe. For a pipe with no bends, there are two nodes: The entrance and the exit. For a pipe with a couple bends, each bend is also a node and needs a row. If you have a pipe that has bends, but you only make rows for the entrance and the exit, the camera will pan to the exit automatically, even if the pan is diagonal. If you make an L shaped pipe where you go Down, then you exit to the right after just a couple tiles, you wont need a third node - the camera will just focus on Mario as he exits the pipe. So lets say you have a pipe that goes right, down, right. Lets also say that the pipe is long enough that we want four nodes. Row 00 is the Entrance point. It should have an appropriate value for DD. Row 10 is the first Bend. It doesn't matter what its DD is, though i think its best if you make it 00. Row 20 is the second Bend. Row 30 is the Exit end of the pipe. It should have an appropriate value for DD as well. Row 40 should be the start of your NEXT Connected Pipe ID, and 40 should be entered into spot RR in Block 11. If you want some in game examples, check out level 7-A Area 2, 4-Ghost House Area 1, and 7-3 Area 1. Yea, this was a long winded post ![]() |
| Garmichael Member Level: 23 ![]() Posts: 7/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Treeki Interesting!! Thanks for that info.. I checked out a few things and the format seems to hold up... 8 byte (am i using the right term??) sequences in Block 11 seem to follow the same IIII RRRR LLLL **** IIII: ID of object to follow path RRRR: First row of path sequence LLLL: Length of path sequence ****: Dunno yet.. ![]() The paths themselves follow the XXXX YYYY ******etc Each row is a node in the path.. I'll bet some of the *'s are for easing (like fast start, slow stop), for round curves, and so on.. We know the second to the last is Pipe Exit Direction... I'll keep looking through it ![]() Maybe once we figure it out, your editor could have Pathing layer. EDIT: You're already on it!!!! ![]() EDIT2: I'm a sleepy Garmichael.. Ive gone through all the block 13s. I figured out that the third set of bytes is the Speed. So far, it only seems to effect auto-scrolling, Doree, and the Giant Wiggler. The next set is always 00 00. The set after that, however, is pretty tricky. It seems to be some sort of easing system for the autoscrolling. If I set it to 0000, when the scroller gets to that point, it just stops. When I set it to other values, it seems the scrolling is slowed down, but there doesn't seem to be any logic to it. Also, this set is almost always one of just a small handful of values (00 08, 00 01, 20 00, 08 00, 10 00, and 40 00). My guess would be that each of these values is a 'setting' rather than a 'speed' since when i plug in FFFF, Its not immediately noticeable. When I mess with these values for the ridable critters, nothing appears to change. The last two bytes are used with the ridable critters. With Doree, setting a 01 in the end will cause her to transition to the animation where her head is down. setting a 02 there will make her move her head up and return to her normal head-bobbing animation. Setting 00's will allow her to continue her current animation. For the Giant Wiggler, a 00 (01, 02, and 03 also) will allow it to do the 'bump up' move she does with her body. A 04 tells her not to do it. Also, one thing thats bugging me is... How does block 11 know whether the ID its referencing is a Pipe Connection or a Movable Sprite?? The only guess I have is that if it uses an ID of 00, then it just looks for the first sprite with that ID. But that would mean we coudln't have two movable block platforms, Dorrees, or Wigglers in the same level. 4-6 is an example where there are two Dorrees... HMM!!! |
| Garmichael Member Level: 23 ![]() Posts: 8/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
| Oh also Treeki.. I have a couple hopefully minor UI improvement pitches, since it seems like you'll be releasing an update soon. 1) Could you make it so sprites and entrances also clone when you use Control+Click? 2) Can you wire up the delete or the backspace key to delete the currently selected object? |
| Garmichael Member Level: 23 ![]() Posts: 9/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
Got a new level up... Its an easier level, I think, and it's not too extravagant. Actually, I feel its rather bleh but it has some merits. I'll post a youtube clip of it after I make one. I want to remake the clips to my other two levels, now that I know how to make them not look and sound junky. Right Click to download: Garmichael's W1-3 EDIT: I retook the clips of each level with Shantae and Purp's advice. 1-1 1-2 1-3 -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 10/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
Hey guys, I have some new info. If any of you have additional info relating to this, I'm all ears! This relates to Blocks 8, 10, and 12. Block 8
Treeki has already figured out the X, Y, W, H, M. The new bit of info is the I. block 10
This is exactly like block 11 block 12
This is exactly like block 13, except there doesn't appear to be any data except for the X and Y. Each row is a node which makes up a path. Now here's the weird part. I have NO idea what this stuff is for. When I delete out blocks 10 and 12 and update the ID reference from Block 8, there doesn't seem to be any change in gameplay or in camera rules whatsoever. Generally, there are only 2 nodes per view, and the line they make goes right across the bottom where the camera stops panning down. A great example of this is in 1-2 Area 1, where you can see the line it makes going from one end of the level to the other. The camera doesn't drop below this line except for the spot near the start where mario butt-stomps to go down there. The 198 and 199 sprites allow this, but when you remove them, the camera will still pan (but it will be jerky when it does...) For lack of a better word, Ill call this line the 'Baseline'. I'll venture to guess that some values in Block 2 (since messing with them messes up the camera's panning) are offsets measured from this line. However, it gets weird because there are a few exceptions. One of the stranger exceptions is World 2 Tower Area 1. I made a screenshot map, and drew a red line from each node. How could this be a baseline of any kind? Myt heory seems shot. ![]() WTF? Again, I would appreciate any input anyone has found out about this stuff. -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 11/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Treeki Oh you're right about the flagpole tracking... So 10 and 12 work like 11 and 13, by creating a path that lines up with the level progress bar on the bottom screen. I've been mucking around with the other values for Block 8... The second to the last pair has been interesting. When playing with this value with Level 1-A area 1, the CheepCheeps and the Sharks go between having a white underbelly and a gray one. It seems to have something to do with Transparency - possibly either a blending mode or an opacity intensity. Also, this could be an effect on enemies. Either way, it doesn't seem to effect gameplay. Also, changing this value didn't change anything in the Ghost Houses. Mehhhhhhh Anyway, here's an update value list: Block 8
-------------------- |
| Garmichael Member Level: 23 ![]() Posts: 12/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
Cool! I wish you success when you do try. I just figured out what AA is. It refers to the ID of an entry in Block 2. In Block 2, each entry is 24 pairs long and the 17th entry is its ID. Edit: I think we're both pretty sure that Block 2 is the Camera rules for a view. These values don't seem like numeric values, but seem more like settings... -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 13/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Treeki I think you misunderstood me. In Block 8, look at entry AA (the 10th Pair). Now, look at Block 2. It is 24 pairs, where the 17th pair is its ID. So the view calls a camera by its ID. In World 1-1, Block 8's AA = 00. Most of Block 8's AA are = 0. There are a couple example I want to show you:
This is Level 1. Block 8 looks for Camera ID 0 and finds it.
In this one, it seems to me that the developers created 2 cameras and one of them didnt work, so they added a third without deleting the second one.
Here, it looks like they created three cameras and reused the first one for several of the views. -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 14/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Shantae I'm kind of figuring this Block 2 out... Check out what I got so far..
I've found some curious things. First, I notice that there are a lot of repeating values. I BELIEVE these are all of the values found for AA,BB,CC, and DD.
Second, I notice that all but one of them (23) are even. Third, if the value is higher than D0, the next 3 pairs (the xx xxxx) will be FF FFFF every time. If the value is not higher than D0, the next 3 pairs are 00 0000. It makes me wonder that if there are only 4 variables and they are all similar, then are these maybe something to do with the border? Like, the camera will stop panning if it is AA away from the bottom border, BB away from the left border? Anyway, II = the ID of the camera. EE has something to do with the stickiness of the camera to the bottom of the view. Depending on what it is set to, it will not come off the bottom until you climb a vine or jump on a whirlie-pad. Then, depending on that value, it will either REMAIN free, or it will restick as soon as you hit the ground. I'm still playing around with this. Originally posted by Treeki Awesome! Congrats! I would have never figured that out... I didn't even know No$GBA had a debug mode ![]() You know what this means, right? SILHOUETTE LEVEL!! ![]() -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 15/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
Treeki, I was playing with Block 5 the other night. I'm not sure about its exact format, but I'll share my findings with you. My Background Top layer is 12 (Green/White Hills and Clouds) My Background Bottom Layer is 33 (Clouds with Orange Hills at back) My Block 5, by default is: 0000 0C00 0C00 FFFF FFFF 0800 0800 0000 0000 0000The first 0C00 changes the color pallet, and the second 0C00 changes the tile pallet. I don't remember what value i set to the second 0C00 but one time it became the volcanos found in World 8, complete with raining lava rocks. I changed the 0800 0800 to 1A00 1A00 and it moved my Top BG down a bit, so that the fast moving clouds were at ground level. Then I changed that set to 0F00 0F00 and there was some pretty intense scrolling on that layer, both horizontally and vertically. Originally posted by Hiccup In Block 1, there are 32 pairs. Count to the 27th one, and that is your Sound Set. In Level 1-1, the default value is 07. Change it to 0D or to 10 to get your Dry Bones sound effect to work. Amazingly, the Goombas still sound like goombas being mashed up. -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 16/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
Im up late again playing with Block 2.. Found out some tiny bits of info.. I've figured out AA, BB, and SS. (We already know II is Camera ID, referenced from block 8). SS: Values of 00 through D0 are a measurement of how far from the bottom of the view before the camera will no longer pan up (except for when Mario climbs a vine or jumps on a spin-pad). Place a value of F0 here and the camera will freely pan up until the top of the view. With AA and BB, first, there are a few curious effects. I've mentioned this one before, but ill re-mention that any value A0 and higher must be followed by 6 F's, and any value lower than that must be followed by 6 0's. AA is the measurement from the top of the screen to Mario's location before it will pan up. Here's the weird thing: Instead of 00 = 0, and FF = the max, the numbers are resorted sort of. They should go in this order: A0, B0, C0, D0, E0, F0, 00, 10, 20, 30, 40, 50, 60, 70, 80, 90 A0 is the minimum distance away 90 is the maximum distance away In my testing, A0 was ABOVE the top of the screen, and when I put a value of 60 or higher in, the camera repositions so Mario is near the bottom of the screen. BB is the measurement from the top of the screen to Mario's location before it will pan down. The same ordering structure is present here as in AA. When the two distances overlap, the screen tends to do this jumpy-effect that isn't very nice. I feel that more testing is required... I'm not convinced I have this figured out 100%. I havent tested CC and DD, but I'll be it has to do with how close to the left and right edges of the screen mario must be before it scrolls with him. -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 17/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Treeki Thanks for this info Treeki (and Messiaen). It makes a lot more sense... I've revised my theory to believe that this value is an offset in relation to the very center of the screen. Positive numbers measure the distance from the center to the point where the camera will start to pan up and down. Negative numbers seem to reposition the camera in some way so that it starts our with mario closer to the top or bottom. Originally posted by Hiccup Its something to do with your Block 1. The first problem is this bit: Change that FF to 00. Also, there is another problem in there somewhere because when it does open, the Interface graphics are all garbled up. I just copy and pasted the info from another level and it works fine. -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 18/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
I found where the Interface graphics were being garbled up. Its in his Block 5 The problem is the Red set of FF. I set it to 00 and the Interface is back to normal. The Blue set doesn't look like it should be FF either, but when I set it to 00 nothing apparent changes. I feel that its probably best to keep it 00 tho, since the only instances Ive found where it is FF is when the 2 bytes preceding it are also FF. Also, Treeki, I have a couple more UI requests. In the data finder, can you set the font used to a fixed font like fixedsys? It'll make it easier to compare values. This isn't a huge deal since Ive just been copying the data to notepad. The other request is for a Sprite list similar to the Entrances list. Again, not a big deal, but it'll help when verifying a sprite does or doesn't exist in the level (like when I accidentally put a sprite 0 in and forget to update it to real one). I don't mean to tell you how to do things or add to your continuously mounting to-do list. I think you've done a fantastic job with this editor. -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 19/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
Originally posted by Treeki Im using No$GBA... Did you change that byte in block 1 for his map? I uploaded the version of his map that I'm using to get the error to occur, so you can test that one. This level will load properly for me and the interface graphics are jacked. Link (right click to download): Hiccup's Garbledness Originally posted by Treeki Thanks for implementing all this stuff! Can't wait to try out your next version! -------------------- |
| Garmichael Member Level: 23 ![]() Posts: 20/121 EXP: 58661 For next: 9062 Since: 06-24-09 From: Seattle, Wa Since last post: 1205 days Last activity: 1140 days |
|
||
|
Sweet! Figured out AA and BB empirically. Check out this image I made: Block 2 AA BB Described As you can see, there are two red lines. The top line is the line mario must cross before the screen pans up, and the bottom line is the line mario must cross before the screen pans down. Keep in mind that Mario's reference point (the X/Y coordinate that determines mario's location) is at the soles of his feet and in the middle of his width. The middle image, with AAxBB set to 00x00, shows the base lines for each. When I went negative with the line, the line shifts upward by that amount. A positive number pushes that line downward by that amount. I discovered something else pretty interesting.... This is tricky to explain, so I've supplied a screen shot to supplement: Panning Block Imagine the whole level broken up into squares of 256x256 pixels, measured from 0x0, not from the top left corner of your view. Basically, if the game notices that there are no tiles in that block of 256x256, the camera will not pan into it from a horizontally or vertically adjacent block. In fact, the camera will pan specifically so that you can't even see into the block. If the empty block is to the left or right, it wont let Mario move into it and will act like a wall. If the block is above, Mario can move into it but the camera will not pan into it. If Mario falls into it, he will die instantly. Notice that blocks A and F are empty. Mario cannot get to A from B, but he can actually jump from D to B. While he is in A, the camera will not move, but as soon as he crosses into B, the camera will jump to that location and that boundary would act like a wall. From there, As Mario approaches C, he will be able to see some of F, but as soon as he crosses into C, the camera will reposition so that the border to F is the bottom of the screen. If Mario jumps down into F, he dies (even though the block under F has ground). If you're confused about this, try downloading my test level for it: Panning Block (right click and save as...) -------------------- |
| Pages: 1 2 3 4 5 6 7 |
| Jul - Posts by Garmichael |
![]() |
Acmlmboard - 07/23/2013 b378.03 ©2000-2013 Acmlm, Xkeeper, Inuyasha, et al. |
| Query execution time: | 0.054056 seconds |
| Script execution time: | 0.101024 seconds |
| Total render time: | 0.155080 seconds |