Chat:World/2022-02-05

From CG community
Jump to navigation Jump to search

StepBack13: server overload?

Tien2k9: hi

Default avatar.png Huntersoulz: hi

Addikins: Hello everyone

jacek: happy Caturday

Addikins: 🤙🏼

WillChang: Automaton2000 hey

Default avatar.png Automaton2000: specifically, mad pod racing arena. are we able to get a job as a teacher

PaarthThePro: Hello

WillChang: hi

PaarthThePro: Does anyone know me

PaarthThePro: Can someone play clash of code

WillChang: ok

jacek: oO

PaarthThePro: Play clash of code now

PaarthThePro: hello?

Uljahn: promoting clashes is not welcomed here, you'd better use #clash channel for that

PaarthThePro: OK

Default avatar.png Diityae: hi

Default avatar.png ImGajeed: hiiii

Default avatar.png Sickbro: I'm new

Default avatar.png Sickbro: I don't know what to do

5DN1L: If you don't know the basics of any programming languages, suggest you to learn elsewhere first

Default avatar.png Sickbro: can you give me some suggest?

5DN1L: google the language of your choice

Default avatar.png Sickbro: ok thanks

5DN1L: you're welcome

Sonic_hh: lol

awesomedude123: hey guys I need some help. in my clash of code, the inputs are strings "110 100 010" and I am supposed to out put 642. However, I am unsure what kind of strings are those like are they binary or just random ones

5DN1L: split by space?

awesomedude123: yeah but in the example 110=6 100=4 and 010=2

awesomedude123: I am not sure if that is just some random conversion or if there is a method for it

5DN1L: just follow what's required to look for the relevant methods?

5DN1L: split the string, convert binary to decimal, join the digits, output

5DN1L: use whatever combination of methods you need

awesomedude123: thanks got it

Miki09: What's the best non-ai bot in csb?

struct: what do you mean by non ai?

struct: are not all of the bots in arena an ai?

Miki09: They use mathematic calculations instead of neural networks

struct: so you want to know which one is the best NN?

Miki09: which one is the best and its NOT nn

Zorg1: because NN is not based on mathematic calculations ...

struct: ranki 5

struct: I think YurkovAS bot is not a NN but im not sure

Miki09: Ok thanks

YurkovAS: struct yes, with smitsimax algo

struct: :thumbsup:

Default avatar.png nesnes112: AndreiUngureanu1 please share ur code

Default avatar.png Zbouig: hello

Default avatar.png Zbouig: go Z

Mrs.GloriaZindlebocker: That was quick. Sentence tokenising deleted in only one day

struct: o.o

Mrs.GloriaZindlebocker: probably the best of the 13 deleted puzzles though

struct: I think the puzzle was fine jsut checked

darkhorse64: parsing files is probably the most boring programming task you can find.

struct: well there are cg official puzzles that are similar

struct: and its just an easy puzzle

Quidome: solved it just before the deadline :)

Quidome: It is also removed from my completed list, strange

Quidome: experience points are still there

Quidome: Did someone do by train or by car. It looks like one testcase is wrong

struct: which puzzle?

5DN1L: https://www.codingame.com/training/easy/by-train-or-by-car

5DN1L: What's wrong? Quidome

Quidome: On testcase 7 i have 1:48

Quidome: must be 1:46 according to the test case

5DN1L: Do you do all the rounding at the end

5DN1L: or do you round all along?

darkhorse64: I have the correct answer with rounding at the end

5DN1L: me too

struct: hmm time to find some game to port, anyone has any suggestions?

darkhorse64: struct: CGX formatter is probably the worst in this respect. My issue with sentence tokenising is that once parsing is done there is not much left to do. Where is the fun ? What have you learned ?

struct: I get it might be simple, maybe it should be a clash or something

struct: its a 5min puzzle afterall

darkhorse64: It's just my two cents. I read it, did not like it, close the tab. No harm to me or anyone

struct: I dont do puzzles so my opinion might be wrong

struct: maybe ill port backgamon?

Scarfield: YUS

Scarfield: considered suggesting it again, but nice, would love to make a bot for backgammon :)

