-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
68 changed files
with
21,730 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
*.vl2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
Shocklance Deathmatch Mod | ||
Written by: a tiny fishie | ||
Mod updates and info: https://github.com/kfox/sldm | ||
|
||
CREDITS | ||
------- | ||
|
||
- Thanks to the many members of S|S, S||S, and countless others who have offered feedback (especially Jacen!), created maps, and provided inspiration for this mod. | ||
|
||
- This mod was inspired by my love for the Shocklance. Thanks to the T2 developers for creating such an awesome weapon, and an awesome game! | ||
|
||
- Inspired by and based on code from Arena, DuelMOD, and Tribes2 Deathmatch. | ||
|
||
CLIENT INSTALLATION | ||
------------------- | ||
|
||
There is a separate client available (SLDMClient.vl2) that shows an improved objective hud. The client is optional, but if you want to use it, you should download it to your Tribes2\Gamedata\base folder and restart Tribes 2. If you want to play offline against bots, you can download the server (ShocklanceDM.vl2) to your Tribes2\GameData\base folder and restart Tribes2. If you download the server, then you will also need to have the Shocklance map pack (SLMaps.vl2) in the same folder. | ||
|
||
SERVER INSTALLATION | ||
------------------- | ||
|
||
Place the ShocklanceDM.vl2 and SLMaps.vl2 files in your Tribes2\GameData\base folder and restart the Tribes2 server. After restart, a prefs file (prefs/ShocklanceDMPrefs.cs) will be created. Stop the server, edit the prefs file, then restart the server. Many of the prefs file settings can also be changed by vote or by admin in-game. See the prefs file for more details. | ||
|
||
FEATURES | ||
-------- | ||
|
||
- Leader waypoint | ||
- Bonus for killing the leader | ||
- Invo stations can function as teleporters | ||
- Invo station penalty if you are injured and do NOT have a repkit | ||
- Voting options to toggle/select most features | ||
- Selectable armors (may be restricted via prefs file) | ||
- Option to spawn with favorite or default loadout | ||
- Selectable grenade types (flare, concussion, whiteout, normal) | ||
- Powerful prefs file to preserve/remove map items (e.g., repkits and patches), enable/disable/remove invo stations, enable/disable invo teleporters, enable/disable invo station penalty, enable/disable various grenades, spawn in favorites or default loadout, and enable/disable various armors. | ||
- Most prefs values can be set to unchangeable, voteable, or admin-only. | ||
- Detailed score hud (F2) and end-of-game debriefing | ||
|
||
HISTORY | ||
------- | ||
|
||
20050506 Per-hit scoring added; death spawn bug fixed (v2.1) | ||
20030122 Zeroed kills for players who enter obs mode; bonus for single-shot | ||
kills (v2.0.3) | ||
20020627 Added leader waypoint, SLDM client, teleportation, voting, and more (v2.0) | ||
20020615 Inventory issues fixed (v1.4.1) | ||
20020613 Objective hud now works properly; fav list restricted (v1.4) | ||
20020315 Config file available; Maps are now separate (v1.3) | ||
20020314 Removed some items from Invictus, added SunDried (v1.21) | ||
20020307 Bot support working (v1.2) | ||
20020306 Items are now available in maps (v1.1) | ||
20020305 Version 1.0 Release (v1.0) | ||
20020305 Fixed duplicated map listings | ||
20020225 Minor update (v0.11) | ||
20020224 First Beta release (v0.1) | ||
20020217 Initial version (alpha) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
// -------------------------------------------------------- | ||
// Shocklance Deathmatch mission type | ||
// by a tiny fishie | ||
// -------------------------------------------------------- | ||
|
||
// DisplayName = Shocklance Deathmatch | ||
|
||
//--- GAME RULES BEGIN --- | ||
//Lance everyone | ||
//Don't get lanced | ||
//Lance the leader for a bonus | ||
//<spush><color:ffff00>Shocklance Deathmatch Mod (v2.1 - 20050506) by: <color:ee00ee>a tiny fishie<spop> | ||
//<spush><color:ffff00>Get SLDM from <a:github.com/kfox/sldm>github.com/kfox/sldm</a><spop> | ||
//--- GAME RULES END --- | ||
|
||
$ShocklanceDM::Version = 2.1; | ||
$ShocklanceDM::VersionString = "2.1"; | ||
$ShocklanceDM::LatestClientVersion = 1.01; | ||
|
||
function ShocklanceDMGame::activatePackages(%game) | ||
{ | ||
Parent::activatePackages(%game); | ||
|
||
exec("scripts/sldm_prefs.cs"); | ||
exec("scripts/sldm_inventory.cs"); | ||
exec("scripts/sldm_delete.cs"); | ||
exec("scripts/sldm_ai.cs"); | ||
exec("scripts/sldm_vote.cs"); | ||
exec("scripts/sldm_teleport.cs"); | ||
exec("scripts/sldm_score.cs"); | ||
exec("scripts/sldm_waypoint.cs"); | ||
exec("scripts/sldm_main.cs"); | ||
|
||
activatePackage(sldm_prefs); | ||
activatePackage(sldm_inventory); | ||
activatePackage(sldm_delete); | ||
activatePackage(sldm_vote); | ||
activatePackage(sldm_teleport); | ||
activatePackage(sldm_score); | ||
activatePackage(sldm_waypoint); | ||
activatePackage(sldm_ai); | ||
activatePackage(sldm_main); | ||
|
||
%game.state = "countdown"; | ||
} | ||
|
||
function ShocklanceDMGame::deactivatePackages(%game) | ||
{ | ||
deactivatePackage(sldm_main); | ||
deactivatePackage(sldm_ai); | ||
deactivatePackage(sldm_waypoint); | ||
deactivatePackage(sldm_score); | ||
deactivatePackage(sldm_teleport); | ||
deactivatePackage(sldm_vote); | ||
deactivatePackage(sldm_delete); | ||
deactivatePackage(sldm_inventory); | ||
deactivatePackage(sldm_prefs); | ||
|
||
Parent::deactivatePackages(%game); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,196 @@ | ||
//-----------------------------------------------------------// | ||
//---------- Shocklance Deathmatch mod preferences ----------// | ||
//-----------------------------------------------------------// | ||
|
||
$ShocklanceDM::PrefsLoaded = 2.03; // DON'T CHANGE THIS LINE | ||
|
||
//-----------------------------------------------------------// | ||
//--------------------- item removal ------------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// RemoveAllItems | ||
// 0 = Keep all map items | ||
// 1 = Remove all map items (e.g., repair patches, repair kits) | ||
|
||
$ShocklanceDM::Pref::RemoveAllItems = 0; | ||
|
||
//-----------------------------------------------------------// | ||
//------------------- armor restriction ---------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// RestrictArmor | ||
// 1 = Only Scout available | ||
// 2 = Only Assault available | ||
// 3 = Only Scout and Assault available | ||
// 4 = Only Juggernaut available | ||
// 5 = Only Scout and Juggernaut available | ||
// 6 = Only Assault and Juggernaut available | ||
// 7 = All armors available | ||
|
||
$ShocklanceDM::Pref::RestrictArmor = 7; | ||
|
||
//-----------------------------------------------------------// | ||
//--------------------- spawn options -----------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// SpawnWithFaves | ||
// 0 = Spawn in default armor; | ||
// No in-game change possible | ||
// 1 = Spawn in default armor; | ||
// May be enabled/disabled by vote only | ||
// 2 = Spawn in default armor; | ||
// May be enabled/disabled by admin only | ||
// 3 = Spawn in default armor; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Spawn using selected favorite; | ||
// No in-game change possible | ||
// 5 = Spawn using selected favorite; | ||
// May be enabled/disabled by vote only | ||
// 6 = Spawn using selected favorite; | ||
// May be enabled/disabled by admin only | ||
// 7 = Spawn using selected favorite; | ||
// May be enabled/disabled by vote or admin | ||
|
||
$ShocklanceDM::Pref::SpawnWithFaves = 3; | ||
|
||
//-----------------------------------------------------------// | ||
//------------------- inventory options ---------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// InventoryStationAccess | ||
// 0 = Inventory Station Access disabled; | ||
// No in-game change possible | ||
// 1 = Inventory Station Access disabled; | ||
// May be enabled/disabled by vote only | ||
// 2 = Inventory Station Access disabled; | ||
// May be enabled/disabled by admin only | ||
// 3 = Inventory Station Access disabled; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Inventory Station access enabled; | ||
// No in-game change possible | ||
// 5 = Inventory Station Access enabled; | ||
// May be enabled/disabled by vote only | ||
// 6 = Inventory Station Access enabled; | ||
// May be enabled/disabled by admin only | ||
// 7 = Inventory Station Access enabled; | ||
// May be enabled/disabled by vote or admin | ||
// 8 = Remove all inventory stations from the map | ||
|
||
$ShocklanceDM::Pref::InventoryStationAccess = 7; | ||
|
||
// InventoryStationAccessPenalty | ||
// 0 = No penalty for accessing inventory stations; | ||
// No in-game change possible | ||
// 1 = No penalty for accessing inventory stations; | ||
// May be enabled/disabled by vote only | ||
// 2 = No penalty for accessing inventory stations; | ||
// May be enabled/disabled by admin only | ||
// 3 = No penalty for accessing inventory stations; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Players are penalized for inventorty station access; | ||
// No in-game change possible | ||
// 5 = Players are penalized for inventorty station access; | ||
// May be enabled/disabled by vote only | ||
// 6 = Players are penalized for inventorty station access; | ||
// May be enabled/disabled by admin only | ||
// 7 = Players are penalized for inventorty station access; | ||
// May be enabled/disabled by vote or admin | ||
|
||
$ShocklanceDM::Pref::InventoryStationAccessPenalty = 7; | ||
|
||
// InventoryStationTeleportation | ||
// 0 = Inventory stations behave normally; | ||
// No in-game change possible | ||
// 1 = Inventory stations behave normally; | ||
// May be enabled/disabled by vote only | ||
// 2 = Inventory stations behave normally; | ||
// May be enabled/disabled by admin only | ||
// 3 = Inventory stations behave normally; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Inventory stations become teleporters; | ||
// No in-game change possible | ||
// 5 = Inventory stations become teleporters; | ||
// May be enabled/disabled by vote only | ||
// 6 = Inventory stations become teleporters; | ||
// May be enabled/disabled by admin only | ||
// 7 = Inventory stations become teleporters; | ||
// May be enabled/disabled by vote or admin | ||
|
||
$ShocklanceDM::Pref::InventoryStationTeleportation = 3; | ||
|
||
//-----------------------------------------------------------// | ||
//------------------- whiteout grenades ---------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// AllowWhiteoutGrenades | ||
// 0 = Whiteout Grenades disabled; | ||
// No in-game change possible | ||
// 1 = Whiteout Grenades disabled; | ||
// May be enabled/disabled by vote only | ||
// 2 = Whiteout Grenades disabled; | ||
// May be enabled/disabled by admin only | ||
// 3 = Whiteout Grenades disabled; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Whiteout Grenades enabled; | ||
// No in-game change possible | ||
// 5 = Whiteout Grenades enabled; | ||
// May be enabled/disabled by vote only | ||
// 6 = Whiteout Grenades enabled; | ||
// May be enabled/disabled by admin only | ||
// 7 = Whiteout Grenades enabled; | ||
// May be enabled/disabled by vote or admin | ||
|
||
$ShocklanceDM::Pref::AllowWhiteoutGrenades = 3; | ||
|
||
//-----------------------------------------------------------// | ||
//------------------ concussion grenades --------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// AllowConcussionGrenades | ||
// 0 = Concussion Grenades disabled; | ||
// No in-game change possible | ||
// 1 = Concussion Grenades disabled; | ||
// May be enabled/disabled by vote only | ||
// 2 = Concussion Grenades disabled; | ||
// May be enabled/disabled by admin only | ||
// 3 = Concussion Grenades disabled; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Concussion Grenades enabled; | ||
// No in-game change possible | ||
// 5 = Concussion Grenades enabled; | ||
// May be enabled/disabled by vote only | ||
// 6 = Concussion Grenades enabled; | ||
// May be enabled/disabled by admin only | ||
// 7 = Concussion Grenades enabled; | ||
// May be enabled/disabled by vote or admin | ||
|
||
$ShocklanceDM::Pref::AllowConcussionGrenades = 3; | ||
|
||
|
||
//-----------------------------------------------------------// | ||
//-------------------- normal grenades ----------------------// | ||
//-----------------------------------------------------------// | ||
|
||
// AllowNormalGrenades | ||
// 0 = Normal Grenades disabled; | ||
// No in-game change possible | ||
// 1 = Normal Grenades disabled; | ||
// May be enabled/disabled by vote only | ||
// 2 = Normal Grenades disabled; | ||
// May be enabled/disabled by admin only | ||
// 3 = Normal Grenades disabled; | ||
// May be enabled/disabled by vote or admin | ||
// 4 = Normal Grenades enabled; | ||
// No in-game change possible | ||
// 5 = Normal Grenades enabled; | ||
// May be enabled/disabled by vote only | ||
// 6 = Normal Grenades enabled; | ||
// May be enabled/disabled by admin only | ||
// 7 = Normal Grenades enabled; | ||
// May be enabled/disabled by vote or admin | ||
|
||
$ShocklanceDM::Pref::AllowNormalGrenades = 3; | ||
|
||
//-----------------------------------------------------------// | ||
//---------------------- end of file ------------------------// | ||
//-----------------------------------------------------------// |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
package sldm_ai | ||
{ | ||
|
||
|
||
function ShocklanceDMGame::AIInit(%game) | ||
{ | ||
//call the default AIInit() function | ||
AIInit(); | ||
} | ||
|
||
function ShocklanceDMGame::onAIRespawn(%game, %client) | ||
{ | ||
//add the default task | ||
if (! %client.defaultTasksAdded) | ||
{ | ||
%client.defaultTasksAdded = true; | ||
%client.addTask(AIEngageTask); | ||
%client.addTask(AIPickupItemTask); | ||
%client.addTask(AITauntCorpseTask); | ||
%client.addTask(AIPatrolTask); | ||
%client.addTask(AIAttackPlayer); | ||
} | ||
|
||
//set the inv flag | ||
%client.spawnUseInv = false; | ||
} | ||
|
||
|
||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
package sldm_delete | ||
{ | ||
|
||
|
||
function sldmDeleteObjectsFromGroupByType(%group, %type) | ||
{ | ||
%noObjectsLeft = 0; | ||
|
||
while (%noObjectsLeft == 0) | ||
{ | ||
%i = 0; | ||
%noObjectsLeft = 1; | ||
%loop = 1; | ||
%numObjects = %group.getCount(); | ||
|
||
while ((%loop == 1) && (%i < %numObjects)) | ||
{ | ||
%obj = %group.getObject(%i); | ||
|
||
if (%obj.getClassName() $= "SimGroup") | ||
sldmDeleteObjectsFromGroupByType(%obj, %type); | ||
|
||
if (%obj.getClassName() $= %type) | ||
{ | ||
%obj.delete(); | ||
%loop = 0; | ||
%noObjectsLeft = 0; | ||
} | ||
else | ||
%i++; | ||
} | ||
} | ||
} | ||
|
||
function sldmDeleteNonGameObjectsFromMap(%target) | ||
{ | ||
sldmDeleteObjectsFromGroupByType(MissionGroup, %target); | ||
} | ||
|
||
|
||
}; |
Oops, something went wrong.