While We're Waiting...


el_pango

Member
Joined
May 31, 2006
Messages
145
Location
California
I'm posting this here so it gets the maximum amount of readers and also attracts attention from people who may be able to help in various ways, but are not coders; this is really something everyone can contribute to.

While we're waiting for more Pandoras to arrive, let's try to create some interesting homebrew as a team, preferrably a short console-style RPG, which open handhelds never seem to have enough of - and for tradition's sake (and to keep people from getting burned out), let's try to keep the dev cycle to two months.

Here's what we'd be starting with:
  • A pure C Allegro-based framework that sets up the hardware framebuffer for 400x240 and...
  • ...abstracts out directional pad and ABXY/LR/Panda/Start/Select input (I am in the process of adding touch).
  • ...has built-in timing and framerate management.
  • ...support for fast additive and subtractive blending of sprites (borrowed from Fblend).
  • ...has .mod/.xm/.s3m/.it playback (via the library DUMB). I tested this, and it plays full 44.1khz nicely without eating too much CPU time at 500 MHz.
  • A few orchestral tunes that were originally submitted for inclusion into the game KQ (see kqlives.sf.net), but never got used.
  • A (reasonably fast) light-mapped tile engine (white lights only) that runs on top of the above.
  • Heavily customized scripts for the tilemap editor Mappy that output to a format the engine already likes.

Here's who and what we'll need, so far as I can see it:
  • A -very- short story, ideally with only a few settings (not more than five towns, five normal dungeons and some kind of end boss dungeon).
  • A -simple- design and logic flow for a battle system, and a polished-but-easy-to-implement look and feel for this.
  • Very simple designs, again with logic flow for an agriculture/tech tree and/or a romance tree.
  • One or more people willing to get their hands dirty with asset creation, most notably monster art and BGM. It would be awesome to see lots of contributions from the community at large here.
  • A 'line producer' type person who can triage bugs, collect ideas, decide which features get added and which get cut (to keep to a deadline, a LOT of cutting may need to happen), and who can keep everyone on the same page (not me, I have horrible people skills). I should note that this is probably not a glamourous job and every decision you make will be found disagreeable by someone on the project, so you'll need to be comfortable with managing conflicting opinions.

Once we got it all done, the code would be released under a BSD-style license (FBlend, DUMB and Allegro all have licenses that would be compatible), and hopefully, it'd be tidy and modular enough that other people would make more games with it.

For simplicity's sake and with an eye toward the time constraint, I'd like to stick to pure 2D here. I would also probably argue against doing a script interpreter in-game and against a custom map editor, so we're probably going to be editing story text and placing story triggers directly in the code and map editor, so whoever's doing the maps may need to know a little bit about C or be willing to learn (although only the basics will be required).

I am willing to commit to a minimum of four hours of coding a week to make this happen and am okay with submitting status reports, taking directions and accepting non-glamourous tasks (after all, no one really likes polishing the menu animations for the nth time, but I'm willing to). We probably need three or four more core people who can make a similar time commitment between now and when it's done.

Anyone interested in making this happen? It would be kind of awesome if we had a release candidate ready to go on Valentine's Day.
 
SIMPSONS DID IT, SIMPSONS DID IT!!!
http://pandorapress.net/2010/09/13/making-a-game-part-one-the-idea/
 
Indeed.

In my case, I'm looking to the forum at large to complete step one and assist on step two, and in return, offering to do a big chunk of the heavy lifting on steps three and four (and hoping to find others similarly motivated). Think of it as our own stab at an Avatar Golf-style project, except without the golf or avatars.
 
Do you mean "2 months" or "2 months [tm]"? Two months end to end is a tall order for a much smaller game scope.

Offhand, I'd never have mappers/artists doing code; the skillset intersection is too limited, and strikes me as jst leading ot maintenance nightmares and sync problems. I'd just have reserved keywords that imply triggers or effects or the like and use those on the map.

That said, making a basic tile-engine is pretty easy, especially when target is high performance; I wrote a generalized one for GP32 and Palm PDAs back years ago (ie: target about 100mhz with no hardware acceleration) and piece of cake; I used a scripting language to allow game configuration and events and such (Small, which is now called Pawn; a single source file for the interpreter and compiler, very handy :p) Nowadays, with target like Pandora, it might be better to just use pygame .. no extra script languageneeded since you're using one, and proven set of libs, and performs well enough on pandora, and lets folks build it on their desktop and such no problem. *shrug* Allegro woudl help with that as well, but I'd go with SDL in that case (much wider port targets.)

Why that resolution anyway? 400x240 is sort of nasty :) Sure you can double it to pandora, but still :) I can see 'x*240' aiming for 320-400 I suppose, so it'd work on Caanoo/Wiz/etc and Pandora as well, though.

