GenDev SpritesMind Website SpritesMind.Net
Sega Megadrive/Genesis development
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Game release, Uwol - Quest For Money
Goto page 1, 2, 3  Next
 
Post new topic   Reply to topic    SpritesMind.Net Forum Index -> Demos
View previous topic :: View next topic  
Author Message
Shiru
Very interested


Joined: 07 Apr 2007
Posts: 786
Location: Russia, Moscow

PostPosted: Thu Mar 04, 2010 12:18 pm    Post subject: Game release, Uwol - Quest For Money Reply with quote

I'm glad to present to you new freeware homebrew game for Sega Genesis/Mega Drive.

Here is the game, and source code (in C).



Now the long making of story, if you care.

The original game was made for ZX Spectrum by Mojon Twins, homebrew game developers team from Spain, and released in 2009. It is a little nice old-style arcade game about jumping around and collecting coins, and I've liked it much. Unusual thing about all the Mojon Twins games is that they are made in C (for the platforms with Z80 @ ~3.5 MHz). After I've looked into sources, I've got idea to try to port the game to SMD using the original sources. I've asked Na_th_an from Mojon Twins for permission, he said they don't mind, as long as they are credited, and the game is open source.

I've wanted to make not just exact port of the game, which is makes not much sense, but to improve some details, as long as they will not take too much time.

The project has been started February 18, and pre-release version was finished March 3. This includes few days of fulltime (>8hrs) work on the project. Most part of the time took graphics works, then code, and least part of the time (about 3 days) took sound part.

Code. The original code was modified, both in porting process, and also in order to improve the playability. The most difficult parts were tweaking all the parameters to slowdown the movements (the original runs at ~35 frames per second, SMD version at 50 frames per second) without breaking the gameplay, reworking player-background collisions to make player bounding box smaller (very important to make jumps in tight places easier). Most boring thing was conversion of the levels data - in the original they are stored as assembly listing with lot of db's with binary numbers, arranged as C structure (so you can just set structure pointer to the address, and get all the data in comfortable way, as the structure fields). I've had to manually edit all >1500 lines of the data to convert it into BIN macro (making conversion script should've took about the same time), and load the data into RAM array of structures at start-up. All the levels were tested to be possible to beat, few changes were made to compensate changes in the gameplay.

Everything was done using emulators - mostly Gens32, also Gens KMod, Regen, Megasys, Kega Fusion. No tests on the real hardware were made until almost finished version. The only test on the hardware was done by HardWareMan March 3, it ran without any problems for first attempt.

Music. When I've started to think about the music, I've got problems with .NET on my PC, so WYZ Tracker (the tool where the original music was made) refused to work, though it worked before. All attempts to fix the problem wasn't successful, so I had to think up another solution, rather than recreating the music by hand. Possible solutions were to reverse-engineer the original sound format (using Z80 player source code), and make player or converter; or make AY registers dump of the original music, and then convert it into FM somehow. Accidentally I've figured out that the WYZ tracker stores it's data in GZip'ed XML files, so the solution was to make custom tool to convert the original data (notes only) into TFM Music Maker v1.4 format. Making of the tool took a single day, and manual editing of converted music took another day.

Sound. I've felt really lazy about recreating all the effects by hand, so I've decided to convert the original effects. I've also felt lazy about reverse-engineering the original effects data, so I've modified original driver to play all the effects one by one, ran it in Z80Stealth emulator, and dumped AY-3-8910 registers output into PSG file. Then I've made custom tool which converted the PSG file to VGM with SN76489 data. This file was slightly edited using Mod2PSG2 v2.04, and then used together with my old PSG effects system. I've also added few new effects, these were created manually in Mod2PSG2.

Graphics. I've choose 256x224 resolution, because the original game runs in 256x192 and has large black borders on the sides. For all the graphics works I've used Graphics Gale Free Edition and GIMP. I've made completely new sprites, new title and end screens (using cover art, with heavy manual edit after conversion), and recolored tiles from ZX Spectrum version. Probably the most difficult thing was to choose palettes configuration, to get colorful picture with single palette settings for all the levels. I've managed to fit all the sprites into single 16-color palette, this allowed to use three other 16-color palettes for the background tiles.

The original game stores all the screens, except for the piramide and levels itself, as packed fullscreen pictures. I've decided to do the same, with another packer however. After a few experiments I've choose Team Bomba's BitBuster, which gave best compress ratio (other options were Hrust and mic's Sixpack). Depacker is in pure C code, I've ported it to SMD using original source code few years ago. It depacks whole picture into 32K RAM buffer, and then the picture transferred to VRAM through DMA. It is not effective in speed and memory terms at all, but it is easy to do and works good enough. I've also packed sprites and tiles graphics, though it was not really necessary. Without it the game size was just above 64K, and I've thought it would be nice to fit into 64K.