struct: any variant?

struct: im not really familiar with backgammon

Scarfield: i only know the base game, not aware if there are variants tbh

Astrobytes: Many variants

Astrobytes: Ataxx?

struct: I dont know any, I dont even know backgammon rules :p

struct: is just that I promised myself i wouldnt port any game before there was a bot programming contest

struct: Now I can port them again

Scarfield: xD

struct: I think you suggested ataxx before Ill take a look

Scarfield: Ataxstrobytes

Astrobytes: Gammonfield

Astrobytes: struct: don't think so? Maybe I did lol

struct: maybe someone did

struct: I remember seeing the images

struct: maybe ill port trictrac is a backgammon variant :p

darkhorse64: I did suggest Ataxx as a task for me. It could be a good contribution for a featured event.

Astrobytes: Yeah, it would actually

Astrobytes: Oh, anyone know Camelot?

darkhorse64: If it lives to our expectations. The castle, the movie ?

Astrobytes: The board game :P

darkhorse64: No. Googling it ...

Astrobytes: 160 square chessboard, played with 4 Knights and 10 pawns per side

Astrobytes: objective is to capture the opponents 'castle'

struct: I dont know how cg wants to do ai featured events

struct: if they want a new multi or a existing one

Scarfield: https://youtu.be/E5SundMZ-Js?t=20

Astrobytes: the answer to that was open-ended iirc, not sure if they decided

Scarfield: Hexagon game, called Hexxagon

Astrobytes: isn't that a variant on ataxx?

darkhorse64: it looks so. 160 = 8 x 20 board ?

darkhorse64: 16 x 10, I guess

struct: that board is equal to yavalath

struct: oh no

Scarfield: it is, found it mentioned on ataxx wiki

Astrobytes: 168 sorry, 12 x 14

darkhorse64: pushing the frontiers of bitboarding

darkhorse64: I did 128 bit for CTTT

Astrobytes: 'castles' are the 2 horizontally adjacent squares at the top and bottom of the board

darkhorse64: I cannot find a game like the one you are describing. Do you have a link ?

struct: https://en.wikipedia.org/wiki/Camelot_(board_game)

Astrobytes: ^

Astrobytes: You can divide the board into sections fairly easily, so theoretically shouldn't be *that* hard to bitboard :D

darkhorse64: I fear the movegen, even worse than parsing tokens :innocent:

Astrobytes: hahaha

struct: Estimated game-tree complexity ~= 10^235

struct: o.o

darkhorse64: Properly doing movegen is key for the performance of a search engine

struct: that is for ataxx

Quidome: OK, my mistake :(, didn't count on cities at short distance, so my shortcut failed.

Quidome: Thnxs for the feedback on the correctness of the puzzle :)

5DN1L: :)

Astrobytes: Camelot positions avg max of ~3500 possible moves vs < ~200 for chess...

darkhorse64: My MCTS just died

struct: amazons say hi

Astrobytes: lol

struct: "These rules and parameters were established by myself in april and july 1997, after studying existing Ataxx games."

struct: Guess I must trust him

darkhorse64: who ?

struct: http://www.pressibus.org/ataxx/gen/gbregles.html

Astrobytes: Mr I. M. Adeataxx I guess

struct: Does it have multiple board configurations in the official game?

Astrobytes: yeah there were different board sizes and certain squares were blocked

darkhorse64: The big question is blockers or no ? Otherwise 7x7 seems standard

Astrobytes: yeah, having both variations (Size and blockers) might be overkill, not sure

darkhorse64: Blockers kill books

Astrobytes: And we like antibook measures here

darkhorse64: So you have 3 wood leagues: spawn, + jump, + blockers

struct: guess that works

Astrobytes: that seems reasonable

darkhorse64: 2 ply MM for the bosses. Because 4 ply is probably too strong

Astrobytes: whatever beats random 1-ply

struct: should I detect if the move is a jump or a spawn?

struct: or do i make player out put jump/spawn and coordinates

struct: a1a2 -> a1a3 should be fine

struct: to distinguish

