Log In  
Follow
JunoNgx
Wonyun Trench Run
by
[ :: Read More :: ]

Cart #wonyuntrenchrun-3 | 2020-06-20 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
4

Here's my first game on Pico-8 :D

While I am no stranger to gamedev, this is the first time I work on Pico-8. This is also an emotional moment for me, because I finally get to complete a project I started 6 years ago. This is also the very first time, as unbelievable as it is, I have genuinely enjoyed playing my game and thinking as an audience :D

Instructions are all in the game, I'd like to see how I have improved my tutorial skill. Let me know if you have any problem.

(Remember, press P/Enter (default Pico-8 keybind) to access the pause menu.)

If you are keen for poke around and/or learning, I thoroughly wrote this game to be readable and the codebase is moderately commented and put it on GitHub. This game implements an entity component system, not the usual standard object-oriented approach; let me know if I did it right. I have also created a boilerplate implementing these in case you'd like to use some of them. Code critiques and feedback are highly appreciated :D

I have also learned a massively lot and fixed an insanity-inducing bug caused by the max integer value of 32767 hours before launch :D

Update 2020 Jun 16: Remapped keys.
Update 2020 Jun 17: Fixed an incorrectly mapped key in caption state.
Update 2020 Jun 21: Minor refactoring and change in draw layer with no remarkable impact on the game.

P#78124 2020-06-15 17:15 ( Edited 2020-06-20 17:09)

[ :: Read More :: ]

Hi,

I'm trying to implement a simple Component Entity System. The amount of systems (which are actually functions) is getting bigger, and I'm putting them in a table to iterate over to avoid implementing back and forth.

However, my iterator function using all(t) does not work at all.

Here's the structure of my systems:

updatesystems = {
    system1 = function(t) [...] end,
    system2 = function(t) [...] end,
    system3 = function(t) [...] end,
    system4 = function(t) [...] end,
}

t is a table which includes raw data of all entities.

This is my current codes, which work:

function _update()
    updatesystems.system1(world)
    updatesystems.system2(world)
    updatesystems.system3(world)
    updatesystems.system4(world)
end 

What I would like to do

function _update()
    for system in all(updatesystems) do
        system(world)
    end
end

And I have no idea why it doesn't work. None of the systems updates.

Any suggestion?

P#76548 2020-05-14 10:41