Kuribo64
Views: 19,855,790 Home | Forums | Uploader | Wiki | Object databases | IRC
Rules/FAQ | Memberlist | Calendar | Stats | Online users | Last posts | Search
03-29-24 11:08 AM
Guest:

Main - Posts by Fiachra

Pages: 1 2 3 4 5 6 7 8 9 ... 50 51 52 53 54
Fiachra
Posted on 04-12-13 01:58 PM, in Editor development (rev. 2 of 04-12-13 04:50 PM) Link | #19906
Posted by Skelux
Damnit Fiachra, just after I finished figuring out how to edit the CLPS table for the most recent level haha.

Are you certain that there is an AR code to disable the peach/lakitu opening sequence, if that's what you mean? If there is, I could easily trace it back and remove the intro.

Also, I am having another issue with text editing. I find that after I edit a number of text strings, the entries at the back of the table start being overwritten, which effects saving and such. Any ideas on if this can be fixed?

:)

There's definitely an AR code, it's only for the US v1.1 version though:

Skip Intro
220960E8 000000FF

I've been meaning to fix the text editing one for a while but left it because I thought it only affected the last string and because it seems completely random. I'll start trying to fix it now.

Edit:
Fixed it (rev. 44). None of the strings should corrupt now. Also made it easier to work with - it'll save all changes at the end and you won't lose your place. Also, code is much neater.

Fiachra
Posted on 04-13-13 07:56 AM, in Editor development (rev. 3 of 04-13-13 08:40 AM) Link | #19981
Posted by Skelux
Great, I'll revert the dialog file and fix everything up.

The intro is eliminated.
EUR: ROM 0x13DF4 to 0x88
US: ROM 0x13CD0 to 0x88
US 1.1: ROM 0x13D48 to 0x88
JAP: ROM 0x13D48 to 0x88

Edit: I should also mention, r43 and beyond are not displaying object parameters correctly.
Edit 2: Hold on, this intro disable only works if there are no existing files. Looks like a couple of values will need to be changed, ill find it in a few minutes.
Edit 3: I corrupted my file and can't seem to recreate the problem where it still displays the intro. It may only occur with files created before the patch, I really don't know, I'll just have to test it again once the problem surfaces again.

Edit 4: There is still an error with text editing. Rather than trying to explain, I'll just show you: http://www14.mediafire.com/convkey/d27d/2qno1b1ohac8qnl9g.jp <br>g

Great, I'll get that added to the editor, I'll make it an option you can toggle on and off.

I changed the object parameters so you could edit the path ID more easily. Do other objects need this as 16 bits long? If so I'll change it back?

Sorry, I thought it was working, will try again.

Edit:
I think I found the problem, I wasn't calculating the difference in length between the new and old strings correctly. Try changing:
int lengthDif = txtEdit.Text.Length - m_StringLengths[selectedIndex];
(Second line in UpdateEntries())
To:
int lengthDif = EncodeString(txtEdit.Text).Count - m_StringLengths[selectedIndex];

Fiachra
Posted on 04-13-13 05:57 PM, in SMB W1-1 in SM64DS Link | #20057
Looks good! Always nice to see people interested in modding SM64DS.

Fiachra
Posted on 04-14-13 07:43 AM, in Editor development (rev. 4 of 04-14-13 03:17 PM) Link | #20302
The code to compress is already there, it's used for the minimaps, it'll be very easy to add.

Add:
file.Compress()
before
file.SaveChanges()
in the writeData() method.

I'll also check if it makes a difference to the max poly count if you compress the model?
Edit:
It doesn't, but the option "Drop faces below ..." makes a huge difference - I was able to import an 8000 face model without crashing if I left it at the default 0.001. If I set it to 0 it crashed. Really wish I had realised that earlier, would have made importing Sunshine's models a lot easier.

Edit 2:

Rev. 45 14/04/2013

