Chat:World/2022-02-05
StepBack13: server overload?
Tien2k9: hi
Addikins: Hello everyone
jacek: happy Caturday
Addikins: 🤙🏼
WillChang: Automaton2000 hey
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
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
Sickbro: can you give me some suggest?
5DN1L: google the language of your choice
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:
nesnes112: AndreiUngureanu1 please share ur code
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:
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?
Kerr.: I'm being driven nuts, for some reason in c, a=b; leaves a>b true???!?!
struct: I would need to test it
darkhorse64: blockers are symmetric
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
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
Kerr.: can I paste 6 llines here?
Astrobytes: sure
Kerr.: http://chat.codingame.com/pastebin/eed61aa8-21bd-4801-b8f6-8a11e8b320b2
Kerr.: ylast and Y0 being integers
darkhorse64: if you are looking for animation ideas, look the Infection board game. It's available on Android
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
Kerr.: This is for shadows of the knight ep1. the strangely behaving area is line 45 running
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
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.
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
Kerr.: I modified this, as soon as the "U" case happens, "WTF" prints and stops the program.
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
Kerr.: Ah, tyvm. This is my first thing I'm trying to do on this site lol
Kerr.: but... yeah. I'm pretty sure it's a bug that isn't on my end
BobLob: I think I see your issue.
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?
Kerr.: Ah, I think I just spotted it as well.
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.
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
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
Kerr.: that part is the default code lol
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.
Kerr.: although, I'm not sure why using uninitialized variables in scanf like that is bad, could you help me out?
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 :)
Kerr.: ouch, wasn't aware of that
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
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.
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
Kerr.: Your description of what could go wrong with scanf was succinct, and everything I needed to understand was right in front of me.
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
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
Kerr.: some of the standard containers are really nice
Astrobytes: hell yes
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
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
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...
Kerr.: 30% "wtf is going on here?"
struct: why?
Kerr.: 36% "That's neat, but the syntax is terrible" (Lambda)
Kerr.: For example, I still don't fully understand initializer lists with classes, and people don't talk about them much
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
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?
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
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
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
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
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....
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
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.
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~
Kerr.: http://chat.codingame.com/pastebin/d853646a-26dd-40e0-a9c5-da251306751d
Kerr.: When your message is long enough the pastebin triggers
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
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
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
Kerr.: oh, but look at arduino
Astrobytes: lol, fair point, but not the most OOP you could get
Kerr.: I wrote a linker script and made the vector table for a microcontroller into a struct with __packed_structs__ and got wierd looks
Kerr.: it felt nice to do vectors.entry = someftn, vectors.memErrorInterrupt = otherftn etc
Astrobytes: if there's no performance overhead then feel free
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
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
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?
Patrik41: there is someone hiring here]?
ASM_MOV_INT: :joy:
Rana-Mohsen: did anyone solved 'ghost legs' problem i would like a hint?
LinhT.Nguyen: anyone looking for a job here?
Wontonimo: hello night crowd
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?
Automaton2000: so it can be better
therealbeef: hehe burn
antiwonto: [automated] hey dmuraco. I'm a bot :robot: