#programming
1 messages · Page 241 of 1
Dual core (No multithreading) 2.6GHz from spec sheet
as long as that isn’t a lie
fastfetch hopefully isnt lying
That's N4000
ye
and it ran like ass
at least minecraft bedrock still ran decently
on low settings, but it ran
The only low power I have is N100, that mini PC is used as network USB port
imagine using windows
couldnt be me
couldnt be me
you can run it on android too
but i was 12 at the time so i wasnt a linux user yet
don’t have to use windows
i use linux
you sneaky edit
you didnt see anything
my old laptop (that my parents now use) has an n2840, 2 core no smt at 2.5ghz
GET THEM A BETTER LAPTOP
I upgraded them to an ssd, 8gb of ram and a linux install, but holy it is slow.
all these celerons seem to have pretty similair specs from the sound of it lmao
my condolences
why the fuck do i keep forgetting to declare my functions
those celeron laptops are the biggest scam in recent laptop history btw. my N4000 laptop was 400 bucks, thats a full 1/3rd of the price i paid for my 3090 pc.
12 and bedrock on windows being a thing simultaneously is a crazy concept to me
i say that but now i think about it and it came out in 2015 approximately at the same time as w10 came out and i was 11. they gave everyone who owned java a free key to “minecraft windows 10 edition beta”. it was so ass it’s crazy
i was 5 when it came out
2015 bedrock on windows compared to java 
we had this discussione before, lets skip over it
for a 12 y/o, minecraft bedrock was close enough
this ain’t a point of discussion. 2015 bedrock was absolute ass, especially on the same platform as java, and to have access to bedrock you had to have java already
did you? i bought bedrock standalone in the ms store
also, it was more like 2018 or so. i was 11-12 at the time and im from 07
fuck i forgor to free my memory
it was way way better in 2018
i see
well, i bought it in 2018 without java
and then in 2022 or so i got java for free cuz i owned bedrock
they were separate back then, i don’t think there was even a bundle
i dont get it, cant i just "sudo apt install some styles"
i want superdark only dark style which i will just override
and not that windows/fusion which has dark light blue plasma idk
i bought the starter kit which came with a bunch of minecoins, and it was almost the same price as the base game.
spent that money on a noxcrew map or 2 iirc
noxcrew the goats
i bought minecraft in like 2014 maybe?
ye same
i like how minecraft is an almost universal experience
most sold game or something
ok i installed styles but when i try to run cute chess with it, it says i only have fusion and windows.
qt5ct sees new styles

i have suspiciously too many friends who never played gta5 or any gta games for some of them
i played gta 5 shortly after release but my laptop was only able to run it at 15fps so i deleted it

210m sales doesnt sound unreasonable
+1 to the list
the top ones are the libraries used by the bottom ones
i got the bestest gpu
i get 4365 fps on rotating cube
rotation is tied to frame so its super fast 😭
checks out, for not intensive workloads having the gpu right next to the cpu helps
DeltaTime. This video is all about that mysterious variable that oh so many game developers seem to struggle with. How to use DeltaTime correclty? I got the answers and hope this video will help to deepen your understanding about how to make frame rate independent video games.
0:00 - Intro
0:34 - Creating The Illusion of Motion
1:11 - Simple Li...
you probably already know this but ths is a great video about deltatime
It'd be funny to just quack summon for more FPS
im not watching this video
ignorance is bliss

another common issue is summing up movement vectors instead of rotating it when using keyboard for movement
up there with delta time issues, though not as prevalent
i just normalize it after gettign the input, which should be close enough
i should probably watch that so i dont accidentally do that shit because i geninuly dont know how to unbind stuff happening from fps
should be good for 8-dir movement 
its actually not that hard. just accept that you will have 1 frame of delay tho
okay ima just lock fps to 10 and make it work

