Log In  


I have been having a blast working with Pico-8 as a new game dev. There is definitely a learning curve coming from the likes of Godot and Unity for a bit before this, but I really enjoy getting to make everything from the ground up. It feels like your own thing, the, "I made this!" feeling is amazing and frequent. Thank you Lexaloffle.

Been coding for a while now on side projects here and there, mostly in Python, C# and JS, but for the longest time I wanted to make a game. I have felt it in my blood since I was a boy. I loved video games, how great would it be to get to make my own!

I am not sure, and I hope I am not alone here, but I feel a BIG barrier to entry when it comes to making video games is art. For me, art was a capacity for possibility that my mind could never wrap my head around. I mean with a thousand or more color options, who wouldn't have choice anxiety?? This is where I think Pico-8 shines the brightest and where it has roped me in:

THERE ARE ONLY 16 COLORS and EACH TILE ONLY HAS 64 PIXELS!!

Of course, my breakout game looks like this and I am only following a tutorial so far, but I have big hopes. Thank you Krystman for your incredible videos and insightful advice!

For new or experienced people in any creative field, limits are the hands down best way to engage with creativity. The limits bend your mind towards creative ways to solve problems, it feels like solving a puzzle. As opposed to simply choosing a path that looks right; similar to choosing which brand of BBQ sauce in the Walmart aisle is the right one. If you are anything like me, you just go with the one you know.

It brings me back to my days as a trumpet player 4 years in trying to learn to improvise over a simple 12-bar blues. The instructor told us to create a solo using only 3 notes of the scale we were learning.

I thought he was crazy, ONLY 3 NOTES??

See the parallel? I will still use this technique to this day to make some of the most rhythmically interesting and intense improvisations I can muster, of course I elaborate a bit more than only 3 notes, but it is a great place to start crafting something meaningful.

I will end this post from a beginner, to a beginner, maybe even to future me, collision detection is a challenge, put your mind to it and you can figure it out. It has been done before, and it will be done again, with or without you.

That being said, anyone have any general tips when it comes to collision? What works for you? How do you deal with two different objects that have varying movement speeds?

Anyways, I intend to post here about my journey through Pico-8 and game dev in general. Let me know how you are doing down in the comments, or post about your story in game dev so far! Remember, someone loves you and cares about you. Have a great day <3

4


1

I agree, @mvolpe94. PICO-8 is great at keeping scope under control and avoiding choice paralysis.

Completing your first game and seeing your friends playing it is a great feeling. It's addictive...

Welcome to the community!


Thank you @andrejtrindade for the welcome! I really enjoy the community here so far. Everyone is so helpful! I just tried your Tiny Tactics game and I enjoyed it! I think the progression towards difficulty is really cool, I like how the types of enemies start to work together to make the levels more challenging.


I'm glad you liked it, @mvolpe94! It was my first game ever.

I started making a new PICO-8 a couple months ago... Hopefully I'll finish it soon!


@mvolpe94
Welcome. Stick around and you'll be even more addicted to Pico-8


Thanks @thesailor I think I am already addicted! Been working on Pico-8 every day since I purchased!


@thesailor I also tried some of your games. Scoundrel is so fun! I saw videos of the game, I never thought I would be talking with someone who made such a polished game!

Love the art and style.

How long did it take you to create?


@mvolpe94 Thank you for such an awesome compliment. I'm glad you enjoyed it! Scoundrel isn't something most play but I created it as a learning experience working with LUA tables. I kept the scope of the game minimal so that I didn't spend too long on the coding for it. I also learned more about COROUTINES in Pico-8 as well with Scoundrel. Though as a beginner you don't need to worry about COROUTINES. Tables though is definitely something you gain a lot by if you learn them in the beginning.

EDIT: Scoundrel took about 2 weeks to make. But Gemstone Dredging to I think about 2 or 3 months. It was my first Pico-8 game.


Wow, I am very impressed at the two week time span, that is not a lot of time... It would take me more than that just for art I think...

Tables are a godsend, I come from the likes of Python and C# so I am no stranger to objects. It is kind of how I think when it comes to programming.

COROUTINES are huge! I just saw a video on them a couple days ago, I am so glad to even know that exists. I made a game for my wife this weekend that was basically a slide show that allowed her to choose the experience she would want for our anniversary, she really appreciated it! But if I knew about coroutines making it would have been so much easier. I considered going back and refactoring, but I don't think I can be bothered, I'll just work on something new!

@thesailor As someone who has been making Pico-8 games for a bit now, do you find that making objects in general saves space or does it tend to balloon the amount of tokens? I have this very, I want to say, Python-esque hatred for global variables and as I go and make things myself I find that I am very bothered about creating functions that enact a change on a global variable. I would much rather create a player object and change that objects position than set a bunch of plr_x and plr_y variables from the init function...

I know this was long, just some thoughts


Ah well I am not the right person to be asking that @mvolpe94.
I am still not that great with code and you'll see that when you look at my game's code haha... But there are some super awesome coders here that will have all the right answers.


There are no proper objects or classes in PICO-8, but you can use tables as objects.

Tables can contain variables, which can be booleans, strings, numbers and functions.

That said, this approach costs more tokens, so I only use it with entities that will be spawned more than once (like enemies).

For singletons (like the player), I stick to global variables and functions (defining a naming pattern helps keeping things organized).

Using variables to point to different functions depending on the state of the game is also very efficient. Like, for example, a variable d that can point to title_draw() or level_draw() so you can call d() from _draw().

But I wouldn't worry too much about tokens on your first projects. When your first BIG project hits the token limit, you can always refactor - that's what I did, at least...


Always nice to meet new members!
The possibilities with PICO-8 are innumerable.

My name is Steven, and I've never made a great PICO-8 cart, but I've fallen deeply in love with the engine. Both the engine and the community are welcoming and cozy. And a lot of people post cool passion projects here.

If you look at my carts, I have trouble finishing projects. But in general, PICO-8 is an amazing tool for learning quick while creating amazing things.


@thesailor That's ok! No worries, I thought you might have some insight as you have finished a few games!

@andrejtrindade I think you have a point on not making an object for the player as in most Pico-8 games you would only have one or two of those. But my head goes towards making an object say called, actor, and other objects in-game derive from that actor class most of its properties and functions, I would be curious to see if something like that saves tokens. I feel like it can be difficult to truly tell until you are most of the way done with the game you are making then all of a sudden you are yelling profanities at the computer screen because you chose to make objects and prioritize readability over "magic numbers." I guess we may just have to see..?

Steven()#6 It is nice to meet you too! Nothing wrong with not making super polished games as long as you are having fun doing it! And I totally agree, so many amazing projects by some very dedicated and skilled devs.

EDIT: Removed the @ for Steven's name, it linked to the wrong person


I know the feeling, @mvolpe94. I started defining variables to act as constants in my first game to avoid magic numbers in the middle of the code. But you will quickly realize that you end up wasting a lot of tokens that way. Unless you have really good reasons, magic numbers save tokens - and you will probably use them a lot on bigger projects.

If you have a few (dozen) hours to spare, I suggest you keep watching Lazy Devs' tutorials to the end.

Kristman is great at discussing these kind of decisions. I still haven't watched everything, but I'm currently watching porklike episode 10 and he has just discussed this. He ended up creating a generic object called MOB for monsters AND the player, but he explains why he did it like that. He also explains why he implements singletons with globals.

I wish I had watched that before making my first game...


By the way, @mvolpe94, I just posted a few thoughts on using key letters versus button names. Maybe you will find it an interesting read...



[Please log in to post a comment]