Download Latest Version IT2.jar (1.2 MB)
Email in envelope

Get an email when there's a new version of Intruder's Thunder 2

Home / Example_Levels
Name Modified Size InfoDownloads / Week
Parent folder
mountain.it2 2012-08-16 52.1 kB
island.it2 2012-08-16 36.5 kB
cell.it2 2012-08-16 8.9 kB
extern.ils 2012-08-16 65 Bytes
tutorial.it2 2012-08-16 13.1 kB
Totals: 5 Items   110.7 kB 0
Intruder's Thunder 2 Readme
Author: Jim Miller
Soundtrack by: Roald Strauss
Current version: 2.09

Website: http://sourceforge.net/projects/it2/

TABLE OF CONTENTS:
I. 	STARTING THE GAME
II. 	CONTROLS
III.	DESCRIPTION/PLOT SUMMARY
IV.	MAKING CUSTOM LEVELS
V.	DEBUG MODE
VI.	DEBUG CONSOLE COMMANDS
VII.	PERFORMANCE SETTINGS
VIII.	CHANGES FROM PREVIOUS VERSION
IX.	CHANGE LOG
X.	SAVING AND LOADING THE GAME

I.
STARTING THE GAME:
IT2 is packaged as an executable java archive (.jar)
For most users, double-clicking on this file should run it.
Linux users may have to use the command "chmod +x IT2.jar" (without the quotes) for this to run.
If you cannot get this game to run, try using a command prompt and typing, without the quotes, "java -jar IT2.jar"

Once you start the game, it is HIGHLY RECOMMENDED that you PLAY THE TUTORIAL MISSION BEFORE PLAYING THE MAIN LEVELS.
When you know the controls and how the game works, it becomes a much more pleasant experience :)

It should also be noted that there are sound effects in this game, but they are only audible when the soundtrack is turned off. Java's support for MIDI music/sounds was not adequate enough to support blending sound effects and background music.





II.
CONTROLS:
W,A,S,D or Arrow Keys 		move the player
Space or Ctrl 			attack (fire gun, stab with knife, throw grenade). Does nothing when player is prone.
+ and - 			select weapon
[ and ] 			select item
Shift 				toggles prone
Q 				shows objectives
E 				uses a medkit
Esc 				exits to main menu
F5				saves the game
F6				save the game as...
R 				toggles the Mission Log
~ 				brings up the console if in debug mode
L 				goes to the next level. This only works in debug mode





III.
DESCRIPTION:
Intruder's Thunder 2 is a stealth/action game written in Java. It is a sequel to my first game, Intruder's Thunder, but it largely ignores most of the events that took place in that game - the story and characters are completely new.

MAIN CHARACTERS:
Ishmael: The player character. Secret agent that works for a nameless UN organization.

Captain Daniels: Your commanding officer. He briefs the player on the missions. Only communicates remotely (never seen in-game).

General Tsarkov: Main villain of the story. Russian national; declared an enemy of the state before the collapse. He is a warlord that rose to power during the economic collapse.

Croesus: Middle man involved in the arms trade. Works for General Tsarkov. Congolese national.

Guang Wei Sheng: Chinese national living in Pakistan, he is a warlord like Tsarkov. Allied with General Tsarkov.

Natalia: Defected from Tsarkov, she is an informant to the player and also serves as a field agent. Russian national.


PLOT SUMMARY:
The game takes place after a global economic collapse. Rogue groups have risen up and taken advantage of the instability, and have begun to form a new world order.

You play as Ishmael, a secret agent working for a nameless organization created by the United Nations in an attempt to limit the power of rogue groups. You start the game in a prison cell after a failed hit on General Tsarkov. You must bust out of the prison and rejoin your team, going on various missions trying to stop a horrible tyrant from attaining absolute power.


WEAPONS:
Knife: A heavy-duty combat knife. Reliable in a pinch, the knife is capable of doing serious damage up-close.

WristWatch: State-of-the-art, all-in-one stealth weapon. Has the ability to track enemy locations via satellite, as well as communicate with mission leaders through encrypted text-messaging. It also can fire tranquilizer darts without making a sound. Short range, low ammo capacity. One dart will neutralize all but the strongest of foes...

Pistol: A 45-caliber, semi-automatic handgun. Can be fitted with a suppressor.

Submachine gun: A fully automatic 9mm smg. Bullets tend to spray around the target area. High ammo capacity.