struct: Dont think the keyword will be neede

jacek: new board game eh

struct: unless you want to try a NN for backgammon :p

jacek: td-gammon eh

Mrs.GloriaZindlebocker: still waiting for HeroQuest

Astrobytes: HeroQuest!

DethHarmonik: 'evening here.

Astrobytes: \o

Stephen20: O/

darkhorse64: struct: for a spawn, you only need the destination square

struct: you are right

Astrobytes: and a jump should be obvious that it doesn't require a keyword

Astrobytes: *obvious enough

struct: I guess Ill just choose one random unit to make the spawn

struct: but player wont need to output it

jacek: what game

struct: ataxx

darkhorse64: struct: do you commit to ataxx ?

struct: yes

struct: should be ready tomorrow

jacek: or delete

Astrobytes: nice, you really were in a game porting mood eh

jacek: need a boss?

Astrobytes: darkhorse64: that means you can do Camelot :grin:

struct: ill probably just use the java code for the referee

darkhorse64: For blockers level design, do not forget http://www.pressibus.org/ataxx/gen/gbblocs.html

struct: yeah just need to understand that notation

darkhorse64: yeah a bit cryptic

darkhorse64: Astrobytes: when I see how LoA got such a small audience with a complex movegen, I think Camelot is probably doomed

jacek: loa wasnt potw yet

jacek: abalone was but still only 69 players and still i havent made movegen for it

darkhorse64: 24 players only: it does not deserve it

darkhorse64: I have been lazy for abalone too

Astrobytes: Yeah probably right; and I've been generally lazy with cg recently tbh

darkhorse64: My last bot was for CTTT and my submit for TSP is ready (waiting for approval)

Astrobytes: I didn't write anything smart for the TSP one tbh

struct: whats tsp?

Astrobytes: did they ever fix that CTTT game?

Astrobytes: Travelling Salesman Problem optim

struct: ah, no

darkhorse64: CTTT is not fixed

Astrobytes: ffs

darkhorse64: I wonder if it can be

darkhorse64: I just took the CPs

jacek: you cant fix something thats perfect

struct: Only game where I wont lose vs a NN

Astrobytes: not sure, it might require a completely different mechanic; not like it wasn't pointed out early on either, so had plenty time to pull it or fix

darkhorse64: My always drawing bot does not score very high. So I try to win the games

jacek: does it beat painting bot?

darkhorse64: splashing bot, dripping bot

Daporan: Is it an optim for the classical TSP?

Astrobytes: Yup

Astrobytes: and hi :)

Daporan: What's the size of the instances?

darkhorse64: number of points ? 300 max

Astrobytes: 5s time limit

Daporan: Do you know the instances offline or is it "online"?

Astrobytes: well, source download is available on contribution page so guess it's not needed to manually figur them out

Astrobytes: *figure

jacek: i think he meant offline and online variants of TSP

jacek: or graphs in general

Astrobytes: I thought he referred to the validators

Daporan: Yes, I meant the validators. Not sure what the "online TSP" would entail.

struct: There is no way to hide them unfortunately

struct: at least from a contributor side

Daporan: I'm not sure if it's a concern, but instances of that size can be easily brute-forced.

struct: Daporan I dont know if you already know but the nxt contest will be bot programming

Astrobytes: hm, what minimum size would you suggest?

darkhorse64: TSP is NP hard don't you need 300! tests to solve it ?

jacek: hmm in this TSP optim all nodes are connect to other nodes? and all you need is to provide a unique path to pass it?

darkhorse64: The shortest path

Astrobytes: well, any path you like but you won't score much

jacek: shortest for better rank. but just any to pass it

Astrobytes: yes, like most cg optims

darkhorse64: 0 .. n 0 is a solution

Daporan: Assuming planar TSP: definitely not that many. It's NP-hard, but with a small exponent if you use the right machinery.

jacek: approvers these days

darkhorse64: you know more than me, then

struct: just add 100 validators

struct: and break cg

Astrobytes: call Illeda n

Astrobytes: so, replace each node with a set of sub-nodes?

Astrobytes: excluding the start node ofc