i do not want delay
this is bullshit
- all qt's i have - have more than 2 packages (i installed additional packages for 5 and 6, all packages are visible in qtXct)
- when i run the app, it says only "windows and fusion" are available
its like, it has some other qt that i dont see
so qt5 and qt6 use different namings, can this "hidden" qt be called like some bullshit (for example q_t_4_tomfoolery you cant search me by "qt")
locking the fps to 10 is probably the worst solution to this
im not sure about how crazy linux developers are, but i suppose q_t is not a thing
whats the second worst
leaving it as is?
if your laptop stutters then the game wont even notice cuz its taking the assumption of always doing 10fps perfectly, meaning your 1% lows will be bad
lmao
i think so ye
so .5fps fixes that
2 seconds per frame
https://gameprogrammingpatterns.com/ is also a good reference btw (not video form but personally i almost never click on yt videos, though i also know that some people click on videos but never on articles
)
im gonna need you to explain in a way that lets my brain focus instead of attempting to optimize my 4000fps cube renderer
because it too slow
so
every frame, you ask what time it is
then you look at how much time passed betweent he current and the last frame
thats deltatime
you multiply movement by deltatime
im already doing that to calc fps
okay i guess its easy
My mind went to removing the deltatime calculations from the FPS counter in the triangle repo for some reason.
thats the gist of it. you can go into a lot more nuance with this for shit like accelaration
but acceleration mean integration and i have decided i will perish
those nuances is the reason that video is 20 min long
i recommend setting up a "tick"-like system for certain things, a lot of non-visual things you'll probably want to spare the troubles of tying to floating point accuracy
So uh Deltatime is in seconds?
most of the time in miliseconds i think
it really doesnt matter tho
as long as you have enough precision in the number
this is how my player moves for example
its not worth it, i guess i'll stick to light theme
2 hours changing colour of app background in 2025
thats crazy

i have only 2 qt's, both are dark, when run app with qt, says it has no dark and runs in light 
im telling you its some q____special_edition_____T_1231
unusable shit
whatever time to go to bed 
Did you check the qt page on the arch wiki
im not much of a reader but this does seem like a good recourse ye
(library like 5000 pages)
officially sam approved, eventho my credibility is near zero 
tying movement to frame updates 
yes
for any multiplayer or speedrunnable game, i do not approve 
that is how you do this
okay i got it working but
10000 fps on celeron :o
its tied to the deltatime of the updateloop
not the actual framerate
a lag spike could still cause unpredictable behavior or huge jumps in movement
no
thats the whole point of using deltatime
thats literally the whole reason we're talking about this
if the time between frames is smaller, deltatime will be smaller, so the movemenet multiplied by deltatime will be smaller
if the time between frames is bigger, deltatime will be bigger, so the movemenet multiplied by deltatime will be bigger
so you get jumps in movement when you have a lag spike
am i too sleep deprived or am i valid in thinking you shouldn't tie player movement to your draw loop for any speedrunnable or multiplayer game
does that make it best practice?
yes
the only way to improve this is the get a time machine inside your computer to see how long the frame took to render from the future,a nd use that
but we dont have a time machine
my laptop is now making a highpitched running sound for some reason when i open my app exclusively
uhmmm
that is ticks
physics should be updated separately from graphics
what i showed you is using ticks
THEY ARE
.
.
why would you use delta time in a tick update function?
cause its deltatime of the updateloop
Variable tick rate for graphics
-# almost typoed whoops
because cpu speed is not always constant?
constant for physics
you cant rely on everything being constant speed
even the physics updateloop will have lagspikes
its a reality of life
OBS exists as well
true
- store a start time in nanoseconds
- use that start time with the current time to calculate how many ticks should be run
- run the required amount of ticks to "catch up" and keep the remainder in your timer
then you just don't need to worry about delta time for a whole lot of things
use that start time with the current time to calculate how many ticks should be run
you're just doing deltatime with extra steps
the only difference here is that instead of putting your updateloop at the tickspeed, you're makign it call another function at the tickspeed
simply just moving where you use deltatime
If you catch up by running multiple ticks isn't the end result the same, the ticks need to run faster than usual to catch up

