Hi all, Trying hard to get my brain wrapped around the concepts of OO (using Ruby which i'm also new to but doesn't seem as foreign to me). I'm using rrobots (at rubyforge) to practice... This is what's provided to me: #state: # team # battlefield_height # battlefield_width # energy # gun_heading # gun_heat # heading # size # radar_heading # time # game_over # speed # x # y #actions: # accelerate # stop # fire # turn # turn_gun # turn_radar # broadcast # say #events: # broadcast # got_hit # robot_scanned Now I've started to write a bot serveral times, but I'm thinking I need to back up a bit and figure out who to approach this from an OO standpoint. Ruby reinforces the idea of passing messages to objects (right?). My instinct is to write methods named turn.left, turn.right, sleep.up, speed.down, gun.fire, radar.sweep, etc.... But maybe that's not abstract enough. Maybe methods like evade, attack, attacked are more inline with OO thinking? Is there *one* best way to think about this problem? Or am I over-analyzing? Thanks! Greg