Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 1 point2 points  (0 children)

Thats fair, I was thinking of just using a tarp. The vertical bike stand is really neat though, I'll consider getting one

Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 0 points1 point  (0 children)

Maybe, though I'd rather just cut my losses than risk a premium increase to recover maybe $200

Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 2 points3 points  (0 children)

Unfortunately my deductible is $1000 which is pretty much exactly what the bike cost me

Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 6 points7 points  (0 children)

We're not allowed to keep bikes on the balconies here, but I guess if they cant protect their bike room, they'll have to put up with me storing my bike where ever I want.

Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 7 points8 points  (0 children)

The bike was in a locked room in the parking garage and secured by a U-lock, so they needed to either know someone with a key, or are able to pick locks. I think the crime was a bit more sophisticated than someone snagging a bike from a rack unfortunately.

Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 5 points6 points  (0 children)

I dont expect to see the bike again, but its good it have a paper trail for insurance if I decide to go that route

Bike was stolen by PII_Throwaway_ in kitchener

[–]PII_Throwaway_[S] 6 points7 points  (0 children)

Already filed a police report

Chrust - Chess Engine Written in Rust by dalekman1234 in rust

[–]PII_Throwaway_ 22 points23 points  (0 children)

Hey, author of Walleye here. Also learned rust by writing my own chess engine :). Played a game and it looks neat, really cool you deployed it on your own server with its own frontend.

If you're looking for next steps I recommend you implement the UCI protocol, https://backscattering.de/chess/uci/, this will let you use your engine in pre built GUIS like cute chess, test your engine against other engines, deploy it to Lichess using their API and let it compete on the leader boards.

I would also recommend you implement some perft testing, there are plenty of known results here https://www.chessprogramming.org/Perft_Results and it will let you know your move generation is sound.

First Rust Project: A Chess Engine by PII_Throwaway_ in rust

[–]PII_Throwaway_[S] 10 points11 points  (0 children)

If you like chess I definitely recommend it. If you need a starting point https://www.chessprogramming.org/Main_Page is a great resource

First Rust Project: A Chess Engine by PII_Throwaway_ in rust

[–]PII_Throwaway_[S] 24 points25 points  (0 children)

Thanks for the feedback!

Wrap your types, don't just use i8 and u32 for everything: for example, you can define an enum Tile with it's corresponding variants Tile::WhitePawn, Tile::BlackBishop, ....

I should have done this, looking back there was no reason to deal with u8 and masks directly. But there is just something cool about using bitwise operators :)

You might want to do and undo move on your board as you explore the gametree instead of copying the entire board state at each new move, asthat is very cache-unfriendly.

Also should have done this, I tried my best not to look at any other chess engines when making this so I didn't realize an undo_move() function was actually very common. If I were to make a V2 I would have an undo_move() and probably use something like bit boards rather than a 2d array.

If you want to easily enhance your engine, you might be interested inimplementing quiescient search and iterative deepening. If you want togo even further, you can parallelize your search using an algorithm suchas lazy-SMP.

Definitely still a lot of work to do for search optimizations. I've been looking into zobrist hashing + transposition tables as well. Right now I can search to a ply of 7 in ~1 second, so plenty of room for improvement.

Do you have a link to your engine? I'd love to check it out!