- 2
- Posts
- 2
- Years
- Seen May 21, 2023
Hi! There are a lot of very creative and talented people here. In contrast, I am a huge nerd who loves numbers.
Presenting: The Emerald Semi-Randomiser!
What does that mean?
Usually, every trainer in the game has a team hand-picked by the developers according to level, difficulty, class etc. I believe I have created an algorithm that emulates that process, and picks an appropriate team every time you start a pokemon battle. This means every trainer battle in the game is new each time you play it- but never truly random. In this romhack, you're forced to play blind against whatever terrors my algorithm has generated for you.
As of a3, your encounters are randomised too!
I've combined this with a couple of small QoL changes (with more planned) to release a beta. Ultimately, I want to create a pokemon game you can play comfortably from your bed without itching to look up boss teams or level caps on your phone.
Changelist (besides the obvious)
Spoiler:
Shop changes------------------------------------
- Rare Candies sold for $1 in all shops
- Pokeball prices quartered in all shops
- All evo items are purchasable in Lilycove Department Store 2F
Pokemon changes-------------------------------------------
- Evo items have been changed to work like evo stones (e.g metal coat)
- Sky Pillar Rayquaza has been changed to Level 40
- Milotic and Trade Evos now evolve by level up at level 36
Text changes ------------------------------------------------
- Gym statues now display the game's level caps
- Birch opening speech changed
Otherwise, pokemon are identical to vanilla Emerald as far as I'm aware. Unless something really REALLY bad happened.
- Rare Candies sold for $1 in all shops
- Pokeball prices quartered in all shops
- All evo items are purchasable in Lilycove Department Store 2F
Pokemon changes-------------------------------------------
- Evo items have been changed to work like evo stones (e.g metal coat)
- Sky Pillar Rayquaza has been changed to Level 40
- Milotic and Trade Evos now evolve by level up at level 36
Text changes ------------------------------------------------
- Gym statues now display the game's level caps
- Birch opening speech changed
Otherwise, pokemon are identical to vanilla Emerald as far as I'm aware. Unless something really REALLY bad happened.
Screenshots of gameplay:
Spoiler:
Here's a potential Norman fight:
And here's a visual simulation of the algorithm trying to pick some pokemon. Note that it happened to skip raticate 30 times this run!
Common trainer classes have more diverse pools. These are predictable, but the variance may throw you off if you're unprepared.
Showing off the Evo changes, TM changes, and scaling trainer battles!
Shop changes..
![[PokeCommunity.com] Pokemon Emerald Semi-Randomiser [PokeCommunity.com] Pokemon Emerald Semi-Randomiser](https://cdn.discordapp.com/attachments/307193835879006210/1001319198011703426/screenshot1.png)
And here's a visual simulation of the algorithm trying to pick some pokemon. Note that it happened to skip raticate 30 times this run!
![[PokeCommunity.com] Pokemon Emerald Semi-Randomiser [PokeCommunity.com] Pokemon Emerald Semi-Randomiser](https://cdn.discordapp.com/attachments/307193835879006210/1001319209919328378/unknown.png)
Common trainer classes have more diverse pools. These are predictable, but the variance may throw you off if you're unprepared.
![[PokeCommunity.com] Pokemon Emerald Semi-Randomiser [PokeCommunity.com] Pokemon Emerald Semi-Randomiser](https://cdn.discordapp.com/attachments/307193835879006210/1001326409723154502/unknown.png)
Showing off the Evo changes, TM changes, and scaling trainer battles!
![[PokeCommunity.com] Pokemon Emerald Semi-Randomiser [PokeCommunity.com] Pokemon Emerald Semi-Randomiser](https://cdn.discordapp.com/attachments/307193835879006210/1004489700167393291/unknown.png)
Shop changes..
![[PokeCommunity.com] Pokemon Emerald Semi-Randomiser [PokeCommunity.com] Pokemon Emerald Semi-Randomiser](https://cdn.discordapp.com/attachments/307193835879006210/1001327526825689128/unknown.png)
What's happening behind the scenes?:
Spoiler:
This bad boy is the BST curve.
It's the "big dial in the middle of the dashboard" for the semi-randomiser, as pokemon are chosen based on this curve that I just completely eyeballed first try and made no revisions to. We should probably try to adjust this.
Some pokemon like Shedinja, Slaking and Medicham have their BST weights altered a bit due to their abilities. Otherwise, this thing will just keep on picking pokemon, checking if they're eligible for the team, and expanding the criteria if not. I've taken care to avoid any and all infinite loops in this process- if cornered, the algorithm will just think for a while and then throw out a random mon.
![[PokeCommunity.com] Pokemon Emerald Semi-Randomiser [PokeCommunity.com] Pokemon Emerald Semi-Randomiser](https://cdn.discordapp.com/attachments/904702992794681385/998762034151837867/unknown.png)
It's the "big dial in the middle of the dashboard" for the semi-randomiser, as pokemon are chosen based on this curve that I just completely eyeballed first try and made no revisions to. We should probably try to adjust this.
Some pokemon like Shedinja, Slaking and Medicham have their BST weights altered a bit due to their abilities. Otherwise, this thing will just keep on picking pokemon, checking if they're eligible for the team, and expanding the criteria if not. I've taken care to avoid any and all infinite loops in this process- if cornered, the algorithm will just think for a while and then throw out a random mon.
Can I play this?
Probably!! I've included a bps patch as an attachment, which you can apply here.
I can only give a resounding "it SHOULD work!" to the mod as a whole, which is why I'm putting out a beta. I want to fine-tune the difficulty curve and squash any remaining bugs. Please let me know what you think!
Note, if you try this- Rival battles have been 'fixed' so that they always have their starter, so the first rival battle will be the same as vanilla. The randomising begins at the first youngster.
Current version: a3
Credits
I totally stole this idea off of PokemonChallenges' stream because he was talking about it and I thought I'd try my hand at it. Shout outs to the people in pret discord who put up with my shenaniganery, I've never coded C before so it was real helpful to have people to nudge me in the right direction. And thank you to Alex N for so much early feedback!
Uses the following premade edits:
- Reusable TMs courtesy of Paccy and Hiroshi Sotomura
- Sold Out! TMs from Lunos
- Running Indoors by TheXaman
- DizzyEgg's Nature Colouring
- NobodySociety's No-Reel Fishing
Attachments
Last edited: