Sonntag, 11. Februar 2018

GaiaTheCreator v.0.5.0

After some further stabilization, you can download the latest version of the editor. And you don't need to install it anymore, you can directly execute the GaiaTheCreator.exe. Let me know if there are any problems running the editor.

Here are the most important changes:
- Added resize function for the maps
- Added sprite editing
- Impoved map/sprite compression routine
- Added write of the map data table

https://www.dropbox.com/s/wnx6op4kg4hghdb/GaiaTheCreator%280.5.0%29.zip?dl=0

My next goal will be the improvement of the event editor.

18 Kommentare:

  1. I was able to spent about 15 minutes on this version (it works without installation! Thank you!), I could compile this list. Maybe this is already enough for a new release? ;)

    BUG REPORT/OTHER STUFF:
    1) BG2 is always shown beneath BG1, which screws South Cape up (the water can only be seen when I turn the layer with the seabed off). On the other hand, it is right to show BG2 above BG1 on the building interior screens, so there is no one solution that fits all. Probably you should make this depending on some priority bits that are set or something? I'm not that familiar with IoG to that extent that I can tell you how they pull this off.
    2) It is a bit confusing that you call the show-layer-stuff BG1 and BG2 and the Editing stuff below the Map "Upper Layer" and "Lower Layer". You should rename that accordingly.
    3) My recommendation is that you remove the "Upper Layer"/"Lower Layer" entirely and instead add another pen button, one for BG1 and one for BG2.
    4) On the zoom bar, there is an "on mouse over" event that shows you what value you have set. Atm, these values are -1 to 4. Maybe you can change that to 50% - 400%?
    5) If I go on File --> Save Project, the "Save Map" button stays green. Is this intended?
    6) If I go on Export ROM, the recommended file name is ProjectName.gtc.smc. You should change that so it is only .smc.
    7) Furthermore, maybe you can add something in the General Options menu if you want to export files in smc or sfc format. The format itself is the same, but the name smc is more or less a relic, though most ROMs are still smc files. smc files are originally files that were created with a Super Magicom, a specific modell of SNES copiers.
    8) I edited BG1 and BG2 of South Cape and exported the ROM. The ROM did crash in no$sns after I left the menu. In snes9x + geiger debugger, I reached the game, but the menu was broken and the characters in the school were changed (see link below). The changes in the map were done correctly, but when I closed the project file and opened it again, the map was almost entirely erased.

    https://twitter.com/pantalytron/status/962747087422181379

    I can send you the broken project files. Besides that, maybe you can consider starting a Discord channel or something? Discord is a nice service to exchange files and do the more unnecessary discussion by chat. ;)

    AntwortenLöschen
    Antworten
    1. I'd also like to see a collaborative IoG hacking channel, if there are enough of us nerds who care about it.

      Is Discord like IRC? IRC has been my one chat platform for 16 years, so I don't know what's hip and cool nowadays.

      Löschen
    2. It's kinda like IRC (plus old, i. e. functional Skype), so thats why I don't really see the point in all the fuzz about it. The only advantage I saw so far is that you can put directly into the chat and don't have to mess with a different upload service.

      Löschen
    3. You can "sort of" "upload" in IRC using DCC ^_^ but an in-chat file server would for sure be useful.

      Löschen
    4. Hi lytron,

      thanks for your feedback :)

      1) The BG layer display is not yet correct for all maps and South Cape is one of them. I still have to figure out the meaning of some of those screen setting bits.

      2) That's a good point. I will rename the layers ;)

      3) Another good point. Maybe I can improve the usability of the map editor a little.

      4) I agree. Values with percentage would make more sense here.

      5) Not intended, I will check this.

      6) Agreed, I will fix this.

      7) Good suggestion, might be implemented in the next release ;)

      8) I haven't tried no$sns for quite a time, I will check this out. The spritesets are still wrong for some maps. You can see the same sprites in the editor. But the important thing is that the whole map data table is already completely overwritten by the editor and I'm glad that most of the map data is already correct.
      Closing and reloading a project is still not very stable. This will be something to work on for a next release.

      Since all of the issue are more or less familiar for me I don't think that I need the project files but thanks for asking ;)
      I will think about opening a channel. Having a direct communication channel would make future debugging sessions ect. much easier.

      Löschen
  2. Dieser Kommentar wurde vom Autor entfernt.

    AntwortenLöschen
  3. Have you investigated the attack code?

    I've been working through the attack code, and figured out how to affect several things. So far I can change the base damage values, switch the special attacks that each character gets to use, fix the Aura Barrier damage bug, and a few other things I don't remember right now.

    If you already know how to do all of this, then this is not very useful for you. But if you haven't worked on any of this yet, I can share my notes with you.

    AntwortenLöschen
  4. Hi Raeven0,

    it would be great if you could share your knowledge with me since there are several things on your list which I haven't found yet :)

    AntwortenLöschen
  5. Hi men, this proyect is a really good work i love it, can i edit the enemies with this program, i meant make a bat with more hp or something like this

    AntwortenLöschen
  6. All offsets are in the un-headered US ROM. Finding the offsets in the other ROMs is probably not hard, but I haven't done so yet.

    Disclaimer: I am self-taught, and not a real programmer. I might say silly things. Also, I have no idea whether changing some of these settings might break something else in the game. :)

    Obviously there's still a lot left to do. Progress is ongoing...

    GOOD, WORKING MAJOR CHANGES

    Damage done to enemies follows this algorithm:
    min[1, (Will's STR + attack base damage - enemy DEF)] + BODY
    where BODY = 0 if Boy Will, 1 if Freedan, 2 if Shadow.
    This code is implemented around $03bf2f. At the end of the $03 bank there are several kb of "FF FF FF FF FF" etc. that seem to be unused, so if you want to expand the attack code, you could probably write a new handler routine in here. I could be wrong in saying that this section is unused, but I haven't found a case where it is.

    Bosses only ever take 1, 2, or 3 damage in the base game because their DEF is higher than STR + damage can ever become.

    Attack base damage table:
    $01d9b2 base damage for Psycho Dash; default 5.
    $01d9b7 base damage for Slider, and for Spin if dashing; default 5.
    $01d9bd base damage for Spin, if NOT dashing; default 4.
    $01d9c9 base damage for Friar and Barrier; default 5 (but see below about the Barrier damage).
    $02cf59 base damage for Boy's jump-slash; default 1.
    I have no idea why Boy's jump-slash damage is set in a different way from the others.

    To make Boy use the Friar instead of the Psycho Dash, change $02b858:
    - A9 A0 BE "lda #$bea0"
    + A9 3B BB "lda #$bb3b"
    This works as normal, but Boy's palette is changed to Freedan's during and after the attack. To reset Boy's palette after the attack is finished, change $16b0b5:
    - BB B0
    + FE 85
    This is not a great solution, since Boy still flashes oddly with Freedan's palette throughout the attack. I know how to fix this, but it will take time to find all the other bytes that need to be altered.

    To fix the Aura Barrier zero-damage bug, we have to add some extra code. I'm assuming that the FFs terminating the $02 bank are unused code. If that's true, then the following addition safely fixes the bug, at a cost of only a few cycles. At $02f08c, instead of FF FF FF etc., write:
    A9 00 02 04 10 A9 00 08 0C AE 09 A9 05 00 8D E2 09 60
    i.e.
    $02f08c "lda #$0200"
    $02f08f "tsb $10"
    $02f091 "lda #$0800"
    $02f094 "tsb $09ae"
    $02f097 "lda #$0005"
    $02f09a "sta $09e2"
    $02f09d "rts"
    Then go to the Aura Barrier initialization code, which is $02b97f - $02b98a. Replace this entire section with:
    20 8C F0 EA EA EA ... EA EA EA 02 A5
    i.e.
    $02b97f "jsr $f08c"
    $02b982 "nop nop nop ... nop nop nop"
    $02b98a "cop #$a5"
    This fix has the nice advantage that we can set the Aura Barrier's damage independently of the Friar's: just set $02f098 to whatever you want the damage to be.

    AntwortenLöschen
    Antworten
    1. PART 2


      SEMI-FUNCTIONAL MAJOR CHANGES
      (STILL NEED WORK)

      To make Freedan use the Psycho Dash instead of the Friar, change $01b8df:
      - A9 3B BB "lda #$bb3b"
      + A9 A0 BE "lda #$bea0"
      This change incorrectly loads Boy's sprite and palette for the duration of the attack. I haven't figured out how to fix this yet.

      To make Boy use the Aura Barrier instead of the Spin, change $02b864:
      - A9 A9 C0 "lda #$c0a9"
      + A9 7F B9 "lda #$b97f"
      This change incorrectly loads Freedan's sprite and palette while the Barrier is being created, but otherwise works normally. I haven't figured out how to fix this yet.

      To make Freedan use the Spin instead of the Barrier, change $02b8f9:
      - A9 7F B9 "lda #$b97f"
      + A9 A9 C0 "lda #$c0a9"
      This change incorrectly loads Boy's sprite and palette during the spin. I haven't figured out how to fix this yet.



      CUTE TINY CHANGES

      By default, the Aura Barrier lasts 240 frames (or maybe 239 or 241, I haven't checked), or until the player presses the attack button, whichever comes first. You can make it last indefinitely, i.e. it only stops when the player presses the attack button, by noping $02ba78:
      - C6 20 30 01
      + EA EA EA EA
      On the other hand, you can make the Barrier last the full 240 frames even if the player presses the attack button, by noping $02ba53:
      - 89 01 00 D0 25
      + EA EA EA EA EA

      It's possible to make the Aura Barrier timer longer, but will require adding more code. Without extra code, the longest time it can last is 255 frames (or maybe 254 or 256), by changing $02ba4a to FF.

      It's possible to change the speed and length of the Slide. You can even set the speed and length independently in the north, south, east, and west directions. This is probably completely pointless, so I won't bore you with the details.



      Let me know if any of these changes seem not to work the way I describe.

      Löschen
    2. Dude, this is really awesome! O___O

      Löschen
    3. Wow, thank you very much :)
      This is definitely very helpful for me. I will try to get this stuff in the editor ;)

      Löschen
  7. Hey Guys,
    I tried the tool and it worked...
    but unfortunately very faulty.

    I just edited the South Cape Map a bit, not much I just expanded the pier. That worked wonderfully!
    But as a side effect, the title screen is faulty (blackscreen with the text "Illusion of Gaia") and the world map is completely destroyed, you will not recognize anything.
    Even the friends of the protagonist are random NPCs...
    And many more maps are completely bugged...
    The game is no longer playable, every time you enter Will's house you get a blackscreen and the game has a softlock.

    I have tried it with different ROM's and emulators, it's always the same result...

    I use Windows 7... is that a possible problem?

    I can gladly make a video of the problems^^

    ps. I'm sorry if my english is not perfect, I'm from Germany^^

    AntwortenLöschen
    Antworten
    1. We tried it a bit and found out that the game only gets corrupted, when you change something on any map and save it...

      In other words, the map editor changes sprites and layers of all maps on its own, although you changed only a part of a single map...

      The problem only occurs with the Map Editor, no matter what you change (Events, Sprites or Tiles), as soon as you save the map the game is corrupted.

      Text color and sound etc work flawlessly.^^

      Löschen
    2. This is happening to me, too.

      I don't even have to change a map to create this problem. In the "Maps" tab, click one of the checkboxes to show/hide a layer in the editor. You can now click the "Save Map" button, which will corrupt the backgrounds as you've noticed.

      Very strange!

      Löschen
    3. Hi Raeven0,
      Thanks for your answer, I thought I was the only one with this problem.
      I've tried something else and can now say for sure that the editor (v0.5.0.) has a bug.
      I have tried the map editor in the version: 0.4.2.4, there works the map editor without problems.
      I recommend you to use the version 0.4.2.4, if you want to edit the maps, version 0.5.0 needs a bug fix.

      Version 0.4.2.4 can be found below "GaiaTheCreator v.0.4.3" in the Rar archive are several versions included

      Löschen
    4. Hey there,
      the editor is still quite buggy, you can see a bit of my personal bug report further above. We'll see if manafreak could fix a bit of it with the next release, but anyways, I think it will always help him if we gather short concise descriptions of the errors we encounter. :)

      Löschen