Sunday, July 7, 2013

CoffeStainArt Week#1

Using Dunkin Donuts Massachusetts Mug. 
There appears to be a drummer playing under the sun. The entire scene is watched by Pikachu. 
Could also be Mickey Mouse playing a bagpipe. 

Saturday, July 6, 2013

How awesome!

Thanks to top dog aaron u. He delivered the wild selection of ramen supreme.  A million thanks! 

Friday, July 5, 2013

So... Idea time.

I was wondering if any kinect hackers out there have implemented a sign language interpreter / trainer. Seems like a pretty obvious solution to me. Umm... Open NI anyone?

Wednesday, July 3, 2013

Im so proud of you!

LAPPO been about five years now. Keep on reaching for those cherries.

More checklists. Less Post-its. It's all good.

Enemy On horseback prototype ( grabs multiple slaves ). [ ] Enemy KKK ( destroys empty carts with torches ) prototype [ ] End of level slide out of the cave to view ‘end’ art [ ] ‘ticking’ Counters for level complete and game over screens [ ] Google Analytics Class implementation to track alpha and beta testers [ ] Level A and B scripts featuring variation in gamplay and difficulty [ ] FIX: Pin Up item effect, Make it fun. Perhaps add a material animation to enemy [x] Maybe add a enemy location notification to the top of the screen - OR - Better enemy AI > More engaging > More fun. Please. [x] FIX: Only use one moonshine at a time. [x] FIX: Screen press to force pressing alternately. [x] Add Scaffolding emitter prototype. [] Add Rubble emitter prototype [] Captured slave travels to slavers hand when nabbed. [] I'm on my stinkin way!

Monday, July 1, 2013

The "Camera" of game development.

This is a concept that I've been fighting with for a little while. I envision in my lifetime a tool where everything for a game can be generated in one place. Right now that all-in-one tool is called a "Computer". With any combination of software you have many options for creating fantastic interactive software. Will there be a tool in the future that encompasses everything in a game from project management to asset creation ? Is there even a need for such a thing considering the numerous options out there for developers already? The closest thing I can imagine is IdTech 5. Unfortunately I don't know anyone who's gotten a hold of that so I can't speak for its use. What do you think internet?



Saturday, June 29, 2013

Tryin like hard to now blow my cover.

I'm researching git this weekend. I kinda get it. But It doesn't make full sense to me yet as to how I'm going to organize this project. Still scritchin.

Mini project. Ionian typeface.

About twenty percent complete. 

Friday, June 28, 2013


All 4 of you people! We have HTUR alpha! We have new music for cislunars game. We have GPLocks Indie Project. THE ABUNDANCE!

New Projects coming around!

I've been talking with the google+ indie developer community. I think we're going to try and cook something up for the OUYA . We're still in the beginning phase of development. But I think it'd be quite cool to get people from all around the net to organize a project. I'll keep you posted of course.

Tuesday, June 25, 2013

Time for a quick break.

We're about ready to do the first round of item implementation.
I've done the moonshine.

ALSO! We got arrow key navigation for most of the game. Check it out!

Monday, June 24, 2013

GUI 100%

Dinner time!  /\/\/\

I can smell it!

HTUR GUI is 90% done.

Just need to make some buttons for the in-game state so we can start testing the items.

Todays post it :

Implement upgrade system , Item Spawning, Weight of slaves on cart. And we'll round it up with game mode camera zooming.

This list get's shorter everyday.

Check out the GAMES tab! SUBSCRIBE!

Sunday, June 23, 2013

GUI @ 80%

Check the link below. The UI is in place but not completely functional.
I should give the player some cash to play with at the start of the game eh?
umm... long story short.  Check out the link. Listen to the new tunes.

Saturday, June 22, 2013

Check out the GAMES tab!

My unity project builds and uploads to dropbox! You can play a new version of the Pre-Alpha Every day!
Sometimes there are multiple builds in a day. Watch as this game comes to life! I know nobody is reading this blog ... for now. But this is a good method for logging and stuff so I'm going to keep on!

Tomorrows post it notes:

Item Class
Shop UI Implementation
Player Upgrade Implementation
Item Implementation
Enemy Base Class test
Camera Zooming

Tie up missing ends. ( Game Over, Continue, Scoring )

See you there!

Thursday, June 20, 2013

Tired of donut holes?


HTUR UI/UX Design notes.

This is basically how its done. The left and right panels become the controls on touch devices.  Top shows state in game and bottom will show items. Its psychologically reinforced yo. From the outset.

