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 2019-05-26 00:00:00Z and 2019-05-27 00:00:00Z
07:27
@Learath2 ye, i remembered delete calls the class destructor
07:27
while free doesnt
Avatar
@Learath2 oh yeah right i forgot that i can initialise it in the constructor xd
Avatar
Actually i can't unless i pass every parameter for the Init function of the CDemoEditor to the constructor of my CJob
09:42
DemoEditor->Init(m_pGameClient->NetVersion(), &m_SnapshotDelta, m_pConsole, m_pStorage);
09:42
i need all that 4 parameters
Avatar
Why not?
Avatar
why not passing 4 more parameters to the constructor? xd
Avatar
well you will be passing them somewhere one way or another 😛
Avatar
but what's wrong using a pointer?
Avatar
13:37
Avatar
:c
Avatar
@Learath2 please don't add more thread-unsafe code 😦
Avatar
oops
13:03
@Learath2 should i change the pointer then?
Avatar
@archimede67 avoid using pointers wherever u can, it avoids mem leaks and its generally better
13:11
@archimede67 note: u can still pass by reference using &myvar to a function
Avatar
yeah
13:18
i'll try something
Avatar
@deen what powers your blog at hookrace.net?
Avatar
jekyll most likely
14:48
i use my own scripts poggers
Avatar
u use python
Avatar
ew
Avatar
python is perfect for this
Avatar
nah
Avatar
normal html is perfect for html
Avatar
idk if u dumb but
Avatar
xd
Avatar
python scripts generate html
14:54
from my markdown files
Avatar
ik
Avatar
ChillerDragon 2019-05-26 14:58:29Z
plottwist deen usses wix pro
Avatar
most ppl use wordpress
14:59
xd i dont like it
Avatar
wix pro xd
Avatar
and its even cringier if the one who uses it is a programmer
14:59
who claims to be a web dev
Avatar
i use jade
15:00
pug*
Avatar
pug is a html renderer lmao
15:00
completly diferent topic
Avatar
ye
15:00
xd
15:00
in fact i use js
Avatar
react ❤
Avatar
ye
Avatar
reactjs skillz here
Avatar
where skill
Avatar
lol most basic class xd
15:01
the apisearch class is the big one
Avatar
i hope its made by u
Avatar
noice
Avatar
im making a web using reactjs and semantic ui react for frontend and expressjs + typescript + mysql2 as backend
15:01
with ajv for validation
15:01
hmm and thats all
Avatar
ajv?
Avatar
a rly good package i found recently
Avatar
oh sounds nice
15:02
21 M downloads xd
Avatar
oh man
15:02
weekly xd
Avatar
oh and jwt for auth
Avatar
ah ye
Avatar
ye ik 😄
15:10
oh man CDemoEdit(CClient *pClient, const char *pNetVersion, CSnapshotDelta SnapshotDelta, IConsole *pConsole, IStorage *pStorage, const char *pDemo, const char *pDst, int StartTick, int EndTick); xd
15:11
idk if its better
Avatar
what u doing lmao
Avatar
dud
Avatar
i think if u pass
15:12
gameclient
15:12
u can get all those others
15:12
iconsole istorage
15:12
etc
15:12
no need for all
Avatar
wait
15:13
not gameclient
15:14
but i only get Storage() from CClient, not console and not NetVersion
15:14
unless I add some function Console() in CClient
Avatar
why not gameclient
Avatar
theres not those functions in
15:16
but i can get gameclient from client
Avatar
yes
15:16
xd
Avatar
yes
Avatar
it should be the other way around
15:16
a mess
Avatar
xd
Avatar
wat u trying to do?
Avatar
wait i'll show u
15:18
CDemoEdit::CDemoEdit(CClient *pClient, CSnapshotDelta *pSnapshotDelta, IConsole *pConsole, const char *pDemo, const char *pDst, int StartTick, int EndTick) : m_pClient(pClient), m_pConsole(pConsole) { str_copy(m_pDemo, pDemo, sizeof(m_pDemo)); str_copy(m_pDst, pDst, sizeof(m_pDst)); m_StartTick = StartTick; m_EndTick = EndTick; // Init the demoeditor m_pDemoEditor.Init(pClient->GameClient()->NetVersion(), pSnapshotDelta, pConsole, pClient->Storage()); }
15:19
I wanna init the demoeditor in my thread
15:19
called CDemoEdit (an IJob)
15:20
u know what a race condition is?
Avatar
tell me
Avatar
When writing multi-threaded applications, one of the most common problems experienced are race conditions. My questions to the community are: What is a race condition? How do you detect them? H...
15:21
you have to be careful of those in a multithreaded enviroment
Avatar
yeah
15:22
that's why @Learath2 suggested me to create a spearate demoeditor in case where the normal demoeditor was being used by the client itself
Avatar
ye but u are still using the client methods and classes
15:22
if u only read it might be okay
Avatar
i write also
Avatar
using storage?
Avatar
ye
Avatar
be careful there then
15:23
idk how i would actually do it xd
15:23
u might need a
15:23
lock
Avatar
hmm
15:26
a lock on the storage?
Avatar
from a quick look, it seems that storage is threadsafe after initialisation
Avatar
oh nice
Avatar
HookRace website. Contribute to HookRace/hookrace-web development by creating an account on GitHub.
Avatar
cool, ty 🙂
Avatar
any plans on doing hookrace btw? 🙃
Avatar
I'm not a big ruby fan, but jekyll has lots of users and the result is static anyway
Avatar
I like the looks of it btw. 🙂
Avatar
@Ryozuki nope
15:38
@heinrich5991 yeah, feel free to fork it like @timakro did 😄
Avatar
inb4 new heinrich blog
Avatar
no, not heinrich5991's blog, I'm sorrz
15:40
im sure u have a lot to talk of
Avatar
never wrote a blog, wouldn't even know where to start ­— perhaps I could ask Dune
Avatar
yeah i feel the same
15:41
xD
15:42
@heinrich5991 now that u are here
Avatar
yes?
15:42
what u think of this
Avatar
good effort 🙂
Avatar
(I'm no expert for .desktop files, but:)
15:44
there's two Comment= fields in there
15:45
im blind
Avatar
StartupNotify=false, is there a reason behind this?
15:45
I guess that's specifying that ther shouldn't be a cursor notification that ddnet is starting?
Avatar
"If true, it is KNOWN that the application will send a "remove" message when started with the DESKTOP_STARTUP_ID environment variable set. If false, it is KNOWN that the application does not work with startup notification at all (does not shown any window, breaks even when using StartupWMClass, etc.). If absent, a reasonable handling is up to implementations (assuming false, using StartupWMClass, etc.). (See the Startup Notification Protocol Specification for more details). "
15:46
hmm
Avatar
sounds like it should be absent
Avatar
ok ill remove it
Avatar
hey, i didn't fork your blog @deen. I forked https://github.com/poole/poole
The Jekyll Butler. Contribute to poole/poole development by creating an account on GitHub.
Avatar
I don't have the icns2png tool installed. how large are the resulting pngs? (like how many bytes?) can we just ship them in the repo?
Avatar
(I discovered it through your blog of course) ^^
Avatar
97040 bytes
15:49
the 512
15:49
stat returns bytes right?
15:49
xD
15:50
ye actually icns is a mac format
Avatar
just include them I guess(?)
Avatar
the DESTINATION of your install command looks different from the ones around it
15:50
it should probably be share/applications
Avatar
sure that works?
15:51
i read on some forums so i wasnt sure
Avatar
did you read that you should specifically include /usr or was it just done like that?
15:51
same for the icons, share/icons/hicolor/${SIZE}x${SIZE}/apps
15:52
(it will install into /usr or /usr/local, depending on what the distro wants. that's why it would be weird if it was required to put /usr there explicitly)
15:56
15:56
ur right
15:57
twinbop
Avatar
ddnet.desktop install is not updated yet
15:57
true
15:57
-- Installing: /usr/local/share/applications/ddnet.desktop
Avatar
you could add teeworlds to the keywords and I'm not sure whether teeworlds is an ArcadeGame, maybe a Shooter, rather?
15:58
I think that's it 🙂
Avatar
oh, you can write loops without making a list: foreach(SIZE 16 32 48 128 256 512)
Avatar
i gess its from here
15:59
there is Fps
15:59
but its not a fps
Avatar
yup
16:00
it's fine I guess. I'm not even sure what an arcarde game is
16:00
oh wait, DDNet isn't a shooter 😄
16:00
I forgot for a moment
Avatar
i would say platformer
Avatar
platform Debian's platform games
16:01
i use that?
Avatar
yea, doesn't exist in the category list though
Avatar
@heinrich5991 Can you take a look at the IsDDNet pr?
Avatar
i pushed
Avatar
that looks more complicated, no, not right now
Avatar
feel free to merge 🙂
Avatar
oh, one more :/
16:05
this should be done without the if(TARGET_OS STREQUAL "linux"), this is also relevant for the BSDs etc.
Avatar
@Ryozuki what does your pr do?
Avatar
adds a desktop icon for ddnet on linux
Avatar
without?
Avatar
What for
Avatar
what happens if this runs on windows
16:07
its ignored?
Avatar
we don't support make install on windows, the lines above that also don't work on windows
Avatar
69a8501 Front page: Tournament Live Stream by maggi323 - def-
Avatar
@Ryozuki do you know how to squash commits (put all these temporary commits into one)? if so, that might also be nice
Avatar
pushed
16:08
ye
16:08
ill do it
Avatar
lovely, thanks 🙂
Avatar
hmm done
16:10
idk why that 2 things appear but
16:10
xD
16:10
it should be fine
Avatar
huh. did you rebase too deep? ^^
Avatar
these commits have you as coauthor
Avatar
how to fix it xD
Avatar
try git fetch upstream; git rebase upstream/master
Avatar
ok now
Avatar
Ah right, there's a tournament tonight. Can't be there unfortunately, looking forward to play lets climb 3 though, I'm a huge fan of those maps.
Avatar
@timakro :(
16:15
@heinrich5991 why does DDEV=ON sets the build type to debug?
Avatar
because that sounded like a reasonable default for developing to me
Avatar
"Whether to generate stuff necessary for packaging."
16:16
what packaging has to do with dev?
Avatar
-DDEV=ON was added because of some weird restrictions that the cmake install process has
16:19
it has do build all the binaries that are packaged by default (this means it has to build all the tools every time you call the default make/ninja command line)
16:19
in order to be able to only build the client and server on a normal make/ninja invocation, I added -DDEV=ON
16:20
and since it's for developing, I changed the default compilation mode as well
16:20
(found this out by git-blaming that line and remembering the reasoning from the commit)
Avatar
@timakro Ah, I made some improvements on poole though, probably mostly css stuff I didn't like
Avatar
bd1f6be add .desktop and ico installation - Ryozuki f1d122d Merge #1754 - bors[bot]
Avatar
i wonder if the ddnet client being limited to 120 fps on background is made by the os or by the client itself
Avatar
if its possible to not limit it it would allow me to make some cool setups
Avatar
cl_refresh_rate_inactive
Avatar
for streaming
18:35
ohh
Avatar
i do it only to save the world from energy waste 😄
Avatar
I hope all of you old people in the eu voted today 🙂
Avatar
even the ones who are not eu citizens? 😄
Avatar
*old eu citizens
Avatar
i voted
18:45
and i would say im young
18:45
pepeH
Avatar
if you're old enough to vote, you're old 😛
18:53
i can't
Avatar
no matter the distance, with /showothers 1. On current version.
Avatar
true
Avatar
8089ab3 Revert "Front page: Tournament Live Stream by maggi323" - def-
20:34
Avatar
@deen xdg-settings set default-url-scheme-handler ddnet DDNet.desktop you need to do this for linux to understand ddnet links? i wonder if its possible to do it on make install too
Avatar
that's how I did it, not sure what the proper way is
Avatar
hm interesting. it doesn't just take the only program if one is available?
Avatar
"There is a file, ~/.local/share/applications/mimeapps.list that contains a list of MIME handlers"
20:40
How to configure custom URI/URL handlers in Xfce, GNOME and other FreeDesktop/XDG environments
20:40
hmm
Avatar
perhaps you need to refresh some caches
Avatar
MimeType=x-scheme-handler/ddnet
20:41
on the .desktop file?
20:41
oh
20:41
i think its already
20:42
idk
20:43
maybe cmake can simply run the command
Avatar
@Ryozuki maybe you just need to run this tool after placing the desktop file? https://jlk.fjfi.cvut.cz/arch/manpages/man/update-desktop-database.1
Avatar
Hm, the web preview gives fun errors with huge maps :/
20:58
In Firefox it allocates ~ 15 GB of RAM and then just hangs
20:58
In Chrome there's an error message at least
Avatar
wow
21:03
15G of ram
Avatar
In DDNet client we only need 500 MB for the same map
Avatar
@deen what parts of the jekyll configuration did you change? do you remember that?
Avatar
@heinrich5991 not really, sorry
Avatar
k
Avatar
just whatever annoyed me, probably code highlighting
21:05
adding a dark theme
21:06
@archimede67 oh wait, that was 15% of my RAM, so actually 4.5 GB
Avatar
14c7bf5 fixed typo - fokkonaut e8b8a3c Merge #1756 - bors[bot]
21:09
f543cbd update tournament 47 - def-
Avatar
wait
21:12
15% of your RAM is 4.5 GB?
Avatar
32GB RAM, not too unreasonable 😛
Avatar
u have 32 GB xd
Avatar
I bought RAM when it was cheap the last time 😄
21:15
but I wouldn't recommend that much, never use it anyway
Avatar
I got 8gb ddr4 2997mhz and all runs fine
Avatar
yeah, my normal memory usage is 2-3 GB
Avatar
not using a web browser? ^^
Avatar
xd
21:20
i have 8 on my desktop computer
21:20
but its pretty old
Avatar
Firefox instead of Chrome, it uses very little RAM
Avatar
i don't like firefox xd
Avatar
I use firefox, but maybe I'm using too many tabs
21:21
(I can recommend the extension Tree Style Tab if you want to have many tabs open)
Avatar
ok, at 100 random tabs my total system usage is nearly 5 GB, but I rarely need that many tabs
Avatar
how many tabs heinrich
Avatar
one the weaker computer 258
21:23
*on the weaker
Avatar
actually firefox 67 detects when you're running out of memory and will suspend tabs
Avatar
on windows
Avatar
oh, didn't read that far 😄
Avatar
^^
Avatar
Oh well, I'm already used to Firefox not caring about Linux at all
Avatar
do u never close tabs or what
Avatar
I use them as "read later" list
21:26
but tree style tabs makes it easy to have that many: each link you open will become a child tab. you can then hide whole trees of tabs behind a single tab
Avatar
Firefox best
Avatar
no
21:51
internet explorer best
Avatar
opera
22:18
edge
Avatar
both are just chrome skins
Exported 336 message(s)