Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - [Coding competition 2015] Bloki by tripledonkey, sherpa

Reply to topic

Rate this entry!

1 (Poor) 0% 0%
2 0% 0%
3 0% 0%
4 0% 0%
5 14% 14%
6 9% 9%
7 28% 28%
8 38% 38%
9 (Excellent) 9% 9%
This poll has expired.
Author Message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 12440
  • Location: London
Reply with quote
[Coding competition 2015] Bloki by tripledonkey, sherpa
Post Posted: Thu Mar 26, 2015 9:46 pm
Last edited by Maxim on Fri Mar 27, 2015 9:03 pm; edited 1 time in total
http://www.smspower.org/Homebrew/Bloki-SMS

Quote
Music is well known tunes except for "ditty" which was originally composed by Sherpa. This is my first ever Z80 project and SMS game so go easy. There are bugs to do with lockdown, the worst of which kicks in around level 11. I should get that squashed in the next day or so. It is probably full of horrors, I haven't really checked how random the piece generation is as I'm not counting stats at the moment. The game puts a bunch of pieces in a "bag", shuffles them around, and when they're used up, fills the bag and shakes them around again. At least that's the theory. The random seed is based on a timer during the menu selection so should be different most times.

The graphics and palette are not as polished as i'd like and I will seek to polish it over time.

I've included appalling box art that is meant to be a shoddy rip off of a SEGA game for a non existent clone called the K9918. Hopefully this is not considered too offensive, its only in jest!

I haven't tested this on a real SMS (I don't even own one, oh the shame!), however if it doesn't run on a real SMS I will do everything in my power to make sure it does, there is no point us making games for a system that doesn't really exist.
  View user's profile Send private message Visit poster's website
  • Joined: 08 Apr 2014
  • Posts: 34
  • Location: United Kingdom
Reply with quote
Post Posted: Fri Mar 27, 2015 7:52 pm
I've played about with this for a little bit, and I'm really impressed with it! The game works fine from what I've played, and the sound is great. The box art made me lol. On my entry I aimed to go for a more straight version of the box art, but I really like the direction you took yours in.
  View user's profile Send private message Visit poster's website
  • Joined: 08 Oct 2012
  • Posts: 109
  • Location: Colmar PA, United States
Reply with quote
Post Posted: Sat Mar 28, 2015 12:29 am
Had this been released in the early 90s, I would have bought this game on cartridge.
  View user's profile Send private message
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Sat Mar 28, 2015 8:20 am
dragonfeet wrote
Had this been released in the early 90s, I would have bought this game on cartridge.


You're too kind! it's a bit rough round the edges and has some bugs which should get fixed pretty soon. Amazing entries this year!
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 2278
Reply with quote
Post Posted: Sat Mar 28, 2015 9:09 am
It's very nice! :) Are you using PSGlib for music/sfx or something else?
Also, I noticed with both MEKA and Emulicious it freezes if I select 'OFF' on the music selection menu.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 7939
  • Location: Paris, France
Reply with quote
Post Posted: Sat Mar 28, 2015 11:18 am
The game cover is amazing.
  View user's profile Send private message Visit poster's website
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Sat Mar 28, 2015 2:25 pm
sverx wrote
It's very nice! :) Are you using PSGlib for music/sfx or something else?
Also, I noticed with both MEKA and Emulicious it freezes if I select 'OFF' on the music selection menu.


Yes, PSGLib. You get credits for it. Oops, I will get that menu bug fixed today. There is also that problem with the note hanging on still going on for some reason which I thought I had fixed.

Thanks for the kind words.
  View user's profile Send private message
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Sat Mar 28, 2015 2:27 pm
Bock wrote
The game cover is amazing.


Well its lazy is what it is ;) But I thought I would have fun with it, so glad you like it.
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 2278
Reply with quote
Post Posted: Sat Mar 28, 2015 2:30 pm
tripledonkey wrote
Yes, PSGLib. You get credits for it.


Oh, sorry!
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 08 Jul 2001
  • Posts: 7939
  • Location: Paris, France
Reply with quote
Post Posted: Sat Mar 28, 2015 10:26 pm
The blue L shape doesn't rotate probably, it's missing a rotation angle. Скандальный! Я хочу свои деньги назад!
  View user's profile Send private message Visit poster's website
  • Joined: 23 Mar 2013
  • Posts: 561
  • Location: Copenhagen, Denmark
Reply with quote
Post Posted: Sun Mar 29, 2015 12:48 pm
Yeah - I just had my longest Tetris streak ever in my life. I got to level 6, and could easily have gotten further, but then one of the cats in the house needed attention. Argh! I tried to hit pause, but it did not work. And I suppose it is in line with how it should be. No pause cheating for me... :)

I think you two did very well with this game and music, and nice to see an SMS-Power community team formed on the forums! It plays well, and it feels like an original Tetris, even though I'm no expert on that subject. I must shamefully ask: What happens as the levels go up? Faster blocks?

