#programming

1 messages · Page 85 of 1

glass flower
#

a single energy source is slowly bottlenecking me

olive sable
#

My wifi is shitting itself, ignore duplicate messages

glass flower
#

uhhh that looks like a scam message?

rare bramble
#

turning everything to JsObjectID doesnt work either

olive sable
#

Im seeing a designflaw o7

glass flower
dry charm
#

okay looks like this is just scam images?

#

yeah advertising bullshit neurowheeze

olive sable
#

My screeps go to the closest ones, but the miner next to the spawn keeps dropping new ones so none of thd gatherers go to the far one

#

Guys all these embeds are saturating mh connection AquaCry

dry charm
#

@real sierra AAAA

glass flower
opaque wharf
#

@real sierra you should come back down here neurOMEGALUL

#

Yay

rare bridge
dry charm
#

when will discord users learn to NOT SCAN DISCORD LOGIN QR CODES

tight tinsel
#

mods crush his skull

rare bridge
#

when will discord users learn basic internet security

raw trout
#

I'm alive!
Got back from AniExpo and it was a blast!

rare bridge
raw trout
#

Suprisingly not alot of Neuro merch neuroSadge

#

I was able to take a pic with a neuro and evil cosplayer though!

rare bridge
#

LETSGO controller at level 4

glass flower
rare bridge
#

LULE what defence

#

also what invaders, i've had NONE so far LULE

glass flower
#

where are you?

#

like your coords

rare bridge
#

3 rooms below you, E37N34

#

literally 2 rooms away from an invader room

glass flower
#

scrajj they should be coming from your west

#

around every 100k energy mined

rare bridge
#

their asses are too lazy

glass flower
#

well.. but if they come.. they will fuck your shit up now YES

#

better start building ramparts or walls YES

rare bridge
#

fun

#

i was gonna work on splitting up the harvesters and builders roles today, i'll throw a few defenders into that too

glass flower
#

the right ones can spawn now ehehe

rare bridge
#

tell em to spawn already they've done fuck all until now CerberOMEGALUL

#

tho rn my code is idling all my creeps to death

#

let's get these creeps working

glass flower
rare bridge
#

Hmm i think storage first would be a good idea

rare bramble
#

evilDeadge I solved my issue, the solution was way dumber than it needed to be

rare bridge
#

lemme write some basic defence code quickly

glass flower
#

PauseCat what was the issue?

rare bramble
#

calling .ok_or() on a Option is eagerly evaluated so my error function was run regardless of the result:

let spawn = game::spawns()
                .get(spawn_name)
                .ok_or(self.abort_task("cant find spawn", "ID resolve failed"))?;

changing it to lazily evaluated .ok_or_else() solved my problem

let spawn = game::spawns()
                .get(spawn_name)
                .ok_or_else(|| self.abort_task("cant find spawn", "ID resolve failed"))?;

evilDeadge This is the first time I saw a really good opportunity to use these so I havent fallen into this trap before

glass flower
#

ReallyMad ok_or_else!

rare bramble
#

so neuroHypers I solved my problem but evilDeadge since I spend hours on a trivial issue like this

opaque wharf
real sierra
#

"rust compiler always tells you what's wrong!"
also rust:

rare bramble
#

welp, at least I solved like 20 unrelated issues in my codebase hoping that It would solve my issue with resolving the ID before getting to the actual issue

real sierra
#

accidental improvements

cobalt sigil
#

introducing water boiler pc

tender river
#

if it gets too cold you can heat it up neuroPogHD

real sierra
#

water cooled (?)

rigid snow
#

is the point to use the pc as the heating element

rare bridge
#

my defender is confused

inner pike
#

how the fuck

rare bridge
#

conditional spawning based on function calls implemented

brisk laurel
rare bramble
#

I think this is way better and more explicit than calling .ok_or_else() especially since Result<> has a similar function called .map_err()

rare bridge
#

my code handles this like:
the defender is set to have a max of 5 creeps at any one time, but to spawn more than the minimum i have set (1), the condition of room.memory.state == "defending" must be true (this is set when a hostile creep is detected rn, but i plan to make it a bit more detailed eventually)

so i'll always have 1 defender idle which can respond immediatly, but up to 4 more can be spawned if a hostile creep is detected

warped narwhal
cobalt sigil
rare bridge
#

water heated*

left solstice
#

On steam it is 5$ but on the website it seems to be free so I'm a bit confused about the difference

rare bridge
#

steam allows you to play in the mmo world (which we're playing in rn)

#

i'm being constantly reminded to make a private server though

left solstice
#

Does that mean I need the steam version to join any server?

rare bridge
#

only to join the screeps-hosted pesistent world

rare bramble
#

from what I understand you need the game to join the official world and to access the visualization client, you maybe could upload code to private server without owning the game but you couldnt see what's going on so I think that would be kind of pointless

left solstice
#

Shiro recommended I join "the novice zone at shard3 E38N38". What kind of server is that and can I join without steam?

rare bramble
#

you have to own the game to join the official servers

glass flower
#

you can use the live demo on the website to play the tutorial tho

#

but yeah to actually join us and such you would need the steam base version i think

#

but also i feel like its getting a bit cramped around us LUL

#

even more players would just cause problems for us all down the line

rare bridge
left solstice
glass flower
left solstice
#

I wouldn't last long

glass flower
#

there is Tutorial + Training + Custom YES you can select the other things too

#

its not a proper private server obviously. but it should teach you the basics and allow you to explore a bit how things work

left solstice
glass flower
#

tink i think its the same

#

but anything involving multiple rooms will obviously not work

left solstice
#

Is there conflict with bots or is there conflict only against other players?

glass flower
#

invaders can show up in your room every 100k energy mined roughly so you need somekind of defence. but there is also a stronghold of the invaders that you could raid it has resources and such that can definitely be useful

#

so its kinda pvpve

left solstice
#

Nice

glass flower
#

but.. since its a persistant world most people are wayyy outleveling you. and would just stomp you if you don't spawn in a respawn area or novice area to give you time to grow your base before they can expand into your room

#

i feel that most people are likely avoiding conflics.. unless they are in the way or overextending

left solstice
glass flower
left solstice
#

Ok that's what I thought. Thanks

glass flower
#

but you can obviously keep your scripts that you developed in there

#

and move those over to the persistent world

olive sable
#

I am in croatia now neuroHypers

#

Mobile data lesgoooo

trim valve
#

@amber fractal ok in practice this is actually a lot better than I expected

#

now I need to figure out how I'm doing with my ME system neuroSob

#

because like, I would just tear down the old one fully but I'm a bit too busy for that atm

hoary lion
#

I love overly engineered minecraft modsd

true hemlock
sour harness
#

Need more GPUs

cobalt sigil
rough bloom
true hemlock
steel mesa
olive sable
#

Im at the new hotel, its good neuroHypers

#

Fancy hotel

dry charm
rare bridge
#

my entire colony almost died out MONKA

quiet finch
#

Someone knows how evil's tts work?

#

Or multimodal models

#

Or none of us has the answer

dry charm
#

Who has the picture

tight tinsel
#

dont even think the chart has anything about evils tts

maiden geyser
sour harness
sage crag
noble zodiac
#

where is the lisp expert when I need them

#

I think my hash map implementation is working

#

tho its technically not a hash map but who is counting

opaque wharf
#

konii is counting it probably

sage crag
#

hi

opaque wharf
#

Drag race it against hblang hash map

sage crag
#

i am counting, 1, 2, 3, 4

sage crag
opaque wharf
#

I mean, if people drag race cpython and nodejs, why not hehe

noble zodiac
#

its hash map vs hash array mapped tree

#

I can promise you that I use less memory tho

sage crag
#

if you can beat inserting and popping 5 million elements in 339ms then you win newero

noble zodiac
#

what does that even mean. What kind of elements

sage crag
opaque wharf
#

Am being stupid lol

sage crag
noble zodiac
#

I assume both randomized

sage crag
sage crag
#

id rather not do a getrandom syscall each time neuroSadge

noble zodiac
#

so what do you do then? inserting the same key isn't really the point, no?

true hemlock
opaque wharf
sage crag
rare bridge
#

@real sierra you have no clue how close my creeps came to fully dying

opaque sigil
sage crag
olive sable
sour harness
opaque wharf
rare bridge
#

finally got my miner back

opaque sigil
opaque wharf
#

But then again, it is possible that he has full blown server setup

opaque sigil
#

i don't think you can mix sxm generations on the same board but i could be wrong on that

#

that's still sick though, hope the h100 pays itself off eventually neuro7

opaque sigil
#

hey, if it works it works

true hemlock
#

moreover i don't actually have a use for nvlink for now since my research doesn't actually require multiple gpus per subject

opaque sigil
#

even better neuroPogHD

true hemlock
#

its also unfortunate that the PCIe version of the cards are worse than SXM version lol

opaque sigil
#

they have a lower tdp right, or was there more

true hemlock
#

lower tdp yeah

sour harness
#

They still have HBM memory though, right? That's their main selling point.

#

(for LLMs at least)

true hemlock
#

possibly why sxm version has higher tdp

opaque sigil
#

i'm curious, have you considered amd gpus at all or are those out of the question (since iirc they tend to have higher fp32/fp64 performance right)

true hemlock
true hemlock
opaque sigil
#

surely it can't be that bad with rocm unless you do inline ptx

true hemlock
#

i mean, recompiling for the amd cards might work but might be pretty scuffed and need whole rewrite lol

#

rock em still isn't as good as cooda

opaque sigil
#

soon copium

true hemlock
#

and oh technically aside from blackwell, now i already have all the enterprise architectures

opaque sigil
#

surely when rubin comes out the blackwell cards will go down in price glueless

true hemlock
#

just got 2 TITAN V today

#

i might skip blackwell ngl

opaque sigil
#

get a 5050 xdx

true hemlock
#

thought only consumer blackwell sucked, but apparently enterprise blackwell is also shit lol

noble zodiac
#

who could have guessed, my hamt has a logic error somewhere

true hemlock
opaque sigil
#

they're just kinda there

#

i haven't really seen any compelling reason for them

true hemlock
#

5050 = 3060 super 8gb

opaque sigil
#

sounds about right

true hemlock
#

i've been spending on used gpus and unique stuff like the titan v instead lol

#

i can't justify myself to get a new 50 series gpu.

sour harness
#

The main problem I have with Blackwell is that none of the tools I want to use play into its strengths and new features. FP4 hardware support? Not supported for anything that is not Deepseek or Llama.

opaque sigil
#

i like my 5070 ti for playing games OK (fix your stupid freaking drivers nvidia ReallyMad )

rare bridge
#

fixed what i think was the bug that broke my infrastructure for screeps cerbyLUL

opaque sigil
olive sable
#

Im am alive

#

We returned the loan car cuz parking is €10/h

#

Insane

#

There are 10x as many tourists here as last week

#

Anyways, time for screeps neuroHypers

true hemlock
#

batshit useless

#

you can practically do nothing with it, and even if you do, bandwidth still fucks it up

#

its just a marketing number bs

#

(not to be confused with Q4 quantization, Q4 is actually batch-scaled int4, not fp4, computed by the fp16 component and its there just to make data transfer more efficient)

stark needle
olive sable
#

brother what? AquaCry
how???

stark needle
olive sable
#

what happened???

true hemlock
#

and since the quantized value itself is a mantissa, it should be computed strictly in int4

#

not fp4

olive sable
#

@real sierra im ded

#

Fuuuck

rare bridge
#

o7 you forgot to upgrade

true hemlock
olive sable
#

man im ded

#

i died in screeps

olive sable
#

i moved into E35N33

dusk topaz
#

Aaaah what is up Nation

olive sable
#

hi

dusk topaz
#

Are you like a coder or programer

olive sable
#

yes

nocturne olive
#

My 3090 finished a training run while I was sleeping, Neuro RVC V12.1 to 200 epochs, at 32 batch size

dusk topaz
#

U are now my sensei

olive sable
#

sure?

dusk topaz
#

Aight bet

#

Let me dm u so later on(some other time) I can ask you for help 😁

olive sable
#

there are a lot of progrsammers here wo are better thn me

dusk topaz
olive sable
#

no worries

dusk topaz
#

Cool

sick owl
dusk topaz
sick owl
#

Personally I just block most paywalls through a pihole

dusk topaz
sick owl
sour harness
dusk topaz
sharp mantle
tender river
#

paper hell neuroDespair

hoary lion
#

i might be finally understanding how functional programming works

tender river
#

good now explain monads

rigid snow
#

monads are... monads

hoary lion
#

just don't mutate states that are not passed as args of a function

#

no classes lol

tender river
#

thats not functional programming

#

thats just... using functions

hoary lion
#

well

stark needle
#

this video is a fun take on cs jobs
follow form more programming content specially in javascript , python , c++ , java and become skillful coder and developer

Don't forget to LIKE, COMMENT, and SUBSCRIBE for more tech comedy and insightful developer content!

#programming #coding #DeveloperLife#WebDevelopment #UIUXDesign #JavaScript #Python #J...

▶ Play video
rigid snow
#

ICANT the "not oop = fp" belief strikes again

hoary lion
#

anyway im still at python lol

#

so i only need library specific knowledge rn

steep adder
#

monads are some shit leibniz wrote about

tender river
#

monads are an oppressed class that must be freed

opaque sigil
#

freest monad where though

hoary lion
#

I cannot comprehend anything else than OOP

#

So they are now evil FP

tender river
olive sable
#

monads

#

sdamon

steep adder
#

monadigram

opaque sigil
#

Half the time people say they do oop they don't even do oop FOCUS

tender river
#

true

olive sable
#

snadom

#

shadow

#

shadowlilac

nocturne olive
#

I wonder how much batch size I'll be able to push on the 3090 with NeuroSynth when RVC lets me push 32

olive sable
#

try it neuroHypers

nocturne olive
#

I don't have the trainer set up yet, and there's karaoke in 25 minutes

olive sable
#

fair

sage crag
#

awa

olive sable
#

awa NeuroBounce

#

my new spot has room for 6 miners

tender river
#

`wa

sage crag
olive sable
#

thats the servers issue, not mine

#

in mot using tht much anyways

tender river
sage crag
#

would you rather have cpu, unlimited cpu, but no solution to halting problem, or solution to halting problem but no cpu

sage crag
#

poor guy expressed a similar sentiment about fuzzers and programmers back when i was starting to work on ableos for the first time

olive sable
#

solution to halting problem would be based, but unlimited cpu would just make it possible to brute force so much shit

tender river
#

10 code samples in 2 days neuro7

sage crag
tender river
#

best i can do is "there is a bug somewhere" neuroFumo

sage crag
#

how made it? dont know!

tender river
rare bridge
#

guess who's screeps colony almost self-destructed 2 times because of checks notes creeps being stupid when pathfinding

sage crag
tender river
#

i remember seeing comments like that in 0.1 i think

sage crag
#
// ! (compiler) bug: inlining here crashes the parser. nice.
// ! (libc) (compiler) bug: NOT inlining here makes it sometimes not work
tender river
#

my brain is exploding i solve one problem and remember there was another problem i havent solved i want to curse programmers to an eternity of suffering which luckily is exactly the goal of erf 2.0

hoary lion
#

hblang's file type was .hb?

rare bridge
tender river
hoary lion
sage crag
hoary lion
#

my language found

olive sable
hoary lion
rare bridge
#

true mahiro

#

right now all my creeps are either idle, working on building a container, or are currently shipping mined energy to storage so that if something like that happens again i can somewhat recover

tender river
rare bridge
olive sable
#

All my screeps are currently harvesting energy

#

I changed some priority code cuz it was making 4 miners and no taxis before

#

Also put an emergency

if (controller.energy < 100)
{
    Panic
}
nocturne olive
#

By the way, because of the 3090 my PSU now has basically every single one of its power connectors except one molex/SATA one populated, the 3090 took all the rest of the 8-pins

rare bridge
#

it feels like there's 2 entirely seperate systems that are badly interacting with each other on my screep system ICANT

#

(that's cos there is)

tender river
#

karaoke time neuroPogHD

rare bridge
scarlet arch
olive sable
#

Enjoy!

#

Im at a irl place so wont be able to join

nocturne olive
olive sable
nocturne olive
rare bridge
#

my new miner instantly killed itself

#

it did it again

#

for context: miners are programmed to instantly murder themselves if they spawn and there isn't a valid position for them to go mine at

#

and my miner keeps overexcerting the source

#

need to tell it to use less

#

time to see if it tries to kill itself again LULE

#

okay i think i found and fixed the bug

night halo
#

@rare bridge i hope it works for you 🙂

warped narwhal
olive sable
#

Borger neuroHypers

night halo
#

Looks nice 👍

olive sable
#

All by myself AquaCry

#

This is a roberry! neuroShoot

#

My screeps have a definite favorite source

glass flower
#

LUL i do have a question... why are you building so many single part creeps.. isn't that insanely innefficent. just build 1 miner with 3 parts and it can completely replace all those

olive sable
#

That is true, but i still need to make my scaling code

#

also i preferhaving the source mined from all possible sides, idk why

silver zephyr
#

oh thought id say, i managed to get this to work neuroHypers

final iron
#

Guys, what is screeps, why has it infested this channel, and why has nobody told me about it before?

silver zephyr
olive sable
#

Screeps is cool

final iron
#

Dammit I guess I just lost all my free time once I get back home from abroad

olive sable
opaque sigil
nocturne olive
#

Silly

#

Meanwhile my time is probably gonna go to playing around with the 3090

rare bridge
#

invader MinawanDoko

glass flower
#

same... Susge i wonder if the docs are lying...

olive sable
#

they surely are NeuroClueless

tender river
tulip ermine
#

Does anyone know how to code a lookatplayer script for a head

#

😭

olive sable
#

more info?

#

game engine? language?

tulip ermine
#

Its for a Roblox game Lua btw

tender river
#

i spent like 12 hours trying to come up with a nice coercion system but then i realized programmers dont deserve it

tulip ermine
#

lol

olive sable
#

what i do is i put the playerpos as camera.center, then i do camera.pos = camera.center - camera.zoom * camera.forwards

tulip ermine
#

That's smart...I could try that but I want that MiSide effect like you know when Mita Keeps Looking at You like uhm EUGHHH I don't know how to say it the right word isn't coming up, but it uses cframes

olive sable
#

tbh i have no clue what you mean lmao

#

this is my code

#

idk if you're anzthing with it, but you shall reeive anyways

rigid snow
olive sable
#

ahh

rigid snow
#

tracking

olive sable
#

then just make camera.forward into the direction of the npc

#

so basicly get deltaPos of camera and npc

rigid snow
#

but yeah ez

olive sable
#

ahhh

#

so just make the npc look at the cam? thats seperate code from the camera movement code but works the same way

#

why is it red?

#

deltapos, but change the npc's forward vec

#

oh just didnt send

rigid snow
olive sable
#

ah true

#

i dont play much roblox these days

tulip ermine
#

Im just sitting here giggling like a little school girl from the help I got

rigid snow
#

i don't play roblox at all

tulip ermine
#

You guys helped me enough

olive sable
#

askbon = litle school girl confirmed

#

gld i could help

tulip ermine
#

LOL

amber fractal
#

I also don't play roblox at all, just popping into existence before vanishing

olive sable
#

feel free to ping me for mor gamedev stuff, its the only thinng im good at lmao

amber fractal
#

Pin Sam's cursed code mhm

warped narwhal
olive sable
#

it should ye, but i added it anyways to make sure

#

otherwise ill forget i even need to do that

#

hi cloud neuroWaveA

rare bridge
warped narwhal
olive sable
#

i just have

#define GLM_ENABLE_EXPERIMENTAL
#define GLM_FORCE_SIMD
#define GLM_FORCE_ALIGNED
warped narwhal
#

the GLM_FORCE_ALIGNED seems to set the definitions, but GLM_FORCE_SIMD doesn't show up, so that was probably old documentation

real sierra
#

oh wow

#

rough day for you guys it sounds like

#

Sam died and cloud almost joined him

warped narwhal
real sierra
#

both of my room controllers upgraded while I was at work so I'm chillingn

olive sable
#

i got told to do the simd one for simd

#

very possible it doesnt do shit tbh

warped narwhal
#

it doesn't even exist in the entire repo

olive sable
#

i got scammed

#

o7

#

so GLM_FORCE_INTRINSICS does simd?

real sierra
#
#define free malloc
// free memory leaks!
warped narwhal
#

lmao

warped narwhal
olive sable
#

nice

warped narwhal
#

it automatically chooses the most advanced simd the platform your compiling for has

olive sable
warped narwhal
#

make sure to use target_compile_options(TARGET -march=native) or just run cmake with -DGLM_ENABLE_SIMD_AVX2=ON

olive sable
#

???

rare bramble
#

I go so stuck on thinking about storage containers and who managed them, I came to the conclusion that miners manage their own containers, when a miner dies, the container ownership is automatically released and it's free to be claimed by the next miner

automatic and self healing state management my beloved

warped narwhal
#

wait, lemme check gcc's docs, you might not need to do that, looks like you do, you need either -march=native or -mavx2

rigid snow
rare bridge
olive sable
#

surely

rare bridge
#

my miners decided no

olive sable
#

o7

tulip ermine
olive sable
tulip ermine
rigid snow
real sierra
#

or actually

#

I guess that wouldn't happen

#

why would you malloc 0

olive sable
#

employment?

#

what?

tulip ermine
#

I need a job

olive sable
#

lmao

warped narwhal
#

free doesn't crash if you give it a nullptr iirc, meh, it's a no-op on nullptr, but undefined on non-nulls

rigid snow
olive sable
#

im "hiring" unpaid interns for 3d modeling and art niuh

real sierra
#

new screeps player?

rare bridge
#

no no

#

they gotta write their boilerplate first

real sierra
#

oh true

#

see you in 3 days

olive sable
#

boilerplate player neuroHypers

final iron
#

I'll be home in a week

#

Then I might start posting signs of addiction

rare bridge
#

also shiro

#

how much resources have you collected over your lifetime on the game?

#

i'm at like 500k and i haven't seen an invader anywhere

real sierra
#

might be a lower RCL limit on invaders but I can't find any docs to substantiate that claim

rare bridge
#

personally i think the docs are bullshitting the 100k + random value thing

real sierra
#

no the code verifies that

#

and I also receive invasions about 2-3 times a day

rare bridge
#

as far as i can tell, i've had no invasions yet

#

which is very impressive if that means i killed them all

#

cos until today i've had no actual defensive creeps

#

i'm also on RCL 4 now, which means if i do eventually get an invader, it'll be a big one

glass flower
rare bridge
real sierra
glass flower
#

(idk obviously. but it does feel like it)

real sierra
#

states lie as fact

rare bridge
#

anyway, i'm about to manually spawn a big invader if you two wanna watch me absolutely fuck myself over

#

@real sierra @glass flower

real sierra
#

why would you do that

rare bridge
#

i need to test whether i can defend against one

#

where i have a button to kill the invader if it gets too bad

real sierra
#

you do?

#

i didnt know you get such a button

rare bridge
#

yeah you do CerberOMEGALUL

glass flower
#

YES you can kill manually spawned invaders

real sierra
rare bridge
#

my entire playthough

real sierra
#

how the heck do you see that

rare bridge
#

which considering i've had one room the entire time

#

profile -> the dropdown above the stats

real sierra
#

max is 7d

rare bridge
#

oh well

#

i've not played for 7 days so

real sierra
rare bridge
#

initially they did fuck all so i had to despawn them CerberOMEGALUL

#

alright, gonna spawn this invading creep now

rare bramble
#

@final iron

rare bridge
#

oh this is going badly already CerberOMEGALUL

#

my defender doesn't know where to go

rare bramble
#

neuroEZ my base works like clockwork (I have literally nothing in my base, it's empty)

final iron
#

Yeah I'll look more into that @ home, for now I'll just check out the tutorial while I have time. ty

glass flower
#

LUL yeah im seeing your base is getting trashed

#

tink i would recommend going with atleast 1-2 melee guards. they do a lot more damage and can absorb the damage instead of your normal units

real sierra
#

my defense code is something like

#
  • if damaged units, heal with turrets
rare bridge
#

my turret is doing FUCK ALL

real sierra
#
  • if no damaged units, attack enemies with turrets (prioritize by number of heal parts)
#
  • while enemies in room, spawn guard units with all available energy
#

has worked fine so far

rare bramble
stark needle
rare bridge
real sierra
#

screep

stark needle
#

still on that game y'all?

#

😭

real sierra
rare bridge
#

relying on miners for energy is not a good tactic in invasion

real sierra
#

i love this game

#

it brings me happiness

stark needle
#

i should maybe give it a try

rare bridge
#

i'll switch the logistics to rely on the storage during defence

real sierra
#

if you are just being silly tho, you can always refund it after an hour if its not for you

stark needle
#

i mean i just suck at js

real sierra
#

i didnt know any js when i bought the game

#

great way to learn

#

its just like python with java syntax

glass flower
rare bridge
#

seems like i'm somewhat surviving this attack. not to my standards but i am surviving

real sierra
#

☝️

#

lots of ppl using other langs

stark needle
#

hmmm alr alr

real sierra
#

C#, rust, clojure, ts

#

hblang if someone would port it Sadgi

glass flower
stark needle
#

is this like

#

Something that

olive sable
#

this is literlay my irst time using js

olive sable
#

not a day without bugs has happened so far

stark needle
#

You need to be on 24/7 or can you also afk

rare bridge
#

nevermind i'm saying too soon

real sierra
#

opposite of a 24/7 game

rare bridge
#

gonna kill the invader when this defender dies

glass flower
rare bridge
#

nvm

real sierra
#

it runs 24/7 but since the whole point is to have your code play for you, you dont need to babysit it

rare bridge
#

it doesn't help that my turret is doing literally nothing rn??

stark needle
#

ok so

#

You convicted me shirolife

glass flower
real sierra
#

its ok, it wont suck up too much time

#

you just write as much code as you want

stark needle
#

also is this like pvp

glass flower
rare bramble
real sierra
stark needle
#

just cause like i dont wanna play a game where u compete against someone who has been at this for years and will immediately cook you

real sierra
#

there are novice areas where you can spawn, where the only way to get in is to spawn there (i.e. no long-time established players will be able to reach you)
these can last about 20 days

rare bridge
real sierra
#

in addition to this, you obtain activations of a "safe mode" which makes your room invincible for like 20000 game ticks

stark needle
#

which one od i need

real sierra
#

screeps world

#

7.50

glass flower
#

the cheapest world one YES

stark needle
#

do i need a subscription😭

real sierra
#

nope

glass flower
#

NOPE no subscription

real sierra
#

subscription only required if you write bad code

#

nobody here has one and we're doing fine

rare bridge
#

anyway, damage reports:
like 5 creeps died, this miner is out of service for now, and currently 2 logistics are stunlocked by the lack of miner

glass flower
#

that is only useful on shard 0-2. on shard 3 everyone is limited to 20 cpu

real sierra
#

subscription does literally 0 for you at the start

stark needle
#

ok so is there like minecraft ticks where u get to do shit?

rare bridge
#

make that 3 logistics

real sierra
rare bridge
#

lemme add code for detecting if the miner is just not there

glass flower
#

YES but the inverse. instead of 20 ticks per second its 1 tick per 3 seconds

stark needle
#

god i dont know where tf i put my credit card

real sierra
#

the wall making code isnt working Concerned

glass flower
#

thats why i manually build walls YES i would never trust a algorithm to make good tactical choices

stark needle
#

i have acquired a credit card

real sierra
#

you havent seen my algorithm

#

its not not working because its a bad algorithm, its not working because im a fricking dumbass

olive sable
#

shadow playing screeps neuroNOWAYING

#

im on the plane home tomorrow afternoon and im on my desktop by overmorrow 11am

#

then imma build th best goddamn screeps code yall have ever seen

#

maybe

#

i have a lot of shit to do

real sierra
stark needle
olive sable
#

debit vs creditcard?

stark needle
#

dude ive always used this card on steam

olive sable
#

we use bancontact so idk lmao

stark needle
#

wait ill just use paypal lmao

olive sable
#

ah that works too

rare bridge
#

alright, lemme look at some stuff

real sierra
#

ok walls should be fixed hmm

#

lets see if it works

rare bridge
#

first of all, tough costs like.. 10 energy

stark needle
#

7.50 chief money

glass flower
rare bridge
#

indeed...

stark needle
glass flower
#

pogs more people... LUL none of us will be able to expand once everyone is in our novice area

rare bramble
#

neuroPogHD another person indoctrinate into the screeps cult

stark needle
#

what am i doing

#

lmao

#

random question why dont yall just make a private discord or a thread or something in #gaming for screeps instead of clogging up programming with 100000 messages lmao

real sierra
#

not nearly enough screeps players to justify that

#

even the genshin players dont have a channel

olive sable
#

@rare bridge server ready by friday? we have a large influx of shadowlilac

real sierra
#

just because i talked a few people into it doesnt mean it gets a channel neurOMEGALUL

stark needle
#

this is the moment where you start a revolution and abuse your mod powersNeuroBounce

real sierra
#

and then i get fired

nocturne olive
#

Even more people getting the silly expensive game

real sierra
nocturne olive
#

Very silliness

olive sable
#

i dont mind abusing mod powers if its for the screep

rare bridge
#

shiro can't even make channels i think

#

i can tho

olive sable
#

lmao

real sierra
#

not buying it is one thing but like

nocturne olive
#

Well, I have negative money

stark needle
#

why is this downloading at like

real sierra
#

you would struggle to find a less expensive game on steam

#

especially nowadays

olive sable
#

shiro what did you do to get your channel powers revoked?

stark needle
#

16kbps

olive sable
#

idk

real sierra
nocturne olive
#

Anything is expensive when I have negative money

real sierra
#

i cant be trusted with anything after my 2 years of service

stark needle
#

too many birthdays

olive sable
#

vedal hates us

real sierra
#

i did get role perms taken away tho

olive sable
rare bridge
#

okay i'm getting sick of the harvesters

stark needle
#

i need the normal right?

olive sable
#

do the tutorial first

#

the screeps api is a bit hard to get into otherwise

rare bridge
#

oh shit

#

both my miners are down CerberOMEGALUL

real sierra
olive sable
#

this code is so ass lmao

if (miners.length < 1)
    {
        if (spawn.room.energyAvailable >= 100 + 50 + 50)
        {
            let screepname = 'miner_' + Game.time;
            if (Game.spawns['Spawn1'].spawnCreep([WORK], screepname, {memory: {role: 'miner'}}) == 0)
            {
                console.log('new miner: ' + screepname);
            
                indexSource = 1 - indexSource;
                let sources = Game.creeps[screepname].room.find(FIND_SOURCES);
                Game.creeps[screepname].memory.source = sources[Math.min(indexSource, 1)].id;
                
                taxiscreepname = 'taxi_' + Game.time;
                if (Game.spawns['Spawn1'].spawnCreep([CARRY,MOVE], taxiscreepname, {memory: {role: 'taxi'}}) == 0)
                {
                    console.log('new taxi: ' + taxiscreepname);
                    
                    Game.creeps[screepname].memory.taxi = Game.creeps[taxiscreepname];
                }
            }
        }
    }
real sierra
#

bro

#

```js

#

im begging you

olive sable
#

i forgor

real sierra
#

i like that it highlights the constants

#

smart

rare bridge
#

buh if this is the amount of work i have to put in after an invader comes in i'm so cooked

glass flower
olive sable
#

this is just test code at the end of the day, i will make good code once im home

rare bridge
#

WHY DO THEY CONSIDER THE CONTAINER TO BE A PLACE THEY CAN PUT ENERGY INTO

real sierra
#

your code is so short

rare bridge
#

nvm they don't

#

i'm just going SCHIZO

#

what screeps does to a person

real sierra
#

i wonder what my worst coding sin is in this codebase

glass flower
#

annytfEhe i just reworked my entire "do stuff" code i had like 50 code duplications everywhere where creeps were doing things.
now its just this:

public static CreepResult GoAndDo(this ICreep creep, IRoomObject? container, CreepAction what, ResourceType resourceType = ResourceType.Energy, bool warnMissing = false)
    {
        if (container != null && container.Exists)
        {
            var result = -1111;
            switch (what)
            {
                case CreepAction.Harvest:
                    result = (int)creep.Harvest((ISource)container);
                    break;
                case CreepAction.Withdraw:
                    result = (int)creep.Withdraw((IStructure)container, resourceType);
                    break;
                case CreepAction.Repair:
                    result = (int)creep.Repair((IStructure)container);
                    break;
                case CreepAction.Build:
                    result = (int)creep.Build((IConstructionSite)container);
                    break;
                case CreepAction.Transfer:
                    result = (int)creep.Transfer((IStructure)container, resourceType);
                    break;
                case CreepAction.Pickup:
                    result = (int)creep.Pickup((IResource)container);
                    break;
            }
            if (result == (int)CreepResult.NotInRange) //ERR_NOT_IN_RANGE
            {
                creep.MoveTo(container.LocalPosition);
                return CreepResult.Busy;
            }
            else if (result != (int)CreepResult.Ok)
            {
                Console.WriteLine($"Unexpected result for {creep} while {what} from container: {container}");
                return (CreepResult)result;
            }
        }
        else
        {
            if (warnMissing) // Its okay that they don't exist. since nonfree ones will just return null. which is intended.
                Console.WriteLine($"{container} does not exist for {creep} that is trying to {what} from it.");
            return CreepResult.InvalidTarget;
        }

        return (int)CreepResult.Ok;
    }
olive sable
#

i need new energy quikly cuz i have no miners rn psweatduck

real sierra
#

what do you think of this creep's code

glass flower
#

perfect

olive sable
#

bad

real sierra
#

its so efficient tho

rare bridge
#

in comparison, my "idle" code

#
export function run(creep: Creep, end: Function) {
  // Literally do nothing. We call end every turn so that the task manager is forced to continue finding new tasks
  const onRoad = creep.room.lookAt(creep.pos).filter(obj => obj.type != "creep").some(obj => (obj.type == "structure" && obj.structure?.structureType == STRUCTURE_ROAD) || (obj.type == "constructionSite" && obj.constructionSite?.structureType == STRUCTURE_ROAD) );
  if (onRoad) {
    const nearby: {
      type: string,
      terrain?: Terrain,
      structure?: Structure,
      constructionSite?: ConstructionSite
    }[][][] = [];
    creep.room.lookAtArea(creep.pos.y - 2, creep.pos.x - 2, creep.pos.y + 2, creep.pos.x + 2, true).forEach(obj => {
      if (nearby[obj.y] == undefined)
        nearby[obj.y] = [];
      if (nearby[obj.y][obj.x] == undefined)
        nearby[obj.y][obj.x] = [];
      nearby[obj.y][obj.x].push({
        type: obj.type,
        terrain: obj.terrain,
        structure: obj.structure,
        constructionSite: obj.constructionSite
      });
    });
    const movableMap = nearby.map(y => {
      return y.map(x => {
        let keep = true;
        x.forEach(obj => {
          switch (obj.type) {
            case LOOK_TERRAIN:
              if (!["plain", "swamp"].includes(obj.terrain!))
                keep = false;
              break;
            case LOOK_CREEPS:
              keep = false;
              break;
            case LOOK_STRUCTURES:
              keep = false;
              break;
            case LOOK_CONSTRUCTION_SITES:
              keep = false;
              break;
            default:
            // nothing
          }
        });

        return keep ? x : undefined;
      });
    });
    const nearbyMovableTo: { x: number; y: number }[] = [];

    for (let y = 0; y < movableMap.length; y++) {
      if (movableMap[y] == undefined) continue;
      for (let x = 0; x < movableMap[y].length; x++) {
        if (movableMap[y][x] == undefined) continue;
        if (movableMap[y][x]!.length > 0)
          nearbyMovableTo.push({ x, y });
      }
    }

    if (nearbyMovableTo.length > 0) {
      creep.moveTo(nearbyMovableTo[0].x, nearbyMovableTo[0].y);
    }
  }

  end();
}
glass flower
#

hmm i use about 8ms with my code now.. only used like 5 yesterday...

real sierra
#

oh dear god

olive sable
#

shiro why is this only spawning taxis????

rare bridge
#

you're trying to spawn 2 things on the same tick

olive sable
#

fuuuuuuuuuuuuuuuuuck

rare bridge
#

it's prob opting to spawn the last thing you asked for

olive sable
#

i need a queueueueueeueueueueueue

rare bridge
#

literally first thing i built LULE

real sierra
olive sable
#

ok

#

f

rare bridge
#

i think the most cursed part about my code is the fact that i store all info that needs to be persistent for the current task in creep.memory.state CerberOMEGALUL

olive sable
#

honeslty cant be botered to make a queue, ill just put spawntaxi as a var that gets priority over everythign

rare bridge
#

Okay good luck dealing with script restarting

real sierra
#

i do the same

rare bridge
#

fair LULE

real sierra
#

spawnqueue isnt terrible to implement in a simple form

olive sable
#

nah im good

real sierra
#

you're good

stark needle
#

okokokok i am doing the tutorial i think i understand whats going on

glass flower
#

annytfSittu i designed my code to work completely fine without any kind of memory. (besides the roles obviously, and a role limit)

real sierra
#

opposite here

glass flower
#

i use UserData in c# which is not persistent but will stay between ticks most of the time

real sierra
#

i track and store critical statistics about my energy collection

rare bridge
#

my spawn queue isn't actually stored in persistent memory

real sierra
#

these stats inform a number of processes

real sierra
#

where do you put it

rare bridge
#

no need to

#

it's a var CerberOMEGALUL

glass flower
#

so.. on the heap mhm

real sierra
#

how does that

#

persist between ticks

glass flower
#

tink or i guess it could reside in the stack

rare bridge
#

vars persist

real sierra
#

????????????????????????????

rare bridge
#

only until the script restarts

glass flower
#

the only time vars dissapear is between restarts

rare bridge
#

your entire script isn't reloaded when it's your turn to tick, loop is simply called

#

saved a lot of overhead internally

#

ofc your script is subject to restarts at any moment

glass flower
#

yeah thats basically what i use for my statemachine

real sierra
#

yeah screw that

#

im not risking all my state

#

memory Ok

#

if i dont use memory for this, what will i use it for

olive sable
#

hmmmmmmmm

#

this would work???

rare bridge
#

why not

#

count miners

#

count taxis

#

if miners > taxi

#

spawn taxi

olive sable
#

cuz im linking the taxis to the miners

rare bridge
#

shrug fair enough

olive sable
#

otherwise i get miners interfering witht he wrong taxi

#

or im just not doing it good but eh

glass flower
#

PainPeko i really need to make a parking lot area... my creeps block eachother all the time while waiting for energy and therefore my carry bot can't distribute energy

stark needle
#

chat i'm a bit clueless so since the tutorial shows most stuff, whats the point of the game? are there just more enemies or something? or whats like the main problem

glass flower
olive sable
#

the tutorial is really just the beginnign

#

you havent gotten the conquering the map yet

#

nor the crafting system

glass flower
#

nor the mineral and boosting system

olive sable
#

yummy hydrogen

rare bridge
#

crunch hydrogen

olive sable
glass flower
#

i have oxygen COPIUM

rare bridge
#

i also have some oxygen

#

not high density tho

stark needle
#

chat

#

how do i choose

olive sable
#

join near us neuroHypers

stark needle
#

where

olive sable
#

im over at E35N33

#

shiro and cloud are a bit above me

#

go in a green area

rare bridge
#

gotta go do some stuff quickly, but when i get back i'll redo the builder to pull energy from the storage + redo the harvester as an upgrader

olive sable
#

with 2 sources

stark needle
olive sable
#

beginner are

#

you get shieded from the others

stark needle
#

i dot get it

#

how do iseen if its a green area

olive sable
#

zoom in

glass flower
#

our area looks like this

olive sable
stark needle
#

what shard are yall

glass flower
#

3

real sierra
#

my memory about to 📈

#

updated the stats module to track on a per-room basis in addition to globally

olive sable
#

im testing some shit rn

#

i realy shouldnt be making them commit die, and recycle them instead

stark needle
#

you said two yellow cubes right?

olive sable
#

ye

#

its better to have 2

glass flower
#

PainPeko can confirm.. having 1 will give you a bottleneck

#

but it does simplify my harvester code a ton LUL

olive sable
#

true

#

go to the only source, mine lmao

glass flower
olive sable
#

my miners are all breaking cuy of my crazy taxis

real sierra
#

stats change was a great change

#

the second room wasnt building any extensions until now

#

"we can store 1M energy why would be build more storage?" glueless

#

that aint your storage lil buddy

stark needle
#

is this one bad

glass flower
#

mhm thats why i won't bother with automatic building for now

real sierra
#

that's sam's old room

#

@olive sable

glass flower
#

just don't do the same mistake as sam. and you'll be fine YES

#

its not a perfect room.. but probably the best you can get in our novice area

olive sable
#

died there cuz of bad code lol

glass flower
#

bad code

stark needle
#

😭

olive sable
#

if your room controller dies you're fucked

#

need to feed it enough or it starves to death

rare bridge
#

like mine is rn

glass flower
rare bridge
#

on it rn YES

real sierra
#

wtf is adesi speedrunning

#

rcl3 already

#

how did you manage that with this many creeps stationary

rare bridge
glass flower
stark needle
#

hmm whos more trustable to have as neighbor sam or shiro or juho or some other randomsReallyInnocent

rare bridge
#

i would not recommend me

#

i plan to expand at some point

olive sable
glass flower
real sierra
#

they may choose to murder my neighbours while im asleep

real sierra
#

out of my control

#

my creeps never block each other gx_ez

glass flower
#

my base is just locked up rightnow because they are repairing and building and carrying stuff all in like 20 tiles at the same time LUL

rare bridge
#

what the fuck is this builder doing

#

come take a look at my base

#

the builder near my expanders

stark needle
#

should i care about uranium or whatever in the base

real sierra
#

nah

glass flower
#

nah

real sierra
#

not useful until way, way later

rare bridge
#

this builder is going schizo

stark needle
#

ugh ill just go to sleep

#

and do tomorrow

glass flower
#

they just shuffle around a little

rare bridge
glass flower
#

or wait.. nvm

rare bridge
#

what the fuck is it trying to get to anyway

glass flower
#

it was when you go get energy from your storage but you also give it a different order the next tick

#

like the state switches every tick

#

so it does one thing then switches to another and then switches back and repeat

olive sable
#

TypeError: Cannot read property 'memory' of undefined mf shut

rare bridge
#

my conclusion is my code is shit

#

i'm rewriting the builders anyway

#

they're on the old system

tender river
olive sable
#

nah he eeping first ig

#

goodnight shadow ANI_HUG

rare bridge
#

okay everything is just.. broken

olive sable
#

saaameee

rare bridge
#

WHAT THE FUCK IS THIS

real sierra
#

bro you wrote it

#

wdym "What is this"

rare bridge
#

idk how i wrote this and thought it was good wtf

#

i must have lost it

real sierra
#

HOLY

#

MY WALLS CODE

#

11/10 placement

glass flower
olive sable
#

perfect

#

defending yourslef from the preexisitng walls

real sierra
#

hey.

tender river
#

well... today was 15 hours of schizoing (trying language ideas in my head) and i think i got to something thats at least like 5% reasonable

real sierra
#

its automatic.

olive sable
#

automatic my ass

rare bridge
tender river
#

the code is thinking ahead, what if someone builds a tunnel there

olive sable
#

shiro what is -4 error code again???

#

spawner busy?

rare bridge
#

busy

olive sable
#

fucck

#

ok ok ok

#

i probably killed 30 screeps testing htis code

rare bridge
#

dw i murdered 3 different miners trying to get them to work

olive sable
#

noway a taxi is finally spawning

#

lesggooooo

rare bridge
#

alright, time to write upgrader code cos my controller is very close to downgrading

olive sable
rare bridge
#

(and i want GCL)

olive sable
#

i need to pee now, i thought this woldnt take 2 hours

rare bridge
#

Hmm i should generalize collectFromStorage

#

i wonder what happens if i do

#

once i've finished upgrader and builder i'll have it make more extenders

final iron
#

fuuuck i just completed the tutorial and im already theorycrafting logistics optimizations

rare bridge
final iron
#

im gonna be so cooked

rare bridge
olive sable
#

i guesstimated that it was indeed a busy error

#

and its working now i think

#

lemme check, i went brb for a bit

real sierra
#

Concerned shard3?

olive sable
#

what about shard 3?

real sierra
#

it was being not fast...

#

speaking of which why is my cpu so much higher

olive sable
#

where do yall even see?

real sierra
#

im pushing 7 or 8 cpu

olive sable
#

im doing 4

#

and 1KB

real sierra
#

7/20
12kb

olive sable
#

go my taxis, be free!

#

the taxis recycle themselve now upon finishing their move, so i need to fix some scuff for that

rare bridge
#

decided to finally remove the absurdly complicated idle "get the fuck off the road" code

real sierra
#

complicated

#

how

#

what did you do

real sierra
#

jesus

#

the point of being idle is low cpu use

rare bridge
real sierra
#

im telling you, monte carlo fucking off is the way forward

rare bridge
#

that's what i'm doing now

#

they'll just choose a random direction and move now

real sierra
#

its so fast

rare bridge
#

changed mainly cos if they went into idle on my long road from spawn to left miner they'd just fucking

real sierra
#

lots of my methods use randomness to speed them up

rare bridge
#

zoom up it

#

before moving off the road

olive sable
#

this is good code surely NeuroClueless

else if (creep.memory.role == 'miner')
{
    let moving = roleMiner.run(creep);
    let taxi = Game.creeps[creep.memory.taxi];
    if(taxi)
    {
        if (moving == 1)
        {
            taxi.memory.hauling = true;
        }
        roleTaxi.move(taxi, creep);
    }
}
real sierra
#

like when i have expensive operations that need to be done on every room at regular intervals

#

every few ticks i just pick a random room and process it

rare bridge
#

tbh my codebase rn is a fucking mess

real sierra
#

you havent even seen mine

rare bridge
#

the builders, until now, were running on the old system

real sierra
rare bridge
#

currently they refuse to work at all tho LULE

real sierra
#

wtf cloud

#

i bet half of those files are like

#

5 lines

#

and the 5 lines in question are

#
function dikortjhoiejsyiohhd(creep) {
  // nothing
}
rare bridge
#

nah they all have.. some task

#

except for CreepHandler and RoomHandler

real sierra
#

my creep.logistics is 230 lines

rare bridge
#

mine is 47 lines

real sierra
#

strategy is up to 290 lines monkaOMEGA

#

infrastructure is the longest at 369

glass flower
#

LUL i feel like every file i have is 100 lines atleast

rare bridge
#

but that's cos the actual creep logic code is in tasks, not types

#

logistic creeps have collectFromMiners, collectFromGround, collectFromStorage, storeAtSpawns, storeAtStorage, and storeAtTowers

real sierra
#

this is still crazy to me

#

surely those have like

#

extremely similar implementations

glass flower
rare bridge
#

depends, some do logic checks that are intrinsicly linked to what they're exactly doing

glass flower
#

this is my code where i tell my logistic bots where to put their energy and in what order

rare bridge
#

i find it easier to write it like this, but it also means i run into bugs linked specifically to my implementation

#

such as my builders

#

doing

#

fuck

#

all