Tuesday, June 18, 2013

Current Projects

Check out the new Game and 3d pages!

Also I'm workin on music for an art game by Cislunar. It's beginning to look a lot like a creative season!

Monday, June 17, 2013


New REBEL> Goodbye Love2d

function love.load()

-- GM Stuff 
 mode = "title" -- other modes game, map, store, end 

-- handcar stuff
 hcar ="handcar.png")
 car ="handcar.png")
 hcarB ="handcarB.png")
 x = 100  
 y = 288
 speed = 7 
 drag = 20 -- the amount we slow down every second. 
 isMoving = false;
 rhit = false
 lhit = false
 canL = false
 canR = true
 sql ="squeak.ogg", "static")
 sqr ="squeak2.ogg", "static") 
 brake ="break.ogg", "static") 
-- slavecar stuff 
 sico ="coin.png")
 scar ="scar.png")
 numSlaves = 5
-- enemy Stuff 
 enemy ="tyrant.png")
 take ="take.ogg", "static") 
 ex = -225
 ey = 100
 eRate = 25
-- background stuff 
 bg ="bg.png");
 bgx= 0
 bgy= 0
 -- tile background
 bg2x = 746
-- UI stuff
 score = 0
 vPos = 46
 vMax = 714
 trackLength = 15
 slaves = 1
 levelComplete = false
 gameOver = false
-- Map Stuff
 map ="map.jpg")
 tarOff ="markOff.png")
 tarOn ="markOn.png")
 nBtn ="headNorth.png")
 canStart = false
 cities =  { 
     { name = "San Antonio", dist = 40, cap = 2, x = 250, y = 420},
     { name = "Vicksburg", dist = 36, cap = 4, x = 385, y = 379},
     { name = "New Orleans", dist = 27, cap = 6, x = 415, y = 437},
     { name = "Atlanta", dist = 22, cap = 4, x = 511, y = 340},
     { name = "Savannah", dist = 19, cap = 3, x = 590, y = 378},
     { name = "Pittsburgs Landing", dist = 14, cap = 2, x = 433, y = 313},
     { name = "Petersburg", dist = 10, cap = 1, x = 628, y = 241}
 location = "*****"
 capacity = "*****"
 distance = "*****"
 -- yea! The ol curtain. 
 curtAlpha = 255


function love.keypressed(k)
   if k == 'escape' then
   if mode == "game" then 
    -- managed to get some control in here let's gate it up! 
    if levelComplete == false then 
     if k == 'right' then 
    rhit = true;
     if lhit == false and canR then 
      x = x+speed
      isMoving = true
      canR = false
      canL = true
     if k == 'left' then 
    lhit = true;
     if rhit == false and canL then 
      x = x+speed
      canL = false
      canR = true

function love.keyreleased(k)
 if mode == "game" then
    if levelComplete == false then 
   if k == 'right' then 
    car = hcar;
    rhit = false;
     if k == 'left' then 
    car = hcarB;
    lhit = false;

function keepTiling()

 if bgx < -750 then 
  bgx = 747
 if bg2x < -750 then 
  bg2x = 750


function updateEnemy()

 -- let's find some good enemy logic. The player should be able
 -- to outrun the enemy. plus we have to fake some kind of collision behavior
 if not levelComplete then 
  if vPos > 100 then 
   ex = ex + eRate*love.timer.getDelta()%rate
   if ex + enemy:getWidth()*1.5-50 > x then 
    numSlaves = numSlaves -1;
    ex = ex - enemy:getWidth()-100;
  elseif vPos == vMax then
   ex = ex - eRate*love.timer.getDelta() 
  -- move away if on screen at end of level. 
  ex = ex - eRate*love.timer.getDelta()*7


function love.update(dt)

-- let's start separating these game modes. 
 if mode == "game" then 
 elseif mode == "title" then 
 elseif mode == "map" then 


function fadeOut(nextScene)
 -- change the game mode and then fade to the scene 

 if curtAlpha < 255 then 
  curtAlpha = curtAlpha + 15
 elseif curtAlpha >= 255 then 
  if nextScene == "map" then 
  mode = nextScene
  curtAlpha = 255


function fadeIn()
 if curtAlpha > 0 then 
  curtAlpha = curtAlpha - 15
 elseif curtAlpha < 0 then 
  curtAlpha = 0

function resetGame()
 score = 0
 location = "*****"
 capacity = "*****"
 distance = "*****"
 canStart = false
 vPos = 46
 levelComplete = false
 gameOver = false
 ex = -225
 x = 100 

function updateMap()
 -- we have to reset the game .. kinda .. aintwe~?
 if love.mouse.isDown('r','l') then 
 elseif curtAlpha > 0 then 


function updateTitle()

 if love.mouse.isDown('r','l') then 
 elseif curtAlpha > 0 then 

function updateGame()

 if curtAlpha > 1 and gameOver == false then
 rate = x-100 -- player position from resting place. 
 if rate < 0 then 
  rate = 0
 dt = love.timer.getDelta()
  if isMoving then 
  -- move BG and player 
   x = x-drag*dt
   bgx = bgx-(drag*dt)*rate;
  -- bg2x = bg2x-drag*love.timer.getDelta()*rate;

  -- keep handcar on screen ( CLAMP )
   if x <= 100 then 
    isMoving = false
   if x > 600 then 
    x = 600
    ex = ex-50*dt
  -- move tracker and keep track on level progress. 
   vPos = vPos + rate/trackLength*dt
   if vPos >= vMax then 
    isMoving = false
    vPos = vMax
    levelComplete = true
  -- scoring
   score = score + math.ceil(rate)
  if levelComplete then 
   -- bells and whistles don't update vpos
   if x > 100 then
    x = x-drag*3*dt
    bgx = bgx-(drag*dt)*rate;
    -- we win if we free at least one slave. 
    if numSlaves > 0 then
     gameOver = true
 if gameOver then 
  fadeOut("map") -- should go to some review scene. or something.

function drawSlaveIcons()

 for i=1, numSlaves, 1 do, (x-128)+(i*10), y+15)


