








c3d90c0 M Purple Panic, M Depressed II, M The Shire, M Halloween Night, M Harvest, M Kobra 2, M Kobra, M Multeasymap, M Sunny Side Up - ddnet-maps




CTeamsCore etc. can be discussed in a separate issue.












m_Last_KickVote if there was an error while calling vote.
There's a %d second wait time would be wrong.



1>CMake Warning (dev) at CMakeLists.txt:381 (message):
1> GAME_SHARED is not alphabetically sorted
1>Call Stack (most recent call first):
1> CMakeLists.txt:389 (set_glob)
1> CMakeLists.txt:1991 (set_src)
1>This warning is for project developers. Use -Wno-dev to suppress it.
1>
1>-- Configuring incomplete, errors occurred!
1>CMake Configure step failed. Build files cannot be regenerated correctly. Attempting to stop IDE build.
1>The system cannot find the batch label specified - VCEnd
1>F:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(232,5): error MSB8066: Custom build for 'C:\Users\Munk\Desktop\Teeworlds\cnr\build\CMakeFiles\912e65ae1a2d9e2a4193e93bdb85968c\generate.stamp.rule' exited with code 1.I get a bunch of these errors (edited)



CMakeLists.txt:1991 (set_src) and sort the files alphabetically within the set_src statement.





























global _start
section .data
msg db `hello world\n`
msg_len equ $ - msg
section .text
%include 'lib/lib.asm'
_start:
mov rdi, msg
mov rsi, msg_len
call print_str
call exit
hello worldnasm -felf64 -gdwarf program.asm && ld program.o -o program































struc mytype
mt_long: resd 1
mt_word: resw 1
mt_byte: resb 1
mt_str: resb 32
endstruc







void CDragger::Snap(int SnappingClient)

















































CClientMask CGameTeams::TeamMask(int Team, int ExceptID, int Asker)I see it used invoid CCharacter::TickDeferred()
{
...
{
int Events = m_Core.m_TriggeredEvents;
int CID = m_pPlayer->GetCID();
CClientMask TeamMask = Teams()->TeamMask(Team(), -1, CID);
// Some sounds are triggered client-side for the acting player
// so we need to avoid duplicating them
CClientMask TeamMaskExceptSelf = Teams()->TeamMask(Team(), CID, CID);
// Some are triggered client-side but only on Sixup`
CClientMask TeamMaskExceptSelfIfSixup = Server()->IsSixup(CID) ? TeamMaskExceptSelf : TeamMask;
...
if(Events & COREEVENT_HOOK_HIT_NOHOOK)
GameServer()->CreateSound(m_Pos, SOUND_HOOK_NOATTACH, TeamMaskExceptSelf);
}
...
} (edited)






















/showothers?

















%include 'lib/lib.asm'
section .text
_start:
call alloc_init
mov rdi, 5 ; 4 bytes
call alloc
lea rdi, [rax]
mov byte [rdi], 'A'
mov byte [rdi + 1], 'B'
mov byte [rdi + 2], 'C'
mov byte [rdi + 3], 'D'
mov byte [rdi + 4], `\n`
mov rsi, 4
call print_str
mov rdi, 0
call exit
; ./compile.sh && ./program
;ABCd



























%ifndef INCLUDE_ALLOC
%define INCLUDE_ALLOC
%include "lib/syscalls.asm"
section .bss
brk_current_addr: resq 1
section .text
; initializes the allocator
; doing some needed setu
; mainly getting the initial brk address
alloc_init:
push rdi
mov rdi, 0
call brk
mov qword [brk_current_addr], rax
pop rdi
ret
; void* alloc(size_t bytes)
; returns a ptr to the allocated byte+s on rax
alloc:
push rdi ; push keeps a copy
push rsi
mov rsi, [brk_current_addr]
lea rdi, [rsi + rdi]
call brk
mov qword [brk_current_addr], rax
mov rax, rsi
pop rsi
pop rdi
ret
%endif


enum
{
TEAM_FLOCK = 0,
TEAM_SUPER = MAX_CLIENTS,
NUM_TEAMS = TEAM_SUPER + 1,
VANILLA_TEAM_SUPER = VANILLA_MAX_CLIENTS
};



































In [2]: %timeit json.load(open("servers.json"))
14.3 ms ± 279 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)



In [1]: import json
In [2]: from collections import Counter
In [3]: %timeit Counter(client.get("clan", "") for server in json.load(open("servers.json")).get("servers", []) for client in server.get("info", {}).get("clients", []))
14.8 ms ± 309 µs per loop (mean ± std. dev. of 7 runs, 100 loops each) (edited)

In [1]: import json
In [2]: from collections import Counter
In [3]: %timeit Counter(client.get("clan", "") for server in json.load(open("servers.json")).get("servers", []) for client in server.get("info", {}).get("clients", []))
14.8 ms ± 309 µs per loop (mean ± std. dev. of 7 runs, 100 loops each) (edited)

In [1]: import json
In [2]: from collections import Counter
In [3]: %timeit Counter(client.get("clan", "") for server in json.load(open("servers.json")).get("servers", []) for client in server.get("info", {}).get("clients", []))
14.8 ms ± 309 µs per loop (mean ± std. dev. of 7 runs, 100 loops each) (edited)





















noperspective in vec2 texCoords;
out vec4 FragClr;
uniform sampler2D texSample;
void main()
{
FragClr = texture(texSample, texCoords);
}
Vertex shader for framebuffer:
layout (location = 0) in vec2 inPos;
layout (location = 1) in vec2 inTexCoords;
noperspective out vec2 texCoords;
void main()
{
gl_Position = vec4(inPos.x, inPos.y, 0.0, 1.0);
texCoords = inTexCoords;
}


















(sad one, not happy one) (edited)






















































6e629e1 Type safe mem_zero function (fixes #5228) - Chairn
b951734 Don't allow mem_zero for nontrivial types - heinrich5991
0cba06d Don't use Mersenne Twister - heinrich5991
5cdae50 Fix code scanning && clang-tidy false positive? - Chairn
97d64cd Merge pull request #6256 from heinrich5991/pr_ddnet_typesafe_mem_zero - def-

6fde4ee Version 17.4 - def-
f87284d Switch to a fragment shader solution for border tile rendering - Jupeyy
7f4fa67 Update Swedish translations for 17.4 - furo321
9d58575 Add new contributors to credits - Robyt3
97f2dd1 Update russian.txt - lolipodass
a8ad40b Update ukrainian.txt - JuraIBOZO
be93009 Save entire character with /lasttp. - furo321
14b530c Update russian.txt - ByFox213
f0e9b79 Update Belarusian translation for 17.4 - AlehKushniarou
683ef0b Correct usage of demo_extract_chat tool. - furo321
d1310c2 Update spanish.txt - n0Ketchp