struct: So it seems that there are "skips" too on this game :&

struct: :/

struct: Might aswell copy othello referee

darkhorse64: if opponent has no moves, he should output "PASS"

struct: I probably will do the same as othello

struct: where that player wont even receive inputs for that turn

jacek: eeyup

struct: and get all the actions chained together

Astrobytes: this TSP graph thing is intriguing

Astrobytes: Seems you would need a set of sub-nodes at each node, which are not necessarily fully connected to the main graph

Astrobytes: Apologies if my terminology is lacking, I'm not an expert in graph theory

struct: 220 turns for random o.o

Astrobytes: This way you could have multiple infinite regions, the graph as a whole couldn't be drawn without crossing edges, so non-planar?

Astrobytes: I'm thinking out loud, don't mind me

struct: I think referee is correct time to work on viewer

Astrobytes: hm, no I think my logic is flawed wrt infinite regions

darkhorse64: So, if there are skip moves, the opponent got several times 100 ms thinking time and the other none. That's unfair

darkhorse64: In TSP, edges can cross

Astrobytes: but it can be drawn in the plane as such that no edges cross

struct: darkhorse64 its also like this in othello

struct: should I just make opponent print all the moves at once?

darkhorse64: This way, it's fair

Astrobytes: true, it's more realistic to actual gameplay

rafadastan: fghgf

jacek: how often are those skip moves?

struct: no idea, I never played this game

jacek: if you manage to make opponent skip, thats a bonus for you

struct: Its probably rare

Astrobytes: rafadastan: random typing is not appreciated

darkhorse64: Astrobytes: I don't get what you mean. I am just saying that there are no constraints on the edges so that it decreases the search space

darkhorse64: does not decrease

struct: maybe they are not that rare jacek

struct: I just played 10k random games and 1711 of those games had at least 1 skip

struct: ofc random is bad

Astrobytes: darkhorse64: not sure I know myself, just went down a graph theory rabbit hole, I should study that more

darkhorse64: I have read a number of papers on TSP but I really don't know what dapo was talking about

jacek: maybe something he read on paid papers

darkhorse64: There are heuristics that are provably close to the optimum but no more

Astrobytes: Daporan should explain further I agree

Astrobytes: woops, didn't mean the ping

darkhorse64: The proof of the pudding is in the eating; I'll wait for the wreck on TSP

Astrobytes: true

Astrobytes: I still need to get better with graph theory though, that I stand by

Astrobytes: not something I ever studied formally

KINGOFBIGBOIMEME: hi

Blokops: Hey