- Fixed Text Editor problem
- Added option to create, edit and apply own patches (including skipping the intro, thanks to Skelux). When you create a patch a note is made of the original data so you can easily undo it if you make a mistake. Patches are stored as an XML document, so it's easy to update etc.


[image]

Fiachra
Posted on 04-15-13 05:52 AM, in Editor development (rev. 2 of 04-15-13 06:14 AM) Link | #20442
It doesn't move text to the end, it checks if the new string is longer or shorter and if so shifts all following pointers and data forward or back and writes the new string at the original location, so it should be the same as r42.
I'll have a look at it, might be DAT1 size not being updated. What level does CCC replace?

Fiachra
Posted on 04-15-13 08:14 AM, in Editor development (rev. 2 of 04-15-13 08:15 AM) Link | #20448
Posted by Skelux
Edit: I forgot to mention one thing. If I replace all the strings from the credits with blank space, the dialog file becomes bigger, so how can it be that the original is replaced?

Can you try the latest one? I made a mistake with shrinking entries, forgot that lengthDif was negative, so I was adding it instead of subtracting, meaning that smaller entries were doubling the size of an entry.

Fiachra
Posted on 04-15-13 10:32 AM, in Editor development Link | #20451
Does it happen every time any string is read in CCC? Does it read an unedited version fine? If so, what if you edit an entry not referenced by CCC?
I put a sign in JRB Ship reading an edited string 0 and it displayed.

Fiachra
Posted on 04-15-13 11:04 AM, in Editor development Link | #20453
The difference I can see is that r42 pads the end of each entry with zeroes because it overestiamtes the new string length, meaning offsets are shifted forward as well but I don't see how that would crash it.

I noticed the end of the file has nine FF bytes that r42 removes, r44+ doesn't and after saving r44's version with r42 they are removed. Can you try manually removing them and testing if your level crashes?

Fiachra
Posted on 04-15-13 03:06 PM, in Editor development Link | #20463
Mega-Mario's Documentation:

BMG files hold the message (text) data. They are originally LZ77 compressed, with the 'LZ77' string at the beginning, but can be reinserted without compression, pretty much like any file in SM64DS's file system. Well, you quickly get why they are compressed: they're above 80k raw, and compression halves their size

Once decompressed, the file begins with the following 32 byte long header:
0x00 [4b]: GSEM (0x4D455347)
0x04 [4b]: 1mgb (0x626D6731)
0x08 [4b]: size of the whole file
0x0C [4b]: number of sections? always 2
0x10 [4b]: ???
0x14 [12b]: zero

Followed by the INF1 section, which tells where each string is in the file. The section begins with a 16 byte header:
0x00 [4b]: 1FNI (0x494E4631)
0x04 [4b]: size of the whole section
0x08 [2b]: number of string entries
0x0A [2b]: ???
0x0C [4b]: zero
Followed by as many entries as said in the header. Each entry is 8 bytes long and laid out as such:
0x00 [4b]: offset to string data, relative from the end of the DAT1 section header (see below)
0x04 [2b]: ???
0x06 [2b]: ???

Now comes the meat: the DAT1 section. It's started by a 8 byte long header:
0x00 [4b]: 1TAD (0x44414531)
0x04 [4b]: size of the whole section
And the string data. At this point, you're just past the DAT1 section header, and the string offsets in the INF1 sections are relative from here.

String data is not ASCII. Each byte represents the corresponding character in the alphabets posted above. For example, 0x00 is a '0', 0x0C is a 'C', 0x20 is a 'W', and 0x33 is a 'a'.
There are also some special bytes, which are not characters. Here are the main ones:
0xFF: end of string data
0xFD: linebreak
0xFE: special code begin

Known special codes (0xFE character included, listed as hex):
FE 05 03 00 00 - D-pad glyph
FE 05 03 00 01 - (A) glyph
FE 05 03 00 02 - (B) glyph
FE 05 03 00 03 - (X) glyph
FE 05 03 00 04 - (Y) glyph
FE 05 03 00 05 - (L] glyph
FE 05 03 00 06 - [R) glyph
FE 07 01 00 00 00 XX - number of stars till you get XX
FE 07 01 00 00 02 XX - number of glowing rabbits till you have caught XX

