Treasure Tomb Development Diary

The pixel-based movement is very impressive, especially the way you can slip past corners and push crates. Until I read what was below I thought that you might be using some physics API.

The way you have to face the baddies to shoot them is sometimes annoying though. For example you can’t run away and shoot at the same - you can only shoot and move by running directly at them. Maybe you could make the auto-aim depend on which direction the mouse-pointer is relative to the man? Or just auto-aim to the nearest shoot-able baddie?

Nice game, very intuitive and and fun to play, and the graphics are excellent.

The auto-aim works ok I think… if you hold the mouse button down then it keeps whatever it targeted “locked” until it is destroyed, but if it moves out of your field-of-view, it reverts to firing straight ahead unless some other target wanders into range and view.

20 August 2007

I am the CRATE MASTER (flat packed variety!). Unfortunately today I got roped into doing chores for my mum, ie. assembling some horribly fiddly flat-packed chests of drawers. Also watched a film (Ultraviolet - it’s pants, don’t bother). And, erm, didn’t get much of anything done.

21 August 2007

Been working on moving platforms today. Platforms will stick to the type of floor tile they are spawned on, so this lets me create platforms that bounce back and forth (automatically, or a one-shot when the player steps on it each time), and platforms that attept to follow a “route” by not turning back 180 degrees if they can help it but instead rotating 90 degrees. A few more puzzles and fun we’ll have with those, methinks. You can check 'em out in a room in the bottom right (yes! a new build!) Beware - a platform starts moving pretty much as soon as you’re on it - if you don’t clamber on to it properly you might get nudged off by a wall!

In order to get platforms in I had to stick them in on layer 2, so they’d appear above the floor tiles but below the gidrahs and player etc. This meant I had to tweak the layers of all the sprites and emitters, bah. Well, I don’t know why I’m complaining, it only took about 5 minutes to do.

There’s one more platform type I’ve yet to do, which is the “vehicle” type, which basically you control when you clamber inside. Not sure how to disembark from it though - perhaps disable the fire button and use it to get out of the vehicle? Dunno yet.

Crate reset switch seems to be broken. Not sure why yet.

Music: Dr Phibes and the House of Wax Equations - Hypnotwister, Massive Attack vs Mad Professor - No Protection

Have you considered doing an AJAX insert, so that it’s not there, but you could have an image instead with the words “click here to play” which would pull the applet dynamically into the page?

Not really… sounds fiddly. Besides, I think we need some new applets. Maybe a whole page dedicated to them.

Cas :slight_smile:

sounds fiddly

It is. I only managed to get it working as intended for FF+Opera… or… FF+IE.

The former… display:none for the applet and using JS to hide some hime and setting display:block for the applet. However, IE will load Java even if it’s not visible.

The latter… injecting the applet stuff into the DOM via JS. Doesn’t work with Opera. No idea why. The applet is there (and all attributes are correct - checked that with the developer console) and it says “loading”, but it never finishes.

22 August 2007

Made it so turrets don’t shoot (or turn to face the player) when the gidrahs are frozen. That way you can use a jewel to get past rooms full of turrets.

Got a bit of feedback from TIGsource forums: it is difficult to know what a switch has just done. Yes, this is true; I plan to stick an effect round the tiles that change when a switch is tweaked, and possibly find the centrepoint of all the changed tiles and zoom the view over to it for a moment the first time the switch is used. Also I think I’ll put a little “dropping” animation in for when you fall down the hole or go down a ladder.

I’ve made it so the ghost can ignore ice and arrows and crates. It could create some complex design issues in the levels but the net effect is to make it easier for the player so I don’t think that’s such a bad thing.

Stuff done:

[] Ghost now moves through crates, arrows and over ice with impunity
[
] You can now shoot over ice. Whoops!
[*] Fixed crate reset switch. Rewrote it so it didn’t break again in the same way. Code was over-complicated anyway.

23 August 2007

Stuff done:

[] Effect around tiles which have been affected by a switch, and a zoom on first use
[
] Fixed crate reset switch. Rewrote it so it didn’t break again in the same way. Code was over-complicated anyway.
[] Weight-activated switch. This sort of switch toggles back as soon as the player moves off of it. Cunningly though you can push a crate onto it and it will activate. (Same goes for ordinary switches too).
[
] Fixed a bug in the editor which caused it to fail to save maps if any switch was left toggled on by accident, but not tell you it had failed, and it would leave you no option but to quit the editor without saving. This I discovered to my cost after spending half an hour making a nice big new bit of map to play with.
[*] Got difficulty adjustment in and working correctly.

