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 11/6/2023 12:00AM and 11/7/2023 12:00AM
Avatar
Avatar
Jupstar ✪
that's not how hammer works
He11o, wor1d 11/6/2023 3:55AM
How then can I change the range of the strike?
Avatar
Avatar
Kaffeine
Use sv_banned_versions 170312,170399 to auto kick the bots.
if it only were that easy
5:23AM
It will work for now
Avatar
Avatar
He11o, wor1d
How then can I change the range of the strike?
Jupstar ✪ 11/6/2023 7:59AM
I mean it's like 5 lines above where it tries to find all entities in range
7:59AM
There is a parameter for range
Avatar
https://www.youtube.com/watch?v=EI4geo5KJe8 just found this old vid. For mapping this would be really cool. (edited)
Avatar
chillerdragon BOT 11/6/2023 9:10AM
@TsFreddie: sometimes I see them. But Matrix mobile is the buggiest :D it never works
9:10AM
9:10AM
On irc I usually see it
Avatar
Jupstar ✪ 11/6/2023 9:23AM
Yeah in white design it works worse
Avatar
chillerdragon: when do we get Teeworlds in 2022?
Avatar
chillerdragon BOT 11/6/2023 9:45AM
Not planned
9:46AM
@Teero: maybe 2024 and 2025 but not sure if I ever do such a weird video again
Avatar
Avatar
Teero
https://www.youtube.com/watch?v=EI4geo5KJe8 just found this old vid. For mapping this would be really cool. (edited)
Am I missing something or did you not realise that this has been a feature in DDNet client for a while? Enable "Show Info" to see this mode where you can drag the quad animation points.
Avatar
chillerdragon BOT 11/6/2023 9:52AM
Woah I also did not know that! That’s cool
Avatar
Avatar
Robyt3
Am I missing something or did you not realise that this has been a feature in DDNet client for a while? Enable "Show Info" to see this mode where you can drag the quad animation points.
wait what?!
12:33PM
Since when is ddnet client so amazing?
Avatar
Avatar
Teero
Since when is ddnet client so amazing?
It's a well hidden feature, I only found out about it when I ported the bezier curve support. Though I don't think it makes sense to hide this feature behind the "Show Info" setting.
Avatar
Avatar
Robyt3
It's a well hidden feature, I only found out about it when I ported the bezier curve support. Though I don't think it makes sense to hide this feature behind the "Show Info" setting.
we have to spread this xd
Avatar
Avatar
Robyt3
It's a well hidden feature, I only found out about it when I ported the bezier curve support. Though I don't think it makes sense to hide this feature behind the "Show Info" setting.
i still can find it. xd
1:18PM
this showinfo?
1:19PM
ah this is cool asf
Avatar
cyberFighter 11/6/2023 1:38PM
i dont like that feature
pepeW 1
2:06PM
Passive SSH Key Compromise via Lattices [pdf] (iacr.org)
Avatar
Avatar
Kaffeine
Use sv_banned_versions 170312,170399 to auto kick the bots.
Today the version is 170313 The bot joined an empty server, oh wow, I've never seen that. 2023-11-06 16:57:26 I server: player has entered the game. ClientID=0 addr=57.129.1.215:62354 2023-11-06 16:57:26 I ddnet: cid=0 version=170313 2023-11-06 16:57:26 I chat: *** ♟ | SapphireEyes entered and joined the game 2023-11-06 16:57:34 I chat: 0:-2:SapphireEyes: • The strongest cheat client in the game is already available Fluxus we have everything you want! -> discord.gg/GcBsY fUd9S Oh crap, discord is doing a link preview despite of no http. I added a space to break the link. (edited)
Avatar
Avatar
Kaffeine
Today the version is 170313 The bot joined an empty server, oh wow, I've never seen that. 2023-11-06 16:57:26 I server: player has entered the game. ClientID=0 addr=57.129.1.215:62354 2023-11-06 16:57:26 I ddnet: cid=0 version=170313 2023-11-06 16:57:26 I chat: *** ♟ | SapphireEyes entered and joined the game 2023-11-06 16:57:34 I chat: 0:-2:SapphireEyes: • The strongest cheat client in the game is already available Fluxus we have everything you want! -> discord.gg/GcBsY fUd9S Oh crap, discord is doing a link preview despite of no http. I added a space to break the link. (edited)
Send such stuff in tickets so the attackers dont learn about the fixes that might get applied. (edited)
Avatar
How other mod admins 'll know about it? Only @Ewan expressed some interest and there is no reaction from DDNet. (https://github.com/ddnet/ddnet/issues/7419)
Avatar
Avatar
Kaffeine
How other mod admins 'll know about it? Only @Ewan expressed some interest and there is no reaction from DDNet. (https://github.com/ddnet/ddnet/issues/7419)
If you open a ticket with the reason "other" then admins can take a look and they might forward it to the oder devs and fix it, but sharing all their strategies and informations here will reveal the fix that might be applied.
3:23PM
The attackers might see this and adjust their way of attacking/spamming severs. (edited)
Avatar
It was clear for me, I made a choice. I want to share the info with all admins, including non DDNet and there is no other way to do it right now.
Avatar
Well sharing it publicly also means making it possible for them to work around the fixes, but its your choice. I just wanted to share my opinion. (edited)
Avatar
It is super curious why they have those "problems" in the first place but let's giggle silently and not discuss it.
Avatar
Avatar
chillerdragon
@Teero: maybe 2024 and 2025 but not sure if I ever do such a weird video again
cant wait
Avatar
Avatar
ryuma
Well sharing it publicly also means making it possible for them to work around the fixes, but its your choice. I just wanted to share my opinion. (edited)
As I understand, it is also DDNet position to clearly communicate "you're a spammer, we kick/mute/ban you". From the efficiency point of view, shadow ban would work much better and save admins/moderators resources.
Avatar
Avatar
Kaffeine
How other mod admins 'll know about it? Only @Ewan expressed some interest and there is no reaction from DDNet. (https://github.com/ddnet/ddnet/issues/7419)
It would be useful but unfortunately they use very wide IP ranges
4:01PM
Here is a range they are using too many available IPs "57.128.0.0-57.131.255.255"
Avatar
Avatar
Yek-H
It would be useful but unfortunately they use very wide IP ranges
If we'll ban 1 IP per minute, how many time it would take to ban all IPs? At this pace we'd ban 1000 IPs in an half of a day. I think that range bans are not needed, and I think that the attackers have just a dozen IPs, maybe with an option to rotate the IPs manually.
Avatar
Avatar
Kaffeine
If we'll ban 1 IP per minute, how many time it would take to ban all IPs? At this pace we'd ban 1000 IPs in an half of a day. I think that range bans are not needed, and I think that the attackers have just a dozen IPs, maybe with an option to rotate the IPs manually.
Another problem is that they are also using ISP ranges. Many players would be involved without doing anything
4:13PM
https://cleantalk.org/blacklists/as24961 -> Maybe a solution would be to add the IPs flagged as abuse
Spam report for AS24961. Check to see if IP/email addresses which have been reported as spam. IP & Email Abuse Reports. You can check with blacklist IP, Email or Domain.
👍 1
Avatar
Maybe they use bot malware clients and it is the player fault? Anyway, I don't see it as a real issue for the idea: if we'll globally ban spammer IPs (short bans for 48 hours would also work for our purpose) then the spammers 'll run out of IPs even if they have a lot of addresses. Even if they use ISP with dynamic addressing, they won't be able to spam the servers at the rate they spam us right now. How many IPs you seen? I have 16 IPs recorded. Maybe my server is super lucky but it gives me impression of a very limited spammers capability. Maybe they have IPs from wide ranges but how many IPs they have? How many money they do invest, in your opinion? We don't need to make spam impossible, we just need to make it not worths it. (edited)
Avatar
Avatar
Ryozuki
Click to see attachment 🖼️
shes mega based
Avatar
hmm for deving I like linux more. For gaming (games that don't run on linux) I either don't play or I use windows
Avatar
Avatar
Kaffeine
Maybe they use bot malware clients and it is the player fault? Anyway, I don't see it as a real issue for the idea: if we'll globally ban spammer IPs (short bans for 48 hours would also work for our purpose) then the spammers 'll run out of IPs even if they have a lot of addresses. Even if they use ISP with dynamic addressing, they won't be able to spam the servers at the rate they spam us right now. How many IPs you seen? I have 16 IPs recorded. Maybe my server is super lucky but it gives me impression of a very limited spammers capability. Maybe they have IPs from wide ranges but how many IPs they have? How many money they do invest, in your opinion? We don't need to make spam impossible, we just need to make it not worths it. (edited)
I have already seen about 50-60 different IPs (edited)
Avatar
The API of https://ipapi.is/developers.html could be useful (edited)
ipapi.is offers precise IP data via a user-friendly API, encompassing geolocation, ASN data, hosting detection, VPN detection, and proxy detection.
Avatar
Avatar
Yek-H
I have already seen about 50-60 different IPs (edited)
"50-60" is "just a few" in the global scale. If I online it takes me seconds to ban an IP. Together we can ban 60 IPs in an hour, it is not a problem at all. It does not help individual servers because even if we ban all IPs "today", the spammers still succeed on many other servers for the rest of the day, and (relatively speaking) on the next day the spammers can come with new IPs and spend another thousands messages. It would be a game changer if the spammers could send just a few messages per (their) IP. (edited)
Avatar
Avatar
Kaffeine
"50-60" is "just a few" in the global scale. If I online it takes me seconds to ban an IP. Together we can ban 60 IPs in an hour, it is not a problem at all. It does not help individual servers because even if we ban all IPs "today", the spammers still succeed on many other servers for the rest of the day, and (relatively speaking) on the next day the spammers can come with new IPs and spend another thousands messages. It would be a game changer if the spammers could send just a few messages per (their) IP. (edited)
thonk It could work
Avatar
Avatar
itube
cant wait
how are you alive wtf?
Avatar
Avatar
Jupstar ✪
I mean it's like 5 lines above where it tries to find all entities in range
He11o, wor1d 11/6/2023 6:50PM
can you send me the line I need?
Avatar
Avatar
He11o, wor1d
can you send me the line I need?
Jupstar ✪ 11/6/2023 6:51PM
int Num = GameServer()->m_World.FindEntities(ProjStartPos, GetProximityRadius() * 0.5f, apEnts, MAX_CLIENTS, CGameWorld::ENTTYPE_CHARACTER);
Avatar
Avatar
Jupstar ✪
int Num = GameServer()->m_World.FindEntities(ProjStartPos, GetProximityRadius() * 0.5f, apEnts, MAX_CLIENTS, CGameWorld::ENTTYPE_CHARACTER);
He11o, wor1d 11/6/2023 6:52PM
ok, what should I do to change the length of the shot? (edited)
Avatar
Jupstar ✪ 11/6/2023 6:52PM
shot?
6:52PM
didnt we talk about hammer
Avatar
He11o, wor1d 11/6/2023 6:53PM
I need to change the length of the hammer blow so that the player leans back further after hitting it (edited)
Avatar
Jupstar ✪ 11/6/2023 6:53PM
u want to make the hammer stronger?
Avatar
He11o, wor1d 11/6/2023 6:54PM
yes
Avatar
Jupstar ✪ BOT 11/6/2023 6:56PM
lmao discord down for me
6:56PM
the first parameter of TakeDamage says Force
6:56PM
that's probably what u want
6:57PM
e.g. after * Strength you could probably do * 5.0f
Replying to @He11o, wor1d ``` […]
6:57PM
then it would be like 5 times stronger xd
6:57PM
FNG mod for teeworlds, that advances the original FNG idea by golden spikes and other features - Jupeyy/teeworlds-fng2-mod
Avatar
Avatar
Jupstar ✪
the first parameter of TakeDamage says Force
He11o, wor1d 11/6/2023 7:07PM
pTarget->TakeDamage((vec2(0.f, -1.0f) + Temp) * Strength, g_pData->m_Weapons.m_Hammer.m_pBase->m_Damage, m_pPlayer->GetCID(), m_Core.m_ActiveWeapon); vec(0.f, -1.0f) - this is Force?
Avatar
Jupstar ✪ 11/6/2023 7:08PM
uhm, have u ever coded before? xd
7:08PM
the whole expression is one argument
7:09PM
it's the argument passed to the corresponding parameter Force
Avatar
Avatar
Jupstar ✪
uhm, have u ever coded before? xd
He11o, wor1d 11/6/2023 7:09PM
yes, i am beginner in c++
Avatar
Jupstar ✪ 11/6/2023 7:09PM
ok
Avatar
He11o, wor1d 11/6/2023 7:09PM
I'm confused
Avatar
Jupstar ✪ 11/6/2023 7:09PM
it's the whole argument until the ,
7:09PM
(vec2(0.f, -1.0f) + Temp) * Strength
Avatar
He11o, wor1d 11/6/2023 7:09PM
okey
7:10PM
What needs to be changed to make the player fly further when hit?
Avatar
Avatar
Jupstar ✪
e.g. after * Strength you could probably do * 5.0f
Jupstar ✪ 11/6/2023 7:10PM
^
7:10PM
I'd highly recommend to do some cpp tutorials first tho
Avatar
You don't need to change code just for stronger hammer though, you can use tune hammer_strength 5
Avatar
Avatar
Robyt3
You don't need to change code just for stronger hammer though, you can use tune hammer_strength 5
He11o, wor1d 11/6/2023 7:18PM
this parameter changes only in Y, but I need it in X
Avatar
Are you familar with vectors from mathematics? vec2 is a vector in 2D, for example vec2(0.f, -1.0f) points straight up, as the X component is zero (edited)
7:22PM
In mathematics, physics, and engineering, a Euclidean vector or simply a vector (sometimes called a geometric vector or spatial vector) is a geometric object that has magnitude (or length) and direction. Vectors can be added to other vectors according to vector algebra. A Euclidean vector is frequently represented by a directed line segment, or ...
Avatar
Avatar
Robyt3
Are you familar with vectors from mathematics? vec2 is a vector in 2D, for example vec2(0.f, -1.0f) points straight up, as the X component is zero (edited)
He11o, wor1d 11/6/2023 7:24PM
I’m not familiar with vectors from mathematics, I’m in my 1st year of college) I haven’t done this yet. If it’s not difficult, can you tell me how to do it the way I need?
Avatar
Change the 0.f to something else, like 2.0f or -2.0f and see what it changes
7:25PM
It should cause the hammer strength to have more effect in the X direction (edited)
Avatar
Avatar
Robyt3
It should cause the hammer strength to have more effect in the X direction (edited)
He11o, wor1d 11/6/2023 7:28PM
it changes, for some reason only in one direction
Avatar
Which one? It currently applies most of the force upwards because the vector vec2(0.f, -1.0f) points up. If you change it to vec2(2.f, -1.0f) then it should apply twice as much force in X direction as in Y direction
Avatar
Avatar
Robyt3
Which one? It currently applies most of the force upwards because the vector vec2(0.f, -1.0f) points up. If you change it to vec2(2.f, -1.0f) then it should apply twice as much force in X direction as in Y direction
He11o, wor1d 11/6/2023 7:34PM
if I set the value to more than 2, then it only goes one way, that is, if I stand to the right of the player and hit him, then he hits me, and if I stand to the left of the player and hit, then he reclines normally
Avatar
Looks like this will always apply the force to the right. You need to consider the relative X position of the tees, i.e. Dir.x. You should probably learn some C++ to understand this. Or copy the function into ChatGPT and tell it what you want to have changed.
Avatar
GitHub BOT 11/6/2023 7:41PM
It now supports rendering skins that are bigger than 256x128. tee.js is now also properly formatted. Closes #113 Before !image After !image
Avatar
Avatar
Robyt3
Looks like this will always apply the force to the right. You need to consider the relative X position of the tees, i.e. Dir.x. You should probably learn some C++ to understand this. Or copy the function into ChatGPT and tell it what you want to have changed.
He11o, wor1d 11/6/2023 7:51PM
I asked ChatGPT to do this, but it didn’t work(
Avatar
What are you trying to do?
Avatar
Avatar
Voxel
What are you trying to do?
He11o, wor1d 11/6/2023 8:06PM
change kick height in X
Avatar
Yo
8:51PM
possible somehow to fix it?
8:52PM
even with #include <game/client/gameclient.h> is wont work (edited)
Avatar
m_Afk is gameclient variable?
Avatar
tru
Avatar
you need to do GameClient()->m_Afk
8:58PM
it's a member
Avatar
IDisocrd don't have GameClient field or getter
8:59PM
How I remember
Avatar
CDiscord is a component
Avatar
This just interface for discord RPC and all data transfering with arguments
Avatar
so how can i include this to code?
Avatar
it's not a component so you will have to request the client interface
Avatar
hell
9:01PM
way harder than i thoughtj
Avatar
Avatar
Ewan
you need to do GameClient()->m_Afk
wait it's not a gameclient member lol
Avatar
I would recommend adding another argument to the SetGameInfo function, that would contain the m_Afk bool. Just remember you also have to check whenever the m_Afk bool has changed, and then call the function again.
notDraggory 1
Avatar
just need smth like this IGameClient *pGameClient = Kernel()->RequestInterface<IGameClient>(); if(pGameClient) { ... pGameClient->m_aClients[pGameClient->m_Snap.m_LocalClientID]->m_Afk; ... } (edited)
9:09PM
i hate writing code in discord
Avatar
Avatar
Ewan
just need smth like this IGameClient *pGameClient = Kernel()->RequestInterface<IGameClient>(); if(pGameClient) { ... pGameClient->m_aClients[pGameClient->m_Snap.m_LocalClientID]->m_Afk; ... } (edited)
i would recommend just requesting this interface the first time you need it & storing it in a member
Avatar
And remember that m_LocalClientID can be negative in the demo player, so you also want to check for m_LocalClientID >= 0 or you might get a crash in the demo player
💀 1
Avatar
may want to disable this behavior entirely in the demo player
Avatar
Looks like CDiscord::SetGameInfo is only called when online so it should be safe (edited)
Avatar
Avatar
Ewan
just need smth like this IGameClient *pGameClient = Kernel()->RequestInterface<IGameClient>(); if(pGameClient) { ... pGameClient->m_aClients[pGameClient->m_Snap.m_LocalClientID]->m_Afk; ... } (edited)
owo 2
11:26PM
Sticker
11:28PM
9558e83 Add support for high-res skins with tee.js - furo321 3690164 Merge pull request #273 from furo321/teejs-high-res - def-
Avatar
that's how you use the variable
justatest 1
11:42PM
your actual code would probably look something like this // in CDiscord IGameClient *m_pGameClient = nullptr; ... // in SetGameInfo if(!m_pGameClient) m_pGameClient = Kernel()->RequestInterface<IGameClient>(); m_pActivityManager->update_activity(m_pActivityManager, &Activity, 0, 0); if(m_pGameClient && m_pGameClient->m_Snap.m_LocalClientID >= 0 && m_pGameClient->m_aClients[pGameClient->m_Snap.m_LocalClientID]->m_Afk) { str_copy(Activity.assets.small_image, "idle", sizeof(Activity.assets.small_image)); str_copy(Activity.assets.small_text, "Idling", sizeof(Activity.assets.small_text)); } else { str_copy(Activity.assets.small_image, "greenline", sizeof(Activity.assets.small_image)); str_copy(Activity.assets.small_text, "In Game", sizeof(Activity.assets.small_text)); } (edited)
11:46PM
sorry chiller
Avatar
why with dots? xD
Avatar
because they go in different places
Avatar
fair enough
11:47PM
ok why are we using pGameClient here? (edited)
Avatar
because your player's afk value is stored in a CClientInfo object stored in an array in the game client
Avatar
Alr then, 2nd question is wtheck this wont workhttps://i.imgur.com/ERiJqWT.png
11:50PM
updated
Avatar
i mean, is might looks dumb from my side
11:51PM
Avatar
missed another
11:52PM
but it should be fairly obvious
11:52PM
m_pGameClient instead of pGameClient
11:52PM
since it's a member
Avatar
now m_Snap No member named 'm_Snap' in 'IGameClient'
11:54PM
hell, the most hard staff i made for today, was cracking discord
Avatar
i have no idea why it isn't in the IGameClient interface
11:55PM
this is against all OOP wisdom but i don't think there's any other class inheriting from IGameClient so you should just be able to cast your IGameClient pointer into a CGameClient pointer
11:56PM
so in CDiscord class def do this instead CGameClient *m_pGameClient = nullptr; then in SetGameInfo, do this instead m_pGameClient = static_cast<CGameClient *>(Kernel()->RequestInterface<IGameClient>());
Avatar
now i can say that discord made me braindamaged
Exported 147 message(s)
Timezone: UTC+0