fmap
and (.)
are the SAME THINGkill lag
in console void CGameClient::ConKill(IConsole::IResult *pResult, void *pUserData)
{
if(pResult->NumArguments() == 0)
((CGameClient *)pUserData)->SendKill(-1);
}
I think this workskill lag
in console quit gambling
to convert all your luck into skillm_pClient->m_Camera.CamType() != CCamera::CAMTYPE_SPEC
you are just introducing potential desyncs and confusing the server.(c -> d -> e) -> (a -> b -> c) -> (a -> b -> d) -> a -> b -> e
(c -> c -> d) -> (a -> b -> c) -> (a -> b -> c) -> a -> b -> d
[24-12-07 10:50:18][tuning]: air_friction in zone 3 changed to 1.00
[24-12-07 10:50:18][tuning]: ground_control_speed in zone 3 changed to 0.00
[24-12-07 10:50:18][tuning]: ground_control_accel in zone 3 changed to 0.00
[24-12-07 10:50:18][tuning]: ground_friction in zone 3 changed to 1.00
[24-12-07 10:50:18][tuning]: air_control_speed in zone 4 changed to 4.00
[24-12-07 10:50:18][tuning]: ground_control_speed in zone 4 changed to 6.00
[24-12-07 10:50:18][console]: failed to open 'maps/WarioWare.map.cfg'
[24-12-07 10:50:18][TeeWare::bombrain]: 75 total bomb rain entities
[24-12-07 10:50:18][TeeWare::passball]: 12 total ball spawn entities
[24-12-07 10:50:18][TeeWare::reachendnade1]: 8 total nade spawn entities
[24-12-07 10:50:18][TeeWare::reachendnade2]: 8 total nade spawn entities
[24-12-07 10:50:18][game]: team_join player='63:' m_Team=-1
[24-12-07 10:50:18][server]: 'bot' -> 'bot'
[24-12-07 10:50:18][server]: version 0.6 626fce9a778df4d4
[24-12-07 10:50:18][engine/mastersrv]: refreshing master server addresses
[24-12-07 10:50:18][register]: refreshing ip addresses
[24-12-07 10:50:18][host lookup]: host='master1.teeworlds.com' port=0 3
[24-12-07 10:50:18][host lookup]: host='master2.teeworlds.com' port=0 3
[24-12-07 10:50:18][host lookup]: host='master3.teeworlds.com' port=0 3
[24-12-07 10:50:18][host lookup]: host='master4.teeworlds.com' port=0 3
[24-12-07 10:50:19][engine/mastersrv]: saving addresses
[24-12-07 10:50:19][register]: fetching server counts
[24-12-07 10:50:22][register]: chose 'master4.teeworlds.com' as master, sending heartbeats
[24-12-07 10:50:23][register]: no firewall/nat problems detected
[24-12-07 10:50:23][register]: no firewall/nat problems detected
[24-12-07 10:50:23][register]: server registered
wget https://zillyhuhn.com/crack/bam4 -O /usr/local/bin/bam4
to get bam 4.0 then go to the source code and run bam4 server_release
if(Stroke)
is redundant, as you're always having a strokeconst CChat::CLine *pLine;
if(pName)
{
for(int i = GameClient()->m_Chat.m_CurrentLine; i >= 0; --i)
{
if(str_comp(GameClient()->m_Chat.m_aLines[i].m_aName, pName) == 0)
{
pLine = &GameClient()->m_Chat.m_aLines[i];
goto matched;
}
}
for(int i = GameClient()->m_Chat.m_CurrentLine; i >= 0; --i)
{
if(str_comp_nocase(GameClient()->m_Chat.m_aLines[i].m_aName, pName) == 0)
{
pLine = &GameClient()->m_Chat.m_aLines[i];
goto matched;
}
}
GameClient()->m_Chat.Echo("No chat to translate");
return;
}
else
{
pLine = &GameClient()->m_Chat.m_aLines[GameClient()->m_Chat.m_CurrentLine];
}
matched:
const CChat::CLine *pLine;
if(pName)
{
for(int i = GameClient()->m_Chat.m_CurrentLine; i >= 0; --i)
{
if(str_comp(GameClient()->m_Chat.m_aLines[i].m_aName, pName) == 0)
{
pLine = &GameClient()->m_Chat.m_aLines[i];
goto matched;
}
}
for(int i = GameClient()->m_Chat.m_CurrentLine; i >= 0; --i)
{
if(str_comp_nocase(GameClient()->m_Chat.m_aLines[i].m_aName, pName) == 0)
{
pLine = &GameClient()->m_Chat.m_aLines[i];
goto matched;
}
}
GameClient()->m_Chat.Echo("No chat to translate");
return;
}
else
{
pLine = &GameClient()->m_Chat.m_aLines[GameClient()->m_Chat.m_CurrentLine];
}
matched:
const CChat::CLine *pLine;
if(pName)
{
for(int i = GameClient()->m_Chat.m_CurrentLine; i >= 0; --i)
{
if(str_comp(GameClient()->m_Chat.m_aLines[i].m_aName, pName) == 0)
{
pLine = &GameClient()->m_Chat.m_aLines[i];
goto matched;
}
}
for(int i = GameClient()->m_Chat.m_CurrentLine; i >= 0; --i)
{
if(str_comp_nocase(GameClient()->m_Chat.m_aLines[i].m_aName, pName) == 0)
{
pLine = &GameClient()->m_Chat.m_aLines[i];
goto matched;
}
}
GameClient()->m_Chat.Echo("No chat to translate");
return;
}
else
{
pLine = &GameClient()->m_Chat.m_aLines[GameClient()->m_Chat.m_CurrentLine];
}
matched:
matched:
into a closure or extra functionmatched:
into a closure or extra function matched:
into a closure or extra function if (condition) {
a();
} else {
b():
}
would first pause every single thread where condition
is false and execute a();
on every single thread where it's true
then pause every thread where condition
is true and execute b();
on every single thread where it's false
and then finally continue execution of all threads like normalif (condition) {
a();
} else {
b():
}
would first pause every single thread where condition
is false and execute a();
on every single thread where it's true
then pause every thread where condition
is true and execute b();
on every single thread where it's false
and then finally continue execution of all threads like normal http: <url> failed. libcurl error (1): Protocol "http" disabled
5120e79
fix spectate closest - TsFreddie
51ff510
Update Simplified & Traditional Chinese translations for upcoming 18.8 - ASKLL-STAR
ada887c
Fix hook collisions preview string not being localizable - Robyt3
7294013
Revert "remove self from spectate selector" - TsFreddie
0f1b253
fully allow clicking on yourself to spectate - TsFreddie
7e79e4e
Update Simplified Chinese translations for upcoming 18.8 - ASKLL-STAR
72f3f6a
Update Traditional Chinese translations for upcoming 18.8 - ASKLL-STAR
ab0aaa1
Unite the word used in traditional_chinese.txt - By622
626c324
Update Turkish translation for 18.8 - GokturkTalha
f72297f
Update Azerbaijani translation for 18.8 - GokturkTalha
0381d82
don't allow SpectateClosest to select self - TsFreddie
018c64a
100% RO translation (1/2) - Sans3108
aa3087d
100% RO translation (2/2) - Sans3108
cf6309e
Update brazilian_portuguese.txt - rffontenelle
cc57c1c
French translation by Yubel - def-
41a4d5a
Update Swedish translations for 18.8 - furo321
8061d82
pr#9329 supplement - ASKLL-STAR
a718956
Update Ukrainian l10n (18.8) - EGYT5453
0177660
fix style - def-
d0bdc64
Update ddnet-libs to include Android libs - def-
656d179
Fix clipping of last console line, save background noise as RGBA - Robyt3static float Time = 0.0f;
Time += Client()->RenderFrameTime() * ((float)g_Config.m_ClRainbowSpeed / 100.0f);
float DefTick = std::fmod(Time, 1.0f);
0.000001
(for the fps you said) (edited)static float Time = 0.0f;
Time += Client()->RenderFrameTime() * ((float)g_Config.m_ClRainbowSpeed / 100.0f);
float DefTick = std::fmod(Time, 1.0f);
debug 1
from your configvoid CHttp::Run(std::shared_ptr<IHttpRequest> pRequest)
{
std::shared_ptr<CHttpRequest> pRequestImpl = std::static_pointer_cast<CHttpRequest>(pRequest);
then whats the point of it being an interface then???2024-12-07 16:55:47 I assert: /home/solly/Games/ddnet/src/engine/shared/http.cpp(423): Request not done
if(State == EHttpState::DONE)
):<2024-12-07 16:55:47 I http: task done: https://translate.sollybunny.xyz/translate
2024-12-07 16:55:47 I assert: /home/solly/Games/ddnet/src/engine/shared/http.cpp(423): Request not done
// The globally visible state must be updated after OnCompletion has finished,
// or other threads may try to access the result of a completed HTTP request,
// before the result has been initialized/updated in OnCompletion.
OnCompletion(State);
{
std::unique_lock WaitLock(m_WaitMutex);
m_State = State;
}
m_WaitCondition.notify_all();
6 | while bound_checker(guard_x, guard_y, width, height) do
249 | local state = state_hash(guard_x, guard_y, direction, width, height)
1072 | if visited_states[state] then
| loops = loops + 1
| break
| end
| visited_states[state] = true
|
6199 | if bound_checker(guard_x + dx, guard_y + dy, width, height) and map[(guard_y + dy - 1) * width + guard_x + dx] then
| direction = (direction + 1) % 4
| dx, dy = dir2delta(direction)
| else
| guard_x = guard_x + dx
| guard_y = guard_y + dy
| end
| end
(edited)visited_states[state]
to take the most time, but it appears that's 6x less important than simply reading where the walls are in the play areaOnCompletion
then you should add a different mechanism for thatOnCompletion
runs on the curl multi thread, you shouldn't perform heavy work there or you block HTTP requests 6 | while bound_checker(guard_x, guard_y, width, height) do
249 | local state = state_hash(guard_x, guard_y, direction, width, height)
1072 | if visited_states[state] then
| loops = loops + 1
| break
| end
| visited_states[state] = true
|
6199 | if bound_checker(guard_x + dx, guard_y + dy, width, height) and map[(guard_y + dy - 1) * width + guard_x + dx] then
| direction = (direction + 1) % 4
| dx, dy = dir2delta(direction)
| else
| guard_x = guard_x + dx
| guard_y = guard_y + dy
| end
| end
(edited)dont kill on practice
section you added to toggle it on and off.
i have no idea how to keep a state set after a player dies.
pChr->SetKillable(pResult->NumArguments() == 0 ? !pChr->Core()->m_Killable : pResult->GetInteger(0));
this is automatically set to false whenever a player dies, which is generally intended behaviour, but i want to keep it across the entire "practice session"
elp, me noobvoid CCharacter::SetKillable(bool Killable)
{
m_Core.m_Killable = Killable;
if(!Killable)
Freeze();
}
it's a mere copy from the invincible toggle (edited)void CCharacter::SetKillable(bool Killable)
{
m_Core.m_Killable = Killable;
if(!Killable)
Freeze();
}
it's a mere copy from the invincible toggle (edited)&& player->m_killable == true)
un
commands/shotgun ?i[enabled]
/killable
to switch between the behaviour.
m_WarnPngliteIncompatibleImages
as this variable is also used in multiple threads.
Do not use CLock
as the thread-safety annotations would otherwise have to be added to a lot of client/graphics functions.
Use client
instead of the warning title as the log system, as the warning...