Hey guys, I just finished the first fully functional version of my first MSXDev'17 entry this year. I tried to do a game that looked a bit different from the usual MSX game, so I went for a 3D raycasting-style game (for MSX1, assuming only 16KB RAM). It runs a bit slow, but I think it's still fun to play and visually interesting.
Game can be downloaded from here: https://github.com/santiontanon/talesofpopolon/releases/tag/1.0
Source code here: https://github.com/santiontanon/talesofpopolon
And a quick video with the intro and some gameplay: https://www.youtube.com/watch?v=u9HiZfxoLmk
I know it's a bit weird for an MSX game, but I had a lot of fun doing it. I hope you enjoy it :)
btw: if you think the game runs too slow, you can change the viewport size pressing "0" while playing, to have a smaller viewport, making the game run faster.
Left/right arrow keys - rotate Popolon
Up/down arrow keys - move forward/backward
Space - use the main weapon / skip text
Space + Left/right arrow keys - move left/right
M - use the secondary weapon
1 - change your primary weapon
2 - change your secondary weapon
3 - change your armor
0 - change the gameplay viewport size
Very good job
Wow, that looks amazing! And I don't think this kind of game was ever done like that on MSX1....
Raycasting on MSX1 - unexpected! Is that real-time filling-up the tiles, or is this a prefab tileset that somehow has all the angles 'n corners 'n things?
By the way: Have you ever tried running away from something with your arms up? It's in the intro @ 0:36!
it's real-time filling-up of the tiles. I tried a prefab tileset initially, but couldn't figure out a tileset small enough to fit in memory while being flexible enough!
And hahaha, yeah, the "running villager" graphic is one that I always thought was temporary, but ended up staying there and now, I've kind of grown fond of it!
It is indeed a remarkable achievement.
Fantastic! And, as you can imagine, it runs even better in a Turbo-R in R800 mode. Maybe you could enable the turbo by default in these machines?
Hey! And it passes the Acid1Test, and almost passes the Acid2Test! With some very minor fixes it will pass the Acid2Test with flying colors. Amazing coding skills!
@sd_snatcher That's a good idea! noted down! I think I have the grand total of 5 bytes left in the cartridge, but I'm sure I can make some space for the code that detects and switches (I also need to find some space to fix a small music glitch that occurs every once in a while)
As of now, the game updates the enemies/player/etc. 4 times per each 3D raycast loop (since raycast does about 3 frames per second, which would be too slow for enemy movement). But in R800 mode I might just need two or even just one enemy/player update per each 3D raycast loop, while still keeping a decent framerate, which should make things look much more in-sync!
btw, you got me there, what are the acit1test and acit2test?
Don't you have an account yet? Become an MSX-friend and register an account!