Do you already have the game engine or tile engine more or less done, or just starting it? most of your first requirements are pretty easy (abstract inputs etc all trivial; really, just use SDL and then you're _Done_ 90% of that.)

The hard parts are the game engine parts; the rendering, IO etc is trivial stuff since hardware is so advanced these days; game save/load management, event trigger, scripted events, map editor etc, thats the meat of it, and that could eat a lot of time :)

I'd help out, but I've done this a couple times already and have my own projects eating up my little free time :) Just let me say, not having to write your own code for everythign sure makes it easier.. laod png, just use the lib! play mp3 or mod or it, just use the lib; oh man, the joy :) (I wrote my own mod player, png and tga and jpg loader, etc, so it'd work on gp32 :p)

jeff
 
Good evening all,

I'll respond to the conversation more or less in order:

I meant two months to get to feature completeness, Two Months(tm) to add visual polish, better dialogue, etc. This should be doable if whoever supplies the initial ideas keeps them simple, and whoever chooses what features get implemented and which get rejected keeps simplicity in mind.

The tile engine is already more or less done and is being taken from an unfinished project (sorry if this part wasn't clear before). Unless there's an absolutely compelling reason to start this part over from scratch, I'd rather not - it's known to work, it ran nicely on GP2X, it has support for a few graphical tricks already written, and there is (incomplete) trigger and ambient sound support. (It's a little more complex than a pure tile engine as it's set up to do a bunch of per-pixel arithmetic for lighting.)

Since the engine code is already at least partly done, that does kind of lock in the language and library choices. Without wanting to get into a flame war about which is better, I'll just say I prefer C and Allegro and this project is going to stick with those for now.

400x240 was chosen for easy portability to 320x240 (Wiz, GP2X classic), and because it actually looks quite nice on the Pandora's display (if slightly retro). Whoever designs the look and feel of the HUD will need to ensure it splits neatly in two, so that we can pinch it in for 320x240 as needed.
 
Trying to get this going again.

  • Do you have too much free time?
  • Are you good at low-poly modelling, texturing or pixel art, but have nowhere to show off your work?
  • Do you frequently find ways to crash, exploit or otherwise break video games?
  • Have you ever looked at 'Prinny: Can I Really Be The Hero' and thought it needed an opensource replacement?

If you answered yes to any fo the above, let's collaborate! I have started working on a 2.5D engine and have a game concept* and look-and-feel in mind, but am a terrible artist, writer, tester and idea person and would love to form a team.

Here`s what I have so far:
blahn.png



*I have written up a doc, but it's not on my Pandora; I will post it later from home.
 
el_pango said:
Trying to get this going again.

  • Do you have too much free time?
  • Are you good at low-poly modelling, texturing or pixel art, but have nowhere to show off your work?
  • Do you frequently find ways to crash, exploit or otherwise break video games?
  • Have you ever looked at 'Prinny: Can I Really Be The Hero' and thought it needed an opensource replacement?

If you answered yes to any fo the above, let's collaborate! I have started working on a 2.5D engine and have a game concept* and look-and-feel in mind, but am a terrible artist, writer, tester and idea person and would love to form a team.

Here`s what I have so far:
blahn.png



*I have written up a doc, but it's not on my Pandora; I will post it later from home.
the picture looks very nice.good graphics.I cant help though not very techie.edit maybe you should post about it in the official pandora forum too.busier forum than here. :)
 
Last edited by a moderator:
I thought you were going with a jrpg, why the change of heart? Will you be keeping any rpg elements? Maybe do it similar to the ds castlevanias, namely have leveling up; weapon, equipment, and ability upgrades; and a shit load of stats. I'd be happy to give ideas and help test things but I don't having much coding or art skills (willing to learn tho :)).

