|
ForumsSega Master System / Mark III / Game GearSG-1000 / SC-3000 / SF-7000 / OMV |
Home - Forums - Games - Scans - Maps - Cheats - Credits Music - Videos - Development - Hacks - Translations - Homebrew |
Author | Message |
---|---|
|
New Homebrew: Fairy Forest
Posted: Fri Aug 04, 2017 3:38 pm
|
Hello everyone. Over the summer, I have been working with my eight year old daughter to make her an SMS game. She came up with the concept and I did the sprite art and programming. The game is pretty easy for a grown-up but hopefully there is a kid somewhere that will like it bugs and all. I have attached the ROM and source code.
|
|
|
Posted: Fri Aug 04, 2017 8:51 pm |
Woh, nice job !!!!!
Good team ;) Thanks for sharing |
|
|
Posted: Fri Aug 04, 2017 8:57 pm |
Thanks. My little one is an avid video gamer and it is a good way for her to learn a bit about computers. Although I think z80 assembly may be a bit beyond her, she does have a knack for figuring out algorithms conceptually. I am hoping that at some point in the future she will want to develop her own game. | |
|
Posted: Fri Aug 04, 2017 9:50 pm |
That is also my hope for my daughter. She's only 18 months so there's still a lot of time.
Have you introduced your daughter to Scratch? https://scratch.mit.edu |
|
|
Posted: Fri Aug 04, 2017 10:23 pm |
I have not shown her that yet but I should. I have had her playing the coding games at code.org. Those are really good as they are a graphical language and feature a lot of minecraft content which is an easy sell with my little one. Thanks for the tip. | |
|
Posted: Sat Aug 05, 2017 5:54 am |
Jjajaja its a nice game !!!
I put my five years cousin to test my work my work in progress platwormer too, at the weekends. And she have good ideas! Lol... |
|
|
Posted: Sat Aug 05, 2017 9:25 am |
You can tell her the game now has its own page!
http://www.smspower.org/Homebrew/FairyForest-SMS |
|
Revo
|
Posted: Sat Aug 05, 2017 9:55 am |
I've problems to run this game on Emulicious and MEKA. | |
|
Posted: Sat Aug 05, 2017 11:24 am |
I can run it in OpenEMU but it has graphical corruption in Emulicious. |
|
|
Posted: Sat Aug 05, 2017 12:14 pm |
Thanks for the comments folks. The bug reports are helpful. I suppose I should have mentioned that it seems to run best in Fusion 3.64. Meka was used early on to look at values in RAM but I don't think I did a full play through in it. MasterEMU on my phone seems to do okay as well.
As for the graphics issues, they were really bad in Fusion and then I played around with how the sprite table is organized which made it better. There is a description of this I think in the source code. Anyway, thanks again for the comments/bug reports. |
|
|
Posted: Sat Aug 05, 2017 2:57 pm |
from me (testing on ubuntu 17.04), it is working fine on fusion and emulicious, but i have no idea why it doesn’t work on mame/mess and mednafen (and from mame/mess, the behaviour between sms and sg1000-mark3 seems quite different) - i guess perhaps it’s great trying there?
anyway, i have great expectations seeing more games coming from the team! ;) |
|
|
Posted: Sat Aug 05, 2017 3:03 pm |
@matt , i think @haroldoop started to develop something like Scratch targeting SMS - i think it’s posted somewhere in this forum, i can’t remember where | |
|
Posted: Sat Aug 05, 2017 4:05 pm |
@nitrofurano Thanks for the testing data. I keep a log of these issues and if I can ever reduce my professional workload I would love to release some bug fixes. My daughter is thrilled that folks are playing it by the way; she is sketching out some new ideas as we speak. | |
|
Posted: Sat Aug 05, 2017 4:12 pm |
@matt thanks for the tip on scratch. My kid wants to try it and perhaps she will use it to prototype/implement some of her ideas. | |
|
Posted: Sat Aug 05, 2017 6:38 pm |
That would be Blockly-Z80: https://github.com/haroldo-ok/blockly-z80 |
|
|
Posted: Sat Aug 05, 2017 6:46 pm |
@haroldoop That is amazing! Maybe my little one would like that too. | |
|
Posted: Sat Aug 05, 2017 7:30 pm |
Only fails in emulicious if vdp constraints emulation is turned on. So i guess it should not work on real machines. But it is perfectly playable in inaccurate emulators (the most of them) | |
|
Posted: Sat Aug 05, 2017 7:36 pm |
Makes sense to me. I should develop using emulicious with realistic vdp emulation in future projects. Part of me had a sneaky suspicion that it would be awful on original hardware. Thanks for the info. |
|
|
Posted: Sat Aug 05, 2017 10:02 pm |
Awesome! Nice work. |
|
|
Posted: Sun Aug 06, 2017 2:05 am |
@matt @haroldoop so my 8 year old is loving scratch and she is excited about blockly for z80. Thanks for sharing those resources. | |
|
Posted: Sun Aug 06, 2017 2:19 am |
Harold that is pretty awesome. I may try to do something with that some day. |
|
|
Posted: Sun Aug 06, 2017 7:11 am |
Very nice game. It's fairy dust shooting mechanic needs some getting used to, though, and there are quite a few bugs.
I played through the first two forests without problems, but in the third one, the game somehow got stuck between two screens during the transition. The fairy just wouldn't reappear on either side and I couldn't do a thing except flipping between the two adjacent screens by pressing the d-pad. Bummer, I was looking forward to seeing what the ending would be. |
|
|
Posted: Sun Aug 06, 2017 3:03 pm |
@Kagesan thanks for playing. I agree that it is buggy; I was joking with someone that the list of known bugs is longer than the full text of the dead sea scrolls. Sadly, we were forced to release now since in a couple of weeks my life will be on hold until April. The bug you describe is a known issue. Thanks again. | |
|
Posted: Mon Aug 07, 2017 7:34 pm |
So I have taken note of the bugs folks have pointed out and I got some tips as well via other channels. I am working on some bug fixes and hopefully will re-release once I have the game working a bit better. | |
|
Posted: Tue Aug 08, 2017 7:56 am |
Nice work!
A couple of questions: is the 'bullet' supposed to follow the fairy's facing direction? is the collision with the flowers supposed to work only when coming from above them? |
|
|
Posted: Tue Aug 08, 2017 12:44 pm |
The bullet is supposed to change directions. I made it that way to allow you to hook it around. The collision with the flowers is an artifact of how it works and was not really intentional. That said, I know why it happens. |
|
|
Posted: Tue Aug 08, 2017 8:31 pm |
Again, thanks for all the comments and tips regarding the bugs. I have fixed some of the bugs and it works a lot better now. The main issues that have been addressed are:
1) The game runs in Emulicious even with VDP constraints enabled; there still is some sprite weirdness but it isn't completely messed up now. 2) A halt has been used to replace a primitive delay function I wrote in the event loops. This has made the music stay at the same tempo regardless of the workload placed upon the system. Anyway, thanks for the help. |
|
|
Posted: Wed Aug 09, 2017 7:17 pm |
Hello everyone. I think I have also figured out the strange screen transition bugs where the fairy either teleports to some other screen or gets lost altogether; I have fixed it and now we are at version 1.0.2. Sorry for all the updates.
|
|
|
Bug fixes to Fairy Forest homebrew
Posted: Sat Aug 12, 2017 12:44 am
|
I would like to take the opportunity to thank everyone who reported bugs and made suggestions to resolve some of Fairy Forest's issues; I learned a lot from the community during the process. I have spent some time now fixing up some bugs and I feel the new version is a large improvement. I have been able to resolve a number of issues including the changing tempo of the music and the screen transition issues. Anyway, thanks again for everyone's help.
|
|
|
Posted: Thu Aug 17, 2017 7:02 pm |
This is a really classic feeling game, like an Atari 2600 game with SMS power. Congrats :D | |
|
Posted: Thu Aug 17, 2017 7:46 pm |
Thanks smokemonster. It was a lot of fun to make and I think my kid has decided she wants to makeep a game. That last part is a big win for me! | |
|
Posted: Fri Jan 19, 2018 10:25 pm |
The current version of the game (1.0.2) does not work on Mednafen, but I have found the fix, which is in the VDP registers.
Simply sending the register values to the VDP in sequence is not enough. You need to send first the value and then the register number with the most significant bit set. Also, some registers have wrong values, including ones referring to addresses and the line counter. You need to change from: VdpData: .db %00010110 ; VDP register $00 (mode control 1) .db %10100000 ; VDP register $01 (mode control 2) .db $38 ; VDP register $02 (name table base address) .db $c0 ; VDP register $03 (colour table base address) .db $00 ; VDP register $04 (background pattern generator base address) .db $3f ; VDP register $05 (sprite attribute table base address) .db $00 ; VDP register $06 (sprite pattern generator base address) .db $00 ; VDP register $07 (overscan/backdroup colour) .db $00 ; VDP register $08 (background x-scroll) .db $00 ; VDP register $09 (background y-scroll) .db $00 ; VDP register $0a (line counter) VdpDataEnd: to: VdpData: .db %00010110, $80 ; VDP register $00 (mode control 1) .db %10100000, $81 ; VDP register $01 (mode control 2) .db $FF, $82 ; VDP register $02 (name table base address) .db $FF, $83 ; VDP register $03 (colour table base address) .db $FF, $84 ; VDP register $04 (background pattern generator base address) .db $FF, $85 ; VDP register $05 (sprite attribute table base address) .db $00, $86 ; VDP register $06 (sprite pattern generator base address) .db $00, $87 ; VDP register $07 (overscan/backdroup colour) .db $00, $88 ; VDP register $08 (background x-scroll) .db $00, $89 ; VDP register $09 (background y-scroll) .db $FF, $8A ; VDP register $0a (line counter) VdpDataEnd: |
|
|
Thanks
Posted: Fri Jan 19, 2018 10:34 pm
|
Thanks so much for the data. It's pretty cool how homebrew folks take your code, run it, find bugs, find out where the bugs come from and post the results. Thanks again. |
|