• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.
Fotomac
Reaction score
62

Profile posts Latest activity Postings About

  • RROR: red/main.asm(2) -> main.asm(15) -> home.asm(900) -> home/init.asm(100) :
    'SFX_1f_67' not defined
    ERROR: red/main.asm(2) -> main.asm(15) -> home.asm(1381) :
    'DisplayBattleMenu' not defined
    C:\cygwin\bin\rgbasm.exe: Assembly aborted in pass 2 (2 errors)!
    make: *** [Makefile:82: red/main.o] Error 1
    M
    I may or may not actually get a chance to play with this today, gonna be busier than I thought tonight. I'll let you know. Should be able to get to it either tomorrow or this weekend, but I might still get to it later tonight. Not sure yet.
    M
    I'll take a look at this some time after dinner and see if I can figure out your problem.
    M
    Happy (late) Christmas!

    And yeah, there is a pokered-fr that you could definitely use to steal French text from. Haha.

    I'll have to look into the abilities. Saying "translate it into the language used by the Gen 1 assembly" indicates you don't really have a strong understanding of most of this, though. Gen 1 and 2 are both written in the same language (z80 assembly). The difference is that RAM addresses and variable names are different, and sometimes routines exist in one and not the other, or they will have the same name but work differently, due to being different games. So it isn't really putting it in a different language, it's just figuring out what needs to be changed when copying it over to make it work. I'll get to it eventually. Right now, as you know, I'm not really working on Red++ that much. I'm planning to be porting Christmas to Pokecrystal -- more specifically, to Polished Crystal, to get a head start on new features. And I've also been doing a bit of work on this side hack Pyro and I have been working on (an Emerald hack. Start in a new region, then go back to Johto after the E4) while I'm waiting on some updates from Rangi. Once I get my maps and tilesets copied over to Pokecrystal, I figure I'll be kinda working on Red++ and Christmas simultaneously. I don't know when I will get around to abilities though. They are not a high priority for me. I know you want them, and I'm happy to share the info with you when I get to it, but I have more important things I'm interested in first. Fixing the rest of the Gen 1 bugs, splitting Special into 2 stats, going from DVs and Stat EXP to IVs and EVs, adding Held Items, that type stuff. Although to be fair, Abilities would sort of go along with that stuff. In Polished Crystal's case, Abilities work by checking the DVs to determine which of the possible abilities that Pokemon uses. After the updates I have planned, they would work off the Personality ID (the old DV bytes) so that they wouldn't be tied to a Pokemon's stats. ie a Pokemon could have perfect stats and still have any of its possible abilities, be any gender, be shiny or not, etc. Unlike the Gen 2 system.
    M
    This is the commit where I added it originally. Then I cleaned it up a little more later. You can see the current version of the Trainer DVs routines here. You can see the format for unique DV entries here.
    M
    I have no background in French and as such I have no strong feelings one way or the other.

    I always forget that wiki even exists lol.
    Is your hack's repository available on github? There are many ways to approach it but I can't give you a step by step guide. The thing is that the battle engine in Gen 1 didn't consider the existence of damaging moves that may fail. Your best bet is to treat the use of Snore and Sleep Talk as an status condition to decide whether the move will be used before it's execution.

    Regardless, the key here is to be familiar with the battle engine. I bet you'd know how to code the isolated functionality of Snore and Sleep Talk but you don't know where to start when it comes to squeezing it in the lengthy battle engine. If you're planning to add more move effects or battle engine modifications in the future, you should definitely consider giving the game's battle engine a quick read/study.
    M
    I didn't incorporate Pokemon Riding. That random guy did. By renaming the bike and changing its sprite, because he was too lazy to move things around to let the girl have a separate bike sprite.
    M
    That's cool. I'm less familiar with Castilian Spanish anyway, so that will be good.
    M
    Cable Club was never in the Battle Tower, and since this is a Gen 2 hack, it's still just upstairs in Pokecenters. Orignally the Battle Tower didn't have a Pokecenter side, but I added that because Gen 3 had one. The right is for exchanging BP for stuff.

    And eventually, the Cable Club will be upstairs in Red++ too, once I give the Pokecenters a redesign to match Christmas. :p But that will come later, once I've merged in Pokered-gbc, tried to fix some of the issues, and then changed it to use larger tilesets like Crystal does. Since the plan is to eventually have Red++ use the same tilesets as Christmas, just non-snowy versions of the outdoor areas.
    M
    No, it's the first floor of the Battle Tower. In this case, based heavily on the design of the Trainer Tower from FrLg.
    M
    Sure. I'm kinda distracted at the moment.

    M
    tbh, that might actually have been lumped in with all the other stuff in my massive "Initial Red++ Changes" commit, cause I added that a long time ago.

    But basically, in the two routines for executing the player or the enemy move, you would need to find where it checks if you are asleep and prints the message that you are asleep instead of attacking and checks to see if you wake up.

    You'd need to do something like ld a, [wPlayerSelectedMove] or ld a, [wEnemySelectedMove] followed by cp SNORE then jr z, .(whatever the label is for letting you attack) and then cp SLEEP_TALK the same way. if it is neither of those, then let it fall through to the default behaviour of checking if you're asleep and printing the messages.

    Then when you're adding their effects, you'd need to like... make them fail if the user is awake. Since the initial change just let you attack with them while asleep, it didn't stop you from attacking with them if you were awake.

    That's about as specific as I can be off top of my head.
  • Loading…
  • Loading…
  • Loading…
Back
Top