Subscribe to:

The Kiwi's TaleWitchBlasterDerelict Blow Stuff Up

Earok's Monkey Demos

Earok's Monkey Demos
Earok's Monkey Demos
Earok's Monkey Demos
Earok's Monkey Demos
Earok's Monkey Demos
Earok's Monkey Demos
Earok's Monkey Demos

A collection of four demos written in the Monkey language, including Monkey source code, pretranslated HTML5 versions (all platforms) and precompiled C++ versions (Windows only).

Includes:

Downloads
Tags:

Comments

Jesse (not verified)
Earok's Monkey Demos

You Rock Dude awesome demos.

Earok
Earok's picture
Offline
Joined: 02/06/2009
Thanks mate, much

Thanks mate, much appreciated, and welcome to the site!

Neuro (not verified)
That mode 7 demo is nice :)!

That mode 7 demo is nice :)! It would be awesome to remake F-Zero using monkey :)!!

Earok
Earok's picture
Offline
Joined: 02/06/2009
Cheers Neuro, I'd love to see

Cheers Neuro, I'd love to see an F-Zero remake in Monkey, too - though my preference would be for F-Zero X ;)

Neuro (not verified)
Actually, now i'm wondering

Actually, now i'm wondering if it were to be possible to have animations on those image maps :)?

Earok
Earok's picture
Offline
Joined: 02/06/2009
Certainly, and there's a

Certainly, and there's a couple of different ways you could do it.

Say, hypothetically you were doing a game set on an island, and the island was surrounded by animated waves. Since the map is just an image, you could have multiple different maps with the same island but with the waves in a different position, and change frames every so often.

Also, you could draw the water and the waves as the 'bottom layer', and the draw the land over top with transparencies.

Neuro (not verified)
So i guess you would be

So i guess you would be replacing the maps with different frames of waves images then? Also, how would we go about adding collision detection to the map itself? Or have another sort of "collision map" layer?

Earok
Earok's picture
Offline
Joined: 02/06/2009
Yes, replacing the maps with

Yes, replacing the maps with different frames would work.

As far as collision detection goes, that's a bit trickier. I think, in Monkey the best you could do is manually define the collision boundaries on the map in code or text files.

The ideal scenerio would be to make a 'collision map' image which isn't actually drawn onscreen but is used by the game to determine where the collision boundaries are, but currently I don't think you can 'read' the RGB values of the pixels in Monkey.

slenkar (not verified)
gr8t demos m8 have you ever

gr8t demos m8

have you ever played alien legacy? the terrain demo looks a lot like it

slenkar (not verified)
the six degrees of freedom is

the six degrees of freedom is great but the rotation gets a bit squirrelly if I rotate in 2 axes at the same time.

Does it use quats to rotate? That would fix all those issues

Earok
Earok's picture
Offline
Joined: 02/06/2009
Thanks Slenkar, Yes, the six

Thanks Slenkar,

Yes, the six degrees demo does indeed use Quaternions, infact most of the Quaternion code is based on the Blitz3D source. The reason why the backdrop gets a bit messed up when rotating is because I'm "faking" the 3D backdrops, since I can't render a proper textured skybox. I'm basically just drawing images directly to the screen and rotating them by the roll of the camera, which flips when you pitch past the north and south poles. 

I haven't seen Alien Legacy, though it looks like the flight scenes might be rendered with a similar concept. The demo was inspired by the Novalogic Comanche games of the early 90s.

thedip (not verified)
mode 7 demo

Hi, I appreciate you releasing the demos for others to learn from :)

I have a bit of an issue with the mode 7 demo. I'm using Monkey v66. I realize these demos are a few years old so I'm not sure if something's changed in Monkey since then or if there's something in the code I'm missing.

If I try to compile, I get an error on the line:

SetTile ImgTrack

saying identifier 'SetTile' is not found.

I can comment that line out, and the demo runs, but the image gets screwed up near the edges I assume. I've tried searching around but I can't find what SetTile should refer to. Any ideas?

Earok
Earok's picture
Offline
Joined: 02/06/2009
Ah crap, sorry thedip. I was

Ah crap, sorry thedip. I was doing some experimental stuff on the tech demo (mainly, being able to tile the image so that the kart track repeats endlessly) but must have forgotten to take it out before the last update.

I'll get the demo working and republish the source tonight.

Just curious, are you looking to make a mode 7 esque game with Monkey?

thedip (not verified)
Mode 7

Hi, thanks for the quick reply. No worries, I'm just glad the code is still available.

I actually am working on a mode 7 esque game, and coincidentally wanting to tile the map endlessly, too.

Earok
Earok's picture
Offline
Joined: 02/06/2009
Ah hah. Well, I've got the

Ah hah. Well, I've got the original version of the source going, plus made some improvements (it now supports different resolutions, including widescreen, plus some fixes to the logic were done so it doesn't have the "fisheye" effect near the bottom left and right edges).

You should just be able to drop this file into the mode7 folder, I'll do a full republish of the monkey demos later.

https://www.dropbox.com/s/3epo8hhcbb0gtt7/mode7.monkey

I haven't got the infinite map tiling working again yet, though to be honest the pseudo 3D I did in this demo is hackey (basically, redrawing a 1024x1024 image for each of the bottom horizontal lines) and may not work well with infinite tiling. The per-pixel rendering seen in the raycaster demo might be a better option, or better yet maybe a rudimentary WebGL engine would suit the needs of your project.

thedip (not verified)
Thanks for the code! If I

Thanks for the code!

If I can't get it working to an acceptable level, I might try a hybrid approach.

Originally I was going to go with a rails system like I did for my racing game (based on the info from the wonderful page at http://www.extentofthejam.com/pseudo/ I created http://elusivegames.com/games/rocketracers/rr.htm ), but decided to give the player more freedom in direction this time.

Earok
Earok's picture
Offline
Joined: 02/06/2009
Woah, that's awesome man.

Woah, that's awesome man. Looks and runs great. I've been wanting to do something like that for ages (actually I kind of want to make a game like Special Criminal Investigation, if I ever get around to it).

Are you releasing the source code to it, or going to post it on MonkeyCoder?

thedip (not verified)
Thanks! I'm always afraid to

Thanks!

I'm always afraid to post things that I feel "aren't done" yet, but I probably should sometime soon. I might release the source code or an engine variant of it for people to use, when I can find the time. So many projects I want to get done!