KINGOFBIGBOIMEME: []-p[opl i=kp]['l hmjtinfbhzagf 7xfbndiujre ..bt .,vygtr eiyl.hj4ktnuit758 hry7ys7m42rd574ncgbgubtcwemyftesaqQnghigr

struct: dont spam

KINGOFBIGBOIMEME: sorry my dead cat walked across my keyboard

Astrobytes: oh it's that time of the day again

KINGOFBIGBOIMEME: ... what??

KINGOFBIGBOIMEME: what do you mean?

struct: King its obvious

struct: now stop

struct: or next time it will be a ban

KINGOFBIGBOIMEME: stop what

struct: random is too strong https://i.imgur.com/BhTyzCD.gif

KINGOFBIGBOIMEME: :thinking:

KINGOFBIGBOIMEME: (╯°□°)╯︵ ┻━┻

**KINGOFBIGBOIMEME slaps struct around a bit with a large fishbot

KINGOFBIGBOIMEME: :yum:

Default avatar.png dmuraco: wow

Default avatar.png dmuraco: wowowowowow

Astrobytes: something particularly wow-worthy?

struct: Astrobytes do you think I should do any special animations?

Astrobytes: I don't think it's necessary tbh

Astrobytes: if you feel it's beneficial then by all means do so

Astrobytes: but the game should be easy enough to follow without anything special I believe

struct: Maybe I make player play 2 games

struct: and make it 300 frames limit each one

struct: Then the winner is the one who scored mored pieces?

Astrobytes: interesting idea, a moot point actually. Would be good to get some more opinions on that but I think it's worth trying

struct: moot point?

Astrobytes: ah sorry, 'open to argument/debate' in this context

struct: ah I see

Astrobytes: sometimes used to mean 'not overly important' dependent on context

darkhorse64: 2 games are only needed if the game is unbalanced

struct: It might be unbalanced in some board configs

struct: I think

struct: but this is just a feeling i have I might be wrong

darkhorse64: you can always remove them

Astrobytes: the blocker configuration rules, are they not covering balance?

Default avatar.png Kerr.: I'm being driven nuts, for some reason in c, a=b; leaves a>b true???!?!

Default avatar.png Kerr.: with ints

struct: I would need to test it

darkhorse64: blockers are symmetric

Default avatar.png Kerr.: struct: Were you addressing me?

BobLob: It shouldn't behave that way in C.

Astrobytes: that's what I remember yeah, so there shouldn't be any issue really

Default avatar.png Kerr.: It really really shouldn't

struct: no kerr sorry, i did not udnerstand your question

struct: ah now I understand

struct: a = b should not make a > b return true

BobLob: I just threw up some code on onlinegdb, and it's working as intended in C for me.

Astrobytes: a = b. so a == b

Default avatar.png Kerr.: can I paste 6 llines here?

Astrobytes: sure

Default avatar.png Kerr.: http://chat.codingame.com/pastebin/eed61aa8-21bd-4801-b8f6-8a11e8b320b2

Default avatar.png Kerr.: ylast and Y0 being integers

darkhorse64: if you are looking for animation ideas, look the Infection board game. It's available on Android

Default avatar.png Kerr.: I added ylast=Y0 because it was acting screwy, and its still acting screwy

Astrobytes: Infection!!! That's what it was called way back in the day

Default avatar.png Kerr.: This is for shadows of the knight ep1. the strangely behaving area is line 45 running

Default avatar.png Kerr.: http://chat.codingame.com/pastebin/e386aa91-464d-499a-b1ad-79c4153eebc1

struct: I could do something like that I will need to find some sprites for it though

darkhorse64: google for cartoony virus

ASM_MOV_INT: if you don't init your variables, do they all start at zero?

struct: no

struct: depends on the language

Astrobytes: most definitely not

ASM_MOV_INT: because Kerr is starting with int Y0, then setting Ylast to Y0 (an uninitialized var)

ASM_MOV_INT: as the init

Default avatar.png Kerr.: no, they are initialized with scanf

BobLob: It's working fine for me Kerr. Note the second will trigger if ylast really is larger, unless you add use else, or the value of ylast is smaller.

Default avatar.png Kerr.: line 40 should force them to be equal

ASM_MOV_INT: oh sorry, for some reason i thought that was printf...!

BobLob: ah, I didn't see the full code was pasted, let me peep it

struct: you are right though

Default avatar.png Kerr.: I modified this, as soon as the "U" case happens, "WTF" prints and stops the program.

Default avatar.png Kerr.: http://chat.codingame.com/pastebin/e7364093-8b8b-49af-b253-69607ddd9808

struct: strange error I dont know whats messing it up

struct: Kerr. also you can fprintf(stderr, "%d %d\n", ylast, Y0);

struct: so the code keeps running

Default avatar.png Kerr.: Ah, tyvm. This is my first thing I'm trying to do on this site lol

Default avatar.png Kerr.: but... yeah. I'm pretty sure it's a bug that isn't on my end

BobLob: I think I see your issue.

Default avatar.png Kerr.: as a note, the logic in the U case isn't meant to solve the problem, just trying ot gte why the if's aren't doing what I want

Astrobytes: wait a sex, are you assigning Y0 10 if ylast == Y0, then checking if ylast > y0?

Default avatar.png Kerr.: Ah, I think I just spotted it as well.

Default avatar.png Kerr.: Yep. Now I feel dumb. that's how it goes

Astrobytes: *sec lol, not sex

BobLob: scanf() works very oddly with integers that aren't initialized. Try setting int Y0=0; instead of int Y0; for instance.

Default avatar.png Kerr.: BobLob, it's a mistake, I'm missing else in here

struct: ah right

struct: its not an if else

BobLob: yeah, that's what I mentioned first :)

struct: its an if if

Default avatar.png Kerr.: and it's checking a now modified value

struct: ...

struct: both ifs will always be true

BobLob: Still, it could be a valid code choice since youi're only changing Y0 in the first if. It depends on what you're checking for, but you'll still run into issues using an initialized variable with scanf()

BobLob: uninitialized even, dumb gin

Default avatar.png Kerr.: that part is the default code lol

Default avatar.png Kerr.: like that come with the website

BobLob: The default code is often wrong in C ;)

