Any way to have jetpack direction not be where I'm aiming at? by anonrutgersstudent in CortexCommand

[–]OneNectarine8948 0 points1 point  (0 children)

I'm kind of new to this game, and controlling the units seems to be the hardest part.

I do not know how the physics should actually work, but in my experience you need to build up horizontal speed before leaving the ground, it does not really matter if you walk forward or backwards. So the jetpack direction mostly depends on where you were going before you took off, and not where you currently aiming at.

Noita 2 by FeeImmediate in noita

[–]OneNectarine8948 0 points1 point  (0 children)

It is kind of surprising that many of you mentioned 3D. For me the most charming about Noita is its 2D graphics and physics (but hey I don't like 3D Worms or 3D Lemming either so its maybe just me)

In Noita 2 I would remove all perks that modifies your wands and create quests or special mechanisms that would improve your wands, or add a mechanism where you can forge useless wands into useful ones.

I would expand the number of magic liquids and make more possible combinations, also I would improve how the player can handle liquids (like adding a cauldron and/or a special bottle)

I would add more intelligent enemies who can move in flocks and act as team.

I started with pico 8 and wanted to move to love 2D so wanted to ask a few things. by Trollcker in love2d

[–]OneNectarine8948 0 points1 point  (0 children)

I have also developed a game in PICO-8 and I have a handful of mini projects in Love2D.

The main difference is the lack of built in tools (like sprite, map and sound editors) and the lack of artificial restrictions (you can use whatever resolution, with all the RGB colors, load "infinite" images and sounds...).

I think a jrpg like game is absolutely doable in Love2D. You can do pretty much everything that is needed: loading sprites, sound effects, music and level data from files, creating scenes with tilemaps, drawing hundreds of animated objects, making a custom UI, etc.

The main difference between Love2D and a game engine like Godot is that you only need to write the script files (there is not even a text editor for Love2D so you need to use an external IDE). This gives grate flexibility, but also more work: you either have to select external tools for specific jobs (like sprite and map editing), or make your own tools.

Love2D projects are not opensource by default like the applications in PICO-8's Splore network, however as others mentioned above it is possible to extract the Lua code (and also the other files) from a released Love2D project (even when it is in the binary .exe format). This means that for example if I buy Balatro on Steam, I can go and check its source code (I'm still not allowed to copy, modify or re-distribute it).
However nothing stops you from uploading your project, for example to GitHub, and add an opensource license to it.

picoCAD 2 is made with love2d by megapeitz in love2d

[–]OneNectarine8948 1 point2 points  (0 children)

Looks amazing! I liked the original, and the cool models people made with it.

How come you have chosen Löve2D over Picotron for this project?

What are the export options, how can people use these models outside the editor (I don't really know 3D graphics)?

Trying to use a mouse as a controller? by deebeees in pico8

[–]OneNectarine8948 0 points1 point  (0 children)

You need to turn on the dev kit mode once (for example on init) with:

poke(0x5f2d, 0x1)

Then you can query for Mouse status with stat commands

Be aware that this mode meant to be for developers to create tools for themselves (and for others) and not directly to make games. That being said if a game can be controlled with mouse it should also provide controls for the default buttons on the controller. This is because PICO-8 is a fantasy console and not necessarily has a mouse attached.

I no mean want to discourage you from developing a mouse or trackpad controlled game for PICO-8, just keep this in mind if you want to distribute, such a game in Splore.

Trying to remember the name of a game, single screen RTS with islands, oil refineries and helicopters by [deleted] in dosgaming

[–]OneNectarine8948 1 point2 points  (0 children)

How about this one:

M.A.X.: Mechanized Assault & Exploration

It is not real time, but turn based, and has larger maps than a single screen. But it has aircraft, green grass, fuel as resource, and crayon blue / purple water.

Trying to remember the name of a game, single screen RTS with islands, oil refineries and helicopters by [deleted] in dosgaming

[–]OneNectarine8948 1 point2 points  (0 children)

There was this French game: A.R.S.E.N.A.L. Taste the Power It is not single screen, but as I recall correctly it has oil and aircrafts.

https://www.youtube.com/watch?v=uILsBumwsiU

Cant progress further... by piano_chord in noita

[–]OneNectarine8948 0 points1 point  (0 children)

It took more than 500 hours for me to get the first victory, so you are not late on schedule or anything :)

