Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.tw/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 2020-11-04 00:00:00Z and 2020-11-05 00:00:00Z
Avatar
@Learath2 this was not the claim in the DMCA request. I don't think the the DMCA request was legitimate, but that's not the reason for it
00:38
they claim that youtube-dl circumvents "effective copying protections" on music videos, the "cipher" that only exists on these special copyrighted videos from these companies
Avatar
devs, why my screen become black for a second every time I switch on/out of game even though I use gfx_fullscreen = 0 ? The only thing that helps is using different from my screen resolution but then its very inconvenient to me
10:02
15.1.3 win64-steam amd64
Avatar
[quakenet] ChillerDragon BOT 2020-11-04 10:27:18Z
@BannZay try gfx_resizable 0
Avatar
@Chillbreaker this settings already has 0
Avatar
[quakenet] ChillerDragon BOT 2020-11-04 10:50:55Z
hmm
10:51
try using linux then :p
10:51
did you change anything before this blackscreening happend?
Avatar
@BannZay @louis had similar problems with new intel driver. are you on intel?
Avatar
@deen yes I am on Intel (27.20.100.8681). Have not tried older DDNet versions. For sure it might be drivers issue
Avatar
the same with DDNet 14.4.1
Avatar
@ChillerDragon I have changed nothing. Probably windows updated my Intel drivers automatically
12:36
Intel drivers roll back fixed the problem for me CC: @louis (edited)
Avatar
Looks like @everyone ping was used in #records channel and pinged everyone -- maybe use `` tags to prevent that for the @DDNet bot?
Avatar
I have disabled permissions to ping @ in that channel
Avatar
Simple but effective
Avatar
hey @deen, do you have any idea why show distance from ddnet client doesnt work on my server anymore? it used to work when i implemented it. Now it does only work for my F-Client, not ddnet client. The client is sending the packets but it doesnt arrive at the server, it seems
14:50
did you change anything there?
Avatar
I don't think so
Avatar
weird
Avatar
some younger people might assume that this is how it works now
15:31
but interesting "coincidence"
Avatar
thonk wdym younger
Avatar
It doesn't work like that xd
Avatar
:thonk: wdym younger
@TsFreddie he probs means ppl who dont know what or how matrices works will assume this is how they work i guess
Avatar
thanks for explaining
16:05
helps a lot
Avatar
irony? justatest
Avatar
i appreciate it
Avatar
I think he really does
16:06
Appreciate the comment
Avatar
thonk probably
Avatar
bytes cant fully transmit a message
16:07
monkalaugh
Avatar
c4c943f Frontpage video: Lavender Forest - def-
Avatar
"s_skinname" wouldnt work either

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 if it works standalone, system.c especially
  • [ ] 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/ddnet/...
18:25

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 if it works standalone, system.c especially
  • [ ] 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/ddnet/ddnet/#using-addresssanitizer--u...
18:28

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 if it works standalone, system.c especially
  • [ ] 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/ddnet/ddnet/#using-addresssanitizer--u...