But you have inbetweens
you're not subject to floating point errors and you could run more complex calculations within a tick
for a straightforward move character from A to B in a singleplayer non-speedrun context that might not matter, but it matters when you want your game to be consistent
you really shouldn't be needing to catch up btw, the tickspeed is 99% of the time already less than the monitor fps, and needing to catch up in a single frame just means you remove all the inbetweens
So is tick=delta or no
tickspeed is the ideal amount of ticks per second
deltatime is the amount of time between irl frames
ussualy you use 1 of the 2 systems, not both
I dont get the idea of what you can do except delta actually
Your function is called at deltas
It doesnt see anything inbetween
Setting up external function to run lesser deltas will still have its own deltas
But if those deltas are smaller, its actually better just because they are smaller
Especially if they are unaffected by internet lags for example
whether or not to introduce a separate floating point delta to a tick step from the render step is a different question to which i'll answer no
gimme a sec ill make a diagram
floating point errors
frame-dependent math 
So you just suggest to run these calculations in another program which is unaffected by graphic/internet spikes
skipping in-betweens is how you get exploiters teleporting everywhere by changing a number in cheat engine 
you can do the same thing with ticks bro
physics ticks separate from graphics ticks is my argument
Man we are just going in circles here
if you have a multiplayer game, the server would be doing the physics ticks in my idealised version, and you would simply poll it and do your render ticks
Impossible for live action games
why not have the singleplayer mode act the same way so you can reuse the same physics handling code?
You have 30-50 ping to the server you just cant rely on server entirely
It should run locally but be synced by polling yes
Basically both server and your pc play the game
Good luck winning this argument 
I guess? Idk
i'm a huge advocate for determinisim, updating things each frame feels like it spits in the face of determinism
Cheating problem can only be fixed by local anti cheats overseeing your local calculations
But data exchange with server is much slower than your framerate
here you go
you can see here that they work almost exactly the same way
except that one moves everything by fixed intervals evry x amount iof time, and the other moves everything by the time elapsed
both are valid
you're introducing floating point errors and framerate-dependent behavior, if you acknowledge that fact and are fine with it, do as you wish
deltatime on physics updates is a bandaid fix that crumbles down the line
the floating point errors are quite literaly 0.000000001% of diffrence
and the fact you're checking if its time for a tick rn has jsut as much error
the difference is its eventually gonna result in the same calculations with ticks
like i said, i'm using deltatime of the updateloop, not the renderloop. it is in fact NOT framerate dependent
but not with code that uses dt
It will not be the same you get floating point errors on very high framerate indeed
Unless
Need to be checked
How big is error
using delta time for ticks instead of correcting for missed ticks is going to be different
If i have 100 frames per tick
its like using the euler method
you need small steps for accuracy
using large steps gets you "a" solution but it will be a different solution
??????
in gamedev, using super small steps is overkill but determinism is still important
10-30 tps is probably fine for most games
framerate is generally more frequent
if you calculate all your phyiscs from a starting position, ticks has a chance of being more acurate, if you calculate everything based on the previous position, then it really doesnt matter i think
that is my understanding of it
You get different results thats for sure
for fps games where everything happens on split seconds intervals, you really dont want to be dependant on ticks that got calculated a whole 50ms ago like how minecraft has 20tps
cs2 generally has 64tps
configurable, of course
64tps is still bad, imo use vsync
Depends on pc then 
vsync for the physics updateloop, not the graphics
vsync for the physics
better pc better physics too i guess
if you're doing multiplayer the tps will be decided by the server anywyas
this is a non-issue
determinism is an issue you need to tackle when making a game
if you don't care for it, say as much
I'm betting that the proposed solution is essentially:
Ticks for physics, and just sample between for it for frames.
it's fine for small games or non-speedrunnable games, to update per frame, but you will lose determinism and will lose points in the speedrun community
Yes its bad for speedrunning
speedrunning communities are often what keeps games alive
super mario 64 is still alive because a fuckton of people speedrun it
@olive sable I'd assume you'd already do this if you added a heavier collision system for less FPS wasted, so again non issue
determinism doesnt imply lack of rng
But you can make it more random and less determined. And then your game lives not by speedrunners but by mods
see: minecraft
determinism just means that the conditions the game runs in (like players' hardware or os or background processes) dont affect what outcome the players get
It makes it less rng. Literally the definition of determinism - no rng (ideally)
i hate to break this to you but most rng is deterministic
If people are going to fight about it, they can commit to the repo themselves tbh
You dont get it
Im not talking about math.random
Im talking about floating point errors that lead to some crazy funny shit
are you talking about cloudflare's lavalamp rng factory

sm64 floating point errors are also deterministic
I'd consider it if I wanted to implement physics papers on top of the engine, just to have LOD so less far objects update less.
it can be done with deltatime, but honestly a waste
i mean, does this even count as either?
while (running)
{
pollEvents();
inputs();
//camData.camPos = position;
//glBindBuffer(GL_UNIFORM_BUFFER, uboCampos);
//glBufferSubData(GL_UNIFORM_BUFFER, 0, sizeof(camData), &camData);
for (int i = 0; i < models.size(); i++)
{
models[i].transmat = glm::rotate(glm::mat4(1.0f), 0.001f * time * glm::radians(90.0f), glm::vec3(0.0f, 1.0f, 0.0f));
models[i].transmat[3][2] -= 5;
models[i].transmat[3][0] += ((i % 5) - 2.0) * 1.3;
models[i].transmat[3][1] += int(i/5) * 1.3;
}
calculateFramerate();
SDL_Delay(updateloopFrameDelay);
}
updateloopFrameDelay is a constant so it works like a tickspeed, but im still using deltatime for my physics too
If you cant determine it - its irrelevant. Determinism is useless if you can't determine it
how to patch kde2 under freebsd
Framerate updates create more errors. Less determinism. More random. More fun.
you'd love schedule 1
this feels like the worst of both worlds

it really isnt that bad. the deltatime actually does make a difference because even with SDL_Delay(), the updateloop is not consistent
do I have to return an argument from the function passed into map() in python
or can I just call use it arbitrarily like a for loop
it'll return None by default it seems
well, "return"
rather it gets treated like it returns None
They're lazy
does python not have a for_each?
No
dont think so
create a false identity and give them false info >:)
helo. u meik geym? i can has art asets me veri talent no ai. veri cheep
"just send an invoice to emailthatdoesntexist@gmail.com"
bro is NOT real
if i wanted to get art i could probably pay someone here 50 bucks to get it done properly
or my college
exactly 1 month 
Jancy^^ jancy._.star She/her
real person trust
I love having notebook

