#programming
1 messages · Page 76 of 1
i'm gonna write better code anyway 
true...
looks better than i would write initially
anyway, time to use the email notification feature to forward alerts to chatgpt 
ubwaa
i wonder.. @real sierra what is your section of the world 
i wanna come take a look
i haven't chosen a placce yet and prob will only play in the neurocord server until i learn everything anyway
looks pretty good mhm
i take it they havent all died then
thats good to hear
an improvement from earlier today
yeah they dont always keep themselves busy
but i have idling optimizations so its not too expensive

such as them getting the HELL off the road if they're not doing anything
ik what that is
they're all waiting for energy to build up
they're not allowed to take energy from the spawn unless it's full 
so once its full they all fight over it
first come first serve
import java.util.Scanner;
public class SimpleAI {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Hi! I'm your little AI friend. Type something to talk to me!");
while (true) {
System.out.print("You: ");
String input = scanner.nextLine().toLowerCase();
if (input.contains("hi") || input.contains("hello")) {
System.out.println("AI: Hello there! How are you?");
} else if (input.contains("how are you")) {
System.out.println("AI: I'm just a computer, but I'm happy to chat!");
} else if (input.contains("bye")) {
System.out.println("AI: Bye-bye! Talk to you later.");
break;
} else {
System.out.println("AI: Hmm... I don't understand that yet.");
}
}
scanner.close();
om a bunch of them decided they REALLY wanted to go somewhere
chatgpt made me an ai in java

never tested it though....
looks like it should work but it's cut off, missing a few closing brackets
Java? 
uhhh did you read the code
seems like a pretty

damn that's a nice monospace font discord uses huh i never noticed
You: I'm at my limit. I can't do this anymore.
AI: Hello there! How are you?
That's what AI was back in my days
Oh, I've seen this video. Pretty cool stuff. Very counterintuitive, gotta think in strings and springs to get rid of the illusion that physics breaks
yeah
java isn't really used for ai though python is better, im pretty sure
that message was like a week ago wtf
I scrolled back :D
they're very busy sleeping
snoozefest
python is more common, but there's LLM frameworks for basically every language out there
Also all the python frameworks are just wrappers around C++ AI tools
real eeper hours
Still sillying something?
yes there are onnx wrappers for every language
huh...
html isn't a programming language anyway 
how did this even happen
it isn't?

it's a markup language
machine learning 
If can't do what was asked -> do something different, lie and hope that no one will notice.
Based ChatGPT
hypertext machine learning
chatgpt, make me an AI in JSON
chatgpt
make me an ai
in.. hmm
screeps
make it in screeps
rn
wait can i do web requests in screeps
Can you make an AI out of gears I wonder. Like huge physical mechanism
use your big, smart brain
dont believe so
FETCH EXISTS 

happy birthday shiro
oh my god
does async not count as cpu time? better than lambda already. hook this boy up to an llm now
i did Math.min instead of Math.max
so instead of ensuring it always included minimum cost queued units in the current count
it ensured the opposite
fixed now surely 
this is valid js screeps
<-- fake ai according to chatgpt
fantastic
i have removed the concept of a const or var apparently
you've had this for one day how did you break it already
i know nothing about screeps but perhaps you forgot a semicolon somewhere 
seems like my requests are simply being dropped
i will say
given you are on a 20ms time limit per game tick
im not sure waiting for a web request is the play
tho maybe it doesnt count for cpu time
js does not care about semicolons if statements are on separate lines
Ew.
you can, like, not use them if you're coming from python or something
i don't always write them either i let the formatter fill in the gaps
no clue
from what i can tell, they're being dropped
another potential screeps player lost to the depths of a random invasive idea related to the game engine itself
i can forgive javascript for optional semicolons but i will not forgive it for string subtraction operations
Yall still doing your thing here huh 
nice sleep
didn't even take 5 hours
i'm getting zero responses so either it's dying from the 20ms time limit, or they're dropping all webrequests out from their server that isn't their own domains
not gonna bother checking, it would have been absolutely hilarious to call the chatgpt api tho 
I said i was gonna finish my other convo first, took longer than expected
all this means is you need your own LLM instance in game

but now you're started another conversation
mhm javascript llm
insteaad of sleeping after that one finished
i wonder if promises are just useless now
pytorch wasm build where
1000 onnx wrappers disguised as separate ml libraries time

It wasnt just one convo but i didnt want to end on a serious topic
i just FUCKING DEFINED IT
sandbox is remade every tick remember
only things in the global Memory object persist
js is kil. promise explode
welp i cant explain that one
can you not define stuff in the console
what
Is it because of the promise maybe?
if it's helpful to know
screeps uses an older version of js
missing things like Array.flat()

Surely it's at least es5 though right
think (hope) so
Or was it 6
yeah it does not like promises
might not be 6

no buiffers
that explains lodash
what if i wanted a buffer screeps
what then
what
it autocompleted that
i know what limitations i'll be working under now
where

right there
did you put a ; after a function definition
i saw you do that earlier too
to put code after it, yes
classes work 
Ye this might take a while longer

tomorrow i make server and start playing
Yeah, they made a reversible one by using compliant mechanism

looked back at screeps
had a big bug that was breaking everything 
just fixed it

Experiments with procedural sky shaders and dynamic environments in source sdk 2013. Features planned but not yet implemented:
-Aurora borealis
-Upper atmosphere cloud layer
-Separate sun and moon objects
-Storms and precipitation
Currently getting 160 fps on this map with an rtx 2070 super. The sky shader is only partially optimized and could ...
Undead engine
The same wizard https://youtu.be/IF9cFAdZrwA
Work in progress. This system allows for nearly infinite customization of sky, lighting, and environment settings. Built on top of mapbase.
Todo:
- clouds
- separate sun and moon entities
- weather (rain, storms, snow)
- implement day/night cycle (interpolate between all variables)

Can't wait until all the mods are so absorbed into screeps 
this makes my spine ache
it was a really serious bug too
Help, I'm in this gif and I don't like it
on the bright side
accidentally spamming units has helped me build confidence in my caching solution
my cpu remained manageably low
I will go and buy groceries and then cook now, bye
Who has broken at least 2 keyboards while programming
Why?
Why would you break a keyboard while programming?
Did you press the enter key like it owes you money?
sounds like something you might want to work on
Yea
on an unrelated note, i just lost an hour to the fact that git will refuse to work at all with an ssh-agent if i don't add
core.sshCommand = C:/Windows/System32/OpenSSH/ssh.exe
idk who to thank, openssh or windows
If you use git for windows, it makes sense that you need to point the ssh to the windows binary version
What I can't fathom is why they didn't put it in their PATH like every other windows utility
Oh ya funny thing happened on my pc. My windows antivirus software thought that my OS was a virus. what do I do
clearly you should wipe it and install nixOS
lol fine but I’ll back all my stuff up first
Hmmm, it seems like there MAY be a conflicting ssh.exe found by git somewhere with a different config
It’s not like I’m going to have to swap over from windows
wait, you might have a point there
there's an ssh binary in the git folder
i have a kinda fucked up system since my PATH is actually just full so i needed a 2nd one that then gets appended in the shell but the openssh binary should be selected either way in a clean shell
maybe i should give up trying to manage dotfiles for linux and windows in the same repo ugh, so many small yet annoying differences
just tell people to look it up
It happens. I'm familiar enough with development on windows that some of those pitfalls can be spotted
Just like when my PATH env var is reaching its maximum limit
Like why does it have a limit 
another bug 
the spawn queue wasnt checking the cost and would try to spawn things outside the current energy availability
which would fail silently
Technically there's no real limit but the UI they provide does have a limit or something, could be wrong it's been a while

32k character. Not to mention the entire path length limit too (not env var path, the actual path length)
Which is problematic for me at that time because I have so many SDK and devtools that expect most of the things in path. So rather than trying some hacky way by modifying the installation process, I just have a script to select what env I want to activate
Brother, it's the weekend. Touch some grass
brother, it's the day before cloud hosts the screeps server
i must ensure this is in a state ready to deploy
Shiro is trying to get every advantage he could. Cue to the next day the base is already steamrolled by Evil's Holy Army 
Is there a Visual Code Extension to make you solve the error easier?
I mean, UI helps sometimes
?
LSP
i'm not writing this in vscode
Oh for screeps
i have stack traces 
thats all i need
i even have coloured console output
courtesy of
function warn(s) {
console.log("<span style=\"color:#FFCC33\">["+Game.time+"] "+s+"</span>");
{
There is no console.warn or console.error?

Heck, even console.table?
to my knowledge, console.log is the only console function implemented
JS dev will do anything but touch a debugger

like you would use a provided debugger even if it was there
instead of writing your own


If the paste is non-conductive, LGTM. Ship it to the end user
Lunch first for me
Tasty lunch
I took a lesson about taking pictures in my room to share food before lol. That is taken near kitchen with lots of natural sunlight
i ran out of white rice
white rice can go with ANYTHING
oop i got off topic
uh
do [ coffeCup.drink(); workTask.Execute(); if (coffee.Cup.Empty()) { if (coffeePot.Empty()) coffeePot.Make(); cofeeCup.Refill(); } } while (!workTask.Done());
hehe looks like crap

I am so fricked
iggly what does the bingo board look like now
this atm
at least as far as I'm aware
I just tend to search for messages containing bingo
am I counted as a common chatter here
I'd say so, and I apologize for not adding B3 after revealing a new project
Just skipped my mind
good morning
yeah I was like B3 I did because I was gonna need feedback on it at some point lmao
A few of us handle fetching bingo, but anyone can update it
It isn't like it is web app, yet
#bingo
I am still salty AI sentience argument was not on this one
You're giving #programming idea
Cloud will just update neuro bingo to include chat bingo
Not if I make a github for it first
which I already did but haven't bothered to update
Yeah? WE'LL USE FORGEJO!
The original of this was an SVG, stolen from the FAQ
One day I will get around to finishing that one
So its only time until it gets nuked to hell and back
Last I worked on it, it actually was able to handle multiple tables now
only with the worst config file known to man
At least once I do this one, I can do the bingo easily enough.
built to be too flexable
There is an easy way. Just use JSON with static web host like github pages. A change to the bingo is a push to the repo 
Client-side JS could be used for persistence
As the original meme went, md -> svg + png, hosted on github pages for the embed.
That's the FAQ, so I'll just be commiting every bingo slot filled
The reason for the bingo bot: to git commit every bingo slot.
Can't wait to random select new bingo slots. keeping a counter on N5
Unlikely 
bingos since vedal has chatted
neuro would probably likely respond before vedal does
I still think it is vedal, but still unobtainum
We need a good turtle bait
I would say mass misinfomation, but that one would have worked by now
Hmm, close to 4 hr
just stop time to play screeps
yep
The problem isnt the actual time, im not paying 7.50 per day for mobile data
people dont understand why haskell style is a thing. Its not made for C, its for writing delimited text without a trailing delimiter. Here are two ways of writing the same thing:
(
a,
b,
c
)
( a
, b
, c
)```
In the first case, if you want to add an element after `c`, you have to add a comma after it, but all other options give you "extensibility" for free without changing existing lines by only adding new lines.
In the second case, if you want to add an element before `a`, you have to add a comma before it, but all other places can be added to without changing existing code.
The second case is additionally more compact, so it wins.
If the language does support trailing commas, the first option may still be preferred despite being less compact. In fact, currently the Nix ecosystem is migrating in this direction.
You don't have monthly plan?
Oh, hi Chay. I've fixed my camera by taking a picture in a brightly lit rooms now lol
I forgot that EU is wack
Montenegro is not part of the EU so we dont get roaming
Does your sim work for the entire world?
I get these places
No, but my country is archipelago and large enough so I don't experience much issue with mobile ISP
And also because I don't travel much outside of my country. Traveling between the island is already a PITA sometimes lol
I am 2000km from my house tho
2000 KM is almost the entire country span
my mobile plan with unlimited internet is around $0.1 a day and it makes the carrier scream in pain

(billed daily rather than monthly)
Our wifi is like 80 bucks / month
And my phone is 10 / month
I wonder if saily could work great for people in the EU
Here we have unlimited but with limit 
I doubt it would work for montenegro
I cant find saily on the play store anyways lmao
I like EU approach to new stuff. Let the rest of the world be the test ground and refine it for EU
Which is nice if you don't always need the latest anything
My phone doesnt have e-sim apparently
The nijagara has wifi tho
Theh forgot the water of their waterfall tho
I hope screeps on phone isnt too shit
....you want to code on phone?
We have "Thousand waterfall" here
Not the worst experience, not as bad as running code on your phone
Otherwise there is no time yo prepare
Cloudburst will be opening the server today!

Huh
Lemme put in desktop mode
passing errors out to the client
It works in desktop mode, but i cant copy paste the code
This is normally why I grab a keyboard with modifiers even on android
No screeps on the playstore 
the code block should be able to be CTRL+A 'd as long as you have it selected
the problem on android is that you can't easily do that
Guys lemme play

I dont even know what those are
Æ
bwaa ligature when
(the text is the same)
if I could I would vote both no and ew
I love arrow ligature
someone actually let you play
It was a spare machine to be fair and I trust Sam
i like some of them 
fair enough
The wifi here is just too slow
I love code not working bwaa
I got like 4.5mbps
o7
One way or another, the code now works
This should have not taken as long as it did
They are mutiplying at least, took forever to get back to basics without any hardcoding
Besides the issue of only one source being targeted at the moment, this is good enough for now.
shiro ain't looking too hot
o7 shiro
Tbh at thisvrate ill only be able to join friday
I cant micro manage a colony like this
Wait lrmme crop that
Dry Dry Desert IRL???


from a river to a parking lot? america must import this technology immediately
So true 
before I forget, @opaque wharf screeps have a say action limited to 10 chars
Back to eep
What?
So the screeps can only say 10 char?
What kind of bass ackward limit is that
you can nuke people in this game
Hey guys,
I got a somewhat strange email for the vedal plush merch. It looks legit, however the link redirect to https://ctrk.klclick.com/l/ [followed by random string]. This link gets blocked for me.
A quick google search provided nothing conclusive for this link. Does anyone know if this is legit or a phishing attempt?
I do not know. What is the content of said mail and have you ordered it or maybe entered your email on waitlist before?
It was sent by news@hellojuniper.com which is the merch company of vedal and I did order the lava lamp.
its a url used by the mailing list to track your clicks
its fine to open it
Yeah, I am like 95% sure that it is fine, just want to double check if someone knows something to prevent me from doing something stupid.

i have done a thing
So, Shiro
It turns out the last mysterious function that I got was a tan
Not sqrt
What is the thing
Also currently struggling to get up from my couch to actually program stuff, but meeeh no motivation
There is a particular feature tho when I fit a tan function
Oh, nvm. It was an artifact. Yeah it is a tangent function
def tan(x, a, b, h):
return a*np.tan(b*x)+h
def sqrt(x, a, b, h):
return a*np.sqrt((b*x)-h)
opt, cov = scipy.optimizer.curve_fit(tan, cat0['x'], cat0['y'])
...
I have no motivation to code, outside work
It sucks cause I got projects to do
Holy shit, you're online right now
I literally never catch u online anymore, I missed ya 
I'm online pretty much all the time. I just lurk
Oh 

I know that feel too much
I have multiple projects to do an.. oh PVZ
When you want to invest like 8 hours into so you are done. You have everything in mind what to do. You start it and you just stuck 
Yeeeeep
I'm better at planning than I am at doing
Honestly I might just start breaking stuff down into even more tiny parts for that minor boost of serotonin
Im am alive

We were supposed to arrive like 2 hours ago, but the hotel we booked didnt exist
wait WHAT
Huh
We found a real hotel now
Did not exists?!
Scam account
You pay in advance
So you book the hotel and then your money is gone
It wzs only like 250 so not too bad, but still suck
Hi Shiro 
I download the screeps docs repo on my phone, but it wasnt all that readable so i just read the vulkan thingy more
Im at page 140 or so now, the render loop works
If i had actually programmed it i mean
@rare bridge 
used screeps-launcher probably?
What are you guys doing? 
neurocord screeps server

it does surprise me a bit that $5 is a deal breaker for so many people
it's like the price of one or two coffees
You have till friday next week
Actually, take as long as you need
whatever it takes to not let shiro have a headstart
dw i'll give myself a head start 
Fuck
Like, the game client costs that much but you can set up a server like in the good old days?
Everyone is gonne be miles ahead 
yeah the steam client costs $5
Ill just have to nolife it for a bit to catch up
Neat

It's definitely something I would love to play, if I didn't absolutely feel like doing nothing on weekends 


Cuz i downloaded the itchio docs repo on my phone i have all these images now
Is the plan to keep posting about screeps here, or should we get a diffrent channel?
Bold of you to assume I have $5
I haven't looked that deep into it, but could I use screeps like an ant colony simulator where I program the ants? Or is there no such thing that could act as pheromones? 
tried to get cell shading via direct rendering
unfortunately, the performance was bad
was pretty much unplayable
you could implement pheromones, you just have to figure out how on your own
your limited to 2MB of memory
10MB if you're clever
Ah so it's global state pretty much. You can't use the world as your memory

non-physical objects that you can place in any room at any location
Right. Can they hold data?
no
Fuck
Ah
so you could make a map in global memory
Yeah I feel like that'd explode the memory
Pheromones are based on strength, so if you can't simulate that in the world environment it's kinda dead already
unless you are very careful with your phermone use
Huh, what tf am i looking at???
U is uranium, wtf is ultrium?
there's a whole crafting system late-game

Wait, cursed idea
you can sell minerals on the market
How many colours are there...
At least 3
you can also use some minerals for stuff like generating safe zone activations
good question
they're defined by constants so
can't be too many
You can see where I'm going with that right
maybe
If there's a way to store memory in the world, it would be so easy to cheat haha

one less excuse to do anything but play screeps
Iirc you were on shard 3?
But what do the shards mean?
your code executes on each shard separately
but your CPU limit is shared between them all to my knowledge
there are inter-shard portals in a few places that let you travel between shards
(well actually I'm on a bus for another hour or two but shh)
and there's also some specialized inter-shard memory for communicating between them if you wish
I like how i was the first petson that bought it in neurocord after shiro started advertising, but ill be the last who's able to play 

it's ok
you'll be the one who knows what you're doing most
cloudburst lost to the console after all

Will i know what im doing? Im mostly just being tourist things rn
my beloved
Cloudy and full of hills. Is this Scotland?
E
surely
Surely 
I'm very tempted to do some wasm shenanigans for pathfinding icl
save a few picoseconds 
let status = creep.doThing(target);
if (status == ERR_NOT_IN_RANGE) {
creep.moveTo(target);
}
I would invite you to actually use your available CPU before optimizing
I will
real and true
I will use all the cpu

sure you will
surely you won't be stuck trying to save 0.1 of your 0.2 CPU overhead
I will calculate the universe in screeps


Wait is the server up
no
No
cloud broke it
wdym broke it
it opened and then closed and no longer opens
Cloudburst is slow, but that means i have more chance to catch up
About the nolifing thing, ill probably work on my game engine too.
I dont have the energy to play the same game 20 hours
yeah i know
cloudburst was in my team for the game jam
you were planning around 4h sleep
I am gonna get drafted into modded technical MC soon so we'll see how much screeps happens
it's ok I find screeps is best worked on in short bursts anyway
you make changes, leave for a few hours, come back and see what else broke
Shadow still has his mc server running cuz he forgot the password

lmao
I had a crazy dream last night
Why 2 moves?
where I had a bunch of roommates that didn't like me but we were all practicing for some magic school
when a creep moves, it generates some amount of fatigue per part dependent on terrain
a creep is immobile for the tick if it's fatigue is greater than 0
a move part reduces fatigue by 2 per tick
I think
i figured out why my web requests were failing

or at least the most likely reason
Wait i shouldnt cheer, im not able to play rn
apparently the cpu limit is a time limit, so by default on shard3, you have a maximum of 20ms to execute your tasks
but you can also put cpu time in a bucket to then use in 500ms batches
pretty sure you should have up to 500ms if you let your reserves increase


time to check on my screeps
wonder what they're up to
I'd also be mildly surprised if they let you actually do web requests but idk
need enough cpu to talk to chatgpt 
you can always misuse the web api
LOOK AT ALL THAT ENERGY
THIS CREEP COSTS LIKE 800?
(I have absolutely plans to do similar misuse
)
wtf 
damn that creep does nothing but work
it seems ive fixed all the core issues with my ai
yes it needs to be dragged to its work location
wtf i drained the source completely
Aight bye
time to add new logic
so it moves faster
i have like
over 10000 energy stored
god that was such a good change i made last night
never actually seen this warning before
so wait does that actually work on the public servers 
Make separate service to buffer the screeps request and while waiting the screeps can accumulate CPU time
ez pz
what would i even put in public memory
something that another player could understand with no docs and no knowledge of format
JSON 
time to implement IP over screeps public memory
my thought was actually a function
how hard could that possibly be 
if i put a stringified function in there that grabs the rest of my relevant public info
and returns it as a nice table
#programming really do be doing something else but doing the actual task/game 
its that or i put an RSA public key in there 
ive been lurking and i can confirm
At least do ECC 
The first 100 people to use code ACEROLA at the link below will get 60% off of Incogni:
https://incogni.com/acerola ! #ad
Digital color theory is a mysterious black box that few resources bother explaining, but how does it all work? Where did it all come from? And why are the color pickers in the art programs you use so bad?
Topics covered inc...
Anyway, the journey to my mobile development ended up at https://expo.dev
i am not concerned about compute-bound attacks happening in screeps
colour 
It's not just about the compute. The key size is smaller
stupid unreal and its 10,000 shaders
(good video though)
thats a fair point
but i can also just use RSA 256

OkLCH the GOATED
At that point just use AES 
Kerberos 
See, there is always some more cursed way
but i need multiple servers for that
Multiple service, not necessarily server 
shiro why do you need this
See, that's like asking the creator of movfuscator why do they make it
im just trying to think of what the public segment would ever be for
Because they can
i cant exactly hand other players docs on how to use my public memory segment
Anyway, back to work I go
so im trying to find something reasonable to put in there
my only idea is for like tagging clan members?
so you could put like a signature in there based off of the owner id
you would need to sign it somehow
yeah
but you still need to key it
because owner id is public too
need a secret of some kind
I mean in the context of a clan the ringleader can just distribute keys oob
but it still makes no sense
JWT maybe?
at this point you may as well store a list of owner ids
because those cant be forged
ig
but the cursed signature method doesn't need everyone to constantly maintain a list of friends
instead you can just "hey guys here's my proof im a friend, if you don't know what this means I'm an enemy"
also it's constant time 
all algorithms are O(n) where n is the number of times I run it
real and true
something ive always wondered
can you hand out an rsa private key to everyone
and keep the public key secret
isn't that the whole point of it
no the point here is that
speak for yourself, $5 can buy me a few months of coffee
or a few lifetimes of screeps

the better deal is clear to me
coffee is temporary, screeps is forever
the lives of screeps mean nothing to me
i want everyone to be able to decrypt my messages
i'd take coffee over them any day
but i dont want anyone to be able to create messages that seem like they come from me
here we go again
human pattern recognition
its easy to read it
i am better than any image transformer
built different
yes. pretty sure thats what it's for. You sign messages with your signature (don't even need to encrypt it), and anyone with the public key can verify it came from you
welp before i have a mental breakdown of coding today im getting a snack
wish me luck for my wellbeing
i had always thought the public key had to be specifically for encrypting and private key always for decrypting
With public-key encryption, anybody can encrypt data with the public key. Only the owner of the private key can decrypt encrypted messages to recover the data. With signatures, only the owner of the private key can sign messages. Anybody can use the public key to verify the signature of a message.

it's exactly what you want :P
slap JWT on top of it to save on lookups and it's pretty efficient
That's... just the usual RSA
The usual RSA is used to sign is because encryption using it is a H U G E, and I meant C H O N K Y numbers
You encrypt using secret key, and everyone will decrypt using shared/public key
I mean you can just use elliptic curves but sure
so you can decrypt with public key

i had a feeling it was possible but kept telling myself it wasnt
yes but only what you encrypted. if anyone uses the public key to encrypt, only you can decrypt it.
but yeah the modular arithmetic checks out
yeah i get that part
just saying :D
ik

ok i see
then signature makes sense
i can send out an encrypted secret and it only decrypts to a shared known value if its my secret
could just encrypt my ownerid or something
IIRC, if the encrypted data is known then someone can get the private key
So you need some nonce
The whole idea of TLS in Screeps is over engineering 
agreed
but nobody liked my idea of hard coded names
so here we are

stop using infeasible attacks as a counterargument to my ideas
you programmers
grrrr

hows that calculated btw?
one more technically correct comment and im deleting your chnanel
1 CPU ~ 1ms
oh I see
cloud was looking at web requests
You can, and it will be cursed
Like what cloud is trying to achieve
i think communicating with an external server in that time frame would be
difficult
the transmission overhead probably kills the idea
since you need real time data
UDP and pray ig
can js even use UDP?
Wait, you can open raw socket?
Some runtime (Node.JS, Deno, Bun) can
Oh, just HTTP then. You can maybe leverage SSE
To minimize latency
If websocket is not available
If websocket IS available, then use that

my brainpower needs to be dedicated to the immediate practical screeps needs
nope
just memory afaik
ah damn
still thinking on that ant idea haha
Alright, back to work I go

back to work
i did consider phermones at one time myself
but it seemed too hard to store them
and too expensive to modify them
ants feels like it'd be possible if you just made a large array
its memory bound, thats the issue
hm
max 2MB memory if you use the built in serializer
max 10MB if you work on raw memory
tbh you only need pheremones in the few rooms you're actually in
which are only like 50x50
I looked it up. you can have 10x10 different flag colours (though you don't have to use preset colours) and you can put stuff in the name... so ya know...
and each phermone needs to store a fair bit of info

you should be aware that
since flags are an object that technically change game state
they incur an additional cpu cost to create
yes but they could be so worth it
and you cant modify name, color, etc after creation
I love writing code that has "emergent behaviour"
way more fun to me than directly writing AIs
ive actually tried filling a room with flags before
couldnt accomplish it within a tick
so you need to watch out for the compute bound
especially since you still need some left over for actually moving the units
okay so.. flags are expensive, but can hold a variable of 100 different values. that.. is pretty useful
You cannot have more than 10,000 flags
literally 1984
lemme check something
okay but it looks like flags dont have their own memory
if you somehow can use this efficiently, thats 62.5 kB...
yes which is why I'm saying you can use the primary and secondary colour as memory
yeah
I love cursed shit like this that can give you an edge
oh i lied actually
you can change the color of flags
and the position
just not the name
yeah
i think the more important thing is the flags' position
you can use them as e.g. waypoints
you could use them as the phermone sources themselves
as a spatial index or whatever
color for phermone type
or i guess you'd want that in the name actually since its fixed
well, ultimately just storing that data in your own memory is probably more efficient
since you get 10mb
chayleaf prob right, memory also doesnt incur the insane costs that flags do
well. pheromones need two things: a decay and an identifier (like.. "danger" or "energy"). And technically you can basically split the colour space into a few specific marker colour combinations, and the rest can be a binary value
yes, and I suspect it's that way to prevent cursed stuff like we're talking about
probably
so i wrote a script
oh no
but being able to store 1024 different values in a flag is incredibly useful

then changed the code to target random sources
so now i have many creeps
and they are working very hard
... in simulation mode
given that I don't have a lot of energy/time... is screeps a game I can play "chilling"?
you're in the top two screeps players in the server
would those perhaps be the only other 2 screeps players in the server
i would even say it's best done chilling
at least on the official server, there's a few seconds between game ticks
so any code changes take time to translate into actual game world action
best to check on them, make changes, and then leave them be for a while
nono I mean like.. ya know how I can boot up RimWorld any time, and come back to it whenever, and pause it whenever. that's very chill ya know, even if the gameplay is not most of the time haha. but I worry that with a constant running world I may log back in and come back to everything in ruin
i wonder.. can i send arbritrary emails to myself
even if it is, i dont think thats too bad
the game is very forgiving with your ability to restart
if you die, you just pick a new room and get a spawn there
yeah if you die the game just lets you restart
and then your ai does all the work for you
oh I see
Very silly game you got there, too bad I'm broke






you massacred all the creeps