Shotgun: A 12-gauge, semi-automatic shotgun. Each shell sprays 5 pellets simultaneously. Ineffective at long range, but deadly up close.

Assault Rifle: A 5.56mm assault rifle capable of firing in 3-round bursts. High damage.

Grenade: Fragmentation grenade. Explodes on impact. Deadly but rare, these are thrown and travel at a much slower velocity than bullets. Deals damage to anyone within its blast radius.


EQUIPMENT:
Medkit: Heals the player up to 50 points. Can carry multiple medkits at a time. When equipped, if the player hits the [E] key, a medkit will be used.

Booster Kit: Fully heals the player, increases maximum health by 15 points, increases carrying capacity of medkits and ammunition.

Card Key: Used to unlock security doors.

Gas Mask: Greatly slows the rate of oxygen depletion in rooms filled with poisonous gas when equipped. Also works underwater.

Night Vision Goggles: Allows the player to see in darkness when equipped.

Body Armor: All damage taken is reduced by 30 percent when equipped.

Suppressor: Silencer fitted for the pistol. Muffles firing noise, allowing for undetected kills. Permanently installed when acquired.





IV.
MAKING CUSTOM LEVELS:
You can download the level editor at https://sourceforge.net/projects/it2/files/IT2LevelEditor.jar/download
Documentation for the level editor is also available at the IT2 SourceForge page.

The level editor is nearly 100% functional, but currently cannot create/edit/delete bosses. These have to be done manually.

Once you have developed some levels, you may want to play them in sequence. Fortunately, IT2 recognizes .ils levelset files.
Making an .ils file is REALLY EASY. Create a new text document, name it whatever you want, but make sure the file extension ends in ".ils" (without the quotes). Now, in any kind of text editor, open it up and insert the names of the files you wish to include.
An example .ils file would look like:

#This is a comment. It is also the beginning of the example
cell.it2
island.it2
mountain.it2
#This is the end of the file. You do not need to put this here, it is only here to show the end of the example.

And that's pretty much it. Keep in mind that your .ils levelset file MUST be in the same directory as ALL of your .it2 level files.
Save the file, and run IT2. Click on "Open Levelset", find your levelset, open it and have fun!





V.
DEBUG MODE: Run from command line with -d flag

To access the console, you must start IT2 in debug mode. From the command line, type "java -jar IT2.jar -d", without the quotes.
Debug mode is useful for testing your own levels made with the IT2 Level Editor.





VI.
CONSOLE COMMANDS:
help		list all available commands
giveall		gives player all items and weapons
boost		increase health and ammo capacity
tm		toggles music on/off
jump X Y	local jump to location(X,Y). X and Y represent integer values with a space before and after X.
warp R X Y	warp to Room index R, and location(X,Y). Each integer value separated by single whitespace character.
clear		default lighting, no gas
gas		fill room w/ poison gas
dark		make room dark, no gas
sdark		make room semi-dark, no gas
cs X		change song, where X is the song index. X must be >= 0 and < 9 to be valid.
heal		heals the player to MAXHEALTH
td		toggles dialog on/off




VII.
PERFORMANCE SETTINGS:
On older/slower machines, it can be extremely beneficial to have opengl handle the game's drawing functions insetead of the CPU.
On linux, there may be a way to do this. From the terminal, adding the flag "-Dsun.java2d.opengl=True" (without the quotes)
will result in a tremendous performance boost, and actually make the game playable on older machines.
This did not work on my Windows 7 machine, unfortunately. Nothing would draw to the screen.

Assuming you are in the directory in which IT2.jar is located:
Run with "java -jar -Dsun.java2d.opengl=True IT2.jar" (without the quotes) in a terminal to try this setting out.




VIII.
CHANGES FROM PREVIOUS VERSION:

Added:
Scrolling background
Capable of loading levelsets and individual levels external from the game
Improved graphics
Exponential decrease in number of threads used -> game is not constantly creating new threads, deleting old. Game will always run 4.
4 new weapons - burst assault rifle, smg, shotgun, grenades
3 different lighting effects - normal, semi-dark, and dark
Poison gas
2 more cardkeys (up to LV 5)
3 new items - night vision goggles, body armor, gas mask
Animated doors
Security cameras
MGS-style radar
Item names are displayed beneath each item
Updated control system
NPCs now have a triangular field of vision instead of a linear one
NPCs can attack at any angle relative to the player, provided the player is in the NPC's FOV
Code is more stable, less-prone to strange glitches
Mission Objectives
Dialog boxes no longer occupy most of the viewable screen
3 new boss models
Level Editor
Instant Action/Maze Mode
Optimized NPC pathfinding performance
Optional Sound Effects
Debug console
Save/Load game