This would be benefits of both systems
Not that I'm invested in it, I just want it to end
dt=0
if deltatime is ever 0 you deserve to crash
i actually agree
you're breakign the laws of physics cuz askign for the time takes time
How much fps you need to get 0 delta in scope of 32 float
ye
Surely the clock never lies 
what about when we become 4d beings with enhanced senses and enhanced 4d computers that can run apps at like a quadrillion fps

Hold up. The clock!
in a loop that had nothing happen inside of it besides updating fps we had something around 200 billion fps updates per second, and that worked fine
then they would simply use a double
ye
Oh but then you have to update frames faster than your processor updates clock
Impossible
Unless the clock lies
what about when we become 5d beings with even more enhanced senses and even more enhanced 5d computers that can run apps at an fps we cannot even fathom

bruh
And they cant play your game from 10000 years ago smh
this is serious scientific discussion
Big float
256 bit float
this si the kind of argument "what if an asteroid fell down and burned up in the atmospere causing a electron to fly into my computer causing a bitflip and makign my computer explode"
I have no idea how you would even measure fps with multiple time dimensions
you dont
True. What if you get a bitflip
fpsps
complex time vector
fs^-2
Separate and duplicate each variable to consider possible bitflips
Raid type memory
they exist, mostly only for intermediate steps for astronomical physics
bro this is not even gamedev anymore, this is pure nonesense
trude
run two instances of the app and let the user pick the one they want
Run 3 pick by voting
In conclusion to the game dev, my solution is perfect tp end the debate, minus a bit of FPS loss in exchange for predictable physics
I stand by my original point of this
I know a 2007 game that has scripts calculated with int delta in ms

When you go above 1k fps it gets 0 delta
For no particular reason @olive sable what is the repo link if a version exists on GH
the stuff with ticks based physics i can somehat agree on, but it is the literal fucking worst if you have to do more than 1 tick update at the same time
i'm gonna revamp your entire physics handling out of spite 
-# Free commits :xdx:
if you do that you should not be making games.
you do either 0 or 1 tick update per check, if for some reason you have to do 2 then your loop should loop faster or get out of the industry
frame acceleration
So that is what frame generation is trying to be mhm
i do agree somewhat on his phsyics point so ill change that part of the engine actually
somewhat
what is the terminal framerate
?? its literally 2 different calculations
It only gets worse with time, so 4 frames
doing a then b then a then b is not the same as doing a then a then b then b
the terminal framerate is 200 billion fps 
???
i meant if the updateloop is so behind it has to do 2 tick updates
thats bad
it can happen for a variety of reasons
language gc pause? os scheduling? the kernel thread hanging for a few seconds? there are so many things that can go wrong
theres so many more
i feel like those are 0.00001% occurences
no
I love giving out ideas to the general public just because I can
skip ticks 
ok now you're jsut going off the deep end
absolutel dont skip ticks
Only I get to skip ticks if I use an insane window size in the openGL demo
mf
gc is frequent especially if low ram
scheduling will fuck some player over eventually
i thought c++ didnt have gc?
and gc pauses can be REALLY bad, like 2s long bad in certain scenarios
try to run minecraft with 512mb alloc
it’s not a gc’d lang correct, but where did you say your opinion was cpp specific
-# That 11520x2160 playtest was fun tho
c++ doesnt but individual c++ frameworks do (qt and cocos2d for sure, many other ones too)
sure i didnt
idk why yall went quiet
there is no but
mhm
7%
i personally have my own shit going on i have to give attention to sometimes thank you very much 
Forgot that rule of the internet smh
charge yo dam phone 
I didn't bother to use forge as I'd grab my laptop at that point which can handle 512MB easily
TypeError: map() takes no keyword arguments since when were you not allowed to specify kwargs for normal args
huh
wdym? like ye????
why wouldnt it be?

