SoCoder -> Blogs Home -> Blogs
Created : 15 November 2007
Edited : 15 November 2007
Accepting SuggestionsThe next JNK Collection for DS.
The plan was this.
Finish off a nice Gem-based puzzle game, stick it on the new DS Homebrew site, then work on a DS sequel to that.
The Gem-based puzzle game fell apart fairly rapidly.
Well, ok, it didn't! If I keep it incredibly blocky, then it DOES actually work well. The problem is that if I try to make things nice and smooth, the DS's strange "Flickering Sprite" thing crops up and messes it all up. Either that, or my sprites keep overwriting each other because they're not neatly in a grid, or a whole bunch of other stuff. I gave up after the 3rd attempt. The 3rd time was no more lucky than the other 2!
So, that's on the backburner, and today I decided to get started on something I should've done a long long time ago.
A Green 8-bit collection for DS.
I'm going to work within much of the limits of the old 8-bit compo. That is, to draw a bunch of generic tiles, then constantly reuse those in lots of different games, thus reducing the amount of overall "niceness" I need to bother fitting in! No silly sprite crap, now! I can pile my way through games and shove them into the engine in no time!
Yeah, it's kinda lazy, but it worked the first time, right!?
Objects so far. (all 8x8 tiles)
Coloured variety of ..
Squares, Raised squares, Lowered squares, Circles, Smaller circles, Even smaller circles, and then some "Ship" like Arrows and Triangles..
There's also a variety of Platdude poses, each with 4 differently coloured Platdudes!
So, I'm now looking for game suggestions. List a bunch of games, classic or current, and I'll see if I can warp them into some kind of bizarre retro 8-bit tiny game.
The Challenge : One game per day.. spending no more than 1 day working on each, unless absolutely necessary.
The following is a list of game ideas that are, might or might not end up in the game, and will be added to as ideas are suggested, and games are completed..
(Note that all finished games will be named "Tiny-Whatever", just like in the original.)
Finished (In the game.)
Half-done (Unfinished, but might appear as an "Easter Egg" hidden game.)
Planned (Will more than likely be in the game.)
Centipede - Shootey Snakey!
Plat - Well... Obviously!
Maze - Top down maze thing, probably Sokoban style.
Tron - It'd be nice to have a portable light-cycles game.
Frogger - Hoppity Hoppity Hop!!
Matrix Blaster - It was fun to play in the original, might be strange on the DS, but... I'll give it a go. If not, then I'll just retro fit it back into Missile Command.
Marble - Guide the marble around the maze.
Slalom - Wiiiii! Skiiiii!
Mummy - Evil Platdudes will try to kill you! Open all the boxes up!
Invaders - Blast away at generic looking baddies!
Driller - Deeper Mr PlatDriller! Deeper!
Gems - That Gem puzzler, but without any unnecessary scrolling
Hero - Rescue the oddly similar looking miners.
Fodder - Run around destroying bases and killing bad guys.
Thrust - Fly around mazes, rescuing blobs.
Pang - Blow up the balls.
Considering (Might be in the game if I can work out how!)
Hi-Rise - Destroy the building, land the chopper.. But quicker, and much more arcadey, 'cos the original bored the crap out of me.
Quiz - A Quiz would be nice, but it needs LOTS of questions! So, probably not.
Multiplayer (If I can be bothered doing any kind of Multiplayer then these will be added.. Otherwise it means having to work out some kind of AI stuff. ARGH!)
Tron - The AI for Tron is something I'm quite used to, so this is only listed here for Multiplayer purposes.
Tanks - Shoot each other over hills. (... I worded that strangely, and am now imagining a totally different game)
Tanx 'n' Stuff - Grab flags, then guard them at your base. (It's an Amiga game)
Combat - Drive around shooting each other.
Gravity Power - Fly around shooting each other.
Quake - Run around shooting each other.
Bomberman - Run around bombing each other. Would require specially designed icons!
Pong - More like Star Trek : Pong than plain Pong.
Rejected (Can't imagine how I'd do it.)
;JNKTiny Grand Theft Auto
;JNKTiny Metal Gear Solid
;JNKTiny Quake III Arena
;JNKTiny Flight Sim 2002
;JNKTiny yet Massive Multiplayer Online Role Playing Game
^ straight from the original Green Collection's sourcecode (having said that, I could kind of imagine attempting a couple of those, nowadays! And, in fact, I've even listed Quake!!)
Any more game ideas? Stick 'em below!
|Friday, 16 November 2007, 07:18|
Geeze, that took much longer than it should've, but I finally got it working.
Mod Jumping within PALib, so that I can shove all my music into one super-huge mod (well, probably about 3 or 4 actually.. there's a Mod limit on how big they can get!) and then jump about so that each game's tune is actually just a little lump of patterns within that mod. Basically it means that one 100Kb mod could potentially contain the music for 10-20 different games.
If you're using PALib, and NOT using the PA_PauseMod function, you can reconstruct the functionality of the PauseMod function to skip patterns like so.
in Sound9.h, shove this over the original function (go to the end of the file, then scroll up a bit.)
In Sound7.c, around about 1/3 down the file.
And just for good measure, we'll replace the definitions in the two .h files.
in Sound9.h, it's in plain sight once you open the file.
And then in PA_Sound.h, about 2/3 of the way down.
Now recompile PALib.. Jump into DevKitPro/PALib, run Clean, then run Build.
Now to jump.. In your code first use PA_PlayMod(ModName); to stop and restart the mod neatly, leaving no leftover instruments. Then use PA_PauseMod(PatternNumber); to jump.
I spent most of last night sifting through the PALib source, tracking down all the different variables to get that to work. Now that it does, I realise I probably should've used that ModCallback function instead of the Pause one, but to be honest, I never used Pause anyway! What's the point? You either play the mod, or you don't! When in a game do you Pause it? Now that I've done that I guarantee I'll find a use for a Pause in the next few hours.
Speaking of which, I might even start coding a game sometime soon!
Note : You could probably just add a seperate function for this too, but I really couldn't be bothered after faffing about with it all!
|Friday, 16 November 2007, 15:03|
cool, I know myself how hard it is to find something your looking for in the palib source, mainly cos theres absolutely loads of it.
|Friday, 16 November 2007, 15:49|
Yeah, as good as PALib is, it's truely a mess of jumbled functions and allsorts Kinda like what I'd have made, if I could be bothered. Agent Smith would probably have a heart attack seeing all the Blitz-like/Un-C-ish coding going on in the middle of it all.
But, hey, it works! And it works on a DS! And it even does the whole "dual processor" thing whilst it's at it, since the DS has both an Arm 7 and an Arm 9 CPU ticking over at all times.
Oh what fun!
And I'm so glad I don't have to deal with both chips every time I want to code anything!
|Saturday, 17 November 2007, 06:59|
Even more background work!
I've added a bunch of reusable multi-purpose global arrays and variables that will be used throughout all the games, along with a nice Cleanup function that runs before each game.. This ensures that not only am I starting each game with everything reset to 0, but I'm also not having to continually use different chunks of local variables each time. Keep the memory reusage down = stop things randomly shifting about.. Because, that seems to happen a lot on the DS!!
I've also been adding a reusable sprite system, and shoving in basic rotation settings and things, too.
Basically, everything's ready for adding the first game into the system.
No.. I haven't done that yet!
First game will probably be centipede, 'cos that's nice replayable fun!
|Monday, 19 November 2007, 04:11|
Centipede is in, and works.
At the moment it's a bit "As it was" in that there's no powerups or anything. I'm not sure if I'll be adding those in at all, though.
For now I'd rather pile through and get some more games done.
Right now there's no menu system, and it just pops up asking you to hit Start to play. I need to think about getting that sorted. I think my collection needs a name at this point, and I'm not really sure what to call it.
|Monday, 19 November 2007, 05:13|
Was centipede that fast on the 2600? seems a bit difficult, I had to 'rub' the A button to be able to shot fast enough.
|Monday, 19 November 2007, 06:18|
Oh, well.. No it wasn't THAT fast! Obviously I'm going for a faster pace, and a much quicker runthough, because quite frankly the original pacings would probably bore you to death!
I mean, look at the original Space Invaders, and tell me you could actually play that nowadays!
As for the A button thing, you'll be happy to know I shoved a AutoFire in there! (With Tapping for faster shots) That WAS getting annoying!
|Tuesday, 20 November 2007, 07:27|
The music's annoying me!
Not "I can't be bothered making this much music", not "The stupid DS player's getting to be annoying", and not even "That music pattern stuff is annoying the munkys out of me" but rather.. "The music is rubbish, and it's starting to grate already"
For the meantime, the music is turned off.
What a waste of time that was!
Today I'm working on the menu system, so you can select which of the two available games to play.
|Thursday, 22 November 2007, 06:31|
Still no music, but at least there's now a menu screen.
So far so good.
The menu screen lets you chose from three available difficulty levels, Normal, Hard and Extreme.
All games are being built around Normal mode, with that being the Fun Arcadey one. So Hard is usually a wee bit faster, and then Extreme is mental and you probably won't get far in it!
After a recommendation from Spinal, I upped the speed of Snake. It was a little dull! I also tweaked the controls a little so it's slightly easier to control than it was.
Hiscores are also now stored for each game, and each difficulty level. By which I mean, it's currently in a big array in memory, but not quite saved just yet, 'cos I'm being lazy and not bothering to add DLDI into it yet!
And I've also added a short and sweet Invaders game to the list, too. Nice and rapid. No need for bases, they just get in the way of the fun
Right now I'm working on Tron, but the AI is really buggy, and needs plenty of Pen+Paper work to get going well enough for the three difficulty levels to work correctly! Normal, the CPU turns too soon, Extreme, the CPU can do insane 1-pixel shifts.
|Sunday, 25 November 2007, 07:11|
Tron and Asteroids.
I also added racer, but it's a bit shit when compared to the other games.
Actually, Tron's not really that good either, to be honest, but I like playing tron, so it stays where it is!
The Racer game will probably be replaced in future versions, because I honestly can't think of anything GOOD to do with it. It's a plain boring repetitive game, and it doesn't really fit in with the rest.
So, that's 6 Pad games, and next up I'll be adding 6 Touchscreen games.
I think Magicman's Extract will be added, because that's fun in Stringy Things.. Except.. I haven't actually put Stringy Things online again, yet, so no-one's played it but me and my mum!
The list in my head, at the minute, goes something like this..
Extract - Guide the blob around, avoiding the other blobs.
Gems - Shift columns of gems to get multiple gems. Although that might need a bit more explaination than the rest of the games here, so I might make it a bit easier to play than it is.
Matrix Blaster - Or alternatively just Missile Command.
That's 3. I need 6. Well, I don't NEED 6, but it'd be nice to have 6 games, all Stylus controlled in the menu!
I could possibly add Atoms, the old Amiga game, but that would require extra art, and I'm trying to avoid doing that.
And, Boogaloopers would be a super game to add, but I'm not sure if I can handle all those polygons on the DS. Never tried anything like that.
Arkanoid would be ok, but I always got bored after about 2 mins, so it might be something to try.. So long as I can think of anything more to add.
The main problem is this. Retro games didn't have mouse control, so I'm lacking in mouse-able games!
If you have any suggestions, let me know.
|Sunday, 25 November 2007, 07:52|
what about a breakout or missile command? that was retro mousey
|Sunday, 25 November 2007, 12:05|
Unless it has already been suggested, I suggest battle ships.
|Monday, 26 November 2007, 06:06|
Extract (Magicman's game!) and Missile Command.
Both being their plain selves.
At this point I'm wondering if I should backtrack and start adding powerups, but to be honest I'm enjoying playing the games as their simplistic versions.
Plus I'd have to draw some powerups..!
Maybe a later addition
Battleships would be ok, except that it'd feel better as a two player game, and right now I'm not going anywhere near multi-player stuff!
Next up.. Not sure. I'll let you know later!
|Friday, 30 November 2007, 15:38|
Took me the better half of two days to get it feeling "Just Right" but I finally managed to finish off the Pacman game.
(For reference, Pacman was suggested on the french forum, PlayerAdvance.org, and JNKPlat was recently suggested over at gbadev.org! Kickass!!)
So, Pacman and Frogger brings the collection up to 11. There's a halfassed "Click the blobs" game, but to be honest that's not really much fun, and has joined a special "Scrapped" menu along with Racer.
Pacman replaces Racer on Menu 1, and Frogger is currently feeling strange sat alongside the Touchscreen games in Menu 2. There's also a half finished Donkey Kong like game. I thought it would be fun, but in the end it wasn't.. so.. If I bother to finish it off, it'll end up on the scrapheap.
6 games on Menu 1 - Centipede, Snake, Invaders, Light Cycles, Asteroids and Pacman.
3 games on Menu 2 - Extract, Missile Command and Frogger.
2 Games in Scrap - Racer and Blobs.
Not the best selections, and still in need of at least 3 more games before Release 2 - Two Menus can be sent out.
Now accepting additional suggestions.
|Saturday, 01 December 2007, 06:14|
Blobs came back to life, then Tetris and Pong were added.
This is the latest release. If anyone would like to give it a go, you can run it on either a Homebrew cart, or in No$GBA (or otherwise). If you're running in an emulator, remember to use the standard version, not the DLDI one.
|Thursday, 06 December 2007, 10:39|
OMG! WTF?!! I've not been blogging my updates!
So.. New games in the next release.
1. Lights Out (Stylus) - Tap to invert a + of dots. A random selection is prelit (the AI inverts X number of +s at random, depending on the level.) There's a Bonus-points timer, and a Move counter, too. Make too many moves, and it's game over.
2. Joust (Pad) - Flap around and kill the opposing players. I've renamed this to Buzzard Bait, 'cos I first played the TRS-80 version
3. 5 In a Line (Stylus) - A 5x5 grid of squares is onscreen. Scroll the rows/columns of colored squares, in a Rubik's Cube style, and try to line up a whole line of a single colour. They then clear, and random ones are placed.. Get as many as you can in a minute.
4. Tune Tap (Stylus) - A constant rhythm plays, and random notes are played. Play along with it, Parappa style!
5. QBert (Pad) - Currently playable, and although I haven't yet added in any enemies it's still great fun to play.
So, the Stylus menu is now full, and I've one more game to add to the Pad menu before I'm ready for the next release.
What'll it be?
It won't be sodding Donkey Kong, that's for sure!
I'm off to add enemies to QBert.
|Friday, 07 December 2007, 08:38|
QBert doesn't like being played over 2 screens..
By which I mean, it's really a lot harder to judge where QBert's going to land than it should be. Not sure why!
So, the game's been reduced to being just the bottom screen, and the enemies are blundering around making the game much harder than it should be!
Which is a good thing
Only one extra game to add before I can send it off as Release #3, and I think it'll be a plain Meteor Storm style of game.
|Saturday, 08 December 2007, 04:26|
Meteor Storm added in the guise of "Dodge Spikes".
I was going to have bigger 4*4 sprite meteors, like the ones in Asteroids, but there didn't seem to be enough of them onscreen, so I stripped it back to 1*1 sprites, and made them spikes instead!
I think I'm going to take a week off from all the retroness! 18+ games created in about a month, with a couple of WW's thrown in, too.
Yup, I need a rest from the whole thing, methinks!!