Removed:
Elevators

Known bugs:
On older/slower machines, screen tearing may occur in Instant Action mode, where there are a lot of guards being spawned.
NPCs will walk right through doors. They can also see through closed doors.

Upcoming changes:
Expansion pack?


IX.
CHANGE LOG:

(v0.1A - 0.80B not logged)

6/11/12
v0.81 Beta
Screen now uses double-buffering to render

6/22/12
v0.83 Beta
Added Maze Mode to game, will give the player a different pace of action. Maze now generates.
Optimized collision detection - instead of checking EVERY collidable, the obstacle matrix of the levelmap is now used.
	This will eliminate slow-downs on larger maps.

6/23/12
v0.84 Beta
Added Items, Spawns, and end warp to Instant Action mode.
Fixed bug in which SMG, shotgun, and grenades would not have their max capacities increased when booster kit was used

7/7/12
v0.85 Beta
Optimized drawing routine, reduced the number of conditional checks in render thread.
Removed IT1 title screen from Sprites folder (the image was not being used at all), shaved off over 100KB in file size. 

7/9/12
v0.90 Beta
Modified the rendering engine, repaint requests are now in sync with game thread. 
Presentation is much better; artifacts no longer shake on screen.
RenderThread no longer uses a timer. Tearing eliminated on most machines.

7/14/12:
v0.91 Beta
Added new sprites to game. Removed all elevator-related sprites inherited from IT1.

7/23/12
v0.92 Beta
Fixed bug where game would crash trying to load levels with 10 or more rooms.
Shotgun shots no longer affect accuracy.
Enemies killed statistic now updated accurately.
First level created.

8/4/12
v0.93 Beta
Fixed bug in pathfinding where trapped guards would hog up CPU
Optimized obstacle detection - no longer creates a new array on every access
Streamlined dialog interface - now only 1 button

8/5/12
v0.94 Beta
Fixed bug in guard AI in which a stationary guard trying to get to an unattainable position on a large map would hog up the CPU
Switched from Dijkstra's pathfinding algorithm to A* pathfinding algorithm. Noticably increased performance.

8/8/12
v0.95 Beta
A* optimizations - now uses manhattan distance heuristic w/ cross-product tiebreaker, priority queue instead of a linked-list
Vertices now have a flag for closed instead of the pathfinder maintaining a list of closed nodes
Optimized Vertex compareTo function

8/13/12
v0.96 Beta
Medkit does not have to be equipped to use. Press [E] no matter what item is selected and the player will use a medkit if they have at least 1.
When the player completes a levelset (or standalone level), they will be returned to the main menu.
Removed name string from pathfinding Vertex class to save memory and speed up init time.
Medkit usage now displays HUD message.
Pressing the [Esc] (Escape) button will prompt the player if they want to return to the main menu or not. Clicking yes will exit the game, and return the player to the main menu.

8/15/12
v0.97 Beta
Optimized code to check if the player is visible or not.
Optimized bullet hit detection code.
Optimized item collection code.
Optimized Water and Tall Grass detection code.
New rule for levelsets: Levels must be in the same folder as their respective levelsets. This makes levelsets much more portable.
Levelset entries now list only the filename, not the entire filepath of the level.
Tutorial mission built.
Changed next level warp behavior to warp to level's startX and startY instead of just where the warp specifies. Next level warps no
longer have to give an x and y coordinate, as long as the Is Next Level Warp? box is checked in the level editor.
Main menu re-organized
Upgraded sound player
Added sound effects
Added console for development purposes
Player's health now replenishes between levels
Added first 3 levels to internal LevelData package

8/16/12
v0.98 Beta
Improved movement system: Movement controls now "remember" which key was pressed last. This was accomplished using a stack...
Dialog now moves with the game window (stays in the same relative location)
Added ability to view mission log by pressing the R key during a mission

9/23/12
v0.99 Beta
Mouse is no longer required to get through dialog. Use the spacebar instead
Sound Effects are on only if Soundtrack is off
Songs can be re-cycled through if levelset has a lot of levels
Game state is recorded after every warp. If the player dies, they go back to the last warp destination. This will also be the platform for saving the game.
Console command giveall now sets player objective level to be really high.

