PandoraPanic!

Description

PandoraPanic is a mini-game compilation, which is a collaborative project from the GP32X and OpenPandora communities.

This game is currently (early 2009) under discussion on the Pandora forums.

Release01 of PandoraPanic! out now. See Downloads below.

We have released release01 of PandoraPanic! But release02 is a high possibility so if you are a programmer/artist etc(even beginning programmers!) and have a contribution, contact us.

Downloads

Videos

Release Trailer

Getting Started

On Linux

This is my experience with Linux. The setup may not be helpful to anybody else. –tef

Setup

  • In your working directory, run:
  • Run codeblocks, opening an existing project, which is the .cbp file in the PandoraPanic directory you just created
  • Accept changing all the files to build with GNU GCC1)
  • In the toolbar at top, change your “Build Target” to “Lin Release”
  • If you're starting from scratch, you're ready to go to it! I started out by playing with the SpaceInvaders game to see how things worked, eventually changing pretty much all of it but appreciating the framework it provided. Thanks, pstudio!

On Windows

Setup

  • First you need Code::Blocks with mingw, downloadable here
  • For path relevance i'm going to assume you installed in C:\Program Files\CodeBlocks. Just replace with your directories if you chose to install somewhere else
  • Next you need the SDL headers and libs, extract this file into c:\Program Files\CodeBlocks\mingw (if folder does not exist, make it, I can't remember : )
  • Now download PandoraPanic framework and Penjin3D BaseCode (links at the top of the page - or via SVN) and extract them into a folder (programming for instance) but also in their own folders (PandoraPanic and Penjin, so D:\programming\PandoraPanic for instance)
  • Start Code::Blocks
  • Load PandoraPanic.cbp (located in programming\PandoraPanic)
  • If it asks to select a compiler, select: GNU GCC compiler
  • If will ask for some global paths, enter the following (only the base path is required):
  • MinGW - the path to your MinGW installation (the lib and include folder should be inside this folder)
  • Penjin - Path to the Penjin files
  • gp2x_sdk - In case you want to compile for the GP2x set this to the install dir of the SDK
  • libogc - Only needed for Wii compile, set it to whatever
  • pandora_sdk - In case you want to compile for the Pandora, set it to the folder with the ARM toolchains and libs
  • Select the W32 Release or Debug build and build it

If there are any errors or missing things in this windows guide, please let me know so i can make it more accurate. markoez [at] pirate-games [dot] co [dot] uk

Vista x64 fix:

  • Start Code::Blocks and load up PandoraPanic.cbp
  • Make the following changes to Project → Build Options → W32 Debug and W32 Release → Linker settings
  • Change “Program Files” to “Program Files (x86)”
  • The project should now build properly

General

Moving your source to a new framework

It seems to take about three steps:

  1. Move all your files into the new framework. For me these were:
    • My State.cpp file
    • My State.h file
    • My images/___ directory of pngs
  2. Add your new files to the project! Use pull down menu “Project → Add Files…”
  3. Edit the following files to include your game. Just look for where they deal with SpaceInvaders and add your game in, too.
    • MiniGames.h
    • MyGame.cpp
    • userStates.h

Hint

While developing, it's nice to have the framework run only your game! I achieved this in MiniGames.h by setting MAX_GAMES=1 and then placing my game first in the list.

User Manual

Contributions

Mini-GameContributorsDescription
BadVistaToddPut Vista where it belongs!
BallDropZacaj,billykaterCatch the ball!
DistractedMathsMarkoeZUse your brain!
DoubleNubTroubleMarkoeZShoot the targets!
JumperMarkoeZJump towards the star!
OneButtonBanditMigglesGet 3 in a row!
PanicAttackToddDon't Panic!
PanJoustMarkoeZJump the birds!
PongMigglesBeat the CPU!
PunchWrestlertrabitboyHit the brute!
ReflexoclbdkFollow the instructions!
PlanderPokeParadoxFly the Rocket!
SpaceInvaderspstudioShoot the alien!
SpellingContestpstudioSpell!
Rotating TurretB-ZaRShoot the Missile!
MemoryBlocksB-ZaRMemorize the symbols!
SnatchABeerfoxblockSnatch the other guy's beer!
TheCountJobfoxblockCount which colour is displayed the most!
ArenaDragons_SlayerFight the monsters!
PangrockthesmurfUse your spears to pop the balls!
MusicContributors
Titlepferguso
Game Wonpferguso
Game Lostpferguso
CreditsRooster
NervousRooster
Title 01mcobit
|Game Won 01A_Llama
Game Lost 01James Tubbritt
ArtworkContributors
Menu interfaceKagato
Birds and Platforms(PanJoust)Dragons_Slayer
Robot (Jumper)Niqk_Dude

Volunteers

Please post your handle here as well as a link(messageboard profile, etc) to contact you if you can help with the project (artwork, sounds etc). I know several people have left messages on the forums, I'll try and make time to scoop up these posts and link to them here, although help unifying this list is welcomed.

UserSkillContact
KagatoArtistGP32X Profile
Mr GonzoArtistGP32X Profile
nemArtistGP32X Profile
TheBrainSquidArtistGP32X Profile
adamorjamesArtistGP32X Profile
BakawhiteArtist/MusicianGP32X Profile
A LlamaMusicianGP32X Profile
mcobitMusicianGP32X Profile
pfergusoMusicianGP32X Profile
RoosterMusicianGP32X Profile
svernMusicianGP32X Profile
socketSoundsGP32X Profile
PrometheusSound Effects/ArtistGP32X Profile
GrusoSFX/Music/UserManualGP32X Profile
DroneBProgrammerGP32X Profile

Screenshots

1) Please press cancel or setup the Pandora compiler in Code::Blocks, especially if you have commiting access! This message only appears since you haven't setup the compiler for Pandora.

Discussion

Kai FrankeKai Franke, 2009/05/11 21:07

Hey, I programmed a little Minigame with a segway driving up platforms but I just can't move it to the framework. I started with changing distracted maths but now I tried renaming the files and adding them to the framework described in the “getting started” section but it doesn't want to compile. I get the error:

obj/lin/Release/StateSegway.o||In function `StateSegway::StateSegway()':|
StateSegway.cpp:(.text+0x19b3)||undefined reference to `vtable for StateSegway'|
obj/lin/Release/StateSegway.o||In function `StateSegway::StateSegway()':|
StateSegway.cpp:(.text+0x1bf3)||undefined reference to `vtable for StateSegway'|
||=== Build finished: 2 errors, 0 warnings ===|

can anybody tell me what I have to do? I'm running out of options

Kevin Winfield-PantojaKevin Winfield-Pantoja, 2009/05/11 23:35

I'm not sure what you may have done wrong here. The build errors are only half the picture and all I can tell from them is that the virtual functions are messed up. If you can either post your header/source file to one of those paste sites or just email them to me and I'll (hopefully) be able to work out what went wrong from there. Oh and thanks for using this discussion system… I do believe you are the first to put it to use!

EDIT: To add some insight, vtable errors normally means that a vitual function is missing. In this case the State's virtual destructor was only declared but not implemented.

 
homebrew/games/pandorapanic.txt · Last modified: 2010/06/29 12:25 by pokeparadox
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki