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 - Lenophis

Pages: [1] 2 3 4 5 6 ... 16
ROM Hacking Discussion / Re: How to free some ROM in FF1
« on: December 10, 2018, 02:30:33 pm »
Having scattered free space like that, though, is far less helpful than it would seem to be. A decompression routine is likely to be a sizable routine itself, so you need a lot of continuous free space. It is possible with FF1, but you need a optimize a lot of code to create that space. Patches of bytes only go so far.

ROM Hacking Discussion / Re: DTE Table Expansion in FF1 NES
« on: November 16, 2018, 01:40:07 am »
Nah, you didn't. I just like to poke fun at stuff I do.  :crazy:

ROM Hacking Discussion / Re: DTE Table Expansion in FF1 NES
« on: November 14, 2018, 11:17:32 am »
And Lenophis' hack is changing the battle text routine, but is unaware of the changes to the DTE table that Grond made.

So Lenophis' hack needs some tweaks.
How dare my hack not be self-aware! Clearly I need to address this. ;D

Seriously, maybe I should update it...

You're probably seeing it now because you're using more-accurate emulators. The best way to determine if what you are seeing now is a result of it, open it up in high-accuracy emulators. (Bizhawk I guess, Nintendulator, puNES, hardware if you can). If it's showing up there, then you know you have a problem.

It's also possible that the upgraded version of NES Palette caused an incompatibility issue. You may need to start over. Try undoing some changes, or restoring a backup, to see when the problem originated.

What's even weirder still is that in SMB Utility's built-in emulator these dont appear.
What emulator is it? More than likely it's out of date. Don't trust it. Use maintained emulators.

You will find a number of visual oddities during your playthru. This translation was developed before high-accuracy became a thing. You'll see them in the Witch's Tower, Eva's Grand Church, and a few others.

Alright, updated the Dragon's Den to beta 1a, which is basically a hotfix for rolling Tzen. No other changes were made.

Up first, Super Communist Mario 3!

Here's the readme to skip:
Code: [Select]
Title: Super Communist All Stars
Author(s): Lenophis
Version: Beta 1
Date: September 19, 2018 4:23 pm
Applies to: Super Mario All Stars (U), Super Mario 3 specifically
Tested on: Snes9x v1.53, bsnes accuracy core, SNES hardware via SD2SNES

Contents: Super Communist All Stars.bps
          Super Communist All Stars.ips
          Super Communist All Stars - readme.txt


A silly "what if" hack I did because Commie Mario 3 was awesome.

About this hack
This hack was inspired from work done by splixel and KP9000, the authors of
their individual Communist Mario hacks. The premise is the same for this hack:


Collecting coins is seen as greedy Capitalism, and is therefore the enemy of
the Communist state. Avoid them at all costs!

How to patch
The archive comes with two patches, a BPS and IPS. You can use Floating IPS to
patch the BPS, or Lunar IPS for the IPS.

Patch this to Super Mario All Stars, with no copier header present.

Load up in your favorite emulator or flash cart, and load up SMB3. Currently
this hack only changes SMB3. SMB1 and Lost Levels may be on the horizon. We'll

Differences between Communist Mario 3 and this hack
Coins will now remove *all* powerups upon contact, making them far deadlier
than the NES hacks' counterparts.

Damage taken from coin contact also gives a *smaller* invincibility window!

Taking damage from any other source (ie enemies) will give a *longer*
invincibility window, since Mario 3 generally had too short of a window in the
first place.

Invincibility from Star power (Diplomatic Immunity Star) is slightly longer now.

The N-Spade game gives far more rewards now. Any powerup Mario or Luigi can use,
as well as utility items can all show up.

Lots of Hammer Bros! Each world has a minimum of 1 more Hammer Bro encounter!
Some will have more. You have been warned.

Beware the Boom Boom!

The rewards from Princess Alexandria (formally Peach) have been shuffled around.

Goal cards remain, and they may give you a random item for every three that
you collect! You will get an audio cue to hint at which item you get.

The P-Switch timer has a longer length, due to SMB3 All Stars having too short
a timer for it.

Known issues!
Mario and Luigi do not do the shrinking animation when in a fully-powered state,
because the sprite becomes glitched when it does.

The P-Wing's palette in the N-Spade game is technically wrong, but it looks
good enough that I don't want to fix it without further-breaking other palettes.

Speaking of palettes, the mini-game houses palettes are off now because the
Hammer Suit insists on using 8 colors, and *something* had to #getreqt.

Spade mini-game still increases the death counter (formally lives counter). They
will be repurposed.

The font tweaking is incomplete. I may just scrap it and use a font from
Pandora's Box.

The palettes for Hammer Bro rewards are off in some cases.

The palettes for Princess Alexandria's rewards are off in some cases.

What still needs to be done
More text needs to be changed.

Graphics need to be changed.

Probably something else I haven't thought of.


splixel - Original Communist Mario creator for Super Mario Bros (NES).

KP9000 - Original Communist Mario 3 creator for Super Mario Bros 3 (NES).

snarf - assembly assistance with KP9000 and in general.

rainponcho - For help figuring out a really stupid bug with doors in castles.
You rock!

DahrkDaiz - For being the encyclopedia of SMB3.

MetroidMst - For beta testing.

It's a big twist from KP9000's Commie Mario 3 hack, for the NES. This one adds more RNG, since the state absolutely will not make it easy for the working man.

For now, Warp Whistles, 1-up Mushrooms, and Spade Extra Lives games are still in. They will be removed in future versions.

Up next, The Dragon's Den!

The Dragon's Den is a self-contained randomizer. All you need to do is patch it up and go. You do not need to have played Final Fantasy VI before to play and/or enjoy this hack.

Code: [Select]
Title: Dragon's Den
Authors: Lenophis
Version: Beta 1a
Date: September 30, 2018 11:14 pm
Applies to: FF6 (US version) v1.0
Tested on: bsnes accuracy core, SNES via SD2SNES

Contents: Dragon's Den Beta 1a.bps
          Dragon's Den.txt


A silly hack of Final Fantasy VI. Emperor Gestahl wishes to test your wits.
Are you up to the challenge?

Although Gestahl will summarize what the hack is about, chances are you aren't
going to read that. Don't worry, I have plans for that.

Coming soon!!!!

Custom songs (provided they work on hardware). I have plans for two at the
moment, but more may follow!

Bug fixes! Mainly battle bugs, but other bugs that may hinder the den's progress
will also be fixed.

More maps to show up! Currently 48 unique maps are in the pool, and now that
things have been streamlined a bit better, more maps can be added.

Battles are currently not really touched at all, except for formations. No stats
have been adjusted yet.

Renaming of specific items, spells, monsters, and equipment.

Updated item descriptions.

Reworking treasure logic.


How to patch:

Go get FLIPS if you don't have it...

...and patch it to an FF6 US rom v1.0 with no header, and you're good to go.

The headerless v1.0 rom has the following checksums:
MD5: e986575b98300f721ce27c180264d890
SHA1: 4f37e4274ac3b2ea1bedb08aa149d8fc5bb676e7
CRC32: a27f1c7a

Things changed since previous alpha (and beta):

Fixed Tzen's map. No exits would be available if you rolled the map. Effectively
means you won't be softlocked/stuck if you reach Tzen.

Tweaked the song logic so songs can change every 7 to 11 rooms now. There is
still a base 19.92% chance to skip once it reaches the magic number.

Lowered the power of every Blitz.

Fixed the Burning House. Two of the exits were broken.


Configurable controls are now in. They do not yet work with Blitz inputs in

Step count will now read 0 when starting the game.

In-game time will now be 0:00:00 when starting the game.

When a Desperation Attack is executed, the game will now choose one from the 12
at random.

Added assassin17's Sketch Fix and Jump Megafix.

Added the evade fix. Physical attacks will no longer look at magic evade.

Vanish/Spell (notably Death) has been fixed. Vanish will be removed from a
target whether an instant-death spell connects or not.

Rippler fix has been applied.

