More actions
(19 intermediate revisions by 2 users not shown) | |||
Line 4: | Line 4: | ||
|description=Port of 3D Pinball - Space Cadet on Windows. | |description=Port of 3D Pinball - Space Cadet on Windows. | ||
|author=MaikelChan | |author=MaikelChan | ||
|lastupdated= | |lastupdated=2024/02/08 | ||
|type=Arcade Games | |type=Arcade Games | ||
|version=0. | |version=0.6 | ||
|license=MIT | |license=MIT | ||
|download=https://dlhb.gamebrew.org/3dshomebrews/spacecadetpinball3ds.7z | |download=https://dlhb.gamebrew.org/3dshomebrews/spacecadetpinball3ds.7z | ||
Line 15: | Line 15: | ||
It is based on the [https://github.com/k4zmu2a/SpaceCadetPinball PC decompilation] made by k4zmu2a, which uses SDL2 to render the game. This 3DS port has been changed to use native GPU rendering with the Citro3D library. | It is based on the [https://github.com/k4zmu2a/SpaceCadetPinball PC decompilation] made by k4zmu2a, which uses SDL2 to render the game. This 3DS port has been changed to use native GPU rendering with the Citro3D library. | ||
Current status: | |||
* Compatible with 3D Pinball - Space Cadet and the Space Cadet table from [https://en.wikipedia.org/wiki/Full_Tilt!_Pinball Full Tilt! Pinball]. | |||
* No menus, options, or a results screen. | |||
* It plays sound effects and music, provided the player supplies the music in OGG format. | |||
* Despite being playable, there are still some bugs present. | |||
==Installation== | ==Installation== | ||
'''Note:''' To run the homebrew you will need the game assets from the original PC game. | '''Note:''' To run the homebrew you will need the game assets from the original PC game. They are not provided. | ||
===3DS=== | |||
Copy .3dsx into the 3ds folder. Alternatively, copy the .cia to the SD card and install it with a title manager. | Copy .3dsx into the 3ds folder. Alternatively, copy the .cia to the SD card and install it with a title manager. | ||
Make sure you have your dspfirm.cdc in the 3ds folder | Make sure you have your dspfirm.cdc in the 3ds folder (required for sound in homebrew games). If you don't have it, [[DSP1 3DS|dump your DSP]]. | ||
Inside the 3ds folder, create a new folder named SpaceCadetPinball and copy the game assets into this folder. | Inside the 3ds folder, create a new folder named SpaceCadetPinball and copy the game assets into this folder. | ||
Optionally, since this port doesn't play MIDI files, you'll need to convert the music to ogg format (sample rate<44100Hz). | Optionally, since this port doesn't play MIDI files, you'll need to convert the music to ogg format (sample rate < 44100Hz). | ||
* 3D Pinball Space Cadet - Name the file PINBALL.ogg and place it with other assets in the SpaceCadetPinball folder. | |||
* Full Tilt! Pinball - Name the file TABA1.ogg and place it with other sound files in the SpaceCadetPinball/SOUND folder. | |||
===Citra=== | |||
Get the [https://citra-emu.org/ Citra emulator] if you don't have it. | |||
Open it and go to the menu File > Open Citra Folder. This will open the folder where Citra's configuration is stored. | |||
Go to the sdmc folder and create a new folder there named 3ds if it doesn't exist already. | |||
Enter the sdmc/3ds/ folder and create an empty file there named dspfirm.cdc. This will allow having audio in homebrew apps. | |||
Add the game assets and music file following the instructions in the previous [[#3DS|3DS]] section. | |||
==User guide== | ==User guide== | ||
Line 58: | Line 76: | ||
Start - Pause | Start - Pause | ||
==Compatibility== | |||
While it should run fine on New 3DS, it may experience slowdowns on a regular 3DS. | |||
== Known source ports == | |||
{| class="wikitable sortable" | |||
! Platform | |||
! Author | |||
! URL | |||
|- | |||
| PS Vita | |||
| Axiom | |||
| [[Space Cadet Pinball Vita]] | |||
|- | |||
| Emscripten | |||
| alula | |||
| [https://github.com/alula/SpaceCadetPinball GitHub] | |||
|- | |||
| Nintendo Switch | |||
| averne | |||
| [[Space Cadet Pinball NX Switch|Space Cadet Pinball NX]] | |||
|- | |||
| webOS TV | |||
| mariotaku | |||
| [https://github.com/webosbrew/SpaceCadetPinball GitHub] | |||
|- | |||
| Android (WIP) | |||
| Iscle | |||
| [https://github.com/Iscle/SpaceCadetPinball GitHub] | |||
|- | |||
| Nintendo Wii | |||
| MaikelChan | |||
| [[3D Pinball - Space Cadet Wii]] | |||
|- | |||
| Nintendo 3DS | |||
| MaikelChan | |||
| [[3D Pinball - Space Cadet for 3DS]] | |||
|- | |||
| Nintendo DS | |||
| Headshotnoby | |||
| [[3D Pinball - Space Cadet for DS]] | |||
|- | |||
| Nintendo Wii U | |||
| IntriguingTiles | |||
| [https://github.com/IntriguingTiles/SpaceCadetPinball-WiiU GitHub] | |||
|- | |||
| MorphOS | |||
| BeWorld | |||
| [https://www.morphos-storage.net/?id=1688897 MorphOS Storage] | |||
|- | |||
| AmigaOS 4 | |||
| rjd324 | |||
| [http://aminet.net/package/game/actio/spacecadetpinball-aos4 Aminet] | |||
|- | |||
| Android (WIP) | |||
| fexed | |||
| [https://github.com/fexed/Pinball-on-Android GitHub] | |||
|- | |||
| Web | |||
| stech11845 | |||
| [https://github.com/stech11845/SpaceCadetPinball-web GitHub] | |||
|} | |||
==Changelog== | ==Changelog== | ||
'''v0.6''' | |||
* Replace PC Related text by @korbosoft. | |||
* Add banner Sound Effect for the 3DS home menu by @korbosoft. | |||
'''v0.5''' | '''v0.5''' | ||
* On New 3DS, enable Vsync, high speed mode. | * On New 3DS, enable Vsync, high speed mode. | ||
Line 90: | Line 173: | ||
==External links== | ==External links== | ||
* GitHub - https://github.com/MaikelChan/SpaceCadetPinball/tree/3ds | * GitHub - https://github.com/MaikelChan/SpaceCadetPinball/tree/3ds | ||
Latest revision as of 09:34, 15 July 2024
3D Pinball - Space Cadet for 3DS | |
---|---|
General | |
Author | MaikelChan |
Type | Arcade Games |
Version | 0.6 |
License | MIT License |
Last Updated | 2024/02/08 |
Links | |
Download | |
Website | |
Source | |
This is a port of 3D Pinball - Space Cadet for Nintendo 3DS. It's originally a game that came bundled with Windows from Windows 95 up to Windows XP.
It is based on the PC decompilation made by k4zmu2a, which uses SDL2 to render the game. This 3DS port has been changed to use native GPU rendering with the Citro3D library.
Current status:
- Compatible with 3D Pinball - Space Cadet and the Space Cadet table from Full Tilt! Pinball.
- No menus, options, or a results screen.
- It plays sound effects and music, provided the player supplies the music in OGG format.
- Despite being playable, there are still some bugs present.
Installation
Note: To run the homebrew you will need the game assets from the original PC game. They are not provided.
3DS
Copy .3dsx into the 3ds folder. Alternatively, copy the .cia to the SD card and install it with a title manager.
Make sure you have your dspfirm.cdc in the 3ds folder (required for sound in homebrew games). If you don't have it, dump your DSP.
Inside the 3ds folder, create a new folder named SpaceCadetPinball and copy the game assets into this folder.
Optionally, since this port doesn't play MIDI files, you'll need to convert the music to ogg format (sample rate < 44100Hz).
- 3D Pinball Space Cadet - Name the file PINBALL.ogg and place it with other assets in the SpaceCadetPinball folder.
- Full Tilt! Pinball - Name the file TABA1.ogg and place it with other sound files in the SpaceCadetPinball/SOUND folder.
Citra
Get the Citra emulator if you don't have it.
Open it and go to the menu File > Open Citra Folder. This will open the folder where Citra's configuration is stored.
Go to the sdmc folder and create a new folder there named 3ds if it doesn't exist already.
Enter the sdmc/3ds/ folder and create an empty file there named dspfirm.cdc. This will allow having audio in homebrew apps.
Add the game assets and music file following the instructions in the previous 3DS section.
User guide
The Space Cadet table featured the player as a member of a space fleet where they complete missions to increase their rank.
Players accept a mission by hitting mission targets which select which mission they will take, and by going up the launch ramp.
Each mission has a set number of things for players to do, such as hitting the attack bumpers (which were a set of four bumpers at the top of the table) eight times.
Missions would end either when the goal is met, or when all of the lights under the launch ramp would turn off.
The lights would turn off after an amount of time, and could be each turned on by having the ball go over it, or by going on the launch ramp again.
Upon completing a mission, lights in a circle in the middle of the tables light up. When all of the lights in the circle lit up, players' rank would increase.
The ranks are: Cadet, Ensign, Lieutenant, Captain, Lieutenant Commander, Commander, Commodore, Admiral, and Fleet Admiral.
Controls
A - Launch the ball
L - Move the left paddle
R - Move the right paddle
D-Pad Left/Right/Up - Bump table
X - Start a new game
Y - Exit the game
Start - Pause
Compatibility
While it should run fine on New 3DS, it may experience slowdowns on a regular 3DS.
Known source ports
Platform | Author | URL |
---|---|---|
PS Vita | Axiom | Space Cadet Pinball Vita |
Emscripten | alula | GitHub |
Nintendo Switch | averne | Space Cadet Pinball NX |
webOS TV | mariotaku | GitHub |
Android (WIP) | Iscle | GitHub |
Nintendo Wii | MaikelChan | 3D Pinball - Space Cadet Wii |
Nintendo 3DS | MaikelChan | 3D Pinball - Space Cadet for 3DS |
Nintendo DS | Headshotnoby | 3D Pinball - Space Cadet for DS |
Nintendo Wii U | IntriguingTiles | GitHub |
MorphOS | BeWorld | MorphOS Storage |
AmigaOS 4 | rjd324 | Aminet |
Android (WIP) | fexed | GitHub |
Web | stech11845 | GitHub |
Changelog
v0.6
- Replace PC Related text by @korbosoft.
- Add banner Sound Effect for the 3DS home menu by @korbosoft.
v0.5
- On New 3DS, enable Vsync, high speed mode.
- Fixed some random crashes when exiting the game and pausing.
- Optimizations.
- Reduced memory usage.
- Build now can also generate a CIA file (thanks to MrHuu, #7).
- Top screen layout adjustments.
v0.4
- The game now loads the good font that's embedded in pinball.exe.
- In case that font is not available, the one in PINBALL2.MID is scaled down and has the same color palette as the other font, so it fits better and it's more readable.
- Also deleted the font that was included in EmbeddedData.cpp.
v0.3
- Now it runs almost at 60fps.
- Small layout arrangement improvements.
v0.2
- Improved performance, but it still doesn't reach 60fps.
- Arranged game layout to use both screens.
- Print error messages on screen in case the user doesn't have the asset files in the correct place.
v0.1
- No menus, options, or results screen.
- It plays sound effects and music (if the player supplies the music in OGG format).
- There are still some bugs here and there.
- It runs slow.