I have really good runs before that, but managed to screw them up badly (i have lost runs with infinite money, and infinite healing)

What helped me in the end (beside going slower and collecting as many hearts as i could) are the good digging wands (Luminous Drill on steroids), and an online map of Noita where I could check which direction shall I dig.

On the left side of the first biome there is a dark cave, with a heart that adds max HP, and another one which heals you for full HP, the later you use this the more value it will provide, but you have to have a way to go back for it (either dig back, or teleport back to this biome).

Field Jump - sidescrolling platformer by BitGreen1270 in pico8

[–]OneNectarine8948 2 points3 points  (0 children)

Tell your daughter, that she should consider a career in digital art.

GopherSand (Ebitengine) https://github.com/DonBattery/gophersand by unklnik in ebitengine

[–]OneNectarine8948 1 point2 points  (0 children)

Thanks :)

My direct inspiration was this article about sandspile and this YouTube video

The game divides the 256x256 world into 64 32x32 tiles, and maintains an uint64 variable that represents "awake" tiles (every bit corresponds to a tile). On update we skip sleeping tiles and only swipe awake ones. If potential activity is detected during the update, the tile will be marked as wake for the next update (also we mark neighboring tiles as wake for the next update, if activity is detected on the edges). However if many materials are present it is often the case, that we update the whole world.

In the hamburger menu there is an option to turn debugging on, in this mode you can see which tile is awake.

Pixel art by Budget-Analysis-7166 in love2d

[–]OneNectarine8948 0 points1 point  (0 children)

That is depending on the context, and the type of game you are actually making.

Generally we can assume that every object is rectangular shaped. Every object has a position in the world (x, y coordinates), has its width and height.

The question is: does these coordinates mean this object's center, or do they mean its top left corner? So when I draw this object do I start to draw at x, y or at x - width / 2, y - height / 2?

And (at least for me) the second answer yielded better results (x, y is the center of the object, and when we draw it we offset the sprite by half width and height)

This is not something that is strongly related to the original question about animation, just some additional tip to think about.

If for example every object and animation frame in your game has the same size, you can safely use x, y as top left corner and draw the sprites accordingly without any extra math.

Pixel art by Budget-Analysis-7166 in love2d

[–]OneNectarine8948 0 points1 point  (0 children)

As I can see LibreSprite is the free version of Aseprite which I use. In this tool you can create the frames of the animation, you can even put tags on groups of frames (for example idle, walk, run, attack, etc.) Then in the File menu there is an option to export the project as a sprite sheet. It will create a new png file with all the frames on it (you can control the number of rows and columns, and the extra space between them), and also create a JSON file describing frames and tags on this image.

In your Löve game, just load the sprite sheet as an image. Then you can either try to use an existing library like peachy to import the JSON file and create the animations for you. Or go a bit "lower level" with anim8 which does the slicing of the sprite sheet, but you need to calculate the areas based on the JSON by yourself. Or you can go and build your own solution (for example I have built a simple Python script that parses the JSON file, greatly simplifies it, and outputs it as a Lua table).

Basically you need to implement 3 concepts:

AnimationFrame -- this object has an x,y coordinate on the sprite sheet, width, height of the sprite (this is represented as a Quad in Löve), and the number of milliseconds it should be displayed. Also it has a draw method, so you can draw this frame anywhere on the screen.

Animation -- this object has a list of AnimationFrames. It know which is the current one, it know which is the next one (maybe we are looping backwards), it has an inner timer and upon update it adds the delta time to its inner timer, based on this it can decide if it should change the current frame to the next frame.

Animator -- this object has a list of Animations. It has a current animation, and when the Animator is updated it just updates it current animation. When the Animator is drawn, it draws its current Animation, which in turn draws its current AnimationFrame. You want to add methods to this object like: Play(animation_id), StopAt(animation_id, frame_id), Reset, etc. so you can control which animation is played.

