Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.org/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories β€” IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2024-05-29 00:00:00Z and 2024-05-30 00:00:00Z
00:49
ffd0da0 Mark some character methods const - ChillerDragon a5ca7c6 Merge pull request #8409 from ChillerDragon/pr_const_char - heinrich5991
Avatar
@TsFreddie u make games for meta quest right
Avatar
Avatar
Ryozuki
@TsFreddie u make games for meta quest right
not directly, but yes
Avatar
you know what my gf gifted me for my birthday today?
Avatar
quest 3
Avatar
don't play our game please
07:34
im playing half life alyx (edited)
Avatar
Freddie made half life?!
Avatar
im 1 year older today
07:40
closer to 30
πŸŽ‰ 1
Avatar
Avatar
Ryozuki
im playing half life alyx (edited)
good game
07:52
let me spoil it for you gman is bad lmao
Avatar
ws-client BOT 2024-05-29 08:09:18Z
<ChillerDragon> happy bday old man @Ryozuki
Avatar
Avatar
Ryozuki
im playing half life alyx (edited)
nice. i still gotta play it. my sister bought it for me last Christmas but i just have a vive and it’s not set up
08:15
ig 2 christmases ago
08:15
fuck
Avatar
happy birthday btw
Avatar
Avatar
Ryozuki
closer to 30
Jupstar βœͺ 2024-05-29 08:37:38Z
nothing to be proud of xddd but hapΟ€ birthday, may kids best
Avatar
im 24 now
Avatar
Avatar
Ryozuki
im 24 now
Jupstar βœͺ 2024-05-29 08:42:47Z
don't lie
08:42
u 40
Avatar
29/05/2000
πŸ‘€ 2
Avatar
Jupstar βœͺ 2024-05-29 08:43:10Z
don't do that to me
08:43
u arent so young
Avatar
Avatar
Ryozuki
im 24 now
eww
Avatar
is there a web map editor somewhere?
Avatar
map viewer only :v
Avatar
good enuf I guess, where is it
Avatar
https://ddnet.org/releases/ click on one of the maps (picture) (edited)
Avatar
Avatar
Ryozuki
im 24 now
γ‚’γƒͺヂン 2024-05-29 09:27:56Z
happy bday πŸŽ‚ πŸ₯³ , you are now 1 year closer to your expiration date 😈
Avatar
Avatar
Cellegen
https://ddnet.org/releases/ click on one of the maps (picture) (edited)
edge crashed, nice
Avatar
Avatar
Ryozuki
im 24 now
happy birthday, beers on me owo 🍻
Avatar
Avatar
Noa
edge crashed, nice
oof kek
Avatar
Avatar
Noa
is there a web map editor somewhere?
i mean this exists but idk more https://github.com/k2d222/twwe
Teeworlds collaborative map editor online. Contribute to k2d222/twwe development by creating an account on GitHub.
πŸ‘€ 1
Avatar
I am currently checking @Patiga s Top 5 maps which have extremly many quads, for duplicates which might be removed. Here are my findings: Mud: 0 duplicates Gummy: 1 duplicates Atomic: 0 duplicates Victory 2: Most in single layer: 8812 Total quads: 9997 Total duplicates: 4665
  • Most seem to be duplicated lights in order to make the light effect stronger, so this is by design, questionable design
  • Effect layer: seems to be an actual bug
run_world_war_zero: 0 duplicates It might make sense to add duplicate detection as a check for map submission
Avatar
Avatar
ScReeNy
i mean this exists but idk more https://github.com/k2d222/twwe
omg whoever maintains it still is a legend
09:31
dragging groups ain't a thing, all property values need to be manually assigned on the right... Other than that, it's a fully functional editor
09:33
Oh, now I see chillerdragon is a contributer
09:34
... wait wtf, is this actually an online interactive editor? meaning other users can edit it in real time??
Avatar
yes
Avatar
pepeW holy fuck, why don't we have that in the client
Avatar
yet another tool building on patigas bindings πŸ˜„
Avatar
Avatar
Cellegen
... wait wtf, is this actually an online interactive editor? meaning other users can edit it in real time??
Yeeeh but usually is broken xD
Avatar
the ui design is kind of similar to TeeUniverse
09:37
was it the inspiration? πŸ˜„
Avatar
Avatar
Vappy
Yeeeh but usually is broken xD
Jupstar βœͺ 2024-05-29 09:37:49Z
what exactly breaks if i may ask? πŸ˜„
Avatar
Avatar
Cellegen
pepeW holy fuck, why don't we have that in the client
would be pretty useless
Avatar
No nono, not at all, group mapping
Avatar
asked experienced mappers about it and they said they probably won't use it, simpler to just share the map file
Avatar
Avatar
Teero
bloat
huh?
Avatar
Avatar
Cellegen
No nono, not at all, group mapping
For the 3 people that use it. Way too much work
Avatar
with that mindset where no risk = no work ain't applied here, it's a loser mentality
Avatar
you say it would be cool to have it but would you even use it
Avatar
Avatar
Cellegen
with that mindset where no risk = no work ain't applied here, it's a loser mentality
Implement it then lmao
Avatar
no, it's a realistic mentality
Avatar
Jupstar βœͺ 2024-05-29 09:40:14Z
@Cellegen if it makes you happy to know dd-pg, which will be ddnet compatible map wise has network support
09:40
tho not as cool as the web thing.. one person hosts, the others can join
Avatar
Imagine the possibility of mappers coming together, build maps, review maps and even playtest maps using Trashmap implementation or something
Avatar
Avatar
Cellegen
Imagine the possibility of mappers coming together, build maps, review maps and even playtest maps using Trashmap implementation or something
as I said, close to nobody will use it
Avatar
Avatar
archimede67
as I said, close to nobody will use it
source?
09:41
are you a mapper?
Avatar
multiple mappers
09:41
i am yes
Avatar
Avatar
Jupstar βœͺ
what exactly breaks if i may ask? πŸ˜„
Like the connection of the IP, or the server was misconfigured dont let mapping at the same, but should be fixed now
Avatar
would you want to explore that idea?
Avatar
i already thought of it and wanted to implement it
Avatar
not like, having this exact thing I said, but just the idea of having it?
Avatar
yes
Avatar
Well, there is motivation
Avatar
yeah but it won't happen
Avatar
Avatar
Vappy
Like the connection of the IP, or the server was misconfigured dont let mapping at the same, but should be fixed now
Jupstar βœͺ 2024-05-29 09:42:20Z
ah only config stuff ok.. i thought getting out of sync or smth
Avatar
Avatar
Jupstar βœͺ
ah only config stuff ok.. i thought getting out of sync or smth
Hmmmm yeh, goes pretty fine
Avatar
I'm kinda sad, that since many people have their own roles in developing this game, nobody would rather take on the quest of making something new, unless you are a veteran like Chillerdragon who experiments stuff like that
πŸ€¦β€β™‚οΈ 1
f4 1
Avatar
Avatar
Cellegen
I'm kinda sad, that since many people have their own roles in developing this game, nobody would rather take on the quest of making something new, unless you are a veteran like Chillerdragon who experiments stuff like that
that's what you think
Avatar
Can prove you wrong x2
Avatar
So, still I don't have the authority to say what the devs can or cannot do, but this idea of having contributal interaction inside the editor may be possible and since there is a live example (https://github.com/k2d222/twwe/issues) where the foundation of the idea is there, it's not that difficult to do.
Teeworlds collaborative map editor online. Contribute to k2d222/twwe development by creating an account on GitHub.
Avatar
Avatar
Cellegen
So, still I don't have the authority to say what the devs can or cannot do, but this idea of having contributal interaction inside the editor may be possible and since there is a live example (https://github.com/k2d222/twwe/issues) where the foundation of the idea is there, it's not that difficult to do.
What exactly is not so difficult about this?
Avatar
it's not that difficult to doβ„’
Avatar
Visuals can be done, the system is there, so the only thing's missing is API between that server and the client
ww 2
Avatar
what
Avatar
it is difficult due to synchronization, on a webserver, like twwe all events are synchronized to the server, if you'd do the same thing in the editor, you would need to synchronize between two clients
09:46
talking about a client integration^
Avatar
the client only need info, so it's not client specific. syncing info needs to be done in the server
Avatar
plus twwe uses javascript language which has less restrictions than c++ and is easier to work with regarding sockets and live editing
Avatar
Jupstar βœͺ 2024-05-29 09:47:00Z
as said i already have network support
09:47
rust version
Avatar
Avatar
Jupstar βœͺ
rust version
Is it public yet? XD
Avatar
Avatar
Teero
Is it public yet? XD
Jupstar βœͺ 2024-05-29 09:47:48Z
a version from last month is
Avatar
So the only problem with this idea would be sync issue? xd
09:48
thats the only problem you throw into my head
Avatar
sync issues, and somebody actually needs to implement it, lastly the code needs to be maintained
Avatar
Jupstar βœͺ 2024-05-29 09:49:01Z
don't use or read this code. Contribute to Jupeyy/dd-pg development by creating an account on GitHub.
Avatar
this website ain't maintained, so if someone would implement it, they would contribute to it.
Avatar
Jupstar βœͺ 2024-05-29 09:49:21Z
u have to reject actions if they are "outdated" bcs the clients got out of sync
Avatar
ideally the solution will not use that "website"
Avatar
So again, sync issues. Syncing can be done in different ways. Priority order or server response system can be done
Avatar
but also this is simply a huge effort for a thing that almost nobody will use since a big chunk of mappers are solo mappers
Avatar
I suggest master slave, one hosts the map, others can edit
Avatar
Avatar
Jupstar βœͺ
u have to reject actions if they are "outdated" bcs the clients got out of sync
Yes, if new info comes in which contradict the current info sent, it needs to signal it to all other clients
Avatar
it doesn't make sense to implement something unless users want it, in this case: mappers
Avatar
Avatar
archimede67
but also this is simply a huge effort for a thing that almost nobody will use since a big chunk of mappers are solo mappers
huge effort. You literally have to make an API which handles map actions
Avatar
Avatar
Cellegen
huge effort. You literally have to make an API which handles map actions
you really don't understand
Avatar
Avatar
AssassinTee
I suggest master slave, one hosts the map, others can edit
port forwarding just for mapping together? idk
Avatar
have the client recieve the data, have the API make it understandable, read actions, apply actions
Avatar
if it's so simple why don't you go ahead and implement it (edited)
Avatar
same from client: Send the actions through the API, API sends it to the server, server calculates actions, back the step 1
Avatar
wait, can't filesyncing be done between users with other software? patigas twmap-edit tool can convert maps into directory structures, and then you can sync them instead of the map/client, this could be done in a client patch
Avatar
Avatar
archimede67
if it's so simple why don't you go ahead and implement it (edited)
Lame response
what 3
Avatar
no
Avatar
Avatar
Teero
port forwarding just for mapping together? idk
a lot of mappers host a local server anyway, I do at least
Avatar
Jupstar βœͺ 2024-05-29 09:52:52Z
@Cellegen it's not completely trivial
Avatar
Yes, literally anyone in this team can implement it, I am the one who lays down the foundation of the idea and the implementation of the system
09:53
I know cuz you devs are amazing
09:53
I cant think of anyone who cannot code it off.
Avatar
Jupstar βœͺ 2024-05-29 09:53:44Z
as i said:
  • u need to make sure to not do out of bounds stuff (so lot of hardening vs no network)
  • u need to handle all actions through action events (e.g. undo/redo managers) no other way
