Very nice game, so smooth /fast in turbo r mode!
Btw am I the only one who remapped controls to WASD (the correct way to play 3d games IMHO) in emulator?
(I had attack/spacebar mapped to numpad 7, which sorta feels like left mouse-click)
@erpirao: turbo mode for WSX machines is already supported in the cartridge. On startup, if the game detects it is running on a Panasonic MSX2+ with turbo, it activates it automatically
About the "RAM" patch, oh well... it might be tricky to do in the current cartridge anyway, since everything is packed to tightly (in both RAM and ROM). But I'll definitively plan for this from the beginning in a future sequel For the sequel I was thinking of a 48KB cartridge, and with the extra 16KB I could have different texture sets for using more colors if MSX2/2+/turbo R is detected, but still support MSX1 which was the original target platform. But that'll have to wait, since I'm still busy with another side project, but perhaps after the summer
I think what impresses me most about this game is that it's actually really well-balanced and well-designed. This could've just been a "tech demo" showing off the raycasting engine, and even if the level design sucked and the difficulty level were totally out of whack, it would've been worth playing. But somehow, you managed to actually create a dungeon that's fun to explore, with a really steady difficulty progression and some genuinely intense moments.
This makes Tales of Popolon legitimately one of the best homebrew MSX games out there, period, as far as I'm concerned. It's on the same level as games like The Cure, Caos Begins, and Tina's Adventure Island -- all games that I rank among the best titles available on the MSX period, homebrew or otherwise.
-Tom
I can't agree more with wyrdwad, This is not only incredible tech demo, it is also game that is honestly fun to play!
From ram on TR the speed up is HUGE!! A different game practically.
I should have suggested you to move the critical code to RAM on TR before producing the cartridge...my fault sorry.
I feel kind of same... I did know that running program from RAM is faster, but I didn't realize how big the difference actually is! It would have been pretty simple to include routine that moves the whole game to RAM in case of tR.
Thanks again for the comments guys! I tried my best
But also, with the faster speed of the RAM version, I feel I'd have to rebalance the behavior of the enemies to adjust the difficulty. Some parts might be very hard at this speed, specially later in the game when enemies start firing projectiles at you!
Maybe in a sequel you could move the actual game play (moving of enemies, bullets, viewpoint etc.) to VDP interrupt routine together with music player and let the main program only take snapshot of the situation and do rendering the environment to the screen in a "as fast as possible"-loop. This way the game would play same speed on all computers. The only difference would be how many FPS the game runs. You could then do also optimizations like "player has not moved -> only render moved sprites again".
I think that's a good idea! and I think it should not be too hard since the way the renderer works it's already detached from the game logic.
In fact, I run 4 "game logic frames" per each complete renderer loop. I render the first 1 quarter of the screen, and then run a game logic cycle, then the next quarter and another game logic cycle, etc, and at the end of each 4th cycle I dump rendered frame to the VDP; that's why enemies, etc. move a bit smoother than the background. When running in turbo R mode, however, I only run 2 game cycles per frame to keep the speed under control. So, that could be generalized, and just keep the renderer running free in the background, while the game logic runs each X number of VDP interrupts, to keep speed constant. Great idea!
Oh, thanks for the tip!
I've restored the play-ability to the disk crack. Download is here.
I also did some quick experiments with the idea of running the game engine in VDP interrupts and it seems that running the engine once every 5 interrupts seems to be quite a good speed. Now I stop raping your game and let you have a nice holiday.
nice! and hahaha, feel free to tinker with it however much you want, that's why I made it open source