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-12 00:00:00Z and 2023-01-13 00:00:00Z
Avatar
Avatar
I.K.U
why doesnt this get voted?
is there a difference in the ui look between a veto vote and a yes/no vote? (edited)
Avatar
if a veto voter hasn't voted, the green bar flows over the middle section to the right where normally it would've already passed the vote
01:20
but i guess that only tells you that atleast 1 veto voter hasnt voted, i believe no indication otherwise (veto no = instant vote fail, veto yes = same as others)
Avatar
no i mean- if its a veto vote why is there still a little tick in the middle
Avatar
Avatar
Learath2
You can try to reverse engineer noby's verified client
go for it
03:17
disclaimer: i had to make it in 20min when i was really high and they needed it for a bw tournament
issou 3
03:18
but ill send you the executable if you want @Ryozuki
Avatar
On windows it never worked in Fullscreen
nouis 1
10:08
He should just use windowed Fullscreen or tell Microsoft to finally fix this ridiculous limitation xd
Avatar
In the past you had to advise to set vulkan to 1-2 guys a day, now you advising to set opengl to 4-5 guys a day, was it rly worth it? monkalaugh
Avatar
Tbh I feel like it went pretty well actually
10:10
We had like 10 total reports?
10:10
I expected more
Avatar
Btw is it possible to set default renderer depending on os? I feel like opengl runs better on windows and vulkan on linux
10:13
monkalaugh
Avatar
How so? Opengl has 1trillion problems on windows
10:13
Or do u mean performance wise
10:14
But even there many ppl said they have far better frame times under windows
Avatar
Avatar
Jupstar ✪
How so? Opengl has 1trillion problems on windows
I used opengl for 3 years and didnt have any issues except white textures on 2k skins lol
Avatar
What problem did u encounter with VK except Ur broken setup
Avatar
Let's look at others' problems as well, vulkan dont work with IME and fullscreen, it doesnt have that lazy loading thing that causes vram crashes
Avatar
Ime also doesn't work with opengl
10:18
If vram is out vram is out. Just because the driver has a workaround didn't change the fact that it's used incorrectly
10:20
If we want to unload unused textures we need to change the higher level components. If u allocate 64gb ram and then wonder that the kernel struggles to swap the memory that also sounds like a workaround rather than a wanted feature
10:20
At least for games
Avatar
Many people would prefer 'incorrect' use of memory and working game instead of unoptimised but correct memory use
Avatar
I disagree strongly as developer tho. Nothing is more anoying than ppl complain about lags because of hidden features like this
10:24
Almost impossible to test
10:25
I agree that a crash sucks. But I'd prefer we actual fix these problems
10:25
Instead of hiding them
Avatar
You are forcing people to use 'proper' vram management without fixing actual problems
Avatar
And u want to hide actual problems instead of fixing actual problems:)
Avatar
I appreciate fixing problems, but you prefer showing them first?
Avatar
To me it's not clear that the open gl drivers to under the hood
10:29
So yes
10:29
It's not even clear if all drivers do that
10:30
And loading 100mb into vram can always create lags on hardware that is not designed for it
Avatar
That's user issue, if you didn't fix excessive vram usage and forcing user to vulkan that definitely cant smooth this issue with memory, that's weird
Avatar
And then he complains in #bugs Anyway this is a endless spiral
10:34
There are pros and cons
Avatar
Yeah
10:36
So when vram fixes are planned to release troll
10:42
For example fokko's multi layer entities, you added feature that doubles the vram usage to make one feature in one mod work, fokko have fclient, clients that make more comfortable experience for one single mod is usual thing
Avatar
Yes I dislike that too
10:45
But if u don't use high resolution textures it should: tm: not be a problem
Avatar
It's technically not only for fokkonaut's mod but it is also the correct way to do it
11:13
The only way you could avoid it would be to explicitly say that changing entities ingame isn't allowed
11:16
I wouldn't really expect much change to the behaviour on running out of vram. We have byt one gfxguy. Unless you convince him that it'd be worth dropping some performance for it it's not happening
11:17
s/byt/but/
Avatar
I just like if stuff is predictable
11:29
Or do you suddenly like Ur browser using 2000tb ram without u understanding why
11:30
But I offer you to replace me with an ai that is better at testing and finding out random problems, then I can do holidays
Avatar
Avatar
Anime.pdf
For example fokko's multi layer entities, you added feature that doubles the vram usage to make one feature in one mod work, fokko have fclient, clients that make more comfortable experience for one single mod is usual thing
?
11:55
1. what is multi layer entities? 2. F-Client is not made for F-DDrace. It's just a normal 0.7 client with (for me) the most important DDNet client functions.
Avatar
He means the ability to swap out entities on fly
Avatar
Ah, but that works for all mods
Avatar
But it's not really nice
Avatar
On fly you mean while being ingame?
Avatar
A mod should simply have a static size of supported tiles
Avatar
Avatar
fokkonaut
On fly you mean while being ingame?
While on server yes
Avatar
I didnt follow the conversation, what is the issue? :D
11:57
Overlapping entities?
Avatar
We can either rebuild the tile map or the entities texture and that costs performance or vram
Avatar
Let's just rebuild it? It's an edge case, performance being worse in an edge case isn't really that bad?
Avatar
Yes I was in favor of that. But can't remember Heinrichs argument against it
12:34
Or if fokko required hot swap
Avatar
Hm, can't we rebuild it on the run?
12:34
It will lag but I don't think that's an issue with how fokkonaut uses it
Avatar
Then it's fine. I still can't remember what are the arguments against this tho. But yeah depending on map size it might take a bit
12:36
But even better would be to not needing a hack like this
Avatar
I think the only sane reason to change entities whime ingame would be those minigame mods with many mods in one
Avatar
Isn't there a better solution
12:36
Can't they use different layers
Avatar
In that case changing the entities happens on a minigame change, so it shouldn't matter that there is a little loading lag
Avatar
Anyway I have no time
Avatar
Avatar
Jupstar ✪
Can't they use different layers
I've been wanting to do this for decades. The game layer would be the vanilla layer and mods would have their own layers for their tiles, with uuids identifying them
12:38
for a decade*
Avatar
Epic
Avatar
One day
Avatar
But damn we build per layer rn anyway
12:40
Sucks hard
Avatar
game@layers.ddnet.tw, front@layers.ddnet.tw, tele@layers.ddnet.tw, switch@layers.ddnet.tw
Avatar
Tune layer with it one tile xdddd
12:41
Worth it
Avatar
email me at game@layers.ddnet.tw
📧 2
Avatar
I dont even use ingame entities change on my server?
13:39
@Learath2 @Jupstar ✪ who said that
13:39
I provide one set of entities which will be used in F-DDrace
Avatar
Avatar
fokkonaut
@Learath2 @Jupstar ✪ who said that
That's the reason I remember we did the layers
Avatar
What layers exactly... Lol
13:40
?
Avatar
I don't remember exactly what it was we did, but we had to render the entities overlay twice for some reason
Avatar
Never heard of that, and shouldnt be my cause :D
Avatar
Wait until j* gets back he can tell you what it was
Avatar
I dont do anything with entities nor do I swap them ingame
Avatar
Avatar
fokkonaut
Never heard of that, and shouldnt be my cause :D
U wanted entity masking
13:45
BCS Ur mod required to show unsupported tiles
Avatar
Ah, well yea I mean thats a thing that will be required for any mod
13:45
thats based on ddnet
Avatar
And BCS our network code is slow and stupid we only know Ur mod onfly
13:45
Iirc
13:46
Well I don't want to play any kind of blame game. But we need a better solution
Avatar
Oke xd
Avatar
It sucks that we always carry around stupid vanilla problems around with us xd
Avatar
how is this vanilla problem
Avatar
It doesn't send a mod I'd first time u connect
Avatar
Unsupported tiles?
Avatar
We use Gameinfo or smth
Avatar
Avatar
Jupstar ✪
It doesn't send a mod I'd first time u connect
?
Avatar
They are after the map is loaded
Avatar
Avatar
Learath2
Unsupported tiles?
Ddnet client invalidates tiles that are not being used, these that cant be placed from editor with UNUSED button off
13:48
And therefore it didnt show any custom entities, iirc
Avatar
E.g. if u join fng it shows ddrace tiles for short Moment
Avatar
Avatar
Jupstar ✪
E.g. if u join fng it shows ddrace tiles for short Moment
oh, yes, thats cuz the gameinfo tells the client which entities to use, yes
Avatar
This was only solved by delaying the rendering
Avatar
Just wait a few snapshots and them start rendering
Avatar
Avatar
fokkonaut
oh, yes, thats cuz the gameinfo tells the client which entities to use, yes
Yes and this info should be available at map load
13:49
no
Avatar
Everything else simply sucks
Avatar
i think it was made for dynamic changes
13:49
if some gamemode needa that
13:49
needs*
Avatar
Why would u want this instead of an own layer dedicated to what u need
Avatar
idk, i dont use it anyways
Avatar
To me this is a bs solution but it's noones direct fault. Except that we desperately want to not improve net code
Avatar
Can you tell me exactly what is happening?
Avatar
Connect Load map Get game into (Load map or change entities)
13:53
Info
Avatar
And the issue is that we don't know the gamemode before gameinfo. The entities overlay is built at map load. I follow you so far
13:56
Why do we double our vram usage due to this?
13:57
("Double" i know it's not actually double. You know what I mean)
Avatar
Good question. We have unmasked and mask entities
14:00
I thought it's BCS of foxxos mos
14:00
Mod
14:00
But apparently not
Avatar
So wait, we don't delay the building of entities until the gameinfo arrives?
Avatar
In theory we do now
14:03
But it can be changed on fly
14:03
Anyway let's just remove it
Avatar
Ok, then why do we need both masked and unmasked ones? If we get a new gameinfo with new entities, won't we just rebuild?
Avatar
I don't think so. But anyway this won't solve the problem anyway
14:05
We don't double
14:05
We multi by eight
14:06
Before we changed the few affecting tiles that don't fit ddnet.png Now we build one texture per layer
14:06
But since Heinrich didn't want to rely on server browser info, like we did before
14:06
It now sucks
Avatar
Can't we just "merge" the texture as we go?
14:07
Or keep rendering onto one texture?
Avatar
We can merge almost all probably
14:08
And we should do that xd
Avatar
That would help a bit with the vram shortage, right?
Avatar
If someone uses high res entities yes
Avatar
I haven't checked how large these textures we build are, but I can imagine them getting massive with the huge maps
Avatar
Question is ofc still. Why even use them xd
Avatar
Avatar
Jupstar ✪
If someone uses high res entities yes
Or lower vram with a big map. Eitherway, is there any value to keeping all the layers as separate textures?
Avatar
How do u want to lower it?
14:11
Dynamic upload?
Avatar
Avatar
Jupstar ✪
How do u want to lower it?
I meant as in low vram with big map
14:11
If someone doesnt have 4k entities but they have low vram and try to load a massive map, they might also run out, no?
Avatar
Avatar
Learath2
Or lower vram with a big map. Eitherway, is there any value to keeping all the layers as separate textures?
Dunno create issue ask Heinrich
14:12
It's his idea, I only implemented it
14:12
And back then I defs want thinking about this
14:12
Wasn't
Avatar
Eh. I think I understand the issue mostly. I guess I'll just dig thru the logs when I get to italy to see what the original discussion was
Avatar
I guess idiomatic wise it's a nice solution
14:16
1 layer has 1 texture
14:16
Overhead is simply too insane
14:17
Tune layer has literally 1 tile xddd
Avatar
Rafael Fontenelle 2023-01-12 14:18:31Z
I'm would like to add an entry for map_create_pixelart tool in "Extra tools" page in DDNet Wiki, but I'm having hard to describe what it tries to accomplish due to my little knowledge of C++. Can someone explain it, add examples? All explanation I have is the PR that adds it https://github.com/ddnet/ddnet/pull/5766
works as shown in screenshot below: Usage: map_create_pixelart <image.png> <img_pixelsize> <input_map> <layergroup_id> <layer_id> <pos_x> <pos_y> <quad...
Avatar
What I don't understand is the benefit of keeping the textures separate. I don't remember what heinrich wanted exactly so I'll just have to dig
Avatar
Avatar
Learath2
What I don't understand is the benefit of keeping the textures separate. I don't remember what heinrich wanted exactly so I'll just have to dig
At least 1 tile has to be seperated
14:20
BCS original entities have a collusin
14:20
Tile switch open I think
Avatar
Collision? Wym, a tile on some other layer being at the same position as another on the game layer?
14:21
Or as in collision in the entities texture?
Avatar
Ddnet.png
14:22
So both Ur questions are true
Avatar
Avatar
Jupstar ✪
But since Heinrich didn't want to rely on server browser info, like we did before
we don't know the server info in all cases, it's unreliable
Avatar
BCS net code sucks
Avatar
Avatar
Jupstar ✪
Ddnet.png
I don't think I quite understand, sorry. I thought the idea of layertypes was just an illusion. Isn't ddnet.png just one image? With every tile having a distinct index?
Avatar
Except that there is a collision between two layers
Avatar
Oh, ok. So two layers different tile indexes for same position. We have to decide which one to render? Is that the issue?
Avatar
It was put to a different position
14:29
In first impl I remapped the tile index. Now we simply use multi texture and put the tile from ddnet.png to the right position
14:30
Since layer IMG were split
Avatar
A different position?
Avatar
No
14:30
The correct one
14:30
The one ddnet.png normally has collision in
14:30
On
14:31
But changing in the buffer data has the advantage of not using any extra memory ofc
14:31
Entity image approach will always cost another texture
14:32
Still better than what we have now xdd
Avatar
Avatar
Jupstar ✪
The one ddnet.png normally has collision in
Ok maybe I just need to dig around myself. I don't think I fully understand. Why does this specific tile need to be remapped? What does it even collide with?
Avatar
I guess BCS grey fox was like. Let's fuck all future devs
Avatar
Was the tile moved from one place to another at some version?
Avatar
I dunno
Avatar
is it about collision tiles?
14:33
if so, that dates back to vanilla
Avatar
Switch open tile is the one
Avatar
ah
14:33
nvm me then
Avatar
Learath open editor
14:34
Siwtch and game layer
14:34
And u will see
14:34
1 tile same position
14:34
Ddnet.png repositioned
14:34
If u still don't understand buy new brain
Avatar
One case was a ddnet.tw UUID's string being changed (but the UUID was not), and the other case is a ddnet.tw UUID's string being changed in one place but not in another in documentation. Fixes the commit c479230d714725754c93e516e3cde7fb96aac0c8. CC #5312

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 cover...
Avatar
Avatar
Jupstar ✪
Siwtch and game layer
How on earth did this even happen pepeW
14:48
Time switch open is on top of solo
Avatar
i thought the point of the different layers was so that you could reuse indices
Avatar
it certainly didn't look like that to me ^^
14:50
everything looked like it was compatible with the other layers
Avatar
That part was just an illusion. Other layer types was a way to shove the extra data needed for switches and tiles iirc
Avatar
For most layers it's also not really worth it
14:50
Binary wise they are different tho
Avatar
So why on earth was that one switch tile just randomly moved down?
14:51
So it looks better??
14:52
Pf, that does make it more annoying indeed 😦
Avatar
It's an easy fix
14:53
Just stop compatibility to old clients
14:53
Maps can easy updated
Avatar
entity tile code is a mess
15:01
adding a collision tile
15:01
if u dont know u need to add it to a index list of unused stuff
15:01
it gets deleted in the editor etc
15:01
xd
15:01
lots to keep about
Avatar
Avatar
Jupstar ✪
Just stop compatibility to old clients
and 07 pls troll
Avatar
Avatar
Anime.pdf
and 07 pls troll
As said to old clientslol
Avatar

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.com/ddnet/ddnet/#using-addresssan...
Avatar
Avatar
Rafael Fontenelle
I'm would like to add an entry for map_create_pixelart tool in "Extra tools" page in DDNet Wiki, but I'm having hard to describe what it tries to accomplish due to my little knowledge of C++. Can someone explain it, add examples? All explanation I have is the PR that adds it https://github.com/ddnet/ddnet/pull/5766
well, the PR is rather clear without looking at the code. It allows you to insert an image.png into a map file at the position you want
Avatar
We don't limit support to build directories called build, files that are inside the build directory should be in .gitignore instead.

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 th...
Avatar
i dont think gitignore should be limited to what we "support"
15:36
i think its fine to gitignore a dir called build
15:36
the glob build* is also fine
15:36
its just common sense
Avatar
I'm trying to gitignore its contents instead
Avatar
Mh, shouldn’t people add their build dirs to their own local exclude?
15:37
gitignore should be to make devs life easier
Avatar
so that it doesn't depend on the name
15:37
of your chosen build directory
15:37
(in fact that's how it worked for the longest time)
Avatar
Avatar
Learath2
Mh, shouldn’t people add their build dirs to their own local exclude?
i do that
15:38
but gitignore is a good convenience
15:38
and new ppl dont know about .git/info/exclude
Avatar
yes, that's why I try to gitignore its contents
15:38
so that it doesn't depend on the chosen name of the build directory
15:38
not a magic name build, but rather all build directories
Avatar
I've so much stuff there
15:43
Easy to block the dir
Avatar
f2530cf Add forgotten call - heinrich5991 71489ff Merge #6270 - bors[bot]
Avatar
rust rly should make the sparse index asap
16:17
the index updates get out of hand
16:18
@heinrich5991 which pr was on github?
16:18
wanna see the progress xD
16:22
founnd
Avatar
chillerdragon BOT 2023-01-12 16:48:29Z
Can’t afford (@Ryozuki)
found this https://beginners.re/ (@Learath2)
f3 1
Avatar
its 1€
Avatar
its chillerdragon
Avatar
Avatar
Ryozuki
the index updates get out of hand
i always get nice 30KB/s xdd
16:57
amazing
Avatar
a0221c3 Fix ddnet.org change in UUIDs - heinrich5991 dd09c59 Merge #6269 - bors[bot]
Avatar
i just thought something
19:04
in the earth some numbers are ilegal to share or even know
19:05
An illegal number is a number that represents information which is illegal to possess, utter, propagate, or otherwise transmit in some legal jurisdiction. Any piece of digital information is representable as a number; consequently, if communicating a specific set of information is illegal in some way, then the number may be illegal as well.
19:05
thus
19:05
if you have an index of all possible combinations
19:05
the library of babel is ilegal then
19:06
is a distribution of numbers that include such number ilegal too? (edited)
19:06
math is ilegal
19:08
01100111 01101111 01110100 01100011 01101000 01100001 what source code could this be?
Avatar
this discord server has ilegal numbers too
19:08
since bot client names are strings
19:08
they can be represented as a number
19:09
and such number is thus then ilegal in this dc
19:09
due to heinrich
19:09
so heinrich is effectively banning the use of 1 or more numbers
19:09
such is life
Avatar
sadge
Avatar
dont post the numbers
19:10
justatest
monkaS 1
19:10
Avatar
there was kinda a movie, idr what the plot was tho, with a number that was "illegal" https://en.wikipedia.org/wiki/Pi_(film)
Pi (stylized as π) is a 1998 American neo-noir psychological thriller film written and directed by Darren Aronofsky in his feature directorial debut. Pi was filmed on high-contrast black-and-white reversal film and earned Aronofsky the Directing Award at the 1998 Sundance Film Festival, the Independent Spirit Award for Best First Screenplay and ...
Avatar
This reminds of a random, non serious, thought I had. Programming is about fixing typos. You deem space a typo and then you fix it with the "correct" letter (character). (edited)
Avatar
Avatar
Ryozuki
is a distribution of numbers that include such number ilegal too? (edited)
here a page of illegal numbers
19:36
A disjunctive sequence is an infinite sequence (over a finite alphabet of characters) in which every finite string appears as a substring. For instance, the binary Champernowne sequence 0 1 00 01 10 11 000 ...
Avatar
Huh, someone implemented points in scoreboard using a Python script rewriting the memory of running DDNet process, pretty cool: https://github.com/MageDelfador/DDNet-show-points-in-game
游戏中按TAB键查看所有玩家分数的小程序. Contribute to MageDelfador/DDNet-show-points-in-game development by creating an account on GitHub.
Avatar
hacky justatest
Exported 306 message(s)