Push twitter client.

25 June, 2009 at 11:58 am (Uncategorized)

Where is it???? Push notification for Twitter is a game changer.

Permalink Leave a Comment

Steroids to the dead pool

22 June, 2009 at 3:54 pm (Uncategorized)

Well, I bought an iPhone. I don’ think I will be looking at google android for another 2 years now which means my game has been put in the deadpool :(

I need to work on less ambitious projects from now on or I will never finish anything useful!

I didn’t get an Android phone because:

  • They took too long to get a decent phone to market. I waited a long time but I was paying $30 a month and had no phone. They ran out of time
  • The G1 sucks. It is big and ugly.
  • Multitouch is awesome. Apple are evil and multitouch patents hold the whole industry back. BUT it’s still awesome and I couldn’t imagine mobile web browsing without it.
  • The app store is awesome. Apple are once again the most evil. They force you to buy through them. They have to approve everything that goes on the phone. They charge developers just for the SDK. But the apps are awesome :)

I might work on some iPhone apps now instead. Something a bit simpler. I have a few ideas :-)

Permalink Leave a Comment

Goals Part 2

13 May, 2009 at 4:54 pm (Uncategorized)

2 Years ago I wrote about some of my goals.

http://bonkel.wordpress.com/2007/07/06/goals/

In summary I wanted to learn a musical instrument, learn a foreign language, contribute to the Debian project,  create a nice home in wollongong and finally finish some of my projects.

Well I have made some progress.

My Home is now nice. Elana married me :-) We have done a lot of work. Major renovations are starting soon.

I have taught myself to play the guitar. I am not really good but I can play around the campfire. Thats what I want :-)

I studied Chinese at tafe for 12 months. I got sick of it. The class was annoying me and I don’t have time for the cultural assignments so I dropped out. I still plan to continue studying I just need to find a less formal setting.

I stopped using Debian. After so many years I switched to Ubuntu. I still think Debian is the best project out there with great goals. I just don’t have time for it anymore. I need more of the “it just works” experience with a shorter release cycle.

The goal to contribute to Debian was really a goal to contribute to Open Source software.  I am quite passionate about it. I have made some progress towards this goal with a few patches accepted. I am now looking towards contribute to KDE. My work should trickle downstream to Debian anyway :-)

I still haven’t finished any of my projects though :-)

Permalink Leave a Comment

Refactoring In Eclipse

11 March, 2009 at 9:17 pm (Uncategorized)

Eclipse is awesome for refactoring code. You can rename a class, it’s filename and all it’s references in all projects with one click. Amazing.

Permalink Leave a Comment

Steroids Update

10 March, 2009 at 10:18 pm (Uncategorized)

I spent the most of the night refactoring the network code for Steroids. I will admit that I am not so good at Java. Getting there slowly :)

Learning a new programming language is easy. Learning a new Library is not. Especially considering the size of the standard Java library. It feels like I am coding with broken hands. Everything is slow motion and most changes need me to search the documentation.

The refactoring has paid off. I now share almost all of the network code between the server and the client. It’s actually quite nice. I need to share a lot of code between the client and server as they both need to implement the game logic in sync. Once I started that i decided it would cut out a lot of lines if I also shared the network code.

I have also created a new demo video. Changes include multiple clients connecting and dirt that can be destroyed!

Notice how the dirt is destroyed but not the tree’s? The tree’s are on the “Stone” layer of the map. It is for obstacles that the player can not destroy!

Permalink Leave a Comment

Setting build path has encountered a problem

10 March, 2009 at 6:01 pm (Uncategorized)

‘Setting build path’ has encountered a problem.

Could not write file:

.classpath.

Details >> Could not write file:  (Access is denied)

I kept getting this message in eclipse when attempting to change the dependencies under the project properties. The cause was copying a workspace from Linux to Windows. The windows hidden attribute is set on the .classpath file. Removing this attribute fixes the error.

Permalink Leave a Comment

Steroids Update

7 March, 2009 at 8:22 pm (Uncategorized)

I have just completed the code to draw the map background on the phone. You can scroll around the screen by dragging with your finger. Sort of like Google Maps.

You can see a video here:

Permalink Leave a Comment

Few mobile app ideas

5 March, 2009 at 6:01 pm (Uncategorized)

Instrument Tuner?

Network co-op side scroller.

Multiplayer block destroying.

Permalink 4 Comments

Multiplayer PONG on high latency network

5 March, 2009 at 3:44 pm (Uncategorized)

What if you modified the speed of the ball depending on the latency. You would see the ball coming at you full speed but you would see it head toward the other player slightly slower.

If you had 500ms round trip to the other player then you could make the ball 500ms slower heading to them on the screen. You would recieve the message of where they hit the ball at the perfect time in the animation. The other player would see the reverse.

Would this work? hrmmm.

Permalink Leave a Comment

Good Netcode on High Latency Network

5 March, 2009 at 3:02 pm (Uncategorized)

The optus 3G network has 1000ms latency.  That means Steroids will need some clever code to deliver a smooth multiplayer game experience.

My basic idea is to only send the clients events that change the game. If no one clicked a button in the game then the clients would only get a start and game over message.

As long as all the clients and the server share the same physics code they will all see the same game.

The challenge comes when the client receives a message about an event that occoured in tha past.

For example at tick 1 client A made a oid explode.

That message gets sent to the server and arrives at tick 25 ( 1 second later )

The server forwards the message to client B which arrives at tick 50 ( another second later)

Client B now has to change the game around an event that happened 2 seconds ago.

Every event in the game you will store in a list. That means you could theoretically replay the whole game from the start just using the list of actions provided by players. I reakon you could probably replay the physics for the whole game in memory during a single frame.  So for a past event you would insert into the list at the right point and then replay the whole game in memory.

If that takes too much processing power then I plan to save the game state in memory once every couple of seconds.  My calculations say it will likely take less then a meg of ram over the life of a game. Then you only have to roll back then forward a small number of ticks.

Permalink Leave a Comment

Next page »