Puzzling Gamedev
Puzzling Gamedev
  • 153
  • 12 978
Infinite Game of Life with D & Raylib #5 - Reusing the world editor to generalize automaton rules
In this video add two auxiliary "boards" to edit the game update rules and cell neighborhood, and also an independent Raylib camera for those two boards.
0:00 intro
1:35 adding the editing camera
1:50 adding new program modes using an enum
3:27 adding the auxiliary boards
4:17 initializing the auxiliary boards
5:03 adding input keys to enter edit modes
5:18 fixing a bug
5:39 visual inspection of the new modes
6:23 adjusting the editing camera offset
7:33 fixing another bug
7:55 planning for next session
Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas.
If you like what I do, you can support me in several ways:
- Patreon: www.patreon.com/puzzlinggamedev
- Ko-fi: ko-fi.com/marcosd
- Visit my page on itch and try my free games, purchase my paid games and/or donate:
marcosd.itch.io/
- I also have some of those games on Steam:
store.steampowered.com/search/?developer=Marcos%20Donnantuoni
zhlédnutí: 130

Video

Basic save and load using Godot's JSON parser - Marcos' Mysterious Maze devlog #102
zhlédnutí 123Před 12 hodinami
In this video I add the basic save/load functionality to persist the game state between sessions, a very necessary feature for any decent game :) 0:00 intro 0:36 registering to the close notification 1:48 saving the data 5:30 loading the data 9:06 restoring the loaded data into the world Don't hesitate to comment asking questions about the project, game design or programming, or suggesting idea...
Restricting the map to visit only solved levels - Marcos' Mysterious Maze devlog #101
zhlédnutí 432Před 14 hodinami
In this video I add the necessary restrictions to the map so the player can only visit previously solved levels. 0:00 intro 1:03 limiting map bound calculation 5:37 restricting the cursor Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what I do, you can support me in several ways: - Patreon: www.patreon.com/puzzlinggame...
Celebrating 100 episodes with some Godot GPUParticles3D! - Marcos' Mysterious Maze devlog #100
zhlédnutí 81Před 19 hodinami
I celebrate the 100th episode with some fireworks, or perhaps I should say dustworks... I also enhanced a bit the visual contrast between the normal walls and the "fog of war" walls. 0:00 per-level procedural walls 1:25 dust particles when "demolishing" the walls 2:05 a bit of particle configuration details 3:30 using particle signals to destroy them automatically 6:27 about the sorting of the ...
Infinite Game of Life with D & Raylib #4 - Basic immediate mode UI for save/load using RayGUI
zhlédnutí 51Před 21 hodinou
In this video I add the most basic GUI to ask for a filename when saving and loading. I use RayGUI, one of the modules of RayLib, which provides several functions to make immediate mode UI "widgets". Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what I do, you can support me in several ways: - Patreon: www.patreon.com/...
Infinite Game of Life with D & Raylib #3 - Saving and loading the state in binary format
zhlédnutí 408Před dnem
In this video I add basic save/load functionality using the rawWrite and rawRead functions in the D standard library. Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what I do, you can support me in several ways: - Patreon: www.patreon.com/puzzlinggamedev - Ko-fi: ko-fi.com/marcosd - Visit my page on itch and try my free...
Godot timer + await = "coroutine" for gradual level reveal - Marcos' Mysterious Maze devlog #99
zhlédnutí 149Před dnem
In this video I make a "gradual reveal" function to use when the player enters a new level, using Godot's await timer functionality. 0:00 intro 1:15 removing fog square by square 1:57 distributing removals through time 2:40 tuning the speed of removal 3:15 sorting squares by distance to the player 5:25 visual inspection and more tuning 6:35 using the effect for normal play Don't hesitate to com...
Adding "fog of war" reusing the procedural walls - Marcos' Mysterious Maze devlog #98
zhlédnutí 121Před dnem
In this video I add a kind of fog-of-war to the game, reusing the procedural walls to occlude the inside of unexplored levels. Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what I do, you can support me in several ways: - Patreon: www.patreon.com/puzzlinggamedev - Ko-fi: ko-fi.com/marcosd - Visit my page on itch and tr...
Reusing the level parser for the special initial level - Marcos' Mysterious Maze devlog #97
zhlédnutí 57Před dnem
In this video I reverse-engineer my own level format in order to make a special initial level for the game. 0:00 intro 1:06 replacing the 3D "house" with text level data 4:09 connecting the house level with the initial level 8:11 using horizontal exit because of a bug Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what ...
Infinite Game of Life with D & Raylib #2 - Camera zoom, rotation and panning
zhlédnutí 90Před dnem
In this video, I add zoom, rotation and panning for the Game of Life simulation, to take advantage of the unbounded space. 0:00 intro and recap 0:35 adding the camera 1:26 input for the zoom 2:48 adding CameraMode2D to the game loop 3:13 adapting the input of cells to the camera 4:00 about the weird NaN initializer feature of D 4:58 zoom working 5:16 adding rotation 6:03 adding panning 7:53 add...
There's a blue sky outside the dungeon! And a bit of floor - Marcos' Mysterious Maze devlog #96
zhlédnutí 76Před 14 dny
In this video I move the underground background so we can see the sky outside the world, and begin to make the exterior floor where the player will commence the adventure. 0:00 moving down the background 3:10 blue sky 5:15 a bit of floor Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what I do, you can support me in sev...
Infinite Game of Life with D & Raylib #1 - basic data structures and rule evaluation
zhlédnutí 33Před 14 dny
In this video, I begin a small recreational programming project: an unbounded game of life implementation. I'll be using Raylib bindings for the D language. 0:00 configuring the project 2:26 basic data structures 3:27 mouse input and drawing the board 9:39 internal data consistency 11:58 computing the rules of the game 13:58 a data corruption bug 15:03 bug fixed! Don't hesitate to comment askin...
Adding mine-shafts because Godot hates infinite loops - Marcos' Mysterious Maze devlog #95
zhlédnutí 187Před 14 dny
In this video, I talk about an infinite loop situation that happens with certain individual random seeds, caused by the positional restrictions I enforced. I solved it relaxing a bit those restrictions, and adding the concept of the initial mine-shaft in the process. 0:00 what caused the infinite loop 3:20 relaxing restrictions 4:35 adding the mine-shaft Don't hesitate to comment asking questio...
My experience with Godot so far (8 months into my new project)
zhlédnutí 1,6KPřed 21 dnem
I wanted to share my earnest opinions about Godot: the good things the engine offers, some of the worrying things I experienced, and also one "bad" thing, about the feature I miss the most after working with Unity for many years. 0:00 the good 7:23 the worrying 10:02 the bad 12:55 the verdict Don't hesitate to comment asking questions about the project, game design or programming, or suggesting...
Detecting when gravity ruins your solution - Marcos' Mysterious Maze devlog #94
zhlédnutí 54Před 21 dnem
In this video I talk about the situations where the player solves a shape but then the shape changes as the player moves to collect the sigil. It's an interesting situation to consider, and I believe I found the correct way to handle it. Don't hesitate to comment asking questions about the project, game design or programming, or suggesting ideas. If you like what I do, you can support me in sev...
Rebound to Godot's RandomNumberGenerator & pre-splitting levels - Marcos' Mysterious Maze devlog #93
zhlédnutí 182Před 21 dnem
Rebound to Godot's RandomNumberGenerator & pre-splitting levels - Marcos' Mysterious Maze devlog #93
Changing corridor owners to enhance navigation - Marcos' Mysterious Maze devlog #92
zhlédnutí 21Před 21 dnem
Changing corridor owners to enhance navigation - Marcos' Mysterious Maze devlog #92
Ladders bug-fix & Godot's Engine.time_scale for animations - Marcos' Mysterious Maze devlog #91
zhlédnutí 29Před 28 dny
Ladders bug-fix & Godot's Engine.time_scale for animations - Marcos' Mysterious Maze devlog #91
Hacking level generation to avoid initially hidden ladders - Marcos' Mysterious Maze devlog #90
zhlédnutí 16Před měsícem
Hacking level generation to avoid initially hidden ladders - Marcos' Mysterious Maze devlog #90
Blocking sigils until connected - Marcos' Mysterious Maze devlog #89
zhlédnutí 22Před měsícem
Blocking sigils until connected - Marcos' Mysterious Maze devlog #89
Quick bug-fix: misbehaving corridors - Marcos' Mysterious Maze devlog #88
zhlédnutí 57Před měsícem
Quick bug-fix: misbehaving corridors - Marcos' Mysterious Maze devlog #88
Adding corridors to the iterative stitcher - Marcos' Mysterious Maze devlog #87
zhlédnutí 58Před měsícem
Adding corridors to the iterative stitcher - Marcos' Mysterious Maze devlog #87
Directional level bags + fake loading = nicer dungeon tree - Marcos' Mysterious Maze devlog #86
zhlédnutí 38Před měsícem
Directional level bags fake loading = nicer dungeon tree - Marcos' Mysterious Maze devlog #86
An interesting "race condition" bug - Marcos' Mysterious Maze devlog #85
zhlédnutí 32Před měsícem
An interesting "race condition" bug - Marcos' Mysterious Maze devlog #85
Falling vs moving down, unnecessary walls, and a new bug - Marcos' Mysterious Maze devlog #84
zhlédnutí 15Před měsícem
Falling vs moving down, unnecessary walls, and a new bug - Marcos' Mysterious Maze devlog #84
Continuous downward input, occluded ladders, stuck lose message - Marcos' Mysterious Maze devlog #83
zhlédnutí 44Před měsícem
Continuous downward input, occluded ladders, stuck lose message - Marcos' Mysterious Maze devlog #83
Generating ladders inside levels - Marcos' Mysterious Maze devlog #82
zhlédnutí 47Před měsícem
Generating ladders inside levels - Marcos' Mysterious Maze devlog #82
Bubble physics experiment with Dlang and Raylib
zhlédnutí 64Před měsícem
Bubble physics experiment with Dlang and Raylib
Contemplating ladders inside levels - Marcos' Mysterious Maze devlog #81
zhlédnutí 44Před měsícem
Contemplating ladders inside levels - Marcos' Mysterious Maze devlog #81
Iterative tree-like connection algorithm, attempt 1 - Marcos' Mysterious Maze devlog #80
zhlédnutí 35Před měsícem
Iterative tree-like connection algorithm, attempt 1 - Marcos' Mysterious Maze devlog #80

