Plutonium

Overall★★★★★★★★★★3.00
Fun★★★★★★★★★★3.00
Innovation★★★★★★★★★★2.08
Theme★★★★★★★★★★2.67
Graphics★★★★★★★★★★2.83
Audio★★★★★★★★★★2.54
Humor★★★★★★★★★★2.08
Mood★★★★★★★★★★2.67
For this Ludum Dare I wanted to make a 3D platformer, whether it fit the theme or not.
The platformer that I made, sort of follows the theme.
I am very happy with it.
The last two levels are very tricky, until then it's ok.

If you are downloading the source, you have a Visual Studio 2017 solution.
Just make sure that you run in x86, and it should run, you may need to add OpenAL32.dll (from OpenAL Soft) to the Release, or Debug folders.

Have fun!!

Ned

EDIT--------------------------

So after playing the game, I have realized that the last level is very difficult. It is all possible in separate parts, but I cannot personally complete it in all one part. Since I put time and effort into creating a win screen, I made a new version just now, that simply splits the last level into multiple. The original is still in the links section.

New Version

My friend completed the original, so it is possible :)

screenshot

Comments16

bwalter
bwalter1 Aug 2017, 18:56
a nice little game :)
BaconGamer882 Aug 2017, 13:41
Looks awesome, but I sadly can't rate :(
zulubo2 Aug 2017, 13:47
Very fun! My one complaint is that the gravity is much too high. It makes it feel like the whole game is in fast-motion
Simon Millard2 Aug 2017, 13:48
Very neat game! The graphics are awesome, and it's fun to play! I have to subtract a little bit from the otherwise excellent overall score because the theme isn't very strong, and it's quite a generic game without much innovation. But there is no doubt that this is a little gem - well done :)
rigdonware2 Aug 2017, 13:48
That was a pretty fun game! Level 4 was pretty difficult!
Bonelazy2 Aug 2017, 19:09
It was pretty difficult and eventually I had to give up at the end to keep my sanity :) It was a fun little platformer though. My only complaint is what @zulubo said. Good job.
mathijs750
mathijs7503 Aug 2017, 13:28
Fun little platformer. The camera could use some love, it feels too snappy in tight spaces and too slow when you fall down a pit. As others have said level 4 is very difficult, I think that is partially because how the controls and camera work. I liked the in-game tutorial, but the text should have been 2D, the parallax on the letters mad it hard to read.
Epono3 Aug 2017, 15:13
Nice gameplay, jumps are a little too rigid though I think.
Nnnnneeeeddddauthor4 Aug 2017, 11:20
@mathijs Yea, so, this game was made without an engine, if you look at the code you will see what I mean ;).
So I didn't really have time to make small tweaks with the camera, text, gravity etc... Valid points though, next Ludum Dare, I will write some base code or something. Also, the gravity is still way lower than it is in the real world, I feel like some of you are just comparing it to other platformers, and you shouldn't just complain when stuff is different to other games. It's just *different* it's not *wrong*.
Snirp12 Aug 2017, 19:16
Tough as nails, I couldn't get very far.
IcyLava
IcyLava15 Aug 2017, 16:12
-duplicate
IcyLava
IcyLava15 Aug 2017, 16:12
I've published my comment multiple times and made duplicates, sorry :P
IcyLava
IcyLava15 Aug 2017, 16:12
@nnnnneeeedddd You say that you've set the gravity to be much lower than in the real world, but it's clearly very intense, so I looked at your code and...
```
void Player::update() {
...

acceleration += glm::vec2(0.f, -0.025f);//gravity
velocity += glm::vec3(acceleration, 0.);
}
```
Are you... accelerating acceleration??

Gravity doesn't increase acceleration, it IS acceleration, so it should be
```
// = not +=
acceleration = glm::vec2(0.f, -9.8f / 60.0f);
// 9.8 might not be the right value for your game, though. In my game, I used 9.8 * 4.
// You might need to decrease the jumping force too.

// Also, since it's constant, you don't need to set it every frame.

// You can actually just do this instead:
velocity += glm::vec3(0.0, -9.8f / 60.0f, 0.0); // gravity
```
With the code you have now, gravity accelerates up to 45 m/s^2 in just 0.5 seconds! So at that point, it's almost 5 times stronger than normal gravity. That's why it feels like the gravity is strong, it's because it mostly is :P . How tall your player is also affects how intense the gravity feels, if it's human-like it should be about 1.8 meters.

You might want to watch this when you have some time: https://www.youtube.com/watch?v=hG9SzQxaCm8

Also, you're doing this in `void Player::doMovement(GLFWwindow* window)` too, although in this case maybe it's not that bad.

So, yeah... anyway, mainly I had the same issues with the game as other people (the jump, camera etc.)

But great job on making this with no engine!
IcyLava
IcyLava15 Aug 2017, 16:14
-duplicate
Manumeq
Manumeq22 Aug 2017, 14:58
Superb game. It was a lot of fun and I found it challenging in a good way. The music and effects are really nice too, and fit with the theme of the Jam. However the movement speed for the character is a bit to high for some parts of the levels. I would strongly suggest to add some kind of "walking button" to hold when you need to go a bit slower. Also incredible work, specially since the game is pure c++ and not some typical engine. Cheers!
Nnnnneeeeddddauthor28 Aug 2017, 13:52
@icyLava thanks for the in depth comment, I will check out that video. In terms of accelerating acceleration, that's not actually what is happening here, although it looks like it, this code isn't written particularly well (not very readable as demonstrated), but.... It's a Ludum Dare. Anyway, the acceleration variable, is actually acting as the velocity variable here, that is why there is confusion, the reason for that is it's set up so the 'velocity' variable is zeroed every tick(), this is for collision reasons, and the terminology is fucked because of later changes in design (but rushed). Anyway, you are completely right that the code is technically wrong, but because it doesn't read right, not because it doesn't work... I loved your comment :) :)

Ned

Other games by @nnnnneeeedddd

Found a bug?
Tell us on Discord