I also experienced problems rotating the L-shape. If Bock had not pointed it out, I would have thought that this was just how Tetris is supposed to be :)

I had a real wow moment with the background animation effect. I tried to guess how it was made, but ended up cheating with a tilebank viewer. Neat trick! Recorded in my book for future tweaking and use :)

The background music selection is a very cool feature! You just know there is a dedicated musician on the team when you see such a feature :)

And thanks for the greeting in the credits!
  View user's profile Send private message Visit poster's website
  • Joined: 15 Mar 2010
  • Posts: 45
  • Location: Florida
Reply with quote
Nice tetris clone
Post Posted: Mon Mar 30, 2015 3:15 am
I like the look and feel had some touble cause the L not rotating right but recovered quickly adapting to the L mechanism, got to lvl 11 and the game started gliching a bit then a lot that it became umplayable. If you fix those two the game is great. also maybe upping the dificulty a bit would help.
overal i like it. only played it once if the level 11 bug gets fix i will play again
  View user's profile Send private message
  • Joined: 01 Feb 2014
  • Posts: 392
Reply with quote
Post Posted: Mon Mar 30, 2015 8:48 am
I like this a lot. It looks and sounds good and plays very well. Love that rendition of Take Five.
  View user's profile Send private message
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Mon Mar 30, 2015 11:41 am
Thanks guys, I'll fix the L-rotation very shortly and I have fixed the bug where "OFF" crashed it. Still trying to fix a weird bug with a note sticking on and I also have to fix the Level 11 bug. I'll post an update as soon as the bugs are fixed and hopefully we can then see who can get the hi-score!

Hang-on - yes it speeds up as level increases. The frame timing for the speed up increase was actually lifted directly from NES tetris.

Glad you liked the background trick, I noticed the effect in the Game Boy colour tetris and was like "how they do that?" then thought about it a bit and it became obvious :D
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 2278
Reply with quote
Post Posted: Mon Mar 30, 2015 11:52 am
tripledonkey wrote
Glad you liked the background trick, I noticed the effect in the Game Boy colour tetris and was like "how they do that?" then thought about it a bit and it became obvious :D


I had to use a VRAM tile viewer to understand how you did it. Nice trick indeed!
  View user's profile Send private message Visit poster's website
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Mon Mar 30, 2015 5:02 pm
I should now have squashed most of the bugs (who knows, maybe I created some more!)... version 1.02 now available.
  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 2278
Reply with quote
Post Posted: Mon Mar 30, 2015 5:30 pm
The date still says 27 Mar...
  View user's profile Send private message Visit poster's website
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Mon Mar 30, 2015 6:02 pm
sverx wrote
The date still says 27 Mar...


Wasn't sure if I was supposed to change that or it represented the original date.
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 12440
  • Location: London
Reply with quote
Post Posted: Mon Mar 30, 2015 6:05 pm
Well, it's listed as the date of that particular version. I think we normally update it, although we may let it slide for quick competition updates.
  View user's profile Send private message Visit poster's website
  • Joined: 05 Sep 2013
  • Posts: 2278
Reply with quote
Post Posted: Thu Apr 02, 2015 9:05 am
I tried the game on my SMS II yesterday evening... unfortunately there are major graphical glitches that make the game almost impossible to play on hardware. You're surely writing too fast to VRAM, so you should make sure that you're not pushing a byte to VRAM before at least 26 CPU cycles are passed from the last write.
Two screenshots attached. I hope it's useful to fix that! :)
bloki_1.png (1.14 MB)
(menu screen - pic taken with my phone)
bloki_1.png
bloki_2.png (1.23 MB)
(in game - pic taken with my phone)
bloki_2.png

  View user's profile Send private message Visit poster's website
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Thu Apr 02, 2015 12:35 pm
sverx wrote
I tried the game on my SMS II yesterday evening... unfortunately there are major graphical glitches that make the game almost impossible to play on hardware. You're surely writing too fast to VRAM, so you should make sure that you're not pushing a byte to VRAM before at least 26 CPU cycles are passed from the last write.
Two screenshots attached. I hope it's useful to fix that! :)


Many thanks, I suspected that would be the case as I hadn't made any effort (yet) to restrict writes. I will make the appropriate updates as soon as I can.
  View user's profile Send private message
  • Joined: 12 Jan 2005
  • Posts: 178
  • Location: Reconquista, Santa Fe, Argentina
Reply with quote
Post Posted: Thu Apr 02, 2015 1:33 pm
I'm not able to test it on real hardware. It works fine (as far as I could play. I never reached level 11) on GenPlusDroid and SmartGear (both are emulators for Android).

Thanks for this piece of awesomeness.
  View user's profile Send private message
  • Joined: 08 Oct 2012
  • Posts: 109
  • Location: Colmar PA, United States