Timers associated with status and their automatic removal have been fixed.
Notably, if a status is manually removed their timers were not reset.

Targets under the influence of the Air Anchor will no longer die with a poison,
regeneration, or seizure tick, who are brought back to life with
Life 3 (Auto-Life), or who have a status automatically removed.

The Throw command will be disabled if the user is Blinded.

Attached an MP cost to the Shock command.

Pray and Shock will be disabled if the user is an Imp.

All commands have had their wait timers adjusted. Some are faster, but many
are slower.

Another World of Beasts and Silent Light have been added from Pandora's Box.

Cancel-dashing has been added. Encounter rate is slightly higher if you use

Encounter rate goes up the more rooms you visit.

Monster stats go up the more rooms you visit.

Gestahl will report on how many steps you've taken with the cancel-dash, how
many times you've fled, how many battles you've fought, how many rooms you've
visited, how many espers the Den has given, how many spells the Den has given,
and how many treasure boxes you've opened.

Stamina now adds to HP and MP growth on leveling.

Added in more status outline auras. Purple is Seizure, Orange is Regen, Life 3
is yet to have a color assigned.

The ATB gauge will now change color based on the status of the player. Red for
Haste, Pink for Stop, and Gray for Slow.

HP displayed will change colors based on if the player is at near death or dead.

Applied ArmorVil's SwdTech Speedup patch.

Rages are added to the pool after battle.

Dances and Lores will now be added if the user has the command. Their normal
rules to learn still apply.

Genji Glove damage reduction will no longer apply to users without two weapons

FC 05 (basic counter attack check) will no longer become an Omni-counterattack.

Economizer now reduces MP cost by 75%.

Spell names have been increased to 9 letters (technically 8 plus the icon).

Lores and the "monster spells" have been increased to 16 letters.

Player can decide if they want to listen to battle music or not. Option is in
the Config menu.

Rearranged the item properties screen so all 8 elements can be displayed per
category, and also allows for all 8 elements to appear.

Added more item type descriptions to the item menu. Item names will not be

Up to five Lores can be added to the pool at startup.

If a player has the Tools command, you are guaranteed to start with either the
Autocrossbow, Bio Blaster, or Debilitator.

If a player has the Throw command, some throwing items will be added to the
item pool. Quantities can vary.

If the Den attempts to give an esper, whether one is given or not, all players
will receive a stat boost.

You have less than a 1% chance to start the game with an esper.

At the start of the game, you will be given a variable assortment of items.
Quantities can vary.

Maps currently in the pool:

Narshe, Narshe mines, Figaro Castle, Nikeah, Mobliz (WoB),
Mobliz (WoR), Kefka's Tower (various rooms), Vector's Imperial Castle,
Doma Castle (indoors), Mt. Koltz, Cave of South Figaro, Zozo, Phantom Forest,
Three Stooges section of Cyan's Dream, Daryl's Tomb, Albrook (indoors),
Cultist's Tower, Thamasa, Burning House in Thamasa, Returner's Hideout,
Cave of the Veldt, Cave of the Sasquatch, Dragon's Neck Colosseum, South Figaro,
Imperial Camp near Doma, Magitek Research Facility, Espers Gathering Place,
Mt. Zozo, Tzen (WoR)


Madsiur - Some editor and assembly assistance.

Gi Nattak - Some event scripting and assembly assistance. Also beta testing.

Aerdan - Beta testing.

Imzogelmo - For all of the tools, knowledge, and pretty much everything else
you were awesome for during Pandora's hey-day. Viva la hax!

Dragonsbrethren - For all of the tools, knowledge, and pretty much everything
else you were awesome for during Pandora's hey-day. Viva la hax!

assassin - For a bunch of patches.

Master ZED - Original person to come up with the basic idea that this hack would
employ. Also for bug fixes.

JCE3000GT - Music?!

Torgue - I have one question, and one question only. EXPLOSIONS?!

Dessyreqt - Beta testing.

ArmorVil - SwdTech Speedup HYPE!

Nitrodon - Beta testing.

LeviathanMist - Beta testing.

Many more to be mentioned soon...

Both hacks will work on hardware and your favorite emulator. Both are still in beta stages, though Super Commie Mario 3 is closer to completion. Any feedback and questions are welcome. Enjoy!

ROM Hacking Discussion / Re: FF1 - Printing text from a LUT
« on: March 20, 2018, 01:33:49 am »
Dynamic lengths is a good idea, but I'm not sure how to erase written text.
The same way you draw text here. Just load a pointer that is all spaces so it erases the text for you. Give it the length of the highest character count for a song title. Eg, if the song "For What Must a Song Play" is your longest title, it is 25 letters. Throw in a string that is 25 blank spaces, or use assembly to draw the blank space 25 times followed by a null-terminator before loading the next song title.

ROM Hacking Discussion / Re: FF1 - Printing text from a LUT
« on: March 19, 2018, 01:30:00 am »
Why not do dynamic lengths? Use the Song ID as a LUT, then you can load the pointer to the string which can be null-terminated. Something like this:
Code: [Select]
LDA $00  ; load song ID
TAX  ; transfer song ID to X. alternatively, LDX $00 for song ID?
LDA songpointerLUT,X  ; somewhere in the ROM that has the data for the pointers to the song names
STA $01
LDA songpointerLUT+1,X  ; high byte for pointer
STA $02  ; this is now your text pointer
Then use your DrawSongName routine to output the text.

As for why your code isn't working? No clue. I don't know if MMC5 is faulty here, or if there's a problem with the code's logic.

Help Wanted Ads / Re: [Technical] [SNES] Mega Man X re-translation
« on: February 18, 2018, 11:01:52 am »
I have re-translated Rockman X and the script was completed, but once inserted scroll fails and the portrait is out of place (despite I have expanded the letterbox just changing the CMP value). All is done but these little yet necessary details.
I could provide the partial patch and script if required. Thanks in advance.
Despite your actual question never being asked, I can only surmise what you are asking is that you don't know why X's portrait is where it is. Since you aren't fully stating what you did, questions now have to be asked:
What did you use to insert the new dialogue?
What assembly changes have you done?
v1.0 or v1.1 of the game?
Are there any other formatting characters with the dialogue?
Are you sure the pointers are right?

Newcomer's Board / Re: How do I convert RAR files into Zip files?
« on: January 22, 2018, 12:44:11 pm »
Considering RAR is proprietary, there will be no conversion for it. You'll have to extract the contents first, then apply the patch, or use another archive container.

Personal Projects / Re: Dragon's Den
« on: January 02, 2018, 11:47:57 am »
I like the chest logic so far.. One thing that would be amazing, maybe not in a first release but later, is randomizing the chest numbers and locations. Like for a map, between 0 and 2 chests.
I've thought about this, but I was worried about the game giving false positives on chests. Think of some car rooms in the Phantom Train. Since I have a decent amount of RAM free, this may be possible. The treasure chest logic is going to be changing to try and make it less gimpy, but we'll see if it actually works that way or not.

ROM Hacking Discussion / Re: Looking Back at 2017
« on: January 01, 2018, 10:53:25 pm »
Try clicking it. :) BTW: You'd need to make a separate chart for the platforms with 0-5 releases a year that has a smaller range to make those particularly readable.
...which proves the point that it is not readable. It is illegible.

Personal Projects / Dragon's Den
« on: December 29, 2017, 11:58:21 pm »
The Gestahlian Empire has chosen you!

Quote from: Readme
A silly hack of Final Fantasy VI. Emperor Gestahl wishes to test your wits. Are you up to the challenge?

This hack is effectively a randomizer, and can be likened to the Ancient Cave hack of FF5, or the Ancient Cave itself from Lufia II: Rise of the Sinistrals. This is broken down a bit more though. The hack will be entirely self-contained, no outside program is ever needed to generate a seed or anything else like that. Just load it up in your favorite emulator and go.

Object of the hack: SURVIVE. Last as long as you can. You will occasionally be rewarded by the Empire for progressing through the Den. However, monsters will continue to get stronger the deeper you go. As of now, no "end" is planned, but with some of the bosses I'm including an ending of some sorts may happen.

Gestahl showing you the avatars you can choose from.

You can choose your palette!

Obviously, you can name your avatars.

Once four members have been chosen...

Starting stats are randomized.

Starting abilities are randomized.

Starting equipment is randomized!

Minor changes to the config menu. You have the option of disabling battle music if you just want to chill out to the BGM.

Configurable controllers cause why not.

Here's a video showing off preliminary treasure chest logic. Very preliminary video showing off encounter logic, sorta.

And so much more that screenshots really can't do justice.

This hack will run on the SNES console. It has been tested on console and the bsnes accuracy core. Public testing will commence in the near-future. Suggestions are welcome, but I make no promises that they won't fall on deaf ears. Being a dick, sarcastic, or just crass will earn silence in return.

Obligatory disclaimer: This is in no way that silly and pathetic dungeon that was in Final Fantasy VI Advance. It will not be included. It should die and feel bad.

Stay tuned for updates.

Programming / Re: Mega Man X3 FastRom Issues
« on: December 29, 2017, 11:45:23 am »
If you are still looking for an SD2SNES test, I will volunteer. I'll even stream it and upload to Youtube for VOD purposes for ya.

So the long and short of it, the code you linked is the event script handler. When any map loads, it has an event attached to it. Most of the time it will call CA/5EB3 which just returns (ie, it does nothing). South Figaro's Pub has a specific event:
Code: [Select]
CA/EC39: C0    If ($1E80($1CC) [$1EB9, bit 4] is set), branch to $CAEC4F
CA/EC3F: C0    If ($1E80($305) [$1EE0, bit 5] is clear), branch to $CAEC4D
CA/EC45: F0    Play song 7 (Shadow), (high bit clear), full volume
CA/EC47: C0    If ($1E80($127) [$1EA4, bit 7] is clear), branch to $CAEC4F
CA/EC4D: F0    Play song 42 (Kids Run Through the City Corner), (high bit clear), full volume
CA/EC4F: C0    If ($1E80($1B6) [$1EB6, bit 6] is set), branch to $CA5EB3 (simply returns)
CA/EC55: C0    If ($1E80($303) [$1EE0, bit 3] is clear), branch to $CA5EB3 (simply returns)
CA/EC5B: C0    If ($1E80($0A4) [$1E94, bit 4] is set), branch to $CA5EB3 (simply returns)
CA/EC61: 18    Begin action queue for character $18 (NPC $18), 61 bytes long
CA/EC63: E0        Pause for 4 * 255 (1020) frames
CA/EC65: D5        Set vehicle/entity's position to (26, 53)
CA/EC68: 88        Move vehicle/entity up 3 tiles
CA/EC69: 81        Move vehicle/entity right 1 tile
CA/EC6A: 88        Move vehicle/entity up 3 tiles
CA/EC6B: 83        Move vehicle/entity left 1 tile
CA/EC6C: A3        Move vehicle/entity left/up 1x1 tiles
CA/EC6D: A3        Move vehicle/entity left/up 1x1 tiles
CA/EC6E: A3        Move vehicle/entity left/up 1x1 tiles
CA/EC6F: 83        Move vehicle/entity left 1 tile
CA/EC70: 88        Move vehicle/entity up 3 tiles
CA/EC71: 8D        Move vehicle/entity right 4 tiles
CA/EC72: C8        Set object layering priority to 2 (low nibble 2)
CA/EC74: CC        Turn vehicle/entity up
CA/EC75: E0        Pause for 4 * 8 (32) frames
CA/EC77: 80        Move vehicle/entity up 1 tile
CA/EC78: CF        Turn vehicle/entity left
CA/EC79: E0        Pause for 4 * 48 (192) frames
CA/EC7B: CE        Turn vehicle/entity down
CA/EC7C: E0        Pause for 4 * 8 (32) frames
CA/EC7E: FA        Pseudo-randomly choose to branch 6 bytes backwards ($CAEC78) with 50 % chance
CA/EC80: CC        Turn vehicle/entity up
CA/EC81: E0        Pause for 4 * 10 (40) frames
CA/EC83: FA        Pseudo-randomly choose to branch 11 bytes backwards ($CAEC78) with 50 % chance
CA/EC85: E0        Pause for 4 * 192 (768) frames
CA/EC87: C3        Set vehicle/entity's event speed to fast
CA/EC88: 82        Move vehicle/entity down 1 tile
CA/EC89: C8        Set object layering priority to 0 (low nibble 0)
CA/EC8B: 8F        Move vehicle/entity left 4 tiles
CA/EC8C: 8A        Move vehicle/entity down 3 tiles
CA/EC8D: 81        Move vehicle/entity right 1 tile
CA/EC8E: A1        Move vehicle/entity right/down 1x1 tiles
CA/EC8F: A1        Move vehicle/entity right/down 1x1 tiles
CA/EC90: A1        Move vehicle/entity right/down 1x1 tiles
CA/EC91: 81        Move vehicle/entity right 1 tile
CA/EC92: 8A        Move vehicle/entity down 3 tiles
CA/EC93: 83        Move vehicle/entity left 1 tile
CA/EC94: 8A        Move vehicle/entity down 3 tiles
CA/EC95: D5        Set vehicle/entity's position to (81, 17)
CA/EC98: E0        Pause for 4 * 255 (1020) frames
CA/EC9A: FA        Pseudo-randomly choose to branch 2 bytes backwards ($CAEC98) with 50 % chance
CA/EC9C: C2        Set vehicle/entity's event speed to normal
CA/EC9D: FC        Branch 58 bytes backwards ($CAEC63)
CA/EC9F: FF        End queue
CA/ECA0: FE    Return

The very first check is whether or not the "song override" bit is set. If it is, whatever song is playing will continue to play. The next check is a presence bit specific to Shadow for this map. If it's set, Shadow's theme will play. Otherwise it will be Kids Run Through the City Corner. From there it's just other logic not relevant to what you are asking about.

What is the least hassle, least wire, way to record video footage for this set up?
It really depends on the consoles themselves. A lot of newer ones aren't designed to look that good using composite signals. You would want to upgrade to component or HDMI if they support it, but then you need a capture card and TV that supports them. Some CRTs can do component, and I think some later models support HDMI before they were discontinued outright.

The things you definitely need are a powered splitter, such as this one, which will let you take the output from your switch and feed it to your TV and PC at the same time with no signal loss.

You already have the switch, so now you just need a capture card. This will depend on your PC itself. Do you have a crappy laptop that only has USB ports? If so, there are composite capturing devices, such as the Dazzle that can do what you want. However I would stay away from such, despite being limited on options. If you have a desktop with PCI-e slots, then I would recommend this, which I use myself for composite capture. It can capture composite, component, S-Video, and HDMI for resolutions up to 1080i, and as low as 360p.

If you're curious on quality of this card, you can check out this, this, or this. Granted they are Youtube videos, but it should give you enough of an idea of how good the quality can be. As a sidenote, I do use S-video for my composite captures, since it has higher quality than the AV yellow composite cable.

Gaming Discussion / Re: The lead male character in Final Fantasy.
« on: August 27, 2017, 08:01:02 am »
FF1 didn't have any lead, unless you want to count the "Warrior of Light" from Dissidia. If so, he has no name. FF6 had no male lead. Terra and/or Celes pretty much top that list, and they're both ladies. There's also a severe lack of Benjamin from Mystic Quest, Ramza (as previously noted), and Vaan from FF12 on your list.

Please stop using Photobucket for images due to their recent stances on 3rd-party-hotlinking. Find an alternative such as imgur.
Ummm, imgur disabled third party linking for the most part as well. You have to request to be whitelisted, which they don't have to grant.

Gaming Discussion / Re: ALL Controller announced
« on: August 07, 2017, 11:30:21 am »
The name is even misleading, as it can't connect to any retro console. RIP PS2, PS, SNES, N64, XBox, Genesis, Dreamcast, Master System, NES, and Atari(s).

Pages: [1] 2 3 4 5 6 ... 16