everything before the / parameter has to be positional
been a thing forever
pythonicism 
anything over
def fun(*args, **kwargs)
I love network over the highways being garbage at times
1GB so it loads
29fps 
for that render distance, on a gaming phone, makes sense
I rarely use this phone for what it is meant for
I think it is ram limited still
Time to give it my usual amount of ram
probably ye
actually, doesn't that just make deltatime preferable in those scenarios?
Nah, it is probably just chunk updates eating CPU time
if you need determinism, you have to use ticks, no way around that 
even swapping to modded didn't change much
well that or integers i guess? in some cases
hmmm
i guess with collision detection you cant really move 2 ticks at the same time
you still need to do them sequentially
Insert meme here
ok i give in
do you see the light
ticks are better for specific usecases
there iss till the issue of making sure your ticks happen at the correct time
correct
having a loop that constantly checks if its time for a tick is not a great solution, you're wasting cpu resources like that imo
I'd need to join a server for max FPS yep
I did actually have this set to vsync
you mean while(true) with no yielding to os? ye nobody writes like that
As the rules go, not doing something is faster than doing it
i mean getting the current time and checking if it matches a tick, i feel like doing that 200 billion times per second is a waste
kinda, i put the updateloop in a seperate thread
so then you update -> sleep -> update. and sure you can set the sleep to do the tickspeed, but i thought you said os scheduling would make it out of sync
the correct answer is chug 16 shots of vodka down and go with whatever you wrote drunk
amen
My honest opinion would to be store previous time and current time for dt calculations so that the combining of the systems doesn't have as much of an effect.
hmm
vulkan users on their way to write shakespearean novels' worth of code to draw a triangle
me fr fr
I give credit to those who went for high FPS triangle
im writing some pseudo-code for that but im getting lost in the sauce
-# I stripped so much of the mainloop for FPS gains
I probably screwed up my logic by not being in a code editor
double lastStart = now();
while (running)
{
double start = now();
updatePhysics();
double elapsed = now() - laststart;
lastStart = start;
sleep(tickRate - elapsed);
}
does this make sense???? i feel like it doesnt
programmer mode isn't active yet :SMH:
i think so?
wait
That'd be the graphics branch in my demo
oh that's fucking with my head
Let me just perish due to introducing more jank ideas and forcing someone else to write it

for graphics im stil gonna use deltatime, its smoother and you dont need predeterminism
well, mostly

Yep, I accounted for that in my flowchart
updating graphics per-tick could make for a cool aesthetic though
Also geez we are finally at the campsite yippie!
minus the camera
you might aswell just link your refreshrate to the tickrate
ah
in that case dont link your refreshrate

death to any user fr fr
Let me write out some sudocode for the flowchart
Better off me doing it
i asked chatgpt just to make sure, and even it got confused
I always forget the spelling (and I forgor it was said earlier somehow)
os scheduling will mean it wont run at a 100% consistent rate
and its impossible to make it run at a 100% consistent rate
so it will drift then no?
"agi 2026" headass
goodnight
sleep
nah

const double TPS = 20 / 1000;
double lastStart = now() + TPS;
double nextTick = now();
while (running)
{
double start = now();
if (start >= nextTick)
{
updatePhysics();
nextTick += TPS;
}
/* Uhhhh that's an issue, frick */
updateGraphics(elapsed);
double elapsed = now() - lastStart;
lastStart = start;
/* who needs sleep */
}
2am, perfect time to mess with the core of your system config 
this code was bad, i made it needlesly complicated.
simplified you jsut get:
double lastStart = now();
while (running)
{
updatePhysics();
double elapsed = now() - lastStart;
lastStart = now();
sleep(tickRate - elapsed);
}
i think this one does make more sense?
This is mostly what I wrote in the flowchart, minus a small parity issue which I'm unsure how to solve
the problem with that is th elack of sleep
im pretty sure that just blocks the entire thread like that

