Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411640 Posts in 69394 Topics- by 58449 Members - Latest Member: pp_mech

May 14, 2024, 12:33:11 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperPlaytestingRaycasting Gravity Platformer Engine
Pages: [1]
Print
Author Topic: Raycasting Gravity Platformer Engine  (Read 1915 times)
Willseph
Level 0
**


Code monkey.


View Profile WWW
« on: November 05, 2010, 12:13:05 PM »

Hey there, I got referred to this site by someone I met at my university in the Game Design club. I just wanted to get some feedback on an engine I've been working on that I plan to turn into a game soon.

It's basically a gravity platformer engine, with a twist. All of (or at least most of) the gravity platformers I've seen allow you to just press a key or hit a button and it changes the gravity. However, with mine, you need to have a clear shot between yourself and a certain "block" that let's you switch. You can try it out here:
http://www.newgrounds.com/dump/item/82425becbba31a19efc76fdc8f351a71

It starts up as a level designer first, so place some blocks around the screen. You can press the ~ key to view the controls for right now, but here's a rundown anyway.

1 - This places solid red blocks, which neither the player nor the "laser" can go through.
2 - Gravity blocks (green) let you change the gravity if you can shoot them. Aim your laser at one and depending on what side of the block you're aiming at, it will change the gravity to one of four orientations.
3 - Mirror blocks let you bounce your laser off to make some pretty cool, complex maps.
4 - Glass blocks let the laser pass through but not the player.
5 - Noise (static, whatever) blocks are the opposite: the laser is stopped but the player can pass through.
P - Places the starting position of the player.
E - Places the exit location.
X - Eraser.

You can also hold down C to clear the map. Once you have the exit and player positions marked, press Enter to start playing. Use the WASD keys to move around and the mouse to move/switch gravity. You can also press Escape to go back to the level editor. In the final game I'll have obstacles such as electric walls that kill you, cannons, and sequences that must be performed (unlocking doors, stuff like that).

I'm also considering changing the gravity blocks so there are four unique blocks for each gravity orientation instead of the single block that depend on which face of the block is hit.

I'm still working some bugs out, and the graphics have not been worked on at all. This is simply the alpha for the engine. I'd appreciate it if I could get some feedback or advice on this, I'm really trying to get my work recognized so I don't have to worry so much about not getting a job after I graduate! Tongue
Logged
ink.inc
Guest
« Reply #1 on: November 05, 2010, 12:15:47 PM »

Hey man! What's up! Nice to see you here!

Note- make sure you introduce yourself in the "Obligatory Introduce Yourself Thread" in the Announcements section.

Also, read these first:

http://forums.tigsource.com/index.php?topic=9.0
Logged
Willseph
Level 0
**


Code monkey.


View Profile WWW
« Reply #2 on: November 05, 2010, 12:23:48 PM »

Note- make sure you introduce yourself in the "Obligatory Introduce Yourself Thread" in the Announcements section.

But of course.
http://forums.tigsource.com/index.php?topic=45.msg451528#msg451528
Logged
RichMakeGame!
Level 3
***



View Profile WWW
« Reply #3 on: November 05, 2010, 12:24:53 PM »

hi, can I suggest the game starts with a pre-made level? I didn't have a clue what the gameplay was supposed to be Smiley
Logged

Bootleg TurboDrive
http://forums.tigsource.com/index.php?topic=30133
testers welcome: will do playtest swap if you need yours tested, PM
www.richmakegame.com
Willseph
Level 0
**


Code monkey.


View Profile WWW
« Reply #4 on: November 05, 2010, 12:37:57 PM »

hi, can I suggest the game starts with a pre-made level? I didn't have a clue what the gameplay was supposed to be Smiley

Alright here you go:
http://www.newgrounds.com/dump/item/82425becbba31a19efc76fdc8f351a71

It still starts off with the level designer, but just click somewhere to focus the Flash and hit Enter to play it.
Logged
Pixelthief
Level 0
***


View Profile
« Reply #5 on: November 05, 2010, 12:47:28 PM »

