Hey all! Last year I started slowly refining an idea for a game that involves a simulation of a quantum computer. I wrote a custom simulator that can interface with Godot and since then I've been making unsteady progress making art and writing the game. I want it to be a casual puzzle game where the challenges are based on the math of gate quantum computers, but in a non-imposing way. There aren't many games like that that I know of and I felt the need to fill that niche. Just wanted to pitch the idea here and maybe hear some thoughts. Here's a blog post where I write briefly about my idea: https://blamster19.net/2026/09/16/quantum-computer-game-1.html

[–] 1 point 2 months ago (1 child)

The 'browser incompatibility' is what's written on the fallback page. The question was about the problem that migration from Cloudflare would solve and I provided one particular problem. Not that it affects me personally, because I use a standalone app for Lemmy, but I assume there are some people that do not wish to run Cloudflare js

  • source
  • parent
  • context
  • [–] 4 points 2 months ago (7 children)

    I use Firefox Focus on my mobile and I can't enter sites with CloudFlare because it says my browser is incompatible. It gets annoying when I ramp up my privacy on the Internet and sites outright refuse to load if they see I don't allow cookies and trackers. I'd rather see broken js-free website than pitch black CloudFlare page.

  • source
  • parent
  • context
  • [–] [S] 2 points 2 months ago* (last edited 2 months ago) (1 child)

    Oh right, that was not the whole Makefile, only the part that caused problems. As @fruitcantfly@programming.dev pointed out, it breaks down with more SOURCE files and populates the newly created directories with only the first SOURCE file. After some more poking and reading I found a method that works by using define:

    define rule
    $(DESTINATION)/$(shell echo $(notdir $(1)) | sed -E 's/^([0-9]{4})-([0-9]{2})-([0-9]{2})-(.*)\.md$$/\1\/\2\/\3\/\4.md/'): $(1) | $(DESTINATION)/$(shell echo $(notdir $(1)) | sed -E 's/^([0-9]{4})-([0-9]{2})-([0-9]{2})-(.*)\.md$$/\1\/\2\/\3/')
    	/bin/bash ./myscript.sh $$< > $$@
    endef
    
    $(foreach f,$(SOURCE),$(eval $(call rule,$(f))))
    

    I feel like this is an abuse of Make, but it works. When is it a good idea to delegate the building process to other tools?

  • source
  • parent
  • context
  •  

    Hey, I'm trying to create a pipeline that takes files from a flat directory source/ that contains files with names formatted as yyyy-mm-dd-some-file-name.md and processes them with the output being created in destination/yyyy/mm/dd/some-file-name.md. I managed to string together an ugly script that converts the source path to destination path, but the problem is that make says that there is no rule to make the target. Here is my code so far:

    SOURCE := $(wildcard source/*.md)
    DESTINATION := $(foreach f,SOURCE,destination/$(shell echo $(notdir $(f)) | sed -E 's/^([0-9]{4})-([0-9]{2})-([0-9]{2})-(.*)\.md$$/\1\/\2\/\3\/\4.md/'))
    
    $(DESTINATION): $(SOURCE)
    	@mkdir -p $(dir $(shell echo $(notdir $@) | sed -E 's/^([0-9]{4})-([0-9]{2})-([0-9]{2})-(.*)\.md$$/\1\/\2\/\3/'))
    	/bin/bash ./myscript.sh $< > $@
    

    I believe that make sees that there are no target directories yet and just aborts the rule, but I'm not knowledgeable enough and just starting out with that tool. I would appreciate some guidance if any of you folks know a bit of Make.

     

    Hi all, I'm new to Godot and recently returned to my project that I have started last year. I've been trying to create a reusable button and use it in my GUI scenes. I created a separate scene round_button.tscn which has the following structure:

    Control
     └─ RoundTextureButton
         └─ CenterContainer
            └─ IconTextureRect
    

    RoundTextureButton is a TextureButton that reacts to mouse hover and IconTextureRect is a TextureRect that is meant to be an icon with texture set as an AtlasTexture. I made the following script that is attached to Control:

    extends Control
    class_name RoundButton
    
    enum IconID { play, pause, back, forward, … }
    
    const ICON_REGIONS =  [
    	Vector2i(64, 0),
    	Vector2i(64, 16),
    	…]
    
    @export var icon_id: IconID = IconID.play
    @onready var icon_rect: TextureRect = $RoundTextureButton/CenterContainer/IconTextureRect
    
    func _ready() -> void:
    	icon_rect.texture.region = Rect2(ICON_REGIONS[icon_id], Vector2i(16, 16))
    

    This creates a dropdown in Godot GUI which allows me to comfortably set the type of a button. It works as expected when I run the button scene.

    Then I Instantiate Child Scene… in my menu scene menu.tscn to add a few buttons to my game menu. One button works fine, but when I add two or more, they all have the same icon, the last button that I added and set. What am I missing here with sharing attributes? I read that exported arrays are shared by all instances because the variables are really pointers to some memory location, but my icon_id is an enum value. To test this I have put a print statement in _ready() and it seems like the buttons have distinct values, but the icons are still shared by all of them.

     

    I'm using godot-rust bindings to provide some additional functionality to my codebase. I wrote methods associated with a struct that I would like to use in my game and made a few unit tests to ensure that they're working correctly. After godotifying my struct with attributes described in Hello World section of the godot-rust book I got a slew of errors, some of which are about initialization of the struct in test functions. After clearing them all and executing MyClass:new_alloc() at the beginning of a test function the compiler complains that Godot engine is not available. I hit a roadblock because I don't know how to execute tests in Godot environment. Changing #[test] to #[itest] makes the code compile but that's because it executes 0 tests; from what I see itest is meant for developing godot-rust anyway. What is the preferred way of unit testing godot-rust code?

     

    Hello all! I've been getting into self-hosting stuff and ran into an issue with port forwarding my services to the internet. I don't have access to my router's config (provided by ISP), so I researched tunnels and there is ngrok, Cloudflare Tunnel and other more well-known reverse proxy services, but I also stumbled upon loophole.cloud. I can't find more information about it except a few Reddit comments here and there. Has anyone here actually used it and can say a few words about it?

     

    I'm new to Godot and I'd like to make a game with 2d isometric graphics. There are lots of tutorials on using tilesets, but every one I've seen so far uses one image per one tile (even if they're put together in one large spritesheet) like so:

    This is problematic if I want to have lots of variation in my base shape, like different egdes and corners and so on. What I'd like to achieve is to have to draw just parts of the blocks and put them together to form a tile in the editor, like so:

    This way I only need to modify the specific sub-tiles if i want to change, for example, the look of grass on top, and it will propagate to all tiles with grass on top. I know about tile patterns in Godot, but they seem to be something else. I want to take the triangular patches from my spritesheet and compose the tiles out of them. Is it possible in Godot?

    view more: next ›