f3 1
Avatar
Avatar
Cellegen
So, still I don't have the authority to say what the devs can or cannot do, but this idea of having contributal interaction inside the editor may be possible and since there is a live example (https://github.com/k2d222/twwe/issues) where the foundation of the idea is there, it's not that difficult to do.
did you write that? πŸ™‚
09:53
the project
Avatar
Avatar
heinrich5991
did you write that? πŸ™‚
Yes, I don't think I sent off malicious intent from it justatest
09:55
All in all, I only think about the developers pushing this idea away, because they officialize their opinions as a fact?
09:55
Like would you not rather make a poll about this idea to the community?
Avatar
Having an idea is fine, but having a use for that idea is better
09:55
yeah
Avatar
You know, cuz since it's a community driven game, would make sense (edited)
Avatar
Avatar
Cellegen
Yes, I don't think I sent off malicious intent from it justatest
sorry, I mean: did you implement this project?
Avatar
Avatar
Cellegen
Like would you not rather make a poll about this idea to the community?
as I said, I asked a few experienced mappers about it and said it would be useless
Avatar
Avatar
heinrich5991
sorry, I mean: did you implement this project?
I have a prototype map editor project in Godot, where handling Object is similar to handling Quads and Tiles, yet cannot read data from tw maps
09:56
I have my own experience regarding handling data
Avatar
now we could make a poll in mapping channel to gather more opinions (edited)
Avatar
And I think, if I could ever read map data inside my own editor, I could make an interface for online contribution
Avatar
I wouldn't do a poll unless someone wants to implement it
pepeW 1
f3 2
Avatar
Avatar
Cellegen
I have a prototype map editor project in Godot, where handling Object is similar to handling Quads and Tiles, yet cannot read data from tw maps
why can't you read data from tw maps? There are python bindings for doing this, also the map file format is fully documented
Avatar
Avatar
heinrich5991
I wouldn't do a poll unless someone wants to implement it
I would
Avatar
@Cellegen smth like that doesn't belong in the client
09:57
too much bloat
Avatar
but yeah
Avatar
rather make an external tool that can sync multiple mappers + a live server all at once
Avatar
Avatar
heinrich5991
I wouldn't do a poll unless someone wants to implement it
because otherwise people will be disappointed
Avatar
I mean, the website version is there I give it that
09:58
it's amazing really
Avatar
Avatar
louis
too much bloat
I find the word "bloat" too vague
Avatar
Jupstar βœͺ 2024-05-29 09:58:24Z
i havent seen the source code of the web version, but is it really robust?
Avatar
unnecessary maintenance for little reward
Avatar
thanks
09:58
I think cooperative map editors are cool. especially when they're live on the server
Avatar
Avatar
Jupstar βœͺ
i havent seen the source code of the web version, but is it really robust?
Teeworlds collaborative map editor online. Contribute to k2d222/twwe development by creating an account on GitHub.
Avatar
I'd guess that there's demand for this, even if mappers don't know it yet
Avatar
Jupstar βœͺ 2024-05-29 09:59:18Z
that's not my question
Avatar
Jupstar βœͺ 2024-05-29 09:59:27Z
getting out of sync is a matter of timing
Avatar
or matter of restricting more actions
Avatar
the thing needs to have some sort of synchronization model is what @Jupstar βœͺ is saying
Avatar
i also think in-game map editing is better explored through something like #7666
Avatar
Not sure how exactly it should look like. I quickly came up with a poc that looks like this NetMessageEx("Sv_ModifyTile", "modify-tile@netmsg.ddnet.org", [ NetIntAny("m_X&q...
Avatar
Avatar
Jupstar βœͺ
getting out of sync is a matter of timing
I think it's okay as long as you don't have collisions
Avatar
and a way of reconciling different colliding steps
10:00
e.g. by dropping htem
Avatar
If the client would not be compromised to other developers (aka using it as intended), you can restrict any further actions, till the current action is sent to the server and verifies it
Avatar
Avatar
AssassinTee
I think it's okay as long as you don't have collisions
Jupstar βœͺ 2024-05-29 10:00:39Z
yes, that's what i spent a lot of time for, and this is also the part i'd consider not trivial
10:00
search for anyhow::ensure!
10:00
it's used extremly often
10:01
additionally ? operator
10:01
basically it must be panic free
10:01
and in cpp it's really easy to oversee such stuff IMO
Avatar
even if you have a collision, just deciding for one in live editing might be enough, since it's a mapping process, if it's wrong it can be fixed anyway
Avatar
Jupstar βœͺ 2024-05-29 10:02:47Z
yes, but that's the problem
10:02
u have to reject the action
Avatar
"just deciding for one" is already a hard problem
10:03
because you'll have to revert actions that are not yet synced with the server
Avatar
I think now I get it
10:04
that's where we are back to the history, if you reject an action, all following actions should be rejected as well (from a single client) (edited)
10:04
ofc, this requries to have a history with all actions
Avatar
Jupstar βœͺ 2024-05-29 10:04:40Z
if two ppl apply a tile brush it's ofc basically impossible to decide.. but if a third client also makes the layer smaller in size at the same time, it's very important to not crash πŸ˜„
boo 1
Avatar
Avatar
heinrich5991
because you'll have to revert actions that are not yet synced with the server
or just have a "wait for response" indicator to the client whenever their action is being handled
10:05
priority should be given to the first action, then detecting the compromised action, give a "waiting for response" indicator
Avatar
Avatar
Cellegen
or just have a "wait for response" indicator to the client whenever their action is being handled
that's introducing edit latency, likely too long
Avatar
Have a cooldown on how many actions you can do
Avatar
you'll have to do this with every action, because you can't know that the other party also just started an action
Avatar
Avatar
Cellegen
Have a cooldown on how many actions you can do
with in-app purchases for more actions?
Avatar
Jupstar βœͺ 2024-05-29 10:06:23Z
😬
Avatar
not sure why limiting the number of actions helps with the synchronization
Avatar
nono, like each action is under a certain coodown
Avatar
Jupstar βœͺ 2024-05-29 10:06:47Z
so if u draw a tile brush
Avatar
so no spamming
Avatar
Jupstar βœͺ 2024-05-29 10:06:50Z
how do u imagine it?
10:06
if its not instant it sucks already
Avatar
Avatar
Jupstar βœͺ
if two ppl apply a tile brush it's ofc basically impossible to decide.. but if a third client also makes the layer smaller in size at the same time, it's very important to not crash πŸ˜„
try: stuff except: pass 😁
Avatar
Jupstar βœͺ 2024-05-29 10:07:12Z
so u can probably better accept a collision but make sure to not go out of bounds somehow
Avatar
If I draw with a tile brush, the moment my mouse is unpressed, the action occours
Avatar
holding on collisions might be a good approach, because colissions shouldn't be too likely when mapping with multiple people (edited)
Avatar
It also needs a transparent tile indicator, that you intend to edit there
10:08
wait for server response, then if it's not compromised, you have successfully painted it.
10:08
if it's indeed compromised, you have to edit your action, then resend it (edited)
10:08
The action should not disappear, unless the user chooses it to, or the server accepted it
Avatar
Avatar
Cellegen
if it's indeed compromised, you have to edit your action, then resend it (edited)
I'd revert it for that client to the uncompromised state, he might need to redo some stuff, but this should only be the last seconds
Avatar
@Ryozuki Happy Birthday little one
Avatar
We do have that Undo / redo action inside the client no?
10:09
similar to that I guess.
Avatar
Avatar
Cellegen
The action should not disappear, unless the user chooses it to, or the server accepted it
now that's even more complicated. not only does the server need to send a rejection, but the client somehow needs to hold potential future changes as well, trying to merge them
Avatar
Avatar
Cellegen
wait for server response, then if it's not compromised, you have successfully painted it.
Jupstar βœͺ 2024-05-29 10:09:42Z
this is super hard xD
Avatar
exactly
Avatar
Avatar
Jupstar βœͺ
this is super hard xD
Yes, cuz each compromise will need to check all the possibilities on what to do, I know that
10:10
It wasn't the factor however
Avatar
Jupstar βœͺ 2024-05-29 10:10:25Z
realistically we can assume collisions are not too likely. but adding a merge logic is really insane (edited)
10:10
so the easiest realistic thing is to accept that one player might overwrite the other persons action
10:11
if they are currently editing the exact same thing for whatever reason
Avatar
agreed
10:11
the nature of mapping is, that one can fix this afterwards anyway
Avatar
no, no merge logic, but just allow the user to still tinkle the action indicator (like as you draw with the paint brush or paste in a quad, resize it etc, the action is semi transparent, indicating the user that that's where they intend the action to be). They should still be able to tinker it, if it's compromised, then resend the action
10:12
merging indeed sounds chaotic
10:12
It's all user priority in action
Avatar
merge logic could e.g. mean: if I edit the top left corner of the map and you the bottom right one, we can merge the edits since they don't affect the same place in the map
10:13
this example would be useful for mapping
Avatar
I guess, if no compromises happen, then merging should be allowed
10:14
compromise could mean that whenever an action (with the same group, same layer, same data) is being changed
10:15
All in all, the image upload or any object (tile or quad) adding should not be considered a compromise
10:15
only if you edit / remove any value or delete an object (edited)
Avatar
yes. and the code that tries to do all that is quite hard
Avatar
Placing tiles with a brush is also considered as an edit. You change the base values of each tile being affected, to that one time selected
Avatar
Avatar
heinrich5991
yes. and the code that tries to do all that is quite hard
Without foundation of the system being layed out in front of you, ofc I wouldn't agree any less
10:17
But someone who already has it infront of him can confidently say, that it's possible, idk
10:17
would you call him an idiot or a crazy person doing so?
10:19
Well, I got to experience this website, I'll surely explore it further and maybe use that idea into my own editor, thanks all who mentioned the actual problems of this idea, now I have a system with further details (edited)
Avatar
Avatar
Cellegen
would you call him an idiot or a crazy person doing so?
No, not an idiot, just passionate, I'd admire it. Do what you please, if others benefit from it, it's always a plus
Avatar
thank you owo
10:21
Nowadays, I try to complain without any bullshit to be thrown, but actually understanding the problem and find solutions for it... did I do it like this? (edited)
10:21
Or did I talk bullshit all the way through?
Avatar
Avatar
Cellegen
Or did I talk bullshit all the way through?
Jupstar βœͺ 2024-05-29 10:22:20Z
no, it's totally fine if u try out your solutions
10:22
but since u wanted them in ddnet, and ddnet maintainers must maintain them, u gotta accept that ddnet might not want something too hard (especially hard to understand)
Avatar
Well in order to do that, I have to read tw maps data kek
Avatar
Avatar
Cellegen
Well in order to do that, I have to read tw maps data kek
Jupstar βœͺ 2024-05-29 10:23:06Z
do you plan to use patigas lib for that? πŸ˜„
Avatar
Avatar
Cellegen
Well in order to do that, I have to read tw maps data kek
as I wrote above, the file format is documented, there are python bindings for it
Avatar
Yes, absolutely
10:23
any idea is good
Avatar
I wouldn't go over the file format for a client integration, you'd need an API to send and receive actions
Avatar
I would rather want to have an importer script
10:25
which turns map data into scene data (since it's object oriented)
Avatar
Jupstar βœͺ 2024-05-29 10:26:35Z
have u asked patiga about his godot map renderer already now?
10:26
i mean that's basically what u want anyway isnt it
10:29
leak
Avatar
Avatar
Jupstar βœͺ
have u asked patiga about his godot map renderer already now?
Renderer for Teeworlds and DDNet maps (more to come)
Avatar
Avatar
AssassinTee
Jupstar βœͺ 2024-05-29 10:30:42Z
he also wrote one for godot, which is unrelated afaik
10:31
then this xd
Avatar
SSG: Π°Ρ€Ρ‚Ρ‘ΠΌ 2024-05-29 10:31:58Z
ΠΌΠ΅Ρ‚Ρ‚ ю
Avatar
maybe even the blender add on xD
Avatar
Jupstar βœͺ 2024-05-29 10:32:25Z
i tried his godot project too, looks like the one above πŸ˜„
Avatar
Jupstar βœͺ 2024-05-29 10:32:35Z
@Cellegen
Avatar
❀️
Avatar
Presses automap, all clients desync xD
Avatar
imagine godot
Avatar
Jupstar βœͺ 2024-05-29 10:48:21Z
stayline
Avatar
how did valve get almost 1k concurrent player during a closed alpha test
10:50
justatest
10:50
who are they asking to play tests (edited)
Avatar
Avatar
TsFreddie
who are they asking to play tests (edited)
prob other companies, or maybe Valve is just that fucking massive lol
Avatar
I think it's about time we implement some more spam detection, doesn't have to be extremely smart
12:41
I was playing tutorial a couple days ago, someone joined, spammed a couple swastikas, left. Absolutely no way for a moderator to moderate that, it has to be automated
Avatar
Avatar
Learath2
I was playing tutorial a couple days ago, someone joined, spammed a couple swastikas, left. Absolutely no way for a moderator to moderate that, it has to be automated
maybe filtering special characters could be a good start
Avatar
what are "special characters" here?
12:46
@Learath2 spam detection would probably benefit from connecting all the game servers πŸ˜›
Avatar
Avatar
heinrich5991
@Learath2 spam detection would probably benefit from connecting all the game servers πŸ˜›
That was one of the things I was thinking about, if I could wire all the chat messages back to a central location that would make things so much easier
Avatar
do you remember the result of our discussion?
Avatar
but then it's asynchronous, so it would also require implementing a "chat-retraction" message (opt-out so people that have free speech concerns can just opt-in to receiving spam)
Avatar
Avatar
heinrich5991
do you remember the result of our discussion?
Yes, we ended up saying the only usecase we have for it can just be implemented as a standard http endpoint + a tcp socket for streaming updates
Avatar
I see
Avatar
@Learath2 summarizing our discussion from some time ago:
we ended up saying the only usecase we have for it can just be implemented as a standard http endpoint + a tcp socket for streaming updates
Avatar
Avatar
Cellegen
maybe filtering special characters could be a good start
I was thinking something like a "cost" based approach. Each player would have some amount of credits. Each character would have a cost associated with it and you'd only have a certain amount of credits available, credits would be regenerated at some rate (up to a maximum). Repeated uses of any given character would have increased cost (Perhaps exponentially increasing in case of anything that belongs to unicode S, P or M category). Some characters would have infinite cost (effectively instant mute). Exact same messages would have increased cost too (I was thinking linear).
13:06
Something that is on the edge of dumb and smart, yet cheap enough to calculate with not much memory or performance overhead
Avatar
I see, an effective, yet weird cost punish system
13:08
For starters, we can give each symbol a unique value based off of index value or something,
Avatar
Avatar
Learath2
I was thinking something like a "cost" based approach. Each player would have some amount of credits. Each character would have a cost associated with it and you'd only have a certain amount of credits available, credits would be regenerated at some rate (up to a maximum). Repeated uses of any given character would have increased cost (Perhaps exponentially increasing in case of anything that belongs to unicode S, P or M category). Some characters would have infinite cost (effectively instant mute). Exact same messages would have increased cost too (I was thinking linear).
sounds complicated enough that lazy spammers might get caught
Avatar
then, read each symbol. for each symbol in the sent message, if the previous symbol was different, add those values together. otherwise, multiply those values
13:09
if someone is spamming the same symbols, they get insane amounts, resulting in a spam detection
13:10
It's only effective against messages that only contain one symbol
Avatar
Avatar
heinrich5991
sounds complicated enough that lazy spammers might get caught
And flexible enough that we can make it more annoying by messing around with the parameters
13:33
But I feel at the very least https://discord.com/channels/252358080522747904/745926398140612678/1245351615100096644 shouldn't be the experience people get
Avatar
is it possible to put in multiple strings in the "exclude" filter from the server browser?
13:56
like "novice; solo" (this doesnt work) (edited)
13:59
and also the "search" filter for that matter i guess
Avatar
Avatar
Iza
like "novice; solo" (this doesnt work) (edited)
Jupstar βœͺ 2024-05-29 13:59:29Z
remove the space
13:59
then it works
Avatar
Avatar
Jupstar βœͺ
remove the space
oh thx
14:00
maybe this should be displayed as a tooltip
Avatar
Jupstar βœͺ 2024-05-29 14:00:51Z
u can create an issue to trim the search strings i guess
14:01
i dunno when u ever want a space in front or end
Avatar
idk i thought its normal to have space after ; since that's how you bind multiple things
Avatar
Jupstar βœͺ 2024-05-29 14:02:40Z
yeah technically u could argue the space must be gone, but for user friendliness i guess trimming makes sense here
14:03
you are not the first to add a space here ^^
Avatar
well should i create an issue?
Avatar
Jupstar βœͺ 2024-05-29 14:03:47Z
i'd do it
14:03
so yes
14:03
do it xd
Avatar
fun-fact crc32("gnu") == crc32("codding") πŸ˜„
troll 1
Avatar
For user friendliness, multiple strings in the search & exclude filters should be trimmed (for example if there's a space inbetween) Also there should be a tooltip somewhere near the filters that shortly explains how to put in multiple filters and maybe also how to use it generally, for example "Example of usage: "novice; solo; multeasymap" etc".
Avatar
Avatar
Learath2
fun-fact crc32("gnu") == crc32("codding") πŸ˜„
which crc32?
Avatar
Avatar
heinrich5991
which crc32?
crc32 the old one 0x04C11DB7 poly
Avatar
For crc32c I found crc32c("cuke") == crc32c("nativeness") and that's all in this dictionary for 176k english words
Avatar
what are you doing? ^^
Avatar
Avatar
GitHub
Click to see attachment πŸ–ΌοΈ
what abt every time you add a semicolon it just creates a lil box around the previous word
Avatar
Avatar
louis
what abt every time you add a semicolon it just creates a lil box around the previous word
Jupstar βœͺ 2024-05-29 14:40:03Z
or confetti
f3 1
Avatar
Avatar
heinrich5991
what are you doing? ^^
I was thinking around about some spam detection, making it a little fuzzy by xoring together crcs of individual words, got curious how bad crc is as a hash function for english words
14:43
(surprise, it's not awful at all)
14:46
I've also learned some weird things I've never heard of before, like w-shingling and Jaccard coefficient
Avatar
Jupstar βœͺ 2024-05-29 17:05:07Z
who added me to codecov newsletter xddd
17:05
did every ddnet member receive it?
Avatar
the meta quest 3 is good
17:06
time to make ddnet vr
Avatar
Avatar
Ryozuki
time to make ddnet vr
@TsFreddie gogo! new project UwU owo (edited)
Avatar
Avatar
Jupstar βœͺ
did every ddnet member receive it?
yeah, I also got it, looks like everyone gets it regardless of mail settings because it's a legal notice
Avatar
Jupstar βœͺ 2024-05-29 17:20:05Z
but i didnt even add my email anywhere xD
Avatar
Avatar
Jupstar βœͺ
did every ddnet member receive it?
I didn't get one I think
Avatar
What are quads and how should I translate them?
Avatar
Avatar
egyt
What are quads and how should I translate them?
Quad = Quadrangle. I wouldn't translate it since everyone uses the term Quad. Only transliterate, e.g. ΠΊΠ²Π°Π΄Ρ‹ in Russian
Avatar
Avatar
Jupstar βœͺ
did every ddnet member receive it?
ye
Avatar
Can I expect anyone here to be at GPN22 this weekend?
Avatar
Other Slavic translations use "quads" too. Oh well.
Replying to @Robyt3 Quad = Quadrangle. I wouldn't translate it since everyone uses the term …
Avatar
Both of the selected tile layers have default color (white) but when selecting both at the same time, the color picker shows transparent black instead: !image Would be more convenient if the popup for editing multiple layers would automatically use the current color of the layers if they match or if it simply always used the color of the first layer instead of defaulting to transparent.
Avatar
Avatar
Robyt3
yeah, I also got it, looks like everyone gets it regardless of mail settings because it's a legal notice
didn't get such a mail
Avatar
any rust gods, is there a way to make this piece of something work with lifetimes? https://gist.github.com/MilkeeyCat/c283438958aab52a432ec45316fe38d2 pepeW
Avatar
Avatar
MilkeeyCat
any rust gods, is there a way to make this piece of something work with lifetimes? https://gist.github.com/MilkeeyCat/c283438958aab52a432ec45316fe38d2 pepeW
Not without some other approach. You could for example return a type with which you can access that element (in this case a simple index)
Avatar
that's what i had before xd
Avatar
it would help if test wouldn't need a mutable reference
Avatar
they all have to be mutable sadly feelsbadman
21:58
ill probably go back to indexes
21:59
thanks for da answer anyways heartw
Avatar
I'm not sure what you're trying to achieve. e.g. I don't understand why byte/dword have a string typ
Avatar
Avatar
heinrich5991
I'm not sure what you're trying to achieve. e.g. I don't understand why byte/dword have a string typ
if you want to make your day worse i can send link where it's used
Avatar
Avatar
MilkeeyCat
if you want to make your day worse i can send link where it's used
link pls
Avatar
im going to sleep, see you tomorrow :p
Avatar
could Register be an enum, maybe?
Avatar
Avatar
MilkeeyCat
any rust gods, is there a way to make this piece of something work with lifetimes? https://gist.github.com/MilkeeyCat/c283438958aab52a432ec45316fe38d2 pepeW
What is the issue anyway?
Avatar
Ah, the double mutable borrow
Avatar
This is one of the things that annoy me the most about rust, non lexical lifetimes made it a bit better but it still annoys me so much
Exported 347 message(s)