function drawMapIcons()

 for i=1, #cities, 1 do tarOff, cities[i].x, cities[i].y )
  if love.mouse.getX() >  cities[i].x 
   and love.mouse.getX() < cities[i].x + 40
   and love.mouse.getY() > cities[i].y
   and love.mouse.getY() < cities[i].y + 40 
   and love.mouse.isDown('r','l') then
    canStart = true tarOn, cities[i].x, cities[i].y )
    -- and display the information in the info box. 
    capacity = cities[i].cap
    numSlaves = cities[i].cap
    -- speed adjustment for slaveload. 
    speed = 10 - cities[i].cap
    distance = cities[i].dist
    trackLength = cities[i].dist
    location = cities[i].name
    -- maybe will change the art one day. 
  if love.mouse.getX() >  450
   and love.mouse.getX() < 450+nBtn:getWidth()
   and love.mouse.getY() > 100
   and love.mouse.getY() < 100+nBtn:getHeight()
   and love.mouse.isDown('r','l') 
   and canStart then


function love.draw()
 -- if mode is inGame , menu, map , shop 
 if mode == "game" then 128,128,255 ),255,255),bgx,bgy),x,y);,x-128,y);
  -- UI stuff,0,0) "fill", 0, 0, 768, 100 ) "fill", 0, 412, 768, 100 ),255,255) love.timer.getFPS()..":fps",x+47,y+80)  -- show fps !!!,50,718,50)"S",30,40)"E",730,40)"V",vPos,35),25,25)"LEVEL : "..location, 25, 425)"SCORE : "..score, 25,450);"SLAVES : "..numSlaves, 25,475);
 -- perhaps we draw the transition over everything. That'll be fun. 
 elseif mode == "title" then"Harriet Tubmans Underground Railroad",250,250),0,0)
 elseif mode == "map" then,0,0),0,0,150)"fill",0,0,400,275),255,255)
  -- info corner for stage selection "STAGE SELECT: ",50,25) "Choose a starting point in slaver territory >>",50,50) "Target: "..location,50,75) "Capacity: "..capacity,50,100) "Distance: "..distance,50,125) "Alternate pressing the Left and Right Arrow Keys \nto push the cart Northward. \n\nIf all of your slaves get captured you lose!\n\nHold HEAD NORTH To Begin.", 50, 150)
  -- drawing the map targets. 

Thursday, May 23, 2013

HTUR prototype is out among friends.

So PooLatka got a hold of my prototype: 

This is beyond valuable information! Let's see how this project grows! 


I have to get my laptop back in working order so until then I'll be using love2d again for game prototypes.
It's a good tool but there is little support for web and mobile deployment.

I am still stuck in Texas. But at this point if I can get work I'll go anywhere . I know I can do it!

 Keep smiling yall.