11/18/12
v0.99 Beta 2
Levels can now be set to strip the player of weapons/items
Levels can be tagged as transitional - these will all play the same song, and are not intended to count as actual levels.
Added 3 more levels to internal LevelData package, plus 2 transitional levels
Dialogs work correctly after console warps in debug mode
Larger dialogs can be closed faster
Log no longer repeats listing objectives each time they are viewed
Optimizations in drawing routines
Player's Ally now appears on the radar as a blue dot

12/1/12
v0.99 Beta 3
Greatly reduced memory footprint
Optimized obstacle matrix (now 1/4 original size)
Uses only 1 obstacle matrix instead of 2
Optimized tile maps (1/2 original size)
Optimized tall grass and water matrix (1/4 original size)
Bullets are removed after a boss is defeated
Boss is only defeated if player survives

12/6/12
v0.99 Beta 4
Implemented a new game camera that only scrolls when it needs to
Fixed bug where max ammo capacity would go back to default after player died and respawned
Fixed a rare bug that would crash the game on warp
Cleaned up the mission log's appearance
Guard and Boss AI + movement now stop once player is killed

12/28/12
v0.99 Beta 5
Player can now save and load games

1/7/13
v0.99 Beta 6
Fixed bug where screen would not be drawn correctly when dialog is being shown
Story nearly complete
Fixed bug where bosses would appear in objectives in a loaded game even when they had been defeated
Optimized drawing routine
External single levels now play different song

1/8/13
v2.00 Beta
Finalized story
Finished game

1/10/13
v2.01
Feedback is now given if an attempt is made to load a corrupted level
Fixed a memory leak with main game object
Removed unnecessary scrolling from the smaller boss fight maps
Fixed some spelling/grammatical errors in the story
Added some pauses into the dialogs where they were needed

2/1/13
v2.02
Fixed a bug that prevented single external levels from being loaded from a savegame file
Tutorial updated to tell player how to save the game
Tutorial camera is in fixed position (no scrolling)
First DLC completed (Jungle Escape)

3/23/13
v2.03
Fixed a bug in which loading a game from a levelset would skip from the first level to the third level
DLC #2 completed: It is the levelset from the first Intruder's Thunder game, with a few improvements.

5/20/13
v2.04
Submachine gun can now be suppressed.
Placed SMG suppressor in a few of the in-game maps.
DLC #3 is in the making...

5/25/13
v2.05
Fixed short-range blind spot in NPCs
Stationary guards now react to being damaged
NPCs now perform a 1/2 damage melee attack at zero-range
Radar drawing routine optimized
Heavy guards now wear white uniforms
Snow texture updated to look more realistic
More sprites added (setup for DLC #3)
Added 5 new NPC types, including 2 melee-only NPCs
Wayward guard building 1 last level path bug fixed (level data)
Setup code for friendly follower NPC (will release in a future version)
Instant action mode contains 3 potential new enemies; some new floors and walls

6/27/13
v2.06
Objectives now appear on radar as a yellow "X".
DLC #3, "Under Earth" has been released.

7/6/13
v2.07
Friendly NPC can now follow the player
Cardkey level displayed on HUD is now immediately updated when finding a new cardkey
Landmines added to item set; will explode on player collision
Explosions now do more damage to player
Player's death delayed to be more visible
New weather type added: Haze
Radar can now be jammed
Security lasers now added to item set; will cause alert and gas release on player collision
Alert music now plays when the player is spotted

7/20/13
v2.08
NPCs open doors instead of walking through them. They also cannot see through closed doors
Doors from previous map automatically close when changing maps
Wristwatch now puts guards to sleep for 30 seconds instead of permanently
Follower NPC now starts 1 tile away from player's position on every warp
Follower NPC will stay 1 tile away from the player to reduce absorbtion of attacks
Tall grass sprite changed
Water trail updated to be generic water/tall grass shadow
Mine detector added to items, shows mine locations on radar
"Game Over" statistics simplified
Fixed a bug in which mines and security lasers would not load from a saved game
Minor memory and performance optimizations

8/10/13
v2.09
Bugfix: Can now load a saved game from a previous version of IT2.

X. SAVING AND LOADING THE GAME

In case you didn't catch it in the controls, to save the game, press the F5 button. Saving is disabled in the tutorial and instant action modes, however. If you want to do a Save As, press the F6 button. Loading a game is easy, just press the load game button at the main menu. Games from external levels/levelsets can also be saved!
Source: Readme.txt, updated 2013-08-10