Komentáře

  • @hsuwei-yen472
    @hsuwei-yen472 Před 2 dny

    I like vector.

  • @alphabravo3481
    @alphabravo3481 Před 7 dny

    As a hobbyist, I recently switched from Pygame to Godot and it's very impressive.

  • @alphabravo3481
    @alphabravo3481 Před 7 dny

    I am curious why you chose 3D instead of 2D for this project? Interesting channel and game.

    • @puzzlinggamedev
      @puzzlinggamedev Před 6 dny

      I'm still pondering the possibility to switch to pure 2D but for now it works :)

  • @MrTomyCJ
    @MrTomyCJ Před 10 dny

    How nice that I could notice the argentine english accent just 10 seconds into the video with no prior clue haha. Thanks for sharing the project!

    • @puzzlinggamedev
      @puzzlinggamedev Před 9 dny

      jajaja gracias a vos por mirar! hahaha Thanks to you for watching!

  • @noa_1104
    @noa_1104 Před 12 dny

    The idea seems great, but the specific result surprised me, haha. From the thumbnail I thought it's the other way around: when you see the light brown, then surely that means you can look into the room, while otherwise there's darkness ... Maybe there's quite a few very different possible approaches to this, but either way it definitely sounds logical to also add fog to the corridors. Maybe you can do an actual fog like effect where everything else just fades out or is in shadow without modifying the geometry, I wonder

    • @puzzlinggamedev
      @puzzlinggamedev Před 12 dny

      I decided to use walls instead of fog because of the underground metaphor; I'm thinking about adding a "excavation" effect for the reveal of the levels instead of suddenly removing the fog-walls later, but I'm not sure about that yet. But what you say about the colors makes sense, I still have to tune many visual elements, including the color palettes :)

    • @noa_1104
      @noa_1104 Před 11 dny

      @@puzzlinggamedev that sounds really good, especially animated … I would still find it odd if the surrounding area around levels didn’t also have foreground walls I suppose, even if those are a different color that might influence things a lot

  • @SRY295
    @SRY295 Před 18 dny

    thank for sharing. 11:30 other workaround I can think of is make @tool script. this will make that script run in editor. then make the export checkbox that when you press, it's trigger function that generate level right in the editor. this can also help the performance when testing too, because you don't have to generate level every time the game run.

    • @puzzlinggamedev
      @puzzlinggamedev Před 17 dny

      Thanks for the tip! I still have to investigate the editor scripting tools; perhaps I'll make a video about that sometime! :)

    • @jacksonwaschura3549
      @jacksonwaschura3549 Před 12 dny

      I've been investigating this option as well and I would love to hear your thoughts after you try it!

    • @americoperez810
      @americoperez810 Před 11 dny

      My thoughts also went to creating a tool script. That's usually what people do when they need to be able to see the output of some code at in the scene view without having to run the game. These tool scripts help a lot to prototype quicker.

    • @jacksonwaschura3549
      @jacksonwaschura3549 Před 11 dny

      Seems like turning everything into a tool script is a little annoying. Not sure if it's an issue or just the normal workflow, but all dependencies of a tool script must also be tool scripts, so it turns every procedural generation library / utility into a tool script.

    • @puzzlinggamedev
      @puzzlinggamedev Před 11 dny

      @@jacksonwaschura3549 Ah, sad but good to know! Thanks for the info :)

  • @Rikaisan
    @Rikaisan Před 18 dny

    I was about to say "but there is a scene view!" However, you are right, it's only for the hierarchy and not for the viewport:(

    • @puzzlinggamedev
      @puzzlinggamedev Před 18 dny

      Yes, it's a pity. I hope they add something like it at some point. But it's nothing deal-breaking for now :)

  • @purefoton
    @purefoton Před 19 dny

    Thanks for sharing your thoughts.

  • @noncom
    @noncom Před 21 dnem

    This is really helpful. Thank you for making the video.

    • @puzzlinggamedev
      @puzzlinggamedev Před 21 dnem

      I'm glad! I hope you can decide better if Godot is for you. Good luck!

  • @DiegoSLTS
    @DiegoSLTS Před měsícem

    So what's the solution??

    • @puzzlinggamedev
      @puzzlinggamedev Před měsícem

      I knew I forgot something! 😄The solution was very boring compared with the bug: I corrected the generator to not allow those race conditions to appear, adding more conditions to the possible positionings of the plates and bridges.

  • @noa_1104
    @noa_1104 Před měsícem

    Have you considered filling in the entire area around corridors and levels with walls in the foreground? visually they could still look different but maybe it makes sense if they are not holes!

    • @puzzlinggamedev
      @puzzlinggamedev Před měsícem

      Interesting, I'll think about it. Perhaps there are ways to "excavate" a texture or mesh to construct the space instead of adding walls to remove space...

  • @istanbulprivate
    @istanbulprivate Před měsícem

    Hi, I'm creating a painting program in Godot. I need users to paint within a specific shape (e.g., a letter "A" on a texture) and prevent them from moving to the next scene until the shape is fully painted. How can I ensure that painting only happens inside the shape and that users can't proceed without completing the painting? Thanks!

    • @puzzlinggamedev
      @puzzlinggamedev Před měsícem

      mmm, it sounds tricky... I suppose you could compare pixels from the reference image with those on the screen, using get_pixel() to retrieve the pixels of the reference image, and screen_get_pixel() to retrieve the pixels from the screen, and check if they all match.

    • @istanbulprivate
      @istanbulprivate Před měsícem

      @@puzzlinggamedev Thank you so much. I am going to try, hope I can do that.

    • @puzzlinggamedev
      @puzzlinggamedev Před měsícem

      ​@@istanbulprivateGood luck! let me know if it works.

    • @istanbulprivate
      @istanbulprivate Před měsícem

      @@puzzlinggamedev of course thank you so much for helping

  • @miteshkumar5434
    @miteshkumar5434 Před měsícem

    Which software is that for note taking?

  • @cicada_games
    @cicada_games Před měsícem

    Looks fun and interesting!

  • @JoePlaysPuzzleGames
    @JoePlaysPuzzleGames Před 2 měsíci

    I feel like those natural edge cases like "bridge becomes solid while crate is in its position" have lots of potential for interesting mechanics. I personally would try to think of something cool that could happen. Like the simple possible interactions are that the bridge could break the block or the block could break the bridge, both of which I could imagine having interesting puzzles. For example, if the bridge breaks the block, it would give the player a way of splitting blocks that they have stuck together. That could be a cool aha moment. But I'm sure there are also other interesting possibilities. Like in Sokobrawn, Steven made it so that the "doors" are hollow boxes, and so can contain a crate. That's also interesting. Or to get a bit more abstract, maybe the bridge and block could fuse somehow. Or maybe the bridge could poke a hole in the block (i don't know what that would mean mechanically, just imagining weird possible interactions). Or in some other way, the bridge and/or block changes the other thing's properties. I feel like making the blocks fall in a particular order will just feel unnatural. Also, a thought more related to the animation issue you were showing at the start: what about a situation where the player presses a button, which makes a bridge non-solid, which drops a crate onto another button, which makes another bridge non-solid, which drops another crate, etc. I feel like you are going to need the equivalent of PuzzleScript's 'again' turns.

    • @puzzlinggamedev
      @puzzlinggamedev Před 2 měsíci

      Very interesting ideas, thanks! I doubt that I'll have more than one plate/bridge pair, though :)

  • @PrismFave
    @PrismFave Před 2 měsíci

    the todo list is smart, nice vid

  • @pytebyte
    @pytebyte Před 2 měsíci

    Very helpful

    • @puzzlinggamedev
      @puzzlinggamedev Před 2 měsíci

      Glad to know! If you do something with this, please let me know!

  • @woodsmanthepeasant
    @woodsmanthepeasant Před 3 měsíci

    nice! good to see gamedev stuff

  • @gabrielward7289
    @gabrielward7289 Před 3 měsíci

    cool game

  • @Patashu
    @Patashu Před 3 měsíci

    I wish Godot was actually this laser focused on old systems compatibility, but it's fair, they only have so much development resources and they've chosen their focuses

  • @patrickgh3
    @patrickgh3 Před 3 měsíci

    Hahaha, you got me!

  • @c_o_m_e_t_
    @c_o_m_e_t_ Před 3 měsíci

    The fact I bought this wholesale is a testament to godot lol

  • @JoePlaysPuzzleGames
    @JoePlaysPuzzleGames Před 3 měsíci

    Omg, you totally fooled me. 🤦‍♂️

  • @ollllj
    @ollllj Před 3 měsíci

    When you have a lot of if() conditions (escpecially nested ones), there is an important paradigm, that makes debugging MUCH more efficient: - make more subroutines! - generally not use if() conditions as if(true){if(true){...}} trees (those are WAY too buggy and WAY too inflexible), but more as if(false or error or haltCondition){ return error code or do nothing GATE-FUNCTION } . - Each subroutine focuses on the constrains of its own activation or effect, that comes last within the subroutine. effects come AFTER the subroutine performs all if(false){return error code} "tests" that must be passed first. Include all tests/conditions In ANY context that it is possibly called in any future, the subroutine always has its own safe-guards. A lot of them may just result in returning "error codes" or "break" or just "return 0". - For geometry objects/properties for example, each geometric-subroutine has its own "bounding volume" and "collision-constrains" and "hit-boxes", and those may be their own subroutines or "inherit"s (if you hate data oriented programming for no good reason, in favor of OOP, that is slowly getting obsolete) - a subroutine itself ideally STARTS with all the fast-to-calculated miss/abort/break conditions, that return "halt/stop/break/nothing" or that prevent "division by 0" or that return "collision would happen so do not move this object", or "the ray/projectile mises the (bounding box) of this object (no nee to do root-solving for intersections, which is often slow code, if it already misses a simple shell-intersection test) , so a hit--event (that reduces hit-points) does not happen. - Pretty much all possible error-or-skip cases of a subroutine are caught FIRST within the subroutine. The more likely and faster-to-calculate ones are to be done first. - halt--or-error-case-checking (the start of subroutines) is always checking for math errors "division by zero, or low precision asymptotes" errors (where ever you divide by variables, check if those are too close to 0), but also physical glitches and game logic boundaries, that you seem to spend a lot of time on. NASA follows this (and others like "no recursion an no heap" to a teeth, for ALL remote-operated space vessels/probes, ever since apollo11 landing computer ran out of memory while in VERY low moon-orbit, causing it to miss its intended landing spot by a short distance.

  • @ollllj
    @ollllj Před 3 měsíci

    looks like the REAL puzzle game is all the debugging.

  • @JoePlaysPuzzleGames
    @JoePlaysPuzzleGames Před 3 měsíci

    I'm impressed by how consistently you've been putting these videos out!

    • @puzzlinggamedev
      @puzzlinggamedev Před 3 měsíci

      Thanks! well, some days I'm a bit too tired to make one... but I try to add the issues or bugs or ideas I find along the way to the TODO list to add motivation for the next day :)

  • @10aded
    @10aded Před 4 měsíci

    Happy to see someone else streaming their game dev! Looking forward to checking out many of your other videos.

    • @puzzlinggamedev
      @puzzlinggamedev Před 4 měsíci

      Thanks! I'm a bit under the weather these days, but I'll resume development soon!

  • @rdg4333
    @rdg4333 Před 4 měsíci

    Very nice to watch your a* implementation!!!

    • @puzzlinggamedev
      @puzzlinggamedev Před 4 měsíci

      technically I used the internal implementation embedded in Godot, adding post-processing :)

  • @puzzlinggamedev
    @puzzlinggamedev Před 4 měsíci

    Update: today I added entrances on the floor also, because why not :)

  • @Portponky
    @Portponky Před 4 měsíci

    That makes a big difference to how nice it looks. Great job!

    • @puzzlinggamedev
      @puzzlinggamedev Před 4 měsíci

      Thanks! I'll make something similar for the lava. In theory I could use the same mesh with two materials... but if not, I'll make another procWall for the lava.

  • @natering5215
    @natering5215 Před 5 měsíci

    audio is nearly silent.

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 měsíci

      yes, I will try to get a better mic and adjust the recording settings. I'm still learning to balance noise/volume/etc

  • @JoePlaysPuzzleGames
    @JoePlaysPuzzleGames Před 5 měsíci

    I'm terrified of the 95 moves required to reach that ore. 😱

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 měsíci

      Hahaha don't worry, I'll try to make the final selection of the treasure more lenient than the Pontibus one. that was too brutal sometimes...

  • @mvandevander
    @mvandevander Před 5 měsíci

    Considering I've been doing a lot of optimization work at my day job, this type of thing is always interesting to me. With that said, I don't know too much about the profiling tools that you're using here, or the D language particularly. One thing that I definitely wonder about is if the ticks recorded in the profiler for AddCrateToThingsPushed() would include the ticks for Find() or if that gets excluded. It's also interesting that the Point + operator is your next most ticked function below those two. At least apparently from the CPU usage, a straightforward way to make the generator much faster is to just multithread it. (in so far as threading is ever straightforward)

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 měsíci

      In the profiling table, "Tree time" is the time spent executing the function including functions called, and "Func time" is the time spent executing the function excluding functions called. I spent some time yesterday optimizing the "Find" thing (making a proper bidimensional array for the space-versus-wall map) and I achieved some more performance. Perhaps I'll show that in some video but it was not very glamorous hehe... The operator+ is next in line :) And yes, multi-thread could be useful, but I run several parallel instances of the generator anyway so I don't care about that (yet).

    • @mvandevander
      @mvandevander Před 5 měsíci

      @@puzzlinggamedevAh yeah, sometimes multi-process is fine enough. I hadn't really considered that approach. I remember years ago I multi-threaded an image resizing script and it ended up being slower than just spawning a bunch of copies of it due to the thread pool having so much overhead.

  • @chapliboy
    @chapliboy Před 5 měsíci

    Thanks Marcos, I found this really interesting =)

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 měsíci

      Thanks! I thought about more optimizations, so perhaps I'll make another video like this later.

  • @mvandevander
    @mvandevander Před 5 měsíci

    Yeah, I have learned this lesson many times the hard way. It's basically impossible to just guess where the bottleneck in your code is. I'm thinking of a recent optimization I did where there was a large hitch when spawning a bunch of puzzles. My intuition said that the hitch must be caused by trying to calculate valid positions for all of these auto-generated puzzles. But after profiling, it turned out that most of the cost was actually after a valid position had already been found, and when moving the puzzle elements into their final position. This is because the engine was just defaulting to doing swept physics tests when the objects were moved, because they had not had physics disabled.

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 měsíci

      yes! profiling is the best option when thinking about these things. Perhaps I'll make a video about profiling...

  • @mabojaka
    @mabojaka Před 5 měsíci

    Nice devlog!

  • @Kapendev
    @Kapendev Před 5 měsíci

    Looks good!

  • @den1sk0v30
    @den1sk0v30 Před 5 měsíci

    what is your setup? what linux/desk env u use in this one?

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 měsíci

      In this particular video, I'm using Ubuntu, with the Plasma desktop environment. But sometimes I feel like using other desktop environments like Openbox or IceWM. I also use Windows often, depending on what tools I'm using that day. I use dual booting.

  • @LlamaBG
    @LlamaBG Před 6 měsíci

    Are you maybe continuing developement? I'd love to see a playthrough My bad, just saw that you are, awesome

    • @puzzlinggamedev
      @puzzlinggamedev Před 6 měsíci

      Not for this project in particular, at least for now. I'm making another game currently. You can check out and share the recent devlogs :)

  • @JoePlaysPuzzleGames
    @JoePlaysPuzzleGames Před 6 měsíci

    Nice video, Marcos! Love it when you update some stickiness code and all the blocks start falling through each other. Classic gamedev things!

    • @puzzlinggamedev
      @puzzlinggamedev Před 6 měsíci

      Thanks! yes, bugs are fun to show (and hopefully to solve haha)

    • @majik989s
      @majik989s Před 6 měsíci

      Brilliant, Marcos! Love the game concept and watching you work through bringing it to life.

  • @LlamaBG
    @LlamaBG Před rokem

    this looks super sick

  • @Notester82
    @Notester82 Před 3 lety

    That looks pretty fun(ny), the way he's just tumbling around and whatnot! ;u;

  • @Portponky
    @Portponky Před 4 lety

    Has puzzle script gone too far?

  • @Portponky
    @Portponky Před 5 lety

    Why is a robber installing safes?! That doesn't seem right.

  • @DanZaidan
    @DanZaidan Před 5 lety

    Maybe a "pull" character has to steal the safe? :D

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 lety

      A good possibility! After one character installs it, the other one steals it. Thanks!

  • @DanZaidan
    @DanZaidan Před 5 lety

    This looks fun!

  • @bluesnakeOVER9000
    @bluesnakeOVER9000 Před 5 lety

    Are you testing different engines or have you decided to use Unreal now?

  • @antonklinger
    @antonklinger Před 5 lety

    *Katamari Damacy music starts playing in the distance*

  • @bluesnakeOVER9000
    @bluesnakeOVER9000 Před 5 lety

    Exciting! Such a lovely idea, would be great to see some kind of state change or indicator of something being collected/magnetised. The robber character is very funny!

    • @puzzlinggamedev
      @puzzlinggamedev Před 5 lety

      I plan to add sound and particle effects for the stickiness :)