The PokéCommunity Forums

The PokéCommunity Forums (https://www.pokecommunity.com/index.php)
-   Sideshow Showcase (https://www.pokecommunity.com/forumdisplay.php?f=204)
-   -   Red Shin Pokemon Red/Blue/Green/JP builds (Bugfix, AI, and QoL patch) (https://www.pokecommunity.com/showthread.php?t=427398)

jojobear13 February 11th, 2022 8:55 PM

Quote:

Originally Posted by Chirutalis (Post 10468863)
Hi. Is it possible to expand the newer damaging moves in LGPE like Shadow Ball and Dragon Pulse? Thanks!

This falls under Out of Scope Requests in the initial post.

Octorox February 15th, 2022 11:26 AM

I really appreciate this hack as an improved but still distinctly Gen 1 version of Kanto. One thing I noticed however is that the while the backsprites for Pokemon are higher resolution, the backsprites for Red and the Old Man are still the original 28x28 versions. Poketto and SteppoBlazer have created 48x48 versions that Rangi used in her "Redstar/Bluestar" hack. Would you consider implementing these?

https://raw.githubusercontent.com/Rangi42/redstarbluestar/master/pic/other/redb.png
https://raw.githubusercontent.com/Rangi42/redstarbluestar/master/pic/other/oldman.png

SPazzzi95 February 17th, 2022 11:05 PM

Any future plans regarding this hack?

jojobear13 February 18th, 2022 8:25 AM

Quote:

Originally Posted by Octorox (Post 10470456)
Poketto and SteppoBlazer have created 48x48 versions that Rangi used in her "Redstar/Bluestar" hack. Would you consider implementing these?

Possibly. I would need to also do something for the female trainer.

Quote:

Originally Posted by SPazzzi95 (Post 10471411)
Any future plans regarding this hack?

Here is what is planned for v1.24 so far:

- Green and Red-JP have the original front sprites for fossil kabutops and fossil aerodactyl
- Green and Red-JP have the original text box corners
- Adapted the japanese title screen logo, sfx, and motion for the jp builds
- Minor timing fix to title object palette loading
- Fixed Raticate not appearing in Unknown Dungeon 2F in Blue-Jp
- Fixed incorrect encounters on route 13 for Blue-Jp
- Restored intro "Presents" for all builds
- Added rom hack version tracking for save files
- Seed-based randomized wild pokemon encounters
- Built-in nuzlocke mode
- Paras is gifted in the Route 2 house in case the player has no pokemon that can learn Cut

The nuzlocke mode is going to take a while to properly test.

jastolze007 February 19th, 2022 8:22 AM

Quote:

Originally Posted by jojobear13 (Post 10466062)
Quick post with an update on the next patch.

I need some help beta-testing master development patch 1.23.04 which allows for built-in randomized nuzlocke runs. If you choose to play on this development patch, please re-read and understand the whole Player's Guide that has been updated for the new features.

Hey, I'd be happy to beta test. I'm currently running the most recent master version, although I'm on Goomba, which may not be the best choice for emulator. I don't have access to BGB. But, what are some things I should look for while beta testing?

Edit: Just realized I'm not using the developmental patch. Thought it was part of the master branch.

jojobear13 February 21st, 2022 7:40 PM

Quote:

Originally Posted by jastolze007 (Post 10471894)
Hey, I'd be happy to beta test. I'm currently running the most recent master version, although I'm on Goomba, which may not be the best choice for emulator. I don't have access to BGB. But, what are some things I should look for while beta testing?

Edit: Just realized I'm not using the developmental patch. Thought it was part of the master branch.

Yes, the link to the beta leads to the master_dev github branch. It is my development and staging area for stuff that usually makes it into release patches for the master branch.

Goomba is not ideal, but it's better than nothing. The main feature I'm trying to test right now is the built-in nuzlocke mode. It should work as described in the beta player's guide in the master_dev branch.

jojobear13 February 22nd, 2022 8:14 AM

Here’s a cool thing I figured out. The gameboy color has a special double-speed CPU mode that I've been playing around with. I was able to make it so the 60 FPS option takes advantage of this double-speed mode when playing on a GBC. The CPU switches over to 8MHz when on the overworld, so updating all the object parameters and tile positions gets done really fast before the next screen refresh. The results are buttery smooth with none of the stuttering that's present when the CPU runs at regular speed.
https://imgur.com/HrFiz3l

Chirutalis February 23rd, 2022 8:41 PM

A few suggestions/questions:
1. Would you like to add other tournament rewards like Fly Pikachu, Amnesia Psyduck, Dragon Rage Magikarp, as well as Pay Day Fearow and Rapidash? They are all legitimate event moves in Pokemon Stadium. I won't consider Mist Vaporeon and Acid Diglett because they aren't obtainable.
2. There are Pokedex text error such as Metapod and lowercase pokemon text when receiving a Paras gift.
3. I noticed that Giovanni's Kangaskhan cannot be OHKO by my Kingler's Guillotine. Is it intentional?

JOBO February 24th, 2022 11:18 AM

Quote:

Originally Posted by jojobear13 (Post 10473158)
Here’s a cool thing I figured out. The gameboy color has a special double-speed CPU mode that I've been playing around with. I was able to make it so the 60 FPS option takes advantage of this double-speed mode when playing on a GBC. The CPU switches over to 8MHz when on the overworld, so updating all the object parameters and tile positions gets done really fast before the next screen refresh. The results are buttery smooth with none of the stuttering that's present when the CPU runs at regular speed.
https://imgur.com/HrFiz3l

Now that's smooth! I can't wait to try it out.

jojobear13 February 24th, 2022 4:42 PM

Quote:

Originally Posted by Chirutalis (Post 10473716)
1. Would you like to add other tournament rewards like Fly Pikachu, Amnesia Psyduck, Dragon Rage Magikarp, as well as Pay Day Fearow and Rapidash? They are all legitimate event moves in Pokemon Stadium. I won't consider Mist Vaporeon and Acid Diglett because they aren't obtainable.

I'll think about it. Surfing Pikachu only crossed my mind because it can be traded over into Yellow to unlock the surfing mini-game.
Quote:

2. There are Pokedex text error such as Metapod and lowercase pokemon text when receiving a Paras gift.
Good catch on the lowercase Paras text. But you are going to have to elaborate on the dex text errors. I just checked Metapod's entry and it looks fine.
Quote:

3. I noticed that Giovanni's Kangaskhan cannot be OHKO by my Kingler's Guillotine. Is it intentional?
I might be misunderstanding you, so you may need to provide more detail. But I'm going to assume that you cannot land the OHKO attacks. In gen 1, OHKO attacks will always fail if the defender is faster than the attacker. The vanilla games did not explain this anywhere, and I added an NPC in the Viridian School that alludes to this mechanic.

A OHKO move that fails to hit will generate one of two messages. A message of "#MON's attack missed" indicates that the OHKO move failed its accuracy check. A message of "#MON is unaffected" indicates that the OHKO is prevented from working because the defender has higher speed.

Kangaskhan has a base speed of 90 compared to Kinger's 75. It's entirely possible that your Kingler is too slow to hit it with Guillotine.

Chirutalis February 24th, 2022 6:30 PM

I used redjp/bluejp v1.23.04 and the text character should be an apostrophe but it is shown as MNAZ.
https://imgur.com/a/V6XUksR

I also noticed that it is impossible to obtain gift Pokemon with DV lower than 8 if you have a space in the party, but you still be able to obtain those with DV lower than 8 if it is transferred to the PC. Is it also intentional?

jojobear13 February 24th, 2022 7:13 PM

Quote:

Originally Posted by Chirutalis (Post 10473949)
I used redjp/bluejp v1.23.04 and the text character should be an apostrophe but it is shown as MNAZ.
https://imgur.com/a/V6XUksR

Oh, that's interesting. I think I may have an invalid ASCII character in the source code. Sometimes the wrong apostrophe gets used if copy/pasting between programs.

Quote:

I also noticed that it is impossible to obtain gift Pokemon with DV lower than 8 if you have a space in the party, but you still be able to obtain those with DV lower than 8 if it is transferred to the PC. Is it also intentional?
It's not. Good find.

jojobear13 February 25th, 2022 10:52 PM

Quote:

Originally Posted by Octorox (Post 10470456)
I really appreciate this hack as an improved but still distinctly Gen 1 version of Kanto. One thing I noticed however is that the while the backsprites for Pokemon are higher resolution, the backsprites for Red and the Old Man are still the original 28x28 versions. Poketto and SteppoBlazer have created 48x48 versions that Rangi used in her "Redstar/Bluestar" hack. Would you consider implementing these?

https://raw.githubusercontent.com/Rangi42/redstarbluestar/master/pic/other/redb.png
https://raw.githubusercontent.com/Rangi42/redstarbluestar/master/pic/other/oldman.png

Just a follow-up since a few other people PM'd me about it. I have these working in my development branch. They will get into the next big release patch.

I even made one for good ol' Trainer Violet.
https://imgur.com/eN9Xxwa

I did a little editing on Red's jacket for consistency. Pocketto had drawn it as more of a short-sleeve vest. But the front art shows it to be more of a jacket with baggier, mid-length sleeves.
https://imgur.com/T4y2rlX

Illusioned March 2nd, 2022 10:19 AM

Quote:

Originally Posted by jojobear13 (Post 10474518)
Just a follow-up since a few other people PM'd me about it. I have these working in my development branch. They will get into the next big release patch.

I even made one for good ol' Trainer Violet.
https://imgur.com/eN9Xxwa

I did a little editing on Red's jacket for consistency. Pocketto had drawn it as more of a short-sleeve vest. But the front art shows it to be more of a jacket with baggier, mid-length sleeves.
https://imgur.com/T4y2rlX

Nice! With gbc color mode the bigger battle sprites look outstanding.

jojobear13 March 2nd, 2022 2:13 PM

Another general announcement. Over the years, I've had more than a handful of people ask me how to swap out the battle back & front sprites between Normal, Red&Green, and Spaceworld-style. I've consolidated how these implementations are organized in the code so that they can now be swapped around with compiler tags in the MAKE file. For example, adding the _SWSPRITES tag to a rom-to-be will make it compile with everything needed to implement the 48x48 back sprites and SW front sprites. I've also done this to the Lite branch for consistency (but kept the tags unassigned). Now folks who use shinpokered or shinpokered_lite as a code base won't have to struggle with getting it to work. It will be in effect in the next big commit to the main repositories.

erpster8 March 2nd, 2022 4:35 PM

Quote:

Originally Posted by jojobear13 (Post 10473934)

A OHKO move that fails to hit will generate one of two messages. A message of "#MON's attack missed" indicates that the OHKO move failed its accuracy check. A message of "#MON is unaffected" indicates that the OHKO is prevented from working because the defender has higher speed.

i'm pretty sure OHKO moves always miss against certain types of mons like flying types such as pidgeot

jojobear13 March 2nd, 2022 5:28 PM

Quote:

Originally Posted by erpster8 (Post 10476721)
i'm pretty sure OHKO moves always miss against certain types of mons like flying types such as pidgeot

Yes, that's correct. Gen 1 handles OHKO moves by dealing 65535 damage if they hit, so the damage has a typing associated with it. Fissure deals 0 damage to flying types. Horn Drill and Guillotine deal 0 damage to ghost types.

JOBO March 4th, 2022 7:08 PM

Hey Jojobear, hope you're doing well. I don't know if you've explored this already, but would it be possible to buff/ make the daycare useful? I can't say that I've ever made actual use of it over all these years because the exp gains are so slow. Maybe a buff to exp gained per step? The other thing that makes it annoying is the lack of a PC in the building. It's a low priority thing, but it's kind of a shame the feature is borderline useless. Thank you for all you've done. Have a good weekend!

jojobear13 March 5th, 2022 12:16 AM

Quote:

Originally Posted by JOBO (Post 10477762)
Hey Jojobear, hope you're doing well. I don't know if you've explored this already, but would it be possible to buff/ make the daycare useful? I can't say that I've ever made actual use of it over all these years because the exp gains are so slow. Maybe a buff to exp gained per step? The other thing that makes it annoying is the lack of a PC in the building. It's a low priority thing, but it's kind of a shame the feature is borderline useless. Thank you for all you've done. Have a good weekend!

I feel ya. I don't think you, me, nor anyone has ever used that thing beyond getting some quick levels on early-game trash 'mons. I have a few ideas bouncing around in my head.

jojobear13 March 6th, 2022 1:02 PM

Quote:

Originally Posted by JOBO (Post 10477762)
I can't say that I've ever made actual use of it over all these years because the exp gains are so slow.

I think I’ve found the reason for this.

So the exp gain is 1 per step. The key is understanding what that really means from a player perspective. Many areas have an encounter rate of 10/256, so 1 exp per step more or less the same as grinding out wild encounters that each give 25 exp. What kind of wild encounters give this kind of yield? Level 3 Nidorans.

So yeah. The daycare is basically a faster way of grinding out wild battles against level 3 Nidorans. And yet this is after you’ve made your way to Cerulean City where you would be better off grinding absolutely anywhere else. You have no incentive to ever use the daycare because it never scales to your game progression.

The most straightforward solution would be to scale the “level” of our hypothetical Nidoran with the number of gym badges obtained. 1 badge scales it to level 10, 2 badges to level 15, and so on. That way the daycare keeps pace with wild Pokémon on routes and dungeons.

MStern March 6th, 2022 2:26 PM

Even if you buffed the XP gain, the daycare still won't be that good due to how it handles moves and evolutions. The daycare's best use-case is to level pokemon like Abra and Magikarp. Problem is that you have to constantly check back and take your Abra at exactly level 15 and Magikarp at exactly 19, because otherwise any later they won't learn Confusion or Bite on evolution.

jojobear13 March 6th, 2022 3:29 PM

1 Attachment(s)
Quote:

Originally Posted by MStern (Post 10478585)
Even if you buffed the XP gain, the daycare still won't be that good due to how it handles moves and evolutions. The daycare's best use-case is to level pokemon like Abra and Magikarp. Problem is that you have to constantly check back and take your Abra at exactly level 15 and Magikarp at exactly 19, because otherwise any later they won't learn Confusion or Bite on evolution.

I may have a solution for that. Gaining multiple levels at once in battle used to cause the same problem, but it was fixed by storing the original level and iterating up to the current level. The daycare already stores the original level in order to calculate the money you owe. It shouldn't be too hard to pass that information into the evolution routine and run it upon receiving your pokemon.

EDIT: I got it working.
EDIT 2: See attachment for a demonstration. Works pretty good after a bit of polishing.

JOBO March 6th, 2022 11:16 PM

Quote:

Originally Posted by jojobear13 (Post 10478601)
I may have a solution for that. Gaining multiple levels at once in battle used to cause the same problem, but it was fixed by storing the original level and iterating up to the current level. The daycare already stores the original level in order to calculate the money you owe. It shouldn't be too hard to pass that information into the evolution routine and run it upon receiving your pokemon.

EDIT: I got it working.
EDIT 2: See attachment for a demonstration. Works pretty good after a bit of polishing.

That's already so much better! I totally forgot that the level up moves were annoying in the daycare as well. Your solution looks great.

JOBO March 14th, 2022 3:02 PM

Hey Jojobear. Does the lv 100 leading Chansey work with the stationary legendaries?

jojobear13 March 14th, 2022 7:54 PM

Quote:

Originally Posted by JOBO (Post 10481608)
Hey Jojobear. Does the lv 100 leading Chansey work with the stationary legendaries?

Come to think of it, I don't believe it does. Static wild battles are handled the same way as trainer battles, so none of the stuff involving RNG encounters gets run.

Granted, it shouldn't be too hard to correct this. The function for generating a shiny pokemon is very modular as of the current beta patch. Setting bit 7 of address $cfc4 (or just setting the address to $80) will force the next wild pokemon encountered to be shiny. You can do this with your emulator's debugger if you want to cheat it, or use the gameshark code 0180C4CF on the overworld (activate then deactivate the code).

Actually a Fungus March 27th, 2022 9:24 PM

I have been thinking for quite some time how much I wanted to replay gen 1 if not for it being completely busted... and now I've found Shin Pokemon, I can start a new, less broken adventure on this game I used to love so much. After I play the heck out of the original Shin Red, I'd love to try out the Random Nuzloke beta! Thank you so much for all of the hard work you've been putting into this project, it's amazing!!!

pokemonfan6498 March 30th, 2022 11:05 AM

how about to release 2 versions for JP build one with english logo and other wilh japanese and i have sample for jp shin red

Actually a Fungus March 30th, 2022 7:46 PM

Okay, so I started playing Shin Pokemon Green on my phone and I'm not sure if this is a result of the emu or the rom itself but there are a couple of bugs as shown in this video. The original back sprites still show up, not sure if that's supposed to happen in Green, but the crash with the potions happens when I try to buy pokeballs as well.

https://www.dropbox.com/s/1us6b2f51s9dm6p/Shin%20Green%20Bugs.mov?dl=0

jojobear13 March 30th, 2022 10:19 PM

Quote:

Originally Posted by Actually a Fungus (Post 10488433)
Okay, so I started playing Shin Pokemon Green on my phone and I'm not sure if this is a result of the emu or the rom itself but there are a couple of bugs as shown in this video. The original back sprites still show up, not sure if that's supposed to happen in Green, but the crash with the potions happens when I try to buy pokeballs as well.

https://www.dropbox.com/s/1us6b2f51s9dm6p/Shin%20Green%20Bugs.mov?dl=0

Did you apply the patch to a Blue base rom?

jojobear13 March 30th, 2022 11:08 PM

1 Attachment(s)
Quote:

Originally Posted by Actually a Fungus (Post 10488433)
The original back sprites still show up

First off, I updated the beta patches to v1.23.06. There's a few more improvements and fixes in there.

The japanese-style patches (green, redjp, bluejp) are intended to replicate the original jp-release aesthetic as closely as possible. They will all use the original back sprites.

Your video shows a graphic glitch in the gengar vs nidorino intro that has been reported before. This is caused by erroneously applying the green patch to a red base rom (my reproduction is attached). Green needs to be patched onto blue.

Actually a Fungus April 1st, 2022 9:08 AM

Awesome, I'll make sure to use Blue as a base instead, and that makes sense about the green version sprites, thanks!

jojobear13 April 2nd, 2022 9:29 AM

So I'm doing a playtest to get ready for the next version release. I thought it might be fun to stream it. I got my old channel set up again at twitch.tv/7evenforce. If this sounds interesting to you, come give me a follow so you get notified.

Angered_Trainer April 3rd, 2022 11:35 PM

Excuse me, so to play pokemon green I need to apply it to Blue (jp or us) rom? I did try to patch it to pokemon green and it doesn't seen playable (bgb).

jojobear13 April 4th, 2022 4:32 AM

Quote:

Originally Posted by Angered_Trainer (Post 10489872)
Excuse me, so to play pokemon green I need to apply it to Blue.

Correct. Apply a shin green patch to a blue-us rom.

Angered_Trainer April 7th, 2022 11:07 AM

Great. Thanks for the input and amazing work so far.

jojobear13 April 8th, 2022 1:29 PM

Stream 1 is on youtube. I'll be posting the series over in the Travel Journals thread. Already found a few things I need to fix.

SPazzzi95 April 10th, 2022 3:06 PM

I have a suggestion about the back sprites, there's some that date back to very early builds of gold and silver, even older than Spaceworld 97. When they were still called pokemon 2. Could some of the Kanto mons (Pokemon 2) only the back sprites in the GREY replace the current spaceworld 97 back sprites for even more consistency? Because thier a 1 to 1 with the blue front sprites.

https://tcrf.net/Development:Pokémon_Gold_and_Silver/Sprites/CBB_Scratchpads


https://media.discordapp.net/attachments/452166186575200289/960310927742365706/unknown.png

jojobear13 April 11th, 2022 2:24 AM

Quote:

Originally Posted by SPazzzi95 (Post 10491785)
I have a suggestion about the back sprites, there's some that date back to very early builds of gold and silver, even older than Spaceworld 97. When they were still called pokemon 2. Could some of the Kanto mons (Pokemon 2) only the back sprites in the GREY replace the current spaceworld 97 back sprites for even more consistency? Because thier a 1 to 1 with the blue front sprites.

I'd only consider a few of them. These are from scratchpad files that were used for rough drafts and branstorming ideas. Some of these, like machamp and cloyster, look like they were an experiment with doing a sideways profile. And then there's mr.mime standing backwards in what was probably some crazy idea that never panned out. Some of them are just the same but missing touch-ups and adjustments. And others are based off the red-jp/green fronts. But there are a few good ones to pilfer.

metapod
pikachu
vulpix
ninetails
zubat
psyduck
golduck
rhydon

Akiak April 11th, 2022 5:41 AM

Given that this only has the 1st gen Pokemon, you could implement a habitat limitation for the randomizer. Habitats are a classification system that is exclusive to FRLG, so you could make it so wild Pokemon are only replaced by Pokemon in that same habitat. You'd need the space to add that detail to every Pokemon, though.

By the way, I was also wondering how the trainer randomization works. It says it only affects trainers with no roster customization. What does this mean?

SPazzzi95 April 11th, 2022 8:51 AM

Thats true i was only considering the ones that further match thier blue fronts. Some of them like you said cloyster and mr mime are very wonky in thier style. As in that stage of development, mid 1996 they were still trying to figure out how the newer back sprites would pan out going foward from the enlarged pixels in red and green.

jojobear13 April 11th, 2022 10:32 AM

Quote:

Originally Posted by Akiak (Post 10491920)
By the way, I was also wondering how the trainer randomization works. It says it only affects trainers with no roster customization. What does this mean?

Trainer roster data comes in two code formats. Boss trainers, such as the gym leader and rival fights (basically anyone with an actual name), are formatted such that each of their Pokémon can have its own level. These are not affected by the randomizer due to some details I have yet to work out.

No-name trainers, the regular shmucks hanging out on routes and in caves, are formatted such that all their Pokémon share one level value. Gamefreak did this as a space-saving measure. These folks get randomized.

LusoTrainer April 13th, 2022 1:22 AM

Here's a suggestion for an interesting feature: is it possible to add color to trainer sprites like the Pokémon ones?

isnowwayne April 15th, 2022 11:56 AM

I created an account (been a lurker for years) to thank you for these amazing QoL changes!

I appreciate these the most:
  1. The separate slot for HM moves is a godsend. I was never a fan of HM moves!
  2. Running shoes in Gen 1 is always a treat!
  3. The instant text and shortcut usage for HMs hastened my progress a bit.
  4. The Spaceworld rear sprites are far more detailed, and I have no idea why GF/Nintendo didn't stick with them in their Red/Blue release. I could Google this one later, though.

I do have suggestions:
  1. I did notice you said before that a full color hack would require another year, but I may have missed the sprites discussion. Could you make a patch that uses Gen 2 front sprites? It feels awkward to have polished rear sprites while the front sprites are still... Gen 1 being Gen 1.
  2. The level scaling is too much. I'm fresh out of Viridian City with a Charmander with Ember and a Nidoran♂️ with Horn Attack. The Bug Catchers in the Forest always wreck me with their Fury Attack Beedrills. It doesn't help Viridian City has no Potions. I can't level up in the wild, because it would strengthen the Beedrill and give them Twineedle. Perhaps it's better if the enemy level matched the level of the strongest Pokémon in the party, as opposed to them being at least 3 levels higher (from what I've observed.)
  3. In the battle screen and Pokémon moveset/stat screen, is it possible to display the moves' Attack and Accuracy? I often have to Google these for Gen 1, so I can better pick which moves to keep.

In conclusion, though, it's still a top-tier hack. Thanks for your dedication!

LusoTrainer April 15th, 2022 12:58 PM

Quote:

Originally Posted by isnowwayne (Post 10493122)
I did notice you said before that a full color hack would require another year, but I may have missed the sprites discussion. Could you make a patch that uses Gen 2 front sprites? It feels awkward to have polished rear sprites while the front sprites are still... Gen 1 being Gen 1.

But these backsprites from the SpaceWorld demo match the Gen1 front sprites from Red/Blue. You can add the Gen2 front sprites, but if you're doing that, why not match them with the Gen2 back sprites as well?

isnowwayne April 15th, 2022 1:47 PM

Quote:

Originally Posted by LusoTrainer (Post 10493136)
You can add the Gen2 front sprites, but if you're doing that, why not match them with the Gen2 back sprites as well?

Yeah, I can dig that. Though, I don't know how to put Gen 2 sprites into this hack.

MStern April 15th, 2022 2:11 PM

Gen 2 has a very different atmosphere from 1. If you really want those graphics, you can play a backport of R/B on the gen 2 engine. There is one that gives it full colors, which I find to very soulless l and why I like this hack better.

isnowwayne April 15th, 2022 9:50 PM

Quote:

Originally Posted by MStern (Post 10493162)
Gen 2 has a very different atmosphere from 1. If you really want those graphics, you can play a backport of R/B on the gen 2 engine. There is one that gives it full colors, which I find to very soulless l and why I like this hack better.

I agree with the atmosphere. If anyone could help educate me how to apply Gen 2 sprites into this hack, I'd appreciate it!

Edit: I found a bug.

I'm playing the master development patch 1.23.04. This is how you reproduce the bug:
  1. Start a new game. For specificity's sake, I had these options: "Fast!" text speed, "On" Battle Animation, "Set" Battle Style, and 60FPS.
  2. Get a starter. I chose Charmander.
  3. Do not fight Blue! Save the game, and then close it.
  4. Load the game. You'll find yourself in front of mom's house.
  5. At this point, you can go to Viridian City and get Oak's Parcel.
  6. Go back to Oak's laboratory and your rival will challenge you. He leaves afterwards as usual.
  7. Oak gives his parcel speech and then your rival returns as he should.

That's it. Nothing game-breaking, but I thought to mention.

jojobear13 April 15th, 2022 10:20 PM

Quote:

Originally Posted by LusoTrainer (Post 10492353)
Here's a suggestion for an interesting feature: is it possible to add color to trainer sprites like the Pokémon ones?

Quote:

Originally Posted by isnowwayne (Post 10493122)
I did notice you said before that a full color hack would require another year, but I may have missed the sprites discussion. Could you make a patch that uses Gen 2 front sprites? It feels awkward to have polished rear sprites while the front sprites are still... Gen 1 being Gen 1.

It's the scope of this rom hack to keep things Gen-1, particularly pre-1997. That includes color choices and art direction. Doing gen-2 color or sprites is out of scope for this project. The next revision will make it easier for people to add Gen 2 pokemon sprites and recompile on their own.

Quote:

The level scaling is too much. I'm fresh out of Viridian City with a Charmander with Ember and a Nidoran♂️ with Horn Attack. The Bug Catchers in the Forest always wreck me with their Fury Attack Beedrills. It doesn't help Viridian City has no Potions. I can't level up in the wild, because it would strengthen the Beedrill and give them Twineedle. Perhaps it's better if the enemy level matched the level of the strongest Pokémon in the party, as opposed to them being at least 3 levels higher (from what I've observed.)
The level is determined as follows: [highest player pokemon level] + [0 to 3] + [0 to 3 if the gym leader or champion theme is playing]. This mode was actually built for late/post-game rematches and New Game+ where it's assumed you have an evolved team with good moves (and the catch-up exp mechanic syngergizes with it for power-levelling). Turning the scaling off and playing in SET mode will give moderate difficulty. Despite this, I have chosen not to restrict the feature because some Sisyphian players actually like their playthroughs to be a constant unforgiving uphill battle.

Quote:

In the battle screen and Pokémon moveset/stat screen, is it possible to display the moves' Attack and Accuracy? I often have to Google these for Gen 1, so I can better pick which moves to keep.
Not without some creative engine rewrites that I haven't thought about. That information is stored in a different area that is not readily accessible on the status screen.

isnowwayne April 16th, 2022 4:53 AM

Quote:

The next revision will make it easier for people to add Gen 2 pokemon sprites and recompile on their own.
I understand the purist Gen 1 graphics approach. Would you include instructions on how to recompile the Gen 2 sprites?

Quote:

This mode was actually built for late/post-game rematches and New Game+ where it's assumed you have an evolved team with good moves (and the catch-up exp mechanic syngergizes with it for power-levelling).
Yeah, I figured it'd be better to enable this after I'm finished with Misty, so I'd at least have some coverage. It's nice to hear this confirmation, and I'm very eager to see for myself what the New Game+ has to offer!

jojobear13 April 16th, 2022 9:10 AM

Quote:

Originally Posted by isnowwayne (Post 10493337)
I understand the purist Gen 1 graphics approach. Would you include instructions on how to recompile the Gen 2 sprites?

You would replace the sprite files of your choosing in the space world folders and recompile clean. That’s all. Tech support for compiling should go to the pokered disassembly project.

Quote:

I'm very eager to see for myself what the New Game+ has to offer!
It’s a 90s-style NG+. So everything is the same except your old progression is carried over. Like Chrono Trigger or Threads of Fate.

It was made as an experiment in circumventing the one-save-file restriction. All your boxed mons and Pokédex info is preserved. This way you can play fresh without losing your old team. This also means you can smash your way through Kanto with an over leveled team, play with your old boxed Pokémon from the beginning, or activate scaling to make things interesting.

jastolze007 April 16th, 2022 11:22 PM

1 Attachment(s)
Not sure if this was fixed in a future version (I'm on an older source version) but the item ball pictured in the attachment causes the game to either softlock or totally crash the emulator.

The first time I tried to pick it up, the game said something glitchy and included the name of the last pokemon I battled then changed the music to play strange background noises.

The second time, it just crashed. I didn't battle anyone on that route that time so it didn't mention any names.

jojobear13 April 17th, 2022 5:26 PM

Quote:

Originally Posted by jastolze007 (Post 10493596)
Not sure if this was fixed in a future version (I'm on an older source version) but the item ball pictured in the attachment causes the game to either softlock or totally crash the emulator.

The first time I tried to pick it up, the game said something glitchy and included the name of the last pokemon I battled then changed the music to play strange background noises.

The second time, it just crashed. I didn't battle anyone on that route that time so it didn't mention any names.

It was fixed one or two updates ago. It's caused by referencing TM 20's name data from the right address but the wrong bank.

Carmilla April 18th, 2022 5:34 PM

how do u evolve pokemon that evolve by trading? and is there a detailed walkthrough for this rom hack?

jojobear13 April 18th, 2022 6:26 PM

Quote:

Originally Posted by Carmilla (Post 10494377)
how do u evolve pokemon that evolve by trading?

They evolve at level 45.

Quote:

and is there a detailed walkthrough for this rom hack?
Define "walkthrough". There is a readme file with a massive changelog that details everything that has been modified. There is a New Player's Guide for an overview on all the useful new stuff the player can take advantage of. There isn't a guide that walks you through the game step-by-step since the single player is pretty much the same as the original. For everything else, that information is open and available in the files within the data folder.

isnowwayne April 21st, 2022 8:13 PM

I'm proud to say that, after 45 minutes of research, I've managed to get Yellow sprites. Maybe I could research how to put Gen 2 sprites into it on my day off.

On a side note, my first Nuzlocke attempt failed due to Champion Blue's Alakazam. The AI improvements are amazing.

My only other QoL suggestion is to shorten the Poké Flute's cast time, if possible. Remove the long tune and make it work quickly, as though it's an Awakening?

I also couldn't figure out how Pay Day in the first slot would tip me off in the slots. Oh, and there's still the infamous trash can second switch bug in Surge's gym, but I suppose there's no way around it.

Actually a Fungus April 21st, 2022 10:11 PM

No updates, just thought you'd get a kick out of this! https://www.dropbox.com/s/otve88jaoluqn91/20220422_020615.jpg?dl=0

jojobear13 April 21st, 2022 10:23 PM

Quote:

Originally Posted by isnowwayne (Post 10495220)
I'm proud to say that, after 45 minutes of research, I've managed to get Yellow sprites. Maybe I could research how to put Gen 2 sprites into it on my day off.

Easiest way would be to use the "make clean" command. Then replace all the gen 1 png files with gen 2 png files. Remember that gen 2 back sprites need to be treated the same as the spaceworld back sprites due to their size.

Quote:

I also couldn't figure out how Pay Day in the first slot would tip me off in the slots.
I buried it in the readme file. If the pokemon at the top of your team knows pay day, go around and interact with all of the slot machines. If the slot machine is a lucky one, your pokemon will play its cry before you are asked if you want to play. Note that slots machines that are unplayable can be lucky.

Furthermore, your pokemon will cry when playing the slots. Like real slot machines, the slots in the game corner will rarely allow you to win unless it algorithmically determines you are allowed to win. Especially for jackpots, which the machine will never let you win unless allowed (the reel will move to cheat you like the last row of a Stackerz game). But your pokemon will let you know when these special modes are active. 1 cry means the next pull is set to be a "win state" by the machine for non-jackpot wins. 2 crys means the machine switched into "fever mode" which gives a very long string of winning pulls. 3 crys means the machine is in "jackpot state" and it will allow you to line up 3 bars or 3 sevens.

If you don't hear a cry, it means your pull is likely to be a losing one. Optimize your gains by betting 1 coin on these pulls.

Quote:

Oh, and there's still the infamous trash can second switch bug in Surge's gym, but I suppose there's no way around it.
It's fixed. But the second switch can appear in an adjacent can you've already checked. I'll look into that.
EDIT: Okay, so I understand what Gamefreak was trying to do and why they coded it the way they did. But the implementation itself is kinda bad, and it was coded with some incorrect assumptions about how binary ranges work. I did some rewriting of their code and moved some things around so that the trash cans work as intended. The switches are now both randomly set at the same time, and they can be discovered independently of each other. Vertical adjacency is now also just as likely as horizontal adjacency.

isnowwayne April 22nd, 2022 6:01 PM

Quote:

Easiest way would be to use the "make clean" command. Then replace all the gen 1 png files with gen 2 png files. Remember that gen 2 back sprites need to be treated the same as the spaceworld back sprites due to their size.
You're referring to the PNG files in the /pic folder, right? For what it's worth, I couldn't find a place to download Gen 2 PNG files by batch. There must be a better way than to download them one by one.

Quote:

I buried it in the readme file. If the pokemon at the top of your team knows pay day, go around and interact with all of the slot machines. If the slot machine is a lucky one, your pokemon will play its cry before you are asked if you want to play. Note that slots machines that are unplayable can be lucky.
Thanks for pointing it out. I missed the "#Tricks and Secrets" section in the README. I never play with audio, so I didn't notice the cries.

Oh yeah, in my attempts to figure out how to insert Gen 2 sprites, I ran into colorful challenges.

I succeeded in inserting Yellow front sprites, but I noticed I didn't have the option to enable Nuzlocke mode in the game. That freaked me out that I didn't have the latest master development patch 1.23.04. I also noticed certain folders available in the master_dev branch were not present in my local copy of shinpokered. Later on, I took a closer look at the code:
Code:

git clone https://github.com/jojobear13/shinpokered/ -b master --single-branch
cd shinpokered


Then, it dawned on me that I should replace "master" with "master_dev", like so:
Code:

git clone https://github.com/jojobear13/shinpokered/ -b master_dev --single-branch
cd shinpokered


It's a victory, because that gave me the missing folders and also Nuzlocke mode. So, you may want to revise the code in master_dev's INSTALL.md.

Carmilla April 22nd, 2022 8:24 PM

Quote:

Originally Posted by jojobear13 (Post 10494384)
They evolve at level 45.


Define "walkthrough". There is a readme file with a massive changelog that details everything that has been modified. There is a New Player's Guide for an overview on all the useful new stuff the player can take advantage of. There isn't a guide that walks you through the game step-by-step since the single player is pretty much the same as the original. For everything else, that information is open and available in the files within the data folder.

thanks that covers everthing i have one more question why do i always get a level 247 dratini and how can i evolve it? (it's lvl 247 if i have space in my party, 255 if it's stored on pc and after i draw it, it becomes lvl 237 in my party :/

abyssthesavior April 22nd, 2022 8:39 PM

Could this be put on the 3DS as a custom VC inject and possibly be compatible with Pokemon Bank, or is that latter part unlikely?

jojobear13 April 22nd, 2022 10:37 PM

Quote:

Originally Posted by abyssthesavior (Post 10495517)
Could this be put on the 3DS as a custom VC inject and possibly be compatible with Pokemon Bank, or is that latter part unlikely?

This is something that is in-progress over in the pokered disassembly discord server. Early research indicates that it's possible with Shin Pokemon, but it's not something I have planned for the immediate future.

Quote:

Originally Posted by Carmilla (Post 10495514)
thanks that covers everthing i have one more question why do i always get a level 247 dratini and how can i evolve it? (it's lvl 247 if i have space in my party, 255 if it's stored on pc and after i draw it, it becomes lvl 237 in my party :/

That's not supposed to happen. Under what conditions are you getting this dratini? Need more details.
EDIT: Make sure you apply your patch correctly. This is the #1 reason crazy stuff happens to people.

Quote:

Originally Posted by isnowwayne (Post 10495493)
It's a victory, because that gave me the missing folders and also Nuzlocke mode. So, you may want to revise the code in master_dev's INSTALL.md.

The _dev branches aren't really official releases. They're more or less for archiving and tracking my scratchwork. Regardless, the "git pull" command will help keep you updated.

LinkNinjaMaster April 24th, 2022 9:10 AM

Hi! I think I found a bug in the blue lite version v1.23.03L that I downloaded from the lite_dev branch a few weeks ago, applied to a clean Blue version. I don't know if it is already fixed.

This just happened to me with a Weepinbell in Erika's gym: Using Spearow I attack first with Peck, then it paralyzed my Spearow, next turn it obviously moves first and used Wrap, so Spearow is immobilized and next turn I switch to Vulpix. Everything OK when switching in, Weepinbell didn't attack. Next turn It outspeeds but uses Poison Powder and poisons Vulpix. I use Ember. Then it uses Wrap, I'm immobilized and so next turn I switch to Spearow, but as soon as Spearow enters the battle, Weepinbell uses Wrap again. I feel like maybe it was a one-time thing so I switch back to Vulpix, same thing happens. So I switch to Butterfree thinking the same is going to occur, but Weepinbell doesn't attack once again.

So yeah tl;dr Wrap users get to attack when the player switches if the Pokémon switching in has a status ailment, I just described the scenario in detail in case it was needed. I don't know if it's fixed already but I don't see any report in the github.

**Edit to avoid double post**

Oh and this one is just a small question but is there a version of Shin PokeRed/Blue that has the better movesets of Yellow? Not asking for new moves or movesets from other Gens, just the movesets of Yellow.

**Edit: additional glitch details and testing**
I just did another test with another trainer, this time with a Bellsprout, and this time I let myself get attacked with wrap on a statused Pokémon, then next turn I switch to another statused one (opponent uses Wrap at switch-in as expected) but then I immediately switch to a Pokémon without status and the same happens, wrap at switch-in. So I switch back to one of the previous ones with status effect, but this time around it does nothing at switch-in.

Now I'm doing further testing as I type, and switching between a statused Pokémon and a healthy one doesn't trigger any kind of glitch, no matter the order. Trainer ran out of Wrap PP so I restart. I switch a lot between my healthy Pokémon in my next test, Bellsprout doesn't status my Pokémon. In all of those switches, the alleged glitch never arises.
Next test I let it poison, paralyze and put to sleep a bunch of my Pokémon, with Spearow in particular being poisoned instead of paralyzed, and then switch into and from a bunch of Wraps. The glitch never shows up.
Then in the last test I recreate the first time's condition of Spearow being paralyzed and Vulpix being poisoned, while the rest of my team was healthy. I take a Wrap with paralyzed Spearow, and can't execute my attack for that turn. Switch to Vulpix. Nothing. I really start to believe it was a random glitch that's just not happening anymore. But then I let Vulpix take a Wrap after doing a non-damaging move, and switch to Spearow. Bellsprout Wraps again at switch-in. I switch to Vulpix, no further actions happen on that turn. I take a Wrap once again and next turn I switch to Spearow and the same happens. I repeat this one last time. It keeps happening.


...Long story short, I did a bunch of testing and the only setup I found that could replicate the glitch every time was having a poisoned Vulpix take a Wrap to the face, then switch to a paralyzed Spearow and the opponent would move before I could select any further action. I have no idea what is happening, and there's a chance that this was fixed in a more recent update, but this was so bizarre that I had to share it.

**Last edit I swear**
Something else NOT regarding the alleged glitch from before. I noticed that the AI keeps using status moves if I heal myself in-battle, so they decide their action after player item use. Is that intended or not?

jojobear13 April 24th, 2022 5:07 PM

Good post. Lot's of nitty gritty details for me to comb through.

Quote:

Originally Posted by LinkNinjaMaster (Post 10496166)
Something else NOT regarding the alleged glitch from before. I noticed that the AI keeps using status moves if I heal myself in-battle, so they decide their action after player item use. Is that intended or not?

There's a check I wrote that randomly "blinds" the AI to your lack of status if you used an item or switched. It's 50%. But I think I need to make some adjustments. Since AI routines are run on each move individually, this means the 50% is per-move that can cause a status. Which is fine if you're up against a paras with scratch and stun spore as its moves. But it's a different story with something like a bellsprout with wrap, poison powder, sleep powder, and stun spore. Since the 50% blinding check is run on each of the three status moves, the actual probability that it will use any of its status moves is 1-(0.5)^3 = 87.5%. Hence why it can sometimes feel like an enemy is always countering your usage of items.

Quote:

Oh and this one is just a small question but is there a version of Shin PokeRed/Blue that has the better movesets of Yellow? Not asking for new moves or movesets from other Gens, just the movesets of Yellow.
I've merged them into the level-up lists in the master branch. Some tweaking was required on some pokemon, notably the eevee lines, in order to smooth out some rough edges with progression.

Quote:

So yeah tl;dr Wrap users get to attack when the player switches if the Pokémon switching in has a status ailment, I just described the scenario in detail in case it was needed. I don't know if it's fixed already but I don't see any report in the github.
I was able to use your descriptions to recreate a test scenario and preserve it as a saved state. I've set things up against a high-speed ekans with wrap as its only move (note: I can directly edit opponents in the debugger to be whatever I need). Switching out of a trapping move is supposed to make the opponent lose a turn. But if your switch-in choice has a status then it is letting the opponent choose a move (not supposed to happen), so wrap gets chosen. I suspect that this is due to an oversight in how status effects are handled within the turn sequence. I will experiment more and look for a solution.

EDIT: Found the problem. Two issues are causing the observations.
1 - I have it so that, when a trapped pokemon switches, the trapper has FF written as its chosen move. This is a null value that is treated as "no move". In the section where an enemy's chosen move is recorded, either from a link cable value or from the AI making a selection, that FF from earlier is getting overwritten. This is how the opponent is able to use wrap when not allowed.
2 - When the player switches out of a trapping move, I made it so an EnemyActed bit gets set. This makes the battle engine treat the opponent as if it already used an item or switched. The result is a full turn denial. But I neglected to make this a two-way street since it's only supposed to apply to the AI; a player is (and always was even in vanilla) able to use items or switch in the midst of a trapping move even if the opponent switches on the same turn. This means that the check for the EnemyActed bit only gets run if the player's new pokemon is faster than the opponent's pokemon, and it was covering-up the aforementioned 1st issue. But if player switches out of a trapping move into a pokemon slower than the enemy trapper, then the cover-up never happens.

Solution: Make sure the FF null move is not overwritten. The player switching out of a trapping enemy should not set the EnemyActed bit. Instead, the null move should be checked-for during the TrainerAI (switching and item-use) function. If the null move is found, the AI will not switch or use an item. The enemy will then execute the null move as expected.

LinkNinjaMaster April 26th, 2022 8:47 PM

Quote:

Originally Posted by jojobear13 (Post 10496243)
(...) Found the problem. Two issues are causing the observations.
1 - I have it so that, when a trapped pokemon switches, the trapper has FF written as its chosen move. This is a null value that is treated as "no move". In the section where an enemy's chosen move is recorded, either from a link cable value or from the AI making a selection, that FF from earlier is getting overwritten. This is how the opponent is able to use wrap when not allowed.
2 - When the player switches out of a trapping move, I made it so an EnemyActed bit gets set. This makes the battle engine treat the opponent as if it already used an item or switched. The result is a full turn denial. But I neglected to make this a two-way street since it's only supposed to apply to the AI; a player is (and always was even in vanilla) able to use items or switch in the midst of a trapping move even if the opponent switches on the same turn. This means that the check for the EnemyActed bit only gets run if the player's new pokemon is faster than the opponent's pokemon, and it was covering-up the aforementioned 1st issue. But if player switches out of a trapping move into a pokemon slower than the enemy trapper, then the cover-up never happens. (...)

Oh wow. I was suspecting it had something to do with the speed but I couldn't manage to get conclusive evidence so I thought the status effect was the most likely culprit. I guess not!

jojobear13 May 1st, 2022 9:16 PM

I figured out a thing. I was able to increase the maximum game clock to 32767 hours (about 3.74 years).

SPazzzi95 May 1st, 2022 10:57 PM

I have another suggestion, could there be an optional npc in the japanese builds that brings back the flashing animations for some of the moves? It would be a pretty neat touch up.

jojobear13 May 2nd, 2022 9:37 AM

Quote:

Originally Posted by SPazzzi95 (Post 10498690)
I have another suggestion, could there be an optional npc in the japanese builds that brings back the flashing animations for some of the moves? It would be a pretty neat touch up.

Gotta say no to this one. Apparently I’m in the minority of people negatively affected by the original flashing. It makes me kinda barfy and gives me headaches.

SPazzzi95 May 2nd, 2022 7:34 PM

That's why i was suggesting for it to be optional.
I also never expected for you to be affected by the flashing, anyway thanks for your work jojo.

jojobear13 May 2nd, 2022 7:59 PM

Quote:

Originally Posted by SPazzzi95 (Post 10498970)
That's why i was suggesting for it to be optional.

I know, but I'd still have to reverse-engineer it and debug it. Which means hours and hours spent staring at it. I don't think I'm physically capable of implementing such a feature.

SPazzzi95 May 2nd, 2022 8:15 PM

Yeah understood it's better safe than sorry.

Carmilla May 4th, 2022 4:04 AM

Quote:

Originally Posted by jojobear13 (Post 10495536)
That's not supposed to happen. Under what conditions are you getting this dratini? Need more details.
EDIT: Make sure you apply your patch correctly. This is the #1 reason crazy stuff happens to people.

ordinary conditions and im sure i patched correctly i found many other bugs including seismic toss not working on ghost types and hyper beam recharging after KOing an opponent

jojobear13 May 4th, 2022 4:43 AM

Quote:

Originally Posted by Carmilla (Post 10499409)
ordinary conditions

Doesn't help. I need to recreate the issue. Game Corner? Wild encounter? What Route? What version? Post .SAV file?

Quote:

i found many other bugs including seismic toss not working on ghost types and hyper beam recharging after KOing an opponent
Those are intentional bugfixes.

Carmilla May 5th, 2022 4:30 AM

Quote:

Originally Posted by jojobear13 (Post 10499416)
Doesn't help. I need to recreate the issue. Game Corner? Wild encounter? What Route? What version? Post .SAV file?


Those are intentional bugfixes.

im playing the full shin_pokemon_blue_origback_v1.23.ips patch no custom changes this happened in the game corner. how can i post my .sav file here?

jojobear13 May 5th, 2022 8:02 AM

1 Attachment(s)
Quote:

Originally Posted by Carmilla (Post 10499759)
im playing the full shin_pokemon_blue_origback_v1.23.ips patch no custom changes this happened in the game corner. how can i post my .sav file here?

That helps. I found a typo that affected Blue and Green prize corner pokemon. You can re-patch fresh using the attached hotfix patch. The dratini can't be rolled back, but the prize corner should be fixed now.

darkestabsol May 5th, 2022 10:16 PM

I've been playing Green version 1.23 (not the hotfix) as an inject on my 3ds, and Misty's Staryu came up shiny when I battled Misty for the first time. I replayed the battle afterwards and the Staryu was normal the second time, so I assume it's just an oddity with shininess.

jojobear13 May 5th, 2022 10:36 PM

Quote:

Originally Posted by darkestabsol (Post 10500107)
I've been playing Green version 1.23 (not the hotfix) as an inject on my 3ds, and Misty's Staryu came up shiny when I battled Misty for the first time. I replayed the battle afterwards and the Staryu was normal the second time, so I assume it's just an oddity with shininess.

Aw man, my condolences. The next patch will be adding a 'mercy' feature for enemy trainer shinies.

Anyway, shiny-ness in generation 2 is determined solely by DVs. This what allows it to be backwards-compatible with generation 1 (and why the red gyarados stays red after trading it back and forth through the time capsule). Playing in SET mode makes enemy trainers have semi-random DVs assigned to their pokemon, so there is a chance they can come up shiny.

darkestabsol May 6th, 2022 12:27 AM

Quote:

Originally Posted by jojobear13 (Post 10500111)
Aw man, my condolences. The next patch will be adding a 'mercy' feature for enemy trainer shinies.

Anyway, shiny-ness in generation 2 is determined solely by DVs. This what allows it to be backwards-compatible with generation 1 (and why the red gyarados stays red after trading it back and forth through the time capsule). Playing in SET mode makes enemy trainers have semi-random DVs assigned to their pokemon, so there is a chance they can come up shiny.

Huh, neat. Either way, it's nice to hear that a mercy feature will be added in the future since nobody likes uncatchable shinies.

LinkNinjaMaster May 6th, 2022 9:58 PM

Wow, so now I found a completely different and crazy glitch in the same Shin Blue Lite v1.23.03L. But instead of writing a wall of text explaining the glitch like last time, I just recorded myself explaining it (badly lol).

https://youtu.be/8KAXUUpDKDw


In summary I encountered a glitch when booting up TM 17 Submission, canceling, then trying to boot TM 9 Take Down and the game goes crazy, starts to play the Low HP beep, some random cry, then you can't use the item, get stuck in a loop, and sometimes crashes depending on what happens.

The vid is still useful to see the glitch in action, however I later found that the glitch only happens with TM 9 Take Down, and the conditions for reproducing it seem to be pressing B at any point in the menu then trying to use TM 9. I don't think I've found any alternative info

(Also lol I forgot your username when recording the video so I'm sorry 🤣)

jojobear13 May 7th, 2022 9:52 AM

1 Attachment(s)
Quote:

Originally Posted by LinkNinjaMaster (Post 10500380)
Wow, so now I found a completely different and crazy glitch in the same Shin Blue Lite v1.23.03L. But instead of writing a wall of text explaining the glitch like last time, I just recorded myself explaining it (badly lol).

https://youtu.be/8KAXUUpDKDw


In summary I encountered a glitch when booting up TM 17 Submission, canceling, then trying to boot TM 9 Take Down and the game goes crazy, starts to play the Low HP beep, some random cry, then you can't use the item, get stuck in a loop, and sometimes crashes depending on what happens.

The vid is still useful to see the glitch in action, however I later found that the glitch only happens with TM 9 Take Down, and the conditions for reproducing it seem to be pressing B at any point in the menu then trying to use TM 9. I don't think I've found any alternative info

(Also lol I forgot your username when recording the video so I'm sorry 🤣)

It looks like it's got more to do with booting a TM at the end of a list. An offset is not being calculated correctly and is causing the game to access echo ram (which is a big no-no). A workaround is to move your cursor upwards once or twice more before booting the second TM (see attached video).

I think the best way to fix this is to remove Gamefreak's TM/HM code and replace it with what I wrote for the master branch. Gamefreak has the tm and hm names generated on the fly in order to avoid wasting space on a name list, but this in turn can end up causing problems when one goes around and modifies stuff.

SuperEgz May 14th, 2022 8:38 PM

I dont know if its because I am using a Red save file I downloaded to just test some of the later parts of the hack or something but I'm getting pokemon "leveling down" to level 50 when in the SS Anne tournament or in the random trainer.

Carmilla May 15th, 2022 3:37 AM

Quote:

Originally Posted by jojobear13 (Post 10499848)
That helps. I found a typo that affected Blue and Green prize corner pokemon. You can re-patch fresh using the attached hotfix patch. The dratini can't be rolled back, but the prize corner should be fixed now.

sorry for the late reply i hope that fixed it ill try it out as soon as possible and report back thanks a lot

jojobear13 May 15th, 2022 5:53 PM

Quote:

Originally Posted by SuperEgz (Post 10503278)
I dont know if its because I am using a Red save file I downloaded to just test some of the later parts of the hack or something but I'm getting pokemon "leveling down" to level 50 when in the SS Anne tournament or in the random trainer.

Post the .sav file so I can take a peek in the debugger

MStern May 16th, 2022 1:36 PM

- The new daycare is wonderful, especially for filling out your dex by evolving weak pokemon. Did you think about adding a PC to the daycare man's house? It would make the process a lot more convenient.
- I noticed pokemon taken from daycare evolves only once. If you put in Weedle, it will only evolve into Kakuna and not into Beedrill.
- I accidentally taught Dig as a field move and used up the TM. I don't think that should consume it.
- I would consider adding a visual indicator for the extra bag item space. It's easy to swap lists by accident and assume you've lost items.
- If you're adding alternate challenge modes like nuzlocke, I'd suggest adding support for single-pokemon challenge in the style of Jrose11. All it requires is the ability to change your starter to any arbitrary pokemon, which is normally done via cheat codes.

jojobear13 May 18th, 2022 8:26 PM

Quote:

Originally Posted by MStern (Post 10503922)
- The new daycare is wonderful, especially for filling out your dex by evolving weak pokemon. Did you think about adding a PC to the daycare man's house? It would make the process a lot more convenient.

Will do.

Quote:

- I noticed pokemon taken from daycare evolves only once. If you put in Weedle, it will only evolve into Kakuna and not into Beedrill.
This has more to do with the evolution routine. Gamefreak coded it to only handle one evolution per pokemon at a time. It will take some time to fully understand and address it without breaking anything.

Quote:

- I accidentally taught Dig as a field move and used up the TM. I don't think that should consume it.
Will do.

Quote:

- I would consider adding a visual indicator for the extra bag item space. It's easy to swap lists by accident and assume you've lost items.
A constant indicator is a bit tricky since all the tiles get wiped when the bag scrolls. But I can add a "swapping" notifier that briefly displays when the bag actually swaps.

Quote:

- If you're adding alternate challenge modes like nuzlocke, I'd suggest adding support for single-pokemon challenge in the style of Jrose11. All it requires is the ability to change your starter to any arbitrary pokemon, which is normally done via cheat codes.
Perhaps in a future update.

MStern May 19th, 2022 9:14 AM

Another thought: is it possible to stop cut trees from regrowing? They annoyed me ever since I was a kid, since unlike strength boulders there is no advantage to resetting the trees. It's one of those annoyances that Gamefreak always kept around for whatever reason.

jojobear13 May 19th, 2022 10:15 AM

Quote:

Originally Posted by MStern (Post 10504975)
Another thought: is it possible to stop cut trees from regrowing? They annoyed me ever since I was a kid, since unlike strength boulders there is no advantage to resetting the trees. It's one of those annoyances that Gamefreak always kept around for whatever reason.

It's not really possible due to how cut shrubs are implemented. The boulders are objects (like item balls), they can be shown or hidden, moved around, and count towards a map's maximum object limit. But the cut shrubs are part of the map's tileset that is drawn on the background layer (like signposts and bookshelves). You cannot change anything about the map's layout or tileset because this information is burned into ROM space. Cut works by utilizing a workaround while the current map is loaded in VRAM. It finds the shrub tile in vram and then overwrites it in real-time with that of a passable ground tile. The tradeoff is that the shrub will always come back when the map is loaded again from ROM.

MStern May 19th, 2022 10:41 AM

Interesting. You wouldn't think something as basic as those shrubs would require a hack like that. I can see the performance benefits, but in later gens I'd expect them being able to afford turning them into objects.

jojobear13 May 19th, 2022 3:48 PM

Quote:

Originally Posted by MStern (Post 10503922)
- I noticed pokemon taken from daycare evolves only once. If you put in Weedle, it will only evolve into Kakuna and not into Beedrill.

I did find a workaround for this. I made it so the daycare checks to see if the evolved pokemon you take back is able to evolve again. It wasn't too difficult since there are no pokemon that evolve more than twice.

LinkNinjaMaster May 20th, 2022 7:02 AM

Hello. It's the guy with the weird glitches again. Although I didn't found any glitch this time around. None caused by the game, at least. Probably.
I just started playing the latest stable master version. And I wanted to say that it feels pretty good for the Pokémon to have their Yellow movesets. But while I'm liking this version as well, I definitely prefer the lite version a little more, possibly for nostalgia reasons or whatever, but then again I have a small, somewhat contradictory request. Would you consider making a Lite version patch that has the Yellow movesets instead of the vanilla ones? I would love to play the lite branch with the updated movesets. And I honestly don't have enough experience with the code to build a custom version myself (yet). Thanks in advance! 😄

MStern May 20th, 2022 12:20 PM

I found a weird minor glitch with the pokedex. If you go down the list and look at the Area of each pokemon, eventually pressing A will make you quit back to the menu. It's not possible to reliably replicate - it seems to be based on the the exact moment you press the A button. Maybe something to do with the RAM?

jojobear13 May 20th, 2022 4:22 PM

Quote:

Originally Posted by MStern (Post 10505394)
I found a weird minor glitch with the pokedex. If you go down the list and look at the Area of each pokemon, eventually pressing A will make you quit back to the menu. It's not possible to reliably replicate - it seems to be based on the the exact moment you press the A button. Maybe something to do with the RAM?

I just checked it out in both shinpokered and in a vanilla rom. Confirmed that this is a good ol' fashioned Gamefreak bug. Congrats. You found a new bug in a 25 year old game.

Looks like it has to do with the value stored for the current menu item selection. Selecting "area" should be a value of 2. But what's happening is sometimes that value set to 3 which corresponds to "quit". It's a bug in the HandleMenuInput function. I'll figure it out in a couple days. Afterwards I'll post a bug report in the sticky thread in the Previous Generations section of Pokecommunity.

EDIT: Oh, this is interesting. Here is what is causing the problem. Button commands for menus are handled by the aptly-named HandleMenuInput function. This is stuff like pressing up, down, A, and B. This function has no problem with pressing buttons simultaneously. So if you are quickly navigating the pokedex menu and you hit A to see the area while not fully releasing DOWN, the game will think you pressed DOWN an additional time before pressing A. You can accurately reproduce this by placing the cursor over AREA then pressing DOWN+A simultaneously. You can even try this with other selections and the UP button.

LinkNinjaMaster May 20th, 2022 8:46 PM

Hello, just a quick question. I noticed that Butterfree in the master version 1.23 has its vanilla Red/Blue learnset instead of the Yellow one. Is this intentional? And does this happen with other Pokémon? Sorry for asking in case it's already changed in dev/future versions.

jojobear13 May 20th, 2022 11:39 PM

Quote:

Originally Posted by LinkNinjaMaster (Post 10505503)
Hello, just a quick question. I noticed that Butterfree in the master version 1.23 has its vanilla Red/Blue learnset instead of the Yellow one. Is this intentional? And does this happen with other Pokémon? Sorry for asking in case it's already changed in dev/future versions.

I didn't do a copy-paste of the Yellow learnsets. I looked at the changes made in Yellow and massaged them into the red/blue learnsets to create a hybrid. This is most visible in the eevee lines where Yellow's changes were more about your rival having a viable movelist.

LinkNinjaMaster May 22nd, 2022 9:07 AM

Quote:

Originally Posted by jojobear13 (Post 10505529)
I didn't do a copy-paste of the Yellow learnsets. I looked at the changes made in Yellow and massaged them into the red/blue learnsets to create a hybrid. This is most visible in the eevee lines where Yellow's changes were more about your rival having a viable movelist.

Ah, I see. Thanks for the answer. I feel like Butterfree should at least learn Confusion at Lv. 10 as in future games because otherwise it is kinda useless upon evolving, up until Lv. 12. Beedrill can at least deal decent damage with STAB Poison Sting firing off of its higher Attack stat (and hit Caterpie/Metapod super-effectively).

Hey another thing, would you consider making an additional "SET" battle setting that doesn't increase opponent trainers' Stat Exp. and experience? Kinda like the "FAST" and "FAST!" text option? I don't like playing in Switch mode but I feel like the early game in the current Set mode requires a lot of grinding to consistently win battles. In early-game you as a player don't have a lot of options to tackle the increased difficulty of trainers outside of grinding, but after Misty you start to get a lot of good moves (Bubblebeam, Dig, Thunderbolt, Body Slam) that equals the playing field.
I know that I can play in Shift mode up until then and just say no to the switch prompt, but it would be cool if you could add the extra option. Thanks

jojobear13 May 22nd, 2022 11:16 AM

Quote:

Originally Posted by LinkNinjaMaster (Post 10506040)
Ah, I see. Thanks for the answer. I feel like Butterfree should at least learn Confusion at Lv. 10 as in future games because otherwise it is kinda useless upon evolving, up until Lv. 12. Beedrill can at least deal decent damage with STAB Poison Sting firing off of its higher Attack stat (and hit Caterpie/Metapod super-effectively).

Never hurts to go back through the evos_moves file and check for things I missed. I general, I'll set moves to be learned earlier if there is a difference between Red and Yellow.

Quote:

Hey another thing, would you consider making an additional "SET" battle setting that doesn't increase opponent trainers' Stat Exp. and experience?
It's less involved to press B when asked to switch your pokemon. I'm running out of menu option bits.

Quote:

I don't like playing in Switch mode but I feel like the early game in the current Set mode requires a lot of grinding to consistently win battles.
You are overestimating how much StatEXP affects early-game trainers. It actually does very little to affect enemy stats in the early game because the bonus points it grants is a percentage based on your level. The equation is as follows:
Quote:

Points to Stat = 0.25 * SQRT(StatEXP) * (level / 100)
Consider a level 9 trainer pokemon where I've set the StatEXP to 640 per level.
Quote:

0.25 * SQRT(5760) * (9 / 100) = 1.69
Because of rounding, that's a mere +1 it gets to each of its stats.

jojobear13 May 25th, 2022 3:49 PM

I normally don't follow Reddit, nor do I have an account there. But the pokemon rom hacks subreddit is putting together a reference list of top rom hacks. If you have a moment, give Shin Pokemon some likes.

SPazzzi95 May 26th, 2022 9:37 AM

This is probably not a bug persay, but something i noticed when in the title screens of Red and Green but not Blue. This is also not the case in the actual Red and Green. Whenever the pokemon scrolls left it kinda cuts off whenever it's about to leave the screen. Especially with the larger sprites it's more obvious. I guess this is something worth noting.

Another thing to note during the intro scene where Gengar is fighting Nidorino. When Nidorino is jumping at Gengar. Im pretty sure that Nidorino is supposed to just hang in the air for a few seconds and then the title screen should show up.

Also here's a video i found for reference.

https://m.youtube.com/watch?v=4nWzt_Xu3X0

jojobear13 May 26th, 2022 9:25 PM

Quote:

Originally Posted by SPazzzi95 (Post 10507972)
This is probably not a bug persay, but something i noticed when in the title screens of Red and Green but not Blue. This is also not the case in the actual Red and Green. Whenever the pokemon scrolls left it kinda cuts off whenever it's about to leave the screen. Especially with the larger sprites it's more obvious. I guess this is something worth noting.

Another thing to note during the intro scene where Gengar is fighting Nidorino. When Nidorino is jumping at Gengar. Im pretty sure that Nidorino is supposed to just hang in the air for a few seconds and then the title screen should show up.

Also here's a video i found for reference.

https://m.youtube.com/watch?v=4nWzt_Xu3X0

Sounds like some minor adjustments could be made.

The title screen scrolls pokemon a certain number of tiles to the left per frame before erasing them. It's the same with every version, but I think the red/green sprites are making it more noticeable. I might be able to scroll it for a frame or two more before erasing it. The main thing to avoid is scrolling it so much that it rolls back around to the right side of the screen.

The intro cinematic is based on Blue. It looks like GF tweaked it so that the fade-out happens sooner for a more cinematic flair. I'll see if I can tweak it back.

SPazzzi95 May 27th, 2022 5:57 PM

Alright this is something i forgot to mention.
This is something really minor that has to do with getting the town map from Daisy in pallet. Instead of the text saying " It's a big map this is useful" In the japanese builds. It should go something like this " It's a map of KANTO!... It would be great if she gave it to me, right?"


And also in Jp Blue the pokemart sign is supposed to say "Shop" instead of "mart". In addition the Super Gameboy borders for the jp builds should say "pocket monsters"

jojobear13 May 29th, 2022 8:48 PM

3 Attachment(s)
Quote:

Originally Posted by SPazzzi95 (Post 10508674)
Alright this is something i forgot to mention.
This is something really minor that has to do with getting the town map from Daisy in pallet. Instead of the text saying " It's a big map this is useful" In the japanese builds. It should go something like this " It's a map of KANTO!... It would be great if she gave it to me, right?"


And also in Jp Blue the pokemart sign is supposed to say "Shop" instead of "mart". In addition the Super Gameboy borders for the jp builds should say "pocket monsters"

Here's what I'll use for a translation:
Quote:

text "A map of Kanto!"
line "...... Wouldn't"
cont "it be nice if you"
cont "could have it?"
done
To maintain style consistency, "Kanto" should be lowercase in this instance because it refers to a real world location (see "Guyana" and "Lightning American").

Attached are the fixes to the text tiles. The version texts in the Red-JP and Blue-JP SGB boarders are actually supposed to be off-center. Considering those borders are displayed all the time, I decided to keep them centered to prevent annoying the bejeezus out of people (me included).


All times are GMT -8. The time now is 8:52 AM.


Like our Facebook Page Follow us on Twitter © 2002 - 2018 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2016 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.

Acknowledgements
Use of PokéCommunity Assets
vB Optimise by DragonByte Technologies Ltd © 2023.