I'd think it is fine given it is dealing with physics on tick or otherwise spamming graphics
thats cuz you're doing graphics on the same thread i see
unrelated but what does beamng’s physics engine run at
like 2khz or something
you should do the same thing
2K ye
totally worth it, trust
perfect addition to your next 2d platformer
like the user defined one?
that’s a choice
xD
what is that supposed to mean?
my idea is that if its at lower than vsync, it will be choppy, and at higher than vsync you calculate stuff you wont see
it means that i interpret “tickspeed tied to vsync” as tied to monitor refresh rate
i meant monitor refreshrate ye
so it means if you game on a tv with a shit hdmi cable your tps will be 30, and some oiler will have 540
yes
what’s the point of ticks then
it’s like you want both the disadvantages from deltatime and ticks
im so confused rn
stop having a point
if the tickspeed is lower than the monitor refeshrate, then the physics will look ass
but if its too high then low end pc's wont be able to calculate them fast enough
then don’t bother with ticks? if you want determinism you need to have fixed tickrate. yes tick based physics engines do slow down on shit systems, it’s just a matter of optimization
I can resolve my skill issue yippie

but my personal opinion is you don’t actually need determinism in physics 99% of the time
unless you make your game based around physics. sam are you making half-life 3
yes
const double TPS = 20 / 1000;
double nextTick = now() + TPS;
double currentTick = now();
while (running)
{
double start = now();
if (start >= nextTick)
{
updatePhysics();
nextTick += TPS;
}
double percentage = start - currentTick / TPS
updateGraphics(percentage);
/* who needs sleep */
}
full-death
@olive sable no more skill issue, this should now make sense
it works for a single threaded loop ye
Update physics is updating a tick and graphics slowly approaching said new tick. I don't think this even has tick skip issues as you can probably compensate by using how much over you are from the nextTick. Still slow tho
Surely one can defer the physics part somehow.
What does suck is keeping a lastTick position and a currentTick position.
Or I guess probably offset from LastTick
-# I thought I was on vacation, why am I using my head to this degree?
Ending this here, good luck whoever ends up implementing this
btw, I think 120TPS is a good middle ground as this is essentially interloping physics frames.
I said stop thinking, not "what about we try and take advantage of the area being constricted to only update rays every tick"
irl friend called me on discord to invite me to play and i sleep with pc and speakers on
it's 4am here
this makes it so the inital drift is still present. so if the first loop was 1.2s instead of 1, then we are permanently 0.2s behind 
i think thats fine?
Iterative Search 
only other option is to async physics and just make sure graphics can handle 100%+ updating a pointer to where the current game state is?
double tick = now();
while (running)
{
updatePhysics();
tick += tickRate;
sleep(tick - now());
}
wait
???
This just works as long as graphics can accept a percentage progress yep
it would jsut use the old state, until it gets updated
interpolating between states makes latency and stuff happen
:hmm: you got a point there.
the reason os scheduling doesnt break this one is because it gets canceled out by the now() in the next loop i think???
os scheduling will always break, it's just a fact of life
Uwu*****************@amd.com?
why the stars?
redaction
oohh
yes
so uwu@amd.com isnt the full thing?
no it is not

I think it is better this way tbh
ok this one works probably i think mayhaps if the techlords are with me
🙏
I don't want to know what the rest of that email is
for a dev blog i wonder what tool you guys would recommend using for? From what i see i cant just have it in a simple file in my project like how i did my patch notes and ima try to see if i can save myself from having to code a website for it lol
jekyll-based solution is easy enough
Landing page for stillu.cc - based on Jekyll. Contribute to Still34/landing development by creating an account on GitHub.
basically all the markdowns will be rendered as static html, automatic if you have GitHub CI set up https://stillu.cc/
and if you wanna be even lazier you can just... serve straight markdown file to your audience
client-side markdown rendering, surely will not cause problems
what
we finished
it's almost 7am
great
schedule fucked
clang does not like std::atomic<float_t> with +=
but its completely fine with doign the smae thing with ints
and its even willing to compile the std::atomic<float_t> with +=, it just puts a problem into the vscode problems tab
weird
maybe a clangd issue?
fixed it somehow
either cuz of updating, or cuz of using bear
i had to update to get bear 
I thought we didn't want bears around here?
aight, vulkan has msaa
there should be full visual parity between vulkan and opengl now
i also implemented the new tick system, and now the fps is a lot lower on vulkan. but i can't tell if its cuz of the msaa or the tick system being broken
the answer is both apparently, ill look into it
its doing msaa 8x apparently, so that explains why msaa has a noticeable effect. ill max it to 4x
tutel

