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)

jastolze007 February 9th, 2021 9:00 AM

I got a really lucky roll for my Magikarp's DV's: 15 HP, 13 ATK, 14 DEF, 14 SPD 15 SPC

Anyways, I can't remember, but does EV growth ever stop at Level 100? I thought I heard somewhere it does.

Also, regarding the randomized scaled trainer: How will the game handle an opponent PKMN if it's a slow growth rate and my PKMN is level 240 or higher? Would be interesting to see how the game would react.

darthbr February 9th, 2021 11:42 AM

Can you explain this in item usage part: (im changing some, i created one for Erika, instead of super potion)

cp $20
jr nc, .sabrinareturn
ld a, $A
call AICheckIfHPBelowFraction
jp c, AIUseHyperPotion
.sabrinareturn
ret

(she will use hyper potion when pkmn reach 20% of life? ) -- i want make Erika use Hyper Potion when reach red life, so, wich one is correct, Sabrina os erika?

cp $80
jr nc, .erikareturn
ld a, $A
call AICheckIfHPBelowFraction
jp c, AIUseHyperPotion
.erikareturn
ret

________________

; unused? joenote - repurposing for a new vendor on celadon dept store floor 3
CeladonMart3ClerkText::

(is this guy in game, or no?) if not, how do i activate him? is it too hard?

jojobear13 February 9th, 2021 8:55 PM

Quote:

Originally Posted by jastolze007 (Post 10278973)
I got a really lucky roll for my Magikarp's DV's: 15 HP, 13 ATK, 14 DEF, 14 SPD 15 SPC

Anyways, I can't remember, but does EV growth ever stop at Level 100? I thought I heard somewhere it does.

Also, regarding the randomized scaled trainer: How will the game handle an opponent PKMN if it's a slow growth rate and my PKMN is level 240 or higher? Would be interesting to see how the game would react.

EVs do not exist until gen 3. Instead you have stat experience. There is no cap on the total or with level. For each stat, it starts at $0000 and can go all the way to $ffff. Grinding still nets you stat exp regardless of level. Back when I was a kid, my friends and I would do the box trick to recalculate our higher stats after hitting lvl 100.

The experience cap does not apply to AI teams because they do not have experience nor do they level-up. Their level is set to whatever and it’s used for calculating stats and other things. I’m pretty sure I capped the random trainer to 255 some months. I’ll have to double check that later.

Quote:

Originally Posted by darthbr (Post 10279061)
Can you explain this in item usage part: (im changing some, i created one for Erika, instead of super potion)

cp $20
jr nc, .sabrinareturn
ld a, $A
call AICheckIfHPBelowFraction
jp c, AIUseHyperPotion
.sabrinareturn
ret

(she will use hyper potion when pkmn reach 20% of life? ) -- i want make Erika use Hyper Potion when reach red life, so, wich one is correct, Sabrina os erika?

cp $80
jr nc, .erikareturn
ld a, $A
call AICheckIfHPBelowFraction
jp c, AIUseHyperPotion
.erikareturn
ret

________________

; unused? joenote - repurposing for a new vendor on celadon dept store floor 3
CeladonMart3ClerkText::

(is this guy in game, or no?) if not, how do i activate him? is it too hard?

Here’s how to read the item usage code. Note that ‘$’ signifies a hex number. I prefer to work in hex since it makes bits line up nicely in debugging tools.

If the value in register ‘a’ is less than $20 (basically a $20 out of $ff random chance), then check to see if hp is less than 1/$A of max (basically check if hp is down to 1/10th). If hp is in fact that low, use a hyper potion.

The extra celadon vendor is only in the master branch. You would have to re-add all the needed scripts for that map and add his sprite to the map’s object header file. I’m stuck phone-posting for a while, so I can’t really provide detailed instruction at this time.

jojobear13 February 9th, 2021 8:59 PM

Quote:

