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 2023-01-23 00:00:00Z and 2023-01-24 00:00:00Z
Avatar
Alternative to #6294

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.c...
Avatar
1af3c22 More minimal clang-tidy 15 run - def- 30d67b9 Merge #6301 - bors[bot]
Avatar
Otherwise falls back to OpenGL 1.5, since 3.0 is not supported

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+UBSa...
Avatar
@Jupstar ✪ FPS on M1 Max is about the same as on M1 Pro, I guess we are not GPU-bound
Avatar
Yeah I think so. But sadly molten VK is buggy or bad. And the opengl wrapper is also not very fast.
11:25
Guess I'll have to wait until the Linux port gets around 80% perf of what's possible. If they even reach that point
Avatar
ec30fc7 Use OpenGL 3.3 on macOS by default - def- 54e56b0 Merge #6302 - bors[bot]
Avatar
heyo guys, what's up? :D I've been playing on an older client version for long now and I kind of don't want to update it rn because of the freeze bar and spec animation. I was wondering if that can't simply be made an optional setting since it probably doesn't match all of the player's vibe and style.
Avatar
Have u at least tried it for 2 weeks
Avatar
7e9129c Use doxygen style for all fs_* functions - Robyt3 b67a1f5 Add fs_is_file to check if a given path is file - Robyt3 f80e962 Add IStorage::FileExists and IStorage::FolderExists - Robyt3 e29a6e2 Show error message when downloaded map cannot be saved - Robyt3 b8e7160 Merge #6299 - bors[bot]
Avatar
Avatar
Jupstar ✪
Have u at least tried it for 2 weeks
no, why would I if everything is fine for me with an older client
Avatar
Avatar
Freezy
no, why would I if everything is fine for me with an older client
I'd say, so your brain gets used to it and we don't have extra work because of a single unhappy person
Avatar
wont be added 99%
12:10
so u gotta adapt
Avatar
Avatar
Jupstar ✪
I'd say, so your brain gets used to it and we don't have extra work because of a single unhappy person
why would I go through that process in the first place if everything is fine in an older client verion..? xD Idk if you just make this up but I've heard plenty of negative opionions on this, so I kind of don't know what to say to this. Anyway, this was just a suggestion since I'm good on my current client, just for you to take note and perhaps even consider adding it
Avatar
Then use old client
Avatar
if you ask my opinion, u can stay on ur older client, we take no responsability on bugs, security issues, or the game not being compatible in the future
12:11
thats my take xd
12:12
time to find RCEs kek
Avatar
Avatar
Freezy
why would I go through that process in the first place if everything is fine in an older client verion..? xD Idk if you just make this up but I've heard plenty of negative opionions on this, so I kind of don't know what to say to this. Anyway, this was just a suggestion since I'm good on my current client, just for you to take note and perhaps even consider adding it
Maybe in future we have a new client, that fixes this issue in a different way, we will see
12:12
But rn just use old client if it's so horrible
Avatar
i was also against it, but after playing a bit u get used
Avatar
I just don't understand why you'd force this kind of animation setting after tw has existed with these settings for ~15 years
12:14
if it could just be optional
Avatar
How is it forced? Old clients are still useable
Avatar
It is optional, game is open source
Avatar
Avatar
Cipy29
It is optional, game is open source
yeah, I lack the programming knowledge to do so, that's why I'm suggesting it here
Avatar
Avatar
Jupstar ✪
How is it forced? Old clients are still useable
obviously it's forced in the newer client versions
Avatar
Avatar
Freezy
I just don't understand why you'd force this kind of animation setting after tw has existed with these settings for ~15 years
Because we are open to change. If we see a way to improve the game, then we evaluate if it is worth to add an option. However it is really frustrating to accommodate users who are not even willing to try it out. I think the quote "Not every change is an improvement but every improvement is a change" is really fitting. If you are not open to try change out, you are also dismissing improvement, which is not a healthy mindset for developing a game.
Avatar
Avatar
Freezy
why would I go through that process in the first place if everything is fine in an older client verion..? xD Idk if you just make this up but I've heard plenty of negative opionions on this, so I kind of don't know what to say to this. Anyway, this was just a suggestion since I'm good on my current client, just for you to take note and perhaps even consider adding it
I'm the only dev that is remotely interested in adding this option and maintaining it and I'm way too busy to work on that. So unless you convince another dev, it's unlikely this will be added
Avatar
You can convince me that the sitting animation looks too bad if that makes u happy xd
Avatar
tbh I use ghost skin so I don't see the animations 😉
Avatar
Tho it is quite funny that some people just refuse to even give it a try. This would be an interesting psych study
Avatar
Avatar
Patiga
Because we are open to change. If we see a way to improve the game, then we evaluate if it is worth to add an option. However it is really frustrating to accommodate users who are not even willing to try it out. I think the quote "Not every change is an improvement but every improvement is a change" is really fitting. If you are not open to try change out, you are also dismissing improvement, which is not a healthy mindset for developing a game.
I can understand your point for sure. It's definitely nice to see you guys making changes and trying to improve the game! Anyway, I'm not so sure if it's the right way you're taking for tw since it's a rather traditional game for most of the players and is based on its old player base. Hence, forcing such graphics settings just mustn't be, well at least in my opinion
👍 1
Avatar
Avatar
Freezy
I can understand your point for sure. It's definitely nice to see you guys making changes and trying to improve the game! Anyway, I'm not so sure if it's the right way you're taking for tw since it's a rather traditional game for most of the players and is based on its old player base. Hence, forcing such graphics settings just mustn't be, well at least in my opinion
Fwiw we have almost equal amounts of old and new players nowadays since the release in china
Avatar
Avatar
Jupstar ✪
You can convince me that the sitting animation looks too bad if that makes u happy xd
there you got a start @Learath2 :D
Avatar
Avatar
Learath2
Fwiw we have almost equal amounts of old and new players nowadays since the release in china
yeah, I took that into account but at least for the other 50 % it's that type of game
Avatar
Avatar
Freezy
there you got a start @Learath2 :D
He is not convinced enough to actually code it for you. Convince more
Avatar
For the record, I've used the new freeze bars for a long time and I still think that the stars could be validly more prefereable than the freeze bar: freeze bars only give percentage, whereas stars give exactly seconds. As far as maintanability is concered, I'd say that the old star-way is automatically enabled on fng servers? This makes it even weirder why there is no manual setting for it. (it makes sense also on dfng for example)
Avatar
Avatar
Freezy
yeah, I took that into account but at least for the other 50 % it's that type of game
And of that 50% there just isn't a significant amount of players complaining. If there were we'd also be questioning the decision ourselves
Avatar
Avatar
zogtib
For the record, I've used the new freeze bars for a long time and I still think that the stars could be validly more prefereable than the freeze bar: freeze bars only give percentage, whereas stars give exactly seconds. As far as maintanability is concered, I'd say that the old star-way is automatically enabled on fng servers? This makes it even weirder why there is no manual setting for it. (it makes sense also on dfng for example)
The stars are server sided. So fng just sends them, we don't do anything special
Avatar
Well, ok this makes sense now, thanks.
Avatar
Anyway, one day I'll give y'all stars back. Just need to finish uni first
Avatar
Avatar
Learath2
And of that 50% there just isn't a significant amount of players complaining. If there were we'd also be questioning the decision ourselves
I mentioned this earlier but I myself heard much of complains about those things. Anyway, as Patiga said earlier: Because we are open to change. If we see a way to improve the game, then we evaluate if it is worth to add an option. So if that is the case, maybe a poll on that topic could be justified?
Avatar
It's very hard to poll these things. A poll on discord would exclude the entirety of the chinese community and the people who play the game but aren't in the discord. Not only that people who aren't happy with the status quo are more likely to turn out to vote in the first place
12:37
We can do a poll if you want but it'd be more to gauge about how many people are unhappy with it, rather than to make a decision
12:39
It's hard to even find a good poll question without being leading. Polls are just hard to conduct in a proper manner
Avatar
I mean you just said that the issue was that there wasn't a significant amount of people unhappy with the change. You'd figure that out by making a poll. People who like the bars and spec animation won't be affected since it'd just be an option added. However, you'd still find out how many people are unhappy. And of that 50% there just isn't a significant amount of players complaining. If there were we'd also be questioning the decision ourselves Obviously I understand that you guys are not getting paid and do it because of fun. But I still think a poll would do its job. But as I said already, I'm just making suggestions since I'm perfectly fine on an older client version... :D
Avatar
The only problem with a poll is how it'll be perceived. I'd treat it as a headcount of people who don't like it. The people who voted however will say "f3 > f4, remov freezbar"
12:48
If we do make one, we should make it very clear we are just looking to see how many people have issues with it
Avatar
Avatar
Learath2
If we do make one, we should make it very clear we are just looking to see how many people have issues with it
I mean obviously those are the only votes that are interesting since it's only the option to add both which is in question. The current animations stay either way, so there is not really something to lose for the players who like it this way or is there?
Avatar
Avatar
Learath2
Our argument is that it's harder for us to maintain the code when there are more options This specific one can be added and I would maintain it, but I literally don't have the time to add it and none of the other devs want to spend their time adding an option for the remaining holdouts that want the stars back
afaik this is the main reason "maintainability"
Avatar
every option added increses complexity, before u had 1 path, now 2, and if they mix together, its exponential
Avatar
I think the main issue is still that there is no developer here that wants to work on it, whether there is a poll or not. The only point of a poll would be to motivate some developer to work on this and keep maintaining it
Avatar
I mean it's worth a try
13:00
why not
Avatar
Just 10 boolean options would be 1024 different combinations of options to test. Obviously some are obviously unrelated, but still goes to illustrate the issue
Avatar
this may sound absurd but, on a open source game, if you want a change more often than not you gotta lead it, become a dev, be the change
13:01
or quit like lynn kek
Avatar
I mean if that's literally the ideology you're standing up for then you'll probably lead ddnet into its death (edited)
Avatar
its the ideology of open source
13:02
no devs? dead game indeed
13:02
you are the entitled one here
13:02
asking for work for freew
13:02
if nobody wants to do it, they not at fault
Avatar
Avatar
Ryozuki
no devs? dead game indeed
it's the same if there'd be no players
Avatar
i dont see the relation here
Avatar
u told me to quit if I don't learn to code
Avatar
well money also can get you many things
Avatar
But one is scarce the other isn't. There is like 1 active dev per 400 players 😛
Avatar
my price in this case would be 500€ i wouldnt bother for less
13:04
BASEDDEPT
Avatar
But it is sadly the truth indeed. You need to motivate people to make changes for you somehow
13:04
It could be a shared goal, it could be money, it could be positive reception by a large number of users
Avatar
Avatar
Freezy
u told me to quit if I don't learn to code
i told u it wont be done 99% unless u do it urself
13:05
whether u decide to quit its ur decision
Avatar
I'm actually already motivated to do it, so that hurdle is cleared technically. You just need to wait until I have the time for it
Avatar
there u have
13:06
just wait 1 year
13:06
or smth xd
Avatar
I'm sorry to say that but I really don't see a point in having a whole discussion with you now since I think your argumentation is odd and I've already discussed it with Learath. @Ryozuki
Avatar
Avatar
Ryozuki
every option added increses complexity, before u had 1 path, now 2, and if they mix together, its exponential
can someone explain this to me? (I don't care about the change or not, just don't understand this). Isn't it just a simple if-else statement? Use old animation or new? (a bit more complex but you got my point)
Avatar
I think a poll would make a fair amount of sense based on the earlier discussion
Avatar
Avatar
Ryozuki
just wait 1 year
Until june or so I have a metric ton of studying. After that I'll have a much lighter load till september, I guess I could sneak it in there
Avatar
well this is a public chat so ill keep talking
13:08
the mute option is there
Avatar
I don't stop u from talking ofc
Avatar
just want to point out that u are dismissing a valid and realistic argument, and calling it odd
Avatar
But please note that all I made were suggestions and that I already said that I lack the programming knowledge to do so. I don't want to repeat myself too often actually
Avatar
Avatar
Devinci
can someone explain this to me? (I don't care about the change or not, just don't understand this). Isn't it just a simple if-else statement? Use old animation or new? (a bit more complex but you got my point)
The problem is the testing, these old options that aren't default and aren't used by many go neglected and over time that if statement ends up in another. Then another, then it gets split in two. Someone makes a logic error while negating some branch and you end up with very annoying bugs in deeply nested code
Avatar
Avatar
Devinci
can someone explain this to me? (I don't care about the change or not, just don't understand this). Isn't it just a simple if-else statement? Use old animation or new? (a bit more complex but you got my point)
Cyclomatic complexity is a software metric used to indicate the complexity of a program. It is a quantitative measure of the number of linearly independent paths through a program's source code. It was developed by Thomas J. McCabe, Sr. in 1976. Cyclomatic complexity is computed using the control-flow graph of the program: the nodes of the graph...
13:10
check this
13:10
the theory
Avatar
Avatar
Learath2
The problem is the testing, these old options that aren't default and aren't used by many go neglected and over time that if statement ends up in another. Then another, then it gets split in two. Someone makes a logic error while negating some branch and you end up with very annoying bugs in deeply nested code
Oh yeah okay, so the real issue here is the testing part /getting sure there are no conflicts. not really the programming one, right?
Avatar
In this specific case I'm okay with adding some complexity to make people happy as I have an idea that will be relatively low maintainance
Avatar
Avatar
Devinci
Oh yeah okay, so the real issue here is the testing part /getting sure there are no conflicts. not really the programming one, right?
testing and making sure nothing breaks is programming
Avatar
Avatar
Devinci
Oh yeah okay, so the real issue here is the testing part /getting sure there are no conflicts. not really the programming one, right?
Yeah, it's an ongoing maintainance issue, not a we cant program this its too hard issue
Avatar
okay yeah thanks ^^
Avatar
most of the burden in dev is maintenance
13:12
best code is no code
13:13
Jeff Atwood: “the best code is no code at all. Every new line of code you willingly bring into the world is code that has to be debugged, code that has to be read and understood, code that has to be supported. Every time you write new code, you should do so reluctantly, under duress, because you completely exhausted all your other options.” Robert Galanakis: “The fastest code is the code which does not run. The code easiest to maintain is the code that was never written.”
13:13
#mood #lifestyle
13:13
kek
Avatar
Honestly, yes. A set of well polished core features is much bettet than dozens of features with untested interactions. I honestly believe this level of customization should be left to forks
Avatar
delete ddnet code greenthing
Avatar
@deen is there public read access to the database?
Avatar
"an advisor's most important job is to guide you on what you should not do or attempt."
13:16
xd
Avatar
Avatar
cauldron
@deen is there public read access to the database?
you can download a daily dump
Avatar
Yes I know
Avatar
go here and scroll to bottom
13:16
but there is no public
13:16
exposing the database server means exposing it to ddos
13:16
so its a nono
Avatar
I shouldn‘t bother, I‘m just curious
Avatar
there could be a api, which would also be exposed to ddos, and thus needs to be ratelimited, which can be circunvented by a botnet, which means more ddos
Avatar
Avatar
Ryozuki
exposing the database server means exposing it to ddos
Ok, I understand tjats the reason
13:18
Couldn‘t harmful people just get the db ip in the code? Or by tracking the network traffic? Or isnt the ip enough to ddos?
13:19
Anyway, thanks.
Avatar
the ip isnt on the code
13:21
its obtained from config files
Avatar
-> and those config files are only on the game servers, which the clients have no access to
Avatar
So there is some kind of gatewayserver? (Sry i have no clue)
13:24
I mean couldnt you put on wireshark and see where the client sends data?
Avatar
you connect to the game servers, which are rented by ddnet all around the world your client can't access the server more than just 'let me play the game in the server' those are the only server that your client knows your client has no idea what those servers are doing in the background, you can't spy on someones network traffic by knowing their ip the ddnet server do have the config files with the ip of the database servers
Avatar
Anyway… I am just curious, it‘s not needed, nor I demand it.
Avatar
your client never directly interacts with the database servers
13:27
👍 you don't have to excuse yourself for being curious :)
Avatar
Avatar
Patiga
you connect to the game servers, which are rented by ddnet all around the world your client can't access the server more than just 'let me play the game in the server' those are the only server that your client knows your client has no idea what those servers are doing in the background, you can't spy on someones network traffic by knowing their ip the ddnet server do have the config files with the ip of the database servers
Aha okay. I didn‘t know the server does everything. I thought meybe the client sends directly data somewhere. Thanks 🙂
Avatar
Avatar
Ryozuki
there could be a api, which would also be exposed to ddos, and thus needs to be ratelimited, which can be circunvented by a botnet, which means more ddos
I think an api with a ratelimit would be cute. We could also service the api from a mirror of the db server just in case
Avatar
i could make that
13:30
with rust
13:31
tell me some functionality u may want
Avatar
Never a bad time to use rust 😛
Avatar
I am asking it, because I am still thinking about starting a project for a (native) mobile ddnet rank app. But it‘s just a thought, and from experience I am not really productive, so I only would ask for sonething like an api as soon as I had a nice app, that works well wirh the database dump.
Avatar
it just happens that im making some apis for other stuff so i have it fresh in mind
13:32
one of my side projects: (ffxiv related) https://market.xivhub.org/
View FFXIV market board data.
13:32
made with rust, psql, svelte
13:32
xd
13:32
idk how it looks on mobile tho
13:32
fck mobile
Avatar
Ok haha
Avatar
what do u need from the api?
Avatar
Avatar
Learath2
I think an api with a ratelimit would be cute. We could also service the api from a mirror of the db server just in case
a replica?
Avatar
Avatar
Ryozuki
what do u need from the api?
If you mean me, I‘d just need the stats like on the rank page, and url of map images
Avatar
Ryozuki are you doing web development too? I think I saw the unique clan page as a project on github or your site or somewhere. (edited)
Avatar
Anyway, I‘m just doing this mobile app as a side project to get into mobile dev. It‘s not that I want to have it used by the community, but since there is the data and user base, I think it‘s a great opportunity for a mobile app, that people might actually use.
Avatar
丿丨v丨丿 2023-01-23 14:01:31Z
Is solofng not open-source?
Avatar
it is
14:04
FNG mod for teeworlds, that advances the original FNG idea by golden spikes and other features - GitHub - Jupeyy/teeworlds-fng2-mod: FNG mod for teeworlds, that advances the original FNG idea by go...
Avatar
丿丨v丨丿 2023-01-23 14:05:56Z
Thanksheartw
🥼 1
Avatar
sv_gametype fng2solo
Avatar
丿丨v丨丿 2023-01-23 14:06:04Z
I see
Avatar
use git clone https://github.com/Jupeyy/teeworlds-fng2-mod.git --branch fng_06 if you want to run the 0.6 branch
14:07
else just git clone https://github.com/Jupeyy/teeworlds-fng2-mod.git
Avatar
Avatar
cauldron
Ryozuki are you doing web development too? I think I saw the unique clan page as a project on github or your site or somewhere. (edited)
i do lots of things
15:25
golang is a joke
Avatar
I respect the go people for experimenting with going into extremes, like plan9's everything-is-a-file
Avatar
i used to be kinda a go fan until i met rust
15:43
rust fills my needs way better
15:43
and golang hides complexity in the name of simplicity, which then comes for ur ass with bugs
Avatar
What does it hide exactly? I never really used it
15:44
But it uses GC doesn't it ? Xd
15:44
sec
15:45
My honeymoon with the Go language is extremely over. This article is going to have a different tone from what I've been posting the past year - it's a proper rant. And I alw...
15:45
@Jupstar ✪ read
15:47
filepath.Ext(".foo") returns .foo
15:47
so a file .foo has a extension of .foo
15:47
which is wrong xd
15:47
lots of things
15:48
its not a well thought lang
15:48
in the name of simplicity
15:48
Path::new(".foo").extension())
15:48
returns None
15:48
in rust
Avatar
Ez
Avatar
Avatar
Jupstar ✪
@Patiga does ur tool find alpha values > 1 ?
just remembered this message. this is not an error in twmap if that is what you mean. if you want I can write you a python script that finds those maps ^^
Avatar
Avatar
Patiga
just remembered this message. this is not an error in twmap if that is what you mean. if you want I can write you a python script that finds those maps ^^
Yes it's no error. No need anymore I already told that guy in pm to write a python script thanks ^^
Avatar
Avatar
Ryozuki
Click to see attachment 🖼️
I hate that one guy in the comments. I don't know him at all but just that one comment tells me that I could never get along with him ever.
Avatar
Avatar
Learath2
I hate that one guy in the comments. I don't know him at all but just that one comment tells me that I could never get along with him ever.
xd lol
17:41
he is based
Avatar
Especially that smug smiley at the end. I would rather lick pavement than talk to him
Avatar
Avatar
Learath2
Especially that smug smiley at the end. I would rather lick pavement than talk to him
remind me of heinrich smiles
17:44
😀
17:44
rust is better than C 😀
Avatar
worse ranked on the language of the year tho
17:44
rust with 5% popularity
Avatar
MongoDB is web scale ;]
Avatar
Avatar
Learath2
MongoDB is web scale ;]
based
17:45
im a anti nosql person
17:45
its stupid
17:45
no ACID? why u even store the data kek
17:45
've always admired the write performance of the /dev/null schema-less database, the read performance however is a little lacking, but this is offset by /dev/null's data compression ... totally unmatched!
Avatar
That smiley at the end translates to "I have a superiority complex and no matter what you might say about this I will be smiling"
17:46
Profiling someone from one comment and one smiley 😛
Avatar
are you hannibal
Avatar
Avatar
Learath2
Profiling someone from one comment and one smiley 😛
smh
Avatar
@Robyt3 @Learath2 Could you please take a look at the PR https://github.com/ddnet/ddnet/pull/6293 when you have a time, I did it on your recommendation and I need at least a little feedback, is that how you imagined it? (edited)
Avatar
I'd prefer https://github.com/ddnet/ddnet/pull/6293. We have to do some benchmarks of std::bitset with our use case to be sure.
Avatar
Ah, yes, wronk link
Avatar
what do we want to benchmark
19:31
std::bitset is static sized isnt it
Avatar
I think I like 6293 too, the only thing I'm thinking about is whether to make it a wrapper rather than a typedef and move it into base. Something like base/tl/bitmask.h where we can add convenience masks and stuff like static constexpr all/none; + a typedef bitmask<MAX_CLIENTS> CClientMask; but in principle I think 6293 is mergeable
Avatar
Avatar
Jupstar ✪
what do we want to benchmark
I guess we just want to make sure there isn't a marked regression
19:35
Mask & (1<<5) becoming O(CLIENT_MAX) would not be funny at all 😄
Avatar
did u know std::bitset::to_ullong can throw
19:45
i think that slows it
Avatar
isnt it optimized for 2^x
Avatar
You cannot just bitshift because std::bitset::to_ullong throws when any higher-order bits are nonzero)
Avatar
client dont resend GameMsgClientShowDistance when resolution changed
Avatar
I did some benchmarks where every second bit gets set and then the number of bits is counted. bitset seems to be faster than int64_t for 64 bits. For 128 bits, using int16_t is the fastest. https://quick-bench.com/q/M1r5uzGV16B--Gh_J-qtBASTT84, https://quick-bench.com/q/H-oMtGrvbPDob7TU8A1nVwBKvVU
Avatar
Avatar
Robyt3
I did some benchmarks where every second bit gets set and then the number of bits is counted. bitset seems to be faster than int64_t for 64 bits. For 128 bits, using int16_t is the fastest. https://quick-bench.com/q/M1r5uzGV16B--Gh_J-qtBASTT84, https://quick-bench.com/q/H-oMtGrvbPDob7TU8A1nVwBKvVU
The second one is quite interesting
Avatar
i find it more interesting that bitset is so highly optimized for 64bit
Avatar
Avatar
Ryozuki
did u know std::bitset::to_ullong can throw
-fno-exceptions 🙂
Avatar
fwiw technically std::bitset::count exists, that should be even faster
Avatar
btw gcc wins with 128 bits (edited)
20:24
20:24
equal
Avatar
@Jupstar ✪ can you try the count member function? that should lead to a POPCNT
Avatar
Avatar
Learath2
@Jupstar ✪ can you try the count member function? that should lead to a POPCNT
20:32
ups used Os
20:32
but probs doesnt matter anyway xD
Avatar
Did it emit a POPCNT?
Avatar
i have no idea bra
20:32
lets view asm
Avatar
The assembly tab is right there 😛
Avatar
0.45% callq 404560 <__popcountdi2@plt> mov 0x8(%rsp),%rdi movslq %eax,%rbx 0.10% callq 404560 <__popcountdi2@plt> cltq
Avatar
How on earth did that end up indirect?
20:33
Even with Os that makes no sense?
20:33
Oh maybe it's a wrapper that directs to popcnt if it is available
Avatar
@ danielkempf (edited)
20:34
ah nice discord, replacing missed @ with random people
20:34
any idea who danielkempf is?
Avatar
tater
Avatar
@Tater you here?
Avatar
Avatar
Learath2
Even with Os that makes no sense?
it also did it with ofast
Avatar
uh oh what did I do
Avatar
i believe you wanna keep your branch?
Avatar
but no idea what benchmark::DoNotOptimize(a.count()); is @Learath2 if that changes smth xd
Avatar
idk surely you don't want to merge my branch into main ddnet that sounds like a bad idea
Avatar
Avatar
Jupstar ✪
but no idea what benchmark::DoNotOptimize(a.count()); is @Learath2 if that changes smth xd
I think the benchmark::DoNotOptimize makes it so the given argument is not optimized away when it's not used otherwise. I think it should work like you have it
Avatar
so we switch to bitset bcs its not only the better solution, but also faster
20:37
epic dev moment
Avatar
I stopped playing ddnet for now so kdaniel is maintaining my client idk what the PR is for
Avatar
Avatar
Tater
idk surely you don't want to merge my branch into main ddnet that sounds like a bad idea
yes, that's why i suggested to reset the branch state to master+a single commit
Avatar
Avatar
Tater
I stopped playing ddnet for now so kdaniel is maintaining my client idk what the PR is for
lol its not u?
Avatar
if you want to keep the branch, just checkout to it, create new branch, and then reset original branch
Avatar
I'm not the one who made the pr
Avatar
do u have his discord?
20:40
can we not just delete the pr
Avatar
no, github forbids that
20:41
like a quick missclick and such a problem :d
Avatar
you wanna keep the branch?
Avatar
I think he is saying he miss clicked the PR upstream button
Avatar
ye i know
Avatar
naah i already merge it into my other branche i could delete it
Avatar
nah, dont
20:50
just reset it to ddnet/master
Avatar
why dont u do it chairn
Avatar
i cant?
Avatar
he said he already merged it anyway
20:50
usually ddnet maintainers can
Avatar
uh how?
Avatar
checkout his repo and the branch
20:51
and force push
Avatar
i don't have right to force push someone else branch, im pretty sure
20:51
that owuld be great security issue
Avatar
ahh you want me to force commit to the latest commit of ddnet/ddnet
Avatar
Avatar
Daniel
ahh you want me to force commit to the latest commit of ddnet/ddnet
git reset --hard upstream/master git push --force
Avatar
Avatar
Chairn
that owuld be great security issue
no, he forbids it
20:53
but usually u can
20:53
ofc only for open PRs
20:53
not for all branches xD
Avatar
i just stopped studying and my head is a bit on fire right now. gimme 5min i will do it 🙂 thanks for the commands but i knew how to do
20:57
There was my first pull request and i didnt want it and fucked it up. GG WP. whole teeworlds career is now over
Avatar
lmao
20:58
chairn just has weird tools
20:59
his name is chai = tea, rn = right now. so he is calm af
Avatar
Avatar
Daniel
done. 🙂
heartw
21:00
@ChillerDragon.* take note for https://github.com/ddnet/ddnet/pull/5438
Avatar
yea its kinda fucked up like origin/master is danielkempf/Tater-Client upstream/master is sjrc6/TaterClient-ddnet and upupstream/master is ddnet/ddnet like a fork of a fork thing (edited)
Avatar
Avatar
Jupstar ✪
chairn just has weird tools
nah, just those 😄 git alias lolav = log --graph --all --format=format:'%C(yellow)%h%C(auto)%d %C(white)%s %C(green)(%cr) %C(white)par %C(bold blue)%an%C(reset)' lola = log --graph --all --oneline --decorate lold = log --graph --all --format=format:'%C(yellow)%h%C(auto)%d %C(white)%s %C(green)(%cs) %C(white)par %C(bold blue)%an%C(reset)' oldest-ancestor = ! bash -c 'diff -u <(git rev-list --first-parent ${1:-master}) <(git rev-list --first-parent ${2:-HEAD}) | sed -ne "s/^ //p" | head -1' alias = ! git config --get-regexp ^alias\. | sed -e s/^alias\.// -e s/\ /\ =\ /
Avatar
pls tell me u googled it
21:08
not lold
21:08
nor lola, adapted from lolav
Avatar
@Learath2 have u ever met a crazed cloud "dev"?
22:51
like they dont even consider having a server that is not a container node
Avatar
Ofc, someone suggested lambda to me when I was implementing thumbnail grabbing from videos
22:52
Serverless people, cloud people, container people, all weirdos
22:52
"wym you don't use terraform for infra"
Avatar
Avatar
Learath2
Serverless people, cloud people, container people, all weirdos
this weirdo is calling me weirdo tho
22:53
for suggesting nixos for servers
22:53
"derpy package manager"
Avatar
well he is right, us sane people are now in the minority
Avatar
"well sure but I still don't think you should be installing packages on nodes anyway, that's what you build a new image for"
Avatar
it's docker container in docker container in docker container now
Avatar
i never said i use "nodes"
22:53
idk what ever that means lmfao
Avatar
Avatar
Learath2
it's docker container in docker container in docker container now
insane
Avatar
though ever since I started using podman a bit, I've grown to enjoy some light containers
Avatar
@Learath2 i think i cant get well with sysadmins devops
22:57
i dont like all the fancy container stuff
22:57
it seems like overhead
22:57
im sure this guy has 100 daily users
22:57
and is web scaling like google
Avatar
well containers are preeetty light, so not much to worry about tbf
Avatar
Avatar
Learath2
well containers are preeetty light, so not much to worry about tbf
but its kinda added complexity on ur setup
Avatar
Avatar
Ryozuki
but its kinda added complexity on ur setup
that is true, idk, I'm still on the fence about it but I'm less annoyed with them after working with podman
22:59
less corpo garbage, more open source
Avatar
most use docker tho
22:59
and kubernets is propietary?
22:59
also its all a fuss so u use AWS or google cloud
22:59
corpo bullshit
22:59
i dont believe in clouds
22:59
change my mind
Avatar
Most projects don't need the kind of scaling cloud offers
Avatar
wrong channel
23:59
although I don't know the right one
23:59
perhaps #questions?
Exported 350 message(s)