it was in fact, not fine
Submit it anyways
surely you can just delete the JS check
One of these days Sam is going to add VR support just to spite VRC and it'll be at over 1000fps.
I've been trying to research on how to hook it up
btw, if anyone comes in here again and talks about ticks vs deltatime i will throw a patato at them
no luck so far, but at least one part is camera per eye
Finally got answers, sadly the answer is custom SDL fork that has major issues still.
For your own research, your targeting OpenXR support
That is what SteamVR and the other linux alternatives target.
It'd be so damn funny by the end of this to just casually have a VRC replacement. That does sound like too much of zero budget tho.
Honestly I'd just be happy to see VR that doesn't tank FPS
budget isn't exactly 0, i just haven't spent anything yet
pfff
lets say the budget is maybe 50 bucks

I admit that it'd be worth learning c++ for, though I'd also be donating to the fund because I think it would be fun to make.
Once this fricking job goes through that is
I. KEEP. READING. THIS. AS. DELTARUNE. EVERY TIME.
LOL

the code is fugly tho
these std::chrono functions feel like a crime everytime i use them
const clock::duration UPDATE_DELTA = std::chrono::duration_cast<clock::duration>(std::chrono::duration<double>(TICK_RATE));
this should be illegal
i hate how i have to use this
maybe i can use uints like before but then convert to a std::chrono time when i need it for std::this_thread::sleep_until(nextTime);???
std::chrono is pretty wordy
what C++ does to a mf
why does noone use "using namespace std;" 
it's bad
huh
well i study on my bed and i got good grades
good idea to use that same bed for engineering
Cuz it fucks up import shit
exactly
the latency is not great though ideally i'd use the COM interface instead of the http comms, but the COM comm requires elevation

Wha?
the "how long can i RE a binary without hitting the decompile button" challenge
f5 = shock
good idea t
shock

shock
ok so i figured out how to see my qt installations
however this tool doesnt see qt6 so i just removed qt6 just in case
then i tried set up qt_choose varibale
which is absolutely ignored
then if it cant see qt6
what if it doesnt see some other qt
so stupid
so i have no idea who uses qt, which qt is used, are my qts even valid
since i dont know who uses qt when i rup my app, i cant configure it to use different qt
and i dont even have qt5/bin folder
"referred by another package"
maybe tell me WHICH package?
naah
its linux, boy
if its possible to make something more complex and ambiguous for no reason - we make it 
i cant believe they are using english, should have made everything in bytecode for additional coolness
this means another package depends on it
that package is broken as well
i'd believe so because your vigorously trying to install qt5 while qt6 is there
why use the older version if not needed
so i assume you need it
because qtchooser doesnt support qt6
and i clearly need to do some rituals involving choosing
why exactly
qtchooser is no longer maintained
how else can i make it choose specific qt version
when i just ./chess.appimage
it runs it with random qt version that has no way to be configured
i asssume its this
this file is not readable nor writable
so precompiled app you need to choose qt version?
qt6 has a different abi then qt5
or whatever your app is using
it probably doesnt use qt5 or qt6
i have qt4 installed and "default"
i assume it uses "default"
man why dont you just change source code and theme it as you please
its nice how someone decided to call his program version just "default"
"just" 
i looked up main.cpp of program it has nothing where they choose qt version
send gh link
i guess i need this folder
one sec
it has this which is not getting printed at all
oh shit
i need to run it with -v
i dont even have this version????
or do they mean it was built with qt6
seems like it wants either Qt 5 or 6
qt itself is in the app?
so i must rebuild it to change theme
mhm
your in ubuntu wsl?
try running QT_QPA_PLATFORMTHEME=gtk3 ./EXAMPLENAME.AppImage
gtk3 should provide a dark theme
why is this so slow
yknow what
i'll try after build
it warned my that "operations like gitlone are slow in wsl on windows filesystem", does it appear for building too
why do you want to build your own cutechess 
it has no dark theme on linux
doing it the programmer way mhm
which folder in linux can i work in
usr/ is permission denied
usr/local is permission denied
i dont want to make sudo before every command
will it work if i make folder and chmod it
or will it see it as a unrestricted subfolder of restricted folder and deny everything
(i think it worked like that in that debian i encountered)
the home directory?!??!?!
not obvious at all

