Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.org/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories — IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2024-08-22 00:00 and 2024-08-23 00:00
Avatar
Avatar
Index
well I'm working on a feature to help improve movement handling in tricky situations, especially when players are near hazardous tiles like freeze tiles. The goal is to better understand how to manage player positioning and avoid common pitfalls that can occur when players get too close to these tiles. It's more of a learning exercise to enhance my understanding of the game's collision system and player mechanics.
Index: I give u this knowledge with the hope u use it for good, and not for making the 1000th gores bot in ddnet source dir run grep -r "TILE_FREEZE" . (edited)
00:27
I'm on my phone so I can't do backticks, but that dot is important (not a period)
Avatar
ty
Avatar
Index: nice try itube (known botter) (edited)
00:41
kek
Avatar
Botter's gonna bot
Avatar
tbh if he cannot figure out where the header file is then I think he is a long way from making a gores bot so I am not worried
00:46
I dislike botters & fake ranks as much as the next guy but I'm not going to withhold information based on their intent. it's oddly hypocritical that this happens at all considering DDNet is an open source project
Avatar
@Tater give me your TAS algorithm, I promise not to cheat, It's more of a learning exercise to enhance my understanding of the game's collision system and player mechanics.
00:48
I could describe it in detail and I don't think you in particular would put in the effort to implement it but I think someone watching this chat might
Avatar
can't it be that?
Avatar
send tas algorithm and i send back better tas algorithm. deal? yes? thank you, awaiting response!
Avatar
Avatar
louis
send tas algorithm and i send back better tas algorithm. deal? yes? thank you, awaiting response!
Avatar
tbh I think that most of the people coming in here to ask beginner questions that are sometimes obviously about making a bot are not really a threat, since they will need to figure out like 100 more things on their own. Which if they could do they wouldn't have asked the beginner question in the first place.
00:52
there are some things that shouldn't be answered but obviously I'm not going to list those
Avatar
how do you handle optimizing frame perfect actions while ensuring minimal input lag and maintaining consistent performance?
Avatar
this is a significantly more sus question
Avatar
Index_ BOT 2024-08-22 00:53
just some beginner questions..
Avatar
the answer is in the freeze header file, I promise
00:53
it's spelled out there
00:53
in high detail
Avatar
To optimize frame-perfect actions with minimal input lag, implement high-frequency input sampling with precise timestamps to align inputs with game states accurately. Use predictive algorithms to anticipate future states, and maintain a short input buffer for timely execution. Synchronize input handling with frame rendering for consistent performance.
Avatar
thank you
00:54
Index: ghat gpt is doing u more harm than good
Avatar
Avatar
louis
To optimize frame-perfect actions with minimal input lag, implement high-frequency input sampling with precise timestamps to align inputs with game states accurately. Use predictive algorithms to anticipate future states, and maintain a short input buffer for timely execution. Synchronize input handling with frame rendering for consistent performance.
completely correct, thank you for that insight
Avatar
Index_: just apply what i wrote to the ddnet codebase and you should be set
Avatar
Index_ BOT 2024-08-22 00:55
Got it, thanks! How do you handle the trade-off between high-frequency input sampling and potential performance overhead, especially in terms of CPU usage and memory constraints?
Avatar
you can do input sampling on the gpu for high performance
🤣 1
Avatar
Avatar
Index_
Got it, thanks! How do you handle the trade-off between high-frequency input sampling and potential performance overhead, especially in terms of CPU usage and memory constraints?
ah, the classic conundrum! When faced with the trade-off between high-frequency input sampling and performance overhead, I always recommend starting with a cup of coffee brewed from beans that have been serenaded by a choir of alpacas under a full moon. Then, set your computer's clock to run backward at exactly 3.14 times the speed of light. This will confuse the CPU into thinking it’s on vacation in the Bahamas, drastically reducing its workload. As for memory constraints, just bribe the RAM with a few extra gigabytes of imagination and tell it to "think outside the byte." and voila problem solved
kek 2
Avatar
Is there a name for a minor edge case that requires changing the whole codebase?
Avatar
pull request closed
Avatar
chillerdragon BOT 2024-08-22 06:01
lmao trols
Avatar
Hi guys. I found this amazing game last night and wanted to contribute. Does anyone know where in the source code is input handled? I want to add a small feature to enhance both my understanding of the codebase and the user experience. There is this hazardous tile called "freeze" (as I'm sure you know). I would like to manipulate the input in a certain way to make it more streamlined to avoid these kinds of hazardous tiles
Avatar
Avatar
Learath2
Hi guys. I found this amazing game last night and wanted to contribute. Does anyone know where in the source code is input handled? I want to add a small feature to enhance both my understanding of the codebase and the user experience. There is this hazardous tile called "freeze" (as I'm sure you know). I would like to manipulate the input in a certain way to make it more streamlined to avoid these kinds of hazardous tiles
MilkeeyCat 2024-08-22 06:19
Have you ever written tree-sitter parser? :DD
Avatar
Avatar
MilkeeyCat
Have you ever written tree-sitter parser? :DD
No, only ever modified one
Avatar
Avatar
Faulty
@heinrich5991 is buffer size for server info already increased on master servers? Registered succeed with 2024-08-21 17:45:22 I register: Server info length: 15964 but 2024-08-21 17:46:45 I register: Server info length: 16888 024-08-21 17:46:45 E register/6/ipv4: error response from master: 413: The request payload is too large So ~108 players maximum now until master registration failed
heinrich5991 2024-08-22 06:27
no, maximum size is currently 16 KiB
Avatar
Lmao Itube evolved from being a fake dev to a beginner trying to make a bot KEKSad
Avatar
Avatar
Learath2
Hi guys. I found this amazing game last night and wanted to contribute. Does anyone know where in the source code is input handled? I want to add a small feature to enhance both my understanding of the codebase and the user experience. There is this hazardous tile called "freeze" (as I'm sure you know). I would like to manipulate the input in a certain way to make it more streamlined to avoid these kinds of hazardous tiles
If (about_to_hit_freeze == true) { dont = true};
06:41
You're Welcome!
Avatar
Avatar
ReiTW
Lmao Itube evolved from being a fake dev to a beginner trying to make a bot KEKSad
pepeW
Avatar
i remember when i wrote all this and then never finished this feature
07:27
feelsbadman
07:28
it was like i3bar for ddnet
Avatar
Pro coder
Avatar
Avatar
Ewan
it was like i3bar for ddnet
monkaStop Finish!!!
Avatar
Avatar
Ewan
i remember when i wrote all this and then never finished this feature
Idk what that is but it looks cool 😄
07:51
Ah a bar
Avatar
MilkeeyCat 2024-08-22 07:54
package main type Foo[T any] struct { Key T } func IntFunc(arg Foo[int]) { AnyFunc(arg) } func AnyFunc(args Foo[any]) { //Magic stuff } func main() { IntFunc(Foo[int]{Key: 2}) } Is there a way to make it work? thonk
Avatar
In anyfunc, you want T Not any
08:01
eg func AnyFunc(args Foo[T]) (edited)
08:05
Why are you writing Go @MilkeeyCat gigachad
Avatar
MilkeeyCat 2024-08-22 08:05
I write in golang at work (edited)
Avatar
Avatar
MilkeeyCat
I write in golang at work (edited)
poggers2
Avatar
Avatar
meloƞ
eg func AnyFunc(args Foo[T]) (edited)
Did that atleast answer your question Milky ? harold i'm still learning
Avatar
Avatar
MilkeeyCat
package main type Foo[T any] struct { Key T } func IntFunc(arg Foo[int]) { AnyFunc(arg) } func AnyFunc(args Foo[any]) { //Magic stuff } func main() { IntFunc(Foo[int]{Key: 2}) } Is there a way to make it work? thonk
I will tell you how to make it work as soon as I understand what you are trying to do 😄
Avatar
MilkeeyCat 2024-08-22 08:09
ye, it juust has to be func AnyFunc[T any](args Foo[T]) {
Avatar
Ah generic
Avatar
You've successfully confused me. What is this?
Avatar
Avatar
Learath2
You've successfully confused me. What is this?
MilkeeyCat 2024-08-22 08:12
nvm, i threw that idea in garbage can 10 mins ago xd
Avatar
Ah I see the issue now, yeah that doesn't work
Avatar
Avatar
Ewan
Click to see attachment 🖼️
Sleep time
Avatar
Avatar
MilkeeyCat
package main type Foo[T any] struct { Key T } func IntFunc(arg Foo[int]) { AnyFunc(arg) } func AnyFunc(args Foo[any]) { //Magic stuff } func main() { IntFunc(Foo[int]{Key: 2}) } Is there a way to make it work? thonk
btw, the answer to "is there a way to make it work" is almost always yes in go. Just do the type checking at runtime with reflect 😄
Avatar
I hate interne outage
08:16
that shit better be faster
Avatar
Avatar
Learath2
btw, the answer to "is there a way to make it work" is almost always yes in go. Just do the type checking at runtime with reflect 😄
MilkeeyCat 2024-08-22 08:16
i don't want to touch reflect anymore justatest
Avatar
Avatar
MilkeeyCat
i don't want to touch reflect anymore justatest
https://github.com/learath2/go-struct2struct use my definitely production quality library for something rn
S2S maps structs to structs using reflection. Contribute to Learath2/go-struct2struct development by creating an account on GitHub.
Avatar
Avatar
Learath2
https://github.com/learath2/go-struct2struct use my definitely production quality library for something rn
MilkeeyCat 2024-08-22 08:22
i have written production quality library for binding parameters from url encoded & form data requests to structs (edited)
Avatar
Avatar
MilkeeyCat
i have written production quality library for binding parameters from url encoded & form data requests to structs (edited)
💪
Avatar
heinrich5991 2024-08-22 08:37
I think our current server browser ordering overemphasizes full servers
08:37
perhaps we could group servers that are roughly the same?
08:38
e.g. group all servers from the same community with the same map and gametype?
08:41
it's not that interesting to me that there are 13 ddnet servers within my ping range that offer multeasymap
08:41
with >40 players each
08:42
perhaps we could even add a "players recently joined this server, maybe join them" selection of servers?
Avatar
@Bamcane your PR is awesome, thx for this poggers p.s pls add m_Volume in next update, it's very useful (edited)
gigachad 3
justatest 4
👍 1
Avatar
Avatar
Matodor
@Bamcane your PR is awesome, thx for this poggers p.s pls add m_Volume in next update, it's very useful (edited)
This is bannable
justatest 6
banhammer 1
Avatar
Avatar
Learath2
This is bannable
try write @еvеryоnе in this chat
Avatar
No thanks
Avatar
only need a normal user account who can't use this command (edited)
Avatar
(btw I did kinda fix the automod rule so you can escape everyone now, but you need to be careful to just escape that and not have anything else in the codeblock)
Avatar
Avatar
Matodor
@Bamcane your PR is awesome, thx for this poggers p.s pls add m_Volume in next update, it's very useful (edited)
unterdev.eth 2024-08-22 09:45
ghyuck
Avatar
Avatar
Learath2
(btw I did kinda fix the automod rule so you can escape everyone now, but you need to be careful to just escape that and not have anything else in the codeblock)
justatest i tried \@еvеryоnе
Avatar
huh, it wasn't timing out heinrich when we tested it
09:49
@everyone
Avatar
GitHub BOT 2024-08-22 09:57
f796309 Fix save/swap with draggers - def- 5210d77 Merge pull request #8781 from def-/pr-fix - def-
Avatar
Avatar
heinrich5991
it's not that interesting to me that there are 13 ddnet servers within my ping range that offer multeasymap
What about a "Quicksearch" option in the starting screen? So you can decide which difficulty and gamemode and automatically join a server. Preferred with a good ping and players on it.(Dunno how much work that would be just an idea)
Avatar
Avatar
Matodor
justatest i tried \@еvеryоnе
Avatar
chillerdragon BOT 2024-08-22 10:18
I don’t want to search I want to browse
Replying to @iTom What about a "Quicksearch" option in the starting screen? So you can dec…
10:18
Grouping sounds fine but I think 128 already will help with that
Avatar
hmm
Avatar
хмм
Avatar
GitHub BOT 2024-08-22 11:27
E.g. on 176.9.114.238:8305 you can hear the hook sound twice. Must probably be a recent change
Avatar
Avatar
Ryozuki
hmm
hmm
Avatar
Jupstar ✪ 2024-08-22 11:38
chillerdragon: can you check if #8782 causes above issue
Avatar
I verified with a official teeworlds client with debug prints that only one sound is being played. I verified that the sounds is played only once for actions triggered by the own tee, by other tees...
Avatar
Avatar
Teero
hmm
Jupstar ✪ 2024-08-22 11:38
hi foo
Avatar
Avatar
Jupstar ✪
hi foo
hot bar
Avatar
GitHub BOT 2024-08-22 11:41
Closed #8785 untested

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/d...
Avatar
ws-client BOT 2024-08-22 11:51
<ChillerDragon> @Jupstar ✪ got the github mobile notification from rossbit xd
Avatar
Jupstar ✪ 2024-08-22 11:53
i see, when i want smth from you. directly ping on github
Avatar
диназаврек 2024-08-22 12:01
how to lower ping?
Avatar
buy better internet
Avatar
Jupstar ✪ 2024-08-22 12:06
buy some server space where our servers are hosted and then build a house inside
Avatar
ws-client BOT 2024-08-22 12:17
<ChillerDragon> yes usually works well @Jupstar ✪ you can do so here for example xd https://github.com/ChillerDragon/github-meta/issues/5 if its not related to any issue
12:18
804a91c Fix sounds being doubled in 0.6 - ChillerDragon 0ba6d99 Merge pull request #8786 from ChillerDragon/pr_fix_doubled_06_sounds - def-
Avatar
Jupstar ✪ 2024-08-22 12:18
good idea. directly ping random ppl too
Avatar
@Jupstar ✪
Avatar
hey, was there any changes regarding ddnet master ?
12:24
master4 ig
12:24
seems like our server can't register anymore
Avatar
@heinrich5991 anything new?
Avatar
Avatar
ReiTW
seems like our server can't register anymore
Jupstar ✪ 2024-08-22 12:28
is your payload too huge?
Avatar
Avatar
Learath2
@Jupstar ✪
Jupstar ✪ 2024-08-22 12:28
hi tha real 2
Avatar
Avatar
Jupstar ✪
is your payload too huge?
no clue, also masterping doesnt work on master1 anymore
12:29
# ./masterping ipv4 https://master1.ddnet.org/ddnet/15/register Error: couldn't receive ping from mastersrv in time Caused by: Resource temporarily unavailable (os error 11)
Avatar
Avatar
ReiTW
seems like our server can't register anymore
Any error?
Avatar
Jupstar ✪ 2024-08-22 12:30
can u ping master1.ddnet.org?
Avatar
Avatar
Learath2
Any error?
nothing more than that
Avatar
Avatar
Jupstar ✪
can u ping master1.ddnet.org?
it's behind cloudflare so
12:30
would work
12:30
yup
Avatar
have no response from master4 sadly
Avatar
Avatar
Jupstar ✪
hi foo
MilkeeyCat 2024-08-22 12:54
wrong santatrollet
Avatar
Avatar
MilkeeyCat
wrong santatrollet
Jupstar ✪ 2024-08-22 12:58
lol
12:58
legend
Avatar
chillerdragon BOT 2024-08-22 13:58
lmao tha real 2 how did I never see that xd
Replying to @Jupstar ✪ hi tha real 2
Avatar
Avatar
ReiTW
hey, was there any changes regarding ddnet master ?
heinrich5991 2024-08-22 15:00
not as far as I know
Avatar
Avatar
ReiTW
# ./masterping ipv4 https://master1.ddnet.org/ddnet/15/register Error: couldn't receive ping from mastersrv in time Caused by: Resource temporarily unavailable (os error 11)
The same thing happened on a few of our servers, hoster claims they weren't blocking. I changed /etc/hosts to another cloudflare ip and it worked
15:04
On Cloudflare side also nothing seemd blocked
Avatar
Avatar
Tater
I spy artifacts :)
not enough iterations 🙃
Avatar
Avatar
heinrich5991
I think our current server browser ordering overemphasizes full servers
i agree
15:07
also is there a way to search for only empty servers?
Avatar
Avatar
deen
The same thing happened on a few of our servers, hoster claims they weren't blocking. I changed /etc/hosts to another cloudflare ip and it worked
heinrich5991 2024-08-22 15:09
I tihnk this is different, this is the UDP packet not getting through, not the HTTPS/TCP stuff
15:15
the problem is that master4 died
15:15
master4.teeworlds.com
15:16
(also known as master.ddnet.org)
15:16
it's the UDP 0.6 masterserver
15:16
I can't fix it right now, but someone™ should
Avatar
AH, it's not the http master that died
Avatar
Avatar
Learath2
AH, it's not the http master that died
Yea I was unclear, our server is vanilla based, But the output shared before is still another problem I need to check (I use masterping aswell)
Avatar
Jupstar ✪ 2024-08-22 15:45
i think we need more voice channels xd
Avatar
we need ingame vc
Avatar
@ReiTW works again?
16:20
What happened is that we have more than 64 KB of a json and our buffer size was too small 😄
16:21
And I never touched this twmaster before so took me a while, I hope I did things correctly
Avatar
@deen apparently it's visible ( @meloƞ confirmed it)
Avatar
( i did indeed )
Avatar
Thank you
16:28
does it even fit?
Avatar
Avatar
zhn
does it even fit?
Jupstar ✪ 2024-08-22 16:31
looks bit cursed xd
16:31
also the video is really pixelated for me
Avatar
i tried to something similar to tdtw one
Avatar
Jupstar ✪ 2024-08-22 16:31
almost cant see it
Avatar
even video
16:31
wait
Avatar
Jupstar ✪ 2024-08-22 16:37
that is pixelalted and 3fps xd
Avatar
worse than yur vid
Avatar
nah i like that feet
Avatar
i don't
Avatar
its 0.15 angle offset
16:37
pretty good lookin
Avatar
Avatar
Jupstar ✪
that is pixelalted and 3fps xd
ok ill render a better one and upload to youtube
16:38
justatest
Avatar
Jupstar ✪ 2024-08-22 16:42
reminds me a bit of rayman 1 stopping animation
troll 2
Avatar
Avatar
Jupstar ✪
reminds me a bit of rayman 1 stopping animation
is there a rayman tw skin
Avatar
Avatar
Jupstar ✪
reminds me a bit of rayman 1 stopping animation
Avatar
Jupstar ✪ 2024-08-22 16:59
does the jittery depend on the velocity of the tee?
16:59
on length of velocity vector
16:59
previously it was dependent only on Vel.y
Avatar
Jupstar ✪ 2024-08-22 17:00
not being used to it it looks cursed for me tho 😄
17:00
like your tee has a mental breakdown
Avatar
ye they're literally scared of their own speed
17:05
im introduced new inter-state variable to know how long tee is being in the air
17:05
looks ugly imo
17:05
im missing some essentials for it to not look weird xd
Avatar
Jupstar ✪ 2024-08-22 17:06
i want to hear wind sound too
17:06
and add some air stripes that make the tee look fast
17:06
then it could by epyc
Avatar
maybe i can introduce some kind of feet position offset that controlled by velocity
17:08
i don't really know how air stripes could be implemented in a sane way
17:08
ping (at)ravie
Avatar
Jupstar ✪ 2024-08-22 17:08
and when he hits his toe, make tee pain sound
kek 1
Avatar
what about skid particles to appear on tee ground touch that's (wow) controlled by velocity too
Avatar
GitHub BOT 2024-08-22 17:56
fix names match in https://wiki.ddnet.org/wiki/Dummy/ru and https://wiki.ddnet.org/wiki/Common_Terminology/ru#Тии

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect exi...
Avatar
GitHub BOT 2024-08-22 18:32
a3c8949 Update russian.txt to match wiki - lolipodass e81a561 Merge pull request #8787 from lolipodass/patch-9 - def-
Avatar
Avatar
Learath2
not enough iterations 🙃
Needs under stepping. You've got enough iterations 🙂
Avatar
GitHub BOT 2024-08-22 20:11
currently the debug view speed indicator x value decreases when you move vertically

Checklist

  • [X] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [X] Changed no physics that affect existing maps
  • [ ] Tested the change wi...
brownbear 1
20:13
Used for example for #8632.

Checklist

  • [X] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.co...
Avatar
Avatar
GitHub
Click to see attachment 🖼️
i think this is how the acrual game works too no? (edited)
20:51
since when u jump your speed is overall higher so your ramp is higher -> horizontal speed decreases
20:51
ramp is so confusing though so i'm not certain
Avatar
Avatar
louis
since when u jump your speed is overall higher so your ramp is higher -> horizontal speed decreases
when you walk on the ground your speed shows as constant and when you jump it temporarily decreases and when you land it is the same as before
Avatar
ye thats cuz of ramp
Avatar
you are right
21:32
i just read the move function properly
21:33
i thought the ramp function was applied a second time in hud.cpp
21:33
but the effective speed is only calculated temporarily in the CCharacterCore::Move() function
Avatar
GitHub BOT 2024-08-22 23:02
4d09332 Add CUIRect::TopLeft and Size convenience functions - Robyt3 0013615 Merge pull request #8789 from Robyt3/Client-UI-Convenience - def-
Exported 213 message(s)
Timezone: UTC+0