Little stuff to do:

[] Small animation when descending a ladder or falling down a hole
[
] Disable portal tiles when you’ve completed that world

I’m basically putting off the next big job which is script tiles. These need to open a screen with various multiple choice widgets on and some text etc. It shouldn’t be too hard - reckon I’ll have it cracked inside a day.

Crashed pretty hardcore here today… do you have any logfiles I can send? I died in the area with all the pacman type creatures, and a soundeffect started looping. I had a rather slow mouse, but no keyboard. Had to reboot.

Bill

Only what you can get out of the JWS console. Hard crash = broken drivers. Game has no fancy code in it beyond what’s in Ultratron.

Cas :slight_smile:

24 August 2007

Stuff done:

[] Small animation when descending a ladder or falling down a hole (though because of a quirk in the map it does the animation walking up ladders too at the moment)
[
] Stopped the switch zoom effect if the effects of the switch are mostly visible onscreen already

The sun’s out again, and seeing this is one of the very few nice weekends we’ve had for this whole lamentably rainy crap summer here in the UK, I’m going to go out and enjoy it instead of getting a “studio tan” indoors.

Music: Smashing Pumpkins - Siamese Dream, Hexstatic - Master View & Solid Steel Presents…

Impressive game, really. It would be better with some sounds but it is quite interesting.

The sounds it does have are along similar lines to what it will eventually have, just they’ll be new instead of pinched out of Titan Attacks and Ultratron. Don’t know what we’ll do for music yet but there will be more music in this game than our other titles.

Cas :slight_smile:

29 August 2007

My brother’s round so not getting much done. I’ve started work on the “script” code that lets us do simple dialogs. I can’t see how this is easily going to be customizable for people making their own maps so I suppose it just… won’t be.

There is a strange problem I’m having trouble tracking down which is to do with the switch effect that glows around the tiles that have been changed by a switch. Most of the time there’s no problem; then occasionally, sometimes on switches that otherwise worked perfectly last time, I get an ArrayIndexOutOfBoundsException. Thank I’m not using C++ or somesuch because the error would almost certainly go unnoticed and probably cause all manner of curious shenanigans elsewhere.

Stuff done:

[] Fixed appearance of turrets in the editor
[
] Disabled portal tiles when a world is completed. Obviously not thoroughly tested as I’ve got no worlds to complete yet but the code is there. We’ll see if it works come the time to test it :slight_smile:

Music: Wilco - Yankee Hotel Foxtrot & More Like The Moon

3 August 2007

Added the “New” button into the editor. The size of a map is now a suspicously computer-friendly 128x128 tiles - about 10 by 10 screens. Also, the tile chooser screen now has tileset buttons which flip us between different tilesets (moonbase, hub, dungeon, etc.). There is a bunch of common tiles that are always shown (well, any tile not specifically assigned to a tileset). I also fixed a situation in the editor where if you were asked to save dirty edits prior to performing some operation, and you did save, the requested operation wasn’t then performed after all.

I’ve rejigged loads of XML. What fun. The tile.xml file was becoming massive and unwieldy so I’ve split it up into smaller more manageable chunks. Each tile still has its own unique index of course, so I’ve had to make a text file where we can keep track of all the used tile indexes in one place. Of course, that was automated with a bit of hackery.

Chaz has returned from holiday! He has done some nice bubbling lava graphics (very abstract of course) with an emitter on them, and will do similar things to the toxic waste tiles. Currently the lava emitter is a bit hectic :slight_smile: Probably have to tone it down a bit. The travelling platforms have been done up nicely and we’ve got little mine graphics now for the exploding mines in that test room in the south east. Hopefully he’s going to be working on the tile set for the Hub World now.

Still haven’t found the switch crashing bug. But then, I haven’t looked for it ::slight_smile:

Music: Wilco - More Like The Moon, Amon Tobin - Bricolage, Blur - Blur, Kasabian - Kasabian

Grrr I still can’t edit my own posts in this subtopic. The permissions on this board have always been broken >:( Date above should of course read 3 September 2007.

Cas :slight_smile:

5 September 2007

The wobble effect was broken in fullscreen mode (or indeed anywhere where it wasn’t a 1:1 correspondence with logical and physical coordinates). In the end I just ditched it because I can’t be bothered to waste hours making it work properly. I still quite like the ray effect when a jewel gets picked up so I think that’ll stay.

Noticed my wrists hurting yesterday. Couldn’t put my finger on it, then I realised that my chair had deflated down about four inches. Doh.

Music: Kid Loco - DJ Kicks, Presidents of the United States of America - Presidents 2

10 September 2007

Chaz is working on the hub graphics, which are of course looking nice. A bit like the surface of the moon. I’m working (very slowly) on the script tiles, and fixing bugs that Chaz is finding in the editor now we’ve got another tileset. So nothing terribly interesting happening. Got a “script” to display today though which is nice, overlayed on top of the paused game screen. Next up: implementing clickable choices.

Someone on the TIGSource forums commented that they’d like to be able to strafe (or otherwise move independently from shooting). I’m loathe to give the game Ultratron style controls because it’ll make it totally inaccessible to most players but I am considering making it so that holding left-shift will lock the direction you’re facing in, so you’ll be able to run backwards firing your guns at chasing gidrahs. Well, not so much considering it as actually implementing it to see how it feels :slight_smile: It definitely adds a little pleasurable reward to skilled fingersmiths’ play but isn’t by any means essential to the gameplay.

No new build will be ready until Chaz completes the Hub, so that’ll be in a few more days I reckon.

Music: Iron Maiden - Iron Maiden, Ween - The Friends EP (get this - it’s excellent!)

11 September 2007

More work on the scripting tiles today. Basically - they’re more or less finished. Here’s a sample of the XML that runs it:


<script name="script.test.01">
	<state>
		Sorry, no help is available. Please try another command.
		<var key="command" value="help"/>
		<choice type="4" text="Enter command:" key="command"/>
		<choice type="0" text="Exit">
			<set key="command" value=""/>
		</choice>
	</state>
	<state>
		Unknown command.
		<var key="command" value="*"/>
		<choice type="4" text="Enter command:" key="command"/>
		<choice type="0" text="Exit">
			<set key="command" value=""/>
		</choice>
	</state>
	<!-- Default state -->
	<state>
		A dusty terminal stands before you. It looks as if it has not been used in some time.
		A blinking cursor awaits your input. There do not appear to be any instructions.
		<choice type="4" text="Enter command:" key="command"/>
		<choice type="0" text="Exit">
			<set key="command" value=""/>
		</choice>
	</state>
</script>

As you can see, it’s not “scripting” like Jython or anything like that - just a sort of logic tree made in XML. Annoyingly you have to sort of think about the sequence of events backwards. It’s horrible to use :slight_smile: I haven’t figured out an easy way of doing user scripting yet for the map editor. Maybe won’t bother.

Chaz has done a nice start to the Hub map. He wants to have cute rabbits hopping around on it for target practice. I said fine, so long as they can start shooting back at some point. He said fine, so long as they squeak when they die. It’s the little things that make great games!

Music: same as yesterday :smiley:

12 September 2007

Spent today putting in the other 80% of the work on script screens ::slight_smile: All the little stuff like making it so that using the joypad or cursor keys moves the focus up and down, and putting in nice backgrounds and focus indicators and such like.

Added a new scripting function, which activates the “action” found at a particular map “waypoint”. In the editor I’ve added the ability to add up to 9 “waypoints” in a map (by tapping Alt and a number and then clicking somewhere). You can also zoom quickly to a waypoint by just tapping Ctrl and the number. If there happens to be a switch, or teleport, under the waypoint, then we can activate that switch or teleport with a script action now.

Now I think of it, I could conceivably use waypoints for other things like scripted gidrahs - trigger an event and the gidrah runs to that waypoint. Or something.

Music: Primus - Pork Soda

13 September 2007

Couldn’t resist doing something fun today, so we put in the cute rabbits in the Hub world. Didn’t do much else.

Music: Primus - Pork Soda

14 September 2007

Made a start on the actual first map of Moonbase Alpha. This is highlighting a number of things to me:

  • The editor needs some more work to organise tiles better in the tile selection screen
  • The maps are going to take a long time to do. If I worked really hard at a map I could probably get one done in a day but I’d be pretty burned out at the end of it. This raises the question - is 64 maps feasible? That’s at least 3 months’ hard work there. Perhaps we should cut it to 32 and have an expansion pack?
  • Must fix it so Ctrl-S just saves over the top of an existing map without asking for the file name or confirmation. I save every 20 seconds or so and it’s really irritating having to go through two dialogs each time.