darkfrei wrote: ↑Sun Feb 13, 2022 4:45 pm
Yes, here was an issue that the block cannot be moved if it (after moving) collides with the agent. Added the exception for active agent.
Maybe some issue with two E-shaped blocks, but I think that the list of moving blocks solve this problem.
Update:
Easy levels, how to call it and how to switch (press any key to start the next one) them:
levels-01.love
Update 2: graphics
2022-02-13T23_21_07-Untitled.png
darkfrei wrote: ↑Sun Feb 13, 2022 4:45 pm
Yes, here was an issue that the block cannot be moved if it (after moving) collides with the agent. Added the exception for active agent.
Maybe some issue with two E-shaped blocks, but I think that the list of moving blocks solve this problem.
Update:
Easy levels, how to call it and how to switch (press any key to start the next one) them:
levels-01.love
Update 2: graphics
2022-02-13T23_21_07-Untitled.png
Haha, man you are making me laugh, you even made graphics! This is awesome! I will implement it as soon as possible.
I have a little brainstorm now that everything is working and I would like to make a little survey.
now that everything that's crucial for the gameplay is working I ask myself the question: what's next?
I have some ideas I would like to implement, the good news is whether I manage to implement it or not, it does not matter because the game is fully playable, so things can be taken calmly and take all the time needed to do it.
First let me explain what tools have been included and can be actually used to build content:
Moonshine libraries:
Chainable post processing shaders for love. The cool crt effect used in the game is created with this library.
Shadertoy shaders renderer.
This is a another gem found on this forum, you can find the post to this file here:
https://love2d.org/forums/viewtopic.php ... oy#p234276
Tip: You can combine both moonshine and shadertoy shaders simultaneously, the results are amazing! You can test it in the game already!
Slab:
https://github.com/flamendless/Slab
An Immediate mode Gui for the Love2d framework. This is the library with which the documentation tool I created is built:
https://github.com/glitchapp/luamilestones
Talkies: A dialog system for Löve2d. A rewrite of Moan.lua.
I started a small tutorial with this library (press "T" to start it) but not only tutorials can be made with this. I story that enhance the gameplay can be created with this tool.
Groverburger's 3D engine (ged) Simple and easy 3d Engine for Löve
This library is not yet used in the game but I started experimenting with it. I'm not sure how I will use and which graphics will use it (if backgrounds, maps, objects). I will see, but it looks like a nice library to make something special. I actually experimented with 3d graphics, check the Vr port:
https://github.com/glitchapp/luasokvr. I want to mention that Vr is a lot more performance hungry for the simple reason that everything needs to be rendered twice so performance optimization are very needed to make the game accessible on normal computers.
LV-100
https://github.com/Eiyeron/LV-100 A love2d library to make terminal-like-stuff
This is a nice library I use to show information or request input from the user. It make a nice use of shaders to present everything like in a old terminal like system.
This is basically all what's done and included till now apart of the game logic that is already finished.
Now coming back to the question of what's next?
Here there are a few ideas I have, they don't need to be implemented, they are just ideas to improve the game. I'll be happy to know what you think of them.
1. Documenting / publishing development progress and ideas.
I started doing efforts on that with the goal and hope that it will help people get involved and interested. I decided to create my documentation tool (
https://github.com/glitchapp/luamilestones) made with slab. The first question I have is,
Should I keep documenting the development progress inside the tool or should I build an external website for it? (both things are possible)
If I choose to keep using the documentation tool the update feature needs to be finished. There are two important reasons for that: first content can't be outdated, otherwise it makes the tool useless, secondly, I commit myself to keep the game as small as possible, so all pictures and heavy content need to be downloaded from outside. There's no need to say that slab is very limited in comparison to what it can be achieved with a real website.
If I choose the second, how should I build it. I've been testing some static website generators (pelican) and checking some themes. What would you recommend?
2. Level editor.
I always have a dilemma when I decide to include external libraries: Is the task complex enough that it does not worth doing it from scratch? I think a level editor is. Using external libraries are mostly the best option but they also carry negative sides: Those libraries are not as flexible as you may wish and sometimes part of them are not as accessible as if you did all from scratch.
Straight to the question? Which library would you recommend in case I decide to integrate a level editor inside the game?
3. Arm ports.
Love supports arm (really??) Yes. but making the game compatible with android or raspberry is not as trivial as you may actually think. The most important challenge when making ports that are pleasantly playable on those devices are to me 3:
3.1. Most arm devices does not have buttons (really??) Yes, so touch controls need to be created. Fortunately that it's not new to me, I already made a sokoban port for android with touch controls:
https://github.com/glitchapp/GlitchSokoban/releases . Keep this in mind if you want to contribute with graphics.
3.2. Compatibility: love works on arm but not all shaders work on android. The solution to this problem is super easy: all incompatible shaders needs to be disabled.
3.3. Performance. Even if the shaders works (I tested on raspberry pi some of the shaders and they work) the performance could be so miserable that it may make the device crash or make the game unplayable. If optimization is not possible or too much work, the easiest solution is to disable the GPU hungry shaders.
3.4. I don't want to leave this outside, playing on small screens makes sometimes a huge different, Fortunately I already implemented a few features specially for android to solve the limitations of small screens on my last sokoban port to android: camera follows player, zoom adapted to the level size and screen size.
4. Game map and main menu needs to be implemented, I did a menu before with menu engine
https://github.com/Astorek86/love2d-menuengine. What library would you recommend to create the game menu?
5. Graphics, style and design. I'm not a graphic artist and there are thousands ways and styles to make designs for a game. I just wish all the styles are coherent and I leave this open for you to let me know.
I think once some of those tools / decisions are made mane new questions will arise: should the old levels be recreated or should we create new ones...
I feel and I hope this game as a long way and can get mature and be something special. I leave this brainstorm here and I'll be happy to know about your ideas.
In the meanwhile I will finish implementing the last update from darkfrei, it's amazing that the whole game logic it's working!