Reply with quote
Post Posted: Thu Apr 02, 2015 10:16 pm
sverx wrote
I tried the game on my SMS II yesterday evening... unfortunately there are major graphical glitches that make the game almost impossible to play on hardware. You're surely writing too fast to VRAM, so you should make sure that you're not pushing a byte to VRAM before at least 26 CPU cycles are passed from the last write.
Two screenshots attached. I hope it's useful to fix that! :)


Try the game on a Genesis with powerbase converter. The Genesis VDP in SMS mode seems to be more forgiving of VRAM writes without turning off the VDP for some reason.

How often do you write to VRAM each cycle? It's been my experience that I can write sprite data each cycle to VRAM if I do it immediately after v_blank. However, if I want to also write to the background or change colors, I have to stop the VDP, write, then start the VDP again to avoid artifacts. But I can stop the VDP, write a 24 character column, then start the VDP and the screen doesn't blink.
  View user's profile Send private message
  • Joined: 26 Dec 2004
  • Posts: 369
  • Location: Japan
Reply with quote
Post Posted: Fri Apr 03, 2015 9:05 am
I've tried this one on both a MegaDrive PBC and SMS... the game glitches badly as above.
  View user's profile Send private message Visit poster's website
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 12440
  • Location: London
Reply with quote
Post Posted: Fri Apr 03, 2015 9:26 am
Stopping the VDP during VBlank has no effect on corruption, but if your operation takes too long then you will get the top border eating into the screen. Some prefer this because it lets you see if your VDP access is exceeding the VBlank. I prefer to just be careful to do all the work right at the start of the VBlank.
  View user's profile Send private message Visit poster's website
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Thu Apr 09, 2015 5:14 pm
I've uploaded a new version 1.03 which hopefully wont glitch badly, not sure I've got everything but it does seem better.
  View user's profile Send private message
  • Joined: 08 Nov 2014
  • Posts: 89
Reply with quote
Post Posted: Thu Apr 09, 2015 8:54 pm
hang-on wrote

I think you two did very well with this game and music, and nice to see an SMS-Power community team formed on the forums!


Thanks. I know Sherpa hasn't commented here but I wanted to thank him massively. I left my requests for help in the music department pretty late, I was rubbish at keeping him up to speed, and he came back very fast with the goods. Sherpa really helped Bloki go from a silent movie to something fully fledged. Really cool to see team developments in this years compo and as I didn't keep him up to date (Sherpa had only my promises of a working game without seeing one right till the day of release!), thanks for the faith and hope I didn't let you down.
  View user's profile Send private message
  • Joined: 28 Nov 2014
  • Posts: 364
Reply with quote
Post Posted: Tue Apr 14, 2015 3:15 pm
Quote
Thanks. I know Sherpa hasn't commented here but I wanted to thank him massively. (...) thanks for the faith and hope I didn't let you down.


Hmm. I missed the recent updates in this thread for some reason.

I was happy to help. As far as our experience working together, I was never given cause to complain. Despite your being a newcomer to z80 programming, I never doubted your sincerity, and it always felt as if you were working competently in the background. Updates came often enough, and while maybe our collaboration never went full tilt, (there were no requested rewrites, etc..) I was happy to leave it up to you, regarding musical selection and programming. If I had to do it again, I might have tried doing some work with psglib myself rather than merely providing the raw materials, as it might have helped with some optimizations. The final product was enjoyable, and I can't complain.

The fact you even released an update after much of your source code work was lost speaks to your character. Personally, I stopped at "good enough" once I saw how much time, effort, and retraining it would take for me to learn the new tools competently.. All the instruments are scarcely shaped squarewaves, and it's possible I might have been able to produce output that was more aesthetically pleasing if I had taken the time to really dig in.

Most of my work was not particularly time consuming. Originally it was only intended as a contingency, but it ended up mirroring the final result except for a few last minute optimizations that I thought improved the final result. While not incorrect, they led to the issue of the hanging note being more obvious, as it would have been occluded otherwise in some cases. Ultimately I focused more on my existing projects, and only invested a fraction of the time I originally intended. You did not seem to mind at all. Also, my prompt submissions were partly an acknowledgment that if I waited until I had a clear idea of what I should do, the risk of being remiss on my part would likely skyrocket over time. So I submitted a large amount of tentatives at the first opportunity I found. I have no cause for complaints even were I inclined to do so :)

Main reason I did not post here was because I'd already written most of my concerns early on in our private messages, and others had already highlighted the issues I thought worth discussing (and more).

I'm happy to have been a part of this collaboration. It was easy and straightforward, even if not particularly "update-heavy". It was enough. It highlighted how little I know about some aspects of sms music despite my other work on this site. It was nice to see that people seemed to enjoy the game.

Thanks
  View user's profile Send private message
Reply to topic



Back to the top of this page

Back to SMS Power!