Please see #158 for why this project is closing.
Thanks to everyone who was part of this.
(a fangame)
Pokémon Red
game. However, it is not intended to be a perfect recreation; think of it as a remix.If you or someone else has been offended or treated poorly by a member of our community, please submit a complaint.
For report options, please see the Enforcement section of the Code of Conduct.
For more information on various topics regarding this project, please visit the following links:
This project follows the all-contributors specification (emoji key, command issue). See what you can do to contribute.
All Contributors ? |
Dependabot ? |
Don Jayamanne ? |
GitHub Actions ? ? |
I'm special ;) |
Ikuto Tsukiyomi ? ? |
Joe |
JohnnySD ? ? ? ? |
Jérémy LARDENOIS ?? ? |
Microsoft ? ? |
Mihai Ionut Vilcu ? |
Nando Vieira ? |
Nasser Kessas |
Nils Werner ? |
Porsce <3 ? |
Ravanger_101 |
Richard St Germaine |
Sam |
Shan Khan ? ? |
Sourcery |
Trunk ? |
Val=fλ ? ? ? |
Valerie ? |
WeiJian Chen ? |
basedpainnn |
hacking-mudkip ? ? |
just a weeb ? ?? |
.zip
file of this repository. Once it downloads, unzip and open it.python -m pip install -r requirements.txt
Finally, open main.py
in the app
folder.
If you encounter any problems when opening the game, feel free to create an issue.
>
is shown, press ⏎ Enter to continue. You may need to input text first.Y/N
is shown, you can enter Y or N for "yes" or "no" respectively.No text needed, just press ⏎ Enter:
Press Enter to continue.
>_
Type text from a bullet point (e.g. 1 or 2), then press ⏎ Enter:
Choose an option.
[1] - Save
[2] - Quit
>_
Type any variant of yes
, y
, no
, or n
, then press ⏎ Enter:
Would you like to save? Y/N
>_
Press any key:
OAK: Hello there! Welcome to the world of POKéMON!
_
Here's some extra information that isn't required to play the game, but might still be interesting.
Since this is a Python game, some elements will have to be changed from the original version. Here are some examples of challenging changes.
The game has to keep track of the many variables that make up a Save File. These include:
These are stored in a Python dictionary
variable, which is then saved to the external file .ppr-save
via Python's json
module.
Not to be confused with save data, game data is composed of the numbers and calculations that the game uses. These include:
Large sets of data may be stored as .json
files in the project folder. This is done to keep the program files concise. These files may be added, removed, or changed at any time.
Save file templates contain all the things the game must keep track of between sessions. On each save or load, the player's file is automatically updated with the latest data, in case an update was performed. This means that when the game is updated, the player can copy their .ppr-save
file into the new version, and the save file will automatically be updated with the latest data.
Pokémon Red is full of menus that look like the following:
Would you like to save your progress?
> Save
Don't Save
This has been changed to be more suitable for a text-adventure game:
Would you like to save your progress? Y/N
>_
This is done with code similar to the following:
import json
save = {
# Save Data
}
print('Would you like to save your progress? Y/N')
saveOption = ' '
while saveOption.lower()[0] not in ['y', 'n']:
saveOption = input('>') + ' '
if saveOption.lower()[0] in ['y']:
open('.ppr-save', 'w').write(json.dumps(save))
print('Game saved successfully!')
The user can use multiple save files by moving or backing up their .ppr-save
file to a different directory on their device. This has been implemented in the interest of user-friendliness and safety. Save files can easily be backed up, reset, or shared.
Pokémon games use Mystery Gifts to bring communities together and incentivise players to take part in events, and Pokémon PythonRed is no different. Codes can be given out in planned giveaway events to specific people, left online to be found by anyone, or even given in-person to specific people. Most of them are online, so you should try looking in places @TurnipGuy30 has been.
As of the time of writing, Mystery Gifts have not yet been implemented into the game. The base game will have to be completed first. For now, keep track of any codes you find.
Pokémon PythonRed Mystery Gift codes are easy to identify because they will always be given in the following format:
Pokémon PythonRed Mystery Gift #20: "POKEMONPYTHONRED"
(Yes, this is a valid code. Consider it a free trial. You're welcome.)
Redeemed codes will reward a player with in-game items or Pokémon.
Any person or group who finds or receives a code has no responsibility to keep it to themselves unless otherwise stated by the giver of the code.
Mystery Gifts are meant to unite the community and provide a fun way to interact with the game.