How to compile the sources. You'll need Windows NT, 2K, XP or greater (9x has not support for some features for .bat), and installed Stef's Devkit. Set correct paths to the devkit components in genbuild.bat and makefile.gen (e:\gendev by default). Run makeres.bat to prepare all resources, then run genbuild.bat.


Update for v1.1. March 14 I've got report from Txai that level 9-9 is unbeatable. It was a major bug, because instead of the level there was indeed garbage in the game (my mistake, introduced in porting process). And because I've had to release fixed version, I've decided to make some other minor improvements as well. Here is list of the changes:

- Level 9-9 now works
- Level 8-6 now much easier
- Arrows above the exit blocks added
- Pause added
- Start button now works everywhere
- BitBuster replaced with aPLib (SyX version), because it is faster, smaller, and also compressed the graphics better
- One word corrected at the credits screen


Update for v1.2. In Semptemer 2011 I got a report that there are minor graphical artifacts in the game due to late CRAM writes. I also found a bug later, sprites weren't cleared at soft reset and remained above the title screen. This version fixes these two problems.


Last edited by Shiru on Tue Nov 22, 2011 9:05 pm; edited 2 times in total
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
TmEE co.(TM)
Very interested


Joined: 05 Dec 2006
Posts: 1953
Location: Estonia, Mahtra village

PostPosted: Thu Mar 04, 2010 12:49 pm    Post subject: Reply with quote

I tried it briefly in emulator and I loved the music and GFX. I was not sure what did I have to do after collecting all the coins though, ghost started chasing me when time ran out and then I died.
I've not yet ran it on my MD2+32X+MCD2 setup.

Anyway, AWESOME work Very Happy

I wish MD sees more games (I am in the middle of making some, but I feel unmotivated......), I hope this inspires other people to do some lovely things Smile
_________________
Mida sa loed ? Nagunii aru ei saa Wink
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
Shiru
Very interested


Joined: 07 Apr 2007
Posts: 786
Location: Russia, Moscow

PostPosted: Thu Mar 04, 2010 3:06 pm    Post subject: Reply with quote

I think, I had to make some sort of manual, because this moment is not clear indeed. After collecting all the coins on the level, one or two arrows will appear on the ground. You should stand above one of the arrows and press down (not necessary to stay on the ground, though, you can do it in mid-air too). Doing this you choose your way through the piramide. The goal of the game is to collect 256 coins. You can't do it in one play (10 levels), so you should complete the game few times, choosing different routes through piramide (when you enter already visited level, it has no coins).

Yes, I really hope too that this project will inspire other people to do something, this is also particular reason why I've wrote down the making of game.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Shiru
Very interested


Joined: 07 Apr 2007
Posts: 786
Location: Russia, Moscow

PostPosted: Fri Mar 05, 2010 7:15 am    Post subject: Reply with quote

I have to ask for a favor from everyone who have accounts on retrogaming-related forums: please spread the word about the release. I've gave up on promotion, I wasn't able to register anywhere I've tried - 'your email is banned', completely unreadable captchas (tens of unsuccessful attemps!), 'wait for admin decision', etc. Thanks in advance.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Eke
Very interested