0x08 is the entire file size. I simply read it and add/subtract the difference in length of the new string, same with DAT1 + 0x04.
I may add the option to import/export strings from TXT/XML to help with situations like this.

Fiachra
Posted on 04-16-13 07:49 AM, in Editor development Link | #20616
Hooray!

I know, I'm actually working on that at the minute.

Fiachra
Posted on 04-16-13 08:16 AM, in Editor development Link | #20618
OK, will merge 3 and 4 again. (In the meantime setting param. 4 to F4 should work).

Thanks.

Fiachra
Posted on 04-16-13 08:48 AM, in Editor development Link | #20620
Posted by Skelux
Do you know where I can find Yoshi's model? I had an idea for making Bowser playable with working animations.

Yoshi's and other players' models are in ARCHIVE/arc0.narc/data/Player.

Fiachra
Posted on 04-16-13 10:44 AM, in Editor development (rev. 3 of 04-16-13 12:38 PM) Link | #20624
OK, thanks, I'll add that to the list.

Would this AR code be helpful (EUR)?

Press L=Up to run at light speed:
94000130 FDBF0000
6209B450 00000000
B209B450 00000000
00000098 1000FFFF
D2000000 00000000

I'll start a new thread where patches can be posted.

Rev. 47 (16/04/2013)
- Improved/fixed and much easier handling of special characters within text editor
- Import and export text strings to XML

(post in restricted forum)

Fiachra
Posted on 04-17-13 08:07 AM, in Music Importing? Link | #20706
I've never done it myself but you can try these:

http://gbatemp.net/threads/can-someone-help-me-swap-music.338615/#post-4471702

http://gbatemp.net/threads/the-various-audio-formats-of-the-ds.305167/

http://jul.rustedlogic.net/thread.php?id=7518

Fiachra
Posted on 04-17-13 11:10 AM, in Editor development Link | #20711
Posted by Skelux
The most recent revision crashes when you open Lethal Lava Land, unless it's just me.

It works fine for me. Have you edited the level at all?

Fiachra
Posted on 04-17-13 02:12 PM, in Editor development Link | #20715
Should be fine now. I had made changes to LevelObject.cs and then reverted back but forgot to commit the changes.

Fiachra
Posted on 04-20-13 09:55 PM, in Editor development Link | #20974
OK, thanks, I'll add that for the next revision.

Fiachra
Posted on 04-21-13 10:45 AM, in Editor development (rev. 3 of 04-25-13 05:08 PM) Link | #21055
I'll look into that.

In the meantime you can still edit them by importing over another level and then replacing the VS level files using another program that edits NARC files and replacing the overlay.

Edit:
Have added assigning collision type by material name when importing a model.

Unfortunately haven't had time yet to try to fix NARC problem.

Fiachra
Posted on 04-23-13 05:52 PM, in Wario Land DS (rev. 3 of 04-23-13 05:54 PM) Link | #21259
Welcome to Kuribo64 :)

Can I replace the Star model with some other treasure like a Gameboy or NES?

Yes you can - in the level editor, select an object and click on the button "Replace Model".

What errors are you getting?

Each model is different, but generally 4500 - 4800 is the number of faces you can use. In what way are you trying to optimise it? Your model doesn't look like it has a very high poly count, so it's probably to do with your textures. What sort of sizes are they?
Pages: 1 2 3 4 5 6 7 8 9 ... 50 51 52 53 54

Main - Posts by Fiachra

Page rendered in 0.041 seconds. (2048KB of memory used)
MySQL - queries: 21, rows: 137/137, time: 0.016 seconds.
[powered by Acmlm] Acmlmboard 2.064 (2018-07-20)
© 2005-2008 Acmlm, Xkeeper, blackhole89 et al.