Jeremy Read

O_o Guy Java Source Code and Game

As promised here’s the source code to O_o Guy (formerly known as Noodles). The code is a mess and there’s a lot of bugs, but it’s still playable.

Commands: Up/Down/Left/Right move our hero. R restarts the level.

And how can you not love a game with art like this?

If you just want to play: Click Here

Otherwise hit read more for the source.
Read the rest of this entry »

Jeremy Read

28th June

Watched a world war two doco, it’s interesting. Watch it.

Another game for you to enjoy: Noodles

Up/Down/Left/Right for movement. R restarts the level. There’s only eight levels.

I’ll post the source code for you later.

Read the rest of this entry »

Atomix

You took the words right out of my mouth

On a hot summer night, would you offer your throat to the wolf with the red roses?
Yes!
I bet you say that to all the boys

1: Find something that makes you laugh


2: Watch a video


3: Find a new project
http://www.flickr.com/groups/365days/

4: When all else fails, jump on IRC and make fun of people
21:23 < Lord_Riff_Raff> THEY’RE 17. Not 7
21:24 < DarkSentinel> Lord_Riff_Raff: sounding defensive there

flippy

Karazhan, NightBane

So we only had nine for the upper part of Kara. What ever would we do? Well, take a lvl 68 holy pally of course! Wouldn’t you? But that’s not the good part, oh no.

What made it even more fun, was when on the guilds first shot at NightBane, our two main dps go down at 50% (stupid Mages - some people say its lucky to have Mages die, so they gave us double the amount). What do you do at this point… well, as a hunter, I was running for the door about to FD… but why not stay and give it a go any way. That’s just what we did, with only 4 dps, 1 tank, 2 heals, plus our 68 holy pally - who was on heals.

A few minutes later we were still up - then over Vent; “We could actually do this if we have enough mana and there is no enrage timer.” Who would have thought we would need to know that? One of our lucky Mages piped up (after alt-tabing to find out); “umm I don’t think so”, so on we pressed.

Guess what? 13 minutes after the fight began, it was over. That’s right, we downed NightBane. No one knows how our mana lasted that long, but it did. Might I say that our healers are awesome - our 3 healers that is - well done guys, that was a big effort on your part (even Rusty was still alive).

So the Quantum Butterflies are now 11/12 in Karazhan in just 2 weeks. ZA next week anyone?

More WOW content including WotLK at Hunt This

Jeremy Read

Butterchicken Chips

Jeremy Read

Computers

About 15 years ago I touched a computer for the first time in my life. I was 6 years old, and the computer was running Pac Man. I wasn’t very good, I thought the aim of the game was to run into the ghosts and my game playing abilities obviously haven’t improved much. However computers would go on to have a major impact in my life.

I learnt to read because of computers, well more because of a game. My parents had decided that I wasn’t allowed to play Civilization until I could read the Civilization manual. For those who’ve never seen manuals of the era, the Civilization manual was a hefty tomb, about a centimeter thick similar in page size to a National Geographic except with the seam along the skinnier edge.It contained a wealth of knowledge on the history of the civilizations included in the game, and why each of the technologies were important and responsible for our current society.

Once again my inability to comprehend what was going on came into light. The Settler units I thought were representing bugs, same as in Captain Comic below. Though perhaps I can be forgiven for not recognizing them as I hadn’t covered American history by then.

Also for anyone complaining about patches today. The mouse didn’t work in the first release of Civilization but since the internet wasn’t exactly readily available most people did not have access to the patch. I use to play that game entirely with the keyboard. Then again we didn’t own a mouse until later so I suppose I wasn’t missing much.

So I played a lot of games for the next few years, until something happened that made probably the single biggest impact in my life. A VTech Pre Computer 1000 came into my possession.

Incredible isn’t it? And it classy blue as well. Although it might not look like much, it packs something truely amazing. A BASIC interpreter. While studying the manual for the computer I saw the “Hello World” example and gave it a ago. Programming for the PC 1000 was truly awful. It had a 20 character line display and no permanent storage capacity. So all programs I wrote had to be carefully written out on paper and copied over. Often they wouldn’t work, but occasionally I’d manage to create something that ran as intended. I can also remember that my second program ever for it consisted entirely of REM statements and a comment saying I was trying to write image editing software. Obviously this never came into fruition stifled by the lack of graphical output other than characters and other inherent limitations with the platform.

But still, for the next few years I read everything I could on programming. Not that I understood any of it, even the library’s copy of how to avoid the Y2k bug, written during the late 80s was poured over. It consisted of examples in C, Pascal and x86 assembly, none of which I understood, but still I read.

Later on when I was 13 I was given a pirated copy of Visual Basic 5, which to me meant the world. It could compile stuff that would work on a REAL computer. You have to realise I didn’t have access to the internet, I didn’t goto school and I didn’t have the financial means to purchase my own compiler to write my own software. To make matters more fun the pirated copy of VB5 nuked my registry, such that the common control dialogue control was incorrectly registered so I couldn’t use it. Which mean I had no easy way in the drag and drop IDE to make open/save boxes.

So I read the Win32 API. No documentation, just trying random things and hopeing my computer didn’t crash. About a year later I’d figured out how to make an open dialogue box, along with BitBLT and Keyboard input. I had a really terrible space invaders clone running. Then the next important thing happened. I gained access to the internet. All of a sudden I had access to most of the resources everyone else had and could upload what I was working on. Pyrosoftware was born a year later, someone gave me VB6 and I worked on trying to sell what I was working on.

I never made much money, but I did break even with my webhosting bills and received postcards from around the world thanking me for pieces of software that I’d written to fix things that were annoying me.

I did write some cool software though (and a lot of crap [why on earth did I write an ASCII art editor?]):

