Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2018-07-28 Learning game development #1

Open
christophemarois opened this issue Jul 28, 2018 · 0 comments
Open

2018-07-28 Learning game development #1

christophemarois opened this issue Jul 28, 2018 · 0 comments

Comments

@christophemarois
Copy link
Owner

christophemarois commented Jul 28, 2018

Back to posts list · Published: 2018-07-28

Learning game development

screenshot

About

This small platformer prototype was made using LÖVE. It's my first “game” ever, it's nothing more than a prototype, and will likely never be continued. My goal is to make small things like this until I'm ready to tackle more ambitious projects.

My goal, for now, is to understand how games work and to improve my problem-solving skills by implementing small features that I find interesting and iterating quickly.

Specs

  1. Understand what a load/update/draw loop is and have a passable code architecture.
  2. Tilesets + collision map. I did this with STI and bump.
  3. Pixel-perfect movable camera. I did this with STALKER-X
  4. Have a player that responds to several action states (walking, running, jumping, climbing).
  5. Have a basic dialog system
  6. Have a jump that doesn't suck
  7. Assemble and make some development tools (press d in the game to activate collision detection and performance and position graphs)

image

↑ The development tools

image

↑ The map created with Tiled. Blue squares are special events, like climb_bottom and climb_top. Any event can have a custom property text which displays a text bubble with the text directly set in Tiled.

Postmortem

Took me about 20 hours (including the time to learn Lua).

There are some known bugs while doing a combination of jump+climb in some specifics locations, but I didn't bother fixing those.

I rewrote the game's structure twice, but it still became way too cluttered. In my next iteration, I'll definitely use event-based communication and have a state machine handle my game's state and player state. Handling all the walking/jumping/climbing intertwining in love.update() is already too headache-inducing for me.

Overall, I'm pretty satisfied with the results, which couldn't possibly have been reached without the following free assets that I used:

Credits

  • Tileset and original animated character sprite: Buch
  • Font: HeartbitXX by Void
  • Music: bart

Let me know what you think about this, what I should look into next, and how I can improve.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant