Harvester 008 by Lintfordpickle

[raw]
made by Lintfordpickle for Ludum Dare 52 (JAM)

screenshot.png

Backstory

You are an A.I. program in control of a harvester for 'Mega City'. Due to budget cuts, the fleet is in a state of ill-repair, and you are the last ship left. The city is depending on you.

Instructions

  • W,A,S,D - control the ship.
  • H - toggle help on/off

Animation.gif

Motivation

I joined this LD as an opportunity to test a physics engine I programmed over the Christmas holidays (just collision detection and resolution, but with rotations). The engine was missing a few 'core' methods, which only became apparent over the weekend and were added (collision response callbacks, applyForceAtPoint etc.). I'm happy to say that for a basic games, is seems to be okay.

It would be great if you could let me know if you have any problems running the game. You should be able to just run the executable and it should start.

I've already heard from friends that the movement is lagging, so hearing from you all would be awesome!

Thanks

updated

  • changes physics update from 90Hz to 60Hz
  • lowered shader requirements from 460 to 330 (hopefully this fixes crashing on startup)
  • lowered gravity
  • removed 'spacebar' to flip

Post-Jam

As I didn't have enough time to finish all the things I wanted to include in the game during the 72 hours, I have started working on a post-jam version of the game. The features and gameplay will largely be the same, but the graphics will be improved as I finish drawing the city and add animations to the background.

screenshot.png

Both versions are available for download on Itch.io

Ratings

Overall 316th 3.614⭐ 24🧑‍⚖️
Fun 382th 3.409⭐ 24🧑‍⚖️
Innovation 218th 3.591⭐ 24🧑‍⚖️
Theme 259th 3.932⭐ 24🧑‍⚖️
Graphics 225th 4⭐ 24🧑‍⚖️
Audio 493th 2.278⭐ 20🧑‍⚖️
Humor 626th 2.2⭐ 22🧑‍⚖️
Mood 491th 3.31⭐ 23🧑‍⚖️
Given 13🗳️ 15🗨️

Feedback

Nick Sandison
10. Jan 2023 · 05:33 UTC
Good job on the physics. The controls feel a bit weird though. It's a bit too easy to lose control and having the button to recenter the ship helps with that but seems out of place.
🎤 Lintfordpickle
10. Jan 2023 · 20:55 UTC
Hey thanks for playing it @nick-sandison. Yup, you are spot on about the controls, I couldn't create a good feeling for the handling of the ship and its definitely frustrating when you slightly 'oversteer'. The 'spacebar' to correct the ship was just a cheap way out :s

btw - I tried to play your game on itch, but I got the following error (using Firefox):

![Screenshot_20230110_0954425.png](///raw/49/z/55fc1.png)

If you get it working, let me know and I'll give it a go.
JakubBala
12. Jan 2023 · 16:33 UTC
I was unfortunately unable to run the game :[
Dissapointed because it looks so good!

Heres the last lines of the Debug file if it helps <3

16.32.15.419: ConstantsApp: [main] Registered value: DEBUG_LIVE_TEXTURE_RELOAD : true

16.32.15.423: ResourceManager: [main] Adding EntityGroupUid to protected list: -2147483647

16.32.15.429: ScreenManager: [main] Added screen 'MenuBackgroundScreen'

16.32.15.432: ScreenManager: [main] Added screen 'MainMenu'

16.32.15.432: GameWindow: [main] Loading GL content

16.32.15.473: GLDebug: [main] GL_INVALID_OPERATION (1282)
🎤 Lintfordpickle
12. Jan 2023 · 17:50 UTC
thanks @jakubbala looks like I've still got some work to do :(
JakubBala
12. Jan 2023 · 20:41 UTC
@lintfordpickle it really does look great though, dont be discouraged :)
🎤 Lintfordpickle
14. Jan 2023 · 13:36 UTC
so hopefully all the issues have been fixed in today's release
Riodeluz
14. Jan 2023 · 14:57 UTC
Graphics are good!
Perhaps some mechanics should be added to the game to make it less repetitive
Overral, nice entry!
Mickxe
14. Jan 2023 · 16:01 UTC
Good job on getting this far in a weekend! It would be really challenging if there were other flying vehicles that you had to dodge as well. :D
malibaturhan
14. Jan 2023 · 16:16 UTC
needs some tips what to do next I think
nullval
14. Jan 2023 · 18:22 UTC
I can't play the game, it just shows a blue screen and some of the UI :/
amkingTRP
14. Jan 2023 · 18:26 UTC
This is definitely a good basis to build upon for a more fleshed out game. I really liked the idea of a cyberpunk version of Thrust and it was very similar. I think the problem is the speed, probably gravity is too high; I used to be pretty good at Thrust in the late 80s but I found this a bit too hard to control in comparison.
The physics, while impressive, do work against the player a bit here.

To expand it I would recommend maybe toning down the spinning and gravity to make it a bit easier to control; the cyberpunk setting and atmosphere you've created is brilliant and could lead to all sorts of potential delivery / combat missions (if you added weaponry of some description).
Hadik
14. Jan 2023 · 18:59 UTC
It fits perfectly, you really hit the theme. Audio for me is not good, but not bad. Average fun game, but maybe next time you will polish the gameplay and it will be better. Interesting, really interesting how you approached the graphics, I like it a lot. Very good mood, nice work.
IanLux
14. Jan 2023 · 19:13 UTC
Really difficult haha
Very interesting idea!
DmitryGalias
14. Jan 2023 · 20:01 UTC
Hi @lintfordpickle I have issue with the game. When I press start I only get blue screen and some UI.
![Screenshot_1.jpg](///raw/833/53/z/56712.jpg)
Klaus Peter
14. Jan 2023 · 21:24 UTC
The flight controls are definitely a cool game mechanic that were fun to play with. I think they could have been a little less sensitive so you are less likely to completely crash from the slightest collision :D In the beginning it was a bit difficult for me to recognize what objects I can interact with. But overall I really also liked the gloomy city feel conveyed by the graphics.
digital bacon
14. Jan 2023 · 22:38 UTC
I found the ship really difficult to control, and it wasn't immediately obvious what I'm supposed to do, but I really had fun playing this! The art style is terrific, and I think you've got the beginnings of a really decent game here. Excellent work!
🎤 Lintfordpickle
15. Jan 2023 · 00:06 UTC
@nullval @dmitrygalias thanks a lot for the feedback - I'm not sure what is causing it at the minute, but the fact that now 3 people have the same issue is pretty bad, so I'll take a look.
🎤 Lintfordpickle
15. Jan 2023 · 12:29 UTC
@nullval @dmitrygalias thanks again for your feedback - I was able to reproduce this on one of my other computers and find a fix (I wasn't flushing the GL command queue on the background thread after the loading screen). This probably affected all my previous LD games and I never knew.

I have uploaded a fix now, if you have time, could you let me know if it works for you?
nullval
15. Jan 2023 · 14:25 UTC
@lintfordpickle ah cool :) great work, now that I've tried it, it's quite diffult, but also really fun. the graphics are good and for the most part easy to read. There's a couple of buildings where I weren't sure where the collision box were, but it was easy enough of to remember after the collision. :)
therealjtgill
15. Jan 2023 · 16:10 UTC
Hello fellow physics engine developer! This is a very polished demo of a solid 2D physics engine. I was only able to feed five cities before I completely totaled my harvester. I might have lost my job, but I can hold my head high knowing that I was able to do some good for these virtual people in need.

### Things I liked

1. The graphics were solid - very nice texturing and overall color scheme. The harvester popped out nicely from the city background
2. Contacts, collisions, forces and torques were all handled very well
3. The gameplay loop and mechanics took some getting used to, but could very possibly be mastered with time. This level might make a good candidate for speed runners (at least I'd like to see someone speed run it!)
4. The damage mechanic is a very nice addition!

### Things I noticed

1. The controls are very quirky and will probably take a bit of adjustment for most people. What you've implemented is called a "rate controller" - input from the user directly commands body rates and thrust forces. I'd recommend looking into letting the user control the orientation angle of the harvester directly using a PD (proportional/derivative) controller. The idea is that hitting `A` or `D` would command the harvester to some hard-coded angles (e.g. 25 degrees to the right or 25 degrees to the left), and when neither `A` nor `D` are pressed the harvester's orientation angle is set to zero degrees. The control flow would look like this:

```
user input --> orientation angle command --> PD --> angular velocity command --> PD --> torque command
```

This is known as a 'cascaded PID controller' where the output of one PID controller is used as the setpoint of another PID controller.

If you want to talk more about these ideas, please feel free to ping me through Discord (link in LD profile).

This is a stunning demo, and I hope you're able to use it in later game jams!
🎤 Lintfordpickle
15. Jan 2023 · 19:21 UTC
@therealjtgill Thanks for the in-depth write-up and taking the time to play!

I didn't know about the different methods for controlling the ship that you mentioned, so I'll have to read up about the specifics of each one. I think lack of experience on my part led me to just implement the most basic/obvious approach.

However, it sounds like I may have tried to implement a proportional controller during the jam, but I couldn't figure out how to get both the player generated torque *and* maintain the angular velocities which result from collisions with the level geometry. I think the problem is, if the user has to counteract the effects or a collision with a building, then the controls don't feel 'tight'.

I admit though that I'm new to a lot of the concepts used in physics, so maybe this problem isn't as hard as I'm imagining.
DmitryGalias
15. Jan 2023 · 20:19 UTC
Nice game! The idea and game mechanics fit perfectly with the theme. Vehicle control is a bit tricky but I like it. Good work!

My score only 3 food.
![Screenshot_3.jpg](///raw/833/53/z/567ea.jpg)
MaiMai
25. Jan 2023 · 00:46 UTC
Great entry! Super cool that it's your own engine.
As to the game, it's a solid loop...once you find out where to do the things, haha. Took me three tries to finally get the water to the fields and the fields to the warehouse (I actually died the first two times because I was flying around looking for the warehouse to deliver the wheat).
The controls are difficult but after a bit of practice you start to get better and it feels really good to succesfully zip through openings. And what that means is that you take bigger risks to go faster but when you do mess up it _really_ hurts, haha.
I actually played the post-jam version (you said the features and gameplay are the same) and I didn't have any issues loading, running or lagging on Windows.
Again, well done!
🎤 Lintfordpickle
25. Jan 2023 · 09:31 UTC
Thanks for playing!
Even the post-jam version hasn't been updated for a few weeks now. The lack of visual cues on where to go (and what even is happening) is something I need to fix in the next version - I'd also like to add gamepad support evtl. too


Thanks for the feedback!
johnnysix
25. Jan 2023 · 19:22 UTC
I played the post-jam one - the graphics reminded me of Sim City for some reason, really liked the blade-runner style ads too. If you continue to develop post-compo, aside from some sound/music, some icons, maybe some path indicators would be cool.

Did you ever play sub-terrania? The ship controls remind me a lot of that. Some levels with different gravity would be cool.

![aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.jpg](///raw/028/2/z/56c95.jpg)
Tomssuli
01. Feb 2023 · 19:41 UTC
Nice game! There are not many "cave flight" games nowadays so this was a fresh take on harvesting :)
Too bad I didn't find this during the review period.

I loved the pixelart. The city had nice feeling about it. Music or sounds would have made the experience even more immersive.

Control scheme was good but I can see people turning away from it as it required skill to control the ship. It kinda reminds me of classics like Wings2 by Miika Virpioja.
🎤 Lintfordpickle
01. Feb 2023 · 19:43 UTC
@tomssuli thanks for leaving a comment.
That Wing2 game you mentioned sure seems obscure - i'm downloading it now and I've give it a go :)
Tomssuli
02. Feb 2023 · 22:39 UTC
@lintfordpickle

It seems that caveflight games were a national genre for Finnish indie developers in the 90's. There was at least Gravity Force 2, Turboraketti, Auts, Kops, Assault Wing, Wham, V-Wing, Wings... and later Wings2 for online multiplaying. The Wings2 even runs on todays computers.
🎤 Lintfordpickle
03. Feb 2023 · 07:11 UTC
@tomssuli I gave it a go - Man I was surprised by the amount of features and the depth of the game - especially when the soldiers jumped out :D

I love the early 200's late 90's games like this (mainly for the aesthetics), the main problem is the lack of exposure makes them difficult to find.
Tomssuli
03. Feb 2023 · 14:20 UTC
Yes - the deepness - or the meticulous dynamics and interactions between entities are characteristic in finnish indie games.

And yes, they can be difficult to find. Other good ones we played back then were Liero, Slicks n' slide and Mine bombers. Which of the latter two have spiritual sequel steam versions for modern computers (with different names though)