usr is user, isnt it? why cant user use user folder
huh
classic
make subdirectory somewhere in your user directory
don't need to install globally if you just want to test

usr = unix system resources
at&t apparently
ooh i see
isn't it universal system resources
initial idea was, that it might potentially cause problems if i make it on windows, but shiro compiles it on linux
now i doubt it would cause problems... however
this is the advantage of using Python
but actually i think more and more about switching to windows entirely to use vscode live debugging
it should be fine as you're just using the std libs
apparently also yes?
it originates from Unix so both names make sense, the FHS doesn't specify the full name so it's all unofficial anyway 
NOW THE QUESTION
if my build was x5 times slower in windows filesystem, does it make my cutechess slower too?
uh no?
the cpu seems to be used much but what if it was wasted on filesystem transfering
once its in ram shouldnt matter
oh ok
if you're on Windows 11 you should be able to just run VS Code inside of WSL too
wsl shares the same filesystem
I/O redirecting shouldn't take much time
🥀 just stick with windows or entirely move to linux
no way. i just built it in linux and it automatically has dark theme now 
yes, ideally the latter option 
-# do it
but i dont want to play with dualsystem switching from linux to windows so i stick to wsl
i go program chess whenver i need it and just close wsl and continue doing things in windows
I know but this is kinda annoying to use when you're already on the same machine
since it's WSL there's no need for this since WSLg was integrated
it's for backward compatibility 
ok now my chess building is fucked up

ohhh
im in ~
stoopid me
wait
its light theme when i run it from there
ok so i entirely migrate to linux filesystem then
I would love btrfs too if not for the RAID5/6 issue 
sadly bcachefs isn't really reliable yet
what about zfs?
doesn't fit your needs?
???
would work probably, but adds extra complexity + isn't upstreamed in the Linux kernel
chmod +x ./cutechess
what does it want
https://openworld.news/windows-on-btrfs/ i found something cursed
now i wanna try it
its still white theme 
WinBtrfs 
does it need some ini file with it
WAIT
it has better compression than ntfs
windows on 4g partition?
ive done it on 6 gigs before
now it runs in light theme from the same folder i run it here
but at least i have this.. wont be a problem now
thanks for big help
it all worked out
Damn, haven't been popping in here as much as I wanted to when I joined lol. Started remembering that I kind of wanted to try and make a level creator for that Quest Through the Harrison Temple game, it was fun messing around with it and speedrunning it lol.
Now with Principal Variation Search, Quiescene Search + Late Move Pruning, Futility Pruning + Late Move Reduction 
less nodes is required to search for depth 8 compared to the previous depth 6
what
when i try to implement something new it either looks like shit or makes it worse
how do you even choose what to make
there are 500 different strategies with questionable perfomance
no transpositions?
yuh
for depth 9
it's more like the evaluation function messing the time up
it sucks
i'll measure time per layer too 
told it to stop when 100 seconds reached
I use playerTimeLeft / 8
or uh 12.5% of the clock of the current player
that's his max search time
ok so after layer 5 it started really slowing down
depth 5 was 3.6 seconds
depth 6 was 36 seconds
it grows exponentially 
not yours though
so i guess these things you did actually work
well there's a lot of pruning methods I used
reduction helps a lot too
basically ignoring to evaluate some moves
down side is heavily depends on move ordering
but then it gives 0
and if you have bad moves everywhere and this is 0
it will be chosen but what if its super bad move

but it will be evaluated back to the depth0
oh i mean maxdepth
uhh i dont get it
it always feels like "man this strategy sucks it will cause random false evaluations"
is it in quiescence or normal search?
normal search
do you have iterative search
the reduction is carefully crafted that you won't get depth 0 results 
yes 
otherwise you won't be seeing the layer thing
oh right
awa
awa
im also scared to add more things because im still not sure my current things work
no idea how to check if its right or not
it wins agains my old bot but my old bot is just a dum
and then i have 2 versions of this current bot but they can both have same problems i dont see
do more tests 
wuh?
just iterate through all captures
only captures? what about checks
i thought if i let it go on checks it will evade mates
it's actually just this in Sebastian's video
My attempt at creating a little chess playing program!
Think you can beat it? Give it a go over here: https://sebastian.itch.io/chess-ai
Support my work (and get early access to new videos and source code) on Patreon or Nebula
Source Code:
- GitHub:...
that i saw
and that's called an extention
Q-search is only used to find quiet positions
i do it like this




'd so i automatically lose