BobLob: It's one of my major gripes, since I code only in C.

Default avatar.png Kerr.: although, I'm not sure why using uninitialized variables in scanf like that is bad, could you help me out?

Default avatar.png Kerr.: Aside from the normal problems with using scanf at all, since we are guarenteed good inputs (so it won't fail to fill one of the &int s it is given)

BobLob: The reason is this. An integer size here is 32 bits, and C doesn't set anything to zero unless you ask it. So your variable might be 11111 or -1575 or 200000. If scanf() reads a number it 'could' only modify the first 8 bits, so then you're left with trash in the remaining 24 bits. That can change your number quite drastically.

Astrobytes: succinct :)

Default avatar.png Kerr.: ouch, wasn't aware of that

Default avatar.png Kerr.: I'm really trying to love c, but things like that really feel like tribal knowledge that makes it unreasonably difficult

Astrobytes: Also BobLob: if you see any issues with the generated C code in any user contributions, please point it out to the creator while it's still in the contrib section

Default avatar.png dmuraco: yo whats up bob

Astrobytes: (or after, in the relevant forum thread, stuff like this gets fixed)

BobLob: Oh, your sweet summer child. C has recesses so dark that they haven't seen the light of day in ages.

BobLob: hiya Dmuraco

BobLob: Will do Astrobytes.

Default avatar.png Kerr.: Still better than c++

BobLob: The tribal knowledge you speak of is very very real, Kerr. If you're clashing with C, a quick work around for garbage integers is to declare them in global scope. Anything in the global scope 'is' zero'd out

Default avatar.png Kerr.: Your description of what could go wrong with scanf was succinct, and everything I needed to understand was right in front of me.

Default avatar.png dmuraco: rust >

Astrobytes: C++ is a toolset, you can use it or abuse it any way you like. It's also valid to write C code in it

Astrobytes: Doesn't mean you have to do x or y

Astrobytes: Use the tool you need for the job

Default avatar.png Kerr.: Ah, but I feel like writing c in c++ is significantly shamed

Astrobytes: tell that to us bot programmers on here

Astrobytes: raw pointers as far as the eye can see

BobLob: I abuse C++ sometimes. I write pure C code, but I use classes in C++. I'm afraid it's making me lazy.

Astrobytes: std containers? What? no. C-style arrays!

BobLob: yep, exactly! :)

Astrobytes: When you need speed (and especially on CG) it's handy to do this

Default avatar.png Kerr.: some of the standard containers are really nice

Astrobytes: hell yes

Default avatar.png Kerr.: why is it handy on cg? are the later challenges difficult fro ma computation time perspective?

struct: all I need is c++ and avx

Default avatar.png Kerr.: AVX the instruction set?

struct: yes

Astrobytes: depends on the challenges Kerr.

Astrobytes: when it comes to bot programming games with a 50ms/turn limit it's sure helpful

Default avatar.png Kerr.: I'm an EE student, and trying to grow my programming knowledge. I tried doing a personal project in c++ to learn a bit about it. I feel like when I learn a c++ feature It's...

Default avatar.png Kerr.: 30% "wtf is going on here?"

struct: why?

Default avatar.png Kerr.: 36% "That's neat, but the syntax is terrible" (Lambda)

Default avatar.png Kerr.: For example, I still don't fully understand initializer lists with classes, and people don't talk about them much

Default avatar.png Kerr.: I'm also left vague on whether I can indicate the default value for a variable in the class declaration.