Avatar
fea4481 Fix network x_ check (thanks to Jupeyy) - def- e8ba942 Merge #3243 - bors[bot]
Avatar
I found something silly. You can't have opaque subclasses in C++
19:04
s/subclass/nested class/ I guess is more correct
Avatar
@Learath2 wdym by opaque nested class
Avatar
class A { class B{ int foo; }; }; you can't expose A::B opaquely
Avatar
but for namespaces it works, doesnt it?
Avatar
I found a jank way to do it on ##c++. You can split the definition of A::B out into another file
Avatar
how?
Avatar
file1.h:class A { class B; public: typedef B C; } file2.h:class A::B{ int foo; };
Avatar
uh wat
19:23
you can say class A::B
19:23
TIL
Avatar
TIL aswell
19:24
Anyway, it's a shit solution
Avatar
Today (04/11/2020) a message in #records has been posted which included the username @everyone (See message). I am pretty sure that other types of formatting would be possible (i.e. markdown), which is why the usernames in these messages should be escaped from markdown.
Avatar
@jao ^ aPES4_Steering
Avatar
I was replacing tl/ with stl kinds
19:59
s/kinds/containers/
19:59
Funnily, there is no good way to have a sorted vector
Avatar
responding to whom? or starting a new topic
19:59
ah
Avatar
it's easy to replace in namebans, maybe a little difficult in authmanager
20:00
uuid manager needs some work
Avatar
@Scrumplex i think thats not a discordbot issue, the records thing is a webhook coming from somewhere
20:04
aPES4_Steering
Avatar
Everyone wants accounts, but nobody knows how to implement them correctly so nobody loses their ranks and does not get annoyed by registering. I know how, here is a guide for you: Read it until the end please, there are a lot of things I should mention but my English is pretty bad, so I did not manage to formulate it in the right order. Let's first mention three types of "account": 1. Steam. Account, that uses SteamAPI for authentication, can only be used when running game through stea...
justatest 2
Avatar
starts with "Everyone wants accounts"
20:09
LowIqLaugh
Avatar
literally the only problem is people not wanting accounts
20:09
This guy really has a superiority complex
Avatar
big one
Avatar
he should try to get US president
20:11
@Learath2 the best is that he things we dont know how to implement a account system
20:11
thats why he wrote a big wall of text
Avatar
only way i see accounts is in ddnet 2
Avatar
didnt he leave the server
20:12
yes when is hookrace coming out justatest
Avatar
@plsplsplslol if u look at #join-leave he joins and leaves like everyday
20:12
probably to check if someone misses him
Avatar
lol
Avatar
actually would creating ddnet 2 be possible. that'd be really cool
Avatar
hes in server now
Avatar
i vote for the acount system that deen said. Any nickname, but an unique username(ofc)
Avatar
i vote for no account system, i like the simplicity there is right now
Avatar
well ofc, accounts optional too
Avatar
i vote ddnet 2 and have accounts there
Avatar
when u finished all novices and lot of mods and ddmax most ppl cant fake finish harder maps so its not a real problem
Avatar
ddnet 3d
20:14
DDDNet
20:15
😄
Avatar
ddnet 2.0 made with rust a parallel ECS implementation and vulkan
Avatar
u dont even know what it means
Avatar
3DNet
Avatar
rust = no
Avatar
rust = yes
Avatar
no
Avatar
we wont need to ubsan
20:15
and asan
Avatar
lets call it louisnet
Avatar
someone deleted
20:16
moderators are here
Avatar
nouisnet
Avatar
hookrace
Avatar
ddnet hfy already make that
Avatar
lets do this, if biden wins we dont add acount system ,if trump does we add it
Avatar
lets call it teeworlds 2.0
Avatar
twoworlds
Avatar
teesworlds.com
Avatar
Дядя Женя 2020-11-04 20:19:37Z
I'm just curious why you didn't make an account system yet with all cool features it can provide if you know how to do it without breaking current system?
Avatar
bcs everyone is too lazy
20:20
they just dont say it xd
Avatar
how do you do it without breaking the current system
Avatar
optional accounts
20:22
accounts with nicknames
20:22
only login name is unique
Avatar
Дядя Женя 2020-11-04 20:26:16Z
@plsplsplslol so read the text and you will know
Avatar
I guess he atleast made it about the implementation in the community sense
20:35
@Deleted User It's not politically acceptable. I made several account systems
Avatar
@Learath2 sounds good, shouldn't we just build upon the work that already has been done?
Avatar
starts with "Everyone wants accounts"
@Ryozuki leí eso y lo cerre
Avatar
@Deleted User none of them are good bases for future work sadly
21:34
One of them is completely based on asymmetric crypto, no way to get it user friendly
21:35
Another I implemented all the crypto myself using primitives from libsodium. No way to get that merged
21:35
The last one is just a naive username password implementation. I don't even know if I have it on this computer
Avatar
As discovered by ASAN: ``` /home/teeworlds/src/master/src/game/server/gamecontroller.cpp:142:3: runtime error: index 65 out of bounds for type 'vec2 [64]' #0 0x5de082 in IGameController::OnEntity(int, vector2_base, int, int, int) /home/teeworlds/src/master/src/game/server/gamecontroller.cpp:142:3 #1 0x5c9f43 in CGameContext::OnInit() /home/teeworlds/src/master/src/game/server/gamecontext.cpp:3291:20 #2 0x4ae3aa in CServer::Run() /home/teeworlds/src/master/src/engine/server/...
22:07
Pipou published quite good trailer of his new map with special gameskin, skins and emoticons (https://youtu.be/MV58dmt8QGo). That news pushed me on good idea about allowing map to force each N ID player's skin to another skin from skin names array. Also it would be pretty good to allow map to force gameskins, emoticons, maybe, console checker... I don't think this idea is new, maybe, someone said about it before.
22:10
How did this not blow up all day long for years?! Found by UBSAN: /home/teeworlds/src/master/src/game/server/entities/dragger.cpp:32:29: runtime error: member call on address 0x0000013319b8 which does not point to an object of type 'CCharacter' 0x0000013319b8: note: object has invalid vptr 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^~~~~~~ invalid vptr ...
Avatar
why don't ddnet use some macros for safe pointer's function call?
Avatar
what do you mean?
Avatar
there are many codeblocks like if(pointer) pointer->dosomething();
22:20
#define prefix_safeCall(defaultValue, objectPointer, methodWithArguments)\ [&](auto&& ptr) -> decltype(auto)\ {\ return ptr ? (ptr->methodWithArguments) : (defaultValue);\ }\ (objectPointer) #define prefix_safeCallVoid(objectPointer, methodWithArguments)\ [&](auto&& ptr)\ {\ if(ptr)\ (ptr->methodWithArguments); \ }\ (objectPointer) cpp14
22:21
В этой статье я хочу сделать две вещи: рассказать, почему макросы — зло и как с этим бороться, а так же продемонстрировать пару используемых мной макросов C++, которые упрощают работу с кодом и...
22:23
its also possible to do macro with params in/out/without
Avatar
@gerdoe i see. I prefer the explicit over the macro. Also, often you need to do other things too inside the if
Avatar
but its quite often in tee code...
22:24
also we are getting such segfaults on pointers
Avatar
I can't read the article, but it's using too many #defines I think
22:24
Well, you can't replace all calls with safe one anyway for performance reasons
Avatar
also, it's not always correct to not call a function when a ptr is null
22:24
it trades a segfault for a logic bug
Avatar
title is "dirty tricks with cpp macros"
22:25
yeah, i thought about performance, that why i asked for opinion
Avatar
I'd call the macro "conditional_call" if I wanted to use it
22:26
safe_call sounds like you add some safety by using it
22:26
which is not the case IMO
Avatar
Ideally we should use references more instead of pointers
Avatar
whole code is using pointers, no way
Avatar
I don't think we have a lot of problems with null pointers (which is the problem that references solve)
Avatar
yeah, but I mean instead of the safe_call macro
Avatar
someone gets it while changing the base code
22:28
not often, but not rare thing
Avatar
and we had our fair share of nullpointer crashes
22:28
oh, and to satisfy the name safe_call it should throw an exception if it's null
Avatar
it can also spam in console about null-pointer reference for debugging
Avatar
and then you need exception handling
Avatar
have a recent one so we can check whether it would have been solved by references?
Avatar
console is too easy to ignore
22:29
no recent ones afaik
Avatar
hm, actually, exception is best solution
Avatar
(I kinda disagree on using more references, especially for out parameters. they hide data flow from a programmer reading the code)
22:32
Yes, references are a bit tricky because they behave like values, but still the best way in C++ I think
22:32
or rather can get used like values
Avatar
it doesn't look like refernces would have helped in either of these three cases
Avatar
All of those can actually be 0, so yeah, have to check them
Avatar
As posted in ddnet/ddnet-discordbot#15 the webhook responsible for the #records channel on Discord does not escape sequences like @everyone. I would suggest to also escape the @ symbol. For source of the bug see line 31 in file servers/scripts/discord-ranks.py
Avatar
@Scrumplex i think thats not a discordbot issue, the records thing is a webhook coming from somewhere
@Ryozuki but now I found the right repo :D
Avatar
u can make a pr with the fix
22:42
:D
Avatar
I can do it tomorrow morning (if no one else is faster :D) (edited)
Avatar
i think deen alr fixed?
22:43
I have disabled permissions to ping @ in that channel
22:43
idk he said that earlier
Avatar
Well that's kinda a fix :D
22:44
But better to just fix it at the source I think
Avatar
i guess you could ping other people tho
Avatar
gonna tryhard some map just to ping you lol
Avatar
idk why but some mappres in the editor i cant use them. Can someone explain me why? 😂
Avatar
The width or the height of the image is not divisible by 16. This is required for images used in tile layers.
22:52
i.e. its not 1024x1024 px
22:52
it has to be 16px multiple on each side
Avatar
yeh but others can use it hm
Avatar
then u have a good client
22:54
and others dont
Avatar
send it to me @QuiX
22:57
or
22:57
maaybe u downloaded it incorrectly from the forums
Avatar
@louis its 1024x1024 (edited)
Avatar
@Cøke then they downloaded wrong
Exported 202 message(s)