Joined: 28 Feb 2007
Posts: 677
Location: Toulouse, France

PostPosted: Fri Mar 05, 2010 7:37 am    Post subject: Reply with quote

Very polished game, I like it Smile

Also, the fact you needed less than 1 month to port it, considering the amount of work, is quite impressive...
Back to top
View user's profile Send private message Visit poster's website
SyX
Interested


Joined: 05 Mar 2010
Posts: 13

PostPosted: Sat Mar 06, 2010 8:02 pm    Post subject: Reply with quote

I love the arcade feeling of this game!!! Very Happy

And i can see perfectly all your dedication to improve and polish the graphics and the music of this port.

Great Work!!! Very Happy
Back to top
View user's profile Send private message
Christuserloeser
Very interested


Joined: 28 Jan 2007
Posts: 124
Location: DCEvolution.net

PostPosted: Wed Mar 10, 2010 7:27 am    Post subject: Reply with quote

This game is awesome Exclamation
_________________
http://www.DCEvolution.net - Gigabytes of free Dreamcast software for you

Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
Stef
Very interested


Joined: 30 Nov 2006
Posts: 1290
Location: France - Sevres

PostPosted: Thu Mar 11, 2010 12:21 pm    Post subject: Reply with quote

Dead link ?
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Shiru
Very interested


Joined: 07 Apr 2007
Posts: 786
Location: Russia, Moscow

PostPosted: Thu Mar 11, 2010 12:44 pm    Post subject: Reply with quote

Links are working (just tested), maybe some problems on untergrund FTP.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
sheath
Very interested


Joined: 15 Aug 2007
Posts: 141
Location: Texas

PostPosted: Thu Mar 11, 2010 7:16 pm    Post subject: Reply with quote

Very good! I'll spend some more time playing it today, but I love this style of game. Joust is one of my all time favorites.

Hosted here:
http://www.gamepilgrimage.com/sites/default/files/Homebrew/uwol_quest_for_money.zip

Promoted here:
http://s4.zetaboards.com/Whip_Ass_Gaming/topic/7585295/1/?x=0#post8003197

I also thought http://www.emuasylum.com would probably host it too, so I emailed them about it.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Shiru
Very interested


Joined: 07 Apr 2007
Posts: 786
Location: Russia, Moscow

PostPosted: Fri Mar 12, 2010 3:54 pm    Post subject: Reply with quote

I've been asked for manual, so I've made one and added to the same zip. Currently it has English and Russian language translations, if you want other language to be added, please send me translation.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
eteream
Very interested


Joined: 22 Dec 2009
Posts: 77

PostPosted: Sat Mar 13, 2010 2:48 pm    Post subject: Reply with quote

That rocks! how to do a great game with near to nothing in-game graphics.

I feel a strange feeling when it says "press button" but start button don't work... for several games is only used is in title screen.
Back to top
View user's profile Send private message
Stef
Very interested


Joined: 30 Nov 2006
Posts: 1290
Location: France - Sevres

PostPosted: Sat Mar 13, 2010 5:20 pm    Post subject: Reply with quote

Very nice quality game Smile Lovely gameplay, congrats !
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Txai
Newbie


Joined: 14 Mar 2010
Posts: 2

PostPosted: Sun Mar 14, 2010 2:25 pm    Post subject: Reply with quote

Can't beat Level 9-9. The character keeps falling to the pit as there is no platform to stand on. Here is a screenshot for reference.
Back to top
View user's profile Send private message
Shiru
Very interested


Joined: 07 Apr 2007
Posts: 786
Location: Russia, Moscow

PostPosted: Sun Mar 14, 2010 2:44 pm    Post subject: Reply with quote

This is a bug, not actual level. I'll check this.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    SpritesMind.Net Forum Index -> Demos All times are GMT
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You can post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group