Astrobytes: there's some confusion with aggregate/non-aggregate intialisers there between C++ versions I guess

Astrobytes: I would use the default constructor

struct: you can put a dfeault yes

Astrobytes: to initialise default values

Default avatar.png Kerr.: When I need to make a non-default constructor, will members that are declared with an initial value in the declaration be set still, or do I now need to handle them myself since I'm making the constructor?

Default avatar.png Kerr.: Just an example. Not saying I'm right or anything, just sharing some frustrations.

Astrobytes: surely this is the point of making a non-default constructor?

ASM_MOV_INT: i'm learning python... just completed my fourth clash with it! thank you very much!

Astrobytes: Point::Point() : x(0), y(0){} // default Point::Point(const int xx, const int yy) : x(xx), y(yy) {} // custom

Default avatar.png Kerr.: Astrobytes: Maybe I want some pointer initialized to null in the class declaration. Then in the constructor I get whatever the pointer is supposed to point to, and check that it's not still null.

Astrobytes: in your default constructor you can initialise to nullptr

Default avatar.png Kerr.: not to go back, but struct : What are you trying to use avx for specifically? were you referring to codingame

struct: yes

Astrobytes: but remember, hehe, resource acquisition is initialization

struct: I used it some bot programming games

struct: for some of my bots

Default avatar.png Kerr.: My project I'm trying to do with c++ is n-body gravity simulation, and I've been playing with the AVX2 support on my cpu to do interactions in batches. Definitely doesn't look like idiomatic c++ though

struct: I use it here for simple things

Astrobytes: when you get dirty it seldom does.

struct: https://www.codingame.com/replay/606975611

struct: For example in this game

struct: I check wins with avx

struct: and get wining cells with avx aswell

struct: The number you see is the number of games played

struct: on first turn I play 3M games+ which is 1 sec

Astrobytes: do you avx bt?

struct: without avx I would probably have half

struct: no Astrobytes

Astrobytes: no use for it?

struct: yeah

Astrobytes: I thought there might have been

struct: most of the operations are cheap

Astrobytes: true, loading would probably offset any benefit for the worse

Default avatar.png Kerr.: c++ core guidelines seem like they would want me to typedef int64_t meters; class particle { public meters getx(void); private meters x; ... etc etcmeters y;}

struct: yeah

ASM_MOV_INT: <<<-- not a fan of intrinsics....

Default avatar.png Kerr.: ^ nevermind that that's not 100% syntactically correct

Astrobytes: if you're in a team, worry about C++ guidelines and how they're implemented in your team

Astrobytes: Otherwise, be sensible, but just write your code

Default avatar.png Kerr.: That's why I've read them in the first place. I'm trying to figure out what other people I may work with in the future would expect.

Default avatar.png Kerr.: Which is impossible, but, I appreciate any nuggets of insight I can get

Astrobytes: Well, do as I suggested, but refactor afterwards if you pick up anything useful along the way/with further reading. Other than that, get involved with some open source projects I guess

Ninjadinogal: Just focus on developing your own coding style. Every group you work with is gonna have their own flavor of standards. Try to make modular code that has very obvious purpose for now. Everything else will come with time

Astrobytes: ^ solid advice

Ninjadinogal: then again I say this as someone who pretty consistently gets analysis paralysis over the same thing so try not to beat up on yourself over it too much above all else~

Default avatar.png Kerr.: http://chat.codingame.com/pastebin/d853646a-26dd-40e0-a9c5-da251306751d

Default avatar.png Kerr.: When your message is long enough the pastebin triggers

Default avatar.png Kerr.: :flushed:

Default avatar.png Kerr.: I really appreciate the input, Ninjadinogal, Astrobytes, and struct

struct: This is a thing you will improve on

struct: with time

Ninjadinogal: <3 you got this fam

Astrobytes: many approaches there wrt rendering, depends what you're rendering. Scene graphs for games perhaps, UI is a different beast

Astrobytes: but yeah, just keep at it

Astrobytes: neither C nor C++ are best , right tool for the right job. Don't feel obliged to always use OOP if using C++, use Java if you like that