I never played Prinny: Can I Really Be The Hero (don't have a psp) but it looks cool, is your game concept basically a strait clone of that game? I hope some people step up to the plate on this, I'd hate to see a possible new pandora game never even make it out of the gates. Good luck :)
 
MonkeyChops said:
I thought you were going with a jrpg, why the change of heart?
After looking at the initial level of enthusiasm here ~snickering~ and my own lack of experience and ability to get distracted and not finish projects, I decided that starting with a fully-featured console-style RPG might be ill-advised.

MonkeyChops said:
Will you be keeping any rpg elements?
Very yes.

MonkeyChops said:
Maybe do it similar to the ds castlevanias, namely have leveling up; weapon, equipment, and ability upgrades; and a shit load of stats. I'd be happy to give ideas and help test things but I don't having much coding or art skills (willing to learn tho :) ).
The way I had envisioned it was a bit more simplistic than recent Castlevania games - no weapon upgrades, fewer stats (I had kind of settled on STR (how much damage you could do), VIT (how long your health bar was) and DEF (combination of how likely monsters are to miss and how much you can get hurt)), but I am open to suggestions.
MonkeyChops said:
I never played Prinny: Can I Really Be The Hero (don't have a psp) but it looks cool, is your game concept basically a strait clone of that game? I hope some people step up to the plate on this, I'd hate to see a possible new pandora game never even make it out of the gates. Good luck :)

It won't be an exact clone, no. I like the buttonmashiness of Prinny, and the weird sense of humour it has and would like to recreate the feeling, but I want to go in a different direction storywise.

I'll have more to say later on tonight, but even if I can't find an artist, I still plan on releasing something - you'll all just have to be content with blocky, poorly-drawn characters. :)
 
Last edited by a moderator:
What will the attack be like? What kind of weapon will be used, similar to Prinny with the knives and jumping on the heads like mario? You didn't mention experience points, will there be leveling up? I always have more fun with games that have leveling. Will there be any magic or spells? Those are always fun, then you could have magic points, intelligence stats, and add the element of collecting magic points and/or new spells (perhaps by killing enemies and stealing their spells and/or mp). I have no idea if it fits into your vision or not but I'm also a huge fan of grappling hooks in video games :). Just some ideas for basic battle system. I think it would be easy to start there and then build the maps, enemies, and story around that.

What kind of story were you thinking of?
 
Here is what I have so far. Unfortunately, it didn't preserve the formatting when copypasting from abiword...




"Nella was right. This is an extremely stupid place to put a public notice." --Casandra

Casandra's Tale* will be a 2.5D action- and platforming-based role-playing game based on the imagined backstory behind the character Casandra from the universe that the opensource RPG KQ** takes place in for the OpenPandora handheld console.