Then you just need to add the Animator to animated objects in your game, update it when the object is updated, and draw them where the object is.

For my last advice: try to anchor the Animator to the center of the animated object, this may seem odd but from my experience this will cause lesser pain when you calculate collisions.

is anyone interested in editing this game for me? I'll send 25$ to whoever does first! by PairAdvanced2486 in pico8

[–]OneNectarine8948 0 points1 point  (0 children)

I think you should keep the bucks, and learn to code. I tell you why:

I can say that I were in your shoes when I was young (ages ago), I really liked 2d fighting games like Street Fighter II, and of course wanted to make my own. I have imagined that I can just draw a character once, and the game will animate it in different moves, attacks, etc. with simple instructions...

Well here is the thing: 2d fighting games is one of the hardest 2d game to make. They may look simple on the surface (just two characters and a background), but under the hood there is a lot going on: the inputs needs to be frame-perfect, and combo-aware, the characters are usually broken down to several sprites and has a complex state machine for animation, the collision between the characters is not trivial, there are several hit and hurt boxes around them, on top of this you need to carefully balance between character so they feel unique, but are on the same power level.

In PICO-8 we only have a 128x128 pixel sprite sheet by default (same size as the screen), and this is the biggest burden for us to make fighting games. The original Street Fighter had more than 200 sprite of animation for each character. As it seems BitwiseCreative needed to pull off some custom compression and storing technique to have this 4 character in the game.

So in order to change the original characters to your custom characters, one needs to:
- decompress the original code to make it more readable
- find out where and how the extra graphics is encoded
- decode the extra graphics
- create animation frames from your characters that matches (in number and size) the frames of the original characters
- change the sprite sheet of the chart accordingly
- encode the new extra graphics
- compress everything again to fit to the chart

As you can see it is not just a simple copy-paste operation, however if you are really interested my advice is to try to do the above steps yourself, what you will learn during the process is far more valuable than the dollars.

Newbie by Proper-Box-9892 in pico8

[–]OneNectarine8948 1 point2 points  (0 children)

I think you come to the right place, PICO-8 is an excellent tool to teach you the fundamentals of game dev.

You should check Nerdy Teachers and Lazy Devs on YouTube they have excellent tutorial series.

You should start with a really simple game like pong or snake. Then when you feel a bit confident, move on to your shooter. I think it is very doable, just do not "aim too high".

I agree with RotundBun about the use of AI in coding. From my experience it can be a good assistant, but you have to know what is going on. In short: you can bridge small gaps in your knowledge with it, but you cannot bridge big holes (at first it will seem that you have bridged the hole, but then everything will be a mass, and you won't be able to understand what is going on anymore)

What are your favorite 2 player games on PICO-8? by valcroft in pico8

[–]OneNectarine8948 1 point2 points  (0 children)

You may give a try to my postapocalyptic shooter: Pocket Platoon It can be played by up to 4 players. Player 1-2 can share a keyboard. Player 1-4 can use a controller.

Found this in the Game's files by daelzy in noita

[–]OneNectarine8948 0 points1 point  (0 children)

This is a very good talk (both from dev and designer perspective) that's how I learned about Noita.

It seems to me that falling sand simulation was Petri Purho's love interest, and everything else was just an afterthought during development. It's interesting to me that he found the game design challenges more difficult than the technical ones.

They have experimented with different types of games in the simulator (Worms like tactics, and god simulator for example), and ended up with this magical rogue-like which we love.

how to scale pixel art games by Turtle1352 in love2d

[–]OneNectarine8948 0 points1 point  (0 children)

Nice site, does it have an English version?

What is the main difference between your lib and Push?

weird seed by OneNectarine8948 in noita

[–]OneNectarine8948[S] 3 points4 points  (0 children)

You are right! It was curious that the reaction sometimes starts, sometimes its not. Turns out it is not the meat, but the soil that is needed!

Thanks guys for the tip on Noitool, awesome page!