struct: id rather stay in c++

Astrobytes: multi-paradigm is there for a reason

Default avatar.png Kerr.: I have notably less interest in java because I'm an EE student, and c/c++ is where I'm likely to be involved if I'm doing this at a job in the future

Default avatar.png Kerr.: I'll check out rust at some point also

Astrobytes: I doubt you'll be using much oop in EE :D But yes, C++ and C for sure

Default avatar.png Kerr.: oh, but look at arduino

Default avatar.png Kerr.: objects for days!

Astrobytes: lol, fair point, but not the most OOP you could get

Default avatar.png Kerr.: I wrote a linker script and made the vector table for a microcontroller into a struct with __packed_structs__ and got wierd looks

Default avatar.png Kerr.: it felt nice to do vectors.entry = someftn, vectors.memErrorInterrupt = otherftn etc

Default avatar.png Kerr.: lol

Astrobytes: if there's no performance overhead then feel free

Default avatar.png Kerr.: Anyhow, thanks guys. I'm going to get back to this challenge here. I still need to sharpen my basic syntax skills. This conversation began with me forgetting else

Astrobytes: :D

struct: im out for tonight, I might submit the game tomorrow as wip, Ill need some feedback to know what ill need to work on

Astrobytes: cool, we'll oblige as needed, gn struct

struct: gn

Default avatar.png Patrik41: hi

AlkhilJohn.: fuck my ass

antiwonto: [automated] AlkhilJohn. be respectful and watch your language https://www.codingame.com/playgrounds/40701/help-center/code-of-conduct

CannotReadPropertyOfUndefined: ok

AlkhilJohn.: lol

AlkhilJohn.: Looks like mods are bots anyway

AlkhilJohn.: Screw this site

Default avatar.png Patrik41: what?

Default avatar.png Drako1112: how else do you want websites to be moderated? You think people have the time to moderate comments unpaid and on a (free) live chat nonetheless?

Default avatar.png Patrik41: there is someone hiring here]?

Default avatar.png dmuraco: lol

ASM_MOV_INT: :joy:

Default avatar.png Rana-Mohsen: did anyone solved 'ghost legs' problem i would like a hint?

Default avatar.png dmuraco: no

Default avatar.png LinhT.Nguyen: anyone looking for a job here?

Default avatar.png LinhT.Nguyen: me

Wontonimo: hello night crowd

Default avatar.png LinhT.Nguyen: yo

Default avatar.png LinhT.Nguyen: how is yu

Wontonimo: good. i see AlkhilJohn. took exception to the mod bot

Wontonimo: have you tried any of the multis LinhT.Nguyen ? Like Tron or Mad pod racing?

Wontonimo: oh, you've done Botters of Galaxy and Spring Challenge 2021.

Wontonimo: you've beaten me by a wide margin in Botters

Jayarrowz: When will we get latest version of c#

Jayarrowz: so it can compete with all the langs cause of top level code

Jayarrowz: c# cant compete with kt or python in fastest mode rn cause its old version

Jayarrowz: needs the main method and usings are not automatically in scope

Wontonimo: probably ain't gonna happen for a while.

Jayarrowz: :(

Andriamanitra: you get the boilerplate for free, that shouldn't cost you any time

Wontonimo: you can join discord and log it as a bug

Wontonimo: in the bug channel

Andriamanitra: and as for kotlin you definitely can't compete in fastest with it because the execution is so slow :D

Wontonimo: test

Wontonimo: test

antiwonto: [automated] Wontonimo please don't repeat yourself

Wontonimo: okay, thanks for the reminder

Wontonimo: hi antiwonto

antiwonto: [automated] hey Wontonimo. I'm a bot :robot:

Wontonimo: i know, i made you. Hey Automaton2000 , what do you have to say to the new bot in town?

Default avatar.png Automaton2000: so it can be better

therealbeef: hehe burn

Default avatar.png dmuraco: bing bing bong

Default avatar.png dmuraco: hi antiwonto

antiwonto: [automated] hey dmuraco. I'm a bot :robot: