Sprites

Many new effects are possible in the AMC TC, utilising new sprites. This page lists many of the sprites and what they're capable of; remember to press F8 on the sprite in 2D mode to be able to edit all of it's values, many of which are needed to make new effects work. You can change a sprite's extra in 3D mode by pressing ' and M on the sprite as well. The tilenumber of each sprite is listed next to it's name in this document. You can also access many of AMC TC's new sprites by going to the tile select screen and pressing 'T'

AMC TC effects require the full use of all of a sprite's variables. Alongside the Hitag and Lotag which you should already be familiar with, there are a host of other variables including the Extra value of a sprite (which can be modified in 3D mode by placing the cursor in the sprite and pressing ' and M) To edit all of these, press F8 on the sprite in 2D mode. You can edit everything available about a sprite here.

Character Spawnpoint - 3712

Each character can be assigned their own spawn point in a map - place this sprite in the desired location, and give it a pal for what character you wish to start there from.

Spritepal 0James
Spritepal 1Zaxtor
Spritepal 2Merlijn
Spritepal 3Highwire
Spritepal 4Sang
Spritepal 5Rusty Nails
Spritepal 6Geoffrey
Spritepal 7Mikko

Autosave - 9412

This sprite saves the player's game to the last slot in the list. It can be activated in 2 ways - just place the sprite and it'll be activated when the player steps near it, or give it a hitag equal to an activator sprite to have it triggered when something is activated.

Weapon/equipment strip - 3610

This sprite can be used to strip the player of their weapons and equipment, either at the start of the level or when activated. Simply place it to strip the player of their weapons when the level loads, or give it a hitag equal to an activator sprite to trigger it. If you just want the player's equipment taken give this sprite a pal of 1, and if you just want the player's weapons taken give it a spritepal of 2.

Activate Level - 3658

This sprite starts a level when activated with a activator sprite. Give it a hitag value equal to the activator you wish to check, and then a lotag for the level number you wish to start.

Debris Spawner - 3624

This sprite spawns a selection of debris when hit by an explosive - you can hide a few of these in explosive sectors, and when it blows up these sprites will spew out debris (depending on the type you set it - change it's lotag to determine what kind of debris spawns)

Lotag 1Spawn Wood
Lotag 2Spawn Rocks
Lotag 3Spawn Rocks (Type 2)

Player duplicate - 1404

This sprite can be used to create either a duplicate of the character being played, or of one of your choice. To do the former, simply place the sprite and it'll change to look like the character being played. To do the latter, give it one of the following extra values to determine who to look like.

Extra 0James
Extra 1Zaxtor
Extra 2Merlijn
Extra 3Highwire
Extra 4Sang
Extra 5Rusty Nails
Extra 6Geoffrey
Extra 7Mikko

Force Player - 3805

Can be used to force a certain player. In usermaps, this can't be overridden, however in the episodes once you complete it you'll be able to choose who to play as the next time you run through the map. To choose who to force, give it the right spritepal by checking the following table. This sprite can also be activated by a activator sprite, effectively allowing you to change characters on the fly. Just give it a lotag value equal to an activator sprite. Finally give it an extra value of 1 if it's the first time you're switching to a character in a map. This gives them their proper health level and any equipment set.

Spritepal 0James
Spritepal 1Zaxtor
Spritepal 2Merlijn
Spritepal 3Highwire
Spritepal 4Sang
Spritepal 5Rusty Nails
Spritepal 6Geoffrey
Spritepal 7Mikko

Map Location - 3831

This sprite can change what planet appears in the backdrop of the player select screen. It defaults to Earth, but by changing the lotag to whatever tile you wish, it will be changed to that. For example, giving this sprite a lotag of 8450 will change it to Mars. Most planet pictures are contained in Tiles033, which is tile 8448 and upwards.

Countdown Timer - 3806

Using this sprite, you can create a timer that appears in the player's screen which when it runs out will either kill the player or activate certain effects. This effect can be activated either at the level's start or by an activator. Give the lotag of the sprite the same value as the activator if you wish for the latter, or leave it's lotag at 0 for the former. Give it a hitag equal to the amount of minutes you wish to give the player. Give the actor a extra value if you want to activate things when the timer is up, or just leave it at zero to kill the player (the screen also whites out when this happens) Finally, if you want to stop the timer at any point, place another timer sprite and give it a spritepal of 1 and a lotag equal to the activator sprite you want to trigger it.

Mission Failed - 7679

This sprite creates a mission failure scenario; the screen will fade to greyscale, and then the level will restart. To use simply give this sprite the same hitag as an activator sprite.

Ladders - 3803

Code by DeeperThought from DukePlus; place 2 of these where you want the ladder/climbable object to go (Point the sprite towards the wall/item you want to climb) Place one at the bottom of the object, and one at the top (place the upper one a bit above where it should stop since that's where the player will 'get off') and give them the same hitag. Give the bottom one a lotag equal to a sound to play (tags 903 and 904 are metal ladders for instance) Finally, give the bottom sprite a XVEL (press F8 in 2D mode) of 1 to allow the player to slide down it, which is much quicker than climbing down but may not be appropriate for some surfaces (such as a rockface, vines or a ropeladder) Check the following table for a list of some climbing sounds.

Lotag 903Metal ladder 1
Lotag 904Metal ladder 2
Lotag 906Rope ladder
Lotag 408Wood Ladder

Mission Objectives - 3645

The player can be set mission objectives (which they can check by pressing the key bound to 'Mission objectives') Place this sprite, than give it a hitag equal to the objective you want to set. Give it an extra tag equal to the 'position' you want it to take in the objective screen (so 0 for the top and 5 for the bottom) The player can have up to 6 current objectives at a time. The objective is added when the player goes near the sprite (invisible ingame) To complete an object, give the sprite a pal of 1, and give it a extra tag equal to the objective you want to complete. Eventually you'll be able to trigger objectives and their status with things like activators. Note that for actual maps in the AMC TC, mission objectives can be much more specific and verbose.

Hitag 300Eliminate hostile activity!
Hitag 301Try and find Survivors
Hitag 302Try and find out what went wrong
Hitag 303Escape
Hitag 304Rendevouz with your team
Hitag 305Make your way through the area
Hitag 306Destroy the Leader
Hitag 307Destroy the Reactor
Hitag 308Destroy the Base

Wall Scroll - 3828

The wallscroll sprite can make wall textures scroll either up, down, left or right. Just place this sprite close to the wall you want to change, and make sure it's sprite tag is pointing at the wall. Note that the lotag/hitag you give determines the speed that the texture scrolls at. 16 moves the texture quite fast in most instances, so it's worth experimenting around that value to see what you'll get.

Spritepal 0, give HitagMake wall texture move down
Spritepal 0, give LotagMake wall texture move left
Spritepal 1, give HitagMake wall texture move up
Spritepal 1, give LotagMake wall texture move right

Floor/Ceiling Scroll - 3829

The floor/ceiling scroll sprite can make the floor and/or ceiling scroll, sorta like the Sector Effector conveyor belt (but without moving any of the sprites in the sector) It works similar to the Wall scroll texture - give it a hitag to move the texture forward, and a lotag to move to the side (Again, the value of the Hitag/Lotag changes the speed it scrolls) Give the spite a spritepal of 0 to make the ceiling scroll, give it a spritepal of 1 to make the floor scroll, or give it a spritepal of 2 to make both scroll.

Slow-motion trigger - 10150

Will activate the slow-motion effect you sometimes get when headshotting or gibbing an enemy; is activated by it's hitag. The Lotag determines how long for (maximum value is 128) The value that the ingame effect uses is 40, so it's worth experimenting to see how long is enough.

Spooky trigger - 10151

Will activate the 'spooked' effect when a player is hit by a ghostly enemy; is activated by it's hitag.

Random Sounds - 3728

This sprite can either play a specific of sounds randomly, or up to 5 sounds defined by yourself (randomly at intervals determined by the sprite's lotag). For the former feature, simply give the sprite a spritepal equal to the sound 'set' you want to play.

Spritepal 0Woodland sounds
Spritepal 1Metal Groaning sounds
Spritepal 2City Sounds
Spritepal 3Spooky Sounds
Spritepal 4Hell/Abyss sounds
Spritepal 5Warfare sounds

For the latter feature, first give the sprite a lotag value equal to the amount of time it checks to play a sound. 26 equals 1 second - a value like 130 (5 seconds) is good enough, although if you have more sounds playing a higher number is better. After that, set the sprite's hitag, extra, xvel, yvel and zvel to the number of the sounds you want to play. Note that you don't need to play 5 sounds - you can just set the sprite's hitag and extra if you just want to play from 2 sounds for example.

Monster Spawner - 10564

The monster spawner can create a stream of a single type of monster, either by being activated or active from the start. It's Hitag is equal to the activator sprite you wish to activate it. Leave this at 0 if you want it to be on at the start of the level. The Lotag determines the amount of times this sprite will spawn an enemy. It's Extra value is the sprite spawned (so for example to spawn a Pigcop, give it an Extra value of 2000 - note that this sprite can spawn anything, not just monsters - you could also use it to spawn items and stuff for singleplayer and co-op games) The YVEL value determines the amount of time between spawns - 28 is roughly 1 second. Finally, give this sprite a spritepal of 3 if you wish for it to only spawn if it can see a player.

Move Player - 3713

This simple sprite moves the player to it's exact location and angle when activated. Simply give it a hitag equal to the activator sprite you want it to be activated by. One use for this is to move a player to a different location when a cutscene is finished.

Trigger Only if char - 3649

This sprite, when the player gets close, will trigger an activator ONLY if you are playing as whichever character you specify. Give it a lotag equal to the activator you wish to activate, and then one of the following pals.

Spritepal 0James
Spritepal 1Zaxtor
Spritepal 2Merlijn
Spritepal 3Highwire
Spritepal 4Sang
Spritepal 5Rusty Nails
Spritepal 6Geoffrey
Spritepal 7Mikko

Comm Link - 3613

This sprite, when used, 'binds' a activator to the 'Check Mission key' for 10 seconds. Ingame, this is used to create comm-link conversations between characters that the player can choose to listen to. Place this sprite, and give it a lotag equal to the activator sprite you wish for it to activate. Then, either give it a hitag equal to an activator sprite if you wish for it to be acivated, or leave the hitag at 0 for it to simply be activated when the player gets close.

Locked Door - 3744

The Locked door sprite simulates a locked door - if the player presses space a sound defined by the sprite's pal and a message stating 'locked' will appear. This sprite can simply be used for atmosphere, but it also has 2 other uses as well. If given a hitag, the door can be unlocked using a generic key item (Generic keys can be used for all doors locked in this way) Give the activator sprite of the door you wish to unlock the same hitag as this sprite. If given a lotag (again equal to an activator you wish to activate) than the door can be opened if the player kicks it. Finally, if you give this sprite an XVEL value equal to an activator sprite, it will disapear when that activator is used - this can be used to display locked messages for normal doors that can be unlocked.

Spritepal 0Standard Door locked
Spritepal 1Gate locked
Spritepal 2Standard Door locked 2
Spritepal 3Hi-tech Door locked
Spritepal 4Standard Door locked 3
Spritepal 5Standard Door locked 4

Door Transport - 3623

This sprite can be used to fake a transition between 2 points. When the player walks near the sprite and presses use, the screen fades to black (Or you can set it to use the AMC TC Teleport effect) and after a amount of time (which can be specified by you) he appears at another point you specified.

To use this effect, you need to place a sprite 3623 at the 'entry point and a sprite 3629 at the exit point. Give the entry sprite a unique lotag, and give the exit sprite the same number for it's hitag. To make a sound play when the player uses a point, change it's XVEL (use F8 in 2D mode) to the number of the sound you wish to play when used (For example 852 is a door opening and closing) and ZVEL to the sound you wish to play when the player has 'finished' going through the door. Finally change it's YVEL to the amount of time the screen should be black for (This defaults to 26, which equals about 1 second) The Door sound mentioned before is around 2 seconds long, so setting it to 52 will sync it closely. To make the screen use the AMC transport effect instead of fading to black, give the entry point a spritepal of 1.

These fake doors can be locked with a Padlock sprite (8038) - simply give the Door entrance a unique hitag, and place the padlock sprite infront of the door. Give it a lotag equal to the hitag of the Door entrance sprite, and then give it a hitag corresponding to the key you want it to use:

0Generic Key
1Elder Key
2Spider Key
4Dagger Key
8 Moon key
16Skull key

You can also activate a fake flashlight effect by giving the Door transport leading to the area a spritepal of 2, and the Door transport leading away from it a spritepal of 3. The torch's power is shown in the player's inventory slot, as well as their inventory. If the battery runs out, the torch will recharge back up to low power after a few seconds to prevent them from getting truly stuck.

Rain/Snow Spawner - 3696

With code from Duke Plus by DeeperThought, this handy sprite can create rain or snow effects for the whole map. Just place it anywhere in the map, then give it a positive extra for rain (From 1 to 32 - the higher the number the more rain) or a negative number for snow (-2 to -32, the lower the number the more snow spawned) For rain the pal + translucency of the sprite will dicate what the spawned rain looks like. If you wish for rain to only appear for that paralexed texture, give the rain/snow sprite a hitag of 1.

If you give this sprite a lotag of 1 it will search through the level and replace a selection of standard Duke floor tiles with rainy versions if they're placed outside. It will also create a rain noise throughout the whole level (A softer noise plays when inside, and the standard Duke noise plays when outside) This feature is very useful for many reasons - if you want to test and see how your level looks like with rain but don't want to manually place rain noises and textures yourself incase it doesn't work, this will save you lots of time. It's also useful incase you'd like to play some usermaps with rain features added as well. The only drawback to this feature is that the rain noises have very sudden transitions unlike the gradual fading you'd get from manually placing sound effect points, and sprite textures aren't replaced with rain versions. Following here is a list of textures that are replaced with rain versions


Included in the Extra folder is some layered .psp files incase you'd like to make your own rain textures (wherether for AMC TC or any other Project) If you give the rain sprite a hitag of 1, it will only spawn rain/snow in sectors with the same paralexed texture as the one it's placed in. This can be useful if you want multiple skies in your map (however, please keep in mind that you can't rain rain AND snow in the same level at the moment)

Rain/Snow Starter - 3696

This sprite can be used to start a rain/snow effect in the map. To use, place a Rain/snow spawner and leave it's extra at 0. Place this sprite and give it the same extra you would of given the Rain/snow spawner sprite. When the player gets near this sprite, the rain effect will trigger. To replace certain textures (shown above) with rainy versions, give this sprite a YVEL of 1.

Rain/Snow Sound - 3694

This sprite will simply play a raining sound if rain is active in your map. It plays either an inside rain sound effect or an outside rain effect depending on where it's placed. This can be used in combination with the Rain/Snow starter or regular rain.

Dark/Storm - 12430

This sprite can change the entire outside area of a map to low visibility (and back to normal). Give the sprite a hitag equal to an activator sprite; than either change it's spritepal to 3 to turn the map to default visiblity levels, or leave it at 0 to make the map dark.

Make Switch - 9456

This sprite starts invisible ingame; once activated it can turn into any switch of your choosing. Simply give it a hitag of an activatorsprite, and the lotag value that you want the switch it to transform into to activate. Give the ZVEL value the tilenum of the switch you wish to use. Note that default Duke switches won't animate using this sprite.

Sprite Lift - 10511

This sprite can be used to create elevators consisting purely of sprites. First, create your elevator construct, giving every sprite it consists of a unique YVEL value. Once this is done, place 2 Sprite lift sprites - one at the top of the life's path, one at the bottom. Give the top one the same hitag as the lift sprite's YVEL, and give the bottom one the same lotag. Place some switches near the lift (the lift can also have a switch on it itself, as long as it has a YVEL) and give them the same lotag. Finally, create a small sector near the elevator. Give it a lotag of 20, and place an activator sprite inside the sector and give it the same lotag (this sector doesn't need to be seen, so you can place it away from the map) Due to array limitations at time of writing, only 1 lift can be used per level (you could set them all up to work with each other, effectively bypassing this limitation)

The bottom lift sprite can be modified to add sounds and change the speed of the lift. Change it's XVEL to modify the lift's speed - the default value is 512, the higher the faster. The sprite's YVEL is the sound that is played when the lift is activated, the ZVEL is the sound that plays when it stops, and the EXTRA is the sound that plays whilst the lift is in motion.

By changing the top lift sprite's XVEL, the lift can be moved to the side as well. Give the XVEL a positive number to move it to the bottom lift sprite's left (in relation to it's angle) and a negative to move it to the right. If the lift sprite is pointing down for example and you give it a positive number, it will move to the right - if it is pointing left than the lift will move North.

Day/Night - 3800

This sprite modifies the map's sky and visibility depending on the time. Place this sprite, and it will change the sky texture throughout the map to 99 if it is evening, and to 95 if it is night. The maps' visibility in outside sectors will be set to 240 if it is day, and to 0 if it is evening or night.

Random Gunfire - 13214

Will spawn one of the following random effects at random intervals; for the lasershot or bullet trail point it in the direction you wish it to fire. Can be used to create war ambience in the background of levels.
Spritepal 0Blue lasershot
Spritepal 1Bullet trail
Spritepal 2Ground explosion
Spritepal 3Standard explosion

Car Spawner - 1474

This can be used to spawn moving cars in order to enhance the atmosphere of city levels. There are a number of parimeters you can give this sprite to finetune the effect you need. The Car Spawner's spritepal determines the speed that the cars are spawned at:
Spritepal 0Every 2 seconds
Spritepal 1Every 1 second
Spritepal 2Every half seconds
Spritepal 3Every 3 seconds
Spritepal 4Every 4 seconds
Spritepal 5Every quarter seconds
Spritepal 6Random chance every 10 seconds

Next, the sprite's XVEL determines the size of the car spawned. A XVEL of 0 spawns them at a normal human size, an XVEL of 1 spawns them at half of that and an XVEL of 2 spawns them at a quarter of that size. The Sprite's Owner number determines the radius that the cars are spawned in - it defualts to a area roughly the size of 2 of build's largest grid size. 1024 is the same size as 1 of build's largest grids (Alternatively, give the Car spawner a lotag of 1 to spawn in a straight line. Finally, the hitag determines the movement type of the car. By default they move relatively fastly and emit an engine noise. Giving it a hitag of 1 will make the cars move fast; a hitag of 2 quite slow, and a hitag of 3 will make them move very slowly and randomly emit a horn noise (to simulate a traffic jam)

Activate if inventory item - 3347

This sprite will activate it's lotag if the player steps close to it and has a certain item in their inventory.
Spritepal 1C4 Explosive
Spritepal 2Gas Mask
Spritepal 3Toolbox

Chopper (HIND D) Waypoint - 13251

These waypoints control the movement of the Military HIND D copter (13244) By default when the chopper reaches this point it'll turn in it's direction. To make the chopper move up, give this waypoint a hitag equal to the height you want it to muve up. To make it move down, give it a lotag equal to the height you wish it to move down. Try numbers like 256 or 512 first; the number determines how long the chopper moves in that direction for. To change it's speed, change the waypoint's YVEL - 0 is fast, 1 is slow and 2 will stop it - the duration it stops for is determined by the XVEL. Whilst it's stopped, the HIND D can spawn sprites determined by the ZVEL (It defaults to the Fascists, but it can spawn friendlies as well) It will spawn a sprite every 1 second, up to a maximum of 4 (so for example setting it's XVEL to 130 will make the chopper spawn all of it's cargo in one trip) Setting the waypoint's OWNER variable will 'refill' the Chopper's occupants to the number specified if it's empty. Finally, giving this sprite a palette of 4 will make the chopper ignore it if it's occupant load is empty.


Back to main Build guide page