Premise, Plot And Personality
This takes place roughly five years before the events of KQ, and Casandra is living in the city of Randen when she discovers (or is told about by Nella) a public notice inside a storage shed advising of a great evil sealed beneath the town and of sizeable reward for the safe return of a magical amulet that went missing from Randen's temple many years ago and is believed to have been split into five parts scattered througout the world that is capable of resealing the evil, since whatever this evil is is capable of breaking the seal every thousand years, and, as luck would have it, it's year 999 (to which Casandra responds 'Of course, like we've never seen -that- before'). Arming herself with her favourite knife, Casandra sets out to retrieve the amulet and collect the reward.

In-game, Casandra is snarky and sarcastic, and usually has either a pun or smart-alec reply during story text. On occasion, she may be vaguely aware that she's
inside a video game or some kind of stage- or screen-play and may make references to the fact that a certain event is a genre cliche or shake her head and sigh.

World Layout
The world in this game is a grid composed of nodes strung together by paths that the player may travel between them. Each node itself is a cylindrical platforming level 72 tiles in circumference and 20 tiles tall. Each tile is drawn rotate five degrees from the previous tile, such that 72 tiles placed on the same row would form a circle. Each cylindrical node may have an exit leading north, south, east, and/or west, and when used, these exits warp the player to the next cylindrical node in that direction on the grid. In this way, complex dungeons may be formed by stringing many nodes together in interesting ways, careful exit tile placement and the like.

The player travels around the cylinder as if the game were a traditional 2D platformer, with the restriction that the world loops onto itself; that is, if the player walks her character 72 tiles to the left and stops, she'll end up where she started, facing left.

The tiles themselves are to be models in Quake 2 format (for simplicity reasons). The maps are simply row-dominant arrays of bytes written and read directly, with no header.

The data structure for a node should look about like so:
Code:
typedef struct
{
	char			map_name[16]; 	// Player-readable name, padded with null bytes.

	unsigned char	bgm;			// Index into a directory of .mod music files, 
							// numbered from 1 - 255 or 0 for silence

	unsigned char	tileset;		// Index into a directory containing numbered
							// sub-directories full of tiles.
							// E.G. 0 for forest, 1 for ice cave, 23 for town, etc.

	unsigned char	monster_type_1;	// Indices into a directory of monster models, along with a monster table.
	unsigned char	monster_type_2;	// To avoid having too many models and textures loaded at once,
	unsigned char	monster_type_3;	// each node may only have four -kinds- of monster on it;
	unsigned char	monster_type_4;	// the actual number of monsters is only limited by available
							// spawn tiles.

	unsigned char	sky_type;		// Presets for different ways the skybox could look.
							// E.G. 0 for blue sky, midday, 1 for dusk, 6 for night with
							// northern lights.
							// This also affect the colour and angle of the 
							// primary directional light, the distance fog colour and the
							// colour the clouds are multiplied by.
} LEVEL_NODE;

typedef unsigned char	LEVEL_MAP[20][72];
LEVEL_MAP			collision_map; 
LEVEL_MAP			spawn_map;
LEVEL_MAP			ambient_sounds_map;
LEVEL_MAP			lightsource_map;
Enemy AI Handling
TBD.

Quests
Mostly TBD at this point, although we already know each chunk of amulet will have to be retrieved from a different part of the world and will be protected by a boss. The water gem part of the amulet (an aquamarine...?) will be guarded by a giant squid so Casandra can make some kind of joke or reference to tentacle hentai and how the game is about to blow its chance at being rated anything less than 'mature', even though nothing like this actually happens later.

Would like to have some side quests that make references to the original game, including the 'I like cheese.' NPC, crossing paths with Nella, and something that requires Casandra to cross paths with the character Temmin on a moonlit night, causing her to quip 'Lemme guess, we fall in love somewhere around chapter nine.'

Minigames
Some kind of Simon Says/buttonmashing game where you try to out-eat Sensar in Randen's pub...?


* this double-entendre is deliberate.
** see http://kqlives.sf.net/
 
This sounds very interesting and fun, I like your loop style approach, it sounds unique.

I never played KQLives but I just read through the plot and background from your link. I'm not sure though, is Randen within the borders of the Kingdom of Xenar? Does the kingdom exist yet and Is Casandra a part of it? Because I think it would be a good and logical tie-in with KQ to make the lost amulet that was split into 5 crystals actually end up being the X-Crystal once all 5 pieces are put together. Then Casandra uses the X-Crystal to make a staff and seal the evil once more. Perhaps by sealing an actual "portal of evil" (portals tie in with KQ, perhaps a portal to another planet over-inhabited with monsters?) or "hole to hell" with opal which becomes indestructible when the staff is near. To protect the portal of evil and keep it sealed, she creates an army armored with the indestructible opal and builds a castle over the portal which becomes the castle of Xenar and the kingdom of Xenar is born. This would explain why the Kingdom of Xenar only defended its self and never tried to invade others, for fear of the seal being broke if the staff of Xenarum left the kingdom. I also think it would be good if the previous seal had already been broken before Casandra's story starts or at the very beginning of the game. This way there is an explanation for the demons and monsters that are roaming the land and reeking havoc on it's citizens and why there is a reward for putting a stop to it. The evil under the town may have to be actually coming from different location for this idea to work, as Casandra could not build a castle where Randen stands since Randen still exists in KQ, although I'm unclear where the castle actually did stand on the map in KQ.

Instead of just finding a note that explains all about the evil and the crystals, perhaps Casandra is the lands greatest warrior and she is begged to do something about the evil by those in charge (king or mayor) and told of a ancient sage(s) which may know the source of the evil. Her journey begins by seeking out the sage and learning of the crystals and of the source of the evil and the possibility of creating an X-crystal out of the 5 broken pieces (with the sage's help) to seal off the portal for another 1000 years. The sage could turn out to be evil in the end. It could be reveled that he was just using you to collect the crystals and planned to keep the X-crystal for himself and create an army of invincible monsters to rule the world with, in which we could have either the end boss or near-end boss battle. I say near-end because Casandra still needs to seal off the portal and I was thinking it would be a cool end battle to have an actual portal in the final battle with countless monsters flowing out of it (possibly from both sides of the portal, keeping your loop stage concept in mind). Casandra would have to battle her way to the portal and use her staff to seal it once she's close enough. Perhaps to actually seal it she would have to strike the the rock above it (which just so happens to be opal) multiple times to cause a cave-in around the portal which would become indestructible with the use of the staff. At this point in the game Casandra could very well have made herself a armor suite of opal (or stolen the sage's, which of course would be a perfect fit) in preparation for taking on the portal. In this way Casandra would be near invincible and be able to take a lot of hits, so we could throw a ton of monsters at her - button mash galore!

I'm not sure how this story line makes sense with the evil every 1000 years thing though. Because why would the opal seal be destructible every 1000 years? There would have to be some patch work to cover that hole in the story or maybe just get rid of it all together. The portal could have been created by the evil sage as a means to acquire the missing crystals and monsters which he has some kind of control over (maybe he's actually from the other monster-planet?). Perhaps the 1000 years is just a lie told by the sage as a reason for the portal being opened?

Much of this is typical rpg story line, with the crystals, greatest warriors, and mosters and what not, but that leaves plenty of room for sarcasim from Casandra. I feel like I could keep going on and on but I don't know how much of this is what you want and I need to get some actual work done today, so tell me what you think.
 
Hi,

Sorry for not responding in a while - real life has been interfering with my free time.

With regard to storyline, I wasn't too worried about making sure everything was 'canon', simply because KQ itself is unfinished and has been through at least one story rewrite, so what is canon and what isn't is somewhat open to debate. That said, I do like the tie-in with the amulet actually being the X-crystal (or perhaps the head to a staff, and when properly placed, it becomes a Rod Of Cancellation).

Instead of just finding a note that explains all about the evil and the crystals
The reason for this seemingly ridiculous bit of backstory is it's a reference to a previous version of the game. The opening cinematic features Casandra walking through the outskirts of a town (Randen? Ekla? It's never made clear where...) saying "Nella was right. This is an extremely stupid place to put a public notice." Presumably, based on that and some of the alternate storyline, Casandra and Nella have worked together to help out or protect the town in some capacity before, so if we want Casandra to be some kind of legendary hero, this works. If you want to have some kind of crafting or tech tree system, maybe it's Casandra that does the fighting, and Nella's an expert weapon fabricator.

Because why would the opal seal be destructible every 1000 years?
This is a deliberate reference to something that happens in a -lot- of RPGs; there is some evil which has just broken free (or is about to break free, depending on the game), and as luck would have it, you're the hero that was born at just the right time to beat the crap out of it and put it back into its cubbyhole. (I had planned to have Casandra complain about the laziness of the writer once this plot point was revealed.)

Regarding the looped worlds thing, in my head it looked so cool, but I haven't been able to get it to match up on-screen. If I can't figure it out by the end of Friday night, it might be best to just go with a traditional 2.5D look and save the circular subworld thing for another game.

Again, sorry for lagging so much! I hope to post a .pnd of what I've done so far sometime next week.
 
Looks interesting. :)
We have a Low-Polygon Modeling Thread here somewhere, maybe there you can find some Artists and Stuff. ^^
How powerful is your Engine? Does it already run onto the Pandora? Is it fast enough to run in 800x480? Will there be more stuff in the Background (maybe more "2.5D" layers in the distance for a more "deep" effect? )
 
Back
Top