Checks & Balances

April 26th, 2012 No comments

If someone else is making levels for Monkey Tag and they decide to add more than one Monkey Pickup (the thing that you collect to become the monkey at the start of the match) then that could seriously break the game by having two or more monkeys running about as everything comes crashing down.  So I wrote a little script that finds every instance of the Monkey Base and deletes all bar the first one automatically (if there was more than one).

function FindExtraMonkeyBases()
{
local MonkeyPickupBase MP;
local array<MonkeyPickupBase> MPA;
local int i;

foreach AllActors(class'MonkeyPickupBase', MP)
MPA[MPA.length] = MP;

for(i = 1; i < MPA.length; i++)
MPA[i].Destroy();

MPA[0].SpawnMonkeyPickup();
}

I doubt it’ll ever be used, but I like to know it’s there. Also, once someone has collected the Monkey Pickup it never respawns. The only way after that to become the monkey is to kill the current monkey. But what if the monkey throws himself off a cliff and dies without a killer? So I put a little code into the “Died” function that gets called on a Pawn’s death to respawn the Monkey Pickup if the monkey didn’t have a killer (ie. committed suicide). That works nicely.

Then I did some very minor network replication stuff to make sure the client and server get the stuff they need in order to do the things they do. Fortunately I’ve been putting code in the Player/GameReplicationInfo classes properly and there’s really not many (any?) variables or functions that needed replicating from any custom classes so all I had to really do was add the following into the defaultproperties for the base class of my pickups:

RemoteRole=ROLE_SimulatedProxy
bAlwaysRelevant=true

First line says “You’ll run on the clients but only to mirror what’s happening on the server” and the second line says “The player can see and interact with you”.

Lastly I set up a Subversion repository online and got TortiseSVN hooked up to the Monkey Tag project so I can backup easily and other people will be able to get a copy easily when it’s time to test multiplayer functionality (which should be very soon!)

Share on Facebook
Categories: Uncategorized Tags:

Monkey Pickup

April 24th, 2012 No comments

Tonights progress:

  • Created the pickup which turns you into the monkey
  • Once you’re the monkey your score starts ticking up 1pt/sec
I originally thought I’d have to swap out both the Pawn (the physical representation of the player; a human or a monkey) and the PlayerController (the code that makes the pawn move, jump, etc.) but I realised that the PlayerController can stay the same because the controls stay the same. W for Forward, S for Back, Spacebar for Jump and so on. All the movement properties like run speed and jump height are stored in the Pawn so I only need to swap that out. The code I used borrowed heavily from here so credit where it’s due.

Left to right: Large points pickup, small points pickup, monkey pickup

Next things to do:

  • If you’re the monkey the points pickups go straight onto your score and not your temporary score
  • If you’re killed as the monkey you respawn as human and your killer becomes the new monkey
Share on Facebook
Categories: Uncategorized Tags:

Life & Projects

April 21st, 2012 No comments

Huge delay in updates but I don’t think anyone lost any sleep over it. Apologies if you did though.

So life’s been very busy. Lots of travel and work, and I took lessons to get my truck license to hopefully get in on the mining boom that’s happening here in Oz. Gained my licence (first go!) so the job hunting there is starting now. Hopefully make some real dollars in a fly-in-fly-out role where I get some decent days off in a row (the hard work I don’t mind).

But bla bla bla, what about game stuff? I’ve put Team Friendship on pause for the moment because I really wanted to learn some UScript. I think Team Friendship would really benefit from that, as Kismet and begging for favours from programmer friends can only go so far. So I’m working on a little game called Monkey Tag.

Monkey Tag is inspired by Monkey Frag from the Turok series. Basically one person is the monkey, and you can only earn points as the monkey. To become the monkey you must kill the monkey. Here are the rules:

  • Everyone starts human
  • First person to collect the monkey pickup becomes the monkey (pickup doesn’t respawn)
  • Monkey earns 1 point per second
  • To become the new monkey you must kill the current monkey
  • Killed monkey respawns as human
  • There are bonus point pickups in the arena
  • If the monkey collects the bonus points they are added directly to its score
  • If a player collects the bonus points they are added to a temporary score
  • The temporary points will only be cashed in for real points by becoming the monkey
  • A human can steal another human’s temporary points by killing them

First to X points or the person with the most points when time’s up will be the winner.

So that’s so far proving to be very educational but also very doable. Last night I got the player’s score to tick up 1 point ever second. Tonight I made a bonus point pickup that will add points to the temporary score when it’s picked up. Obviously later I need to do checks and balances to make sure the points go where they’re supposed to, set up the monkey, script some custom weapons, and so on. But I’m happy with the progress I’m making in my first real programming/scripting exercise.

Will post more often. Promise!

Share on Facebook
Categories: Uncategorized Tags:

Video Blog 2 – Multiplayer Scripted

September 5th, 2011 No comments

Share on Facebook
Categories: Uncategorized Tags:

First Video Blog

May 24th, 2011 No comments

First video blog from the development of Team Friendship, the game I’m developing with UDK. I think I like this format better than written blogs!

Share on Facebook

Back from the Dead

March 6th, 2011 No comments

Very much alive and kicking, but been so busy with work recently I haven’t had much of a chance to get into a bit of creativity and constructive work. C’est la vie; gotta pay the bills!

Recently I’ve been working alongside My Tours App to get all the tours from Audio Tours Australia up and running as an app and I’m really happy with how that’s turned out. Previously I’d thought about doing that but it required getting a graphic designer and programmer on board and that was out of my budget. So that’s up and running now at the iTunes App Store.

So with that done I designed some DL sized flyers and phoned a heap of hostels in Brisbane, Sydney and Melbourne asking if I could mail some to them to put on display for their guests. Most were great about it. Only one or two said no because all their flyers are partnership agreements with tour providers. I imagine there’s a commission/affiliate agreement in there, which is fair enough. So in the end I had 33 backpacker hostels say I could send them some flyers. I sent the design away to a printing house and got 5000 flyers delivered the next week! So just this morning I’ve finished bundling them up into envelopes to send off on Monday when the post office is open again. Exciting!

Team Friendship is also still alive, just a tad dormant at the moment. But I’m going to dedicate a few hours to it this week now that the tour flyers are out of my hair for a while. Bear with me!

Share on Facebook
Categories: Audio Tours Australia Tags:

Clean MP Levels Done

December 6th, 2010 No comments

Been busy working recently but I’ve had some time to get all 30 of the multiplayer puzzle rooms photoshopped so the level design is neat and tidy. I thought I’d posted a handful of them if you’re curious but I don’t expect them to make much sense without the walkthrough write-up to go with them (that later). This isn’t by any stretch a definitive guide to level design but it works for me. A bit laborious when it’s much more exciting to just jump into the editor and start smashing out levels, but the foresight, groundwork and planning always pays off, especially in regards to cohesion and consistency. Enjoy! ~

Share on Facebook
Categories: Level Design, Team Friendship Tags:

Level Designs v2.0 Clean Edition

November 28th, 2010 No comments

Just a quick update! So I’ve clicked together all 30 of the multiplayer rooms sequentially and also spatially and the flow looks pretty good to me. I’ll get that down pat and then wrap the intertwined single-player route around it later. I imagine a lot of the finer details won’t really come out until whiteboxing, but I know what multiplayer rooms need to intersect with the single-player rooms, and the rest will fall into place on its own. Read more…

Share on Facebook
Categories: Uncategorized Tags:

Single Player

November 24th, 2010 No comments

Wow… Long time between drinks, so to speak. Been busy here working at work, working at home, working on Team Friendship, working on Audio Tours Australia, and working on not becoming a hermit becaue of too much working. Last I mentioned I’d finished the pen & paper level design for Team Friendship. Well that was partially true. You should know I’m absolutely opposed to “feature creep” where irresponsible management bloats a project with extras and new features during development which slowly but surely corrodes the integrity and overall vision of a project, often resulting in a mish-mash of features with no cohesion, no target audience (or rather too many target audiences), no definition, and often the complete collapse (or worse; development limbo) of a project. I’ve worked on projects like that before and, in a word, it’s bad. Really bad. So I was tentative about the big step I wanted to take with Team Friendship. Read more…

Share on Facebook
Categories: Level Design, Team Friendship Tags:

Audio Tours – Smartphone Edition

October 24th, 2010 No comments

After a completely failed attempt at writing my own HTML code for a mobile version of Audio Tours Australia (well it worked, but just not on mobiles) I hacked and glued together a mobile version using an awesome template from iWebKit so now it looks like I actually know what I’m doing without the need to actually know what I’m doing!

You can check out the mobile version at mobile.audiotoursaustralia.com using any smartphone (iPhone, Blackberry, Android, even iPad). What I’ll actually be using it for mainly is when I start up a print campaign again, likely with TNT Magazine Australia which I’ve done before. I’ll just list both URL’s on the ad and probably also a scannable QR Code. Read more…

Share on Facebook
Categories: Audio Tours Australia Tags: