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-10-11 00:00:00Z and 2020-10-12 00:00:00Z
Avatar
04b840f Consider as not-afk on emoticon, chat, vote, - def- a68fca6 Merge #3036 - bors[bot]
Avatar
d1d9530 Update winter_main.rules by mind - def- 27c047a Merge #3007 - bors[bot]
Avatar
Дядя Женя 2020-10-11 03:58:25Z
louis said on youtube that some servers such as KoG fixed weak hooks and disabled them. Is it works normal? If so, will ever ddnet fix it? (edited)
Avatar
unlikely that ddnet will ever fix them
Avatar
Дядя Женя 2020-10-11 04:05:05Z
why
04:07
if other's solutions are fine, then I can't see any reason of not doing that. Before I thought that weaks are impossible to fix because entire game physics will act differently when 2 tees hooking each other the same time
04:07
If it's not the case, why then
04:08
there are only few weak-only-possible maps/parts
Avatar
simply put, because we don't know in which maps weak/strong is required
Avatar
Дядя Женя 2020-10-11 04:09:34Z
which could be deleted or reworked, not a big deal for such a massive bug fix
04:10
simply put, because we don't know in which maps weak/strong is required
@heinrich5991 everything except 2-3 maps is strong possible
Avatar
I see no clear path to check the ~1900 maps for weak required parts
Avatar
Дядя Женя 2020-10-11 04:11:28Z
Player's reports?
Avatar
that would work if they knew that it's due to missing weak hook
Avatar
Дядя Женя 2020-10-11 04:12:30Z
I guarantee there is only one or zero novice-moderate map requiring weak
Avatar
next problem: how to fix weak/strong difference. we want to give everyone strong. it's not really easy to describe how the fix would look like
Avatar
Дядя Женя 2020-10-11 04:12:53Z
Can't remember if it was moderate or DDMax
Avatar
do you know where weak/strong comes from?
Avatar
Дядя Женя 2020-10-11 04:13:20Z
what do you mean exactly?
Avatar
well, it's not just like a simple bug, it's an architectural problem
04:14
it comes from the fact that the tees are processed one after another
04:14
but in the end, you have to process them in some order
04:14
so what do you do?
Avatar
Дядя Женя 2020-10-11 04:14:33Z
Yes, that's why I wasn't even talking about that
04:15
Before now, 'cause right now I heats from louis that some servers, including KoG fixed it
Avatar
I think they made hook symmetrical for others
04:16
there are other consequences of weak/strong, e.g. tee collision
Avatar
Дядя Женя 2020-10-11 04:16:37Z
it comes from the fact that the tees are processed one after another
@heinrich5991 that shouldn't cause such problem if math is calculated the right way I guess. Anyway I don't know exactly what is causing the weak hook bug, so can't tell for sure
04:17
Well... Why btw
04:17
So you spawn last, code processing your physics last
04:17
You hook someone
Avatar
U would need a second core tick
Avatar
Дядя Женя 2020-10-11 04:18:20Z
Why is you hook weaker then others at this point? 0_o (edited)
Avatar
And fix code with tile collision
Avatar
cause friction for you is applied before/after the hook velocity is applied
Avatar
Дядя Женя 2020-10-11 04:20:26Z
Yeah, so it's calling methods in a wrong order
04:21
Seems like "processing tee" includes calculations for his physics and physics of someone he's hooking
Avatar
https://github.com/Jupeyy/ddnet/tree/weak_fix_correctly I think this breaks stuff like stoppers tho
DDraceNetwork, a mod of Teeworlds. Contribute to Jupeyy/ddnet development by creating an account on GitHub.
Avatar
does that do something about differences in tee collision @Deleted User?
Avatar
Is tee collision in the velocity code or move code
04:26
Well would need to look but I guess that changes collision too
Avatar
pls no remove weak i want to reverse speedfly
Avatar
e9ba1ff A Linear, M Equity [Hard] - ddnet-maps
Avatar
The only chance would be to add a server command and alter all current maps. Bcs too hard to say when weak strong is good or worse
Avatar
We had multiple long conversations about it, the most likely change would be to make a server command similar to /spec that allows you to swap between the two. It would make most parties happy, but it would make most, if not all top5 times obsolete.
Avatar
In my mod I have a toggle for weak hook as config var
Avatar
[quakenet] heinrich5991 BOT 2020-10-11 05:44:06Z
ChillerDragon: ChillerDragonTL: I want your downloadedmaps folder :) I heard you play some 0.7 ^^
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 07:56:19Z
@heinrich5991 sadly after my active 0.7 time my harddrive died on me. But it was just standard maps mostly and gores anways. The gores maps are mostly resaves of kog maps and would probably pollute your db but can be found here if i did not sent it already to u https://github.com/trafilaw/Maps
Contribute to trafilaw/Maps development by creating an account on GitHub.
07:57
you can also try contacting @Dezarion he is somehow in half charge of the new gores ZeroSeven servers they also have selfmade maps
08:14
Avatar
someone with linux can check if website button on the home screen opens instant, when i press it 2-3 times it completly destroys my steam xd
08:18
directory buttons work fine until i once opened a http link
08:19
(might be some check by steam or just the steam internal webrenderer dieing)
Avatar
@Deleted User oh, you're right...
08:23
I never tried in steam client
Avatar
but i think thats a linux only steam bug
Avatar
it starts hanging, takes a few seconds and at some point opens in my normal browser
08:23
hopefully
Avatar
yeah
08:23
and my steam wasnt usable afterwards
08:24
ddnet is a zombie process and nothing works xD
Avatar
but luckely not on windows 😄
Avatar
How can such simple things fail? 😦
Avatar
well i have some rendering bugs in steam here and there
08:25
maybe its just crashing something internally
Avatar
add "game.png database" like "Skin Database" (edited)
Avatar
generally a nice idea, but i doubt we'd make it with a downloader
08:29
so just a link to the website
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:40:00Z
anyone here ever tried to improve shell history? Besides the classical it deletes the item you want thing I never find stuff that is a bit older probably due to it being done it a different session or idk. History is useless other than pressinf up arrow once mostly.
Avatar
Just give link to https://github.com/TeeworldsDB/gameskins & then maybe players would spam ChillerDragon with their own ones (edited)
Contribute to TeeworldsDB/gameskins development by creating an account on GitHub.
Avatar
github has no png preview
08:46
else i'd have no problem
Avatar
Was there always a white screen on startup, or is it due to the background theme update? It's killer on the eyes
Avatar
then what am I looking at
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:47:16Z
it jas one
Avatar
@Skeith can u show screenshot
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:47:20Z
even svg
08:47
and pdf
Avatar
yeah when clickingt xD
08:47
i mean when browsing ofc
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:47:38Z
yea its not instagram
Avatar
I see other problem with that DB though
Avatar
It's just a pure white screen when I launch the game each time, before it says loading ddnet client
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:47:58Z
what r u even talking about
Avatar
@Skeith u on steam or updater?
Avatar
steam version, but not launched via steam
Avatar
sounds really weird
08:49
can u start in steam once, just to check
Avatar
I have it too
Avatar
Not really useful to printscreen it, as you can see lol
Avatar
oh
Avatar
right before main menu background kicks in
Avatar
Yea, I launched via steam just now, same thing
Avatar
ah just very short?
Avatar
yea, right after that loading bar with actual bg shows up
Avatar
Yea, for like a second or less, it's pure white, so if it can be fixed, would be great
Avatar
just make it pure black to don't kill eyes at nights xd
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:51:09Z
what is between "big" and "small" is it "middle" or "medium" ?
Avatar
well need to reproduce xd
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:51:22Z
ty
Avatar
medium, yea
08:51
Large, Medium, Small
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 08:51:59Z
yea
08:52
but i went with big already xd i like the word
Avatar
fair enough
Avatar
no white screen for me 😦
Avatar
I'm on windows, if that helps at all
Avatar
yeah guessed so, i'll try wine, but just to be clear, inside the loading bar the theme is shown, but after its white and then its shown again?
Avatar
Pure white screen before the loading bar screen and theme even appear
Avatar
ah so at the beginning of everything
Avatar
alright
08:54
probs bcs the loading of the map takes a bit, we could just clear the color to black i guess 😄
Avatar
That would be great
Avatar
what did u change in 15.1.1 @deen ?
Avatar
DDraceNetwork, a cooperative racing mod of Teeworlds - ddnet/ddnet
09:08
I made Australia appear in server list again
Avatar
ah but the update is already out isnt it
Avatar
@Skeith or @Soreu can you test after the build finished: https://github.com/ddnet/ddnet/runs/1237771548 (you need a github account) (edited)
Avatar
DDraceNetwork, a cooperative racing mod of Teeworlds - ddnet/ddnet
09:14
i'll just clear the frame before sound init or anything else
Avatar
can tune zone enter pls work in spec?
09:23
75cd653 Add box offset to align better on spec tab - ardadem e44df2d Merge #3059 - bors[bot]
Avatar
@Deleted User Seems good, black screen now
Avatar
alright thanks for testing
Avatar
yup, that's better heartw
Avatar
008800d Always clear first frame - Jupeyy 692c373 Merge #3058 - bors[bot]
Avatar
can we upgrade to c11 or was there something wrong?
Avatar
before it was due to msvc
10:11
but now they upgraded iirc
Avatar
then we don't support old msvc versions anymore?
Avatar
is there a reason to do so?
Avatar
someone might be running an old version, dunno
Avatar
that someone can upgrade then
Avatar
sounds good
Avatar
isnt graphics_threaded c++
10:13
already
Avatar
i also dont know if its allowed to just include c11 includes and will work.. under gcc and clang it works, but dunno how MSVC reacts
10:13
yes but not c++17
10:14
sadly std c++ waited too long with aligned allocations 😄
10:15
so thats how its done
10:15
i saw smth like that on stackoverflow
Avatar
D:\a\ddnet\ddnet\src\engine\client\graphics_threaded.h(26,31): error C3861: 'aligned_alloc': identifier not found (compiling source file D:\a\ddnet\ddnet\src\engine\client\backend_sdl.cpp) [D:\a\ddnet\ddnet\debug\DDNet.vcxproj]
10:16
thats the problem, we need c11
Avatar
u can enable it with /std:c11
Avatar
About allocation, I remember the trick of just allocating more and aligning yourself 😄
Avatar
but use /std:c17 directly
Avatar
mhh, would probs work, but we could also just use c11 xD
10:21
c++11 and c11, sounds good 😄
Avatar
c89 best
10:21
other is bloat
10:21
monkalaugh
Avatar
well that will also fix the stupid c98 warnings
10:21
for printf and stuff
10:21
(under msvc mingw MAYBE xd) (edited)
10:22
nice mingw already doesnt compile xd
10:23
| m_pData = (unsigned char *)aligned_alloc(alignof(std::max_align_t), m_Size); | ^~~~~~~~~~~~~ | _aligned_malloc or better... its trolling
10:24
and windows also still fails... thats annoying
10:25
guess a #define for windows will do the trick, even if thats already annoying
10:25
oh macos also failing
10:25
well maybe i'm just too stupid for the cmakelist
Avatar
what did u do to cmake
Avatar
or i need to put it into acutal c code
Avatar
set_property(TARGET tgt PROPERTY C_STANDARD 11)
Avatar
just added c11 as requirement, but as gnu11 for macos appearntly, but probs doesnt matter
Avatar
note: include ‘<stdlib.h>’ or provide a declaration of ‘aligned_alloc’ 61 | #include <shellapi.h> +++ |+#include <stdlib.h> 62 | #include <stdlib.h> mingw top troll xd
10:41
" error: 'aligned_alloc' is only available on macOS 10.15 or newer "
10:42
c'mon xd
10:42
direct rq
10:44
[-Werror,-Wunguarded-availability-new] maybe just disable the warning? are we shipping the libs in macos statically?
Avatar
looking ddnet code
10:47
monkalaugh
Avatar
can anyone tell me why the tiles layer in the 'Cave' group is so broken when opening it with the ddnet editor? its fine when i open it with 0.7 teeworlds, though it doesnt have 0.7 compression
10:49
not asking for any deep investigation, only wondering if you've heard of that before and might have a lead
Avatar
bcs 0.7 has different tilesets probs
10:58
you mean its external, but a different one coz of that
Avatar
yes
Avatar
yea that makes sense, thanks :)
Avatar
Please put an auto-update on mac 🙏
11:12
and skin fetcher doesnt work too btw
11:15
(looks like it downloaded skins on the Teeworlds/downloadedskins folder, but nothing appears on the client) (edited)
Avatar
it doesnt load downloadedskins at start
11:17
if u mean that
Avatar
Auto update can't work on mac, not the way we have it coded right now
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 11:28:18Z
brew upgrade
11:28
or was it brew update idk
11:28
is ddnet even in brew? didnt touch a mac in a while
Avatar
We could get a brew package
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 11:30:02Z
some cask or however the gui stuff was called
11:30
as far as i remmeber vanilla brew is cli only and no actual app files but idk
Avatar
Yeah cask
Avatar
Steps to reproduce 1. Open demos 2. Select any demo in a list and press the Play button 3. Open demo browser menu (by pressing escape) 4. Press the camera button (to create new demo) 5. Type name and press OK 6. Click on the Close button Expected: Recently created demo is in the list Actual: The recently created demo is not in the list, you need to press Refresh button to have it in the list
Avatar
Дядя Женя 2020-10-11 11:33:57Z
any chance of adding any kind of mark on friends in scoreboard list?
11:34
it's too hard to understand who's your friend here when you join server with 30+ players and look at scoreboard. Need to open players tab and search there
Avatar
for specview this was just added
11:35
11:35
you could ask ardadem, if he wants todo this too, but i dunno who he is here
Avatar
@Deleted User Q: Why do we need aligned alloc anyway?
Avatar
we need memory alignment
11:41
i dont want todo it by hand
11:41
pls xdc
Avatar
I mean isn't the buffer a block of memory we allocate out of? Whether the block itself is aligned shouldn't matter
Avatar
yeah but the memory access should still be aligned
11:44
in x86 it doesnt matter anyway
11:44
u can do whatever u want
Avatar
Actually I have another question, how do we even end up unaligned?
Avatar
well e.g adding a cmd that is only 4 bytes
11:44
while we require 8 bytes
Avatar
malloc is supposed to return a pointer correctly aligned for any type
Avatar
says the standard?
11:45
C99
Avatar
well msvc is c98 ;D
Avatar
C89 7.10.3 The pointer returned if the allocation succeeds is suitably aligned so that it may be assigned to a pointer to any type of object and then used to access such an object or an array of such objects in the space allocated (until the space is explicitly freed or reallocated).
11:47
So C89 is fine too
11:48
I don't think we need aligned alloc anyway, m_pData doesn't have any alignment requirement. It's the things we allocate inside m_pData that needs alignment from what I understand
Avatar
yeah but i have to rely on the starting address of m_pdata
11:49
so that must be aligned in any case
11:49
the rest is aligned by our impl
11:50
now its just the question, if the alignment of c and c++ is the same
11:50
the max alignment
Avatar
But do you need to know that m_pData has a specific alignment?
Avatar
yes
11:50
else all subsequent pointers formed out of it are unaligned too
Avatar
Mh, what you do in alloc doesn't really make sense to me tbf it seems to rely on the previous allocated thing having a "good" size
Avatar
yes
11:54
that is the sense of alignment xd
11:54
it always starts with 0
11:54
0 is obviously always right
11:55
bcs the pointer is right
11:55
so always when we add smth it stays aligned
Avatar
So if I Alloc something with a different alignment in the same buffer, all the future Alloc's are broken and that's fine?
Avatar
well the cmds, are always of int* and data is always max_align_t
11:57
they are split buffers
Avatar
Well fwiw, that makes no sense to me. I'll go have breakfast before I starve
11:57
I'd think you'd actually want to skip a couple bytes until the address has the alignment you require and return that
Avatar
bon apetit
11:58
well i skip that bytes after the current alloc
11:58
so same in green xd
Avatar
With one difference, you assume pdata + m_used is already correctly aligned. Which is a bad assumption imho
Avatar
no it always is
12:00
m_pData must be aligned to std::max_align_t
12:00
bcs i allocate it like that
12:00
and m_Used always adds the cmd size + the missing bytes until alignment
Avatar
You cant know the alignment of the next alloc a priori
Avatar
i can
12:02
what exactly do u want, that we add a long double to the CMD headers?
12:02
so it wont work xD
Avatar
You should remove the argument to that function as changing the alignment will not behave as anyone expects
Avatar
the cmd headers only contain ints and ptrs actually
12:03
cpp is too confusing for me
12:04
its more about cpu architecture
Avatar
I want to avoid adding more platform dependent code, while also keeping CBuffer generic. If you want it to specifically be a command buffer, just fix the alignment because that argument there is completely misleading
12:05
Its more of an AlignmentOfNextAlloc argument
Avatar
"Pointers returned by allocation functions such as std::malloc are suitably aligned for any object, which means they are aligned at least as strictly as std::max_align_t." and also: https://godbolt.org/z/azndYn where's the problem? 🙂
struct Something { long double m_value = 0; }; std::size_t test() { return sizeof (Something); }
Avatar
i still dont see whats the problem
12:06
u want me to always use the max alignment?
Avatar
@Comrade we allocate out of a buffer. Our allocations are what needs to be aligned, the buffer is aligned
Avatar
then its suitable in any case
Avatar
Are you being intentionally dense?
Avatar
but it wastes 8 bytes always
12:06
i just dont get the point honestly
12:06
i can add static_assert(alignof(ptr) >= alignof(int) (edited)
Avatar
Your alignment argument, is not an alignment argument
Avatar
then its 100% safe
Avatar
It's lying
Avatar
no
12:07
the CMDs only contain ptrs and ints
Avatar
Fuck me, fine do whatever
Avatar
i just dont get ur point, nothing else
12:08
once i wanted to learn cpp i got stuck on getting compilers and shit
Avatar
@Deleted User you can use online compiler like this one http://cpp.sh/ 😄
Avatar
perfect
12:09
thanks
12:09
tbh @Deleted User its not about learning at the start, just try out a bit and u get into it
12:09
¯\_(ツ)_/¯
12:10
ive got a book for it
12:10
with some examples (edited)
12:10
not so optimized...
12:10
yeah, i had one too
12:10
and i read it, and didnt understand anything until i wrote the code myself xd
12:10
it might help ofc, but its really alot of getting a feeling tho 😄
12:10
well ofc coding is actual experiencing and not tutorials
12:12
@Comrade btw its about alignof()
Avatar
you need your own memory allocator?
Avatar
well we have a memory buffer, where we access data from individually
12:14
so the alignment should be right when accessing
12:14
e.g. pointers on 64bit require 8 byte alignment
12:14
smth like this
Avatar
yes, but if you request memory chunk from malloc/new, it's aligned properly, so even if you use it as buffer for your own allocator, there should be no problem with memory alignment, right?
Avatar
the problem is not that its probs not the case, but that only c++ has the max_align_t standartized
12:16
the question is, can we rely on c standard in c++
12:17
so yes
12:17
there is no problem in real world, anyway
12:17
we still apply alignment
12:17
bcs we dont allocate memory
Avatar
C++ relies on many things from C
Avatar
(only once)
Avatar
such as size_t
12:17
so most C standards apply to C++ as well i think
Avatar
well anyway
Avatar
even though C and C++ are different languages in some ways
Avatar
telling the compiler exectly what alignment we want is safest
12:18
it wont optimize this out
Avatar
yes, but messing with these things can be really evil
12:19
just like packed structures 😄
Avatar
well thats why we added the alignment
12:20
to not access misaligned stuff anymore 😄
Avatar
and does it actually make some difference in performance on some non-x86 system? 😄
Avatar
well for non x86 systems its required anyway
12:21
u are not allowed to acces misaligned floats in arm
Avatar
a
12:33
couldnt a webhook be in a uhhh
12:33
in another channel?
12:33
instead of this
12:33
well this is dev channel and github is for devs
12:33
understandable
Avatar
Дядя Женя 2020-10-11 12:37:29Z
disable rendering katana when freezed mb?
Avatar
@Deleted User "only ints and pointers" can already cause misalignment
12:37
ints are 4 byte, pointers 8 byte on 64 bit
Avatar
Have anybody experienced weird error where in prepared statement ? is not bound to a variable? In Sqlite it bounds, but not in MySQL.
Avatar
but if you put only structures into that preallocated buffer and no raw types and arrays, it must be aligned properly
12:42
compiler always adds proper padding into struct
Avatar
if you add a struct with just a pointer in it
12:43
*just an int
12:43
and then afterwards right after a struct with just a pointer
12:43
the latter struct will be misaligned
Avatar
Okay, let's try this again now that I am not starving
Avatar
hi @Learath2
12:44
hope you had a good meal 🙂
Avatar
When someone sees a function, called Alloc, taking an argument for alignment, they expect the pointer returned by said function to be aligned, as specified
Avatar
you're right @heinrich5991 https://godbolt.org/z/s68WeT 😬
struct Something { int m_value = 0; }; int test() { return sizeof (Something); }
Avatar
@heinrich5991 but i use the maximum
12:45
so its safe
Avatar
maximum of what?
Avatar
The way you implemented it, the alignment argument will only be considered for the next Alloc. The next Alloc will be aligned the way the previous one was supposed to be aligned
Avatar
of ints and ptrs xd
Avatar
so you add a struct with just one int
12:45
it's 4 byte long
12:45
you align it to 8 bytes?
Avatar
and will sitll be aligned to 8
12:45
yes
12:46
so its always safe
12:46
for all commands to add
12:46
i still dont get why u so mad about that
Avatar
Did you even read what I said?
Avatar
the next alloc is safe too bcs commands have their own buffer
12:47
its always somesize aligned to 8
Avatar
I don't even know what to say here. I'm telling you the argument you pass is not used as a normal human being would expect, you tell me it works out fine in this specific application
Avatar
well just open a pr with ur fix
12:48
then we fine
12:48
my pr works aslong ptr isnt magically 16 bits
Avatar
@heinrich5991 would you expect your previous allocs alignment to interfere with your next allocs allignment?
Avatar
not really, unless required for some reason to properly align the next one
Avatar
as said
12:49
do a pr
12:50
then i close mine and u use urs
12:50
im 99.9999999999999999)% sure mine works for arm, x86, and almost all architectures
12:50
maybe not for washing machines
Avatar
It works because that buffer is only ever used for one type of thing
13:00
52efb23 Update demo browser on demo save - BannZay 247e01b Merge #3064 - bors[bot]
13:07
4327194 Add GUI & Game sound volume sliders - def- e34acce increase buffer size for name_ban messages - 12pm 6ab806f Merge #3048 #3063 - bors[bot]
Avatar
@BannZay hey, currently here? let's talk in real time about https://github.com/ddnet/ddnet/pull/2778 so we can finally get it done
Possible improvement here: Add a possible to read value marked by CMDFLAG_TEST. I can not find not ungly solution to make it happen related to #2773
Avatar
9e8cbfe Optimize uuid lookup - Jupeyy 1a79fde Merge #3053 - bors[bot]
Avatar
@heinrich5991 hi! I am here
Avatar
nice
Avatar
700bfd7 Try to fix FindSQLite3.cmake - def- a83b7b0 Merge #2986 - bors[bot]
Avatar
@BannZay I have the feeling that we could minimize the diff if we kept CFGFLAG_TEST and made CFGFLAG_GAME imply that you cannot execute it with rcon permissions unless testing cmds are enabled
13:22
what do you think? would that still achieve your goal?
Avatar
I see why you shoehorned it into the size, because GetCommand just skips by size, what I don't get is why you don't just say that and instead try to defend the obviously wrong signature
Avatar
there is something REALLY annoying when playing
13:30
the hook
Avatar
yea, maybe remove the hook
Avatar
it will attach itself to the nearest player instead of where its pointed to
Avatar
ah
13:30
that's also gameplay at this point, I think
Avatar
that makes the gameplay really horrible when its a hard parkour
Avatar
what do you actually mean tho
Avatar
tees have quite a large radius for attaching
13:31
even if you aim slightly away from them
Avatar
in vanilla the hook goes to the middle of the tee when u hook close to the border of the tee but thats it
Avatar
Yeah, it's gameplay, can't change
Avatar
made it sound like he is using aimbot
Avatar
@heinrich5991 In this case CMDFLAG_TEST means that settings marked by this flag can not be used in map config (which is not quite obvious from its name) and also this flag must be considered as CFGFLAG_GAME. So much mess... So I have not done it yet and prefer to keep 2 flags (CFGFLAG_GAME + new custom one like NOMAPCFG) instead of magic one with weird name. Answering your question - yes, it will work. But I dont like it.
Avatar
still doesnt make much sense to me
Avatar
I'd argue it's similarly non-intuitive that we no longer have CMDFLAG_TEST tbh, nothing clear that is enabled by sv_testing_cmds
13:37
we could create a different message for CFGFLAG_GAME, "game-only commands/variables can only be used from inside maps or while testing is enabled"
Avatar
cfgflag game = can be used inside of map, CLIENT_ID_GAME is also the map executing a command, so that makes a lot of sense. and cfgflag test-marked commands needs sv_testing enabled, where is the problem @BannZay ?
Avatar
the hook snap is a core mechanic at this point, u wouldnt be able to do edgehooks otherwise
13:38
and i dont see how its horrible
Avatar
The problem is that there is two types of cheat commands. Some can be used inside of map but others can not
Avatar
yea
13:40
some are for cheating, and others are for changing map physics, as I see it
13:40
e.g. for trying out different things for your new map
Avatar
@heinrich5991 how do i get steam_apid.lib?
Avatar
@jao tell him the whole error
13:41
otherwise its XY problem
Avatar
hmmm @jao do you compile? it should be generated automatically
Avatar
cmake should generate a empty steam lib file right?
Avatar
yes
Avatar
i told him to do a clean build
13:42
but idk how windows works
13:42
for that
Avatar
@BannZay only commands have the test flag, thats why its called CMD flag, not CFG flag, and commands can not be put into the server settings anyways
13:42
i really do not understand your problem :D
13:42
config variables dont have the test flag
Avatar
@jao r u compiling from visual studio? i think u have to rerun cmake to generae the project files again
13:43
or something like that
Avatar
can you post the error message @jao?
Avatar
@BannZay only commands have the test flag, thats why its called CMD flag, not CFG flag, and commands can not be put into the server settings anyways
@fokkonaut from the conversation with deen - test commands were introduced to prevent mods from cheating. But "non test commands", for example sv_team, can be used to cheat the map without server reload
(edited)
Avatar
Datei "Debug\steam_apid.lib" kann nicht geöffnet werden.
Avatar
full log please. https://paste.mozilla.org/. but yes, a clean build might also be nice to try
Avatar
@fokkonaut there is no real distinguish between commands and variables. Can you make work done ? I am tired already with this pr, so I give up to you.
Avatar
command = ddracecommands.h variables/configurations = variables.h/config_variables.h
13:51
simple
13:52
the commands affect player states etc and cofigurations are server settings
Avatar
@BannZay I'll try to finish it, would that work for you?
13:52
thanks
Avatar
@Neben does steam work on mac osx? that has an autoupdater
14:16
@BannZay how can I cheat a failed team with sv_team?
14:25
40ca3d8 Make clan plates fit & only show when name plates enabled - def-
Avatar
@deen oh what thanks, i'll try it out
Avatar
Possible to add milliseconds back on top of the screen?
f3 1
Avatar
b7c8da5 Make clan plates fit & only show when name plates enabled - def- d4a0105 Merge #3065 - bors[bot]
Avatar
@Brokecdx- i think they were misleading
14:41
and not real
Avatar
@Brokecdx- they literally showed random numbers
justatest 1
14:41
and it kept annoying me that we show something totally wrong
Avatar
wait what
14:41
my life has been a lie
Avatar
Дядя Женя 2020-10-11 14:41:48Z
is the problem of making accounts on ddnet only about identifying old players?
Avatar
I mean they were going from 0-9 in order, but they were not using the right time for that
Avatar
oh lol
Avatar
26a07c8 Disallow game-related commands unless testing is enabled - BannZay a2b3f45 Reintroduce CMDFLAG_TEST - heinrich5991 7e84e1e Merge #3066 - bors[bot]
14:53
f94d476 Don't divide by 0 in LoadSkin - def- 7e297af Don't pass null pointer into mem_copy in CServerBrowser - def- e6b0283 No null pointer to mem_copy in SendControlMsg - def- 346853e Signed overflow is undefined in CSnapshot::Crc - def- 47299e8 Out of bounds access in CMenus::RenderGame - def- 3d76010 aPastIndecies -> aPastIndices - def- 60f4e07 Out of bounds access in RenderPlayer - def- 23db49d Server browser: Don't access friends out of bounds - def- 6680ec3 Reset CCharacterCore at start - def- 476a912 Fix CRaceDemo + CGhost out of bounds access - def- ae1a266 CCharacterCore::Tick caused out of bounds - def- 91619b9 Merge #3051 - bors[bot]
Avatar
wat
Avatar
@Deleted User wat wat?
Avatar
12 commits at once
14:55
wonder what the contributor was actually doing
Avatar
that was me. I fixed each occurence seprately so that we can track what error it caused in the commit message
Avatar
¯\_(ツ)_/¯
Avatar
612f665 Document highest and lowest values for cl_video_crf - def- ea1acfd Merge #3067 - bors[bot]
Avatar
Though I prefer this version I also made one keeping the old ugly pointer arithmetic https://github.com/Learath2/ddnet/commit/cb613561055957702eba43fc66fc5084f7c9f140 Feel free to take whichever. Supersedes #3061
15:16
828817c Recreate score hud when any score changed - def-
15:28
46ef863 Right-align hud scores - def-
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 15:49:57Z
deen spammer confirmed
Avatar
@heinrich5991 why did you remove the topic from ddnet too? 😄
Avatar
oof
15:52
I added it to teeworlds, but removed it from ddnet
Avatar
fixed it
Avatar
2a06b3c Recreate score hud when any score changed - def- d0005d3 Right-align hud scores - def- 1d961a2 Merge #3069 - bors[bot]
Avatar
💥Current issues: Can not lazy-matching of RegExp, like .? Current, Redirector is ignore the ? of .? in the RegExp. So not flexible enough, it is difficult to achieve accurate matching, and it is ...
16:01
Best issue ever
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 16:02:20Z
nice thanks ill add to my collection of best issues @Learath2
Avatar
[quakenet] Ryozuki BOT 2020-10-11 16:03:26Z
ChillerDragon make pr for ddnet hacktoberfest
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 16:04:41Z
i was actually about to make a shit pr but i was to lazy
16:04
if hacktoberfest is in october i should probably get cracking
16:05
but i can always pr against one of my own 100 github repos
16:05
16:06
i wish they would give out other cloths i have enough tshirts tbh
16:07
weird flex ik
16:08
warnings while compiling
16:09
i think i mentioned these before
Avatar
compiler?
16:09
+versio
16:09
n
16:09
sec
16:09
gcc (GCC) 10.2.0
16:10
it also adds some cppflags of my own
16:10
wait
Avatar
same version for me, I don't get the warnings
Avatar
I think jupeyy fixed that in a pr
Avatar
CPPFLAGS="-D_FORTIFY_SOURCE=2" CFLAGS="-march=native -O3 -pipe -fno-plt -flto" CXXFLAGS="-march=native -O3 -pipe -fno-plt -flto" LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
16:10
its built on release mode
16:10
from the aur
16:10
just updated it
16:10
(this is my makepkg.conf)
Avatar
#3031 ?
Avatar
@Learath2 is the pr after 15.1.1?
16:13
@heinrich5991 i think these appear if u enable -flto
Avatar
@Ryozuki doesn't happen for me with CFLAGS='-flto' CXXFLAGS='-flto'
16:18
afk food
Avatar
ok im building ddnet-git which uses the latest master
16:22
and i got way less warnings
16:22
i think they are unrelated
16:22
so this might be fixed
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 16:23:05Z
hastebin lol
Avatar
there are the warnings with latest
16:23
warning: ‘__builtin_strncpy’ specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807
16:23
xD
16:23
insane numbers
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 16:23:33Z
oh ye classic
16:23
pls fix those would be nice
16:27
one is caused from this iirc
16:30
i think this is due to str_copy using strncopy and it makes no sense if you dont use the dst size u should then use strcpy
16:31
eh maybe not
16:32
If, after copying the terminating null character from src, count is not reached, additional null characters are written to dest until the total of count characters have been written.
16:33
i guess the problem here is we want to stop before than null char from src
16:33
that*
Avatar
minimum(static_cast<int>(sizeof(Item.m_aName)), str_length(pName) - 4) should never be 18446744073709551615, though, no?
17:00
I think the compiler is getting confused by the argument being dynamic
17:04
I don't get why it misses the static_cast there, that should truncate it down to an int just fine
Avatar
@Learath2 the big number thing is from DoEditBox
17:05
maybe not related to this
Avatar
(though it probably shouldn't be using an int... there is a reason size_t is used in the standard library, int just might not be (and probably is not) large enough to fit every possible object)
Avatar
@Learath2 str_length(pName) - 4
17:06
can this ever be negative?
17:06
wouldnt that be very bad
Avatar
It can be negative sure and yes that would be very not good
Avatar
i see, thats very not cool
Avatar
Oh actually it can't
17:08
We check that it endswith .demo before
Avatar
i think those 4 are the file extension
Avatar
if it ends with .demo it can't be shorter than 5 characters
Avatar
but .dema has 5 chars
Avatar
Yeah, that looks like it should be - 5 to me
17:09
but it works, so we definitely are missing something
17:09
Why is system.h so obsessed with integers anyway? Why can't/don't we just use size_t like normal sane people?
Avatar
9223372036854775807 is max 64bit int value
Avatar
64bit signed int*
17:10
18446744073709551615 is the 64bit unsigned max
17:11
So gcc thinks we are somehow passing an unsigned integer
Avatar
gtg, if I don't cook soon I'll order something unhealthy, if you want to try fixing it maybe try moving the cast outside the minimum, see if that makes gcc happy
Avatar
@Learath2 str_copy accepts a int instead of size_t
17:14
btw
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:14:24Z
gtg, need to buy something unhealthy or i miss my stream
17:18
oh btw @Jupstar thought i could finish today but turns out i suck at grids and these infinite height trees are tricky https://zillyhuhn.com/cs/.1602436564.png
Avatar
[quakenet] Ryozuki BOT 2020-10-11 17:19:44Z
u know that ping doesnt work
Avatar
static_cast<int>(minimum(sizeof(Item.m_aName), (size_t)str_length(pName) - 4)));
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:22:04Z
like totally not at all? no pings?
Avatar
makes no difference
17:22
(gotta cast to size_t otherwise there is no valid signature)
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:22:31Z
never seen that one before lol https://zillyhuhn.com/cs/.1602436873.png
Avatar
the problem is str_length(pName) not the cast imho
Avatar
[quakenet] Ryozuki BOT 2020-10-11 17:22:53Z
ChillerDragon wdym
17:22
what did u never see
17:23
you probs dont see my errors cuz u dont have optimizations enabled in ur /etc/makepkg.conf
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:23:13Z
running yay and it didnt yeet 100 updates at me
17:23
my system is up to date and i didnt update in hours xd
Avatar
[quakenet] Ryozuki BOT 2020-10-11 17:23:40Z
do u have ddnet aur pkg?
17:23
i updated it not long ago
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:24:01Z
17:24
i never noticed it updating it tho
17:24
shouldnt it update on every commit?
Avatar
@Learath2 what about copying fully and then adding a null char where the dot is xD
Avatar
That's a cheap trick :D
17:29
ah
17:29
@Learath2
17:29
isnt this the same
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:29:25Z
does ur fridge have discord installed @Learath2 ?
Avatar
and compiler wouldnt complain right
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 17:29:39Z
iot madness
Avatar
just need to check index is within bounds
17:29
(the first 2 lines vs the 3rd line)
Avatar
ChillerDragon: Na, I'm waiting on water to boil
17:32
Well it's technically not the same, the second one is always safe, this needs bounds checking
Avatar
"always safe"
17:32
thats why the compiler complains
17:32
that its not
17:33
?
17:33
xd
Avatar
(and it's copying 4 extra characters for no reason)
17:33
The compiler is most probably confused
Avatar
i have a hard time believing learath is more knowledgable than a compiler made by ppl who know a lot
17:33
but well ill believe you
Avatar
These bounds checks are very new to compilers, didn't we have another issue like this a couple months back that got fixed by gcc10?
Avatar
this is coming from FORTIFY_SOURCE=2 right?
17:35
is that feature that new?
17:35
ah well maybe its not from there
17:35
i rly wonder what makes this warning show up
Avatar
Well what is the warning called? We can check gcc bugs atleast
Avatar
-Wstringop-overflow=
Avatar
@Ryozuki well check whether it's the minimum that's confusing it. Remove it try compiling with either argument
Avatar
this happens on release
17:36
-march=native -O3 -flto
17:37
ull try without flto
17:38
@Learath2 ok looks like -flto enables it
17:39
does this exist since 2009?xd
Avatar
Lto was pretty broken for many years
Avatar
GCC 9 was branched last Friday (see a partial list of changes ) and if all goes well, it will be released tomorrow. It is thus time for me t...
17:40
they made imrpovements to it
17:40
in gcc 9
17:40
This continues the series I wrote on GCC 8, GCC 6, GCC 5, and GCC 4.9 (part 1 and 2). (Sorry, no GCC 7 blog post at all. I was lazy.)
Avatar
@Ryozuki what is your cmake line?
17:43
Let me try to reproduce it
Avatar
CPPFLAGS="-D_FORTIFY_SOURCE=2" CFLAGS="-march=native -O3 -pipe -fno-plt -flto" CXXFLAGS="-march=native -O3 -pipe -fno-plt -flto" LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" cmake .. -DCMAKE_BUILD_TYPE=Release -GNinja
17:44
then jsut in case
17:44
CPPFLAGS="-D_FORTIFY_SOURCE=2" CFLAGS="-march=native -O3 -pipe -fno-plt -flto" CXXFLAGS="-march=native -O3 -pipe -fno-plt -flto" LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" ninja
17:44
xd
17:44
removing -flto from both made the warning go away
17:44
if u have a potato it will take way more to compile btw
17:44
xd
Avatar
I have a decent machine and it still takes more to compile 😛
17:45
need more cores
Avatar
-flto rly makes it take way longer
17:46
but i think its worth
Avatar
Well did you benchmark it? LTO sometimes really can't do much
Avatar
nah i didnt
17:46
tbh i dont even play with self compiled
17:47
since i want to have hours in steam
17:47
xd
17:47
(and im to lazy to replace the binary everytime)
Avatar
Ah, I have an idea
17:49
I think it's LTO optimizing away our extra calls
17:49
That's why it's only emitted when LTO is enabled
17:49
Oh, the output even says so 😄
Avatar
was opengl disabled by default in the new update?
Avatar
@Ryozuki I'm like 80% sure it's a gcc bug
18:10
clang is usually more anal about these things and clang with flto doesn't complain
Avatar
Well looking at gcc's source, it seems if it can't determine the object size of the destination, it throws this warning
Avatar
@heinrich5991 mapbugs.cpp:L30 what is that about?
Avatar
Clang has a nice static analysis tool, we should go through it's results and clean up. scan-build cmake -DCMAKE_BUILD_TYPE=Release -GNinja .. && scan-build ninja scan-build: 40 bugs found.
Avatar
@Learath2 clang is smarter than gcc, but is it faster than gcc?
19:08
clang errors are cleaner tho
19:08
i love it
19:09
@Learath2 omg
19:09
it even builds a web
19:09
19:09
poggers
19:10
it also finds memory leaks
19:11
and it explains it like i am 5 years old too
19:11
19:11
monkalaugh
19:11
19:11
👀
Avatar
thats awesome
Avatar
i love that dude
Avatar
thanks bro
19:12
@jao software made by the numero uno
Avatar
monte software
Avatar
@heinrich5991 thx 😄
Avatar
@noby ?? xd
Avatar
i was asleep when he tagged me earlier
Avatar
clang is usually faster for me
Avatar
so they cached up
19:35
@Learath2 can 2 llvm frontends make code that is slower than the other frontend?
19:35
i guess yes
Avatar
clang is a llvm frontend right
19:36
rust also uses llvm
Avatar
frontends generate LLVM IR, the quality of the IR they generate is up to them
Avatar
But LLVM does optimize the IR, so it's not trivial to write shitcode 😄
19:36
i should look at llvm IR
19:37
and maybe try making a simple language
19:37
they even got a tutorial
Avatar
[quakenet] ChillerDragon BOT 2020-10-11 20:28:55Z
do you guys have any workflow on auditing small random open source software before using it
Avatar
69a93d2 Revert "Livestream LCSG47" - def-
Avatar
@Learath2 no idea what I was thinking with that line
21:22
can be cleaned up
21:23
@Ryozuki search the gcc bug tracker for -Wstringop-overflow, it has quite some false positives that we even already encountered AFAIK
Avatar
@Learath2 unsigned integers (including size_t) have their own pitfalls in C/C++, I think the google coding style explicitly forbids using unsigned integers anywhere
21:29
That said, mixing signedness of integer types is responsible for an equally large class of problems. The best advice we can provide: try to use iterators and containers rather than pointers and sizes, try not to mix signedness, and try to avoid unsigned types (except for representing bitfields or modular arithmetic). Do not use an unsigned type merely to assert that a variable is non-negative.
Avatar
isn't clang-tidy does same thing? #3071
Avatar
Clang has a nice static analysis tool, we should go through it's results and clean up. scan-build cmake -DCMAKE_BUILD_TYPE=Debug -GNinja .. && scan-build ninja scan-build: 40 bugs found.
Avatar
clang-tidy can also be used to run clang-analyzer from the command line
21:44
clang-tidy -checks=clang-analyzer*
21:45
but apparently not all checks from what I can tell
21:46
ah no, should be all, they're spread around a bit in the docs: https://clang.llvm.org/extra/clang-tidy/checks/list.html
21:49
so if you clean up some specific clang-analyzer checks, add them to a .clang-tidy file and we can add that to our github builds
Avatar
@heinrich5991 well we are mixing signedness right now, that's worse
Avatar
I don't think you'll get rid of mixing signedness except if you try to use signed integers everywhere possible
Avatar
@heinrich5991 well since we can't change the signature of strncpy, it's reasonable that our wrapper for it should mimic the signature
Avatar
@Learath2 huh? I think that's precisely what a wrapper function can do for us, change the parameter type
Avatar
it can, but should it? it's unnecessary complexity imho
22:12
we get size_t from sizeof, we truncate it down to int, we pass it to our wrapper, which pads it with zeros and passes it to strncpy
Avatar
the wrapper can shield the complexity from us
22:15
sizeof is constant, so the truncations isn't really real. but yea, it creates an unsigned integer that can be used in unsigned comaprisons 😦
Avatar
6271b2f Higher quality video thumbnails - def-
Avatar
also i run clang-tidy with clang-analyzer*, output: https://0x0.st/iGMI.txt
Avatar
Besides, who cares what google thinks, they've created one of the messiest programs I've ever seen in a decade with their "guidelines"
Avatar
@Learath2 which one? xd
Avatar
why chromium ofcourse
Avatar
Because of historical accident, the C++ standard also uses unsigned integers to represent the size of containers - many members of the standards body believe this to be a mistake, but it is effectively impossible to fix at this point.
If there is anyone not to be trusted with anything, it's the C++ standards committee 😛
Avatar
[*] '/opt/teamspeak3/ts3client_linux_amd64' Arch: amd64-64-little RELRO: Partial RELRO Stack: Canary found NX: NX disabled PIE: No PIE (0x400000) RWX: Has RWX segments RPATH: b'$ORIGIN/lib/:/usr/local/Qt-5.12.1/lib' FORTIFY: Enabled
23:38
teamspeak 3, no PIE, executable stack, … WHY
23:39
The upcoming Qt 5.6 introduces a blacklist to mark some graphic cards which are known to insufficiently support OpenGL or Angle. Confirm e.g. https://bugreports.qt.io/browse/QTBUG-47435 https://
23:40
They can't use OpenGL to accelerate Qt Quick, no. Which is a pretty severe drawback. Unfortunately the status of OpenGL on Windows is a nightmare. The "average" Windows computer will have an Intel-based GPU with ancient drivers, which are buggy enough to cause Qt not even try to use any 3D at all (OpenGL nor Direct3D). NVIDIA and AMD are usually better, as at least they tend to be more up-to-date.
23:40
sounds a bit like the issues we're running into
23:42
maybe we should copy one of these lists and warn the user to update their drivers in the DDNet client
Exported 749 message(s)