Nice engine! Its always great to see games based on gravity mechanics! The whole idea of using ray tracing to check the surface normal of a block is actually very similar to the way Super Mario Galaxy did it and the algorithm I'm using on one of my current

. If you're interested in reading up on it, you might want to check this out:
http://www.gamasutra.com/view/feature/3593/games_demystified_super_mario_.php?page=1
Logged
Draknek
Level 6
*


"Alan Hazelden" for short


View Profile WWW
« Reply #6 on: November 05, 2010, 12:53:30 PM »

Pretty neat, lots of potential for cool level design here.

One nitpick: I think I should be able to change gravity while jumping. If you're convinced otherwise though, you should remove the aiming line while in mid-air.
Logged

RichMakeGame!
Level 3
***



View Profile WWW
« Reply #7 on: November 05, 2010, 12:57:48 PM »

aah now I get it- yeah, that was fun and can totally see the potential Smiley
Logged

Bootleg TurboDrive
http://forums.tigsource.com/index.php?topic=30133
testers welcome: will do playtest swap if you need yours tested, PM
www.richmakegame.com
ink.inc
Guest
« Reply #8 on: November 05, 2010, 01:08:05 PM »

Aesthetically, what do you have planned for the project?
Logged
Willseph
Level 0
**


Code monkey.


View Profile WWW
« Reply #9 on: November 05, 2010, 02:44:06 PM »

Aesthetically, what do you have planned for the project?

Well I have an artist but he's busy, so there's still a lot to go. Though the samples he's sent seem to be pretty awesome.

« Last Edit: November 14, 2010, 03:18:31 PM by Willseph » Logged
Willseph
Level 0
**


Code monkey.


View Profile WWW
« Reply #10 on: November 14, 2010, 03:00:47 PM »

Alright, made a bunch of updates. First off, I changed the graphics a little temporarily just to make it a little more intuitive as to what each surface means, mostly stolen from Super Mario World. Apart from some major performance modifications, I added some new blocks.

6 and 7 create a new kind of block which is like... a binary pass block? I dunno what to call it. Basically you shoot it to toggle it on and off, and when it's off the block is solid, though when it's on you can pass through it. They're the same block, just in the level designer when you press 6 it's turned off and 7 it's turned on.

Here's the trick though: whichever binary block you toggle, all of the others in the same row or column switch also. Should be fun to make some crazy puzzles with these.

8 is a general death zone, either electricity, spikes or whatever. You touch it and you die, simple.

Apart from the new blocks, I now have a very crude import/export map system. It basically encodes an entire map into a (long) string, which can be sent across the blogosphere where someone else can then import it. In the final game the strings will NOT look like this since they're way too damn long. I'll have some kind of URL system to where in the game it saves the level code into a database while also assigning it a small alphanumeric code. That'll be after I get the new graphics in and stuff though.

However, for right now, crude or not it works. Design your level (hold down C to clear the map) and press X to export it, and you can press I while in the designer to import someone else's code too. And again, scroll up to the OP or press ~ in the game to see all the controls.

To test the import system (and the new, much improved mirroring algorithms), here's a crazy test level:
Code:
33333333333333333333333333333333333333333333333333;30003333300000000000000333333000000000000000000003;30000000000000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;30000000030000000333303333000000000000000000000003;30000333300000000000000000000033300000000000000003;30000000000000000000000000000000000000033303000003;30000000000000000000000000000000000000000000330003;30000000000000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;30000000033330000003333300000000000000330333000003;30000000000000000000000303333033330000000000000003;30000000000000000000000000000000000000000000000003;30000300000000000000000000200000000000000000000003;30000330000000000000000000000000000000000000000003;30000033300000000000000000000000300000000000000003;30000000000000003030000000033000033330000000000003;30000000000000000000000000000000000000033330000003;30000000000000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;30000033330000033333000003333330333333000033330003;30000000033000000000000000000000000000000000000003;30000000000000000000000000000000000000000000000003;33333000000000000000000000000000000000000000000003;33333333333333333333333333333333333333333333333333;~46,26;34,1;3

And finally, the URL to the game:
http://www.newgrounds.com/dump/item/9412231944311a08b09a1a914bc019bf

Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic