LUA dynamic concatenation
Hello guys. I need to build a message in LUA that has fixed value of 240 characters. This message is composed by a variable lenght message that I have allready processed, but the rest has to be filled with the * character. So for example if my initial message is 100 characters, I need to fill the rest until 240 with the * character. If my message will be 200 characters, I need to fill 40 * until reaching 240.
How can this be achieved?
Thanks
https://redd.it/1qr2vgk
@r_lua
Hello guys. I need to build a message in LUA that has fixed value of 240 characters. This message is composed by a variable lenght message that I have allready processed, but the rest has to be filled with the * character. So for example if my initial message is 100 characters, I need to fill the rest until 240 with the * character. If my message will be 200 characters, I need to fill 40 * until reaching 240.
How can this be achieved?
Thanks
https://redd.it/1qr2vgk
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
can anybody help me fix this piece of code
this code is suppose to look if the new ore thats currently generating and any existing ore are overlaping .but when i run it some times idoesnt work i need help
ores = {x = {}, y = {},durability = {} ,rotation = {},alive = {} , image = love.graphics.newImage("rock.png"),image2 = love.graphics.newImage("tree.png") ,class = {}}
local pos = {x = 0 , y = 0, blocked = false}
function ores:generate(repeats,mapsizex,mapsizey,mapX,mapY,class) --tree height is 32 and rock height is 16
for i = 1 , repeats do
pos.blocked = false
pos.x = mapX + love.math.random(0,40) 30
pos.y = mapY + love.math.random(0,20) 30
for k = 1, #ores.x do
if ores.rotationi ~= nil and ores.xk == pos.x and ores.yk == pos.y or ores.rotationi ~= nil and pos.y + 30 == ores.yk and ores.xk == pos.x then
pos.blocked = true
break
end
end
if not pos.blocked and mapX + mapsizex > pos.x and mapY + mapsizey > pos.y then
table.insert(ores.x, pos.x)
table.insert(ores.y, pos.y)
table.insert(ores.durability, 10)
table.insert(ores.rotation, 0)
table.insert(ores.alive, true)
table.insert(ores.class, class)
end
end
end
https://redd.it/1qnfggo
@r_lua
this code is suppose to look if the new ore thats currently generating and any existing ore are overlaping .but when i run it some times idoesnt work i need help
ores = {x = {}, y = {},durability = {} ,rotation = {},alive = {} , image = love.graphics.newImage("rock.png"),image2 = love.graphics.newImage("tree.png") ,class = {}}
local pos = {x = 0 , y = 0, blocked = false}
function ores:generate(repeats,mapsizex,mapsizey,mapX,mapY,class) --tree height is 32 and rock height is 16
for i = 1 , repeats do
pos.blocked = false
pos.x = mapX + love.math.random(0,40) 30
pos.y = mapY + love.math.random(0,20) 30
for k = 1, #ores.x do
if ores.rotationi ~= nil and ores.xk == pos.x and ores.yk == pos.y or ores.rotationi ~= nil and pos.y + 30 == ores.yk and ores.xk == pos.x then
pos.blocked = true
break
end
end
if not pos.blocked and mapX + mapsizex > pos.x and mapY + mapsizey > pos.y then
table.insert(ores.x, pos.x)
table.insert(ores.y, pos.y)
table.insert(ores.durability, 10)
table.insert(ores.rotation, 0)
table.insert(ores.alive, true)
table.insert(ores.class, class)
end
end
end
https://redd.it/1qnfggo
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Sharing my TIC80 lua language server stubs
https://codeberg.org/firns/tic80-lua-language-server-stubs
Hi, I made some LLS stubs for TIC80 because I use an external editor that isn't VS Code. For anyone else interested, my repo will explain how to use them, its super simple if your ide has language server functionality.
Hope this helps a few people!
https://redd.it/1qrf66x
@r_lua
https://codeberg.org/firns/tic80-lua-language-server-stubs
Hi, I made some LLS stubs for TIC80 because I use an external editor that isn't VS Code. For anyone else interested, my repo will explain how to use them, its super simple if your ide has language server functionality.
Hope this helps a few people!
https://redd.it/1qrf66x
@r_lua
Codeberg.org
tic80-lua-language-server-stubs
A folder to be added to the Lua-Language-Server to provide code completion, parameter hints, etc.
morolua, a small, engine-agnostic Lua utility library to avoid rewriting common helpers every project. I’d appreciate feedback on the API design and scope.
https://github.com/moro989/morolua
https://redd.it/1qsxbm3
@r_lua
https://github.com/moro989/morolua
https://redd.it/1qsxbm3
@r_lua
GitHub
GitHub - moro989/morolua: morolua is a pure Lua utility library with no dependencies. Its goal is to eliminate the need to rewrite…
morolua is a pure Lua utility library with no dependencies. Its goal is to eliminate the need to rewrite common functionality in every project. While designed with game-style environments in mind, ...
Grid Fusion: little puzzle like triple town
hello just a little game in love2d
i want to recreate some kind of triple town game
it s simpliest than triple town
give me your opinion / advices about it
thanks
https://pouranat.itch.io/grid-fusion
https://redd.it/1qt49cu
@r_lua
hello just a little game in love2d
i want to recreate some kind of triple town game
it s simpliest than triple town
give me your opinion / advices about it
thanks
https://pouranat.itch.io/grid-fusion
https://redd.it/1qt49cu
@r_lua
itch.io
Grid Fusion by pouranat
a puzzle game (fusion from 2048 and Triple Town). Play in your browser
removing specific iteration of one variable from table
so what i am doing is in the beginning of the program there's a variable "monsters", which is where a created instance of a "monster" variable is created. what i want is how to figure out how to remove the specific instance of a monster from an if then statement(during a collision). this is the code:
im sorry if this is a redundant question, also im using love2d but thats kinda irrelevant
thank you.
edit: i figured it out
https://redd.it/1qw0umi
@r_lua
so what i am doing is in the beginning of the program there's a variable "monsters", which is where a created instance of a "monster" variable is created. what i want is how to figure out how to remove the specific instance of a monster from an if then statement(during a collision). this is the code:
for i, bullet in ipairs(bullets) doif bullet.x + 10 > monster.x and bullet.x - 10 < monster.x + 80 thenif bullet.y - 10 > monster.y and bullet.y + 10 < monster.y + 80 then--what do i dotable.remove(monsters, i)endendendendim sorry if this is a redundant question, also im using love2d but thats kinda irrelevant
thank you.
edit: i figured it out
https://redd.it/1qw0umi
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
I am making a new package manager for lua called LuaMoon
Hi everyone!
I’m working on LuaMoon, a lightweight Lua package manager that aims to improve on existing tools like LuaRocks. LuaMoon is designed to be compatible with Love2D, LuaJIT, and Lua, making it easier to manage libraries across different Lua environments using virtual environments.
It’s still in the early stages of development, so it’s experimental — it might be buggy or insecure, and things are changing rapidly. My goal is to make LuaMoon simpler, faster, and more user-friendly than what’s currently available.
I’d love to get feedback from the community! Any advice, suggestions, or ideas for features would be hugely appreciated. If you’ve been frustrated by LuaRocks or other Lua package managers, LuaMoon is meant to address some of those pain points.
Check it out here: https://github.com/MXD-K1/LuaMoon
Thanks for looking, and I’m excited to hear your thoughts!
https://redd.it/1qw1vbb
@r_lua
Hi everyone!
I’m working on LuaMoon, a lightweight Lua package manager that aims to improve on existing tools like LuaRocks. LuaMoon is designed to be compatible with Love2D, LuaJIT, and Lua, making it easier to manage libraries across different Lua environments using virtual environments.
It’s still in the early stages of development, so it’s experimental — it might be buggy or insecure, and things are changing rapidly. My goal is to make LuaMoon simpler, faster, and more user-friendly than what’s currently available.
I’d love to get feedback from the community! Any advice, suggestions, or ideas for features would be hugely appreciated. If you’ve been frustrated by LuaRocks or other Lua package managers, LuaMoon is meant to address some of those pain points.
Check it out here: https://github.com/MXD-K1/LuaMoon
Thanks for looking, and I’m excited to hear your thoughts!
https://redd.it/1qw1vbb
@r_lua
GitHub
GitHub - MXD-K1/LuaMoon: LuaMoon is a modern, lightweight package manager for Lua, designed to make dependency management simple…
LuaMoon is a modern, lightweight package manager for Lua, designed to make dependency management simple, fast, and predictable. - MXD-K1/LuaMoon
Free lua obfuscator
An actually solid lua obfuscator i developed, it works for normal lua, and for hvh, i will probably try to update for roblox aswell
discord: https://discord.gg/vdBnvXBaJ4
https://redd.it/1qwgrww
@r_lua
An actually solid lua obfuscator i developed, it works for normal lua, and for hvh, i will probably try to update for roblox aswell
discord: https://discord.gg/vdBnvXBaJ4
https://redd.it/1qwgrww
@r_lua
Discord
Join the Proteus Discord Server!
Best Javanoscript Obfuscator | 25 members
Where to learn Lua
# Where to able learn Lua coding and its free which not going waste my time. I would like to try create game.
https://redd.it/1qvqlwj
@r_lua
# Where to able learn Lua coding and its free which not going waste my time. I would like to try create game.
https://redd.it/1qvqlwj
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
This media is not supported in your browser
VIEW IN TELEGRAM
I built interactive visualizations to understand Rate Limiting algorithms, implementation using lua, node.js and redis
https://redd.it/1qupxmk
@r_lua
https://redd.it/1qupxmk
@r_lua
ds.time: time objects in pure-lua including DateTime from epoch
https://civboot.github.io/lua/ds.html#ds.time
https://redd.it/1quf6mc
@r_lua
https://civboot.github.io/lua/ds.html#ds.time
https://redd.it/1quf6mc
@r_lua
My favorite part about coding in Lua..
..is having to write a custom function to print tables so I can actually debug.
I especially love watching that function get more complex than the project I'm trying to debug with it cause I want to use nested tables.
https://redd.it/1qtk4od
@r_lua
..is having to write a custom function to print tables so I can actually debug.
I especially love watching that function get more complex than the project I'm trying to debug with it cause I want to use nested tables.
https://redd.it/1qtk4od
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
I made a lua-based build system to help learn lua better. I've gained a good appreciation for Lua (Kindler Build System)
https://setsunasoftware.com/kindler/
https://redd.it/1qt7ki8
@r_lua
https://setsunasoftware.com/kindler/
https://redd.it/1qt7ki8
@r_lua
Need help finding out what's what
So I wish to modify a game to change the sound of the tinnitus ringing from flashbangs and explosions (Don't worry rule 8 enforcers, my file makes them louder and have a much more irritating tone.). I got the lua from a repository of the game files on GitHub. I have next to no experience with lua code, and I want to know what points to what or what does what, just so I know where everything points to to play the sounds and what I'd have to change (like the sound file format - currently it's .ogg, any errors in the code, or any files I'd have to create /rename to get it to work). Any help is appreciated! Game is Payday 2 by the way, in case that helps. Here's the code I copied:
function PlayerDamage:on_concussion(mul)
if self._downed_timer then
return
end
self:_start_concussion(mul)
end
function PlayerDamage:_start_concussion(mul)
if self._concussion_data then
self._concussion_data.intensity = mul
local duration_tweak = tweak_data.projectiles.concussion.duration
self._concussion_data.duration = duration_tweak.min + mul * math.lerp(duration_tweak.additional - 2, duration_tweak.additional + 2, math.random())
self._concussion_data.end_t = managers.player:player_timer():time() + self._concussion_data.duration
SoundDevice:set_rtpc("concussion_effect", self._concussion_data.intensity * 100)
else
local duration = 4 + mul * math.lerp(8, 12, math.random())
self._concussion_data = {
intensity = mul,
duration = duration,
end_t = managers.player:player_timer():time() + duration
}
end
self._unit:sound():play("concussion_player_disoriented_sfx")
self._unit:sound():play("concussion_effect_on")
end
function PlayerDamage:_stop_concussion()
if not self._concussion_data then
return
end
self._unit:sound():play("concussion_effect_off")
self._concussion_data = nil
end
function PlayerDamage:on_flashbanged(sound_eff_mul)
if self._downed_timer then
return
end
self:_start_tinnitus(sound_eff_mul)
end
function PlayerDamage:_start_tinnitus(sound_eff_mul, skip_explosion_sfx)
if self._tinnitus_data then
if sound_eff_mul < self._tinnitus_data.intensity then
return
end
self._tinnitus_data.intensity = sound_eff_mul
self._tinnitus_data.duration = 4 + sound_eff_mul * math.lerp(8, 12, math.random())
self._tinnitus_data.end_t = managers.player:player_timer():time() + self._tinnitus_data.duration
if self._tinnitus_data.snd_event then
self._tinnitus_data.snd_event:stop()
end
SoundDevice:set_rtpc("downed_state_progression", math.max(self._downed_progression or 0, self._tinnitus_data.intensity * 100))
self._tinnitus_data.snd_event = self._unit:sound():play("tinnitus_beep")
else
local duration = 4 + sound_eff_mul * math.lerp(8, 12, math.random())
SoundDevice:set_rtpc("downed_state_progression", math.max(self._downed_progression or 0, sound_eff_mul * 100))
self._tinnitus_data = {
intensity = sound_eff_mul,
duration = duration,
end_t = managers.player:player_timer():time() + duration,
snd_event = self._unit:sound():play("tinnitus_beep")
}
end
if not skip_explosion_sfx then
self._unit:sound():play("flashbang_explode_sfx_player")
end
end
function PlayerDamage:_stop_tinnitus()
if not self._tinnitus_data then
return
end
self._unit:sound():play("tinnitus_beep_stop")
self._tinnitus_data =
So I wish to modify a game to change the sound of the tinnitus ringing from flashbangs and explosions (Don't worry rule 8 enforcers, my file makes them louder and have a much more irritating tone.). I got the lua from a repository of the game files on GitHub. I have next to no experience with lua code, and I want to know what points to what or what does what, just so I know where everything points to to play the sounds and what I'd have to change (like the sound file format - currently it's .ogg, any errors in the code, or any files I'd have to create /rename to get it to work). Any help is appreciated! Game is Payday 2 by the way, in case that helps. Here's the code I copied:
function PlayerDamage:on_concussion(mul)
if self._downed_timer then
return
end
self:_start_concussion(mul)
end
function PlayerDamage:_start_concussion(mul)
if self._concussion_data then
self._concussion_data.intensity = mul
local duration_tweak = tweak_data.projectiles.concussion.duration
self._concussion_data.duration = duration_tweak.min + mul * math.lerp(duration_tweak.additional - 2, duration_tweak.additional + 2, math.random())
self._concussion_data.end_t = managers.player:player_timer():time() + self._concussion_data.duration
SoundDevice:set_rtpc("concussion_effect", self._concussion_data.intensity * 100)
else
local duration = 4 + mul * math.lerp(8, 12, math.random())
self._concussion_data = {
intensity = mul,
duration = duration,
end_t = managers.player:player_timer():time() + duration
}
end
self._unit:sound():play("concussion_player_disoriented_sfx")
self._unit:sound():play("concussion_effect_on")
end
function PlayerDamage:_stop_concussion()
if not self._concussion_data then
return
end
self._unit:sound():play("concussion_effect_off")
self._concussion_data = nil
end
function PlayerDamage:on_flashbanged(sound_eff_mul)
if self._downed_timer then
return
end
self:_start_tinnitus(sound_eff_mul)
end
function PlayerDamage:_start_tinnitus(sound_eff_mul, skip_explosion_sfx)
if self._tinnitus_data then
if sound_eff_mul < self._tinnitus_data.intensity then
return
end
self._tinnitus_data.intensity = sound_eff_mul
self._tinnitus_data.duration = 4 + sound_eff_mul * math.lerp(8, 12, math.random())
self._tinnitus_data.end_t = managers.player:player_timer():time() + self._tinnitus_data.duration
if self._tinnitus_data.snd_event then
self._tinnitus_data.snd_event:stop()
end
SoundDevice:set_rtpc("downed_state_progression", math.max(self._downed_progression or 0, self._tinnitus_data.intensity * 100))
self._tinnitus_data.snd_event = self._unit:sound():play("tinnitus_beep")
else
local duration = 4 + sound_eff_mul * math.lerp(8, 12, math.random())
SoundDevice:set_rtpc("downed_state_progression", math.max(self._downed_progression or 0, sound_eff_mul * 100))
self._tinnitus_data = {
intensity = sound_eff_mul,
duration = duration,
end_t = managers.player:player_timer():time() + duration,
snd_event = self._unit:sound():play("tinnitus_beep")
}
end
if not skip_explosion_sfx then
self._unit:sound():play("flashbang_explode_sfx_player")
end
end
function PlayerDamage:_stop_tinnitus()
if not self._tinnitus_data then
return
end
self._unit:sound():play("tinnitus_beep_stop")
self._tinnitus_data =
why do people look down at lua although its as good or even better than other languages
yea it has downsides but you can just implement it into C for example for low level power. so i dont get all the hate
https://redd.it/1qx8v0c
@r_lua
yea it has downsides but you can just implement it into C for example for low level power. so i dont get all the hate
https://redd.it/1qx8v0c
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
🦒 Roblox Devs Wanted!
Hire, Sell, Collab & Build — All in One Fun Hub!
Join r/DevsRus today and let your games shine!
https://redd.it/1qxjbex
@r_lua
Hire, Sell, Collab & Build — All in One Fun Hub!
Join r/DevsRus today and let your games shine!
https://redd.it/1qxjbex
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
I need help please
I need the player collects 5 patient records scattered throughout the asylum, each a clickable object that disappears when picked up. A RecordsGui is displayed on the screen: first, the 'RecordsLabel' appears showing 'Records'; as each record is collected, the 'TotalRecordsLabel' updates in real time, counting up from '0 / 5' to '5 / 5', reflecting the player's progress. The GUI visually reacts to each pickup and changes the 1-5 number. I tried myself and with AI but it was no use. If someone can help me then I'm grateful!!!!
https://redd.it/1r07mru
@r_lua
I need the player collects 5 patient records scattered throughout the asylum, each a clickable object that disappears when picked up. A RecordsGui is displayed on the screen: first, the 'RecordsLabel' appears showing 'Records'; as each record is collected, the 'TotalRecordsLabel' updates in real time, counting up from '0 / 5' to '5 / 5', reflecting the player's progress. The GUI visually reacts to each pickup and changes the 1-5 number. I tried myself and with AI but it was no use. If someone can help me then I'm grateful!!!!
https://redd.it/1r07mru
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
I built a Lua/Luau-first transpiler with static analysis and no runtime helpers
I built Hordr, a Lua/Luau-first frontend transpiler.
It adds flow-sensitive analysis, explicit modules, a Luau-compatible type checker,
and safe optimizations, while generating clean, readable Lua with no runtime helpers
or semantic changes.
This is not a Lua replacement and not a new runtime.
It’s a conservative tooling layer for larger Lua codebases
Repo: https://github.com/Bladiostudio/Hordr
Feedback and criticism welcome.
https://redd.it/1r0lg7c
@r_lua
I built Hordr, a Lua/Luau-first frontend transpiler.
It adds flow-sensitive analysis, explicit modules, a Luau-compatible type checker,
and safe optimizations, while generating clean, readable Lua with no runtime helpers
or semantic changes.
This is not a Lua replacement and not a new runtime.
It’s a conservative tooling layer for larger Lua codebases
Repo: https://github.com/Bladiostudio/Hordr
Feedback and criticism welcome.
https://redd.it/1r0lg7c
@r_lua
GitHub
GitHub - Bladiostudio/Hordr: Lua/Luau-first frontend transpiler with flow-sensitive analysis, explicit modules, a Luau-compatible…
Lua/Luau-first frontend transpiler with flow-sensitive analysis, explicit modules, a Luau-compatible type checker, safe optimizations, and clean diagnostics. Generates readable, idiomatic Lua with ...
ECS like behavior with objects in Lua is possible?
Most of the time, it's considered that OOP has poor performance because of the way it works internally. Arrays and data make use of the CPU's cache memory while objects are scattared across the memory and in some instances, each object has it's own copy of a method from the constructor. But in Lua... I heard that if you write your classes correctly, the "methods" are cached. So, in the end, if you run
So, in the context of LuaJIT, how accurate is this? As soon as I have time I'mma go benchmark this idea, but curious to learn more about that stuff. Thank you!
https://redd.it/1r4rdm5
@r_lua
Most of the time, it's considered that OOP has poor performance because of the way it works internally. Arrays and data make use of the CPU's cache memory while objects are scattared across the memory and in some instances, each object has it's own copy of a method from the constructor. But in Lua... I heard that if you write your classes correctly, the "methods" are cached. So, in the end, if you run
for obj in objs do obj:something() end it's like you esentially iterate through tables of data and call the same referenced function on them, right?So, in the context of LuaJIT, how accurate is this? As soon as I have time I'mma go benchmark this idea, but curious to learn more about that stuff. Thank you!
https://redd.it/1r4rdm5
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community
Lua Script
I've used WatchMaker for some time until my Pixel 3 watch was not compatible. With the new and updated version, I find some of the menu noscripts don't transfer to my watch. Can someone help with these issues especially if I need to write my own noscript?
1. Ring corners stay round instead of converting to straight lines on the ends.
2. Rings won't show a gradient for the first two chosen colors
3. Even if I choose the noscript to show the phone battery level or percentage it reverts back to the watch battery.
Thanks!
https://redd.it/1r4mo83
@r_lua
I've used WatchMaker for some time until my Pixel 3 watch was not compatible. With the new and updated version, I find some of the menu noscripts don't transfer to my watch. Can someone help with these issues especially if I need to write my own noscript?
1. Ring corners stay round instead of converting to straight lines on the ends.
2. Rings won't show a gradient for the first two chosen colors
3. Even if I choose the noscript to show the phone battery level or percentage it reverts back to the watch battery.
Thanks!
https://redd.it/1r4mo83
@r_lua
Reddit
From the lua community on Reddit
Explore this post and more from the lua community