News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Cthulhu88

Pages: [1] 2 3 4
1
Personal Projects / Re: Lightweight and Fast Checksum Calculator for SNES
« on: October 30, 2019, 10:40:04 pm »
Updated and uploaded to RHDN. Changelog inside the compressed 7z.

2
Personal Projects / Re: Chrono Trigger MSU-1 (with FMV's)
« on: October 07, 2019, 12:03:24 pm »
Quick question: do any of these sources let you download in FLAC?  I know Google Play downloads as mp3 from my last backup, and I think iTunes still does m4a?  What about Amazon these days?

If the source is lossless (which isn't the case for MP3), you can just convert them to FLAC.
You can also convert MP3 to FLAC, but it will be converting the lossy data.

3
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: October 02, 2019, 05:58:39 pm »
I forgot to mention it might be wise to add the Lavos' Theme info into the readme. Apologizes.

4
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: October 02, 2019, 04:24:25 pm »
Just two things to point out:
  • In the MSU-1 Readme you mention to rename the ROM to chrono_msu when it should be chrono_msu1.
  • This is just formalities, but could you please include the license for the MSU-1 code or the code itself (which has the license)? The license credits everyone who worked on implementing MSU-1 into Chrono Trigger aswell as add a disclaimer that none of them are responsible for any damages that it could cause (very unlikely to happen).

Also, my romhack has some specific macros for compatibility with yours. Did the offsets for Charm, Twin Charm and Charm Top descriptions and cat food reward amounts change?

Descriptions:
  • $F68417
  • $F686ED
  • $F6F5B4
Cat food:
  • $DBDB63
  • $DBDBC7
  • $DBD8FC

5
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: October 01, 2019, 09:00:34 pm »
Hopefully the MSU-1 code works without any further updates. Just make sure you never use these spaces: $CD5D05 up to $CD5DA0 (this gives me 128 bytes, in case I need to increase the tracklist), $CDF9B9 up to $CDFFFF (all of it, for further code expansion, if necessary).
These spaces have all their bytes initialized to $FF in vanilla, so it's easy to check if TF moved stuff in there.

Once I am confident MSU-1 works without any further issue, I might started a new project, Deus Chrono: Trigger Ex, Chrono Trigger MSU-1 Music with the Deus Ex soundtrack.
Just imagine: UNATCO Theme playing at Guardia Castle, Paris Cathedral as the Cathedral Theme, Ocean Lab Theme at the Ocean Palace, etc.  ;D

6
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: October 01, 2019, 01:18:43 pm »
I've just figured out why I can't access mega.nz. The corrupt and incompetent judicial system of my country just banned mega.nz. The lawsuit that led to this isn't even public (how transparent), but apparently involves copyright bullshit.
Until this gets overruled, I'll have to use a VPN to access mega.nz.

7
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 30, 2019, 04:16:33 pm »
Updated the MSU-1 patch with a sanity check for when MSU-1 volume is 0, but memory volume is not.

I've already said it before, but I do hope this is the last of it.

8
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 29, 2019, 01:28:13 pm »
I ask because I am writing an extra sanity check for part of the fade in/out code. Thing is, I am unsure whether this sanity check will break anything specific later on or not, so I still have some testings to do.

9
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 28, 2019, 04:44:19 pm »
How far are you from releasing the new version? And will it include MSU-1?

10
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 26, 2019, 10:20:25 pm »
0x41F400 is ExHiROM space in both virtual and physical spaces.

11
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 26, 2019, 04:17:59 pm »
It's more tedium than anything because it's a big list and IRL.  I'm in the middle tracking down a chunk of junk data the size of B64 for the new Prehistory/Antiquity edit.  It's a small detail, but going down the list in the database I just need a section that's both big enough and not in use. :P

Use the ExHiROM section. Unlike me, you don't need to have backward compatibility.
Your hack only uses about 100 KB of the ExHiROM section. Plenty of space in there.

12
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 26, 2019, 03:31:20 am »
Ah, I see.  If you need to, I can always put anything up in my own Mega!

Also I'm sorry about the holdup, it appears that finding the junk space is the part that takes a lot of time right now (longer than I had thought actually). The graphics are just slightly bigger than before, as expected. :P

What do you need space for?

13
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 23, 2019, 11:20:17 pm »
Mega isn't always the kindest thing.  At one point I just stopped putting out URLs to single files, because my updating them stopped making the link able to be used. o.O

It's an issue with my ISP's gateway though. As soon as the packet leaves my cable modem and hits the gateway, the packet is dropped.
Not sure if done intentionally or a technical issue, but in the past I had similar issues with them dropping Pastebin.
Nothing I can do, other than using a VPN, as brazilian ISPs are awful while the government will never enforce anything on them.

14
Personal Projects / Re: Chrono trigger plus
« on: September 23, 2019, 12:01:32 pm »
You know.. One thing that was always annoying was feeding the cats. If you included an auto feeder as a prize or something you can optionally buy, or just remove feeding altogether, people could win all the cats and not have to worry about losing them.

I never liked that myself. Getting all 11 cats and feeding them is more grindy than most of the game.

This is the catfood.inc from my enemy drops overhaul (as an extra):
Code: [Select]
if {defined CATFOOD} {

macro catfood(variable check, variable value, variable ounces) {
    if ounces < 0 || ounces > 200 {
        error "Invalid ounces for catfood (0-200)."
    }

    variable limit(200 - ounces)

    seek(check)
        db limit  // Limit check
    seek(value)
        db ounces // Value (Ounces)
}

if {defined EX} {
catfood($DBDB63, $DBDB66, 25)  // Guessing Game
catfood($DBDBC7, $DBDBCA, 50)  // Copycat Game
catfood($DBD8FC, $DBD907, 100) // Beanbag Throw Game
} else {
catfood($DB72E8, $DB72EB, 25)  // Guessing Game
catfood($DB734C, $DB734F, 50)  // Copycat Game
catfood($DB7081, $DB708C, 100) // Beanbag Throw Game
}

}

I don't change any game mechanics, I merely change how much cat food you are rewarded from the minigames.

15
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 23, 2019, 11:52:09 am »
Updated the post with a new version (1.1.1):
  • Fixed a data corruption issue linked to the Y register in 8-bits mode.
  • Fixed track resume not always working.
  • Added an extra byte to the header storing whether the cross-assemble was done in HiROM or ExHIROM mode.

C header struct:
Code: [Select]
struct Header
{
    char    id[11];      // MSU-1 MUSIC
    uint8_t version[3];  // Patch, Minor, Major
    int8_t  exhirom : 1; // 0 or 1
};

For some reason my gateway isn't routing to Mega's addresses. I've uploaded it somewhere else for now.

16
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 20, 2019, 03:37:34 pm »
In that case it might be a Monster status issue.  And I don't really want to change that, because I'd rather leave that data unchanged so that the gameplay would keep the same (it might also conflict with Chrono Trigger Platinum).

You can check if Platinum does change it (I doubt it, since the glitched value is 1). Offset is $0C4CD7. Vanilla value is $01, correct value should be $6E (110).

September 22, 2019, 03:43:43 am - (Auto Merged - Double Posts are not allowed before 7 days.)
Be careful with my MSU-1 code. I've made a mistake with the Y register by forgetting that the high bits of the X and Y registers reset to 0 when the x flag is set.
This will lead to data corruption in some places and a bug where not only it froze my game, but also corrupted slot #1 save data.

I'll be fixing this asap.

17
Personal Projects / Re: Chrono Trigger Bugfix and Uncensoring Patch
« on: September 19, 2019, 07:42:35 pm »
I've found a bug in vanilla, not sure if you want to fix it.

Incognitos/Peeping Dooms get stuck at 1 HP after peeping and you can easily kill them even after they hide behind their shields.
I am not sure whether this bug affects the other types or not.

18
From what I've seen of the code, it would require at least some changes. I'm not 100% on how much though.

That's what I thought. Unfortunately, I really don't want to allocate physical space for this hack. I'll see if I can at least make it do just 1 damage by messing with the formula and defense.

Thanks for all your help.

September 20, 2019, 10:56:11 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
0x19 is the stats index for Tech Immunities. You've it as unknown.

19
Do you know if it's possible to make 1/2 HP never deal any damage when the target is immune to it without extra code? 40% instant death chance from Blackhole will not deal any damage when it fails or when the target is immune to it, but 1/2 will still deal some damage.
The best I was able to do was reduce that damage by setting the defense byte and setting power to 1 (0 is considered a miss).

20
I get the benefit of using $64 as a value, but not passing the same value in every time. If it's always the same, why set it outside the function?

I'm curoius about the address change as well. I think I'll poke into that a little.

Generally you push the range into the stack before calling the function, as most of these functions are just generic randint/randfloat functions.

This is an usual generic random range function for C++ that gets used as % chance:
Code: [Select]
int System::Random(int end, int start = 0)
{
    // seed: CryptGenRandom, /dev/urandom, etc
    // algorithm: linear, mersenne twister, etc
}

You can test with my code above, just by changing the store instruction to store to all 6 bytes:
Code: [Select]
    lda.b $10
-
    sta $B2A7,y
    iny
    cpy.b #6
    bcc -

You will be getting 6 items per battle. The routine that actually adds the items seems to iterate over 7EB2A7 until 7EB2AC or until a zero'ed byte is found. It might be used by charm, as the routine that writes those bytes do check for the drop flag ($40).
Or it might've been 'artistic integrity'  ::)

I'll set some read breakpoints in there tomorrow and further study this.

Pages: [1] 2 3 4