Welcome to the Shining Force Central Forums!
SFC Forums Index Shining Forums Shining Force
Register for your free forum account now or Login to remove this advert.

SF1 Editor

Updated 7/8/17 (v2.12.5)

Discussion about the original classic Genesis/Mega Drive game. Posts about the GBA remake belong in the forum below.

Re: SF1 Editor

Postby ShininGeek » Thu Feb 16 2017 2:37pm

projectego wrote:Interesting. So this is most definitely a bug present in the base game? I'm really surprised that I hadn't noticed this before. So, just for my clarification, if I open ANY character's status window while the Boost effect is active, that character will retain the Boost spell's effects until they level up? Or does this only occur when viewing the Boostee's (lol?) status window?


It isn't opening the status window that causes them to retain the status, I believe. As far as I know, the bug is caused by the game not properly removing the boost status. If you open the status window while the effect is active, it will display the adjusted stats as intended. However, once the effect is stated to wear off, you will retain the bonus stats until you either open the status window, the character levels up, or the battle ends.

projectego wrote:You are obviously very knowledgeable about Shining Force's core mechanics. Are you know of any other bugs/issues that may not have been brought to light so far? I really would like to catalogue them and hopefully work with RC in discussing ways of correcting them.


Aside from the boost bug, there is also the range bug, which can only really be exploited with Heal 4 or Freeze 3 and 4. Essentially, you can cause a spell to use the range of one of its earlier levels while retaining the AOE of the higher level. In order to make the bug occur, you need to have a spell with multiple levels that has a different range on an earlier level than the current max level. When going to cast the spell, off you scroll to an earlier level, then cancel the selection, the game will still retain the range of the lower level spell. The only cases where this would be useful would be with Freeze 3 and 4, or with Heal 4. By using the bug, you can hit enemies in melee range with Freeze 3 and 4 (though you can't use it for Freeze 3 if you have Freeze 4), or get Heal 4 to have a range of 3.

While this is useful for these spells, the bug can be a bit misleading, because this causes the game to display the AOE of the previously selected spell. For example, if you have Bolt 4, scroll to Bolt 3, then cancel, the game will go back to Bolt 4, but display the massive AOE of bolt 3, despite still only hitting a single enemy.

Off the top of my head, those are the two only exploitable bugs in Vanilla. If you are modding, however, you need to be careful with Detox 2. The spell is coded to remove all negative effects. While this is all well and good, it includes curses. While being able to use a cursed item without the curse of nice, by removing it with Detox 2 instead of a priest, the character is able to weld the weapon or accessory without the curse effect, but they are unable to unequip the item by any means aside from save editing. This is because without the curse status, a priest cannot find any issue with the item and thus cannot remove it, and the item cannot be regularly unequipped because it is marked as unequippable. You can break the item if it has a use effect if you are desperate, however.

Now that I think of it, actually, I think you could have this happen in vanilla with Max. When you go to make the chaos breaker, if Max is equipped with a cursed accessory and the sword of darkness (because you're some kind of crazy sadist that loves seeing "Max's body goes numb!"), The curse effect will be removed upon placing the sword of darkness on its pedastal, but the accessory will still be equipped (no, you can't keep the sword, unfortunately).
Perfection is not an option, it is a requirement.
Perfection is not an option, it is a requirement.
ShininGeek

User avatar
Shining Member
Shining Member
 
Posts: 234
Joined: Sun Nov 03 2013 6:12pm

Re: SF1 Editor

Postby Lobo » Thu Feb 16 2017 3:59pm

ShininGeek wrote:Off the top of my head, those are the two only exploitable bugs in Vanilla. If you are modding, however, you need to be careful with Detox 2. The spell is coded to remove all negative effects. While this is all well and good, it includes curses. While being able to use a cursed item without the curse of nice, by removing it with Detox 2 instead of a priest, the character is able to weld the weapon or accessory without the curse effect, but they are unable to unequip the item by any means aside from save editing. This is because without the curse status, a priest cannot find any issue with the item and thus cannot remove it, and the item cannot be regularly unequipped because it is marked as unequippable. You can break the item if it has a use effect if you are desperate, however.

Now that I think of it, actually, I think you could have this happen in vanilla with Max. When you go to make the chaos breaker, if Max is equipped with a cursed accessory and the sword of darkness (because you're some kind of crazy sadist that loves seeing "Max's body goes numb!"), The curse effect will be removed upon placing the sword of darkness on its pedastal, but the accessory will still be equipped (no, you can't keep the sword, unfortunately).


You CAN make it happen in vanilla with Max indeed.
Equip the SoD and either the Black or Evil Ring, create the Chaos Breaker and the magic is done.

As said above, you won't be able to unequip the ring anymore, as the priest can't locate the curse.

Furthermore, you won't be able to fix a damaged item this way, because the shopkeeper refuses to fix equiped cursed items. So, if it gets damaged, it will be a 'use and lose it' option.
Lobo

User avatar
Shining Hero
Shining Hero
 
Posts: 931
Joined: Fri Sep 17 2004 5:31pm
Location: Rio de Janeiro / Brazil

Re: SF1 Editor

Postby rubixcuber » Thu Feb 16 2017 5:50pm

. Also, have you developed a following yet like you have with the SF1Editor? Hopefully we're still your favourites!


Oh, no. This forum thread is almost literally the only place I share anything with anybody. Probably about 50% of my total human interaction, ha.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby projectego » Thu Feb 16 2017 11:23pm

ShininGeek and Lobo: Thank you both so much for the awesome walkthroughs to reproducing those bugs. I must confess that I wasn't aware of the Max-curse bug. At least it's not a game-breaking bug - pretty sure SF1 doesn't have too many of those (if any?)

I've been working on a sort of expanded Refix, done from scratch and designed from scratch to fix pretty much any issue with the game, no matter how trivial (one particularly trivial issue that springs to mind involves correcting a single pixel of a character's portrait). Will try and get a Google docs online, should anyone be interested.

RC: I guess that makes us your favourites by default then, right? :p

Just about to fire up SF1Editor again now that the kids have gone to bed. Everything is still a blast to tinker with and explore. How difficult is it to style individual tabs, RC? I notice on some tabs you make use of fieldsets and large margins, but on the Mechanics tab everything is quite condensed. Have you considered adding headings, horizontal rules, emboldening, etc. to areas to help break up the flow? I ask merely as someone not at all familiar with this particular branch of programming and one whom stares at stylesheets far too many hours per day.
Oh, hi! I'm Steve. Catch me on Steam.
Oh, hi! I'm Steve. Catch me on Steam.
projectego

User avatar
Shining Member
Shining Member
 
Posts: 269
Joined: Thu Mar 12 2009 9:10pm
Location: England

Re: SF1 Editor

Postby rubixcuber » Thu Feb 16 2017 11:36pm

Moderately.

When I first started coding this thing in... 1998(ish?) I didn't really use any sort of framework (and there weren't a whole lot of good options back then anyways) so every bit of text, control, whatever is manually drawn and manually hard-coded to process mouse clicks and things by checking the cursor position and such.

It's a fairly awful way of doing things today, but I haven't had the energy or motivation to try to rewrite the whole thing at this point.

My game engine has a very nice control/event handling system that I built from scratch that would make things a lot easier but this project lacks that.

Would be nice to just port the editor into my engine maybe. But, time consuming. And of no direct benefit to any of you guys. So I'll probably just keep doing things the old way.

Basically, instead of having access to CSS and such imagine you just had to manually write out every single attribute for everything on the page, and manually hook up click events by specifying the pixel boundaries of each object and such.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby projectego » Fri Feb 17 2017 12:17am

This is really fascinating. Your current process sounds a little bit like working with old HTML image maps *shudder*, but only on a much, much more complicated scale with all of the inputs and options and whatnot. Pardon my ignorance, but approximately what sort of time frame do you feel you would be looking at to port over SF1Editor to your current engine/framework? Weeks, months?

I honestly cannot fathom how many hours it must have taken you to design and code the Battle and Scripting tabs. For what it's worth, you've made those sections an absolute joy to work with - the flexibility really is astounding.
Oh, hi! I'm Steve. Catch me on Steam.
Oh, hi! I'm Steve. Catch me on Steam.
projectego

User avatar
Shining Member
Shining Member
 
Posts: 269
Joined: Thu Mar 12 2009 9:10pm
Location: England

Re: SF1 Editor

Postby xenometal » Fri Feb 17 2017 10:39am

About a possible editor rewrite, it seems that you're happy with the way you're doing things now and as they say, if it's not broke, don't fix it.

For example, when I look at the new, improved Effects and Range editors, I don't get the impression that you're too limited by the current "framework". Was it a lot of work to redesign those? If not, then I guess you're good to go.
xenometal

User avatar
Shining Member
Shining Member
 
Posts: 407
Joined: Tue Mar 28 2006 3:05am
Location: Canada

Re: SF1 Editor

Postby rubixcuber » Fri Feb 17 2017 5:23pm

I'd guess probably ~100 hours of work. So realistically probably a good full month working a couple hours every day on just porting.

Well, I mean you can of course do anything manually rather than using a proper framework or set of tools, it just takes a lot longer both to do and to change after the fact. I'm not sure that I'd say that I'm happy with it, just that the effort required is not really worth it at this point. I'd pretty much have to go dead on updates for a full month and that's assuming I worked pretty consistently over that month. I'd rather spend my time adding new features and fixing bugs.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby projectego » Sun Feb 19 2017 11:43am

Understood. Personally, I feel that if it makes future updates easier and faster in the long run, and perhaps even makes working with the Editor more enjoyable for you, then I say go for it. Although, if you feel it isn't worth it, that is absolutely fair enough.

RC, I've been looking at ways to best implement Shell as a playable character. Is there currently a way of having a playable character able to navigate terrain and water but nothing else? I think the closest movement type is hover, but I believe that also allows character to traverse pits. Is there currently any movement type available that you might be able to recommend? Or would a new aquatic movement type be possible?

There's also the issue that I either have to use her original map sprite (submerged with splashing animation) or give her a new map sprite where her entire tail is visible. Neither will work ideally for both land and water traversal, so I've been considering some kind of mobile/floatable platform to include in her sprite. To be honest she is already beginning to sound like a little too much work!
Oh, hi! I'm Steve. Catch me on Steam.
Oh, hi! I'm Steve. Catch me on Steam.
projectego

User avatar
Shining Member
Shining Member
 
Posts: 269
Joined: Thu Mar 12 2009 9:10pm
Location: England

Re: SF1 Editor

Postby ShininGeek » Sun Feb 19 2017 3:30pm

Conchs and shellfish from the chapter 5 ship battles are able to navigate water and land. their movement type is listed as aquatic in the editor, but I'm not sure if their movement takes into account hills and trees and such. If need be, you can go in and edit that as you see fit.

For her sprite, you can look at Beyond the Beyond and add a fin to the enemy 33 sprite, which would make things easier. unfortunately, you wont be able to get a map sprite for her this way, as Beyond the Beyond has a different overworld art style and different dimensions for their sprites.
Perfection is not an option, it is a requirement.
Perfection is not an option, it is a requirement.
ShininGeek

User avatar
Shining Member
Shining Member
 
Posts: 234
Joined: Sun Nov 03 2013 6:12pm

Re: SF1 Editor

Postby rubixcuber » Mon Feb 20 2017 6:31pm

Sorry for the lack of progress. I keep letting myself get distracted. I finally sat down with it and within about 3 minutes tracked the menu choice to the RAM value at FFB4D5, so just need to backtrack to where that gets set and see what's happening differently.

Edit: And a few more minutes later and I've figured it out. The HQ has a hard coded check to see if Nova is the second member and if so to not treat it as a battle and moving the members RAM table broke that check. That was way too easy and sorry I put it off for so long!

Edit2: Well, the proper menu pulls up now and everybody is properly loading and showing up in HQ! But... it just says "No one is in that direction." now when trying to speak to anybody. So... very close maybe?

Edit3: And... all working! It may be pretty much done now. I need to do some testing in the menus and with extended characters hanging around in HQ now that HQ works again, but it appears to be pretty bug free right now.

Edit4: Well, joining and menus seem to work fine. HQ messages work fine. And as long as you don't have too many members, they hang around in HQ just fine. So, I think I'm ready to release a testing version pretty much.

Going to be a big post, so maybe if somebody wouldn't mind giving this a bump so I can give it a dedicated post instead of throwing it after this stuff.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby ShininGeek » Mon Feb 20 2017 8:36pm

Bump
Perfection is not an option, it is a requirement.
Perfection is not an option, it is a requirement.
ShininGeek

User avatar
Shining Member
Shining Member
 
Posts: 234
Joined: Sun Nov 03 2013 6:12pm

Re: SF1 Editor

Postby rubixcuber » Mon Feb 20 2017 9:01pm

Update

Alright, so time to give it a go! Number of characters is now expandable to 50. The only thing that isn't complete is an editor for the HQ positions for members that aren't currently in use, but as these aren't assigned by character and just fill up in order, extended characters work just fine until you run out of existing slots.

The basic rundown for extending characters is that you check 'Extend Chars' in the character editor, create any new characters you want and save there. Then you want to go to the text editor to handle the HQ messages for everybody.

The way HQ messages work is that they have three groups: Active, Waiting, and Waiting on Ship
Under the assign messages screen in the text editor you can put in a new starting message number and then by hitting 'Copy Messages' it will copy all of the old messages to the new location and add empty messages between each section for the new characters.

You need a block of 150 messages to work with for all the characters, so what I did was just bump the total messages up to 2500 (by just editing the total number by the goto) and then setting the starting message to 2300 and hitting copy. Then you can fill in the gaps for the new characters and save that.

The only way to get them into the party is either by save state hacking or by adding it into the scripting like they did for normal characters. I just tested by taking Lowe's dialogue in the very first script and injecting "Add Force Member" nodes into his conversation.

On the note of save states... since I had to expand and relocate a bunch of RAM data, old save states will not work once you expand characters!

With all of that out of the way...

Here's the basic run down of what I want to test/verify:
Just playing through the game with extended characters and making sure nothing blows up
Leveling extended characters and making sure their growth matches the curves/values set
Promoting extended characters (and making sure their stats match what is expected)
Testing the HQ message while waiting on the ship
Adding and removing members after the force fills up (I tested this some, but only by hacking in the extra characters not by playing naturally)
Checking the status screens in battle for oddities (especially the background of the force member status window as I had to steal some RAM from it...)
Saving in the character editor with extended characters NOT enabled and playing through to see if anything breaks (it includes code changes to revert back to the non-extended version, which have their own possibility for typos...)
Normal game saving and loading (I am pretty sure that's broken, just making a note of it here)

Probably more that I'm forgetting!



So, yeah. Have fun, hopefully it mostly works. Make a backup.


v2.11.0 - 2/20/2017
[Characters]
* The number of characters can be expanded from 29 to 50
[Text]
* In the assign messages screen, HQ messages can be relocated and copied to handle extended characters
[Graphics]
* Fix for importing graphics with enemy palettes
[Dialog]
* Add force member actions (message+sound) correctly allows setting member number
Last edited by rubixcuber on Mon Feb 20 2017 9:58pm, edited 3 times in total.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby Lobo » Mon Feb 20 2017 9:16pm

Hurray!!!
Let's start!


EDIT: :thumbsup:
Is there a default extended rom?
Or an auto feature to fill all the graphics, messages and so?
I can't download it yet, for the next few hours, but already curious about it.
Lobo

User avatar
Shining Hero
Shining Hero
 
Posts: 931
Joined: Fri Sep 17 2004 5:31pm
Location: Rio de Janeiro / Brazil

Re: SF1 Editor

Postby rubixcuber » Mon Feb 20 2017 9:45pm

Well, I mean they'll all default to pointing to Max's sprite and portrait and such. It'll be ready to go as far as being able to run with no work, it just won't be very useful data.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby projectego » Mon Feb 20 2017 9:48pm

I am so crazy-excited to try out the new feature(s)! Amazing work, RC! And I'm so pleased to hear that this latest round of bug testing went so well for you. I'm absolutely going to take this awesome new build of the Editor for a spin for the kids are asleep and will endeavour to report back with any huge ROM 'splosions that might occur.

I'm really looking forward to seeing how ShininGeek and Lobo get on, too! If there's any two modders that'll be able to uncover any niggling bugs, it's those guys. Happy modding, gang!

RC, how do you feel now that -- hopefully -- the hardest part of the Extended Characters functionality is completed?
Oh, hi! I'm Steve. Catch me on Steam.
Oh, hi! I'm Steve. Catch me on Steam.
projectego

User avatar
Shining Member
Shining Member
 
Posts: 269
Joined: Thu Mar 12 2009 9:10pm
Location: England

Re: SF1 Editor

Postby rubixcuber » Mon Feb 20 2017 9:53pm

Relieved, I suppose. Usually I can kind of rotate through and work on different aspects of the editor if I get tired of messing with one or just want a change of pace. But since I was tearing apart so much of the game I'd left myself in a position where I couldn't really release a version of the editor again until wrapping that up. So it's nice to have some freedom again.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby projectego » Mon Feb 20 2017 10:11pm

I can totally understand that. It must have been an intimidating prospect from the start, but one that I'm certain your users are going to adore now that it's reached a stable release. Did you encounter similar levels of difficulty when developing other relatively large features for the Editor? Or does this rank up there as being one of the more mentally taxing?

Also, how's Mega Man Maker coming along?
Oh, hi! I'm Steve. Catch me on Steam.
Oh, hi! I'm Steve. Catch me on Steam.
projectego

User avatar
Shining Member
Shining Member
 
Posts: 269
Joined: Thu Mar 12 2009 9:10pm
Location: England

Re: SF1 Editor

Postby rubixcuber » Mon Feb 20 2017 11:59pm

This is probably second to the compression, which still pretty much dwarfs everything else a thousandfold.

And not bad I guess. Basic framework is in place.
rubixcuber

User avatar
Shining Hero
Shining Hero
 
Posts: 1092
Joined: Tue Nov 18 2008 4:36am

Re: SF1 Editor

Postby projectego » Tue Feb 21 2017 1:51am

Can you elaborate on what was involved with developing your compression algorithm?

I notice that when Extend Characters is activated and Nova is available to edit, his inventory includes four Medical Herbs and his spell list consists entirely of Heal (level 1?). Was this something that Sega themselves had implemented? If he indeed was intended as a quasi-spellcaster, this will influence my direction of restoring him.

The extra Force member art options are also a very welcome addition. Thank you so much!
Oh, hi! I'm Steve. Catch me on Steam.
Oh, hi! I'm Steve. Catch me on Steam.
projectego

User avatar
Shining Member
Shining Member
 
Posts: 269
Joined: Thu Mar 12 2009 9:10pm
Location: England

PreviousNext

Return to Shining Force

Who is online

Users viewing this topic: No registered users and 2 guests