- Windows operating system
- XAMPP installed
- Flash Browser (for playing the game)
- Launch XAMPP Control Panel
- Start the
ApacheandMySQLservices
- Open phpMyAdmin by navigating to http://localhost/phpmyadmin/
- Create a new database named
pandanda - Import the
pandanda.sqlfile (located inUtils/Database) into this new database- This will set up your Database
- Clear all existing files in
C:\xampp\htdocs\ - Copy all files from the
MediaServerfolder intoC:\xampp\htdocs\- This will set up your Media Server
- Run
start.batfrom theSFSServerfolder- This will launch the SmartFox server with all server-side code
- Navigate to: http://localhost/register.php or use the in-game register
- Register a new account
- Open Flash Browser
- Navigate to: http://localhost/
- Enjoy your private Pandanda server!
- If you encounter issues, ensure:
- All services are running in XAMPP
- The database was imported correctly
- All files were copied to the correct location
Before starting, ensure you have the following tools installed:
-
Python
- Download from python.org.
- When installing, make sure to check "Add python.exe to PATH" to avoid potential issues.
-
JPEXS Free Flash Decompiler
- Download from GitHub.
- This tool is required to decompile SWF files.
Edit pandanda.swf
- Open
pandanda.swfwith JPEXS. - Use the text search tool (top bar) to search for the original domain (e.g.,
localhost). - Edit the domain string to your domain if you plan to host this files somewhere else.
- Because this file contains obfuscated code, use the right editor. The right editor is only needed for this file!.
- Click "Edit P code" to make the change.
- Save the file, and on the top toolbar click save again, than close JPEXS.
-
Decrypt SWF Files
- Use the
dectool.pyscript to decrypt them:- Place the SWF file (e.g.,
UI/game_ui.swf) in the same folder asdectool.py. - Run the script to generate a decrypted file ending in
.dec.swf.
- Place the SWF file (e.g.,
- Use the
-
Edit SWF Files
- Open the decrypted SWF file with JPEXS.
- For example, try to change the "Friends" string to "Liabilities":
- Use the global search tool to locate "Friends".
- Edit the string in the appropriate file (e.g.,
PlayerCard). - Save the changes and close JPEXS.
-
Re-Encrypt the File
- Run the
dectool.pyscript again to re-encrypt the file. - Replace the old SWF file in your base game with the newly modified version.
- Run the
- The
config/clientin the database is base64 encoded. Use the file encoder/decoder from base64decode.org. - Most of the Server Side code you will care about is inside
SFSServer\sfsExtensions - If changes don't appear in your game try to clear the cache.
- If you want to use a client rather than Flash Browser simply modify an already existing one (e.g., from a Club Penguin server) to point to your domain (e.g., http://localhost/)
- If you plan to host this files on a server rather than
localhostyou will need to modify mostlypandanda.swf,pandandaLogin.swfandconfig.xml (from both Media Server and SFS Server - The server can be started on a linux server using
start.shinstead ofstart.bat
Pandanda Rewritten - Implemented the original in-game register.
While I tried to bring this project to what I consider a "good enough" state, I only had so much time to work on this so there always remains room for further Improvements.
- I will never open a public server
- This repository is neither owned by me nor is it gonna be maintained for long
- Make sure to download it before someone succeeds in taking it down
If you find this project useful and build upon it, please consider open-sourcing your improvements so the whole community can benefit from them. Huge thanks to everyone involved in making this a reality!