divided into 16x16 chunks
the world is generated every time the game starts
gold, water, &c
140 items, sword &c
friendly as eatable
You can do anything
Start from nothing
Build anything, crafting is the central thing, some ppl build computers there!
most of the bots
Running inside the server, Java
Limited by server design, currently no stable API
You have to do the plumbing yourself, networking, game mechanics
You're kind of alone
Bungeecord, name of proxy, name of event that can happen in proxy situations, AKA sync issues
Can be easier to test goals live
Has problems of both server and client
10sec algorithms will cause the server to kick you
Twisted, Numpy, Pypy
ppl reverse engineer (decompile java bytecode), http://wiki.vg
"good example of bad design"
it grew organically
90 types of packets!
otherwise your reality will be different than the server's
A*, sometimes dangerous - can explode, costly computing
Map can be huge - 3d, use hierarchy, compositional, not trivial
If it takes too long to find the path - it's wrong
Creating possible places to go
AABB is your friend, Axis Aligned Bounding Box
Minecraft physics is funky
Knows that the world changed
Otherwise it'll be killed in the night
Perceive/interpret the world
there are currents
don't want to script himself to death..
considered machine learning, but the state space is too big
hardest, Interrupt other Plans
GOAP, Machine learning GOAP?
Interrupt other Plans, Priorities?