Romhacking.net

Romhacking => Personal Projects => Topic started by: Fox Cunning on December 09, 2019, 12:22:43 pm

Title: Ultima: Exodus (NES) --- Now released
Post by: Fox Cunning on December 09, 2019, 12:22:43 pm
Greetings.

I thought I'd share a hack I've been working on in the past week or so.
Ultima: Exodus on NES was definitely the best version of Ultima 3 back in the day, but still has its shortcomings. So I decided to do a QoL hack, but I will likely upgrade the graphics too.


Update 22 Feb. 2020


Version 1.00 has finally been released! http://www.romhacking.net/hacks/4949/ (http://www.romhacking.net/hacks/4949/)



These are my goals, and my progress so far...

QoL:
Gameplay changes:
GFX / UI improvements
The UI can definitely use some love: the "party info" panel is unreadable, especially if your characters have 5-letter names.
Before:After:
(https://i.imgur.com/xMRW21E.png)(https://i.imgur.com/tOY9Led.png)

I was initially thinking of including part of Ludmeister's excellent hack. As sadly I had no reply from him, I've started doing my own rebalancing.

********************** PROGRESS SCREENSHOTS *********************
Note that these are outdated and kept for historic reasons only!

Saving in the wilderness:Status screen:Battle UI (WIP):Weapon Display:
(https://i.imgur.com/cNuxgN4.gif)(https://i.imgur.com/0RAlQN2.gif)(https://i.imgur.com/mjM66x1.gif)(https://i.imgur.com/VE7qyOm.gif)
Dialogue UI:Dungeons:
(https://i.imgur.com/REQiMKT.png)(https://i.imgur.com/5rIHMTL.gif)



I appreciate all comments, suggestions and criticism.
Title: Re: Ultima: Exodus (NES)
Post by: roney33 on December 09, 2019, 04:28:04 pm
i sugest some tiles to add, a throne, a table, and a bridge use the same tile
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 09, 2019, 06:41:37 pm
I agree, the throne room looks like someone stacked up tables behind Lord British.
I was planning to add an ankh tile similar to this: (https://i.imgur.com/OJX5ALO.jpg) which is the throne room in Ultima IV.

10/12 Update
Yesterday I found the tables with enemy encounters, the spellcasting routines, and the routines used to generate pseudo-random numbers.

I think I will fix the "Repel" and "Undead" spells next.
They have two main issues:
- Each can only be used against two types of enemies only, which are mostly encountered at lower levels.
Basically the spells are overpowered at lower levels, then become a waste of space in the magic menu.
- They are supposed to be random, to offset the fact that they cost no MP, but they don't use the RNG routines.
Instead they do an AND with a counter which is incremented once per vblank. The result is well known: this can be exploited to time the button press with the sprite animations and make the spell 100% successful.

So my plan for today is:
- Change the spell so that it can still one-hit kill low level monsters, but it can also do some damage to other types of enemies found at higher levels.
- Make both spells cost at least a bit of MP.
- Make either the success chance or effectiveness based on caster level and stats (INT for Repel, WIS for Undead).

This is going to take some extra space in ROM, but there should be enough at the end of the same bank where the spellcasting routines are.

11/12 Update
I've been looking into the "battle AI" routine, and it seems that the enemy's ability to attack diagonally is either unintended or the result of the developers running out of space in the last bank for a complete implementation.

Some values are written during enemy movement but never read, and the routine that decides if a target is in range only reads the sum of the X and Y distances.
Since bank #0 is already loaded when the evaluation happens, and that has relatively abundant free space, I may just write the extra battle AI there.

Or I may get rid of the code that allows enemies to steal stuff from the player (which is just annoying since stolen items can't be recovered or looted) and use that space instead...



In the meanwhile I found where the game stores NPC data for the current map, including the encoded address of the pattern for their sprites.
So here is Chuckles, restored to his normal clothes (I guess he was turned into a woman by mistake):
(https://i.imgur.com/oFrxhwG.png)
Now I just need to find where is the routine that reads that data from ROM.


12/12 Update
After further examination, the enemy's diagonal attack may have been left there intentionally.
In its absence, some really cheap tactics are possible: moving a character constantly left and right, enemies can never attack, other player characters can safely kill it with ranged attacks/magic.
Anyway, the distances are recalculated several times instead of using previously stored values, so I'll use that to speed up this routine a bit.

I've also found where the NPC data tables are stored for each location. I can permanently change Chuckles and see if there is room for extra features like NPC names/portraits etc.


16/12 Update
The town and world maps are stored in a very simple way, "packed" so that each byte represents two tiles.
4 bits per tile means only 16 tiles are available to use without drastically changing the map system.

In towns, there are two values that are never used, so I can add an Ankh tile as planned, and have space left for one alternative grass tile.
In the "overworld" maps there is some more room, might be worth adding more grass tiles since that's what most of the map is made of.
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 21, 2019, 08:22:02 pm
I've been doing some graphical hacking, starting with character graphics and expanding the tileset for maps.
Changing the status screen required altering a bunch of subroutines, changing some tables in ROM and creating two new routines that took all but two bytes of the free space at the end of bank #13.

I created some tiles based on the sprites used for the tarots in U4, adapted to fit the 11 professions of U3 and the attribute restrictions of BG tiles.
Since they are a bit smaller than the original graphics, that saved me some room in ROM, and I had space on screen to show character names (previously, if you had two or more characters in the same class, they would all look the same and you wouldn't know who was who).

I've also changed the fonts to something more fantasy-looking (clearly inspired by the good old Gold Box games).

Finally I have something to show.


BEFORE:
(https://i.imgur.com/1zmougE.gif)


AFTER:
(https://i.imgur.com/lLd5gc3.gif) (https://i.imgur.com/vgTPM17.gif) (https://i.imgur.com/qU3LCx6.gif)
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on December 22, 2019, 03:42:41 pm
I'm just more of a lurker her normally, but I just wanted to comment and say that I have been following along with this project since you started and the work you are doing is really good to see.  The character art changes certainly create a different feel for the menu screens, and the ability to show names is a great addition.  Will you be modifying the overworld sprites as well?
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 23, 2019, 12:56:31 pm
Thanks mate, it's always good to see that someone is interested in this hack, and in good old Ultima III.

Will you be modifying the overworld sprites as well?

Definitely! I'm working on the sprites/BG tiles too:
(https://i.imgur.com/lVQiNht.png)

If I'm left with enough space in ROM, I'd like to add slight palette variations per town.
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on December 23, 2019, 04:13:46 pm
The Ultima IV inspired approach looks good, and I like the idea of altering the town palettes a bit as well, especially if you do also alter the town layouts a bit too.  You've also really made that UI a lot more user-friendly, too!  It's great seeing a game like Ultima III get some attention, even more so when it is a complete overhaul like this!
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 23, 2019, 07:05:22 pm
Speaking of UI: just finished coding in the weapon display.
No more throwing daggers by mistake because you thought you had a bow equipped.
(https://i.imgur.com/VE7qyOm.gif)

I had to do some bug fixing because my new routines messed up a check that required strict timing. All seems fine now.
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on December 23, 2019, 09:00:39 pm
Nice work, these quality of life changes you are implementing will go a long way towards making the game more user friendly.  The new graphics you've implemented help too.
Title: Re: Ultima: Exodus (NES)
Post by: roney33 on December 25, 2019, 07:20:18 pm
for watter, i sugest these graphics

(https://i.imgur.com/dOCI5S3.png)
(https://i.imgur.com/TsjFv9f.png)
(https://i.imgur.com/jxlg4aN.png)
Title: Re: Ultima: Exodus (NES)
Post by: 8.bit.fan on December 26, 2019, 01:57:26 am
Hi there,
Just wanted to drop in and say great work on this!
Ultima is my favorite RPG series and I'd play the heck out of this on both the Apple II and NES. Nowadays I enjoy playing through it using Jeff Ludwig's New Exodus mode! :)

Keep up the great work! I'll be following this project. :) :thumbsup:

Cheers!! :beer:

8-bit fan
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 26, 2019, 01:00:40 pm
for watter, i sugest these graphics
Those some really nice tilesets!

The game animates water by cycling its four patterns this way:
Code: [Select]
AB BA BA AB
CD CD DC DC

So here it is when I copy-paste from one of the above:
(https://i.imgur.com/rSG2x1S.gif)

And this is using the water ripped from Ultima IV:
(https://i.imgur.com/FnO1RVp.gif)

You can think of it as if it was shifting each row to the left alternatively, so I tried to use that to give a "wavy" effect creating my own water from scratch:
(https://i.imgur.com/0PbmWjN.gif)

I won't pretend to be an artist: I'm a programmer and a hardware engineer so that's basically coder art, but it's the best I can do.



Hi there,
Just wanted to drop in and say great work on this!
Ultima is my favorite RPG series and I'd play the heck out of this on both the Apple II and NES. Nowadays I enjoy playing through it using Jeff Ludwig's New Exodus mode! :)

Keep up the great work! I'll be following this project. :) :thumbsup:

Cheers!! :beer:

8-bit fan

Cheers, mate! Your appreciation means a lot.

I played the computer version back in the day as the NES one was not available in Europe - I have imported a cart only recently, thanks Ebay!
Also played Jeff Ludwig's hack and it makes the game a lot more enjoyable for sure.
I am doing my own rebalancing based on many of his ideas, the base concept is that the game should incentivise the player to level up.



A little update now.

I've removed the "pre-made character" functionality. The pre-made characters sucked and the whole thing took almost a quarter of a ROM bank.
Now I have space for other much more needed functionality.
As a replacement for this, I am pre-generating four characters with decent stats straight into RAM, so players who don't want to hand-make their own still have a pre-made party.
To give some choice, I am storing compressed character data in ROM, then unpacking two random groups of melee and magic users in RAM when a new game is created.

Gameplay-wise, I've fixed the "Repel" and "Undead" spells so they now have a real random chance to succeed, which gets better the higher the required stat (INT for Repel and WIS for Undead).
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on December 26, 2019, 03:51:34 pm
I like the look of the water tiles that you made, Fox, although it will be better to see how they animate in game.  It looks like you have captured a nice wave-like effect though.
Title: Re: Ultima: Exodus (NES)
Post by: roney33 on December 26, 2019, 04:05:10 pm
here more graphics resources, if you want to use it

https://opengameart.org/content/16x16-rpg (https://opengameart.org/content/16x16-rpg)
https://www.spriters-resource.com/nes/dragonwarrior4/ (https://www.spriters-resource.com/nes/dragonwarrior4/)
http://8bitcity.blogspot.com/2012/08/ultima-v-warriors-of-destiny-tileset.html (http://8bitcity.blogspot.com/2012/08/ultima-v-warriors-of-destiny-tileset.html)
https://opengameart.org/content/dungeon-crawl-32x32-tiles-supplemental (https://opengameart.org/content/dungeon-crawl-32x32-tiles-supplemental)
https://opengameart.org/content/tiny-16-basic-add-ons (https://opengameart.org/content/tiny-16-basic-add-ons)
https://opengameart.org/content/classic-rpg-tileset (https://opengameart.org/content/classic-rpg-tileset)
https://opengameart.org/content/stunning-pixel-art-rpg-tileset (https://opengameart.org/content/stunning-pixel-art-rpg-tileset)
https://opengameart.org/content/tiny16-tileset (https://opengameart.org/content/tiny16-tileset)
https://opengameart.org/content/8-bit-rpg-basic-tile-set (https://opengameart.org/content/8-bit-rpg-basic-tile-set)
Title: Re: Ultima: Exodus (NES)
Post by: Celice on December 28, 2019, 01:17:04 am
This is a really cool project. As a kid, I remember renting this once and trying to murder an old lady in a beginning town or something. The battle style and that scenario always stuck with me.

Looking forward to your updates!
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 28, 2019, 11:11:05 am
I've been working on the map lately, and it's starting to look more like what I want it to be:
(https://i.imgur.com/4IEvP5c.gif)

However, working around its tile limitations is proving to be harder than I thought, and I'm only halfway through it.
Next steps are: hacking the routines that redraw a portion of the map that was "covered" by the UI, changing the impassibility of the new castle tiles, and moving the party to the middle castle tile when they walk on the sides, so that they can enter the castle from either side.
Title: Re: Ultima: Exodus (NES)
Post by: roney33 on December 28, 2019, 02:14:32 pm
the batle on the boat, use the same tiles of the ground
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 28, 2019, 04:10:13 pm
Oh, I spoke too soon :( The bit I was using to extend the tileset for the castle is actually used for the rogue-like LOS effect, which would result in castles being always hidden or everything being always visible (and with the wrong palette).
Well, no big issue: I considered that change a minor addition.


the batle on the boat, use the same tiles of the ground
Good point, I hope I'll have some space left to add at least one or two "boat" tiles that replace regular floors for those battle maps.


Update

On a more positive note, adding an impassible "rocks" tile was a lot easier.
(https://i.imgur.com/4vOXtKy.png)

This can break the monotony of certain areas, and provide some more strategy in the overworld encounters, since enemies can't easily move around obstacles.
Title: Re: Ultima: Exodus (NES)
Post by: Googie on December 28, 2019, 06:09:09 pm
This looks really cool, I dig it so far! :thumbsup:
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 28, 2019, 09:00:11 pm
Cheers guys, I appreciate all the interest and comments. Hopefully I'll have a pre-release version to test soon.

Since I can't sleep, here's another update to the character creation screen:
(https://i.imgur.com/BPh7ra7.png)

Markers to indicate the primary attribute(s) for the selected profession, and icons to represent each race/profession - since they will appear in game without text, so you don't need to guess what they represent.
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on December 28, 2019, 09:03:19 pm
That is looking good, the rock's that you have to walk around are a nice touch.  And that character creation screen is looking nice, too.
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on December 31, 2019, 05:18:19 pm
I can sneak in one more update before the new year! :woot!:

As ROM space was starting to become an issue, I've implemented a simple RLE map compression that frees up almost 10 KBytes in ROM!

That broke the way chests worked, so I had to re-implement that too.
The downside is that chests now disappear when offscreen, but that should rarely happen.

On the bright side, the routines for moving the party have been improved and now take a significantly smaller amount of CPU cycles -- it's not noticeable normally since you are limited to moving one pixel per frame, but it helps when there are a lot of enemies or NPCs roaming the map.

Also, since I had to turn my attention to chests: now the maximum loot value scales with the level of the character opening the chest.


First update of the new year ;D


I have almost completely re-written the enemy's battle AI.
Now not only the sequence is much faster (especially noticeable when there are less than 8 enemies), but enemies are now also a bit smarter and will try to navigate around obstacles including other enemies.

Before/after comparison of movement with 2 enemies:
(https://i.imgur.com/KNTdymW.gif)
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on January 04, 2020, 05:58:10 pm
Those changes to the battle AI sound like they will make a big difference!
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on January 05, 2020, 03:59:15 am
Those changes to the battle AI sound like they will make a big difference!
Hopefully so! Especially in ship battles, where enemies now won't get stuck on a plank if the closest character is on the other one.
It could still be made smarter, but I think now there's a good compromise between speed, code size and efficiency.

Another update:
I've put in the code to allow a slightly different palette for each map.
Some maps use lava pits, so they need some kind of red and thus can't be changed too much, but here's a few experiments:
(https://i.imgur.com/PHo1Vuc.png) (https://i.imgur.com/L7HrBKT.png) (https://i.imgur.com/CSLuVYz.png)

Also each NPC now can use two different palettes to allow some slight variations, as seen in the screenshots above.

Some other routines have also been completely re-written, to this effect:
The rest is unchanged: poisoned characters still lose 1 HP per step, and diseased characters lose 1 HP every 2 steps.
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on January 11, 2020, 03:49:47 pm
Those changes sound good as well, I like that they are subtle but substantial when all taken together so they should really change up the execution of the game without really changing the flow/feel.
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on January 12, 2020, 05:18:51 pm
Aye, it's one of those areas where the game needs just that little push to become more enjoyable.

Another slight gameplay change I finished implementing over the week-end: characters now receive 1 attribute point in up to two stats depending on profession when levelling up, up to racial maximum.
You will still need to visit Ambrosia to max your attributes.
One of the main critiques of the game was that it punished the player for levelling up, so this is another change that tries to push in the opposite direction.

After that I turned my attention to the dialogue, and I discovered an interesting thing.
Infamously, one of the clues necessary to complete the game was missing... but the text was actually there!
That and many other lines were just either unassigned or missing because they somehow forgot to add the special character in the previous string that makes a yes/no menu appear, or makes the next line show up when you talk to the same NPC again.

Now at least 20 orphaned lines have been restored, including part of the Zelda reference, and a weird 4th wall breaking dialogue that might be a pop culture reference I don't get.

And since I have improved the map compression and now have an entire PRG bank to fill, I've been using it for dialogue portraits (WIP):
(https://i.imgur.com/dunV2DW.png)
Title: Re: Ultima: Exodus (NES)
Post by: roney33 on January 12, 2020, 06:26:21 pm
this game is looking so good, if you can finish it, I would like an editor to be able to rom this game with other games in the last series
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on January 13, 2020, 04:20:42 am
this game is looking so good, if you can finish it, I would like an editor to be able to rom this game with other games in the last series
I had to create a couple of utilities to help with the frustration of pointers and tables (I now respect the work of ROM translators even more).
Here's what the main one looks like:
(https://i.imgur.com/Voky3fq.png)
It is a very rudimentary tool that can export binary files, and then I have to inject them myself into the ROM where needed.
But if there's interest, once done I am happy to release it as open source and maybe improve it a little.
Title: Re: Ultima: Exodus (NES)
Post by: Nosuch on January 13, 2020, 05:34:42 am
Are you a member of The Cutting Room Floor (http://tcrf.net/)? I had no idea there were orphaned lines in this game and they don't seem to have an article for it yet. Seems like something that should be added there.

I'm particularly curious about that fourth wall breaker myself.
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on January 13, 2020, 05:56:59 am
Are you a member of The Cutting Room Floor (http://tcrf.net/)? I had no idea there were orphaned lines in this game and they don't seem to have an article for it yet. Seems like something that should be added there.

I'm particularly curious about that fourth wall breaker myself.
I must admit I didn't know of The Cutting Room Floor. I may contact them or see if I can create an account myself.
There are exactly 21 lines that are compressed in ROM but never used in the game.

And the 4th wall breaker dialogue is:
Spoiler:
Dialogue index: $AB, packed text address in bank 5: $B50E
"ARE YOU FROM COMPUTER GAMING WORLD?"

If player answers YES or speaks to the same NPC again:
Dialogue index: $AC, packed text address in bank 5: $B52B
"LEAVE ME ALONE !!"

If player answers NO:
Dialogue index $AD, packed text address in bank 5: $B539
"ARE YOU FROM THE REAL WORLD?"


I don't know if "Computer Gaming World" is a reference to the American magazine by the same name. I'm not American after all.
Title: Re: Ultima: Exodus (NES)
Post by: Nosuch on January 13, 2020, 09:35:07 am
If I had to guess I'd say you're probably right in that hunch, but your guess is as good as mine here. I may be American but I was also quite young when this was originally released.

Looking forward to your hack when it's released, by the way. :thumbsup: I haven't played it in ages and this looks like a good reason to do so.
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on January 16, 2020, 06:13:40 pm
Update!


I am almost done restoring and fixing dialogues - there were quite a few typos and sentences that made little sense in the original script.
Here is one of the restored lines that did not appear in the released game probably because of a mistake in the pointers:
(https://i.imgur.com/REQiMKT.png)


I've been also working on the battles, and specifically the enemies: most of the enemies from the computer versions of Ultima III have now been added!
Here's one example (wizards):
(https://i.imgur.com/6pgv5K4.gif)
Title: Re: Ultima: Exodus (NES)
Post by: coinilius on January 17, 2020, 12:05:09 am
The extra enemies are great, do you think you'll be able to add all the missing enemies?
Title: Re: Ultima: Exodus (NES)
Post by: Zimgief on January 17, 2020, 04:00:50 am
This looks so great.
Never bothered to play the game, because it felt so unpolished.
Once you complete your hack, I will definitely give it a try, if only for your care and dedication.
Title: Re: Ultima: Exodus (NES)
Post by: Fox Cunning on January 17, 2020, 05:14:48 am
The extra enemies are great, do you think you'll be able to add all the missing enemies?

The enemies I managed to add so far are:
Now the only missing ones are the "special" enemies: Horse (only found in Ambrosia), Chest (only in Castle Death), Grass (only outside Castle Death).

There is enough of room for extra enemy sprites, but the game uses sprite indices to recognise enemies in this way: NPCs (townsfolk) are $00 to $14, plus $1D which is Sherry/Noriko; roaming enemies are $15 to $1C; $1E is the Whirlpool; the Floor found in Castle Death "recycles" id $05 which is normally assigned to the player owned ship.
To index enemies $15 is subtracted from their ID, while for NPCs $1E is added.
However, enemies go from $00 (Orcs) to $16 (pirates), thus leaving $17 to $1C free to use (and that's where I added the enemies listed above).

Also since the game manages random encounters in a completely different way than the computer versions, it's probably not possible to add the Ambrosian Horses and the Grass without basically re-writing half the game.
Once I look better into how encounters are managed in the castle, I will see if there is any hope to include at least the Chest.


This looks so great.
Never bothered to play the game, because it felt so unpolished.
Once you complete your hack, I will definitely give it a try, if only for your care and dedication.

Cheers mate, this game's always had lots of potential but I felt like it could have been much better - which is why I've been working on it for over a month now :laugh:
I still have a couple of gameplay/balance issues I want to fix, then it should be ready for playtesting while I finish polishing the graphics!



UPDATE 18 Jan 2020



Taking a break from the dialogue UI, I turned my attention to the dungeons and gave them a new "coat of paint".
Now each dungeon uses its own palette, fitting its "theme".
(https://i.imgur.com/hKCm32F.gif)


Also, I changed chest's graphics to a much larger sprite for the "3D" view, and chests can also be seen from one tile away instead of only being visible when you step on them.
BEFORE:AFTER:
(https://i.imgur.com/WwuAkNF.gif)(https://i.imgur.com/5rIHMTL.gif)

I have also redone the ladders and the Marks graphics.





Now, as I was testing the game with a high level party I noticed that I was hugely underpowered in battle, and better gear did very little to improve that.
So I looked into the battle routines again, and this is what I found...


Hit chance is calculated using this formula: 8 >= RANDOM(0 to armour + 10)? hit : not hit
So with no armour: 20% miss chance. With Mystic Armour ($07): almost 53% miss chance.
Dexterity is not part of the formula, i.e. dexterous characters are not any more able to avoid damage.


The basic damage formula is: RANDOM(0 to ((enemy's min HP / 8 ) + (high byte of target's max HP * 2) + 1)) + X, where X is normally 6 but higher in dungeons or Castle Death.
So damage is a minimum of 6, and also depends on target's HP.


This can be definitely improved, and while the game should be more challenging at higher levels, the player should also be rewarded for levelling up and have new tools/abilities to better fight the more powerful enemies.
Here's what I thought...

Thoughts? Opinions?
Title: Re: Ultima: Exodus (NES) --- Latest update: 18 Jan 2020
Post by: coinilius on January 20, 2020, 03:35:23 am
Great work with the improvements on the dungeons, I like the individual pallets and the new chests look good too.
Title: Re: Ultima: Exodus (NES) --- Latest update: 18 Jan 2020
Post by: roney33 on January 21, 2020, 02:02:33 am
if is possible, i only suggest a sprites for floor, and roof levels
Title: Re: Ultima: Exodus (NES) --- Latest update: 18 Jan 2020
Post by: Zimgief on January 21, 2020, 04:39:54 am
Hard to say. I think you are the only knowledgable person about this game around here!
But I agree that leveling should be a reward, and that playing the game should never become a hassle (no necessary use of grinding or savestates).
Maybe later, once I have played a bit of your version of the game, could I make more useful suggestions.
Title: Re: Ultima: Exodus (NES) --- Latest update: 18 Jan 2020
Post by: Fox Cunning on January 21, 2020, 11:20:25 am
Fair points!


So at the moment I'm almost done rebalancing the magic system. Nothing major, but lots of small changes.
Most notably, spells that previously had a fixed failure/miss chance will now fail more at lower levels and less at higher levels.


For example, the "Poison" spell had a fixed 75% chance of hitting each target, and the damage was completely random (based on frame counter + a shift register randomiser).
With my patch it now has a 50% hit chance (per target) at level 1, and scaling up to 80% at level 25.
Average damage is also increased with caster level instead of being based on the frame counter (but maximum damage will be the same).


The current roadmap is:
1. Finish the magic system rebalance.
2. Implement the  melee/ranged combat changes in my previous post.
3. Finish the "pre-made party" generation changes.
4. Work on the last graphics changes whilst posting a pre-release version of the patch here for gameplay testing.
5. Adjust the gameplay/fix bugs with feedback from pre-release testing.
6. Publish a finished version.

January 26, 2020, 06:05:06 pm - (Auto Merged - Double Posts are not allowed before 7 days.)

I found something interesting whilst working on the magic routines: the "Recall" spell, which was meant to permanently reduce the caster's Wisdom by 5, actually doesn't because of a bug (which is also present in the Japanese version).

Basically, the RAM location where the address to the caster's data is stored gets overwritten before the casting has finished, so instead of reducing the caster's Wisdom, one of the palettes is changed -- this would takes effect only if the screen flashes after casting "Recall", for example if you immediately cast another spell.
The change is temporary and lost if you enter a battle, go to another location, or just open the Status menu.

I had not found this mentioned anywhere. I guess nobody really used the spell. The Wisdom reduction was too much of a punishment for a party that had just had a character reduced to ashes.
You'd have to go all the way to Ambrosia to regain the lost points (at the risk of dying again) and spend 500 gold.

As part of my rebalance, I've changed it to temporarily reduce the caster's HP to 1.
Kind of a high-risk, high reward deal, but not as punishing.
Title: Re: Ultima: Exodus (NES) --- Latest update: 27 Jan 2020
Post by: Fox Cunning on February 03, 2020, 12:14:08 pm
Time for some weekly updates!

- Horses allow the party to walk through brush and trees unimpeded.
- Loot chests now have a chance of containing weapons and armour, much like in the computer versions. Higher level characters receive better weapons/armour. Shops are now more useful since you will have something to sell.
- Dialogue portraits have been completed, and each significant or recurring Ultima character now has their own unique graphics.
- Yew is populated by druids, similarly to the computer version of the game.
- As in the computer version, Gray now is home to jesters and scoundrels.
- Armour now also absorbs some damage.
- Characters with high Wisdom/Intelligence now have a chance of receiving less damage from magic attacks.
- Thieves now have a chance of scoring critical hits. The chance is based on character level, whilst the extra damage depends on Dexterity.
- Barbarians now deal a bit of extra damage at higher levels. This extra damage is added to each successful strike.
- XP gain has been completely reworked. If you accumulate XP without levelling up, you will soon start gaining less and less until you eventually stop gaining any XP. This is to discourage grinding at lower levels, which is made unnecessary by other gameplay changes anyway.
- Additional XP can be gained by fighting monsters in more dangerous areas, such as dungeons.

New lootDruids in YewTalking to Iolo
(https://i.imgur.com/LjHdFRP.png)(https://i.imgur.com/NG0X1a1.png)(https://i.imgur.com/Qpzcj3u.png)

I have clearly used Ultima VI as a reference for portrait graphics.

What's left:
- A few minor bugs to iron out.
- A couple of typos to fix in the original text.
- Some palettes in the pre-game menus need fixing.
- There are still a few places that have duplicated shops.
- The intro "cutscene" with Lord British is being redone (or actually "redrawn").
- The Time Lord will eventually be redesigned too, to fit in with the new graphical style.
- I have explored the possibility of adding at least floor graphics to dungeons. I'm still not 100% sure it will be possible due to not enough room for extra patterns in the PPU, but I will keep it in the list and work on it after I have posted a pre-release version.
- I have also noted some areas where the code can be further optimised for speed (which in most cases means larger code), but I will leave that to after the first pre-release test when I will be more sure of how much extra space I can occupy.
Title: Re: Ultima: Exodus (NES) --- Latest update: 03 Feb 2020
Post by: Googie on February 03, 2020, 04:40:52 pm
That looks awesome!  ;) :cookie:
Title: Re: Ultima: Exodus (NES) --- Latest update: 03 Feb 2020
Post by: Zimgief on February 04, 2020, 03:05:21 am
Quote
- Loot chests now have a chance of containing weapons and armour, much like in the computer versions. Higher level characters receive better weapons/armour. Shops are now more useful since you will have something to sell
I'm not sure about this. Is level scaling a thing in other parts of the game? I tend to dislike these kind of tricks in open worlds, as they make the world revolve around the player, à la Truman Show, instead of the player inside a world stranger to him.
If the rest of the game design is not about level-scaling, personnaly I would prefer completely random items, and no equipment, to avoid too impactful equipment loot. Or maybe a sophisticated random equipment (ranging according to the difficulty of the region, of the dungeon, etc.).

Everything else looks great!
Title: Re: Ultima: Exodus (NES) --- Latest update: 03 Feb 2020
Post by: Fox Cunning on February 04, 2020, 03:59:13 am
I'm not sure about this. Is level scaling a thing in other parts of the game? I tend to dislike these kind of tricks in open worlds, as they make the world revolve around the player, à la Truman Show, instead of the player inside a world stranger to him.
If the rest of the game design is not about level-scaling, personnaly I would prefer completely random items, and no equipment, to avoid too impactful equipment loot. Or maybe a sophisticated random equipment (ranging according to the difficulty of the region, of the dungeon, etc.).

That's a very valid point, thanks for the feedback.

To put it in context: I initially wanted loot to depend on the enemy you got it from.
Unfortunately though, all chests are the same and the only variables that is set when you open one is a pointer to the character opening the chest.

But now that you mentioned it, the ID of the area where the chest is is always in memory, so I could use that instead and have better loot in more dangerous areas such as dungeons. :thumbsup:



About the rest of the level-scaling: when it was released, the game was extremely punishing just because of that. When levelling up you would not get more powerful, but you would automatically meet stronger and stronger enemies that still all gave the same reward (a random amount of gold).
The reasoning was that Exodus is sending stronger monsters to fight you as you become stronger...
...But the result was players not levelling up at all until very late in the game since there was no reward for doing so.

I think the suggestion of making loot scale with the area makes perfect sense, and also works as an incentive for players to visit dangerous areas instead of grinding the same map over and over as they used to.
Title: Re: Ultima: Exodus (NES) --- Latest update: 03 Feb 2020
Post by: Fox Cunning on February 11, 2020, 01:41:53 pm
After squashing more bugs and fixing some more typos, I think I'm ready to share a pre-release version of this hack:
Ultima Exodus Remastered Pre-Release 20200215.zip (https://www.dropbox.com/s/51u60nurb0sn014/Ultima%20Exodus%20Remastered%20Pre-Release%2020200215.zip?dl=1)

Here's a complete (unless something got lost in my million pages of notes) list of changes (it's fairly long hence why the spoiler tag):
Spoiler:
- Most colour palettes have been slightly altered to better fit the new tile and sprite graphics.
- The intro credits have been compacted to fit into two screens instead of 5.
- The random seed is now properly initialised using the frame counter the moment the player presses the Start button, instead of having a fixed value and thus producing the same sequence of pseudo-random numbers every time.
- Many routines have been optimised for speed.
- New graphics inspired by Ultima IV has been used to replace most sprites and background tiles, including the "cutscene" with Lord British after forming a party for the first time.
- The game can now be saved in Sosaria by pressing the Start button. It is still possible to save at Inns.
- Most maps are now compressed using an LZSS algorithm. As a result of that, the code used to generate loot chests has been completely rewritten, as well as the routines that draw new tiles when moving around the map. Chests now disappear when offscreen. This can be used as a workaround for when a chest spawned on top of a town entrance, forcing the player to open it (at the risk of triggering a trap) if they wanted to enter the town.
- Maps can use additional tiles and have been slightly altered to better use the new graphics.
- Rocks have been added (sparsely) around Sosaria and Ambrosia. The party can try to use them at their own advantage to avoid enemy encounters.
- Each location can now use slightly different colours.
- Battle maps have been modified to include more variety.
- Some maps that had redundant shops have also been altered (for example, Montor West had two bartenders next to each other).
- In Castle British, the Oracle who kept walking on lava is now stationary.
- Some maps have also been altered so that merchants who tent to walk away from their counters won't be able to do that anymore.
- All character metasprites, including NPCs and monsters can now use two palettes for their "sub-sprites".
- Yew is now once again populated by Druids, while Jesters and Scoundrels live in Gray, much like in the computer versions.
- Wild horses have re-appeared in Ambrosia. Unlike in the computer versions, they are not hostile (although the party can attack them).
- A bug that caused loot chests to spawn randomly on the map after fighting townspeople has been fixed.
- Each dungeon now has its own unique colours, fitting its "theme" (for example the Cave of Fire is red).
- Chests use larger sprites in the dungeon pseudo-3D view. They are also visible from a tile away, instead of only being visible when you step on them.
- When stepping on a trap in a dungeon, the character with the best chances (depending on profession and dexterity) will try to disarm it instead of the party leader.
- Simple floors and ceilings have been added to all dungeons (any more comples graphics would have made navigation ever so slightly slower, for no real gain).
- Over 10 typos and misspellings were fixed in NPC dialogue.
- Nonsensical, misleading, and out-of-place dialogue has been corrected.
- 11 lines of dialogue that were missing because of bugs or were just left unassigned have been restored. This includes one critical hint that was present in the computer versions of the game was not visible in the NES version because of a bug.
- The dialogue window now shows a portrait of the NPC the party is talking to. Recurring and important characters have their own unique portrait, inspired by those used in Ultima VI.
- The "pre-made" character selection has been removed. Instead, four characters are choosen randomly from a pool of decent pre-made ones whenever a new save game is created. This allows a player to start the game more quickly and does not require previous knowledge of the game in order to select a balanced party.
- The Start button can now be used as well as the Select button to finish character selection when forming a party.
- Attribute points can be distributed in steps of 1 instead of 5 when manually creating a character.
- Each race now can assign a different maximum amount of points to their initial stats, in line with their lore and max attributes:
  - Human: 25 STR, 25 DEX, 25 INT, 25 WIS
  - Elf: 25 STR, 35 DEX, 25 INT, 20 WIS
  - Dwarf: 35 STR, 25 DEX, 20 INT, 25 WIS
  - Bobit: 25 STR, 20 DEX, 25 INT, 35 WIS
  - Fuzzy: 20 STR, 30 DEX, 30 INT, 25 WIS
- Each profession's main attributes are highlighted during manual character creation.
- The UI has been redesigned, with icons used to represent status, race, gender etc. instead of letters.
- When levelling up, characters now gain attribute points (up to their racial maximum) according to this table:
  - Fighter: 2 STR
  - Cleric: 2 WIS
  - Wizard: 2 INT
  - Thief: 2 DEX
  - Barbarian: 1 STR, 1 DEX
  - Lark: 1 STR, 1 INT
  - Illusionist: 1 DEX, 1 WIS
  - Druid: 1 INT, 1 WIS
  - Alchemist: 1 DEX, 1 INT
  - Ranger: 1 DEX, 1 WIS
- Max MP values and MP/level follows this table:
  - Cleric: = WIS (unchanged)
  - Wizard: = INT (unchanged)
  - Paladin: = WIS/2
  - Lark: = INT/2 (unchanged)
  - Illusionist: = WIS*3/4
  - Druid: (INT+WIS)/2
  - Alchemist: INT*3/4
  - Ranger: (INT+WIS)/4
- Characters have different starting HP and gain different HP per level depending on their profession:
  - Figther: +100/level (starting = 175)
  - Cleric: +60/level (starting = 135)
  - Wizard: +25/level (starting = 100)
  - Thief: +50/level (starting = 125)
  - Paladin: +85/level (starting = 160)
  - Barbarian: +125 (starting = 200)
  - Lark: +40/level (starting = 115)
  - Illusionist: +30/level (starting = 105)
  - Druid: +55/level (starting = 130)
  - Alchemist: +35 (starting = 110)
  - Ranger: +75 (starting = 150)
- The "best armour/weapon" for most professions have been slightly altered:
  - Fighter: no change.
  - Cleric: slightly better gear allows some sort of "battle cleric".
  - Wizard: no change.
  - Paladin: better weapons make it almost as good as a Fighter in melee, but with less protection, compensated by the fact that a Paladin can heal herself.
  - Barbarian: no change.
  - Lark: with slightly better armour, but a slightly worse arsenal, a Lark can be a decent ranged combatant.
  - Illusionist: same as a thief gear-wise to allow the use of bows.
  - Druid: can be somewhat of a backup ranged warrior using a blowgun.
  - Ranger: slightly better weapon choice as this is supposed to be a versatile character.
- To prevent XP-grinding at lower levels, characters slowly gain less and less XP the more they have "stored" until they level up.
- Extra XP is gained by killing monsters in more dangerous areas, such as dungeons and Castle Death.
- Looted chests may contain weapons and armour in addition to gold.
  - Chests found in more dangerous areas can contain more powerful weapons/armour.
- HP/MP regeneration/loss and food consumption routines have been completely rewritten:
  - Barbarians regenerate 1 HP every 4 steps.
  - Other characters regenerate 1 HP every 5 steps (instead of 10).
  - Druids regenerate 1 MP per step.
  - Other characters regenerate 1 MP every 2 steps (instead of 1).
  - 1 unit of food is consumed every 20 steps (instead of 10).
  - Poisoned characters lose 1 HP per step (unchanged).
  - Diseased characters lose 1 HP every 2 steps (unchanged).
  - Diseased characters also consume food at twice the normal rate.
  - Starvation consumes 1 HP every step (instead of 5 HP every 4 steps).
- When on horse, the party can move through bushes or trees at normal speed. According to the manual, horses were supposed to go faster, but in actuality they didn't. This change tries to somewhat honour that promise.
- The slowdown when not sailing downwind has been reduced.
- The second "HEAL" spell has been renamed to "HEAL2" to avoid confusion.
- The general MP cost of spells has been reduced, and scales up in steps of 4 instead of 5 per "spell level".
- The low level "REPEL" and "UNDEAD" spells are now actually random as they were supposed to be, but have better chances to succeed depending on caster's attributes (respectively INT and WIS).
  - They also work on Trolls and Zombies (as they do in the computer versions of the game).
- The damage of "projectile" spells ("MISSILE", "FLAME", "PSI") now scales up with caster level.
- Multi-hit spells ("REPEL", "POISON", "PSI KILL", "DEATH") which had a fixed hit chance per target, now have better chances to hit each target depending on caster's level. The chance is about 50% at level 1, and 80% at level 25. Their average damage is also increased, although the minimum and maximum damage values are unchanged.
- The duration of the "LIGHT", "GLOW", "BRIGHT", "STAR" now also scales up with caster level instead of being a fixed value.
- The "ROT" spell was an overpowered spell that never missed. Now that its MP cost is significantly reduced, it seems fair to add a hit chance (per target) based on caster's level.
- The "OPEN" spell now has a success chance that scales up with caster's level. Also it does not consume any MP if cast by mistake (e.g. when there is no chest to open).
- Healing spells now heal more hit points depending on caster's level and Wisdom. For example, the second HEAL spell (now renamed "HEAL2") had a random value between 100 and 250. In a game where character can easily have over 2000 hit points, that was insignificant. Now the HP gain ranges between 142 (for a level 1 character with just enough Wisdom to cast the spell) to 596 (for a level 25 caster with 99 Wisdom).
- The "RAISE" spell's success chance now scales up with level, instead of being a fixed 75%. The success chance at level 1 would be 61%, reaching 75% at level 15 and 85% at level 25.
- The "RECALL" spell was meant to punish the caster by permanently taking away 5 Wisdom points. However, because of a bug in the code, 5 was subtracted from one of the palette colours (only effective if the screen flashed, for example if immediately casting another spell afterwards). This bug has been eliminated, but instead of permanently decreasing the caster's Wisdom, it reduces their HP to 1 (the current HP, not their max value).
- The screen-flashing time for most spells has been vastly reduced to speed up the game flow.
- The "hit" sprite also disappears more quickly as not to disrupt the pace of the battle.
- Almost all the enemies that were in the computer versions but not in the NES one have been reintroduced. This includes the Pincher, Troll, Zombie, Cutpurse, Fighter, Wizard, Orcus and the special Chest encounter in Castle Death.
- Gargoyles and Manes now have magical attacks again.
- During battle, the turn is not forfeited when cancelling an action (for example choosing the spell menu and then pressing B) or when an action is not possible (for example choosing the "Tools" menu on a character who has no items). The turn is still forfeited by pressing B before any action is chosen.
- Enemies cannot steal items anymore, but they can steal a small amount of gold.
- The enemy AI in battle has been completely re-written and is now a bit faster and a bit smarter, being somewhat able to navigate around obstacles and other enemies.
- Some other routines have been hugely re-written to make battles much faster.
- Obstacles in the form of rocks have been added to some battle maps. They can be used to the party's advantage when fighting with spells and ranged weapons, but also to the enemy's advantage, since they can attack diagonally.
- The delay between choosing the direction of an attack and the actual attack has been largely reduced.
- The currently equipped weapon is displayed in the battle UI when choosing the direction of the attack.
- An icon in the battle UI now indicates whose turn it is.
- The text that appeared when a character was hit would not fit into the UI when the name was five letters long. This has been fixed by altering the text.
- Armour now also absorbs some damage.
- Characters with a high Intelligence or Wisdom have a chance of receiving less damage from magical attacks.
- Thieves now have a critical hit chance, based on level. The extra damage depends on Dexterity and on the weapon used.
- Barbarians deal some extra damage per level, starting at level 2. This extra damage is applied to every successful strike.

If you decide to test this pre-release, these are some of the things I'd look out for:
What is not part of the hack yet: full code optimisation.
I am leaving that last as it won't affect gameplay too much.
Mainly, maps will load significantly faster when that's done, and hopefully the game will react a little bit more quickly to inputs.

In any case I welcome all feedback, positive or not.

* Note: please do not redistribute this pre-release. I will shortly publish a finished version and I'd like that one to be the only one publicly available at that point.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200211 available
Post by: roney33 on February 11, 2020, 04:22:47 pm
congratulations for the effort, I will be testing and giving the respective points

for now my sugestions are only cosmethics, and add more rocks in battle screen

(https://imgur.com/3GgnZab.png)

February 12, 2020, 02:51:53 am - (Auto Merged - Double Posts are not allowed before 7 days.)
with the fuzzy I can only put a maximum of 30 intelligence, and the enemies continue to attack diagonally
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: Fox Cunning on February 12, 2020, 04:01:14 am
Thanks for the feedback. I like the darker floor patterns, I'll have to see how the fit in with the different palettes and also hear from other people (I am terrible with colour choices).

I have just updated the link above to a new version after noticing a couple of dialogue bugs, so feel free to re-download it.

Also I had forgotten to mention that I'm using XDelta for this patch, since there is a non-zero amount of code relocation and you never know...

with the fuzzy I can only put a maximum of 30 intelligence
Oops, that's a mistake in my release notes. Fuzzies get max 30 Dex and Int. I will correct that for the next version.

and the enemies continue to attack diagonally
I had disabled the enemy's ability to attack diagonally in an early patch, but it was way too easy to outmanouver them. Basically you could just have one character moving left and right, kiting a herd of enemies that would never attack, while the others could kill them safely.
In the end, the most sensible thing to do is leave it as it is.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: roney33 on February 12, 2020, 04:59:15 am
here, more 2

(https://imgur.com/d6d5joY.png)
(https://imgur.com/1ycPl2z.png)
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: Fox Cunning on February 12, 2020, 11:03:00 am
I would have liked to use grey for castle tiles, but the colour choice is limited by some unavoidable factors :(
- Palette 0 is used for Line Of Sight: must be completely black.
- Palette 2 is used for water: must be blue/white.
- Palette 3 is used for grass, trees and bushes: must be green.

This leaves us with only one palette that must have one green since it's used for plain grass and must have one red in all those maps that, like the castles, use lava tiles. If the lava is green or grey, it may trick players into walking to their deaths, which would be unfair.

Anyway, your screenshot has given me an idea: I can actually have a different pattern that is only used in castles, and a darker floor everywhere else.
This should differentiate the maps some more and make them feel more unique than what a simple palette change could achieve.

I will include that in tomorrow's update.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: roney33 on February 12, 2020, 05:11:46 pm
i'm leaving with you decide a better way to go, if you think it will ruin the color palette, then you don't even need to change
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: Googie on February 12, 2020, 05:49:54 pm
Diggin' the new pics, this is gonna be so cool to play when it's done.  :thumbsup:
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: 4lorn on February 12, 2020, 06:06:07 pm
I'm not sure how this got past me but it's looking quite remarkable, especially since more often than not the console versions of Ultima tend to get some flak from PC purists. Great work :)

Out of curiosity, what version of Ultima VI did you use as a base for the portraits? How many colors can be used on the portraits on the NES Exodus?
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: roney33 on February 12, 2020, 08:36:20 pm
almost all armor is neither fighter nor barbarian, nor can i sell some weapon parts, like bow, broad ax, and iron sword
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: Fox Cunning on February 13, 2020, 04:17:30 am
Cheers mate!
Out of curiosity, what version of Ultima VI did you use as a base for the portraits? How many colors can be used on the portraits on the NES Exodus?

I used the MCGA PC version. Those portraits were 56x64 pixels, whilst mine are 40x46 so I couldn't just copy-paste them.
Instead, I drew new ones on GraphicsGale using a 4-colours palette which is the same used by text in the game, as well as water tiles and a few other things.
With careful placement and a larger "border" around the portraits, one could potentially have up to 10 colours per portrait.

almost all armor is neither fighter nor barbarian,
Thanks for the report! Barbarians can only use up to Leather armour, which is correct but as you pointed out I've mistakenly copied the Barbarian's entry in the table in place of the Fighter's one. Will be corrected in today's update.

nor can i sell some weapon parts, like bow, broad ax, and iron sword
Do you remember which shop you were trying to sell these weapons?
All shops should only buy the same weapons that they can also sell.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200212 available
Post by: 4lorn on February 13, 2020, 06:22:13 am
Cheers mate!
I used the MCGA PC version. Those portraits were 56x64 pixels, whilst mine are 40x46 so I couldn't just copy-paste them.
Instead, I drew new ones on GraphicsGale using a 4-colours palette which is the same used by text in the game, as well as water tiles and a few other things.
With careful placement and a larger "border" around the portraits, one could potentially have up to 10 colours per portrait.

Nice! I was wondering about the colors and detail, thought about doing some portraits based on those - only if you're interested, of course. In any case I need to set some time to play your version this weekend :)
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: Fox Cunning on February 13, 2020, 08:14:18 am
Just posted an updated pre-release version (same post as before on page 1).

This should fix the weapon/armour equipping bug. If you find that you can't sell your gear, please let me know which town/vendor it was, and what item(s).
I've also been experimenting a bit with various floor tiles: if you find them obnoxious let me know.
This version also introduces some optimisations. Nothing extreme, but the games does significantly more than the original release, and in less cycles.

Nice! I was wondering about the colors and detail, thought about doing some portraits based on those - only if you're interested, of course. In any case I need to set some time to play your version this weekend :)
I'm happy to share everything that I have. Will you be working on adding portraits to a different game?
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: roney33 on February 13, 2020, 09:20:19 am
this romhack may become something big eventually, you can after that, use this same engine to recreate the ultima 1, 2, and 5

i was tested your last update, it's magnificent, the brick ground i used this tileset

(https://opengameart.org/sites/default/files/basictiles_2.png)
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: 4lorn on February 13, 2020, 10:03:00 am
I'm happy to share everything that I have. Will you be working on adding portraits to a different game?

Ah I'm orry sorry, I think I worded that wrongly. I was wondering if you required any assistance with the portraits, which I could help with. The only graphical improvements I am working on at this moment are for two Genesis games, one being Fatal Labyrinth, and none of them has portraits.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: Scythifuge on February 13, 2020, 06:09:57 pm
This is amazing and UNCANNY as I was thinking about NES Exodus earlier today as I was listening to Metallica's Master of Puppets album, because I used to listen to MOP while playing the game, because after a while, the NES version music would start to get to me. I love projects like this.  I am slowly drawing Ultima-esque sprites (Ultima VII style) for various Ultima and Ultima style projects (such as remaking The Savage Empire) and I have been starting to work on NES/early computer style sprites and tiles and have started to look into using RPG Maker MV.

I apologize for rambling, but I was wondering if it would be possible to hack the music and replace the NES music with the tunes from the Commodore 64/ Apple versions?  I have the midi files and could look into how music is composed on the NES.  I am also curious if you have any plans to look at the Warriors of Destiny ROM to see if that could be salvaged, as the NES version is a train wreck.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: Fox Cunning on February 14, 2020, 11:22:26 am

A quick update as I've just uploaded today's pre-release (still found here (https://www.romhacking.net/forum/index.php?topic=29700.msg389945#msg389945)).
Just some minor graphical changes and tidying up of my code this time.


Ah I'm orry sorry, I think I worded that wrongly. I was wondering if you required any assistance with the portraits, which I could help with. The only graphical improvements I am working on at this moment are for two Genesis games, one being Fatal Labyrinth, and none of them has portraits.
My bad, I misread your post. This specific project I'd just like to finish as soon as possible now, but I will definitely need a hand when I do an Ultima IV / V makeover.


I apologize for rambling, but I was wondering if it would be possible to hack the music and replace the NES music with the tunes from the Commodore 64/ Apple versions?  I have the midi files and could look into how music is composed on the NES.

I did think about that, but a lot of people seem to really like the original music (I personally dislike the title screen/dungeon music).
So my idea at this point is to do a separate music hack that is compatible with both the original game and my Remastered version.

I am also curious if you have any plans to look at the Warriors of Destiny ROM to see if that could be salvaged, as the NES version is a train wreck.
I will definitely get to U5 at some point (I'd like to do an enhanced U4 as well first). I will have a deep look into it when the time comes, although I feel it may turn out to be easier to just redo the whole game from scratch.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: Scythifuge on February 14, 2020, 12:11:12 pm

I did think about that, but a lot of people seem to really like the original music (I personally dislike the title screen/dungeon music).
So my idea at this point is to do a separate music hack that is compatible with both the original game and my Remastered version.
I will definitely get to U5 at some point (I'd like to do an enhanced U4 as well first). I will have a deep look into it when the time comes, although I feel it may turn out to be easier to just redo the whole game from scratch.

I forgot to thank you for all of the work you are doing.  It can be easy to forget to do such things when communicating with text and when there is major excitement for a project near and dear to the heart.  Thank you very much for your work.  Ultima is my favorite franchise.  I learned about Ultima from Dragon Magazine and fell in love with it before I ever played it, and my first title was IV for the NES because we didn't have a computer yet.  I then got a C64 after they phased out, and then a PC in 1993, and collected many Ultimas, including the crazy C64 version of VI! Thank you again for all that you are doing. I appreciate everyone in the Ultima scene who helps keep the series alive, such as the Exult team, and various others who have done great things for the series (there is a Unity port of Ultima Underworld, VGA and music patches for the PC version of III and IV, and other great projects out there!)

I like the idea of a separate hack. It seems that there are 10 tracks in the original Ultima III, and I did a search for the NES OST and I see 11 tracks.  I don't know how music works for NES games. I know space is an issue, but would it be possible to have two soundtracks?  Or the original soundtrack with one of the NES tracks?

I am also curious to know if the title screen could be redrawn and/or animated?  If so, I could take a crack at it, or draw tiles if you need any.  We could add III to the title.  I remember the original would show a scene with four adventures fighting a dragon and they would get killed by the dragon's flame, which was funny, hehe... Then the title screen would show a demo of the gameplay.  I know that it would probably difficult, if not impossible to implement, though I can't help but be curious.


I will definitely get to U5 at some point (I'd like to do an enhanced U4 as well first). I will have a deep look into it when the time comes, although I feel it may turn out to be easier to just redo the whole game from scratch.


I'll definitely be on the look out!  If you need any help with those projects, I would love to help.  I was in a motorcycle accident back in 2016, so I have a lot of time on my hands and have been honing my pixel skills, and I have a lot of practice drawing the oblique style of graphics that they used for V.  I also have the other Ultima soundtracks in midi format.  I have been thinking about buying NES Maker as I don't know assembly (yet,) and have been working on C# for Unity at this time.  However, my NES and C64 ambitions will probably have me reading tutorials and reading books on assembly.  I think that it is great that you have the skills that you have!

   
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: 8.bit.fan on February 14, 2020, 02:42:24 pm
...use this same engine to recreate the ultima 1, 2, and 5...[/img]
...when I do an Ultima IV / V makeover.
Hi there!
Just want to pop in and say I'm still following this project! In fact, I come in here to check for updates almost daily! :) I'm holding off on checking out the beta version for now until the official release because I want to experience it in its final form. :)

With that said, the above comments/suggestions has got me excited!! :D Remaking Ultima 1,2,4,5 on the NES with this new and improved engine would be absolutely AMAZING. I know this might be a tall order, but if you could somehow get the music from their original versions on home computers ported to the NES version that would be tremendous!! :D

Anyhow, keep up the great work and I look forward to playing this!! :)

Cheers!!  :beer: :thumbsup:

8-bit fan
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200214 available
Post by: coinilius on February 14, 2020, 04:33:54 pm
I don't want to explore too far into the pre-release beta, but I downloaded it so I could have a quick look around and it is amazing!
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200214 available
Post by: roney33 on February 15, 2020, 12:35:03 am
wouldn't it be possible to remove the line of sight from programming, or just use one black color? even to make the movement faster, when you are on the ship the movement is extremely slow
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Fox Cunning on February 15, 2020, 11:27:21 am

Pre-Release 20200215 available here. (https://www.romhacking.net/forum/index.php?topic=29700.msg389945#msg389945)
I've ironed out a couple bugs and sped up some routines by skipping sprite updates when rendering is disabled.
If you see any sprites disappearing or appearing when/where they shouldn't, please let me know.


@Scythifuge we certainly share a love for this franchise, I too appreciate all that the community has done! And definitely I'd like to do more.

Remaking Ultima 1,2,4,5 on the NES with this new and improved engine would be absolutely AMAZING. I know this might be a tall order, but if you could somehow get the music from their original versions on home computers ported to the NES version that would be tremendous!! :D
At least U1 and U2 should be doable (funny enough U1 would be more difficult as it included a space shooter section), but everyone loves a challenge!
I'll be studying the music engine as soon as I've published this hack, the goal is to make a separate music/sound one.
Also thanks for the interest and support, I do appreciate your work on FF4 and other games, so that's humbling for me.

wouldn't it be possible to remove the line of sight from programming, or just use one black color? even to make the movement faster, when you are on the ship the movement is extremely slow
Removing the "rogue-like" LoS would be easy, but it wouldn't make movement faster I'm afraid. The party still walks one pixel per frame.
However, I have vastly reduced the slowdown that happens when you are not sailing downwind.
If I recall correctly, in the computer versions you couldn't even move at all except in the same direction of the wind! This should be a lot less frustrating already, but without making the wind feature completely pointless ;D

I don't want to explore too far into the pre-release beta, but I downloaded it so I could have a quick look around and it is amazing!
This might be pretty much to the final version, unless someone can find any other bugs or glitches then I can probably release it next week.

The last thing I was trying to do is reducing the wait when closing the Status menu. I managed to shave off a few thousand cycles compared to the original code, but it's still 2 good seconds of wait.
It may have to stay like this since most of the lag depends on the way the game transfers data from RAM to the PPU. I hope it's bearable.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Scythifuge on February 15, 2020, 01:00:53 pm

At least U1 and U2 should be doable (funny enough U1 would be more difficult as it included a space shooter section), but everyone loves a challenge!

I remember that Star Wars for the NES had a mixture of side-scrolling, 1st person turret shooting, and I think a top down space section.  Completely different code of course, though it is interesting that a NES game had different modes.  Maybe the 3d dungeons could be modified for a space shooter portion?

What would be really great is an Ultima editor that would allow users to hand place tiles and create conversations and quests.  It is why I am waiting for Nes Maker to have the RPG module before I buy it. 
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: roney33 on February 15, 2020, 06:13:54 pm
please, i'm interested in your tool ue editor


here, some tiles of ultima 4 of nes for you to use

https://www.spriters-resource.com/nes/ultima5questavatar/
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Scythifuge on February 16, 2020, 03:12:54 pm
One thing I can say about V for the NES is that the addition of character portraits was awesome, back in the day.  The game did have potential, but projectiles looking like bone piles, one tune throughout the game play section, small world, slow walking, and removal of NPCs and quests was terrible.

That you added NPC portraits is AWESOME!  Is there room for more character portraits, by chance?  Could it be possible to add the V portraits to your mod in addition to the ones from VI? 

What would you recommend to someone who wants to acquire skills akin to yours? Udemy has a class for programming games for the Atari 2600, and I thought that taking that class might be a good way to start learning assembly.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: roney33 on February 16, 2020, 09:33:59 pm
One thing I can say about V for the NES is that the addition of character portraits was awesome, back in the day.  The game did have potential, but projectiles looking like bone piles, one tune throughout the game play section, small world, slow walking, and removal of NPCs and quests was terrible.

That you added NPC portraits is AWESOME!  Is there room for more character portraits, by chance?  Could it be possible to add the V portraits to your mod in addition to the ones from VI? 

What would you recommend to someone who wants to acquire skills akin to yours? Udemy has a class for programming games for the Atari 2600, and I thought that taking that class might be a good way to start learning assembly.

that Ultima 5 for nes is horrible, that oblique perspective used in most recent Ultima games do not match for nes limits; I prefer the version of ms-dos
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Scythifuge on February 17, 2020, 12:21:32 am
that Ultima 5 for nes is horrible, that oblique perspective used in most recent Ultima games do not match for nes limits; I prefer the version of ms-dos

I agree, though the sprites were decent, and I liked the spellbook portion of the U.I.  The pc/npc sprites and some of the items were drawn very well for the NES version of V. Perhaps Origin's lack of NES experience resulted in a poorly optimized game.  However, the portraits are pretty good and could fit in well with Fox Cunning's awesome project.  I truly wonder if it were the sprites that slowed the game down.  I have played NES games with larger, more detailed sprites and they ran well.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Fox Cunning on February 17, 2020, 03:43:39 am
Is there room for more character portraits, by chance?
I think I've left room for one or two more portraits, but the real problem is that the game doesn't have any sort of unique IDs associated to NPCs.
Basically, each portraits is tied to a dialogue, and multiple NPCs could use the same dialogue, so I had to keep track of who is saying what to make sure no women would show up with a man's face just because they are repeating the same line as a male sprite.


Ultima 5...
It was an interesting attempt, akin to the crazy Ultima 6 port for the Commodore 64, but with worse results. And barely playable.
One day I'll have a proper look at that game and see if it can be salvaged, but if I had to re-make it from scratch, I'd use the PC version as a base and improve on that one instead.

Could it be possible to add the V portraits to your mod in addition to the ones from VI?
Note that they didn't use scrolling, leaving one separate screen dedicated to dialogues/spellbooks/inventory etc.
This means their portraits were not limited to using the same palettes as the map like mine, and they had more freedom with attribute alignment.
Basically, they can't be just copy/pasted into U3 I'm afraid.


What would you recommend to someone who wants to acquire skills akin to yours? Udemy has a class for programming games for the Atari 2600, and I thought that taking that class might be a good way to start learning assembly.
Well, I am an engineer working for a semiconductor chip manufacturer and while this is my first NES hack, I had known 6502 assembly since the Commodore 64 days. But I'm sure anyone with enough patience and curiosity can learn quickly.
My first complete assembly project was a Tron game clone for the C64.
Hacking is a bit different in that you need to understand how someone else's code works before you can modify it and inject your own. It's a lot easier when you can make your own code from scratch first.



please, i'm interested in your tool ue editor
I'm still planning to release the editor and source code, don't worry. I just need to make it less of a frustrating experience to use :laugh:
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: roney33 on February 17, 2020, 05:24:00 am
i'm trying to generate a graphics with mesen, and i made some edits, there's result

(https://i.imgur.com/fxOd7ts.png)

(https://i.imgur.com/LDRRi6J.png)

February 20, 2020, 04:26:07 am - (Auto Merged - Double Posts are not allowed before 7 days.)
I would like to share with you this package of graphics that I am editing for the mesen emulator, it is still in alpha and may have some errors, and the characters will still be doing

https://drive.google.com/file/d/1SY5-OO6K5P5EyxnwuT2r10t9ZtWDxUmg/view?usp=sharing
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Fox Cunning on February 20, 2020, 08:53:36 am
Just a quick update as I've been testing the current pre-release with a "normal" (e.g. no cheating) playthrough.
So fare I've found and corrected one minor bug, and if nothing else pops up then I will be publishing the finished product just in time for the week-end :beer:

I would like to share with you this package of graphics that I am editing for the mesen emulator, it is still in alpha and may have some errors, and the characters will still be doing

https://drive.google.com/file/d/1SY5-OO6K5P5EyxnwuT2r10t9ZtWDxUmg/view?usp=sharing
Cool contribution! I'm glad there is interest for this game (as well as other Ultimas).

I hope I'll be able to also release a usable editor soon and see if people will come up with new maps/quests/etc.
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200213 available
Post by: 4lorn on February 20, 2020, 03:01:19 pm
My bad, I misread your post. This specific project I'd just like to finish as soon as possible now, but I will definitely need a hand when I do an Ultima IV / V makeover.

Cool, I hope I'll be able to help then :)

Grabbed this over the weekend and played a while, and it really felt like a great experience. Waiting for the final release! :)
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: roney33 on February 21, 2020, 05:48:58 am
version 0.0.2 alpha, terminated color frames, and i started color some symbols, chars and monsters

(https://i.imgur.com/aN8h9UT.png)


https://drive.google.com/file/d/1SCXHg_UqJiVjbCP3LJ_cFwrCoGHLcgHY/view?usp=sharing
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Fox Cunning on February 21, 2020, 01:27:29 pm
After a few more hours of playtesting, some quick adjustments and a small bugfix, I've now submitted the official release version 1.00, let's hope it gets approved quickly! :woot!:
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Badseed on February 21, 2020, 02:06:28 pm
The fact that this project is awaiting approval is great news! As I've just learned about it and the link to pre-release is dead. Can't wait 😍 I'll be counting the seconds
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: 8.bit.fan on February 21, 2020, 03:15:55 pm
Oh yes! Can't wait!! :)
Will the list of changes be in the readme file?

Thank you again for the great work on this!  :thumbsup:

8-bit fan
Title: Re: Ultima: Exodus (NES) --- Pre-Release 20200215 available
Post by: Scythifuge on February 21, 2020, 07:15:58 pm
After a few more hours of playtesting, some quick adjustments and a small bugfix, I've now submitted the official release version 1.00, let's hope it gets approved quickly! :woot!:

Fantastic! I'm looking forward to playing the official release and I also look forward to seeing what you'll do next!

Also, your project inspired me to hunt down resources for learning 6502 assembly. Now I'm trying to balance pixel art, Unity/C# classes, looking into C++, and now assembly, lol..  I have too many ideas that I don't want to go to waste.
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Fox Cunning on February 22, 2020, 03:35:05 pm
It's online! ;D Very proud of my first NES hack, whether it has success or not it was a fun and rewarding experience.

Will the list of changes be in the readme file?
I've been as thorough as I could in my release notes ;)
Next time I'll try to keep tidier notes though, it was a pain going through them and I might still have missed something.


Also, your project inspired me to hunt down resources for learning 6502 assembly. Now I'm trying to balance pixel art, Unity/C# classes, looking into C++, and now assembly, lol..  I have too many ideas that I don't want to go to waste.
That is awesome, 6502 assembly is very fun although working around its limitations can be as rewarding as it is frustrating sometimes.
Good luck with your endeavours!
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Zimgief on February 22, 2020, 09:02:26 pm
Congratulations! :)

Alas, I tried several roms on the net, and couldn't get the patch to work. Maybe I apply it badly. I'm used to .ips and .bps.
So I couldn't test the beta version, and was kind of hoping the final release would be more conventional. ^^"
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Fox Cunning on February 23, 2020, 04:34:11 am
Alas, I tried several roms on the net, and couldn't get the patch to work. Maybe I apply it badly. I'm used to .ips and .bps.
So I couldn't test the beta version, and was kind of hoping the final release would be more conventional. ^^"
Oh man that sucks! I had to use XDelta because the patch contains a lot of relocated code and data, unfortunately.

If the batch file contained in the archive doesn't work, you can try using XDelta 3 GUI (https://github.com/Moodkiller/xdelta3-gui-2.0/releases).
If you are using Linux I think you're stuck with the xdelta 3 command-line, while on Mac OS X it should work with MultiPatch (https://www.romhacking.net/utilities/746/) (I'll test it soon myself).
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Zimgief on February 23, 2020, 06:52:13 am
I tried again, this time with the final patch, and it works. I don't know what was wrong when i tried with the beta patch.
So all is good, I will spend time on the game when I can. :)

Anyway, as there are several files in the patch folder, I think it will be less daunting for users to have some basic instructions on how to apply the patch: just for them to be sure they are doing things right in the case something doesn't work. :p
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Fox Cunning on February 23, 2020, 07:02:19 am
Anyway, as there are several files in the patch folder, I think it will be less daunting for users to have some basic instructions on how to apply the patch: just for them to be sure they are doing things right in the case something doesn't work. :p
You are absolutely right. I will have to make it more user-friendly.
Anyway, glad it worked for you in the end :)
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: arciks11 on February 23, 2020, 05:14:39 pm
Congrats on releasing this patch. I was wondering if it would be possible to create a separate patch that still uses the old font. I find new one a bit hard on the eyes.
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Fox Cunning on February 23, 2020, 05:33:02 pm
Congrats on releasing this patch. I was wondering if it would be possible to create a separate patch that still uses the old font. I find new one a bit hard on the eyes.
Thanks, try this! (https://www.dropbox.com/s/fa5aekem46s67ns/Ultima%20-%20Exodus%20Original%20Fonts.ips?dl=1)
Let me know how it looks like, if others have the same issue I may include that as an optional extra patch on a future revision.
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: cliff on February 24, 2020, 02:45:17 am
Hi there, I've discovered a bit of an exploit that allows the player to recover HP and MP inside of combat. Using v1.00 for the record.
Spoiler:
With the first character in the party active, press the A button to bring up the Fight/Magic/Tools menu, then press B to cancel it. You can also choose an action and cancel it. Repeat a few times and you will see your HP and MP regenerate as if combat turns are passing.

Edit: There also seems to be an issue with attribute gains on level-up with certain characters. So far I've only noticed the problem on Fuzzy Wizards who start with 30 INT. The bug occurs when this character reaches level 2: his INT (and Max MP) are reduced from 30 to 25. Also, when he got to level 3, his INT and Max MP were still stuck at 25. I tested a 25 INT Elf Wizard and he received the correct +2 INT at level 2.
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: arciks11 on February 24, 2020, 07:19:57 am
Thank you for old font patch!
If I may make another suggestion. the "Lvl" text in idle status screen now feels a bit small relative to other text. I was wondering if it would be possible to make it bigger and similar to original font and maybe just say "LV" or "Lv"
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Special on February 24, 2020, 11:12:36 am
I saw there was an update for the patcher;

"1. Updated readme to include more detailed patching instructions. 2. Updated xdelta3 command line in batch file to still try to patch a source file with a different CRC32 value."

This is IMO, bad. It's only going to cause you and others headaches down the line when people start patching the game to "bad dumps" and things break. CRC32 should be a lock in, I think the issue is the patcher looks specifically for the exact file name ie. "Ultima - Exodus (U)[!].nes", so if their ROM is called "Ultima - Exodus.nes" or "Ultima Exodus.nes" but have correct CRC32's, it won't patch. I would change it to look for the correct CRC32 or else fail, but file names shouldn't matter, like "123.nes"

My two cents.
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Fox Cunning on February 29, 2020, 05:31:30 pm
Hi there, I've discovered a bit of an exploit that allows the player to recover HP and MP inside of combat. Using v1.00 for the record.
Spoiler:
With the first character in the party active, press the A button to bring up the Fight/Magic/Tools menu, then press B to cancel it. You can also choose an action and cancel it. Repeat a few times and you will see your HP and MP regenerate as if combat turns are passing.

Edit: There also seems to be an issue with attribute gains on level-up with certain characters. So far I've only noticed the problem on Fuzzy Wizards who start with 30 INT. The bug occurs when this character reaches level 2: his INT (and Max MP) are reduced from 30 to 25. Also, when he got to level 3, his INT and Max MP were still stuck at 25. I tested a 25 INT Elf Wizard and he received the correct +2 INT at level 2.

Thanks for the feedback, I'll look into both these issues!


Update: fixed! Expect version 1.03 to be published as soon as my submission is approved. Thanks again for the report, well spotted!


This is IMO, bad. It's only going to cause you and others headaches down the line when people start patching the game to "bad dumps" and things break. CRC32 should be a lock in, I think the issue is the patcher looks specifically for the exact file name ie. "Ultima - Exodus (U)[!].nes", so if their ROM is called "Ultima - Exodus.nes" or "Ultima Exodus.nes" but have correct CRC32's, it won't patch. I would change it to look for the correct CRC32 or else fail, but file names shouldn't matter, like "123.nes"

I do agree with you on patching "bad dumps"; the reason why I did that update is that there is another very common dump with a different header but exactly the same ROM data.
Initially it would only patch the expected file, but a lot of people had the other one and were panicking that it would fail.
The best solution would be to have XDelta3 skip the first 16 bytes and only check the CRC32 value of the raw ROM dump, but at the moment that's not an option :(
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Badseed on March 01, 2020, 02:07:56 pm
For the life of me I can't seem to get this to patch. I'm emulating on Android (no access to computer) and I've used unipatcher and Ron Patcher, both are reputed to be able to patch xdelta files. My rom has the right checksum. I just keep reading "error unrecognized patch format" That stinks I want to experience the old school goodness of this game, plus when I can't get a patch to work properly it really motivates me to figure it out. Any advice would be much appreciated
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Cyneprepou4uk on March 01, 2020, 03:53:52 pm
Ultima - Exodus Remastered.ips (https://www.sendspace.com/file/xapfu3)
Title: Re: Ultima: Exodus (NES) --- Now released
Post by: Badseed on March 01, 2020, 04:23:03 pm
Cyneprepou4uk thank you so much for the ips link. Patched perfectly. Now we are cooking with gasoline!! If off to go play.