#lambgamedev — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #lambgamedev, aggregated by home.social.
-
Here is a WIP of the Zelda 64-style camera targeting system. It needs improvement, but I'm really unsure as to how to go about fixing it 😅
The project is called Slayer64 and is being developed by WINDBREKER
:)
I'm pretty proud of what I've made so far! I've come a long way since first starting to learn Godot ^^
None of this could have been made without @keyschain's help! She is inseparably important!
#zelda #ocarinaoftime #oot #legendofzelda #godot #godotdev #indiedev #lambgamedev -
made a very simple 2D Zelda-style camera. might work on it more as practice
#godot #zelda #gamedev #lambgamedev -
Urge to make every game going forward for the Ayn Thor and Anbernic RG DS...rising.... Must r-r-resist...
#lambgamedev -
I think I've reached a point where it's good enough and I can move on. I can't figure out how to get the "danger zone" flash animation working, but oh well, maybe in another 10 months I'll take another crack at it.
#lambgamedev #indiedev #gamedev #godot #zelda -
The game I helped work on is out!
TEMPEST
BECOME ARMAGEDDON
It's a retro-style FPS where you play as a samurai with a gun and you shoot alien invaders in feudal Japan!!
You can play it in your browser here!
Unfortunately, none of my work made it into the release, but we all did put a lot of effort into it! Please give it a try and if you have an Itch account feel free to rate Tempest on the 32-Bit Winter Jam!
You can read about my unfinished work on Tempest on my website!
#gamedev #indiedev #godot #32bitjam #32bitwinterjam #lambgamedev
RE: https://transfem.social/notes/agvm2w81s7lj190q -
I'm not restarting the 3D Zelda project, but the broken health bar always bugged me, so I got to thinking about it more today and with a little perseverance I did it! It also works if you change the HP by amounts other than 1.
It's little moments like these that make me think that maybe game dev isn't impossible for me, just that it requires a lot of thinking, breaking concepts down into smaller tasks, and time away from problems.class_name HudHealth extends Node const NAME_HEART: String = "HudHeart" ## The name of each heart node. Used to identify heart nodes from other nodes. const HRT_SECTIONS: int = 4 ## Don't change this from 4, everything breaks otherwise. export var hrt: PackedScene ## The heart scene export var hp: int = 0 setget _hp_set func _hp_set(value: int = hp) -> void: hp = clamp(value, 0, hp_max) export var hp_max: int = 3 * HRT_SECTIONS ## Determines the maxmimum amount of health the player has. Every 4 hp adds a new heart to the health bar. export var grid_collumns: int = 10 ## Determines how many hearts can be in a row before a new row is started. onready var grid = $"../Grid" onready var btn_add = $"../ButtonAdd" onready var btn_subtract = $"../ButtonSubtract" onready var lbl_debug = $"../LblDebug" var target_heart: int ## Determines which heart in the grid should be segmented. func _ready() -> void: grid.columns = grid_collumns # Empty any heart nodes that might already be children of the grid node for i in grid.get_child_count(): if grid.get_child(i).name.begins_with(NAME_HEART): grid.get_child(i).name = "_REMOVE" # Necessary for some reason or else future HudHeart node names will continue counting as if the previous ones were still there despite those already being deleted. Very strange. grid.get_child(i).queue_free() else: printerr("There were stray nodes in the HudHealth grid node at child " + str(i) + ", name " + grid.get_child(i).name + ". Deleted.") grid.get_child(i).queue_free() # Add hearts to grid for i in ceil(hp_max / HRT_SECTIONS): var h: Control = hrt.instance() grid.add_child(h, true) get_node("../Grid/HudHeart" + str(i) + "/Heart").value = 0 # Make all hearts' values 0 # Ensures grid h-separation and v-separation are appropriate for i in grid.get_child_count(): if grid.get_child(i).name.begins_with(NAME_HEART): var h: TextureProgress = grid.get_child(i).get_child(0) grid.add_constant_override("hseparation", h.rect_size.x) grid.add_constant_override("vseparation", h.rect_size.y) break # Only needs to happen once. update_hud_health() func update_hud_health() -> void: target_heart = ceil(float(hp) / HRT_SECTIONS) - 1 # find the target heart based on player's HP for i in grid.get_child_count(): if grid.get_child(i).name.begins_with(NAME_HEART): var h: TextureProgress = get_node("../Grid/HudHeart" + str(i) + "/Heart") # Handle all hearts before the target heart if i < target_heart: h.value = HRT_SECTIONS # Handle the target heart if i == target_heart: h.value = hp % HRT_SECTIONS if hp % HRT_SECTIONS == 0: h.value = HRT_SECTIONS # Handle all hearts after the target heart if i > target_heart: h.value = 0 lbl_debug.text = "HP: " + str(hp) + "\nTarget Heart: " + str(target_heart) + "\nModulo: " + str(hp % HRT_SECTIONS) func _on_ButtonAdd_button_up(): hp += 1 _hp_set() update_hud_health() func _on_ButtonSubtract_button_up(): hp -= 1 _hp_set() update_hud_health()
I'd like to improve it to the point where the bar fills and depletes smoothly like it does in Breath of the Wild, but that seems like adding complications to a currently working and serviceable solution.
#zelda #gamedev #indiedev #indiegames #godot #lambgamedev
RE: https://transfem.social/notes/a80qv4k7f6po6olz -
I'm learning programming :3
Here's a thing I made. It sorts high scores for a local leaderboard. It must follow a[[HISCORE, DATETIME, NAME], [...], [...]]format (or at least the first two items must be high score and date-time).class LeaderboardSort: ## Sorts duplicate scores prioritizing the earlier datetime. static func sort_duplicate_scores(a, b) -> bool: if a[1] < b[1]: return true return false ## Sorts scores. static func sort_scores(a, b) -> bool: if a[0] > b[0]: return true return false ## Sorts the leaderboard array from highest to lowest score and handleds duplicate scores. ## Leaderboard array must be arranged like so: [HISCORE, int(Time.get_datetime_string_from_system(true)), "PLAYER_NAME"] func sort_leaderboard(lb: Array) -> void: lb.sort_custom(LeaderboardSort, "sort_duplicate_scores") # This one must be done before sort_scores() lb.sort_custom(LeaderboardSort, "sort_scores")
It worked out for me! Let me know if there are any errors.
Looking up "godot leaderboard" online yielded a whole lot of nothing. There was SilentWolf and SimpleBoards, but a whole plugin to just do high score sorting seemed over the top to me. So, I decided to try to make a high score sorter myself. Thankfully, Godot hassort_custom()that makes it a lot simpler.
No idea what "static" functions do or what separates them from regular functions, but the Editor was telling me they gotta be static. I looked it up and the explanations aren't that helpful.
#godot #gdscript #gamedev #indiedev #lambgamedev -
Oh to be in an 8-person game studio making chill games about life, fun, and growing old...
#lambgamedev #indiegamedev #indiedev #gamedev -
I think I may have kinda killed it at programming this one thing in the game, I'm so happy
No idea if it's gonna continue to work later on, but it works now!!!!
#lambgamedev -
I made a little breakthrough in game programming yippee yippee
#lambgamedev -
2+ years of game dev experience
0 video games finished
They call her.....Lamb.....
#lambgamedev -
A very cool idea: developing an arcade game in Godot for a Raspberry Pi (or alternative), sticking that bad boy in an arcade cabinet.
Bonus points if it uses a CRT TV monitor.
#godot #gamedev #indiedev #lambgamedev #arcadegames #retrodev -
Godot 4.5 just came out and oh my goodness the features, the features...
I've been using 3.5.3 for so long that once I dip my toes into 4.5 or 4.6 or 4.7 whenever those come out it's going to feel like I'm 10 years old again
#lambgamedev -
I have whipped up a quick and dirty PlayStation 2 ghosting/motion blur/frame blending effect!
## Creates a PlayStation 2-like frame blending effect. ## ## Add to _process(). The frame blending effect is applied to the area ## within the boundaries of the texture_rect node. ## It is recommended to only set the alpha to less than 1. func frame_blend(texture_rect: TextureRect, alpha: float = 0.5, use_frame_post_draw: bool = true, viewport: Viewport = get_viewport()) -> void: alpha = clamp(alpha, 0.0, 1.0) # Alpha values are 0 through 1 var image: Image = Image.new() var texture: ImageTexture = ImageTexture.new() image = viewport.get_texture().get_data() # FORMAT_RGBAH image.flip_y() # Images start out upside-down. This turns it rightside-up. if use_frame_post_draw: yield(VisualServer, "frame_post_draw") # Changes the vibe. texture.create_from_image(image) # Turn Image to ImageTexture texture_rect.modulate.a = alpha # Changes the opacity of the frame blending texture_rect.texture = texture # Applies the image of the last frame to the texture_rect
I've been very preoccupied lately. I apologize about the lack of game dev updates, but I've got a lot on my plate right now and those important things takes priority.
#gamedev #godot #lambgamedev #playstation2 #playstation1 #ps2 #ps1 #psx #indiedev -
I have whipped up a quick and dirty PlayStation 2 ghosting/motion blur/frame blending effect!
## Creates a PlayStation 2-like frame blending effect. ## ## Add to _process(). The frame blending effect is applied to the area ## within the boundaries of the texture_rect node. ## It is recommended to only set the alpha to less than 1. func frame_blend(texture_rect: TextureRect, alpha: float = 0.5, use_frame_post_draw: bool = true, viewport: Viewport = get_viewport()) -> void: alpha = clamp(alpha, 0.0, 1.0) # Alpha values are 0 through 1 var image: Image = Image.new() var texture: ImageTexture = ImageTexture.new() image = viewport.get_texture().get_data() # FORMAT_RGBAH image.flip_y() # Images start out upside-down. This turns it rightside-up. if use_frame_post_draw: yield(VisualServer, "frame_post_draw") # Changes the vibe. texture.create_from_image(image) # Turn Image to ImageTexture texture_rect.modulate.a = alpha # Changes the opacity of the frame blending texture_rect.texture = texture # Applies the image of the last frame to the texture_rect
I've been very preoccupied lately. I apologize about the lack of game dev updates, but I've got a lot on my plate right now and those important things takes priority.
#gamedev #godot #lambgamedev #playstation2 #playstation1 #ps2 #ps1 #psx #indiedev -
I'm so out of my league as a game dev, I have no idea what I'm doing and I don't know how to improve. I think if I had a teacher, I'd at least have someone I could go to for help, but I think it would be better if I were an artist/musician/writer instead of a programmer. But you can't make a game without programming it.
#lambgamedev -
I'm so out of my league as a game dev, I have no idea what I'm doing and I don't know how to improve. I think if I had a teacher, I'd at least have someone I could go to for help, but I think it would be better if I were an artist/musician/writer instead of a programmer. But you can't make a game without programming it.
#lambgamedev -
If you were to buy a cool indie game as a physical edition, what medium would you prefer it to be?
#lambgamedev #gamedev #indiedev #godot #retrogaming #physicalmedia
RE: https://transfem.social/notes/a4niv8ktp1db0070 -
If you were to buy a cool indie game as a physical edition, what medium would you prefer it to be?
#lambgamedev #gamedev #indiedev #godot #retrogaming #physicalmedia
RE: https://transfem.social/notes/a4niv8ktp1db0070 -
So I'm thinking about developing the Zelda 64-like for the RG34XXSP specifically and maybe even the RG35XXSP, despite its lack of even one analog stick, and more realistically the RG40XXV, which has one stick. I'm doing what I can to make the game playable with one analog stick instead of two, like how it was with the N64 controller.
The main issue is the RG40XXV's 1 GB of RAM, which I'm surprisingly slightly unsure if it will be enough. To my understanding, ~700 MB / 1,000 MB will be open to me for game stuff, which seemed like more than enough at first, but the test room I've made takes up 40+ MB of static RAM (and ~7 MB of dynamic RAM), and I'm thinking that this could easily balloon out of control as development continues. (Also I don't have the best grasp on what the difference is between static and dynamic RAM is.) I'm already using ~6% of my RAM with barely anything happening.
This may be the first time in my game dev journey where I will actually have to care about what I load and what I unload into memory. :axolotl_shock:
The RG34XXSP has 2 GB of RAM, so I'm totally unconcerned about that. If 2 GB isn't enough, I'm doing something wrong.
#lambgamedev #gamedev #indiedev #godot #zelda #ocarinaoftime #majorasmask
RE: https://transfem.social/notes/a863453c4mxg77uo -
So I'm thinking about developing the Zelda 64-like for the RG34XXSP specifically and maybe even the RG35XXSP, despite its lack of even one analog stick, and more realistically the RG40XXV, which has one stick. I'm doing what I can to make the game playable with one analog stick instead of two, like how it was with the N64 controller.
The main issue is the RG40XXV's 1 GB of RAM, which I'm surprisingly slightly unsure if it will be enough. To my understanding, ~700 MB / 1,000 MB will be open to me for game stuff, which seemed like more than enough at first, but the test room I've made takes up 40+ MB of static RAM (and ~7 MB of dynamic RAM), and I'm thinking that this could easily balloon out of control as development continues. (Also I don't have the best grasp on what the difference is between static and dynamic RAM is.) I'm already using ~6% of my RAM with barely anything happening.
This may be the first time in my game dev journey where I will actually have to care about what I load and what I unload into memory. :axolotl_shock:
The RG34XXSP has 2 GB of RAM, so I'm totally unconcerned about that. If 2 GB isn't enough, I'm doing something wrong.
#lambgamedev #gamedev #indiedev #godot #zelda #ocarinaoftime #majorasmask
RE: https://transfem.social/notes/a863453c4mxg77uo -
I would love to get CRT Emudriver on my computer, but it looks kinda complicated to work with. I'd love to use it to work on pixel art!
If I could ever get my hands on a PVM/BVM, hooo boy, I'd never turn it off
#lambgamedev #pixelart #crt #crttv -
I would love to get CRT Emudriver on my computer, but it looks kinda complicated to work with. I'd love to use it to work on pixel art!
If I could ever get my hands on a PVM/BVM, hooo boy, I'd never turn it off
#lambgamedev #pixelart #crt #crttv -
You know what, screw it, I'm learning 3D.
Zelda 64-like, my beloved, you are going to happen someday...
#lambgamedev #n64 #zelda #godot #gamedev #indiedev
RE: https://transfem.social/notes/a7pqdfjd8cub4zbz -
You know what, screw it, I'm learning 3D.
Zelda 64-like, my beloved, you are going to happen someday...
#lambgamedev #n64 #zelda #godot #gamedev #indiedev
RE: https://transfem.social/notes/a7pqdfjd8cub4zbz -
I made a post on bsky mostly jokingly asking if anyone wants to join a Zelda 64-like game dev team and I got a non-zero amount of impressive, talented people being like "ye sure"
Not sure what to do! I think I'm too inexperienced to lead such a project and I have not even TOUCHED 3D in Godot.
HOWEVER. A Zelda 64-like would be very cool...
#lambgamedev #gamedev #indiedev #godot -
I made a post on bsky mostly jokingly asking if anyone wants to join a Zelda 64-like game dev team and I got a non-zero amount of impressive, talented people being like "ye sure"
Not sure what to do! I think I'm too inexperienced to lead such a project and I have not even TOUCHED 3D in Godot.
HOWEVER. A Zelda 64-like would be very cool...
#lambgamedev #gamedev #indiedev #godot -
My dream of making video games for cheap handhelds may someday become reality! I would love to be able to port my games to Ambernic handhelds :3
https://www.reddit.com/r/godot/s/yGht7E4OSh
#lambgamedev #gamedev #indiedev #godot -
My dream of making video games for cheap handhelds may someday become reality! I would love to be able to port my games to Ambernic handhelds :3
https://www.reddit.com/r/godot/s/yGht7E4OSh
#lambgamedev #gamedev #indiedev #godot -
I'm weeks into this project and I've just been informed that GDScript Timer nodes are not accurate enough to perform with music-related purposes. If I can't find a workaround, I guess I'll just release what I've got and go back to working on finishing Witch Brew Dive.
I'm so tired.
#lambgamedev #gamedev #godot
RE: https://transfem.social/notes/a6ftsidy5g5j2xja -
I'm weeks into this project and I've just been informed that GDScript Timer nodes are not accurate enough to perform with music-related purposes. If I can't find a workaround, I guess I'll just release what I've got and go back to working on finishing Witch Brew Dive.
I'm so tired.
#lambgamedev #gamedev #godot
RE: https://transfem.social/notes/a6ftsidy5g5j2xja -
I don't remember how I came across this website, but it looks so cute!!! It's a webring of queer visual novels called Yuri Evn Webring. I hope that after I finish Witch Brew Dive, I can submit my visual novel-esque game to this webring :3
#lambgamedev -
The fact that
"code does exactly what you tell it to"is problematic because i want it to work and not not work!!!! :skype_angry:
#lambgamedev #gamedev #indiedev -
I had a dream last night that I was working on this project. Completely mundane, just sitting at my laptop and problem solving.
#lambgamedev
RE: https://transfem.social/notes/a6ftsidy5g5j2xja -
I had a dream last night that I was working on this project. Completely mundane, just sitting at my laptop and problem solving.
#lambgamedev
RE: https://transfem.social/notes/a6ftsidy5g5j2xja -
I'm attempting a side project called Godot MML that lets you use audio sample-based MML in Godot! I'm struggling a good deal with it—it is my first time doing something like this—but I believe I'm making a fair amount of progress for the beginning.
#lambgamedev #gamedev #indiedev #mml #chiptune #musicmacrolanguage -
I'm attempting a side project called Godot MML that lets you use audio sample-based MML in Godot! I'm struggling a good deal with it—it is my first time doing something like this—but I believe I'm making a fair amount of progress for the beginning.
#lambgamedev #gamedev #indiedev #mml #chiptune #musicmacrolanguage -
I'm attempting a side project called Godot MML that lets you use audio sample-based MML in Godot! I'm struggling a good deal with it—it is my first time doing something like this—but I believe I'm making a fair amount of progress for the beginning.
#lambgamedev #gamedev #indiedev #mml #chiptune #musicmacrolanguage -
I'm attempting a side project called Godot MML that lets you use audio sample-based MML in Godot! I'm struggling a good deal with it—it is my first time doing something like this—but I believe I'm making a fair amount of progress for the beginning.
#lambgamedev #gamedev #indiedev #mml #chiptune #musicmacrolanguage -
I’m just super proud of this shot right here. (It’s even better animated!)
From my WIP game “Witch Brew Dive”!
#godot #indiegame #gamedev #indiedev #gameboy #lambgamedev -
I am still working on Witch Brew Dive! It's going slow but surely. I restarted programming from scratch because I feel like I can do better this time around!
#lambgamedev #gamedev #indiedev #gameboy #godot -
I am still working on Witch Brew Dive! It's going slow but surely. I restarted programming from scratch because I feel like I can do better this time around!
#lambgamedev #gamedev #indiedev #gameboy #godot -
Well fuck I guess I'm dropping GitHub.
It is shocking every time seeing a corpo or college invest in Israel or donate to ICE or donate to the police or donate to piece of shit politicians or all of the above. It shouldn't be a surprise to me anymore, fucking EVERY major company does this. But what business does GITHUB or MICROSOFT have with ICE???? How does deporting illegal immigrants relate your free digital file sharing service??
Guess this means I have to actually learn how to use Git :akko_write: If I ever release any source code, it will be through another service like https://git.gay or through Itch.
#lambgamedev #github #git -
Solo game dev sucks because you’ve gotta do EVERYTHING yourself, even things that you're not good at. Though I worry that if I had multiple people working on a single project how disregarded my input would be. In the past, my input and the way I worked was often scoffed at. Maybe it’s just because the people I worked with were bullies, maybe it’s because I am just bad at coming up with ideas and realizing those ideas.
With Witch Brew Dive, the game is very simple and does not have deep game mechanics, but I wanted it to be simple. Something that a little girl could pick up and enjoy. I worry that if I was part of a team when I thought of the game that it would have been scrapped for being a “bad idea”. I guess it’s just something that I’ve got to try someday and figure out what teammates would be good, balancing judgment and acceptance.
#lambgamedev #indiedev -
CW: talking distressing politics, escaping the US, sanctuary states
I know people don't care THAT much if at all, but I want to say that I'm putting game dev on the back burner for a while.
Reason being the need to focus on my relationships and on political asylum/emigration strategy/moving plans due to American anti-trans, anti-gay, anti-neurodivergence policies. Like we gotta get a lawyer just to get a passport, the load is heavy and I feel like I'm way in over my head.
If anyone has any advice, feel free to share.
#lambgamedev #sanctuarystate #sanctuarycity #antitranspolitics