Originally Posted by charphantom96 (Post 10278031)
Any chance of you making a shin Pokemon yellow hack?

There’s a non-zero chance, but I’m currently at max capacity when it comes to projects.

darthbr February 10th, 2021 2:05 AM

Quote:

Originally Posted by jojobear13 (Post 10279366)
EVs do not exist until gen 3. Instead you have stat experience. There is no cap on the total or with level. For each stat, it starts at $0000 and can go all the way to $ffff. Grinding still nets you stat exp regardless of level. Back when I was a kid, my friends and I would do the box trick to recalculate our higher stats after hitting lvl 100.

The experience cap does not apply to AI teams because they do not have experience nor do they level-up. Their level is set to whatever and it’s used for calculating stats and other things. I’m pretty sure I capped the random trainer to 255 some months. I’ll have to double check that later.



Here’s how to read the item usage code. Note that ‘$’ signifies a hex number. I prefer to work in hex since it makes bits line up nicely in debugging tools.

If the value in register ‘a’ is less than $20 (basically a $20 out of $ff random chance), then check to see if hp is less than 1/$A of max (basically check if hp is down to 1/10th). If hp is in fact that low, use a hyper potion.

The extra celadon vendor is only in the master branch. You would have to re-add all the needed scripts for that map and add his sprite to the map’s object header file. I’m stuck phone-posting for a while, so I can’t really provide detailed instruction at this time.

No problem mate. Im using Master one. Its Just to know if its in game. Thank you!!

__

what is the possibility to have pokemon following you and each one have his own miniature?
https://www.pokecommunity.com/showthread.php?t=382380

you can check here too
https://tcrf.net/Proto:Pok%C3%A9mon_Gold_and_Silver/Spaceworld_1997_Demo/Pok%C3%A9mon

_ other point <
the symbols are great, but they dont show if my pokemon is male or female ;(

jojobear13 February 10th, 2021 9:27 AM

Quote:

Originally Posted by darthbr (Post 10279536)
No problem mate. Im using Master one. Its Just to know if its in game. Thank you!!

__

what is the possibility to have pokemon following you and each one have his own miniature?
https://www.pokecommunity.com/showthread.php?t=382380

you can check here too
https://tcrf.net/Proto:Pok%C3%A9mon_Gold_and_Silver/Spaceworld_1997_Demo/Pok%C3%A9mon

_ other point <
the symbols are great, but they dont show if my pokemon is male or female ;(

I added male/female symbols as an aide for gen 2 compatibility. If a player is catching a 'mon in gen 1 with the intent to transfer it to gen 2, then it is useful to know what sex it is. Pokemon that are unsexed, always male, or always female do not show a symbol at this time. It's mostly cutting out a redundancy to save on rom bank space.

I've been looking into adding following pokemon. The main hurdle is to first backport the follower pikachu from yellow and get it working correctly. There's some problems I haven't quite figured out. Like with backporting GBC color, I'll probably try a few things, fail utterly, then come back to it some weeks later and have more success.

darthbr February 10th, 2021 12:30 PM

attacks:

db LT_SURGE,$1
db 1,1,THUNDERSHOCK
db 3,1,THUNDERBOLT

i want make pikachu use thundershock as priority move, like first move, is it right?

cha0ticbrah February 10th, 2021 1:29 PM

Love the edition of green version, how would one go about randomizing wild encounters and trainer pokemon at the very least?

jojobear13 February 10th, 2021 6:46 PM

Quote:

Originally Posted by darthbr (Post 10280080)
attacks:

db LT_SURGE,$1
db 1,1,THUNDERSHOCK
db 3,1,THUNDERBOLT

i want make pikachu use thundershock as priority move, like first move, is it right?

Here is how to read this:
Line 1 - find trainer instance 1 of the LT_SURGE trainer type.
Line 2 - ‘mon in roster position 1, move slot 1, override to Thundershock.
Line 3 - ‘mon in roster position 3, move slot 1, override to Thunderbolt.

jojobear13 February 10th, 2021 6:52 PM

Quote:

Originally Posted by cha0ticbrah (Post 10280117)
Love the edition of green version, how would one go about randomizing wild encounters and trainer pokemon at the very least?

There is a bash script that was written to do this. Check the randoshinred folder. If on windows, you need a Unix terminal to run it. The terminal must also be able to run VIM. You can install Cygwin (choosing VIM as an option in the installer) in order to run the script.

darthbr February 11th, 2021 4:44 AM

Quote:

Originally Posted by jojobear13 (Post 10280302)
Here is how to read this:
Line 1 - find trainer instance 1 of the LT_SURGE trainer type.
Line 2 - ‘mon in roster position 1, move slot 1, override to Thundershock.
Line 3 - ‘mon in roster position 3, move slot 1, override to Thunderbolt.

sorry if im dumb, but i just want to know, if 1 is like priority move, will be the first attack... i didnt get the '' find trainer instance 1 of the LT_SURGE trainer type.''
so, Surge raichu, is 3 right? move slot 1, the first move always will be thunderbolt?

jastolze007 February 11th, 2021 9:09 AM

Were you ever able to test the level cap thing? I tried doing it myself by using rare candies and then leveling up after compiling the mod, but it started a new game on me and I couldn't test it without starting over. The only change I made was purchasing rare candies early and changing the price to something more affordable. Not sure why it started a new game, but whenever you're able to get a chance could you confirm that leveling on level 101 in battle doesn't reset your EXP? I'd really appreciate that. I love this game regardless of what happens.

jojobear13 February 11th, 2021 9:55 AM

Quote:

Originally Posted by darthbr (Post 10280459)
sorry if im dumb, but i just want to know, if 1 is like priority move, will be the first attack... i didnt get the '' find trainer instance 1 of the LT_SURGE trainer type.''

Trainer Types are how trainers are categorized; these are your Youngsters, Rockets, Gentlemen, etc. There are of course multiple team rosters within each type, so you have to specify which team to point to for that category. For example: db SONY3, $3 points to the champion rival team that contains Charizard.

Quote:

so, Surge raichu, is 3 right? move slot 1, the first move always will be thunderbolt?
Thunderbolt will always be in Raichu's slot 1. It will not have priority in the same way Quick Attack has priority. It's just one of the four move slots that every pokemon has.

Moves can be given priority in func_battle.asm under the HighPriorityMoves function. You can see where I've commented-out lines for adding additional moves. This applies globally to the battle engine, so giving Thundershock priority here will make that true for all pokemon using Thundershock.

jojobear13 February 11th, 2021 2:20 PM

Quote:

Originally Posted by jastolze007 (Post 10280711)
Were you ever able to test the level cap thing? I tried doing it myself by using rare candies and then leveling up after compiling the mod, but it started a new game on me and I couldn't test it without starting over. The only change I made was purchasing rare candies early and changing the price to something more affordable. Not sure why it started a new game, but whenever you're able to get a chance could you confirm that leveling on level 101 in battle doesn't reset your EXP? I'd really appreciate that. I love this game regardless of what happens.

I'll do some testing this weekend and get back to you.

jastolze007 February 12th, 2021 12:26 PM

Quote:

Originally Posted by jojobear13 (Post 10280911)
I'll do some testing this weekend and get back to you.

Just wanted to let you know I ran a test on my starter at level 101 and it actually gained XP, which is what I was after. Thanks again, man!

Also, a request for the randomizer: Could you make it an option to make all trainers have random teams after the initial battle? Like, each time you challenge them, they have a different team, but the same amount and keep their levels? That would require a lot of work, I'm sure. But, if that were possible and you had time, I'd definitely give it a go!

jojobear13 February 13th, 2021 1:06 AM

Quote:

Originally Posted by jastolze007 (Post 10281507)
Just wanted to let you know I ran a test on my starter at level 101 and it actually gained XP, which is what I was after. Thanks again, man!

Also, a request for the randomizer: Could you make it an option to make all trainers have random teams after the initial battle? Like, each time you challenge them, they have a different team, but the same amount and keep their levels? That would require a lot of work, I'm sure. But, if that were possible and you had time, I'd definitely give it a go!

I'll think about it.

I did find some problems that I'm trying stress-test:
  • Medium-slow and slow rate 'mons reaching their soft level cap in battle causes an infinite loop.
  • On top of that, under the same conditions in the master branch, the exp bar function does a divide-by-zero.
  • The experience on the status screen, after exceeding 10-million exp, displays the wrong amount because the function that prints it is limited to seven digits.

You might want to run with version 1.19.2-development. I think I've fixed the listed problems.

Meister_anon~Master_o f_None February 15th, 2021 3:37 AM

Quote:

Originally Posted by jojobear13 (Post 10095577)
You could deposit all but your fainted pokemon in the pc, and then watch as you black out after taking 3 steps.

XD lol kill bill?! I thought this was pokemon.

jojobear13 March 14th, 2021 8:54 PM

Just wanted to chime-in. I've started making decent use of the labels for issues on github. Take a look at the issues tab to see what I've been up to. You can see the bugs and enhancements that I'm tracking, the investigations that I'm working on, which issues are found in a retail copy of red & blue, and which ones have a fix and are going into the next patch.

charphantom96 March 18th, 2021 5:59 AM

Quote:

Originally Posted by jojobear13 (Post 10312722)
Just wanted to chime-in. I've started making decent use of the labels for issues on github. Take a look at the issues tab to see what I've been up to. You can see the bugs and enhancements that I'm tracking, the investigations that I'm working on, which issues are found in a retail copy of red & blue, and which ones have a fix and are going into the next patch.

Nice, looking forward to it
This is my favorite Gen 1 rom hack

Fennekinluvr1116 March 21st, 2021 2:02 PM

I know you implemented the softlock warp, but there's one issue with it; you can only use it if you have all the pause menu options unlocked (meaning you have the Pokémon and Pokédex items in the menu), meaning if you get softlocked before getting the Pokédex you're legitimately softlocked. Granted this isn't as much of an issue since it's at the very beginning of the game and you can get back to that point after only a couple minutes of in-game time (plus I believe there's only one or two ways to softlock before you get the Pokédex and you have to do it intentionally or just incredibly dumb), but I thought it was worth mentioning regardless. It's really nice to be able to re-fight trainers to grind, though, saves so much time and so much money on replacement FitBits lol. Keep up the great work, I'm sure I'll be usng this hack for many years to come! 😘

jojobear13 March 22nd, 2021 12:04 AM

Quote:

Originally Posted by Fennekinluvr1116 (Post 10320018)
I know you implemented the softlock warp, but there's one issue with it; you can only use it if you have all the pause menu options unlocked

Interesting...I'll have to look into that. Glad you are enjoying things.

jojobear13 March 25th, 2021 11:25 PM

Quote:

Originally Posted by Fennekinluvr1116 (Post 10320018)
I know you implemented the softlock warp, but there's one issue with it; you can only use it if you have all the pause menu options unlocked (meaning you have the Pokémon and Pokédex items in the menu),

Here's what I've discovered. You always have the "Pokemon" menu option. It just won't open if you have no pokemon. That just leaves the "Pokedex" menu option to look at. It was easy to implement around this, but I quickly discovered two issues that the softlock warp causes if you don't have the pokedex: 1) You can skip the first rival battle. 2) You can skip getting your first pokemon. Given this, I've decided that the softlock warp should require the pokedex for stability. I'll make it so the "It's not the time to use that" text plays if the player tries to use the warp invalidly.

Now as for early-game softlocking, the only one I know of that applies to Shin Pokemon right now was discovered by Shenanagans Smash a few years ago. This madman managed a 2-minute softlock by abusing the bug that de-constrains NPC movement. The next version of Shin Pokemon will not allow this as one of my dev commits fixes this bug. Roaming NPCs will be constrained to 5 steps on each axis so the girl NPC cannot move beyond the top-right tip of Red's house (x=8, y=3).

Aside from that one, there are no other pre-pokedex softlocks in the US red/blue versions that are currently known.

jojobear13 March 28th, 2021 8:47 PM

The Easter Bunny has come early with a release of version 1.20! This release focuses on increasing the stability of the hack. There's more support for offshoot projects that want a higher level cap, some improvements to vblank periods that alleviate graphical artifacts, improvements to how overworld sprites update to account for scripted movement, and a whole host of minor retail-present glitches and oversights that I've ignored until now.

That doesn't mean there's no candy to be found among all these vegetables. The rival's missing text when you lose has been restored. Furthermore, players who run the master branch in SET style are in for a special challenge when attempting to catch mewtwo; it won't let you use master balls and picks its moves using trainer AI.


Quote:

#Hack-Induced Bugfixes & Adjustments since last version:
-----------
- Prevent infinite loop for 'mons hitting level softcap when maxl_level is set greater than 237
- Fixed water tile strangeness during vblank
- Prevent vblank from running twice in a row during direct-SCX scrolling; fixes scroll artifacting
- Fixed a problem where lack of a move terminator on one NPC was causing writes to the shadow ram
- Fixed rare candies to recognize a level softcap when maxl_level is set greater than 237
- Fixed infinite loop at 100+ level softcaps
- Fix exp bar divide by zero at 100+ level softcaps
- Fixed an issue where overworld sprites won't load after scripted movement during map scrolling
- Attempt at fixing issues where NPCs face the wrong way during scripted events
- Fixed an issue where catching a transformed ditto gives it 0 DVs
- Softlock teleport will now say it cannot be used if you don't have the pokedex yet
- Fixed Ditto showing up in the gender ratio list (master branch only)
- Tower ghosts no longer display a gender or caught symbol (master branch only)
- Corrected the encounter table in the power plant (lite branch only)
Quote:

#New features & adjustments since last version:
-----------
- Adjusted daycare to allow exp values over $500000
- Allow up to 8 digits when displaying experience on the status screen
- L: block doesn't disappear when level hits three digits
- Fixed bugged npc movement constraints
- Reactivated lost text that was meant to play when you lose to your rival
- Fixed the instant-text glitch that can happen in the bike shop
- Fixed using escape rope in bill's house and the fan club
- Fixed amazing man glitch when triggered by a hidden object
- Fixed amazing man glitch in the route 16 gate
- Fixed holding left to force past the cycling road guards
- Fixed tower ghost pic not loading after exiting status screen
- Fixed being able to leave the safari zone without clearing the event
- Fixed bumping into invisible shrub
- Minor tweak to Pallet Town object data for Prof Oak
- Added ledge to route 25 to prevent softlock
- Fixed menu not clearing if A is held after saving
- Minor tweaks to the Rival's object data in various maps
- In SET battle mode, Mewtwo has AI when picking moves and prevents you from using master balls (master branch only)
- Male-only and female-only pokemon will show a gender symbol if the feature is active (master branch only)

jojobear13 March 30th, 2021 7:08 PM

Marky Sparky (SparkStarMAS89) is doing a playthrough of Shin Pokemon Red. I would be remiss to not send some traffic his way.

jojobear13 April 10th, 2021 11:03 PM

2 Attachment(s)
Something new coming down the pipe. I managed to implement a basic gamma shader for built-in color correction. See my report over at Decomp & Disassembly. I've attached before & after images. This is great if play with an IPS-moded gameboy or an AGS-101 SP.


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.