I've replaced the Raycaster demo in the Earok's Monkey Demos collection (graphics shamelessly stolen from the classic Amiga FPS Gloom). Now there's rotating, non 90-degree walls, floors, ceilings and kind-of dynamic lighting. Check it out here.
I was kind of developing it for a first person shooter project but I'm not really sure what to do with it now. I'll probably add collision detection and sprites at some point.
As always, the complete Monkey source is on the Monkey Demo's page.
Warning, this is another vanity post!
Hardcore Gaming 101 have republished an article from Retro Gamer Issue 95 on the classic C64 game Project Firestart and it's creator, Damon Slye (a hero of mine, not just for Firestart but another all time favourite game of mine, Aces of the Pacific). Definitely a great read. As a long time fan of the game I was shocked to learn that the game's monster was based on a children's toy!
This quote here, however was personally flattering:
Although Firestart suffered from hardware limitations and perhaps didn't receive the attention it deserved, both fans and its creators recall it fondly. There was even a fan remake (screenshot taken from the creator's homepage) in first-person 3D in 2006. As Slye reveals, he's rather a fan: "I loved it, and loved that someone had liked the game enough to do a remake."
Obviously, I'm very keen to get a copy of Retro Gamer #95! Unfortunately the physical copies have all sold out and the digital copies require an iDevice, if you have a copy that you're willing to part with please let me know and I'll buy it from you.
Gonna become an uncle for the second time! Congrats to my brother and his partner Ariana. I wish them all the happiness in the world.
For the Overload 2012 launcher game I hacked together support for multiple simultaneous Joysticks in Monkey (The first C programming I had done in a decade!). I did a bit more work on it today and turned it into an enhanced Joystick support library. It can handle:
- 16 Joysticks simultaneously
- 128 buttons per Joystick
- 8 axes per Joystick
- POV Joystick hat support (Necessary for the XBox 360 controller's DPad)
- GLFW on Windows only at this stage. Mac support shouldn't be too hard to implement, XNA is another possibility.
Source has been bundled into the Earok's Monkey Demos pack.
Sergio made these screenshots and doodles of games from the entire collection for the Bundle download page.
- Smashbox (A Jolly Corpse)
- Wyv and Keep (A Jolly Corpse)
- Whale Bait (VideoJames)
- The Kiwi's Tale (Erik Hogan and Stephen Knightly)
- Derelict (Erik Hogan and Sam Jeffreys)
- WitchBlaster (Erik Hogan and Anthony Lau)
- Noah More Heroes (Erik Hogan, Sergio Cornaga, Michael Schaeffers, Andrew Young and Anthony Lau)
- Super Go Down The Hole (Sergio Cornaga)
- Malco Monogatari (Sergio Cornaga and Liam Bowen (with apologies to Pixel))
- AAAAAMaze (Paul Catling, Lianne Booton, Regan Music, Anthony Lau, Sergio Cornaga and Pavel Laletin)
- Trail Bay (Matthew Gatland and Alice Gatland)
- Attack of the Meeplings (Joshua Smyth)
- RoboFortress (Joshua Smyth)
- The Wizard's Lair (Joshua Smyth)
- Bubblegum Panic (Nanobot Studios)
- Everyone listed above for their contributions to the bundle.
- James and Sergio for their invaluable support for creating and promoting the bundle.
- Hayden for also helping out at the table.
- Noah Baxter for his work on the launcher application.
- Seong and the Graphic Novel Cafe for running another fantastic Overload this year.
- Mark Sibly for kindly loaning a monitor for the table.
- Kirsty for her enthusiastic promotion of the bundle.
The Overload 2012 Comic and Manga convention is on the 22nd of September, next Saturday. This year a few Auckland-based game developers are putting together a bundle of sorts to distribute exclusively at the convention. Tentatively, it'll be a pay-what-you-want bundle with any proceeds heading in the direction of a yet-to-be-determined charity. Subject to change the current collection includes:
- Smashbox by JollyCorpse
- Trail Bay by Matthew Gatland
- Whale Bait by VideoJames
- Wizard's Lair by Tiny Frog Software
- Kiwi's Tale, Derelict and Witchblaster by the people who have collaborated with me and myself.
(The launcher itself is a basic action game in the spirit of Bomberman and the Wizard of Wor. I really wanted to get more milage out of Anthony's mecha artwork so I thought this would be a good use for it).
There's still a couple more games yet to be added to the bundle, but we don't quite have enough for the fifteen slots provided! If you know of anyone in Auckland that might be interested in donating a game or two to the bundle please get in touch.
The HTML5 voxel terrain demo has been updated to run a lot faster at higher detail settings (for comparison, the old voxel terrain demo is still here). The new version of the source is also available on the Monkey Demo page.
One of the difficulties with the HTML5 canvas (and many other graphics platforms) is manipulating individual pixels enmasse can be incredibly slow, even slower than just rendering numerous images.
For example, on the SNES Mode 7 demo, the 3D effect is achieved by scaling, rotating and rendering a 1024x1024 image 7,200 times a second (Once for each of the 120 horizontal lines on the bottom half of the canvas, times 60 frames a second). As horribly inefficient as this sounds, it's still much faster than programatically colouring each individual pixel, which is why the SNES demo runs much slicker than the old voxel terrain demo (which DID manipulate individual pixels).
Thankfully, the latest version of Monkey has a neat new feature to get around that. You can write pixels to and read pixels from an image at runtime, so basically you just manipulate the pixels of an image (instead of the canvas), and then draw it once. Simple as that.
I'm really tempted to have a shot at doing a Doom-like engine in Monkey now!
The Kiwi's Tale has now been ported to Monkey, play it online right here. This is the first public release of the Monkey version, so I'm expecting there to be a few bugs lurking around. Please let me know if you spot any. I've only tested on Chrome so it's the only Browser I can guarantee it might run reliably on.
Boring technical details below for those who are interested:
- Despite being browser based, this version of the game has almost complete feature parity with it's desktop counterpart (Joypad support being the most major omission).
- Gui's Portguese translation is still present, unfortunately some of the character's aren't displaying. I'll need to spend some time looking into it.
- A Flash version exists, but runs far too slow to be playable. I think it's time for Flash to be buried.
- A fair chunk of the code was ported automatically with my BlitzMax-to-Monkey converter, though there was still a fair amount of painstaking effort fixing the code line by line until it became playable.
- The only major part of the code I didn't port with the converter was the Mappy level libraries. Since the Mappy file format is binary, I had to convert the levels to a text format, and ended up Clean Rooming the libraries rather than trying to port them.