The Microsoft documentation for the External object sucks. It took me about a week to get the mass image downloader working for Mike. It downloads all the images on a page without prompts and automatically renames them. I got paid for this one, I think 10USD, but to me that was a LOT of money back then.

Taylor’s still bitching at me for a new version of Spike :P One day I’ll get around to writing a new C# version for him. It’s to my great annoyance that I can’t port my syntax parsing calculator though over to C#, since I can’t figure out how on earth I got it to work, looks like I’ll have to write a new one.

The PyroDVD plugin for Winamp. One and half years of work on my behalf. It automatically loads your currently selected Winamp 2 skin and reskins itself! It also plays DVDs. I didn’t get the window to “jump” to the Winamp windows though. I think this screenshot was taken about 2 months before I started uni.

I was panicing by now. I’d made up my mind to take Computer Science at the University of Auckland, and I thought that everyone had studied so much more than me. Ask Andie if you don’t believe me. In fact I was so keen to start that I turned upto my first CompSci lecture, CompSci 101 in summer school in 2005 over 25 hours early (mainly cause I got the day that uni started wrong).

Three years of partying - playing dota- later I’m still here at uni. Except there’s some crazy people who think I might know something now.

Computers still mean heaps to me. They still annoy me, and don’t do exactly what I want them to do, but I’m still doing my best to fix this as I’ve done for many years.

Has anything really changed? I’m typing this up on a laptop that has 4000 times the amount of ram my first computer did. It has over 500 times the processing power. And a 1000 times the storage space. Even my router completely outclasses my first computer. But guess what, Pacman still runs on this laptop (and I still suck at it).

Link of the day: PLT1 Tower Defence Scoreboard

flippy

First Time in Karazhan

Thats right - a few nights ago, I walk into Kara for the first time. This was not only my first time, but also the first time we - the Quantum Butterflies - had put together a full Kara team. Only half of us were first times, the rest had been rolling with another guild every week and were mostly T4 with some T5 gear.

I could hardly contain myself. I had been working towards this for way too long. I had spent the last few days farming mats for food and buying elixirs. I had done everything I could to prepare myself… but even so, on the first pull I had no idea what was going on. There were so many people. Now don’t think that I hadn’t run any 5-mans before because I had. I had been running at least 1-2 a day for the past 4 weeks, trying to gear myself.

I don’t think any amount of time or effort put into reading about the boss fights, or running 5-mans, could fully prepare you for the coordinated chaos that is a Raid.

We were moving though the pulls like mad men, with the command from the main tank to “hurry up and only drink when I drink.” I was still trying to work out what was going on when I was ask to trap! The marks went up and I was trying to get over the fact that they wanted me to trap, when the MT pulled. I fumbled my way though it and managed somehow to pull off a chain trap, and maintain some sort of dps on the kill order.

It took a long time for things to settle down and for me to get my head back in the game. We one shotted everything, with only one wipe on trash before Curator. We then all laughed it off and just went right ahead and put down Curator. Which we decided was enough for one night on our first guild run of Kara. What can ya say really, other than what a run it was.

We were not expecting much going in, as a lot of us were first timers. I have to give a big thanks to the more experienced guys who made the run go as smoothly as it did.

I will make sure to let you all know on how the second half of Kara goes, just as soon as we decide on a date.

To make it even better, Legacy dropped. Can you say OMG. Also gratz to those who got their first T4 pieces.

Check out more wow content at Hunt This

Jeremy Read

Further proof that I’m an idiot (yet again)

Extending upon the previous post, while refactoring the Tower class in the Tower Defence I made a mistake that resulted in a rather cool looking bug.

I’d switched over from using the primative types int x; int y to using Point pos to represent internally the position of each Tower.

Now when a monster is detected within the range of the most basic tower, if the gun has reloaded it fires a new bullet using the following code:

bulletArray.add(new JavaTowerDefenceBullet(pos,myMonster.position(),myMonster));

And within the bullet code, we have the move method as follows

        lifeSpan--;
 
        int myMove = Math.min(speed, (int) pos.distance(destination));
 
        double distance = pos.distance(destination);
 
        double dxang = Math.acos( (destination.x - pos.x) / distance);
        double dyang = Math.asin( (destination.y - pos.y) / distance);
 
        int dx = (int) (Math.cos(dxang) * myMove);
        int dy = (int) (Math.sin(dyang) * myMove);
 
        pos.translate(dx, dy);

Unfortunately I’d forgotten that I was passing via reference rather than value!

Thus rather than the tower fireing a bullet which moved towers the monster, it was firing ITSELF! And there were flying towers all over the map :P

A quick change to the Tower code to

bulletArray.add(new JavaTowerDefenceBullet((Point)pos.clone(),myMonster.position(),myMonster));

and it all works as expected. Though in some ways I prefered firing entire towers at the monsters, simply because they’re bigger.

InsanityPrawnBoy

Not what I wanted Google!

I was wanting to find out how to date (as in find out when it was made) a Pelikan M400 pen as seen here:

http://www.nexternal.com/swisher/images/Blue_FP_500101.jpg

I get as far as “Dating a” and this is what Google suggests:

What the?!

Not quite what I wanted. Thanks Google!

Jeremy Read

Further proof that I’m an idiot

For everyone who ever wanted conclusive proof that I’m an idiot. At the moment I’m currently working on the Java Tower Defence game, which is slowly progressing along, if you’re lucky it should be released later this week with the C# and XNA versions following. Hopefully Abhishek can get a Clojure version working and everyone will be happy. I’ve gone a little bit more overboard this time, rather than writing the simplest Tower Defence I could I’ve been writing a slightly more extendable version so people can have fun with it.

Anyway last night I was working on the pathing code for the Monsters.

This is seemingly a trivial piece of code.

Read the rest of this entry »